*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (width>=640px){.container{max-width:640px}}@media (width>=768px){.container{max-width:768px}}@media (width>=1024px){.container{max-width:1024px}}@media (width>=1280px){.container{max-width:1280px}}@media (width>=1536px){.container{max-width:1536px}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.visible{visibility:visible}.fixed{position:fixed}.block{display:block}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.h-1{height:.25rem}.border{border-width:1px}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}*{box-sizing:border-box}body{color:#102f5c;background:#f8fbff;min-width:320px;margin:0;font-family:Inter,Noto Sans TC,system-ui,sans-serif}button,input{font:inherit}button{cursor:pointer}:root{--action-blue:#0875e1;--action-blue-dark:#065eb5;--action-blue-pale:#edf6ff;--action-border:#9fc4e8;--action-text:#16466f;--action-warning:#9a5d00;--action-warning-pale:#fff4df}body button.primary,body button.app-action{width:auto;min-height:44px;font:inherit;text-align:center;cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;padding:10px 15px;font-weight:800;line-height:1.25;text-decoration:none;transition:background .12s,border-color .12s,box-shadow .12s,transform .12s;display:inline-flex}body button.primary,body button.app-action--primary{color:#fff;border-color:var(--action-blue-dark);background:var(--action-blue);box-shadow:0 2px #02468b33}body button.app-action--secondary{color:var(--action-blue-dark);border-color:var(--action-border);background:#fff}body button.app-action--warning{color:var(--action-warning);background:var(--action-warning-pale);border-color:#db9c37}body button.app-action--quiet{color:#466985;background:#f8fbff;border-color:#d0e0ee}body button.primary:hover:not(:disabled),body button.app-action:hover:not(:disabled){transform:translateY(-1px)}body button.primary:hover:not(:disabled),body button.app-action--primary:hover:not(:disabled){background:var(--action-blue-dark)}body button.app-action--secondary:hover:not(:disabled),body button.app-action--quiet:hover:not(:disabled){border-color:var(--action-blue);background:var(--action-blue-pale)}body button.app-action--warning:hover:not(:disabled){border-color:var(--action-warning);background:#ffebc3}body button.primary:focus-visible,body button.app-action:focus-visible{outline-offset:3px;outline:3px solid #ffca28}body button.primary:disabled,body button.app-action:disabled{cursor:not-allowed;opacity:.5;box-shadow:none;transform:none}.app-action-group{flex-wrap:wrap;align-items:center;gap:9px;display:flex}@media (width<=640px){.app-action-group{grid-template-columns:1fr;display:grid}.app-action-group>button,body button.app-action--mobile-block{width:100%}}.teacher-entry{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);align-items:stretch;gap:26px;max-width:1040px;margin:6px auto;display:grid}.registration-completion-state{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.registration-complete-badge{color:#166534;white-space:nowrap;background:#dcfce7;border-radius:99px;padding:7px 12px;font-weight:800;display:inline-block}.registration-celebration{z-index:80;pointer-events:none;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.registration-celebration>p{z-index:1;color:#14532d;background:#f0fdf4;border:1px solid #a7d9b7;border-radius:18px;margin:0 16px;padding:22px 30px;font-size:clamp(1.4rem,5vw,2rem);font-weight:800;box-shadow:0 12px 44px #14532d24}.registration-celebration>div{position:absolute;inset:0}.registration-celebration i{width:8px;height:14px;animation:2.2s ease-out both registration-confetti;animation-delay:var(--confetti-delay);background:#38bdf8;border-radius:2px;position:absolute;top:42%;left:50%}.registration-celebration i:nth-child(3n){background:#fbbf24}.registration-celebration i:nth-child(3n+1){background:#34d399}@keyframes registration-confetti{0%{opacity:0;transform:translateY(-30px)rotate(0)}15%{opacity:1}to{opacity:0;transform:translate(var(--confetti-x), 260px) rotate(var(--confetti-turn))}}@media (prefers-reduced-motion:reduce){.registration-celebration i{animation:none;display:none}}.teacher-entry-guide{color:#fff;background:linear-gradient(145deg,#0c4f94,#0875e1);border-radius:16px;padding:34px;box-shadow:0 12px 28px #08498e2e}.teacher-entry-kicker{background:#ffffff2e;border-radius:99px;margin:0 0 14px;padding:6px 10px;font-size:.9rem;font-weight:800;display:inline-block}.teacher-entry-guide h1{color:#fff;margin:0;font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.35}.teacher-entry-guide>p:not(.teacher-entry-kicker):not(.teacher-entry-note){color:#e6f2ff;margin:14px 0 0;line-height:1.7}.teacher-entry-steps{counter-reset:entry-step;gap:10px;margin:25px 0;padding:0;list-style:none;display:grid}.teacher-entry-steps li{-moz-column-gap:10px;grid-template-columns:34px 1fr;align-items:center;column-gap:10px;display:grid}.teacher-entry-steps li:before{content:counter(entry-step);counter-increment:entry-step;color:#075294;background:#fff;border-radius:50%;grid-row:span 2;place-items:center;width:30px;height:30px;font-weight:900;display:grid}.teacher-entry-steps b{font-size:1rem}.teacher-entry-steps span,.teacher-entry-note{color:#d7ebff;font-size:.92rem}.teacher-entry-note{border-top:1px solid #ffffff47;margin:0;padding-top:16px;line-height:1.55}.teacher-entry-card{background:#fff;border:1px solid #cde0f4;border-radius:16px;align-content:start;gap:16px;padding:28px;display:grid;box-shadow:0 8px 24px #2251801a}.teacher-entry-card-title{align-items:center;gap:12px;margin-bottom:2px;display:flex}.teacher-entry-card-title>span{color:#fff;background:#0875e1;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-size:1.15rem;font-weight:900;display:grid}.teacher-entry-card h2,.teacher-entry-card-title p{margin:0}.teacher-entry-card h2{color:#173f70;font-size:1.35rem}.teacher-entry-card-title p,.teacher-entry-help{color:#647993;font-size:.92rem}.teacher-entry-field{color:#1c426f;gap:7px;display:grid}.teacher-entry-field span{font-weight:800}.teacher-entry-field span b{color:#0875e1;background:#e8f3ff;border-radius:4px;margin-right:4px;padding:2px 5px;font-size:.78rem;display:inline-block}.teacher-entry-field select,.teacher-entry-field input{box-sizing:border-box;color:#173f70;width:100%;min-height:48px;font:inherit;background:#fff;border:2px solid #b9d2ec;border-radius:9px;padding:10px 12px}.teacher-entry-field select:focus,.teacher-entry-field input:focus{outline-offset:1px;border-color:#0875e1;outline:3px solid #ffcd3c}.teacher-entry-field select:disabled{cursor:not-allowed;color:#8799ad;background:#f2f6fa}.teacher-entry-submit{color:#fff;width:100%;min-height:52px;font:inherit;cursor:pointer;background:#0875e1;border:1px solid #0767c5;border-radius:9px;font-weight:900;box-shadow:0 3px #02468b33}.teacher-entry-submit:hover:not(:disabled){background:#0568c7;transform:translateY(-1px)}.teacher-entry-submit:focus-visible,.teacher-entry-admin:focus-visible{outline-offset:3px;outline:3px solid #ffca28}.teacher-entry-submit:disabled{cursor:not-allowed;opacity:.5}.teacher-entry-help{text-align:center;margin:-4px 0 0}.teacher-entry-retry{color:#075da9;font:inherit;cursor:pointer;background:0 0;border:0;justify-self:center;padding:6px 8px;font-weight:800;text-decoration:underline}.teacher-entry-retry:disabled{cursor:wait;opacity:.65}.teacher-entry-admin{color:#356790;font:inherit;cursor:pointer;background:0 0;border:0;justify-self:center;padding:6px 8px;font-weight:700;text-decoration:underline}@media (width<=800px){.teacher-entry{grid-template-columns:1fr;gap:16px}.teacher-entry-guide,.teacher-entry-card{border-radius:12px;padding:22px}.teacher-entry-guide h1{font-size:1.55rem}}.class-registration,.class-home{max-width:1240px;margin:0 auto}.registration-breadcrumb{color:#607797;align-items:center;gap:12px;margin:0 0 16px;font-size:.9rem;display:flex}.registration-breadcrumb button,.class-leave{color:#1d5d9b;font:inherit;background:0 0;border:0;padding:0;font-weight:800}.registration-event-layout{background:#fff;border:1px solid #d5e3f0;grid-template-columns:minmax(0,1fr) 290px;align-items:start;display:grid;box-shadow:0 10px 28px #143a6214}.registration-event-main{min-width:0;padding:30px}.registration-event-title{border-bottom:1px solid #dce8f5;margin:0 0 26px;padding-bottom:20px}.registration-event-title p,.class-home-header p{color:#5182af;letter-spacing:.04em;margin:0 0 7px;font-size:.88rem;font-weight:800}.registration-event-title h1,.class-home-header h1{color:#103967;margin:0;font-size:clamp(1.65rem,3.2vw,2.25rem)}.registration-event-title span,.class-home-header span{color:#617797;margin-top:9px;display:block}.event-section-tabs{border:1px solid #d5e3f0;border-radius:7px;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 16px;display:grid;overflow:hidden}.event-section-tabs button,.event-choice-grid button{color:#254b76;min-height:48px;font:inherit;cursor:pointer;background:#f8fbfe;border:0;font-weight:800}.event-section-tabs button+button{border-left:1px solid #d5e3f0}.event-section-tabs button.active{color:#fff;background:#16844d}.event-choice-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:0 0 28px;display:grid}.event-choice-grid button{background:#fff;border:1px solid #d5e3f0;border-radius:7px;place-items:center;gap:3px;min-height:66px;display:grid}.event-choice-grid button:hover{background:#f6fbff;border-color:#6b9fc9}.event-choice-grid button.active{color:#fff;background:#16844d;border-color:#16844d;box-shadow:0 3px 8px #10713e2e}.event-choice-grid small{color:#68819d;font-size:.8rem}.event-choice-grid button.active small{color:#ddf3e5}.roster-selection-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:15px;display:flex}.roster-selection-heading h2,.registration-summary h2,.class-event-confirmation h2,.registration-preview h2,.event-group h2{color:#173f70;margin:0;font-size:1.18rem}.roster-selection-heading p,.class-event-confirmation p,.registration-preview p{color:#617797;margin:5px 0 0;line-height:1.55}.roster-selection-heading>b{color:#173f70;white-space:nowrap;flex:none}.roster-selection-heading em{color:#e56924;font-size:1.25rem;font-style:normal}.student-tile-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.student-gender-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;min-width:0;display:grid}.student-gender-columns--single{grid-template-columns:minmax(0,1fr)}.student-gender-group{min-width:0}.student-gender-group h3{color:#173f70;margin:0 0 10px;font-size:1rem}.student-gender-group--review{grid-column:1/-1}.student-gender-group .student-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-gender-columns--single .student-tile-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr))}.substitute-picker{box-sizing:border-box;background:#f8fbff;border:1px solid #cbdcec;border-radius:8px;gap:8px;width:100%;min-width:0;margin:18px 0 0;padding:12px 14px;display:block}.substitute-picker legend{white-space:normal;word-break:keep-all;overflow-wrap:normal;width:auto;max-width:100%;padding:0 6px;font-weight:700;line-height:1.6}.substitute-picker>*+*{margin-top:10px}.substitute-picker>b{display:block}.substitute-picker label{align-items:center;gap:8px;display:flex}.team-roster-picker{gap:20px;display:grid}.team-quota-counts{color:#166534;flex-wrap:wrap;align-items:center;gap:12px 24px;padding:12px 0;display:flex}.team-quota-help{color:#92400e;margin:8px 0 16px;line-height:1.6}.team-substitute-picker p{margin:0;line-height:1.6}.team-substitute-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px 16px;display:grid}.student-gender-group .team-substitute-grid{grid-template-columns:minmax(0,1fr)}.team-substitute-grid label{overflow-wrap:anywhere;min-height:44px;padding:6px}.team-selection-summary{background:#f0fdf4;border-radius:12px;padding:12px 16px}.team-selection-summary p{margin:4px 0}.team-roster-picker .student-tile:disabled{cursor:not-allowed;opacity:.45}.team-roster-picker .student-tile--selected:disabled{opacity:.8}.repeated-team-slot-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:12px;display:grid}.repeated-team-slot{grid-template-columns:minmax(0,1fr) auto;gap:6px;min-width:0;display:grid}.repeated-team-slot>b{color:#173f70;grid-column:1/-1}.repeated-team-slot-choice{color:#173f70;text-align:left;overflow-wrap:anywhere;background:#fff;border:1px solid #cbdcec;border-radius:6px;gap:3px;min-width:0;min-height:48px;padding:8px;display:grid}.repeated-team-slot-choice small{color:#617797}.repeated-team-slot-clear{color:#173f70;background:#f8fbff;border:1px solid #cbdcec;border-radius:6px;padding:8px}.team-slot-chooser-backdrop{z-index:80;background:#0f233873;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.team-slot-chooser{box-sizing:border-box;background:#fff;border-radius:12px;width:min(850px,100%);max-height:85dvh;padding:20px;overflow-y:auto;box-shadow:0 12px 40px #0f233840}.team-slot-chooser header{justify-content:space-between;align-items:center;gap:12px;display:flex}.team-slot-chooser header h3{color:#173f70;margin:0}.team-slot-chooser header button{background:#f8fbff;border:1px solid #cbdcec;border-radius:6px;flex:0 0 44px;min-height:44px;font-size:1.4rem}.team-slot-chooser>p{color:#617797;line-height:1.6}.student-tile{color:#173f70;text-align:left;background:#fff;border:1px solid #d3e0ed;border-radius:6px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:54px;padding:10px;transition:border-color .16s,background .16s,box-shadow .16s;display:grid}.student-tile:hover{background:#f6fbff;border-color:#5e9bd3}.student-tile:focus-visible,.registration-action:focus-visible,.class-leave:focus-visible,.registration-breadcrumb button:focus-visible{outline-offset:3px;outline:3px solid #f5b73b}.student-tile span{color:#5e7793;font-variant-numeric:tabular-nums;font-size:.84rem}.student-tile b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-tile small{color:#68819d;font-size:.76rem}.student-tile--selected{color:#9a3e08;background:#fff8f1;border:2px solid #e77831;padding:9px;box-shadow:0 2px 8px #cf5c141f}.student-tile--selected small,.student-tile--selected span{color:#aa521d}.registration-summary{background:#f8fbfe;border-left:1px solid #dce8f5;min-height:100%;padding:28px 22px;position:sticky;top:16px}.registration-summary dl{gap:0;margin:20px 0;display:grid}.registration-summary dl div{border-top:1px solid #dce8f5;padding:12px 0}.registration-summary dt{color:#66809a;font-size:.78rem;font-weight:800}.registration-summary dd{color:#183e6a;margin:4px 0 0;font-weight:800;line-height:1.45}.summary-class-name{color:#66809a;margin:6px 0 18px;font-size:.88rem;font-weight:800}.summary-group{background:#fff;border:1px solid #e0eaf3;border-radius:8px;margin-top:14px;overflow:hidden}.summary-group h3{color:#173f70;background:#f3f8fc;margin:0;padding:10px 12px;font-size:.92rem}.summary-group ul{margin:0;padding:0;list-style:none}.summary-group li{color:#466787;border-top:1px solid #edf2f7;justify-content:space-between;align-items:center;gap:8px;min-height:44px;padding:7px 11px;font-size:.86rem;display:flex}.summary-group li.current{color:#126e3b;background:#effaf3}.summary-group li span{min-width:0}.summary-group li small{color:#7890a7;margin-top:2px;font-size:.72rem;display:block}.summary-group li b{color:#1f5c94;flex:none;font-size:.8rem}.summary-group li.current b{color:#16844d}.summary-selection,.summary-class-status,.class-event-confirmation{background:#f2fbf5;border:1px solid #c9dfd3;padding:16px}.summary-selection h3{color:#1b6840;justify-content:space-between;margin:0;font-size:.95rem;display:flex}.summary-selection h3 b{color:#e05e1a}.summary-selection p,.summary-selection ul{color:#527061;margin:10px 0 0;font-size:.9rem}.summary-selection ul{gap:6px;padding-left:18px;display:grid}.summary-class-status{color:#276342;margin:0;line-height:1.65}.class-event-confirmation{border-color:#c9dfd3;max-width:640px}.class-event-confirmation h2{color:#1b6840}.registration-preview{background:#fffaf2;border:1px solid #f0cfa4;justify-content:space-between;align-items:center;gap:18px;margin-top:18px;padding:18px 20px;display:flex}.registration-preview--full{grid-template-columns:minmax(220px,.7fr) minmax(0,1.5fr) auto;align-items:start;display:grid}.registration-preview-list{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;display:grid}.registration-preview-list section{background:#fff;border:1px solid #ead8bc}.registration-preview-list h3{color:#7d5524;background:#fff4e4;margin:0;padding:8px 10px;font-size:.86rem}.registration-preview-list article{border-top:1px solid #f3e7d6;gap:3px;padding:8px 10px;display:grid}.registration-preview-list article.current{background:#effaf3}.registration-preview-list article b{color:#234d78;font-size:.88rem}.registration-preview-list article.current b{color:#126e3b}.registration-preview-list article span{color:#617797;font-size:.82rem;line-height:1.45}.registration-preview>div:last-child,.class-home-header>div:last-child{flex-wrap:wrap;gap:9px;display:flex}.registration-action{min-height:42px;font:inherit;border:1px solid #0000;border-radius:6px;padding:10px 14px;font-weight:800}.registration-action--primary{color:#fff;background:#16844d;border-color:#137b48}.registration-action--primary:hover:not(:disabled){background:#0f713e}.registration-action--primary:disabled{cursor:not-allowed;opacity:.58}.registration-action--secondary{color:#1d5d9b;background:#fff;border-color:#9bbbd8}.registration-action-bar{background:#fffffff5;border:1px solid #d5e3f0;justify-content:flex-end;align-items:center;gap:18px;margin-top:18px;padding:14px 18px;display:flex;position:sticky;bottom:0;box-shadow:0 -4px 18px #143a6212}.registration-action-bar span{color:#355878;font-weight:800}.class-home-header{justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px;display:flex}.class-home-header span b{color:#e56924}.event-group-list{gap:18px;display:grid}.event-group{background:#fff;border:1px solid #d5e3f0}.event-group h2{background:#f5f9fc;border-bottom:1px solid #dce8f5;padding:14px 18px}.event-group>div{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.event-group article{border-bottom:1px solid #dce8f5;border-right:1px solid #dce8f5;justify-content:space-between;align-items:center;gap:12px;min-height:92px;padding:16px 18px;display:flex}.event-group article:nth-child(2n){border-right:0}.event-group article:nth-last-child(-n+2){border-bottom:0}.event-group h3{color:#183e6a;margin:0;font-size:1rem}.event-group p{color:#66809a;margin:6px 0 0;font-size:.88rem}@media (width<=920px){.registration-event-layout{grid-template-columns:1fr}.registration-summary{border-top:1px solid #dce8f5;border-left:0;min-height:auto;position:static}.registration-summary dl{grid-template-columns:repeat(3,1fr);gap:10px}.registration-summary dl div{border-top:0}}@media (width<=720px){.registration-event-main{padding:20px 16px}.student-gender-columns{grid-template-columns:minmax(0,1fr);gap:20px}.student-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.student-tile{grid-template-columns:26px minmax(0,1fr);min-height:50px;padding:9px}.student-tile small{display:none}.registration-summary{padding:20px 16px}.event-section-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.event-section-tabs button:nth-child(odd){border-left:0}.event-section-tabs button:nth-child(n+3){border-top:1px solid #d5e3f0}.registration-summary dl{grid-template-columns:1fr;gap:0}.registration-summary dl div{border-top:1px solid #dce8f5}.registration-preview,.class-home-header{align-items:stretch;display:grid}.registration-preview--full{grid-template-columns:1fr}.registration-preview>div:last-child,.class-home-header>div:last-child{grid-template-columns:1fr;display:grid}.registration-action-bar{justify-content:space-between;padding:11px 12px}.event-group>div{grid-template-columns:1fr}.event-group article,.event-group article:nth-child(2n){border-bottom:1px solid #dce8f5;border-right:0}.event-group article:last-child{border-bottom:0}}.preview-team{gap:6px;min-width:0;display:grid}.preview-team strong{color:#234d78;font-size:.82rem}.preview-team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 8px;margin:0;padding:0;list-style:none;display:grid}.preview-team-grid li{border-bottom:1px solid #edf1f5;align-items:baseline;gap:6px;min-width:0;display:flex}.preview-team-grid li span{flex:none}.preview-team-grid li b{overflow-wrap:anywhere}@media (width<=420px){.preview-team-grid{grid-template-columns:1fr}}.school-export-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.school-export-heading h2{margin:0}.school-export-heading button{gap:6px;font-size:13px}.school-export-summary{background:#edf6ff;border:1px solid #c3d5e6;border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:10px;padding:10px 12px;display:flex}.school-export-summary b{color:#0756a5;font-size:20px}.school-export-summary small{color:#47627b}.school-export-panel .school-export-completion{color:#47627b;margin:6px 0;font-size:14px}.school-export-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0;display:grid}.school-export-panel .school-export-actions button{gap:8px;width:100%;min-height:48px;font-size:16px}.school-export-selection{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:12px;display:flex}.school-export-selection button{font-size:13px}.school-export-selected{flex-wrap:wrap;align-items:center;gap:4px;min-height:24px;margin:6px 0;display:flex}.school-export-selected>span{color:#24517c;background:#eaf3fd;border-radius:12px;padding:3px 8px;font-size:12px}.school-export-grades{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:10px;display:grid}.school-export-grade{background:#fbfdff;border:1px solid #c3d5e6;border-radius:8px;min-width:0}.school-export-grade>summary{cursor:pointer;min-height:44px;padding:12px;font-weight:750}.school-export-grade>summary small{color:#47627b;margin-left:5px;font-weight:500;display:inline-block}.school-export-panel fieldset{border:0;min-width:0;margin:0;padding:8px}.school-export-panel fieldset button{min-height:40px;padding:6px;font-size:12px}.school-export-choices{gap:6px;margin-top:8px;display:grid}.school-export-choices label{cursor:pointer;background:#fff;border:1px solid #dce6f0;border-radius:6px;align-items:flex-start;gap:8px;min-height:48px;padding:8px;display:flex}.school-export-choices input{flex:none;width:20px;height:20px;margin-top:2px}.school-export-choices small{overflow-wrap:anywhere;color:#47627b;margin-top:3px;font-size:12px;display:block}.school-export-status{margin-top:8px;font-size:13px}.school-export-status summary{cursor:pointer;color:#47627b;min-height:28px}.school-export-panel p[role=alert],.school-export-panel .warning{overflow-wrap:anywhere;margin:8px 0;font-size:14px}@media (width<=640px){.school-export-grades{grid-template-columns:minmax(0,1fr)}.school-export-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.school-export-actions>button:last-child{grid-column:1/-1}.school-export-panel .school-export-actions button{padding:10px 6px;font-size:14px}.school-export-heading button{font-size:12px}.school-export-summary{gap:6px 14px}.school-export-selection .app-action-group{display:flex}}.class-rule-panel{--rule-border:#d5e2ef;--rule-muted:#47627b;min-width:0;padding:16px}.class-rule-heading h2{margin-bottom:4px}.class-rule-heading p{color:var(--rule-muted);margin:0 0 10px;font-size:13px}.class-rule-view-tabs{border-bottom:1px solid var(--rule-border);flex-wrap:wrap;gap:6px;margin-bottom:12px;padding-bottom:8px;display:flex}.class-rule-panel button{color:#075fac;cursor:pointer;background:#fff;border:1px solid #c3d5e6;border-radius:6px;min-height:38px;padding:6px 9px;font-size:13px;font-weight:700}.class-rule-panel button:disabled{opacity:.5;cursor:not-allowed}.class-rule-view-tabs button.active{background:#eaf5ff;border-color:#2777c4}.class-rule-selection{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.class-rule-picker{border:1px solid var(--rule-border);background:#f8fbff;border-radius:8px;min-width:0;padding:10px}.class-rule-step-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;margin-bottom:6px;display:flex}.class-rule-step-heading h3{margin:0;font-size:15px}.class-rule-step-heading small{color:var(--rule-muted);font-size:12px}.class-rule-selected{scrollbar-width:thin;height:26px;margin:5px 0;overflow:auto}.class-rule-tags{flex-wrap:wrap;gap:4px;font-size:12px;display:flex}.class-rule-tags span{color:#24517c;background:#eaf3fd;border-radius:4px;padding:3px 6px}.class-rule-picker-tools{flex-wrap:wrap;align-items:center;gap:6px;margin:6px 0;display:flex}.class-rule-picker-tools input{flex:130px}.class-rule-picker-tools select{flex:0 110px}.class-rule-panel select,.class-rule-panel input[type=search]{min-width:0;max-width:100%;font:inherit;background:#fff;border:1px solid #b8d3f1;border-radius:6px;min-height:38px;padding:7px 8px;font-size:13px}.class-rule-picker-list{overscroll-behavior:contain;scrollbar-width:thin;height:126px;overflow:auto}.class-rule-panel summary{cursor:pointer;overflow-wrap:anywhere;min-height:30px;padding:6px 0;font-size:13px;font-weight:700}.class-rule-panel fieldset{border:0;min-width:0;margin:0;padding:0}.class-rule-category+.class-rule-category,.class-rule-grade+.class-rule-grade{border-top:1px solid var(--rule-border)}.class-rule-event-choices{display:grid}.class-rule-choices{grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:2px;display:grid}.class-rule-choices label,.class-rule-event-choices label{cursor:pointer;overflow-wrap:anywhere;align-items:center;gap:6px;min-height:36px;padding:3px 1px;font-size:13px;display:flex}.class-rule-panel input[type=checkbox]{flex:none;width:18px;height:18px}.class-rule-grade-tools{flex-wrap:wrap;gap:6px;display:flex}.class-rule-settings{border-top:1px solid var(--rule-border);min-width:0;margin-top:12px;padding-top:10px}.class-rule-quick{flex-wrap:wrap;align-items:center;gap:6px;margin:8px 0;font-size:12px;display:flex}.class-rule-table-scroll{overscroll-behavior:contain;scrollbar-width:thin;border-top:1px solid var(--rule-border);min-width:0;max-height:430px;overflow:auto}.class-rule-table{border-collapse:collapse;table-layout:fixed;text-align:left;width:100%;font-size:12px}.class-rule-table th,.class-rule-table td{border-bottom:1px solid var(--rule-border);vertical-align:top;overflow-wrap:anywhere;padding:8px}.class-rule-table thead th{z-index:1;color:#24517c;background:#edf6ff;font-size:12px;position:sticky;top:0}.class-rule-table th:first-child{width:16%}.class-rule-table td select{width:100%;font-size:12px}.class-rule-table small{color:var(--rule-muted);margin-top:4px;font-size:11px;display:block}.class-rule-table p{margin:4px 0}.class-rule-table td strong{font-size:12px;display:block}.class-rule-table td details[open]{scrollbar-width:thin;max-height:180px;overflow:auto}.class-rule-table td button{min-height:32px;margin:2px 3px 2px 0;padding:4px 6px;font-size:12px}.class-rule-filters{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:10px;display:grid}.class-rule-filters label{gap:4px;min-width:0;font-size:13px;display:grid}.class-rule-filters .class-rule-check{grid-column:1/-1;align-items:center;gap:6px;display:flex}.class-rule-review{margin:8px 0;font-size:13px}.class-rule-note{color:var(--rule-muted);overflow-wrap:anywhere;margin:4px 0;font-size:12px}.class-rule-warning{background:#edf6ff;border-left:3px solid #2777c4;margin:8px 0;padding:8px;font-size:13px}.class-rule-actions{z-index:3;border-top:1px solid var(--rule-border);background:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-top:10px;padding:10px 0 2px;display:flex;position:sticky;bottom:8px;box-shadow:0 -4px 10px #ffffffd9}.class-rule-actions>div:first-child{min-width:0;font-size:13px}.class-rule-actions .app-action-group{gap:8px}.class-rule-message{color:#17497f;overflow-wrap:anywhere;width:100%;margin:0;font-size:13px}.class-rule-actions>small{width:100%;color:var(--rule-muted);font-size:12px}@media (width<=800px){.class-rule-actions{bottom:76px}}@media (width<=760px){.class-rule-panel{padding:12px}.class-rule-selection,.class-rule-filters{grid-template-columns:minmax(0,1fr);gap:10px}.class-rule-picker-list{height:145px}.class-rule-panel button{min-height:44px}.class-rule-table thead{display:none}.class-rule-table,.class-rule-table tbody,.class-rule-table tr,.class-rule-table th,.class-rule-table td{width:100%;display:block}.class-rule-table tr{border:1px solid var(--rule-border);border-radius:6px;margin:8px 0;padding:4px}.class-rule-table th,.class-rule-table td{border:0;padding:6px;font-size:13px}.class-rule-table th:first-child{width:100%}.class-rule-table [data-label]:before{content:attr(data-label);color:var(--rule-muted);margin-bottom:3px;font-size:11px;font-weight:700;display:block}.class-rule-table-scroll{max-height:500px}.class-rule-actions .app-action-group{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.class-rule-actions .app-action-group button{width:100%;min-width:0;padding:8px}.class-rule-filters .class-rule-check{grid-column:auto}}.class-rule-selected{height:auto;min-height:26px;overflow:visible}.class-rule-picker-list,.class-rule-table-scroll{overscroll-behavior:auto;height:auto;max-height:none;overflow:visible}.class-rule-table td details[open]{max-height:none;overflow:visible}.class-rule-table thead th{position:static}.class-rule-panel button.app-action--primary{color:#fff;background:#075fac;border-color:#075fac}.class-rule-draft{color:#6d4a04;margin:6px 0;font-size:13px}.class-rule-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:10px;display:grid}.class-rule-event{border:1px solid var(--rule-border);background:#fff;border-radius:7px;min-width:0;padding:10px}.class-rule-event header{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.class-rule-event h4{margin:0;font-size:14px}.class-rule-event header span,.class-rule-event small{color:var(--rule-muted);font-size:12px}.class-rule-event-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0;display:grid}.class-rule-event-controls label{align-content:start;gap:4px;font-size:13px;display:grid}.class-rule-event-controls small{display:block}.class-rule-event-controls select{width:100%}.class-rule-event p{overflow-wrap:anywhere;font-size:12px}.participation-settings>label{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.participation-settings>p,.participation-event-picker>p{color:var(--rule-muted);font-size:13px}.participation-event-picker{margin-top:10px}.participation-event-picker>.class-rule-picker{margin-top:5px}@media (width<=760px){.class-rule-picker-list,.class-rule-table-scroll{height:auto;max-height:none}.class-rule-event-controls{grid-template-columns:1fr}.class-rule-actions{box-shadow:none;position:static}.class-rule-actions button{width:100%}}.competition-panel{gap:18px;display:grid}.student-import-workspace input[type=file]{width:100%;min-width:0}.admin-navigation h1{margin:0 0 14px}.admin-categories{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.admin-entries,.admin-subtabs{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.admin-subtabs{border-top:1px solid #d9e7f5;padding-top:12px}.admin-categories button,.admin-entries button,.admin-subtabs button{min-width:0;min-height:44px;font:inherit;color:#245780;cursor:pointer;overflow-wrap:anywhere;background:#fff;border:1px solid #a9c9e8;border-radius:8px;padding:10px 14px;font-weight:800;line-height:1.4}.admin-categories button.active{color:#fff;background:#0875e1;border-color:#0875e1}.admin-entries button.active,.admin-subtabs button.active{color:#075fac;background:#eaf5ff;border-color:#2777c4}.admin-categories button:focus-visible,.admin-entries button:focus-visible,.admin-subtabs button:focus-visible,.overview-registration summary:focus-visible,.overview-prepared summary:focus-visible{outline-offset:2px;outline:3px solid #ffca28}.admin-tabs{margin-bottom:0;padding-bottom:2px}.admin-tabs button{color:#355b83;min-height:42px}.admin-tabs button.active{color:#fff;background:#0875e1;border-color:#0875e1;box-shadow:0 2px #02468b2e}.admin-workspace{gap:17px;display:grid}.admin-notice{justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-notice>button{min-height:44px;color:inherit;background:0 0;border:0;border-radius:6px;flex:0 0 44px;font-size:24px}.admin-notice>button:focus-visible{outline-offset:2px;outline:3px solid #ffca28}.overview-counts{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.overview-counts p{color:#234f79;background:#eef7ff;border-radius:10px;margin:0;padding:16px}.overview-counts strong{margin-bottom:4px;font-size:28px;display:block}.overview-help{color:#4d6986;margin:0}.overview-classes{gap:10px;display:grid}.overview-class{border:1px solid #c9dcee;border-radius:10px;overflow:hidden}.overview-class summary{cursor:pointer;background:#f6faff;flex-wrap:wrap;align-items:center;gap:16px;padding:16px;display:flex}.overview-class summary small{color:#4d6986;margin-left:auto}.overview-class>p{margin:14px 16px}.overview-missing{color:#805815;line-height:1.6}.overview-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;margin:0;padding:0 16px 12px;list-style:none;display:grid}.overview-items li{border-top:1px solid #e2eaf2;justify-content:space-between;gap:12px;padding:11px 0;display:flex}.overview-items b{white-space:nowrap;color:#355b83}.overview-ratio{color:#355b83;align-items:center;gap:8px;font-size:.9rem;display:inline-flex}.overview-ratio progress{accent-color:#0875e1;width:72px;height:8px}.overview-registration{width:100%;min-width:0}.overview-registration summary{background:0 0;justify-content:space-between;min-height:44px;padding:0}.overview-students{background:#eef7ff;border-radius:8px;padding:12px}.overview-students p{margin:0 0 8px}.overview-students ul{margin:0;padding:0;list-style:none}.overview-students li{flex-wrap:wrap;justify-content:flex-start;align-items:baseline}.overview-students li b{white-space:normal;overflow-wrap:anywhere}.overview-students small{color:#805815}.overview-prepared{min-width:0}.overview-prepared>summary{cursor:pointer;color:#245780;padding:12px 0;font-weight:800}.overview-prepared .table>section>div{flex-wrap:wrap;gap:8px}.overview-preparation{border-top:1px solid #c9dcee;gap:12px;padding-top:16px;display:grid}.overview-preparation h3,.overview-preparation p{margin:0}.overview-preparation label{gap:7px;display:grid}.overview-preparation select{font:inherit;max-width:100%;min-height:44px;padding:10px}.overview-preparation>button{justify-self:start}.overview-preparation-preview{background:#f6faff;border-radius:10px;gap:12px;padding:16px;display:grid}@media (width<=680px){.admin-categories{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-entries button,.admin-subtabs button{flex:120px}.admin-portal,.admin-navigation,.admin-workspace{min-width:0}.class-code-grade-tabs button{flex:1;min-width:0}.overview-counts{gap:7px}.overview-counts p{padding:12px}.overview-items{grid-template-columns:1fr}.overview-class summary{gap:8px 14px}.overview-class summary small{flex-basis:100%;margin-left:0}}.admin-workspace h2,.admin-section-heading h2{margin:0}.admin-section-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.admin-section-heading p{color:#4d6986;max-width:680px;margin:7px 0 0;line-height:1.55}.admin-action-note{color:#77520e;background:#fff8e9;border-left:4px solid #d48b20;margin:-4px 0 0;padding:9px 12px;line-height:1.55}.import-class-summary{color:#234f79;background:#eef7ff;border-radius:8px;padding:10px 12px;line-height:1.55}.class-code-list{gap:9px;display:grid}.class-code-grade-tabs{border-bottom:1px solid #d9e7f5;gap:8px;padding-bottom:10px;display:flex}.class-code-grade-tabs button{color:#245780;min-width:96px;font:inherit;cursor:pointer;background:#fff;border:1px solid #a9c9e8;border-radius:8px;padding:9px 13px;font-weight:800}.class-code-grade-tabs button.active{color:#fff;background:#0875e1;border-color:#0875e1}.class-code-vault{background:#f5faff;border:1px solid #a9c9e8;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin:14px 0;padding:14px 16px;display:flex}.class-code-vault h3,.class-code-vault p{margin:0}.class-code-vault h3{color:#173f70}.class-code-vault p{color:#426786;margin-top:5px}.class-code-vault-form{flex-wrap:wrap;gap:8px;display:flex}.class-code-vault-form input{min-width:260px;min-height:42px;font:inherit;border:1px solid #8db8dd;border-radius:7px;padding:0 11px}.class-code-vault-missing{color:#8b5a00;margin:8px 0 0;font-weight:700}@media (width<=720px){.class-code-vault{flex-direction:column;align-items:stretch}.class-code-vault-form{flex-direction:column}.class-code-vault-form input{box-sizing:border-box;width:100%;min-width:0}}.class-code-row{background:#fff;border:1px solid #d8e6f4;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:14px 15px;display:flex}.class-code-row h3,.issued-code-panel h3{color:#173f70;margin:0;font-size:1.05rem}.class-code-status{border-radius:5px;margin-top:6px;padding:3px 7px;font-size:.86rem;font-weight:800;display:inline-block}.class-code-status.ready{color:#17713d;background:#e8f8ef}.class-code-status.missing{color:#8b5a00;background:#fff3d9}.class-code-visible{color:#164976;background:#eaf6ff;border-radius:7px;margin:9px 0 0;padding:8px 10px}.class-code-visible code{color:#073a69;letter-spacing:.06em;margin-left:6px;font-size:1.05rem;font-weight:900}.admin-empty-state{color:#426786;background:#f8fbff;border:1px dashed #a7c5e1;border-radius:10px;margin:0;padding:16px}.issued-code-panel{background:#edf7ff;border:1px solid #8ec0ef;border-radius:11px;justify-content:space-between;align-items:flex-start;gap:20px;padding:16px;display:flex}.issued-code-panel p{color:#315979;margin:7px 0 0}.issued-code-panel code{color:#0b4d85;font-weight:900}.admin-event-workspace>label{color:#294d72;gap:7px;max-width:510px;font-weight:800;display:grid}.admin-event-workspace>label select{color:#173f70;min-height:44px;font:inherit;background:#fff;border:1px solid #a8c8e6;border-radius:8px;padding:10px 12px}.registration-reset-workspace{max-width:720px}.registration-reset-warning{color:#7b3519;background:#fff3ec;border-left:4px solid #c55424;margin:0;padding:10px 13px;line-height:1.6}.registration-reset-field{color:#294d72;gap:7px;font-weight:800;display:grid}.registration-reset-field select,.registration-reset-field input{color:#173f70;min-height:44px;font:inherit;background:#fff;border:1px solid #a8c8e6;border-radius:8px;padding:10px 12px}.registration-reset-button{color:#fff;min-height:44px;font:inherit;background:#bd451e;border:1px solid #ad3b17;border-radius:7px;justify-self:start;padding:10px 14px;font-weight:900}.registration-reset-button:disabled{cursor:not-allowed;opacity:.5}.registration-clear-actions{flex-wrap:wrap;gap:12px;display:flex}.registration-clear-actions button{min-height:44px;padding:10px 14px}.registration-clear-backdrop{z-index:100;background:#13283c99;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.registration-clear-dialog{box-sizing:border-box;background:#fff;border-radius:12px;gap:16px;width:min(100%,620px);max-height:calc(100dvh - 32px);padding:24px;display:grid;overflow-y:auto}.registration-clear-dialog h2,.registration-clear-dialog p{overflow-wrap:anywhere;margin:0}.registration-clear-counts{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:0;display:grid}.registration-clear-counts div{background:#f0f5fa;border-radius:8px;padding:12px}.registration-clear-counts dd{margin:6px 0 0;font-weight:800}.competition-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.competition-heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.competition-heading h2,.competition-row h3{margin:0}.competition-heading p,.competition-row p,.competition-setup p{color:#46617f;margin:7px 0 0;line-height:1.55}.competition-add,.competition-confirm,.competition-check,.competition-edit,.competition-pause,.competition-restore,.competition-delete{appearance:none;min-height:42px;font:inherit;cursor:pointer;border-radius:9px;padding:9px 15px;font-weight:800;transition:transform .12s,box-shadow .12s,background .12s}.competition-add,.competition-confirm{color:#fff;background:#0875e1;border:1px solid #0767c5;box-shadow:0 2px #02468b33}.competition-add:hover,.competition-confirm:hover,.competition-edit:hover,.competition-pause:hover,.competition-restore:hover,.competition-check:hover,.competition-delete:hover{transform:translateY(-1px)}.competition-add:focus-visible,.competition-confirm:focus-visible,.competition-check:focus-visible,.competition-edit:focus-visible,.competition-pause:focus-visible,.competition-restore:focus-visible{outline-offset:3px;outline:3px solid #ffca28}.competition-delete:focus-visible{outline-offset:2px;outline:3px solid #f5bd72}.competition-add:disabled,.competition-confirm:disabled,.competition-check:disabled,.competition-edit:disabled,.competition-pause:disabled,.competition-restore:disabled{cursor:not-allowed;opacity:.55;transform:none}.competition-delete:disabled{opacity:.55;cursor:not-allowed}.competition-empty{color:#745b00;background:#fff7d5;border-radius:10px;margin:0;padding:13px 15px}.competition-list{gap:10px;display:grid}.competition-row{background:#fff;border:1px solid #d7e5f4;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:15px;display:flex}.competition-row h3{color:#133b6d;font-size:1.05rem}.competition-row small{color:#60758e;margin-top:6px;display:block}.competition-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.championship-controls{background:#f5faff;border:1px solid #b9d4ee;border-radius:10px;flex-wrap:wrap;align-items:end;gap:14px;padding:13px 15px;display:flex}.championship-controls label{color:#173f70;gap:6px;min-width:196px;font-weight:900;display:grid}.championship-controls label>span{color:#355b83;font-size:.92rem}.championship-controls select{color:#133b6d;min-height:44px;font:inherit;background:#fff;border:1px solid #5d9bd3;border-radius:8px;padding:8px 36px 8px 12px;font-weight:800}.championship-controls select:focus-visible{outline-offset:2px;outline:3px solid #ffca28}.competition-edit,.competition-restore,.competition-check{color:#075fac;background:#fff;border:1px solid #2777c4}.competition-delete{color:#9a2626;background:#fff;border:1px solid #be4c4c}.competition-pause{color:#8a5300;background:#fff7e8;border:1px solid #d48b20}.competition-setup{background:#f5f9fd;border:1px solid #cddded;border-radius:10px}.competition-setup summary{color:#1a4f88;cursor:pointer;padding:14px 16px;font-weight:800}.competition-setup-body{gap:13px;padding:0 16px 16px;display:grid}.competition-setup-body p{margin:0}.registration-window-settings{background:#f6faff;border:1px solid #c9dcee;border-radius:12px;margin:0 0 24px;padding:18px}.registration-window-settings h2,.registration-window-settings p{margin-top:0}.registration-window-fields{grid-template-columns:repeat(2,minmax(220px,1fr));gap:14px;margin:16px 0;display:grid}.registration-window-fields label{gap:6px;font-weight:700;display:grid}.registration-window-fields input{min-height:44px;font:inherit;border:1px solid #a8bfd4;border-radius:8px;padding:8px 10px}@media (width<=680px){.registration-window-fields{grid-template-columns:1fr}}.competition-check,.competition-confirm{justify-self:start}.competition-dry-run{border-left:4px solid #0875e1;gap:12px;padding:10px 0 10px 12px;display:grid}.competition-ok{font-weight:800;color:#237443!important}@media (width<=720px){.admin-section-heading,.class-code-row,.issued-code-panel,.competition-heading,.competition-row{flex-direction:column;align-items:stretch}.competition-add,.competition-row-actions button{width:100%}.competition-row-actions{grid-template-columns:1fr 1fr;display:grid}.championship-controls label{flex:180px;min-width:min(100%,260px)}}.score-grade-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:1rem 0;display:grid}.score-grade-cards button,.score-event-cards button{white-space:normal;overflow-wrap:anywhere;min-width:0;min-height:48px}.score-grade-cards .selected,.score-event-cards .selected{border-color:var(--primary,#125f65);color:#164d48;background:#e8f4f1}.score-category{margin-top:1.4rem}.score-category h3{margin-bottom:.65rem}.score-event-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:.7rem;display:grid}.score-event-cards button{text-align:left;flex-direction:column;align-items:flex-start;gap:.35rem;padding:1rem;display:flex}.score-event-cards small{color:#58696c}.admin-score-detail{border-top:1px solid #d7e2e1;margin-top:1.5rem;padding-top:1rem}.admin-score-row{border-bottom:1px solid #d7e2e1;padding:.7rem 0}.admin-score-row .station-result-editor{flex-wrap:wrap;align-items:end;gap:.7rem;display:flex}.admin-score-row label{flex-direction:column;gap:.3rem;min-width:0;display:flex}.admin-score-row input,.admin-score-row select{max-width:100%}.admin-score-row .station-attempts{flex-wrap:wrap;gap:.5rem;display:flex}.admin-score-row .station-attempts label{flex:140px}.admin-dialog-backdrop{z-index:90;background:#102b375c;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.admin-confirm-dialog{width:min(100%,540px);max-height:85dvh;overflow:auto}.roster-filters{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.roster-filters label{flex-direction:column;gap:.4rem;min-width:0;display:flex}.roster-filters select{width:100%}.formal-source-summary{max-height:22rem;overflow:auto}.formal-reserves{display:block!important}.formal-reserves ul{margin:.5rem 0;padding-left:1.3rem}@media (width<=600px){.admin-score-row .station-result-editor>b{flex-basis:100%}.admin-score-row .station-result-editor>label{flex:120px}.admin-score-row .station-result-editor>button{width:100%}}.competition-filters{flex-wrap:wrap;gap:12px;margin:16px 0;display:flex}.competition-filters label{flex:1;gap:6px;min-width:160px;display:grid}.competition-filters input,.competition-filters select{width:100%;min-width:0}.competition-table-wrap{overflow-x:auto}.competition-table{border-collapse:collapse;width:100%;font-size:14px}.competition-table th,.competition-table td{text-align:left;vertical-align:top;border-bottom:1px solid #d5e2ef;padding:10px 8px}.competition-table-actions{flex-wrap:wrap;gap:6px;display:flex}.competition-table-actions button{padding:6px 10px}.competition-table strong{font-weight:600}.competition-table{min-width:720px}.competition-table-wrap{min-width:0;max-width:100%}.station-module{gap:16px;display:grid}.station-entry{background:#fff;border:1px solid #d5e5f4;border-radius:14px;max-width:620px;padding:24px}.station-entry form,.station-open-form{gap:12px;display:grid}.station-code-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width<=680px){.station-code-grid{grid-template-columns:1fr}}.station-entry label,.station-open-form label,.station-event-select{color:#264f78;gap:7px;font-weight:800;display:grid}.station-entry input,.station-open-form input,.station-open-form select,.station-event-select select{min-height:44px;font:inherit;border:1px solid #a8c8e6;border-radius:8px;padding:9px 11px}.station-entry-list{gap:9px;display:grid}.station-ranking{gap:8px;display:grid}.station-ranking p{border-bottom:1px solid #e1edf7;justify-content:space-between;margin:0;padding:8px 0;display:flex}.station-help{color:#52708e;line-height:1.6}.spirit-station-toolbar{flex-wrap:wrap;gap:8px;display:flex}.spirit-station-step{gap:12px;display:grid}.spirit-station-step h2{margin:0}.spirit-station-cards{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.spirit-station-cards button{text-align:left;color:#173d63;min-height:84px;font:inherit;cursor:pointer;background:#fff;border:1px solid #a8c8e6;border-radius:12px;gap:8px;padding:16px;font-weight:800;display:grid}.spirit-station-cards button:hover{background:#f2f8ff;border-color:#356eaa}.spirit-station-cards button:disabled{opacity:.6;cursor:wait}.spirit-station-cards small{color:#52708e;font-weight:600}.spirit-station-identity{z-index:2;color:#fff;background:#173d63;border-radius:10px;padding:12px 16px;font-weight:900;position:sticky;top:0}.station-result-editor{flex-wrap:wrap;align-items:end;gap:12px;min-width:0;display:flex}.station-result-editor>b{flex:1 0 100%}.station-result-editor>label{flex:150px;gap:6px;min-width:0;display:grid}.station-result-editor input,.station-result-editor select{width:100%;min-width:0;min-height:44px}.station-attempts{flex-wrap:wrap;gap:12px;min-width:0;display:flex}.station-attempts label{flex:130px;gap:6px;min-width:0;display:grid}.station-checkin label{flex-wrap:wrap;align-items:center;gap:10px;min-height:44px;display:flex}.station-checkin input[type=checkbox]{width:24px;height:24px}.station-checkin span{color:#52708e}@media (width<=680px){.station-result-editor>button{width:100%}}.station-module .station-checkin{cursor:pointer;flex-wrap:wrap;justify-content:flex-start;gap:12px;min-height:56px;display:flex}.station-checkin>input{flex:0 0 24px}.station-checkin>b{flex:200px}.station-checkin-person{border-bottom:1px solid #e1edf7;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:4px 0;display:flex}.station-checkin-person>.station-checkin{flex:240px;min-width:0}.station-checkin-person>label:last-child{color:#31566d;align-items:center;gap:8px;display:flex}.station-checkin-person select{max-width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #a8c8e6;border-radius:8px;padding:7px 10px}.station-checkin-progress{background:#f8fbff;border:1px solid #d5e5f4;border-radius:12px;padding:14px 16px}.station-checkin-progress h2,.station-checkin-progress p{margin:0 0 8px}.station-checkin-progress button{margin-bottom:8px}.station-checkin{cursor:pointer;flex-wrap:wrap}.station-checkin small{flex-basis:100%;padding-left:1.75rem}.station-replacement{flex-wrap:wrap;gap:.5rem;margin-block:.5rem;display:flex}.station-replacement p{flex-basis:100%;margin:0}.station-replacement select{min-width:0;max-width:100%}.station-entry-list section{min-width:0}.station-class-card{background:#fff;border:1px solid #cbdcf0;border-radius:12px;overflow:hidden}.station-class-card>summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:8px 16px;min-height:64px;padding:16px;list-style:none;display:flex}.station-class-card>summary::-webkit-details-marker{display:none}.station-class-card>summary b{flex:120px;font-size:1.1rem}.station-class-card>summary strong{color:#8a5700}.station-class-card--complete{border-color:#77ad91}.station-class-card--complete>summary{background:#edf8f1}.station-class-card--complete>summary strong{color:#17653c}.station-class-card>:not(summary){margin:12px 16px}.station-class-toggle:after{content:"展開 ▾";white-space:nowrap}.station-class-card[open]>summary .station-class-toggle:after{content:"收合 ▴"}.station-original-slots{color:#52708e;font-size:.9rem}@media (width<=680px){.station-class-card>summary{gap:8px;padding:14px}.station-class-card>summary b{flex-basis:100%}}.station-time-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;display:grid}.station-time-fields input{width:100%;min-width:0}.spirit-station .spirit-score-field{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px;width:fit-content;max-width:100%;display:flex}.spirit-station .spirit-score-field input{flex:0 110px;width:110px;max-width:100%;min-height:44px}.review-tabs{border-bottom:1px solid #d5e5f4;flex-wrap:wrap;gap:8px;padding-bottom:10px;display:flex}.review-tabs button{color:#174c7a;background:#fff;border:1px solid #b3cde5;border-radius:7px;min-height:44px;padding:8px 14px;font-weight:700}.review-tabs button.active{background:#e6f2ff;border-color:#2777c4}.review-workspace{min-width:0}.review-workspace>label{gap:5px;max-width:220px;margin:12px 0;display:grid}.review-workspace .station-ranking p{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}@media (width<=600px){.review-tabs{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.review-tabs button{min-width:0}}.results-main-tabs{border-bottom:1px solid #cbdce8;flex-wrap:wrap;gap:6px;display:flex}.results-main-tabs button{color:#31566d;font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:12px 14px;font-weight:750}.results-main-tabs button[aria-selected=true]{color:#096b68;border-bottom-color:#096b68}.results-summary{gap:12px;min-width:0;display:grid}.results-summary h2,.results-summary h3,.results-summary p{margin:0}.results-summary-heading,.results-summary-actions,.results-filter-row{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.results-summary-heading{justify-content:space-between}.results-filter-row label{gap:5px;font-weight:700;display:grid}.results-filter-row select,.results-summary button{color:#174d50;min-height:40px;font:inherit;background:#fff;border:1px solid #a8c8d3;border-radius:6px;padding:7px 12px}.results-table-wrap table{border-collapse:collapse;width:100%}.results-table-wrap th,.results-table-wrap td{text-align:left;overflow-wrap:anywhere;border-bottom:1px solid #dbe7ec;padding:9px 8px}.results-table-wrap th{color:#31566d;background:#f0f6f8}@media (width<=680px){.results-main-tabs button{flex:30%;padding:9px 5px}.results-table-wrap table,.results-table-wrap tbody,.results-table-wrap tr,.results-table-wrap td{display:block}.results-table-wrap thead{display:none}.results-table-wrap tr{border-bottom:1px solid #aac6d1;padding:8px 0}.results-table-wrap td{border:0;padding:3px 6px}.results-filter-row label{flex:40%}}.station-module>.app-action--quiet{justify-self:start}.station-module>h1{margin:0;font-size:1.55rem;line-height:1.3}.station-module>p{margin:0}.station-module>.station-event-select{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.station-module>.station-event-select>label{gap:5px;display:grid}.review-workspace{gap:12px;display:grid}.review-workspace h2,.review-workspace p{margin:0}.station-ranking table{border-collapse:collapse;width:100%}.station-ranking th,.station-ranking td{text-align:left;overflow-wrap:anywhere;border-bottom:1px solid #dbe7ec;padding:9px 8px}.station-ranking th{color:#31566d;background:#f0f6f8}.station-ranking input[type=checkbox]{vertical-align:middle;width:20px;height:20px}@media (width<=680px){.station-ranking table,.station-ranking tbody,.station-ranking tr,.station-ranking td{display:block}.station-ranking thead{display:none}.station-ranking tr{border-bottom:1px solid #aac6d1;padding:8px 0}.station-ranking td{border:0;padding:3px 6px}.station-ranking td[data-label]:before{content:attr(data-label) "：";color:#31566d;font-weight:700}}.results-dashboard{gap:10px}.results-dashboard .review-workspace{gap:9px;padding:14px}.results-dashboard .results-main-tabs button{padding-top:9px;padding-bottom:9px}@media (width<=800px){.app:has(.results-dashboard) .side:not(.open){transform:translate(calc(-100% - 32px))}}.station-score-table{min-width:0}.station-score-table table{border-collapse:collapse;width:100%}.station-score-table th,.station-score-table td{text-align:left;vertical-align:top;border-bottom:1px solid #d5e5f4;padding:10px}.station-score-table td:last-child{width:52%}@media (width<=680px){.station-score-table table,.station-score-table tbody,.station-score-table tr,.station-score-table td{width:100%;display:block}.station-score-table thead{display:none}.station-score-table tr{background:#fff;border:1px solid #cbdcf0;border-radius:12px;margin-bottom:10px;padding:8px}.station-score-table td{border:0;grid-template-columns:minmax(6em,auto) minmax(0,1fr);gap:8px;padding:5px;display:grid}.station-score-table td:before{content:attr(data-label);color:#52708e;font-weight:700}.station-score-table td:last-child{width:100%}.station-module>.station-event-select>label{flex:100%}.station-event-select select{width:100%}}.app{grid-template-columns:230px 1fr;min-height:100vh;display:grid}.side{color:#dceeff;background:#07356b;flex-direction:column;gap:6px;padding:20px 14px;display:flex}.brand,.nav{align-items:center;gap:12px;display:flex}.brand{color:#fff;padding:8px 10px 25px}.brand b,.brand small,.nav b,.nav small{display:block}.brand small,.nav small,.mock{color:#a9c9ed;font-size:12px}.nav{color:#dceeff;text-align:left;background:0 0;border:0;border-radius:8px;min-height:54px;padding:12px}.nav.active{color:#fff;background:#1379e6}.mock{margin-top:auto;padding:10px}.top{background:#fff;border-bottom:1px solid #dce8f5;justify-content:space-between;align-items:center;height:64px;padding:0 28px;display:flex}.top span{color:#617797;margin-top:3px;font-size:13px;display:block}.top strong{align-items:center;gap:8px;display:flex}.menu,.scrim,footer{display:none}.test-banner{color:#6b4c00;background:#fff5c2;border-bottom:1px solid #efd56f;padding:9px 28px;font-size:14px;font-weight:700}.content{max-width:1300px;margin:auto;padding:26px}.heading{margin-bottom:20px}.heading h1{margin:0;font-size:28px}.heading p{color:#607797;margin:7px 0}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.card{background:#fff;border:1px solid #dce8f5;border-radius:10px;padding:20px}.card h2{margin-top:0;font-size:18px}.primary,.table button{color:#fff;background:#0875e1;border:0;border-radius:8px;min-height:44px;padding:12px 15px;font-weight:800}.primary{width:100%}.short{width:auto;margin-bottom:14px}.table>div{border-top:1px solid #e5eef8;grid-template-columns:2fr 1fr 1fr auto auto;align-items:center;gap:10px;padding:13px 0;display:grid}.table small,.check small,.input small{color:#6d829e;margin-top:3px;font-size:12px;display:block}.event-select{background:#fff;border:1px solid #b8d3f1;border-radius:8px;width:100%;max-width:460px;margin:0 0 14px;padding:12px}.checkhead{background:#eff7ff;border:1px solid #cde2fb;border-radius:10px;justify-content:space-between;margin-bottom:12px;padding:15px;display:flex}.checkhead b{margin-top:4px;display:block}.check{background:#fff;border:1px solid #dce8f5;border-radius:10px;justify-content:space-between;align-items:center;margin-top:10px;padding:14px 18px;display:flex}.check>div:last-child{grid-template-columns:repeat(4,94px);gap:7px;display:grid}.check button{border:0;border-radius:8px;min-height:46px;font-weight:800}.checked_in{color:#087d41;background:#e8f8ef}.pending{color:#17497f;background:#eef5fc}.absent{color:#bd2633;background:#fff0f1}.withdrawn{color:#ae6d00;background:#fff7e2}.selected{box-shadow:inset 0 0 0 2px}.input{border-top:1px solid #e5eef8;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;display:flex}.input input,.input select{border:1px solid #b8d3f1;border-radius:7px;padding:9px}.mini>div{border-top:1px solid #e5eef8;align-items:center;padding:12px 0;display:flex}.mini i{width:38px;font-style:normal}.mini span{margin-left:auto;font-weight:700}.download,.file{color:#075fac;border:1px solid #b8d3f1;border-radius:8px;margin:10px 0;padding:13px;font-weight:700;display:block}.file input{margin-top:8px;display:block}.notice{background:#eff7ff;border:1px solid #cde2fb;border-radius:8px;padding:12px}.mapping{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:16px;display:grid}.mapping b{grid-column:1/-1}.mapping span{background:#eef5fc;border-radius:7px;padding:10px}textarea{width:100%;min-height:120px;font:inherit;border:1px solid #b8d3f1;border-radius:8px;margin:12px 0;padding:10px}.modal{z-index:10;background:#06264c88;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.dialog{background:#fff;border-radius:12px;gap:12px;width:min(520px,100%);max-height:calc(100vh - 32px);padding:20px;display:grid;overflow:auto}.dialog label{gap:5px;font-weight:700;display:grid}.dialog input,.dialog select{border:1px solid #b8d3f1;border-radius:7px;padding:11px}.modal-actions{gap:10px;display:flex}.modal-actions button{background:#fff;border:1px solid #b8d3f1;border-radius:8px;min-height:44px;padding:10px 15px}.modal-actions .primary{border:0;width:auto;margin-left:auto}@media (width<=800px){.app{padding-bottom:68px;display:block}.side{z-index:5;width:255px;height:100vh;transition:all .2s;position:fixed;transform:translate(-105%)}.side.open{transform:translate(0)}.scrim{z-index:4;background:#06264c88;border:0;display:block;position:fixed;inset:0}.menu{color:#07356b;background:0 0;border:0;display:block}.top{height:60px;padding:0 12px}.top span,.top strong{display:none}.test-banner{padding:8px 14px;font-size:12px}.content{padding:18px 14px}.grid{grid-template-columns:1fr}.table>div{grid-template-columns:1fr auto}.table>div>span{display:none}.check{display:block}.check>div:last-child{grid-template-columns:repeat(4,1fr);margin-top:12px}.check button{font-size:12px}.mapping{grid-template-columns:1fr 1fr}.dialog{align-self:end}footer{background:#fff;border-top:1px solid #dce8f5;grid-template-columns:repeat(5,1fr);height:68px;display:grid;position:fixed;bottom:0;left:0;right:0}footer button{color:#607797;background:#fff;border:0;place-items:center;font-size:10px;display:grid}footer button.active{color:#0875e1;font-weight:800}}.registration-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.registration-header h1{margin:0;font-size:28px}.registration-header p{color:#607797;margin:7px 0}.registration-header label,.filters label,.class-select,.admin-actions label{color:#294a70;gap:6px;font-weight:700;display:grid}.registration-header select,.filters select,.class-select select,.admin-actions input{font:inherit;background:#fff;border:1px solid #b8d3f1;border-radius:8px;padding:10px}.registration-tabs{gap:8px;margin:0 0 16px;display:flex;overflow:auto}.registration-tabs button{white-space:nowrap;background:#fff;border:1px solid #b8d3f1;border-radius:8px;padding:11px 14px;font-weight:700}.registration-tabs .active{color:#fff;background:#0875e1;border-color:#0875e1}.filters{grid-template-columns:2fr 1fr 1fr;gap:12px;margin-bottom:14px;display:grid}.filters label>span{padding:11px}.student-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:14px 0;display:grid}.student{text-align:left;background:#fff;border:1px solid #c9ddeb;border-radius:9px;grid-template-columns:32px 1fr;align-items:center;gap:2px;min-height:70px;padding:13px;display:grid}.student.chosen{background:#eff7ff;border-color:#0875e1}.student:disabled{opacity:.62}.student small{color:#607797;grid-column:2}.box{color:#0875e1;border:2px solid #78a6d2;border-radius:5px;grid-row:1/3;place-items:center;width:23px;height:23px;font-weight:900;display:grid}.chosen .box{color:#fff;background:#0875e1}.confirm{margin-top:6px}.warning{color:#9f1e2d;background:#fff0f1;border:1px solid #ffc8cb;border-radius:8px;margin:12px 0;padding:10px}.progress-list>div{border-top:1px solid #e5eef8;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:13px 0;display:grid}.progress-list b,.progress-list small{display:block}.progress-list small,.student-summary small{color:#6d829e;margin-top:3px}.progress-list em{font-style:normal;font-weight:800}.good{color:#087d41}.pending{color:#17497f}.muted{color:#607797}.progress-list button{background:#fff;border:1px solid #8ab5df;border-radius:7px;padding:9px 12px;font-weight:700}.class-select{max-width:200px;margin-bottom:14px}.admin-actions{align-items:end;gap:15px;margin-bottom:14px;display:flex}.admin-actions label{flex:1}.admin-actions label:first-child{position:relative}.admin-actions label svg{position:absolute;bottom:12px;left:10px}.admin-actions input{padding-left:34px}.admin-actions .short{white-space:nowrap;margin:0}.student-summary{border-top:1px solid #e5eef8;gap:4px;padding:12px 0;display:grid}.roster{grid-template-columns:1fr 1fr;gap:8px;display:grid}.roster span,.dryrun b{background:#eff7ff;border-radius:7px;padding:9px}.dryrun{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.dryrun b{text-align:center}.modal-actions .primary{color:#fff;background:#0875e1}@media (width<=800px){.registration-header{display:block}.registration-header label{margin-top:12px}.filters,.student-list{grid-template-columns:1fr}.progress-list>div{grid-template-columns:1fr auto}.progress-list button{grid-column:1/-1}.admin-actions{display:grid}.admin-actions .short{width:100%}.roster{grid-template-columns:1fr}.dryrun{grid-template-columns:1fr 1fr}}
