:root{
  color-scheme:dark;--bg:#07101a;--panel:#0e1926;--panel-2:#142335;
  --line:#24364a;--text:#f2f7fc;--muted:#8fa3b8;--faint:#60758b;
  --blue:#39a0ff;--blue-2:#1677d2;--green:#42d392;--amber:#f5b942;
  --red:#ff6b6b;--gold:#ffc857;--radius:10px;--shadow:0 20px 60px #0008;
  font-family:Inter,Segoe UI,system-ui,sans-serif;font-size:16px
}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);min-height:100vh}
button,input{font:inherit}.hidden{display:none!important}.muted{color:var(--muted)}
.brand{display:flex;align-items:center;gap:.65rem;font-weight:650;letter-spacing:.01em}.brand b{color:var(--blue)}
.brand-mark{display:grid;place-items:center;width:2rem;height:2rem;border-radius:.55rem;background:linear-gradient(145deg,var(--blue),#705cff);color:white;font-weight:900}
.brand-large{font-size:1.12rem;margin-bottom:2.2rem}.brand-large .brand-mark{width:2.5rem;height:2.5rem}
.auth-shell{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:radial-gradient(circle at 50% 10%,#173557 0,transparent 36%),var(--bg)}
.auth-card{width:min(100%,27rem);padding:2.2rem;background:#0d1825ee;border:1px solid var(--line);border-radius:1rem;box-shadow:var(--shadow)}
.auth-card h1{font-size:1.75rem;margin:0 0 .4rem}.auth-card form{margin-top:1.6rem}.field{display:flex;flex-direction:column;gap:.45rem;margin-bottom:1rem;color:#c6d4e2;font-size:.9rem;font-weight:600}
input{width:100%;background:#09131e;border:1px solid var(--line);color:var(--text);border-radius:.55rem;padding:.75rem .8rem;outline:none}
input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #39a0ff25}.button{border:1px solid var(--line);border-radius:.55rem;padding:.67rem 1rem;background:var(--panel-2);color:var(--text);cursor:pointer;font-weight:650}
.button:hover{border-color:#52708e}.button.primary{background:var(--blue-2);border-color:var(--blue);color:white}.button.ghost{background:transparent}.button.small{font-size:.82rem;padding:.45rem .7rem}.button.wide{width:100%}.button:disabled{opacity:.45;cursor:not-allowed}
.button.danger{border-color:#783c48;color:#ff9a9a;background:#351a22}
.text-button{width:100%;border:0;background:none;color:var(--blue);padding:1rem 0 0;cursor:pointer}.form-error{color:#ff9a9a;background:#ff6b6b17;border:1px solid #ff6b6b44;padding:.7rem;border-radius:.5rem;margin-bottom:1rem;font-size:.88rem}
.reset-success{margin-top:1.4rem}.reset-success p{color:var(--green);line-height:1.5;margin:0 0 1rem}
.app-shell{height:100vh;overflow:hidden}.topbar{height:3rem;display:flex;align-items:center;gap:1.5rem;padding:0 1rem;border-bottom:1px solid var(--line);background:#09131ef2;position:relative;z-index:10}
.topbar .brand-mark{width:1.65rem;height:1.65rem;border-radius:.4rem;font-size:.85rem}.topbar .brand{font-size:.9rem}
.connection{margin-left:auto;display:flex;align-items:center;gap:.5rem;color:var(--muted);font-size:.85rem}.status-dot{width:.55rem;height:.55rem;border-radius:50%;background:var(--amber)}.connection.online .status-dot{background:var(--green)}.connection.offline .status-dot{background:var(--red)}
.account{display:flex;align-items:center;gap:.8rem;font-size:.88rem}.page{max-width:75rem;margin:0 auto;padding:2rem}.page-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:1.5rem}.page-head h1{font-size:2rem;margin:.15rem 0}.eyebrow{color:var(--blue);font-size:.76rem;text-transform:uppercase;letter-spacing:.13em;font-weight:800;margin:0}
.desktop-shell{height:calc(100vh - 3rem);display:flex}.sidebar{width:10rem;flex:none;border-right:1px solid var(--line);background:#09131e;display:flex;flex-direction:column;padding:.75rem}.sidebar nav{display:flex;flex-direction:column;gap:.25rem}.nav-item{display:flex;align-items:center;gap:.65rem;border:0;border-radius:.5rem;background:transparent;color:var(--muted);padding:.7rem .75rem;text-align:left;cursor:pointer;font-size:.86rem}.nav-item span{width:1rem;text-align:center}.nav-item:hover{background:var(--panel);color:var(--text)}.nav-item.active{background:#1677d224;color:#67b8ff;font-weight:700}.sidebar-foot{margin-top:auto;border-top:1px solid var(--line);padding-top:.75rem}.account-name{font-size:.76rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0 .25rem .55rem}.content{flex:1;min-width:0;position:relative;overflow:hidden}.view{position:absolute;inset:0;overflow:auto}.view.logger-page{display:flex;max-width:none;padding:0;margin:0}
.card-list{display:grid;gap:.75rem}.log-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:1rem;padding:1rem 1.15rem;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer}.log-card:hover{border-color:var(--blue)}.log-card h2{font-size:1rem;margin:0 0 .25rem}.log-card p{margin:0;color:var(--muted);font-size:.85rem}.log-card .open{color:var(--blue);font-weight:700;font-size:.85rem}.log-card-actions{display:flex;align-items:center;gap:.7rem}.delete-button,.delete-event{display:grid;place-items:center;border:1px solid #74313c;border-radius:.38rem;background:#2a151b;color:#ff737f;cursor:pointer;font-weight:800;line-height:1}.delete-button{width:1.8rem;height:1.8rem;font-size:1.05rem}.delete-button:hover,.delete-event:hover{border-color:var(--red);background:#421c24;color:white}.delete-button:disabled,.delete-event:disabled{opacity:.45;cursor:not-allowed}
.empty{padding:2.5rem;color:var(--muted);text-align:center}.match-strip{display:flex;align-items:center;gap:1.2rem;padding:1rem 1.3rem;border-bottom:1px solid var(--line);background:#0b1622}.match-title{min-width:0}.match-title span{font-size:.72rem;color:var(--blue);text-transform:uppercase;letter-spacing:.1em}.match-title h1{font-size:1.12rem;margin:.15rem 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.clock-wrap{margin-left:auto;text-align:right}.clock-wrap span{display:block;color:var(--muted);font-size:.65rem;letter-spacing:.1em}.clock-wrap b{font-family:Consolas,monospace;font-size:1.2rem;color:var(--green)}
.logger-page{display:flex;flex-direction:column}.logger-grid{padding:1rem;display:grid;grid-template-columns:1.05fr 1.6fr .65fr;grid-template-rows:minmax(16rem,42%) 1fr;gap:1rem;min-height:0;flex:1}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;min-height:0}.panel-title{padding:.72rem .9rem;border-bottom:1px solid var(--line);font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;color:#aec0d2;font-weight:800}.teams-panel{display:flex;flex-direction:column}.team-entry{padding:.85rem;display:grid;grid-template-columns:1fr auto;gap:.6rem}.team-entry strong{grid-column:1/-1;font-size:.95rem}.team-entry.home{border-left:4px solid #e43d4f}.team-entry.away{border-left:4px solid #39a0ff}.team-log{border:1px solid var(--line);border-radius:.5rem;background:var(--panel-2);color:var(--text);padding:0 .8rem;cursor:pointer;font-weight:700}.team-log:hover{border-color:var(--blue)}.panel-help{font-size:.78rem;line-height:1.45;color:var(--muted);margin:auto .85rem .85rem}.keyword-grid{padding:.75rem;display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem}.keyword{min-height:2.55rem;border:1px solid var(--line);border-radius:.5rem;background:var(--panel-2);color:var(--text);font-size:.78rem;font-weight:750;cursor:pointer}.keyword:hover{border-color:var(--blue);background:#18334d}.ratings-panel{display:flex;flex-direction:column}.rating{margin:.45rem .75rem;border:1px solid #6e5821;border-radius:.55rem;background:#211c10;color:var(--gold);font-size:1.05rem;padding:.65rem;cursor:pointer}.rating:hover{background:#3a2e12}.event-panel{grid-column:1/-1;display:flex;flex-direction:column}.event-head{display:flex;justify-content:space-between}.event-head span:last-child{color:var(--muted);font-weight:500}.table-wrap{overflow:auto;flex:1}table{width:100%;border-collapse:collapse;font-size:.82rem}th{text-align:left;position:sticky;top:0;background:#111f2e;color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.07em;padding:.6rem .75rem}td{padding:.58rem .75rem;border-top:1px solid #1b2b3d;white-space:nowrap}td.notes{white-space:normal;min-width:12rem}.sync{font-size:.72rem;color:var(--green)}.sync.pending{color:var(--amber)}.stars{color:var(--gold)}
.tabs{display:flex;gap:.2rem;border-bottom:1px solid var(--line);margin-bottom:1rem}.tab{border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);padding:.7rem .9rem;cursor:pointer}.tab.active{color:var(--blue);border-bottom-color:var(--blue);font-weight:700}.tab:disabled{opacity:.45}.request-note{color:var(--muted);font-size:.82rem;margin:0 0 1rem}.report-summary{display:grid;grid-template-columns:repeat(4,minmax(8rem,1fr));gap:.75rem;margin-bottom:1rem}.stat{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:1rem}.stat b{display:block;font-size:1.65rem;color:var(--blue)}.stat span{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.report-panel{min-height:25rem}.parity-panel{padding:1.5rem;max-width:50rem}.parity-panel h2{margin:0 0 .5rem;font-size:1rem}.parity-panel p{margin:0;color:var(--muted);line-height:1.6}.settings-panel{max-width:52rem}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--line)}.setting-row:last-child{border-bottom:0}.setting-row b,.setting-row span{display:block}.setting-row span{color:var(--muted);font-size:.8rem;margin-top:.25rem}.setting-row strong{font-size:.85rem}.setting-row .safe{color:var(--green)}
.modal-back{position:fixed;inset:0;background:#000b;display:grid;place-items:center;padding:1rem;z-index:30}.modal{width:min(100%,32rem);background:var(--panel);border:1px solid var(--line);border-radius:.8rem;box-shadow:var(--shadow)}.modal-head,.modal-foot{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.2rem;border-bottom:1px solid var(--line)}.modal-head h2{margin:0;font-size:1.1rem}.modal-body{padding:1.2rem}.modal-foot{border-bottom:0;border-top:1px solid var(--line);justify-content:flex-end;gap:.6rem}.icon-button{border:0;background:none;color:var(--muted);font-size:1.5rem;cursor:pointer}.toast{position:fixed;right:1.2rem;bottom:1.2rem;background:#162638;border:1px solid #385570;border-radius:.6rem;padding:.8rem 1rem;box-shadow:var(--shadow);z-index:50;font-size:.88rem}
.users-intro{margin:.35rem 0 0;color:var(--muted);font-size:.82rem}.users-panel{max-width:72rem}.users-table td{vertical-align:middle}.users-table td:first-child strong,.users-table td:first-child small{display:block}.users-table td:first-child small{margin-top:.2rem;color:var(--blue);font-size:.68rem}.account-status{display:inline-block;border-radius:99px;padding:.25rem .55rem;font-size:.7rem;font-weight:700}.account-status.active{background:#42d3921c;color:var(--green)}.account-status.disabled{background:#ff6b6b1c;color:#ff9a9a}.user-actions{display:flex;justify-content:flex-end;gap:.45rem}.users-table th:last-child,.users-table td:last-child{text-align:right}
.cell-input{min-width:7rem;border:0;border-bottom:1px solid transparent;border-radius:0;background:transparent;padding:.2rem;color:var(--text);font-size:.82rem}.cell-input.notes-input{min-width:14rem}.cell-input:hover{border-bottom-color:var(--line)}.cell-input:focus{box-shadow:none;border-bottom-color:var(--blue);background:#09131e}
@media(max-width:950px){.logger-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}.ratings-panel{grid-column:1/-1;flex-direction:row;flex-wrap:wrap}.ratings-panel .panel-title{width:100%}.rating{flex:1}.event-panel{grid-column:1/-1;min-height:22rem}.report-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.topbar{padding:0 .8rem}.brand b{display:none}.connection{margin-left:auto}.desktop-shell{display:block;overflow:auto}.sidebar{width:100%;height:auto;position:sticky;top:0;z-index:9;flex-direction:row;padding:.35rem}.sidebar nav{flex-direction:row;overflow-x:auto}.nav-item{padding:.55rem}.nav-item span{display:none}.sidebar-foot{display:none}.content{height:calc(100vh - 6rem);overflow:auto}.page{padding:1rem}.logger-grid{grid-template-columns:1fr}.actions-panel,.ratings-panel,.event-panel{grid-column:1}.keyword-grid{grid-template-columns:repeat(2,1fr)}.match-strip{flex-wrap:wrap}.clock-wrap{margin-left:0}}

/* Desktop parity: mirror the original logger's fixed working surface. */
.topbar{height:3.45rem;background:#111a25;padding:0 1.45rem}.desktop-shell{height:calc(100vh - 3.45rem)}
.topbar .brand{font-size:1rem}.brand-symbol{color:#42df61;font-size:1.7rem;line-height:1;transform:rotate(-18deg)}.topbar .brand em{font-style:normal;font-size:.68rem;color:var(--blue);border:1px solid #2d4d72;border-radius:99px;padding:.14rem .42rem;margin-left:.1rem}
.connection{border:1px solid var(--line);border-radius:99px;padding:.3rem .7rem;background:#141f2d}
.sidebar{width:13.45rem;padding:.95rem .75rem;background:#111a25}.nav-item{font-size:.95rem;padding:.75rem .85rem}.sidebar-foot{padding:.9rem .75rem 0}
.match-strip{margin:1.25rem 1.25rem 0;padding:1rem 1.25rem;min-height:6.2rem;border:1px solid var(--line);border-radius:.8rem;background:#161f2b;gap:1.7rem}
.match-field{min-width:4rem}.match-field>span,.clock-wrap span{display:block;color:#7891b0;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:.45rem}.match-field strong{font-size:.86rem}.competition-field{width:13.8rem}.competition-field strong{display:block;padding:.7rem .9rem;background:#1b2735;border:1px solid #29394d;border-radius:.55rem}.match-title{flex:1}.match-title h1{font-size:1.05rem}.clock-wrap{margin-left:0;text-align:left}.clock-wrap b{font-size:1.25rem;color:#3387ff}.match-actions{display:flex;gap:.55rem;margin-left:auto}.match-actions .button{white-space:nowrap}
.logger-grid{padding:1rem 1.25rem 1rem;grid-template-columns:minmax(360px,448px) minmax(600px,1fr) 156px;grid-template-rows:minmax(358px,42%) minmax(260px,1fr);gap:.9rem}.teams-panel{grid-row:1/3}.event-panel{grid-column:2/4}.panel{border-radius:.75rem;background:#161f2b}.panel-title{color:#86a7d1;padding:.75rem .95rem}
.teams-columns{display:grid;grid-template-columns:1fr 1fr;flex:1;min-height:0}.team-column{border-right:1px solid var(--line);display:flex;flex-direction:column;min-width:0}.team-column:last-child{border-right:0}.team-head{text-align:center;padding:.95rem .5rem;color:white;font-size:.83rem;font-weight:800;background:#657488}.team-head.away{background:#657488}.squad-list{padding:.35rem 0;flex:0 1 auto;overflow:auto}.squad-player{display:block;width:100%;border:0;background:transparent;color:var(--text);padding:.47rem .75rem;text-align:left;cursor:pointer;font-size:.82rem}.squad-player:hover{background:#213044}.squad-player.empty{color:#718096;cursor:default}.squad-sep{text-align:center;padding:.55rem;background:#1c2938;color:#86a7d1;font-size:.66rem;letter-spacing:.14em}.subs-placeholder{padding:1rem;text-align:center;color:#718096;flex:1}.manual-player-row{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.manual-player-row>div{display:flex;gap:.35rem;padding:.55rem;border-right:1px solid var(--line)}.manual-player-row>div:last-child{border-right:0}.manual-player-row input{min-width:0;padding:.48rem;font-size:.76rem}.manual-player-row .team-log{padding:.35rem .55rem;font-size:.72rem}.player-search{margin:.65rem .75rem;padding:.68rem .8rem;border:1px solid var(--line);border-radius:.55rem;color:#7891a8;font-size:.78rem;background:#1a2533}
.keyword-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:1fr;gap:.45rem;padding:.75rem}.keyword{min-height:2.7rem;min-width:0;display:flex;align-items:center;text-align:left;padding:.5rem .62rem;color:#a8b2bf;font-weight:500;font-size:clamp(.64rem,.72vw,.78rem);white-space:nowrap;letter-spacing:-.01em}.keyword:before{content:"";display:inline-block;flex:0 0 .68rem;width:.68rem;height:.68rem;border-radius:.18rem;background:#354355;margin-right:.5rem;vertical-align:-.05rem}.keyword:nth-child(19):before{background:#9b811d}.keyword:nth-child(20):before{background:#96343d}
.ratings-panel .panel-title{text-align:center}.ratings-panel .rating{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;min-height:4.55rem;margin:.55rem .55rem;padding:.55rem;background:#18212d;border-color:#222e3d}.rating b{color:var(--gold);font-size:1.15rem}.rating span{font-size:.6rem;letter-spacing:.07em;color:#8893a1;white-space:nowrap}.rating-hint{margin:auto .75rem .8rem;color:#7690b1;font-size:.7rem;line-height:1.5}
.event-head-actions{display:flex;align-items:center;gap:.45rem;margin-left:auto}.event-head-actions button{border:1px solid #34506d;border-radius:.4rem;background:#15283a;color:#8fc8ff;padding:.34rem .62rem;font-size:.68rem;font-weight:700;cursor:pointer;white-space:nowrap}.event-head-actions button:hover{border-color:var(--blue);color:white}.event-head input{width:13.5rem;background:#1b2735;padding:.35rem .65rem;font-size:.73rem}.event-panel table{table-layout:fixed}.event-panel th:nth-child(1){width:9rem}.event-panel th:nth-child(2){width:8.8rem}.event-panel th:nth-child(3){width:12rem}.event-panel th:nth-child(4){width:11rem}.event-panel th:nth-child(5){width:11rem}.event-panel th:nth-child(6){width:7rem}.event-panel th:nth-child(8){width:2.5rem}.event-panel th,.event-panel td{padding:.62rem .75rem}.event-panel th:last-child,.event-panel td.event-delete{padding-left:.25rem;padding-right:.45rem;text-align:center}.delete-event{width:1.45rem;height:1.45rem;font-size:.92rem}.event-foot{display:flex;gap:1.4rem;align-items:center;min-height:4rem;padding:0 .9rem;border-top:1px solid var(--line);font-size:.75rem;color:#91a6c0}.event-foot b{color:white}.sync-foot{margin-left:auto;color:#647991}.event-panel .empty{padding-top:2.8rem}
@media(max-width:1450px){.logger-grid{grid-template-columns:minmax(330px,390px) minmax(560px,1fr) 145px}.match-actions .button{padding:.6rem .7rem}.competition-field{width:10rem}.keyword{font-size:.62rem;padding-left:.45rem}.keyword:before{margin-right:.35rem}}

/* Keep all 24 keywords visible while returning vertical space to the log. */
.logger-grid{grid-template-rows:300px minmax(300px,1fr)}
.actions-panel{display:flex;flex-direction:column}
.actions-panel .keyword-grid{flex:1;overflow:visible;align-content:stretch;gap:.35rem;padding:.6rem}
.actions-panel .keyword{min-height:0;height:auto;padding:.32rem .62rem;line-height:1.15}
.ratings-panel .rating{flex:1;min-height:0;margin:.38rem .7rem;padding:.38rem}
.ratings-panel .rating:last-child{margin-bottom:.7rem}

/* Match the denser desktop workspace on laptop/desktop browsers. */
@media(min-width:951px){
  .topbar{height:44px;padding:0 18px}
  .desktop-shell{height:calc(100vh - 44px)}
  .sidebar{width:172px;padding:12px 10px}
  .nav-item{padding:.6rem .7rem;font-size:.8rem}
  .view.logger-page{overflow:hidden}
  .match-strip{flex:0 0 80px;height:80px;min-height:80px;margin:16px 16px 0;padding:11px 16px;gap:20px}
  .competition-field{width:177px}
  .competition-field strong{padding:.55rem .7rem}
  .logger-grid{overflow:hidden;padding:12px 16px 12px;grid-template-columns:minmax(288px,358px) minmax(480px,1fr) 156px;grid-template-rows:minmax(260px,286px) minmax(0,1fr);gap:12px}
  .panel-title{padding:.58rem .75rem}
  .event-head input{padding:.25rem .55rem}
  .event-foot{min-height:3.2rem}
  .event-panel th,.event-panel td{padding:.42rem .65rem}
  .event-panel table{table-layout:auto;width:max-content;min-width:100%}
  .event-panel th:nth-child(1){width:auto;min-width:var(--clip-column-width,11%)}
  .event-panel th:nth-child(2){width:auto;min-width:7.2rem}
  .event-panel th:nth-child(3){width:auto;min-width:9.5rem}
  .event-panel th:nth-child(4){width:auto;min-width:10rem}
  .event-panel th:nth-child(5){width:auto;min-width:8.4rem}
  .event-panel th:nth-child(6){width:auto;min-width:4.25rem}
  .event-panel th:nth-child(7){width:auto;min-width:max(13.5rem,var(--notes-column-width,13.5rem))}
  .event-panel th:nth-child(8){width:2.5rem;min-width:2.5rem}
  .event-panel td.notes{min-width:0}
  .event-panel .cell-input,.event-panel .cell-input.notes-input{width:100%;min-width:0}
}

/* Fixture and private team-sheet parity. */
#dashboard{max-width:none;margin:0;padding:12px 16px}#dashboard .page-head{align-items:center;margin:0 0 .45rem}#dashboard .page-head h1{font-size:1.35rem;margin:0}#dashboard .page-head .button{padding:.48rem .75rem;font-size:.78rem}#dashboard .tabs{margin-bottom:.55rem}#dashboard .tab{padding:.48rem .7rem;font-size:.78rem}#dashboard .request-note{margin:.4rem 0 .55rem;font-size:.72rem}#dashboard .card-list{gap:.45rem}#dashboard .log-card{padding:.62rem .85rem;border-radius:.55rem}#dashboard .log-card h2{font-size:.86rem;margin:0}#dashboard .log-card p{font-size:.72rem}#dashboard .log-card .open{font-size:.74rem}
.fixture-tools{display:grid;grid-template-columns:minmax(10rem,15rem) minmax(12rem,1fr) auto;gap:.55rem;margin-bottom:.45rem}.fixture-tools select,.fixture-tools input{min-height:0;width:100%;background:#09131e;border:1px solid var(--line);color:var(--text);border-radius:.45rem;padding:.5rem .65rem;font-size:.78rem;outline:none}.fixture-tools .button{padding:.48rem .75rem;font-size:.76rem}.fixture-card{grid-template-columns:5.8rem 4.2rem minmax(0,1fr) auto;gap:.75rem;min-height:3.55rem}.fixture-time{display:flex;flex-direction:column;justify-content:center;gap:.12rem}.fixture-time b{color:var(--text);font-family:inherit;font-size:.8rem}.fixture-time span{font-size:.68rem;color:#86a7d1}.fixture-comp{align-self:center;text-align:center;padding:.28rem .4rem;border:1px solid var(--line);border-radius:.35rem;background:#1b2735;color:#9db3d0;font-size:.63rem;font-weight:800}.fixture-teams{align-self:center;min-width:0}.fixture-teams h2{display:flex;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fixture-teams small{margin:0 .42rem;color:var(--muted);font-size:.7rem;font-weight:400}.kit-bar{display:inline-block;flex:0 0 3px;width:3px;height:1.05rem;border-radius:2px;margin:0 .55rem}.kit-bar:first-child{margin-left:0}
.teams-panel{min-height:0}.teams-columns{overflow:hidden}.team-column{min-height:0}.squad-list{flex:0 0 auto;overflow:visible}.player-search{flex:0 0 auto}.squad-player-row{display:flex;align-items:center;min-width:0}.squad-player-row .squad-player{flex:1;min-width:0}.subs-placeholder{flex:1 1 0;min-height:0;padding:.35rem 0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;text-align:left;scrollbar-gutter:stable}.subs-placeholder:empty{padding:1rem;text-align:center}.subs-placeholder .squad-player{padding:.32rem .75rem}.substitution-button{flex:0 0 1.65rem;width:1.65rem;height:1.5rem;margin-right:.35rem;border:1px solid #35506b;border-radius:.35rem;background:#15283a;color:#65b7ff;cursor:pointer;font-weight:800}.substitution-button:hover{border-color:var(--blue);background:#1c3852}.substitution-menu{position:fixed;z-index:80;width:16.5rem;max-height:min(31rem,calc(100vh - 16px));display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:.6rem;background:#171f2b;box-shadow:0 18px 55px #000b}.substitution-head{padding:.8rem .85rem;border-bottom:1px solid var(--line);font-size:.78rem;font-weight:800}.substitution-label{padding:.6rem .85rem .35rem;color:#71839a;font-size:.62rem;letter-spacing:.12em}.substitution-list{overflow:auto;padding:.15rem .35rem .45rem}.substitution-list button{display:flex;gap:.7rem;width:100%;border:0;border-radius:.35rem;background:transparent;color:var(--text);padding:.5rem .55rem;text-align:left;cursor:pointer;font-size:.78rem}.substitution-list button:hover{background:#203044}.substitution-list button span{width:1.5rem;color:#879ab2;text-align:right}.substitution-cancel{border:0;border-top:1px solid var(--line);background:#111923;color:var(--muted);padding:.65rem;cursor:pointer}.substitution-cancel:hover{color:white}
.teams-modal-card{width:min(94vw,72rem);max-height:92vh;display:flex;flex-direction:column}.teams-modal-body{overflow:auto}.teams-editor{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.team-editor-column{min-width:0;border:1px solid var(--line);border-radius:.65rem;overflow:hidden;background:#111a26}.team-editor-column h3{margin:0;padding:.75rem .9rem;background:#1b2a3b;font-size:.9rem}.editor-sep{padding:.45rem .7rem;background:#0d1722;color:#86a7d1;font-size:.65rem;letter-spacing:.12em}.team-editor-labels{display:grid;grid-template-columns:3rem 1fr;gap:.45rem;padding:.38rem .55rem 0;color:#687d94;font-size:.58rem;letter-spacing:.1em}.team-editor-labels span:first-child{text-align:center}.team-editor-row{display:grid;grid-template-columns:3rem 1fr;gap:.45rem;padding:.25rem .55rem}.team-editor-row input{padding:.4rem .5rem;font-size:.78rem;border:1px solid #2b3d50;border-radius:.38rem;background:#0b1520}.team-editor-row .player-number{text-align:center}
@media(max-width:700px){.fixture-tools,.teams-editor{grid-template-columns:1fr}.fixture-card{grid-template-columns:1fr}.fixture-card .open{justify-self:start}}

/* Desktop-parity reports: private match index followed by one full match log. */
#reports{max-width:none;padding:20px;overflow:auto}.reports-shell{width:100%;min-width:0}.reports-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:16px}.reports-head h1{margin:0;font-size:1.45rem}.report-global-search{display:flex;align-items:center;width:min(425px,42vw);border:1px solid var(--line);border-radius:.55rem;background:#1a2533;color:#71869c}.report-global-search span{padding-left:.8rem}.report-global-search input{border:0;background:transparent;padding:.62rem .7rem;font-size:.78rem;box-shadow:none}.report-log-list{display:flex;flex-direction:column;gap:8px}.report-date{margin:14px 2px 4px;color:#708dad;font-size:.7rem;font-weight:500;letter-spacing:.11em}.report-date:first-child{margin-top:0}.report-log-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;width:100%;min-height:68px;padding:.78rem 1rem;border:1px solid var(--line);border-radius:.55rem;background:#161f2b;color:var(--text);text-align:left;cursor:pointer}.report-log-card:hover{border-color:#41688f;background:#192536}.report-log-card span{display:flex;flex-direction:column;gap:.22rem;min-width:0}.report-log-card b{font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.report-log-card small,.report-log-card em{color:#89a7cd;font-size:.7rem;font-style:normal}.report-log-card em{min-width:7rem;text-align:center}.report-match-bar{display:flex;align-items:center;gap:1rem;margin-bottom:14px}.report-match-bar>div{display:flex;flex-direction:column;gap:.18rem}.report-match-bar b{font-size:.86rem}.report-match-bar span{color:#86a7d1;font-size:.7rem}.report-match-bar .report-back{margin-right:.1rem}.report-match-bar #report-open-logger{margin-left:.2rem}.report-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:12px}.report-summary .stat{min-height:72px;padding:.78rem 1rem;border-radius:.55rem;background:#161f2b}.report-summary .stat b{font-size:1.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.report-summary .stat span{font-size:.66rem;color:#708dad}.report-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(9rem,1fr);gap:10px;padding:10px 14px;border:1px solid var(--line);border-radius:.65rem .65rem 0 0;background:#161f2b}.report-filters label{display:flex;flex-direction:column;gap:.3rem;min-width:0}.report-filters label>span{color:#718aa7;font-size:.62rem;text-transform:uppercase;letter-spacing:.09em}.report-filters select{width:100%;min-width:0;height:36px;padding:0 .65rem;border:1px solid var(--line);border-radius:.45rem;background:#1b2735;color:var(--text);font-size:.74rem;outline:none}.report-filters select:focus{border-color:var(--blue)}.report-filters .button{align-self:end;height:36px;padding:.4rem .75rem;text-align:left;font-size:.72rem}.report-panel{border-radius:0 0 .65rem .65rem}.report-panel .table-wrap{max-height:calc(100vh - 390px);min-height:120px}.report-panel table{table-layout:auto;width:100%;font-size:.76rem}.report-panel th{padding:.48rem .7rem;font-size:.63rem}.report-panel td{padding:.48rem .7rem}.report-panel th:nth-child(1){width:9%}.report-panel th:nth-child(2){width:9%}.report-panel th:nth-child(3){width:20%}.report-panel th:nth-child(4){width:20%}.report-panel th:nth-child(5){width:13%}.report-panel th:nth-child(6){width:7%}.report-panel .report-notes{white-space:normal;overflow-wrap:anywhere}.report-panel .empty{padding:2.2rem}
@media(max-width:1050px){.report-summary{grid-template-columns:repeat(3,1fr)}.report-filters{grid-template-columns:repeat(2,1fr)}.report-global-search{width:min(360px,48vw)}}
@media(max-width:650px){#reports{padding:12px}.reports-head{align-items:stretch;flex-direction:column}.report-global-search{width:100%}.report-match-bar{align-items:flex-start;flex-wrap:wrap}.report-summary,.report-filters{grid-template-columns:1fr 1fr}.report-log-card em{min-width:auto}.report-panel .table-wrap{max-height:none}}
