a{color:var(--accent);text-decoration:none}.button{display:inline-block;border-radius:7px;background:var(--accent);color:var(--button-text);padding:12px 16px;font-weight:700;font-size:13px}.dashboard-layout{display:grid;grid-template-columns:1fr 1fr;gap:22px}.dashboard-layout .panel{min-width:0}label{display:block;font-size:12px;color:var(--muted);margin:14px 0}select{display:block;width:100%;padding:11px;margin-top:7px;border-radius:6px;background:var(--field);color:var(--text);border:1px solid var(--border);font:inherit}label input{margin-top:7px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contest-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin-top:20px}.contest-card{border:1px solid var(--border);border-radius:8px;padding:18px;background:var(--panel-bg)}.contest-card h3{font-size:17px}.contest-card p{font-size:12px}.rank-scroll{overflow:auto;max-height:540px;margin-bottom:20px}.ranking-table{width:100%;border-collapse:separate;border-spacing:0;text-align:left}.ranking-table th{position:sticky;top:0;background:var(--surface);font-size:11px;z-index:1}.ranking-table td,.ranking-table th{padding:10px;border-bottom:1px solid var(--border)}.ranking-table input[type=number]{width:80px;padding:8px}.ranking-table input[type=checkbox]{width:20px;height:20px}.success,.error{padding:12px 0;min-height:20px}.success{color:var(--accent)}.error{color:var(--error)}.welcome{max-width:920px;padding-top:70px}.welcome h1{font-size:64px}.welcome-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.welcome .panel{margin-top:35px}.rules{display:flex;gap:8px;flex-wrap:wrap}.rules span{border:1px solid var(--border);padding:8px 12px;border-radius:20px;font-size:12px;color:var(--accent)}.score-table{width:100%;border-collapse:collapse}.score-table td,.score-table th{text-align:left;padding:12px;border-bottom:1px solid var(--border)}.contest-main{max-width:1100px}.swap-row{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.swap-row label{flex:1;min-width:150px}.swap-row button{margin-bottom:14px}button:disabled{cursor:not-allowed}@media(max-width:650px){.dashboard-layout,.field-pair,.welcome-steps{grid-template-columns:1fr}.welcome h1{font-size:42px}.ranking-table td,.ranking-table th{padding:7px}.ranking-table input[type=number]{width:62px}header{flex-wrap:wrap}.score-table{font-size:12px}.score-table td,.score-table th{padding:7px}}
.rank-controls{display:flex;flex-direction:column;align-items:center;gap:5px}.rank-controls .rank-move{width:48px;height:44px;padding:0;font-size:28px;line-height:1;background:var(--accent);color:var(--button-text)}.ranking-table .rank-number{appearance:textfield;-moz-appearance:textfield;text-align:center;width:58px}.rank-number::-webkit-inner-spin-button,.rank-number::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
/* Compact ranking controls: up, rank, down on a single line. */
.rank-controls{flex-direction:row;justify-content:flex-start;gap:4px;white-space:nowrap}.rank-controls .rank-move{width:30px;height:34px;min-width:30px;font-size:20px;font-weight:600;border-radius:5px}.ranking-table .rank-number{width:42px;padding:7px 3px;font-size:12px;height:34px}.ranking-table td{padding-top:7px;padding-bottom:7px}

.ranking-table th:nth-child(-n+2),.ranking-table td:nth-child(-n+2){width:1%;white-space:nowrap}

.ranking-table .bid-max{appearance:textfield;-moz-appearance:textfield;width:42px;height:34px;padding:7px 3px;text-align:center;font-size:12px}.bid-max::-webkit-inner-spin-button,.bid-max::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}

/* Four-character number fields with compact spacing on phones. */
.ranking-table .rank-number,.ranking-table .bid-max{box-sizing:border-box;width:4ch;min-width:4ch;max-width:4ch;padding:7px 1px;font-variant-numeric:tabular-nums}
@media(max-width:650px){.ranking-table td,.ranking-table th{padding-left:4px;padding-right:4px}.rank-controls{gap:2px}.rank-controls .rank-move{width:26px;min-width:26px;font-size:18px}}


/* Allow three digits plus input padding and browser rendering space. */
.ranking-table .rank-number,.ranking-table .bid-max{width:48px;min-width:48px;max-width:48px;padding:7px 3px}


.bulk-limits{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.bulk-limits label{margin:0}.bulk-limits input{display:block;width:100px;box-sizing:border-box}.bulk-limits button{min-height:42px}#bulk-bid-status{color:var(--accent)}

.points-view-control{max-width:300px}.points-view-control select{font-size:14px}

/* Tap or keyboard-expand group membership without changing ranking inputs. */
.ranking-group{min-width:110px;max-width:220px}.ranking-group summary{cursor:pointer;min-height:36px;padding:5px 2px;white-space:nowrap;color:var(--accent)}.ranking-group summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.group-hint{display:block;font-size:11px;color:var(--muted);margin-left:15px}.ranking-group-players{white-space:normal;min-width:150px;padding:8px 0;line-height:1.5}.ranking-group-players>span{display:block;font-size:13px}.ranking-group-players small{display:block;margin-top:8px;color:var(--muted);font-size:11px}.ranking-group-players p{font-size:12px;margin:6px 0}

.appearance-settings{border:1px solid var(--border);border-radius:8px;margin:20px 0;padding:12px}.appearance-settings legend{font-weight:700;color:var(--accent)}

.entry-settings{border:1px solid var(--border);border-radius:12px;padding:16px;margin:16px 0}.entry-settings legend{font-weight:700}.entry-demand{display:grid;grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:8px}.entry-demand>div{display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 6px;background:var(--soft);border-radius:8px}.entry-demand span{color:var(--muted)}

.tracker-toggle{background:transparent;color:var(--text);text-align:left;padding:8px 4px;min-height:40px;font-size:13px}.tracker-toggle>span{display:inline-block;min-width:20px;color:var(--accent);font-size:18px}.tracker-manager.expanded{background:var(--soft)}.tracker-players{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:5px;white-space:normal;max-width:300px}.tracker-details{background:var(--soft);padding:8px!important}.tracker-scroll{overflow:auto;max-width:100%}.tracker-scroll table{min-width:650px}.tracker-scroll th{font-size:11px}.tracker-scroll td{font-size:12px}
