:root{--navy: #002855;--navy-2: #0b3a70;--teal: #008675;--teal-2: #00a08c;--gray: #a2aaad;--tangerine: #ff671f;--ink: #0f1a2a;--muted: #5b6778;--line: #d9dee5;--soft: #f3f6f9;--paper: #ffffff;--bg: #eef2f6;--win: #008675;--loss: #b4413a;--rd1: #d64545;--rd2: #7a4fd0;--corner: #c98200;--lion: #c98200;--rhino: #118a99;--rabbit: #2f9a63;--racker: #d64545;--dragon: #7a4fd0;--wolf: #3f72b3;--fox: #d65d16;--bear: #8a5a34;--radius: 12px;--font: "Montserrat", system-ui, -apple-system, "Segoe UI", sans-serif;--serif: "Source Serif 4", Georgia, serif}*{box-sizing:border-box}html,body{margin:0}body{font-family:var(--font);color:var(--ink);background:var(--bg);font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}a{color:var(--navy)}button,input,select{font:inherit;color:inherit}b,strong{font-weight:700}h1,h2,h3{margin:0}.app{min-height:100vh;display:flex;flex-direction:column}.topbar{background:var(--navy);color:#fff;position:sticky;top:0;z-index:20;box-shadow:0 2px 0 var(--teal)}.topbar-inner{max-width:1180px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:10px 16px}.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none}.brand .ball{color:#7fd6c8;flex:none}.brand b{display:block;font-size:14px;letter-spacing:.02em}.brand-sub{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#9fd9cf;font-weight:600}.menu-btn{display:none;background:none;border:0;padding:8px;cursor:pointer}.menu-btn span{display:block;width:22px;height:2px;background:#fff;margin:4px 0;border-radius:2px}.nav{background:var(--navy-2)}.nav-inner{max-width:1180px;margin:0 auto;display:flex;flex-wrap:wrap;gap:2px;padding:0 10px;align-items:center}.nav a{color:#dce6f2;text-decoration:none;font-size:13px;font-weight:600;padding:10px;border-bottom:3px solid transparent}.nav a:hover{color:#fff}.nav a.active{color:#fff;border-bottom-color:var(--teal-2)}.nav a.coach-link{color:#ffd2bd}.nav a.coach-link.active{border-bottom-color:var(--tangerine)}.nav-sep{width:1px;height:18px;background:#ffffff40;margin:0 6px}.nav-signout{margin-left:auto;background:none;border:1px solid rgba(255,255,255,.3);color:#dce6f2;border-radius:99px;padding:4px 12px;font-size:12px;cursor:pointer}.main{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:20px 16px 40px}.foot{text-align:center;font-size:12px;color:var(--muted);padding:18px 16px 26px}@media(max-width:860px){.menu-btn{display:block}.nav{display:none}.nav.open{display:block}.nav-inner{flex-direction:column;align-items:stretch;padding:6px 10px 12px}.nav a{border-bottom:0;border-left:3px solid transparent;padding:10px 12px;font-size:15px}.nav a.active{border-left-color:var(--teal-2);background:#ffffff0f}.nav-sep{width:auto;height:1px;margin:6px 0}.nav-signout{margin:8px 0 0;align-self:flex-start}}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:16px;background:linear-gradient(160deg,var(--navy) 0%,#013a6b 55%,var(--teal) 140%)}.login{background:#fff;border-radius:16px;padding:28px 24px;width:100%;max-width:380px;display:flex;flex-direction:column;gap:12px;box-shadow:0 20px 60px #00000040}.login h1{font-family:var(--serif);font-size:28px;color:var(--navy);line-height:1.1}.login input{padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;font-size:16px}.login input:focus{outline:2px solid var(--teal);border-color:transparent}.kicker{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--teal);display:flex;align-items:center;gap:6px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:16px}.page-head h1{font-family:var(--serif);font-size:clamp(28px,5vw,40px);color:var(--navy);line-height:1.05;margin-top:4px}.page-head-side{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sec{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:800;color:var(--navy);text-transform:uppercase;letter-spacing:.02em;margin:26px 0 12px;flex-wrap:wrap}.sec-num{width:28px;height:28px;border-radius:50%;background:var(--navy);color:#fff;display:inline-grid;place-items:center;font-size:14px;flex:none}.sec-hint{font-size:12px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--muted);font-style:italic;margin-left:auto}.muted{color:var(--muted)}.small{font-size:12px}.pad{padding:20px 0}.strong{font-weight:700}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;margin-bottom:16px;min-width:0}.panel-h{font-size:15px;font-weight:800;color:var(--navy);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.panel h3{font-size:14px;margin-bottom:8px}.count{background:var(--soft);color:var(--muted);border-radius:99px;padding:1px 8px;font-size:12px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media(max-width:860px){.grid-2,.grid-3{grid-template-columns:1fr}}.empty{background:var(--paper);border:1.5px dashed var(--line);border-radius:var(--radius);padding:28px 16px;text-align:center;color:var(--muted);margin:12px 0}.error-note{background:#fde8e6;color:#8a2a22;border-radius:8px;padding:8px 12px;font-size:13px}.warn-note{background:#fff4e5;color:#7a4a00;border-radius:8px;padding:8px 12px;font-size:13px;margin-bottom:10px}.warn-inline{color:#b25d00;font-weight:600}.footnote{font-size:12px;color:var(--muted);margin-top:10px}.back-link{display:inline-block;font-size:13px;font-weight:600;text-decoration:none;margin-bottom:8px}.plain-link{text-decoration:none;color:inherit;font-weight:600}.plain-link:hover{color:var(--teal)}.small-link{font-size:12px;font-weight:600}.btn{border:1.5px solid var(--line);background:#fff;border-radius:99px;padding:8px 16px;font-weight:700;font-size:14px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:6px;color:var(--navy)}.btn:hover{border-color:var(--navy)}.btn.primary{background:var(--navy);color:#fff;border-color:var(--navy)}.btn.primary:hover{background:var(--navy-2)}.btn.danger{color:var(--loss)}.btn.danger:hover{border-color:var(--loss)}.btn.tiny{padding:4px 11px;font-size:12px}.btn:disabled{opacity:.45;cursor:default}.tabs{display:inline-flex;background:#fff;border:1px solid var(--line);border-radius:99px;padding:3px;gap:2px;margin-bottom:14px;flex-wrap:wrap;max-width:100%}.tabs button{border:0;background:none;padding:6px 14px;border-radius:99px;font-size:13px;font-weight:700;color:var(--muted);cursor:pointer}.tabs button.on{background:var(--navy);color:#fff}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-start}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:28px;padding:0 9px;border-radius:99px;color:#fff;font-weight:800;font-size:14px}.badge.sm{min-width:26px;height:21px;font-size:11.5px;padding:0 7px;vertical-align:2px}.badge.rd{background:linear-gradient(90deg,var(--rd1),var(--rd2))}.badge.corner{background:var(--corner)}.badge.rabbit{background:var(--rabbit)}.badge.wolf{background:var(--wolf)}.badge.fox{background:var(--fox)}.badge.bear{background:var(--bear)}.badges{display:flex;gap:4px;flex-wrap:wrap;align-items:center}.bsep{width:6px}.code-chip{display:inline-block;min-width:28px;text-align:center;font-size:11.5px;font-weight:800;padding:2px 6px;border-radius:6px;color:#fff;background:var(--gray)}.code-chip.racker{background:var(--racker)}.code-chip.dragon{background:var(--dragon)}.code-chip.lion{background:var(--lion)}.code-chip.rhino{background:var(--rhino)}.code-chip.rabbit{background:var(--rabbit)}.code-chip.d-W{background:var(--wolf)}.code-chip.d-F{background:var(--fox)}.code-chip.d-B{background:var(--bear)}.key-bar,.key-inline{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:12.5px;font-weight:600;color:var(--muted);align-items:center}.key-bar{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:10px 14px;margin-bottom:16px}.key-gap{margin-left:8px}.hero-band{background:linear-gradient(120deg,var(--navy),#003c73 60%,var(--teal));color:#fff;border-radius:16px;padding:22px;margin-bottom:16px;position:relative;overflow:hidden}.hero-band:after{content:"";position:absolute;right:-50px;top:-60px;width:220px;height:220px;border-radius:50%;border:18px solid rgba(255,255,255,.08)}.hero-k{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#9fd9cf;font-weight:700}.hero-t{font-family:var(--serif);font-size:clamp(22px,4vw,32px);font-weight:700;margin:4px 0}.hero-s{font-weight:600;color:#dce6f2}.gc-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:520px){.gc-row{grid-template-columns:1fr}}.game-card{display:block;text-decoration:none;color:inherit;background:var(--soft);border-radius:10px;padding:10px 12px}.game-card:hover{background:#e7eef5}.gc-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--teal)}.gc-opp{font-weight:800;color:var(--navy);margin:2px 0}.gc-meta{font-size:13px;color:var(--muted);display:flex;gap:8px;align-items:center;flex-wrap:wrap}.link-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.link-card{background:#fff;border:1px solid var(--line);border-left:5px solid var(--teal);border-radius:var(--radius);padding:14px 16px;text-decoration:none;color:inherit}.link-card:hover{border-color:var(--navy);border-left-color:var(--navy)}.lc-t{font-weight:800;color:var(--navy);font-size:16px}.lc-d{font-size:13px;color:var(--muted)}.result{display:inline-block;font-size:12px;font-weight:800;padding:2px 8px;border-radius:6px;background:var(--soft);color:var(--muted);white-space:nowrap}.result.W{background:#d9f1ec;color:var(--win)}.result.L{background:#f9e1df;color:var(--loss)}.result.big{font-size:14px;padding:4px 12px}.team-tag{font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:5px;margin-right:8px;vertical-align:1px}.team-tag.Varsity{background:var(--navy);color:#fff}.team-tag.JV{background:#d9f1ec;color:var(--teal)}.sched{display:flex;flex-direction:column;gap:8px}.sched-row{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:10px 14px}.sched-row.today{border-color:var(--teal);box-shadow:0 0 0 2px #d9f1ec}.sr-date{text-align:center;width:54px;flex:none}.sr-dow{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--teal)}.sr-md{font-weight:800;color:var(--navy)}.sr-main{flex:1;min-width:0}.sr-opp{font-weight:700}.sr-meta{font-size:12.5px;color:var(--muted)}.sr-res{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.table-wrap{overflow-x:auto;background:#fff;border:1px solid var(--line);border-radius:var(--radius);-webkit-overflow-scrolling:touch}.panel .table-wrap{border:0;border-radius:0;margin:0 -16px}table{border-collapse:collapse;width:100%}.stats th,.stats td{padding:7px 9px;text-align:center;white-space:nowrap;font-size:13px;border-bottom:1px solid #edf0f4}.stats th{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--soft);font-weight:700}.stats .sticky{position:sticky;left:0;background:#fff;text-align:left;z-index:1;box-shadow:1px 0 #edf0f4}.stats th.sticky{background:var(--soft)}.stats tfoot td{font-weight:700;background:var(--soft);border-top:2px solid var(--line)}.stats tfoot .sticky{background:var(--soft)}.stats tbody tr:hover td{background:#f7fafc}.roster th,.roster td{padding:7px 8px;text-align:left;border-bottom:1px solid #edf0f4;font-size:14px}.roster th{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.num-cell{color:var(--muted);font-weight:700;width:34px}.rank-table .rank-cell{font-weight:800;color:var(--navy)}.rank-table tr.top1 .rank-cell{background:var(--navy);color:#fff}.rank-table tr.top2 .rank-cell{background:var(--teal);color:#fff}.rank-table tr.top3 .rank-cell{background:var(--gray);color:#fff}.mv{font-size:12px;font-weight:800;color:var(--muted)}.mv.up{color:var(--teal)}.mv.down{color:var(--loss)}.mv.new{color:var(--tangerine)}.cards-1,.cards-2,.cards-3{display:grid;gap:12px}.cards-2{grid-template-columns:1fr 1fr}.cards-3{grid-template-columns:repeat(3,1fr)}@media(max-width:860px){.cards-2,.cards-3{grid-template-columns:1fr}}.role-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px 12px 18px;position:relative;overflow:hidden}.role-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px}.role-card.rd:before{background:linear-gradient(180deg,var(--rd1),var(--rd2))}.role-card.corner:before{background:linear-gradient(180deg,var(--lion),var(--rhino))}.role-card.rabbit:before{background:var(--rabbit)}.role-card.wolf:before{background:var(--wolf)}.role-card.fox:before{background:var(--fox)}.role-card.bear:before{background:var(--bear)}.rc-head{display:flex;align-items:center;gap:10px;margin-bottom:6px}.rc-head h3{font-size:17px;font-weight:800;text-transform:uppercase;color:var(--navy);line-height:1.1}.role-card.wolf h3{color:var(--wolf)}.role-card.fox h3{color:var(--fox)}.role-card.bear h3{color:var(--bear)}.tag{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-top:2px}.role-card p{margin:0 0 6px;font-size:14px;background:var(--soft);border-radius:6px;padding:6px 9px}.role-card ul{margin:0;padding-left:18px;font-size:14px}.role-card li{margin-bottom:3px}.role-card li::marker{color:var(--teal)}.animal-ic{flex:none}.rc-spots{display:flex;flex-wrap:wrap;gap:4px 14px;margin:0 0 8px;font-size:13px;font-weight:700;color:var(--navy)}.court-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column;gap:8px;min-width:0}.court-card h3{font-size:15px;font-weight:800;text-transform:uppercase;color:var(--navy)}.court-card p{margin:0;font-size:13.5px}.court-card .court{max-width:420px;margin:0 auto}.court-card.tight .court{max-width:340px}.court-wide{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:10px;margin-bottom:12px;overflow-x:auto}.court-wide .court{min-width:560px}.court{width:100%;height:auto;display:block;font-family:var(--font)}.court-floor{fill:#f3efe6;stroke:#c9c2b2;stroke-width:3}.court-line{stroke:#c9c2b2}.move{stroke:var(--ink)}.arrow-head{fill:var(--ink)}.court .dot.lit{stroke:#fff;stroke-width:3}.court .dot.dim{fill:#d9d3c5}.court .glow{opacity:.25}.fill-lion{fill:var(--lion)}.fill-rhino{fill:var(--rhino)}.fill-rabbit{fill:var(--rabbit)}.fill-racker{fill:var(--racker)}.fill-dragon{fill:var(--dragon)}.fill-corner{fill:var(--corner)}.court .ab{font-weight:900;font-size:13px;text-anchor:middle;dominant-baseline:central}.court .ab.lit{fill:#fff}.court .ab.dim{fill:#9b937f}.court .nm{font-weight:800;font-size:13px;letter-spacing:.06em;text-anchor:middle}.court .nm.lit{fill:var(--ink)}.court .nm.dim{fill:#b3ab98}.court .cap{font-size:12px;font-weight:800;letter-spacing:.1em;fill:var(--navy);text-anchor:middle}.court .zt{font-weight:900;font-size:22px;text-anchor:middle;fill:var(--ink);letter-spacing:.06em}.court .zs{font-weight:800;font-size:15px;text-anchor:middle;fill:#3a4658;letter-spacing:.08em}.court .zm{font-weight:700;font-size:12px;fill:#9b937f;letter-spacing:.08em}.zone-call{background:#d9f1ec;color:var(--teal);border-radius:8px;padding:6px 10px;font-size:13.5px}.coach-tools{display:flex;gap:6px;align-items:center;flex-wrap:wrap;font-size:13px;border-top:1px dashed var(--line);padding-top:8px}.coach-pill{background:var(--tangerine);color:#fff;font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:5px}.rules-box{background:var(--navy);color:#fff;border-radius:var(--radius);padding:14px 16px;margin-top:16px}.rules-box b{color:#7fd6c8}.rules-h{font-weight:800;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.rules-box ul{margin:0;padding-left:18px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}@media(max-width:760px){.principles{grid-template-columns:1fr 1fr}}@media(max-width:460px){.principles{grid-template-columns:1fr}}.principle{background:#fff;border:1px solid var(--line);border-left:6px solid var(--teal);border-radius:10px;padding:10px 13px}.principle strong{display:block;text-transform:uppercase;font-weight:800;color:var(--navy)}.principle span{font-size:13.5px}.principle.hl{background:var(--navy);border-color:var(--navy);border-left-color:var(--teal-2);color:#fff}.principle.hl strong{color:#7fd6c8}.picker{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;margin-bottom:8px}.picker-label{display:block;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);margin-bottom:8px}.name-grid{display:flex;flex-wrap:wrap;gap:6px}.name-chip{border:1.5px solid var(--line);background:#fff;border-radius:99px;padding:6px 12px;font-size:14px;font-weight:600;cursor:pointer;display:inline-flex;gap:5px;align-items:center}.name-chip:hover{border-color:var(--navy)}.name-chip.on{background:var(--navy);color:#fff;border-color:var(--navy)}.name-chip.busy{opacity:.45}.name-chip .num{font-size:11px;opacity:.7;font-weight:800}.name-grid.compact .name-chip{padding:5px 10px;font-size:13px}.my-roles{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:8px 14px;margin:12px 0 4px}.mr-h{font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--teal)}.mr-row{display:flex;align-items:center;gap:5px}.mr-l{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-right:3px}.study-courts{margin-top:12px}.bottom-boxes{margin-top:16px}.bottom-boxes .rules-box{margin-top:0}.quiz{background:#eef8f6;border:2px dashed #7fc7bb;border-radius:var(--radius);padding:14px 16px}.quiz ol{margin:0;padding-left:20px}.quiz li{margin-bottom:8px}.quiz li>span:first-child{display:block;font-weight:600}.answer{display:inline-block;background:var(--teal);color:#fff;border-radius:6px;padding:2px 8px;font-size:13px;font-weight:700;margin-top:3px}.quiz .btn{margin-top:3px}.if-time{background:var(--tangerine);color:#fff;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:1px 6px;border-radius:4px;margin-left:6px}.st-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px}@media(max-width:400px){.st-grid{grid-template-columns:1fr}}.st-game{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:12px}.st-head{font-weight:800;color:var(--navy);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;display:flex;align-items:center;gap:8px}.st-head .btn{margin-left:auto}.st-teams{display:grid;grid-template-columns:1fr 1fr;gap:8px}.st-team{border-radius:10px;padding:8px;border:1.5px solid var(--line)}.st-team.navy{background:#e6edf6;border-color:#b9c9de}.st-side{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--navy);margin-bottom:4px}.st-team table th{font-size:10px;color:var(--muted);font-weight:800;text-align:center;padding:0 2px 2px}.st-team table th:nth-child(3),.st-team table td:nth-child(3){border-left:1px solid #c5cfdb}.st-team td{padding:3px 2px;font-size:13.5px;text-align:center}.st-team td.st-name{text-align:left;font-weight:600}.st-team tr.me td{background:#fff3c4}.st-team tr.me td.st-name{font-weight:800}.st-sit{font-size:12.5px;color:var(--muted);margin-top:6px}.box-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px}.box-item{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 12px;text-decoration:none;color:inherit;display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center}.box-item:hover{border-color:var(--navy)}.box-item.no-box{opacity:.75}.bi-date{font-size:12px;color:var(--muted);width:100%}.bi-opp{font-weight:800;color:var(--navy);flex:1}.scoreboard{display:flex;gap:16px;align-items:center;background:var(--navy);color:#fff;border-radius:12px;padding:10px 16px}.scoreboard>div{display:flex;flex-direction:column;align-items:center}.sb-l{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#9fd9cf}.sb-n{font-size:28px;font-weight:900}.tiles{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:14px 0}@media(max-width:760px){.tiles{grid-template-columns:repeat(3,1fr)}}.tile{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:12px;text-align:center}.tile-v{font-size:24px;font-weight:900;color:var(--navy)}.tile-l{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.trend{width:100%;height:auto}.trend .axis{stroke:var(--line)}.trend .bar{fill:var(--navy)}.trend .pm-dot{fill:var(--teal);stroke:#fff;stroke-width:2}.trend .tick,.rank-chart .tick{font-size:11px;fill:var(--muted);text-anchor:middle;font-family:var(--font)}.rank-chart .tick.end{text-anchor:end}.legend{font-size:11.5px;font-weight:600;color:var(--muted);text-transform:none;letter-spacing:0;display:inline-flex;gap:6px;align-items:center;margin-left:auto}.legend i{display:inline-block;width:12px;height:12px;border-radius:3px}.lg-bar{background:var(--navy)}.lg-dot{background:var(--teal);border-radius:50%!important}.lg-8{background:var(--navy)}.lg-7{background:var(--teal)}.rank-top{align-items:stretch}.podium{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.pod{border-radius:var(--radius);padding:14px 10px;color:#fff;text-align:center}.pod.p1{background:var(--navy)}.pod.p2{background:var(--teal)}.pod.p3{background:var(--gray)}.pod-rank{font-size:12px;font-weight:800;opacity:.85}.pod-name{font-size:20px;font-weight:900}.pod-avg{font-size:30px;font-weight:900;line-height:1.1}.pod-gr{font-size:12px;opacity:.85}.movers{list-style:none;margin:0;padding:0;font-size:14px}.movers li{padding:4px 0;border-bottom:1px solid #edf0f4}.chart-scroll{overflow-x:auto}.rank-chart{width:100%;min-width:560px;height:auto}.rank-chart .grid{stroke:#edf0f4}.rk-line polyline{stroke-width:2}.rk-line circle{stroke:#fff;stroke-width:1.5}.rk-line.g8 polyline{stroke:var(--navy)}.rk-line.g8 circle{fill:var(--navy)}.rk-line.g7 polyline{stroke:var(--teal)}.rk-line.g7 circle{fill:var(--teal)}.rk-line .rk-lab{font-size:11px;font-weight:600;font-family:var(--font);fill:var(--ink)}.rk-line{cursor:pointer;transition:opacity .15s}.rk-line.faded{opacity:.12}.rk-line.focus polyline{stroke-width:4}.eval-list{list-style:none;margin:0;padding:0}.eval-list li{padding:8px 0;border-bottom:1px solid #edf0f4}.el-top{display:flex;justify-content:space-between;gap:8px;margin-bottom:4px}.el-note{font-size:12.5px;color:var(--muted);margin-top:4px}.rot-table th.num,.rot-table td.num{text-align:right;width:44px}.rot-table tr.swing td{background:#eaf4fb}.rot-table tfoot td{font-weight:700;background:var(--soft);font-size:13px}.rot-table .code-chip{min-width:56px}.rot-tag{margin-left:6px;font-size:10.5px;font-weight:700;color:#1d6fa5;background:#d6eaf8;border-radius:99px;padding:1px 7px;white-space:nowrap}.rot-bar-col{width:30%;min-width:90px}.rot-bar{height:8px;background:var(--soft);border-radius:99px;overflow:hidden}.rot-bar span{display:block;height:100%;background:var(--teal);border-radius:99px}.rot-sub{font-size:13px;font-weight:800;color:var(--navy);text-transform:uppercase;letter-spacing:.04em;margin:16px 0 6px}.rot-moves{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px 10px}.rot-moves li{background:var(--soft);border-radius:8px;padding:4px 10px;font-size:13.5px}.rot-notes{margin:0;padding-left:18px;font-size:14px}.rot-notes li{margin-bottom:4px}@media(max-width:600px){.rot-bar-col{display:none}}.rot-head-link{margin-left:auto;text-transform:none;letter-spacing:0}.rot-meta{margin-bottom:10px;align-items:center}.rot-edit .w-sm{width:90px}.rot-edit .w-def{width:58px}.rot-order{display:flex;gap:2px}.rot-order .btn{padding:2px 7px}.rot-order .btn:disabled{opacity:.35;cursor:default}.rot-edit tfoot td{font-weight:700;background:var(--soft);padding:6px 4px}.rot-add{margin:10px 0}.rot-add select{border:1.5px solid var(--line);border-radius:7px;padding:6px 8px;background:#fff;font-size:14px}.rot-note-row{display:flex;gap:8px;align-items:flex-start;margin-bottom:8px}.rot-note-row input,.rot-note-row textarea{border:1.5px solid var(--line);border-radius:7px;padding:5px 7px;font:inherit;font-size:14px}.rot-note-row input{width:140px}.rot-note-row textarea{flex:1;min-width:0;resize:vertical}.btn:disabled{opacity:.5;cursor:default}@media(max-width:600px){.rot-note-row{flex-wrap:wrap}.rot-note-row input{width:100%}}.subnav{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}.subnav a{text-decoration:none;font-weight:700;font-size:13px;padding:7px 14px;border-radius:99px;background:#fff;border:1px solid var(--line);color:var(--muted)}.subnav a.active{background:var(--tangerine);border-color:var(--tangerine);color:#fff}.edit-table th{font-size:11px;text-transform:uppercase;color:var(--muted);padding:6px 4px;text-align:left;background:var(--soft);white-space:nowrap}.edit-table td{padding:4px;border-bottom:1px solid #edf0f4;white-space:nowrap}.edit-table input,.edit-table select,.game-form input,.game-form select,.day-meta input,.day-meta select,.builder select,.sheet-row select,.unmatched select,.bt-score input{border:1.5px solid var(--line);border-radius:7px;padding:5px 7px;background:#fff;font-size:14px}.edit-table input:focus,.game-form input:focus{outline:2px solid var(--teal);border-color:transparent}.edit-table tr.dirty td{background:#fff9e6}.edit-table tr.inactive td{opacity:.55}.edit-table .sticky{position:sticky;left:0;background:#fff;z-index:1}.edit-table th.sticky{background:var(--soft)}.w-name{width:110px}.w-xs{width:46px}.w-note{width:180px}.checks{display:flex;gap:4px}.chk{display:inline-flex;align-items:center;gap:3px;font-size:12px;font-weight:700;border:1.5px solid var(--line);border-radius:6px;padding:3px 6px;cursor:pointer;-webkit-user-select:none;user-select:none}.chk input{display:none}.chk.on{background:var(--navy);border-color:var(--navy);color:#fff}.cell{width:46px;text-align:center}.box-edit tr.off td{opacity:.6}.box-edit tr.off td.sticky{opacity:1}.played{display:flex;align-items:center;gap:6px;font-weight:600;cursor:pointer}.game-form{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:10px}.game-form label,.day-meta label,.builder label{display:flex;flex-direction:column;gap:3px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.game-form .wide{grid-column:span 2}@media(max-width:760px){.game-form{grid-template-columns:1fr 1fr}}.form-actions{grid-column:1 / -1;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.admin-games{display:flex;flex-direction:column}.ag-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid #edf0f4}.ag-date{font-size:13px;color:var(--muted);width:100px}.ag-opp{font-weight:700;flex:1;min-width:140px}.ag-actions{display:flex;gap:6px;flex-wrap:wrap}.import-panel{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap}.import-panel p{margin:4px 0 0;max-width:640px}.file-btn{cursor:pointer}.unmatched{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:4px 0}.save-bar{position:sticky;bottom:0;background:#eef2f6f2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:12px 0;display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:12px;border-top:1px solid var(--line);z-index:5}.day-meta{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap}.day-meta .wide{flex:1;min-width:200px}.day-meta .wide input{width:100%}.builder-top{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap}.builder-top .tabs{margin-bottom:0}.builder-teams{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.bt{border:2px solid var(--line);border-radius:10px;padding:8px 10px;cursor:pointer;min-height:120px}.bt.active{border-color:var(--teal);background:#f2faf8}.bt-h{font-weight:800;color:var(--navy)}.bt-score{flex-direction:row!important;align-items:center;gap:6px!important;margin:4px 0}.bt-score input{width:56px}.bt ol{margin:4px 0 0;padding-left:20px;font-size:14px}.bt ol b{color:var(--teal);margin-left:4px}.scrim-grid td.sticky{font-weight:600}.sheet-row{display:grid;grid-template-columns:1fr auto auto;gap:4px;margin-bottom:4px}.sheet-row select{padding:4px;font-size:13px;min-width:0}.sit-pick{display:flex;gap:4px;flex-wrap:wrap;align-items:center;margin-top:8px}.wedge-steps{margin:0;padding-left:20px;font-size:13.5px;display:grid;gap:6px}.court-card h3.mt{margin-top:6px}.scale-list{list-style:none;margin:0;padding:0;font-size:13.5px;display:grid;gap:4px}.scale-list li{display:flex;gap:10px;align-items:baseline;padding:3px 0;border-bottom:1px solid #edf0f4}.scale-list .scale-n{flex:0 0 26px;text-align:center;font-weight:900;color:var(--navy);background:#eef2f7;border-radius:6px;padding:1px 0}.scale-list li.good .scale-n{background:#dcefe4;color:#17663a}.scale-list li.bad .scale-n{background:#f6e0dc;color:#9b2c1c}.hero-motto{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.18);position:relative;z-index:1}.motto-words{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.motto-words span{font-family:var(--serif);font-size:clamp(18px,3vw,24px);font-weight:700;padding:4px 14px;border-radius:999px;background:#ffffff1f;border:1px solid rgba(255,255,255,.25)}.court-row .court-card .court{margin:auto auto 0}.court-card.court-feature{display:grid;grid-template-columns:minmax(0,520px) 1fr;gap:24px;align-items:center}.court-card.court-feature .court{max-width:none;margin:0}.court-card.court-feature p{font-size:15px}@media(max-width:860px){.court-card.court-feature{grid-template-columns:1fr}}.lock-left td{vertical-align:top;font-size:13.5px}.lock-left td:first-child{font-weight:700;color:var(--navy);width:26%}.lock-left td:nth-child(2){width:1%}.ll-role{display:inline-block;color:#fff;font-size:12px;font-weight:800;padding:2px 8px;border-radius:6px;white-space:nowrap}.sched-teams{align-items:start}
