:root{--navy:#0b2341;--navy-light:#1d3a63;--gold:#c8a24a;--gold-light:#f4ebd3;--gold-text:#6b4e0e;--bg:#f3f5f9;--surface:#fff;--text:#13203a;--muted:#5b6780;--border:#dde2ec;--line:#eef1f6;--danger:#b3261e;--danger-light:#fbe9e7;--danger-text:#8c1d17;--success:#1e7a46;--success-light:#e6f2ea;--info-light:#e6ecf5;--radius:14px}*{box-sizing:border-box}html,body,#root{min-height:100%}body{color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px}a{color:var(--navy-light)}a:hover{color:var(--navy)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.shell{flex-wrap:wrap;min-height:100vh;display:flex}.side{background:var(--navy);color:#fff;flex-direction:column;flex:232px;gap:2px;padding:20px 14px;display:flex}@media (width>=900px){.side{max-width:248px}}.brand{color:#fff;align-items:center;gap:12px;padding:4px 8px 18px;text-decoration:none;display:flex}.brand:hover{color:#fff}.brand img{width:36px;height:39px}.brand b{font-size:16px;font-weight:800;display:block}.brand small{color:var(--gold);font-size:12px;font-weight:600;display:block}.navgroup{letter-spacing:.08em;text-transform:uppercase;color:#9aa9c4;padding:14px 12px 6px;font-size:11px;font-weight:700}.nav{color:#d3dbea;border-radius:10px;align-items:center;gap:12px;min-height:42px;padding:0 12px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.nav:hover{background:var(--navy-light);color:#fff}.nav.active{background:var(--gold);color:var(--navy)}.nav .soon{color:#9aa9c4;text-transform:uppercase;letter-spacing:.05em;margin-left:auto;font-size:10px;font-weight:700}@media (width<=899px){.shell{align-content:flex-start}.side{flex-direction:row;flex-basis:100%;align-items:center;gap:4px;padding:8px 12px;overflow-x:auto}.navgroup,.side-foot,.nav .soon,.brand span{display:none}.brand{flex:none;padding:0 8px 0 0}.brand img{width:28px;height:30px}.nav{white-space:nowrap;flex:none;min-height:40px}}.side-foot{color:#9aa9c4;margin-top:auto;padding:18px 12px 0;font-size:12px}.side-env{letter-spacing:.08em;color:#c8d3e6;margin-top:3px;font-weight:800}.main{flex-direction:column;flex:999 560px;min-width:0;display:flex}.top{background:var(--surface);border-bottom:1px solid var(--border);z-index:5;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 28px;display:flex;position:relative}.content{flex-direction:column;gap:20px;width:100%;max-width:1240px;padding:28px;display:flex}@media (width<=640px){.content,.top{padding:16px}}.search{flex:300px;position:relative}.search-box{background:var(--bg);border:1px solid var(--border);min-height:44px;color:var(--muted);border-radius:10px;align-items:center;gap:10px;padding:0 14px;display:flex}.search-box input{min-width:0;color:var(--text);background:0 0;border:0;outline:none;flex:1;font-size:14px}.kbd{white-space:nowrap;background:#fff;border:1px solid #cbd3e1;border-radius:6px;padding:2px 6px;font-size:12px}.results{border:1px solid var(--border);background:#fff;border-radius:12px;max-height:420px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto;box-shadow:0 12px 32px #0b234129}.result{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;width:100%;padding:10px;display:flex}.result:hover,.result.hot{background:var(--bg)}.results .empty{color:var(--muted);padding:14px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:0;padding:20px}.card.dark{background:var(--navy);border-color:var(--navy);color:#fff}.card.todo{background:0 0;border-style:dashed}.h1{letter-spacing:-.01em;margin:0;font-size:26px;font-weight:800}.h2{margin:0;font-size:16px;font-weight:700}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:13px;font-weight:800}.muted{color:var(--muted);font-size:13px}.row{align-items:center;gap:12px;display:flex}.wrap{flex-wrap:wrap}.between{justify-content:space-between}.stack{flex-direction:column;gap:12px;display:flex}.btn{min-height:42px;color:var(--navy);cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #cbd3e1;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--navy);color:var(--navy)}.btn.primary{background:var(--navy);color:#fff;border-color:var(--navy)}.btn.primary:hover{background:var(--navy-light);color:#fff}.btn.gold{background:var(--gold);border-color:var(--gold);color:var(--navy)}.btn.small{min-height:36px;padding:0 12px;font-size:13px}.btn:disabled{opacity:.5;cursor:not-allowed}.chip{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-flex}.chip.ok{background:var(--success-light);color:var(--success)}.chip.bad{background:var(--danger-light);color:var(--danger-text)}.chip.warn{background:var(--gold-light);color:var(--gold-text)}.chip.info{background:var(--info-light);color:var(--navy-light)}.chip.grey{color:#3d4a63;background:#eceef2}.chip.music{color:#4b3591;background:#efeafb}.stu.music{border-color:#c9bceb}.filter.music{color:#4b3591;border-color:#c9bceb}.filter.music[aria-pressed=true]{color:#fff;background:#6b4fb3;border-color:#6b4fb3}.lesson{background:#f6f2fe;border:1px solid #ded3f6;border-radius:10px;align-items:center;gap:10px;margin-top:8px;padding:8px 12px;display:flex}.lesson.sport{background:#eef8f2;border-color:#c4e6d1}.lesson.sport .lesson-icon{background:var(--success)}.lesson-icon{color:#fff;background:#6b4fb3;border-radius:14px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.sample{color:var(--gold-text);background:var(--gold-light);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700}.avatar{background:var(--navy-light);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-size:13px;font-weight:700;display:flex}.avatar.big{background:var(--navy);border:3px solid var(--gold);width:76px;height:76px;font-size:26px;overflow:hidden}.avatar-photo{object-fit:cover;object-position:center 20%;width:100%;height:100%;display:block}.avatar.me{background:var(--gold);color:var(--navy)}.kpi{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:34px;font-weight:800;line-height:1.1}.grid4{grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr));gap:16px;display:grid}.grid3{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:20px;display:grid}.grid2{grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:20px;display:grid}.split{grid-template-columns:minmax(0,1fr);align-items:start;gap:20px;display:grid}@media (width>=1000px){.split{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}}.split.side-right{align-items:start}@media (width>=1000px){.split.side-right{grid-template-columns:minmax(0,2fr) minmax(320px,1fr)}}.li{border-top:1px solid var(--line);align-items:center;gap:12px;padding:12px 0;display:flex}.li:first-child{border-top:0}.notice{border-radius:10px;padding:12px 14px;font-size:13px;font-weight:600}.notice.bad{background:var(--danger-light);color:var(--danger-text)}.notice.ok{background:var(--success-light);color:var(--success)}.notice.warn{background:var(--gold-light);color:var(--gold-text)}.pform{flex-direction:column;gap:8px;display:flex}.plabel{color:var(--muted);text-transform:uppercase;letter-spacing:.02em;margin-top:8px;font-size:13px;font-weight:700}.plabel-row{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.plabel-row .plabel{margin-top:0}.pinput,.pselect select{border:1px solid var(--border);width:100%;min-height:48px;color:var(--text);background:#fff;border-radius:12px;padding:12px 14px;font-size:15px}.pinput.listening{border:2px solid var(--danger);padding:11px 13px}textarea.pinput{resize:vertical;min-height:130px;line-height:1.45}.pselect{position:relative}.pselect select{appearance:none;cursor:pointer;padding-right:40px}.pselect select:disabled{color:var(--muted);cursor:not-allowed;background:#f7f8fb}.pselect:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);pointer-events:none;width:8px;height:8px;position:absolute;top:50%;right:16px;transform:translateY(-70%)rotate(45deg)}.pchips{flex-wrap:wrap;gap:8px;display:flex}.pchip{background:var(--gold-light);border-radius:999px;align-items:center;gap:8px;max-width:100%;padding:8px 10px 8px 14px;display:inline-flex}.pchip-text{color:var(--navy);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.pchip button{background:var(--navy-light);color:#fff;cursor:pointer;border:0;border-radius:10px;place-items:center;width:20px;height:20px;padding:0;display:grid}.pstep{align-items:center;gap:10px;display:flex}.pstep button{border:1px solid var(--border);width:48px;height:48px;color:var(--navy);cursor:pointer;background:#fff;border-radius:12px;flex:none;font-size:24px}.pstep button:disabled{opacity:.3;cursor:not-allowed}.pday{border:1px solid var(--border);background:#fff;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:48px;padding:6px;display:flex}.pday b{color:var(--text);font-size:16px}.pday span{color:var(--muted);font-size:13px}.pdictate{border:1px solid var(--navy);color:var(--navy);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:6px;margin-top:8px;padding:6px 14px;font-size:13px;font-weight:700;display:inline-flex}.pdictate.on{background:var(--danger);border-color:var(--danger);color:#fff}.plistening{color:var(--danger);font-size:13px;font-weight:600}.plist{border:1px solid var(--border);background:#fff;border-radius:12px;max-height:260px;padding:4px;overflow:auto}.pseg{border:1px solid var(--border);background:#fff;border-radius:12px;gap:4px;padding:4px;display:flex}.pseg button{min-height:40px;color:var(--navy);cursor:pointer;background:0 0;border:0;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:6px;font-size:14px;font-weight:700;display:inline-flex}.pseg button[aria-pressed=true]{background:var(--navy);color:#fff}.prestrict{border:1px solid var(--border);background:#fbfaf6;border-radius:12px;padding:12px}.phint{color:var(--muted);font-size:13px}.psub{color:var(--text);font-size:13px;font-weight:700}.pchip.mine{background:#eceef2}.filter:disabled{opacity:.45;cursor:not-allowed}.icon-btn{width:34px;height:34px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #cbd3e1;border-radius:9px;flex:none;place-items:center;padding:0;display:inline-grid}.icon-btn:hover{background:var(--bg)}.icon-btn:disabled{cursor:progress}.spinner{border:2px solid #cbd3e1;border-top-color:var(--navy);border-radius:50%;width:15px;height:15px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.period-wrap{align-items:center;gap:10px;display:flex}.period-wrap>a,.period-wrap>div{flex:1;min-width:0}.kpi-link:hover{border-color:var(--gold)}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:14px}.table th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1.5px solid var(--line);padding:8px 10px;font-size:12px;font-weight:800}.table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:9px 10px}.table tr:hover td{background:#fafbfd}.table a{color:inherit;text-decoration:none}.table a:hover b{text-decoration:underline}.copilot{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:20px;display:grid}.copilot-agents{flex-direction:column;gap:6px;display:flex;position:sticky;top:84px}.agent{text-align:left;cursor:pointer;font:inherit;color:var(--text);background:0 0;border:1px solid #0000;border-radius:10px;align-items:flex-start;gap:10px;padding:10px;display:flex}.agent:hover{background:var(--bg)}.agent.on{background:var(--gold-light);border-color:var(--gold)}.agent-icon{border:1px solid var(--border);width:32px;height:32px;color:var(--navy);background:#fff;border-radius:9px;flex:none;place-items:center;display:grid}.agent-desc{margin-top:2px;font-size:12.5px;display:block}.copilot-chat{flex-direction:column;gap:12px;min-height:calc(100vh - 150px);display:flex}.chat-log{flex-direction:column;flex:1;gap:10px;padding:4px 2px;display:flex;overflow-y:auto}.bubble{border-radius:14px;max-width:min(760px,88%);padding:10px 14px;font-size:15px;line-height:1.45}.bubble.from-agent{background:var(--bg);border:1px solid var(--line);align-self:flex-start}.bubble.from-me{background:var(--navy);color:#fff;align-self:flex-end}.bubble.thinking{color:var(--muted);align-items:center;gap:8px;display:inline-flex}.bubble-link{color:var(--navy-light);align-items:center;gap:6px;margin-top:6px;font-size:14px;font-weight:600;display:flex}.composer{border:1px solid var(--border);background:#fff;border-radius:12px;align-items:flex-end;gap:8px;padding:8px;display:flex}.composer textarea{resize:none;font:inherit;background:0 0;border:0;outline:none;flex:1;min-height:44px;max-height:200px;font-size:15px}.icon-btn.on{background:var(--danger);border-color:var(--danger);color:#fff}.md p{margin:0 0 6px}.md p:last-child{margin-bottom:0}.md .md-h{font-weight:800}.md ul,.md ol{margin:0 0 6px;padding-left:20px}.md code{background:#eceef2;border-radius:4px;padding:1px 4px;font-family:ui-monospace,Consolas,monospace;font-size:13px}.md-table{margin:4px 0 8px;overflow-x:auto}.md-table table{border-collapse:collapse;background:#fff;font-size:13.5px}.md-table th,.md-table td{border:1px solid var(--line);text-align:left;padding:5px 8px}.md-table th{background:#f3f5f9;font-weight:700}@media (width<=900px){.copilot{grid-template-columns:1fr}.copilot-agents{position:static}}.week{grid-template-columns:repeat(5,minmax(0,1fr)) repeat(2,minmax(0,.7fr));align-items:start;gap:10px;display:grid}.weekday{border:1px solid var(--border);background:#fff;border-radius:12px;flex-direction:column;gap:8px;min-height:120px;padding:10px;display:flex}.weekday.weekend{background:#fafbfd}.weekday.today{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold-light)}.weekday-head{color:var(--navy);align-items:baseline;gap:6px;display:flex}.weekday-head span{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:12px;font-weight:800}.weekday-head b{font-size:20px}.event{border-left:4px solid var(--gold);background:var(--bg);border-radius:8px;flex-direction:column;gap:2px;padding:7px 9px;display:flex}.event-when{color:var(--navy);font-size:12px;font-weight:700}.event-subject{font-size:14px;font-weight:600;line-height:1.3}.event-loc{color:var(--muted);align-items:center;gap:4px;font-size:12px;display:flex}@media (width<=1100px){.week{grid-template-columns:1fr}.weekday{min-height:0}}.rq-backdrop{z-index:50;background:#0b234147;justify-content:flex-end;display:flex;position:fixed;inset:0}.rq-panel{box-sizing:border-box;background:#fff;width:min(750px,100%);height:100%;padding:22px;overflow-y:auto;box-shadow:-12px 0 32px #0b234133}.rq-when{gap:4px;display:grid}.rq-when .row .pinput[type=date]{flex:1;min-width:0}.rq-when .row .pinput[type=time]{width:130px}.rq-panel{overflow-x:hidden}.rq-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.rq-grid .pinput{box-sizing:border-box;width:100%}.rq-grid>*{min-width:0}.rq-grid label.psub{flex-direction:column;gap:4px;display:flex}.rq-sec{border:1px solid var(--border);background:#fff;border-radius:12px;padding:0 14px}.rq-sec[open]{padding-bottom:12px}.rq-sec>summary{cursor:pointer;justify-content:space-between;gap:10px;padding:12px 0;font-size:14px;font-weight:700;list-style:none;display:flex}.rq-sec>summary span{color:var(--muted);text-align:right;font-size:12.5px;font-weight:500}.rq-sec>summary:after{content:"▾";color:var(--muted)}.rq-sec[open]>summary:after{content:"▴"}.rq-sec>:not(summary){margin-top:8px}.rq-q{justify-content:space-between;align-items:center;gap:10px;padding:4px 0;font-size:14px;display:flex}.yn{border:1px solid var(--border);border-radius:9px;flex:none;display:inline-flex;overflow:hidden}.yn button{font:inherit;cursor:pointer;color:var(--navy);background:#fff;border:0;padding:6px 14px;font-size:13px;font-weight:700}.yn button.on{background:var(--navy);color:#fff}.rq-qty{justify-content:space-between;align-items:center;gap:8px;font-size:13.5px;display:flex}.rq-qty .pinput{width:72px!important}.filter.small{min-height:30px;padding:0 10px;font-size:12.5px}.week-top{grid-auto-flow:dense;gap:4px 10px}.topbar{border-radius:7px;min-width:0;padding:5px 9px;box-shadow:0 1px 2px #0b23411f}.topbar-when{opacity:.9;white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:700;overflow:hidden}.topbar-title{text-transform:uppercase;letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:800;overflow:hidden}.week-head .weekday-head{padding:0 4px}.week-head .weekday-head.today b{color:var(--gold-text)}.weekday-head.in-card,.day-top{display:none}@media (width<=1100px){.week-top,.week-head{display:none}.day-top{display:block}.weekday-head.in-card{display:flex}}.event.draft{border:1.5px dashed var(--navy-light);border-left:4px solid var(--navy-light);background:#fff}.btn.emergency{border-color:var(--danger);color:var(--danger-text)}.btn.emergency:hover{background:var(--danger-light)}.btn.icon-only{justify-content:center;width:42px;padding:0}.chip.diverse{color:#0e6b5c;cursor:help;background:#e2f3ef}.pnotice{border-radius:10px;padding:12px 14px;font-size:14px;font-weight:600}.pnotice.ok{background:var(--success-light);color:var(--success)}.pnotice.bad{background:var(--danger-light);color:var(--danger-text)}.pprimary{background:var(--navy);color:#fff;cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:52px;margin-top:12px;font-size:16px;font-weight:700;display:flex}.pprimary:disabled{opacity:.6}.tabs{border-top:1px solid var(--line);flex-wrap:wrap;gap:24px;margin-top:16px;display:flex}.tab{color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:14px 2px;font-size:14px;font-weight:700}.tab:hover{color:var(--navy)}.tab[aria-selected=true]{color:var(--navy);border-bottom-color:var(--gold)}.tile{border:1px solid var(--border);border-radius:var(--radius);color:var(--text);background:#fff;align-items:center;gap:16px;min-height:84px;padding:18px 20px;text-decoration:none;display:flex}.tile:hover{border-color:var(--navy);color:var(--text);box-shadow:0 4px 14px #0b23411a}.tile.off{opacity:.65;pointer-events:none}.tile-logo{background-color:currentColor;width:30px;height:30px;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.tile-icon{background:var(--gold-light);width:48px;height:48px;color:var(--navy);border-radius:12px;flex:none;justify-content:center;align-items:center;display:flex}.period{border-top:1px solid var(--line);border-radius:10px;align-items:center;gap:12px;margin:0 -12px;padding:10px 12px;display:flex}.period:first-child{border-top:0}.period.now{background:var(--gold-light);border-top-color:#0000}.period.cancelled{opacity:.55}.period-name{width:72px;color:var(--navy-light);flex:none;font-size:13px;font-weight:800}.roster{grid-template-columns:repeat(auto-fill,minmax(min(200px,100%),1fr));gap:12px;display:grid}.stu{text-align:left;border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:12px;align-items:center;gap:10px;min-height:64px;padding:12px;display:flex}.stu[aria-pressed=true]{border:2px solid var(--navy);background:#eef2f8;padding:11px}.stu[aria-pressed=true] .avatar{background:var(--navy)}.filter{cursor:pointer;background:#fff;border:1px solid #cbd3e1;border-radius:999px;min-height:36px;padding:0 14px;font-size:13px;font-weight:600}.filter[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:#fff}.kinds{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.kind{text-align:left;border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:12px;flex-direction:column;gap:2px;min-height:70px;padding:12px;display:flex}.kind[aria-checked=true]{border:2px solid var(--navy);background:var(--gold-light);padding:11px}.kind b{font-size:14px}.field{flex-direction:column;gap:6px;font-size:13px;font-weight:700;display:flex}.field select,.field input,.field textarea{background:#fff;border:1px solid #cbd3e1;border-radius:10px;width:100%;min-height:44px;padding:10px 12px;font-size:14px;font-weight:500}.field textarea{resize:vertical}.two{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.check{cursor:pointer;align-items:center;gap:10px;min-height:36px;font-weight:600;display:flex}.check input{width:18px;height:18px;accent-color:var(--navy)}dialog{border:0;border-radius:16px;width:min(520px,100vw - 32px);padding:0;box-shadow:0 24px 60px #0b23414d}dialog::backdrop{background:#0b234173}.skel{background:linear-gradient(90deg,#eceff4 25%,#f6f7fa 50%,#eceff4 75%) 0 0/200% 100%;border-radius:8px;animation:1.2s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skel{animation:none}}.signin{color:#fff;text-align:center;background:#000;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:100vh;padding:24px;display:flex}.signin img{width:120px;height:128px}.signin h1{margin:8px 0 0;font-size:30px;font-weight:800}.signin p{color:var(--gold-light);margin:0}.bar-row{width:100%;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;margin:0 -6px;padding:4px 6px;font-family:inherit;font-size:13px;display:flex}.bar-row:hover{background:var(--bg)}.bar-track{background:var(--line);border-radius:4px;flex:1;height:14px;overflow:hidden}.bar-fill{background:var(--navy-light);border-radius:4px;height:100%;display:block}button.kpi-link:disabled{opacity:1}.input{min-height:38px;color:var(--text);background:#fff;border:1px solid #cbd3e1;border-radius:10px;padding:8px 12px;font-family:inherit;font-size:14px}.save-bar{z-index:40;background:var(--navy);color:#fff;box-sizing:border-box;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;width:min(460px,100vw - 32px);padding:10px 12px 10px 18px;display:flex;position:fixed;bottom:16px;right:24px;box-shadow:0 12px 32px #0b23414d}@media (width<=700px){.save-bar{width:auto;left:16px;right:16px}}.chip.support{color:#0e6b5c;background:#e2f3ef}.support-line{color:#0e6b5c;background:#f2faf7;border:1px solid #cde9df;border-radius:12px;align-items:center;gap:10px;margin-top:10px;padding:8px 14px 8px 10px;display:inline-flex}.flabel{text-transform:uppercase;width:72px;color:var(--muted);flex:none;font-size:13px;font-weight:700}.sport-head{align-items:center;gap:10px;margin:14px 0 2px;display:flex}.sport-icon{background:var(--info-light);border-radius:8px;flex:none;place-items:center;width:30px;height:30px;font-size:16px;display:grid}.sport-line{border-radius:2px;flex:1;height:2px}.sport-dot{border-radius:4px;flex:none;width:8px;height:8px;display:inline-block}.sport-more{z-index:20;border:1px solid var(--border);background:#fff;border-radius:12px;flex-wrap:wrap;gap:8px;width:min(460px,100vw - 48px);padding:12px;display:flex;position:absolute;top:calc(100% + 6px);left:80px;box-shadow:0 12px 32px #0b234129}.fx-row{border:0;border-top:1px solid var(--line);text-align:left;width:calc(100% + 24px);font:inherit;color:inherit;cursor:pointer;background:0 0;border-radius:10px;align-items:center;gap:12px;margin:0 -12px;padding:10px 12px;display:flex}.fx-row:hover{background:var(--bg)}.fx-row.open{background:var(--gold-light);border-top-color:#0000}.fx-row.cancelled{opacity:.6}.fx-row .period-name small{color:var(--muted);font-size:11.5px;font-weight:600;display:block}.fx-detail{background:#fff;border:1px solid #efe4c6;border-radius:10px;grid-template-columns:90px 1fr;gap:6px 12px;margin:4px 0 8px 84px;padding:10px 12px;font-size:13px;display:grid}@media (width<=700px){.fx-detail{margin-left:0}.flabel{width:100%}}.subtabs{flex-flow:wrap;gap:6px;padding:6px;display:flex}.subtab{color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:10px;flex-direction:column;align-items:flex-start;gap:1px;padding:9px 16px;display:inline-flex}.subtab b{font-size:14px}.subtab span{color:var(--muted);font-size:11.5px}.subtab:hover{background:#f3f5f9}.subtab.on{background:var(--navy);color:#fff}.subtab.on span{color:#c8d3e6}.subtab:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
