:root{--lm-route-canvas: #f8fafc;--lm-route-surface: #e3f3fd;--lm-route-court: #eef2f6;--lm-route-border: rgba(13,20,25,.12);--lm-route-brand: #5b8fc9;--lm-route-on-brand: #ffffff;--lm-route-title-size: 28px;--lm-route-title-line: 40px;--lm-route-meta-size: 12px;--lm-route-value-size: 16px;--lm-route-hint-line: 21px;--lm-route-control: 52px;--lm-route-avatar: 40px;--lm-route-content-max: 640px;--lm-route-court-radius: 16px;--lm-route-marker-type: 12px;--lm-course-rule: color-mix(in srgb, var(--lm-route-border) 55%, transparent);--lm-course-section-size: 14px;--lm-course-section-line: 20px;--lm-course-lesson-height: 28px;--lm-course-description-height: 36px;--lm-canvas: #f8fafc;--lm-surface: #ffffff;--lm-surface-raised: #ffffff;--lm-surface-sunken: #eef2f6;--lm-surface-modal: #ffffff;--lm-surface-inverse: #0d1419;--lm-text-strong: #0d1419;--lm-text-body: #384651;--lm-text-muted: #5f6d7a;--lm-text-faint: oklch(.2 .02 225 / .3);--lm-text-inverse: #ffffff;--lm-text-on-action: #ffffff;--lm-text-on-media: #ffffff;--lm-border-hairline: oklch(.2 .02 225 / .08);--lm-border-strong: oklch(.2 .02 225 / .15);--lm-hairline-ring: 0 0 0 1px var(--lm-border-hairline);--lm-strong-ring: 0 0 0 1px var(--lm-border-strong);--lm-shadow-ink: oklch(.22 .03 225);--lm-border-focus: #0878be;--lm-action: #0878be;--lm-action-press: #085a8d;--lm-action-soft: #e3f3fd;--lm-on-action-soft: #085a8d;--lm-accent: #f47745;--lm-accent-soft: #fdeee6;--lm-on-accent-soft: #a63e14;--lm-success: #0d8f1f;--lm-success-soft: #e2f6e4;--lm-warning: #9a6410;--lm-warning-soft: #fbf1dc;--lm-danger: #c0442a;--lm-danger-soft: #fceae5;--lm-font-sans: -apple-system, "PingFang SC", "Helvetica Neue", "Noto Sans SC", sans-serif;--lm-type-label-size: 11px;--lm-type-label-cjk-size: 12px;--lm-type-caption-size: 13px;--lm-type-sub-size: 13px;--lm-type-body-size: 15px;--lm-type-body-lg-size: 17px;--lm-type-headline-size: 17px;--lm-type-title-size: 20px;--lm-weight-regular: 400;--lm-weight-medium: 500;--lm-weight-semibold: 600;--lm-space-2xs: 4px;--lm-space-xs: 8px;--lm-space-sm: 12px;--lm-space-md: 16px;--lm-space-lg: 20px;--lm-space-xl: 24px;--lm-space-2xl: 28px;--lm-space-3xl: 32px;--lm-space-4xl: 40px;--lm-radius-xs: 4px;--lm-radius-md: 8px;--lm-radius-sm: 12px;--lm-radius-lg: 20px;--lm-radius-xl: 40px;--lm-radius-pill: 999px;--lm-control-sm: 36px;--lm-control-md: 44px;--lm-control-primary: 56px;--lm-z-drawer: 200;--lm-z-toast: 400}:root[data-theme=dark]{--lm-route-canvas: #15202a;--lm-route-surface: #102d3c;--lm-route-court: #0d1419;--lm-route-border: #30454f;color-scheme:dark;--lm-canvas: #0d1419;--lm-surface: #172128;--lm-surface-raised: #1d2a34;--lm-surface-sunken: #0a1015;--lm-surface-modal: #25313a;--lm-surface-inverse: #ffffff;--lm-text-strong: #f8fafc;--lm-text-body: #c2cdd6;--lm-text-muted: #9eabb7;--lm-text-faint: rgba(248, 250, 252, .3);--lm-text-inverse: #0d1419;--lm-text-on-action: #0d1419;--lm-border-hairline: rgba(248, 250, 252, .07);--lm-border-strong: rgba(248, 250, 252, .14);--lm-border-focus: #49b7f5;--lm-shadow-ink: oklch(.05 .02 225);--lm-action: #49b7f5;--lm-action-press: #2e9de0;--lm-action-soft: rgba(73, 183, 245, .14);--lm-on-action-soft: #9edcfa;--lm-accent: #f47745;--lm-accent-soft: rgba(244, 119, 69, .16);--lm-on-accent-soft: #ffb897;--lm-success: #00bd13;--lm-success-soft: rgba(0, 189, 19, .15);--lm-warning: #e8b04b;--lm-warning-soft: rgba(232, 176, 75, .15);--lm-danger: #ec765b;--lm-danger-soft: rgba(236, 118, 91, .16)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100%}body{background:var(--lm-canvas);color:var(--lm-text-body);font-family:var(--lm-font-sans);font-size:var(--lm-type-body-size);-webkit-font-smoothing:antialiased}button{font:inherit;border:none;background:none;color:inherit;cursor:pointer}.scScreen{display:flex;flex-direction:column;gap:var(--lm-space-md);min-height:100vh;padding:0 var(--lm-space-lg) calc(var(--lm-space-xl) + env(safe-area-inset-bottom));max-width:560px;margin:0 auto}.scNavBar{display:grid;grid-template-columns:minmax(var(--lm-control-md),max-content) minmax(0,1fr) minmax(var(--lm-control-md),max-content);align-items:center;gap:var(--lm-space-xs);block-size:calc(var(--lm-control-md) + env(safe-area-inset-top));padding:env(safe-area-inset-top) var(--lm-space-md) 0;background:var(--lm-canvas)}.scNavBar b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;font-size:var(--lm-type-headline-size);line-height:1.25;letter-spacing:-.011em;font-weight:var(--lm-weight-semibold);color:var(--lm-text-strong)}.scNavBack{justify-self:start;display:grid;place-items:center;width:var(--lm-control-md);height:var(--lm-control-md);margin-left:calc(-1 * var(--lm-space-sm));border-radius:var(--lm-radius-pill);color:var(--lm-text-strong)}.scNavBar>span{justify-self:end;white-space:nowrap}.scButton{display:flex;align-items:center;justify-content:center;gap:var(--lm-space-2xs);width:100%;min-height:var(--lm-control-primary);padding:0 var(--lm-space-4xl);border-radius:var(--lm-radius-pill);font-size:var(--lm-type-body-size);font-weight:var(--lm-weight-medium);letter-spacing:-.009em;white-space:nowrap}.scButton.is-primary{background:var(--lm-action);color:var(--lm-text-on-action)}.scButton.is-primary:active:not(:disabled){background:var(--lm-action-press);transform:scale(.985)}.scButton.is-primary:disabled{opacity:.38}.scButtonReason{display:block;color:var(--lm-text-muted);font-size:var(--lm-type-caption-size);line-height:1.5;letter-spacing:-.003em;text-align:left}.scButton.is-quiet{background:var(--lm-action-soft);color:var(--lm-on-action-soft)}.scTextButton{color:var(--lm-action);font-size:var(--lm-type-sub-size);font-weight:var(--lm-weight-semibold);line-height:1.5;letter-spacing:-.003em}@keyframes scRise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.scScreen>*{animation:scRise .32s cubic-bezier(.22,.61,.36,1) backwards}.scScreen>*:nth-child(1){animation-delay:20ms}.scScreen>*:nth-child(2){animation-delay:48ms}.scScreen>*:nth-child(3){animation-delay:76ms}.scScreen>*:nth-child(4){animation-delay:104ms}.scScreen>*:nth-child(5){animation-delay:132ms}.scScreen>*:nth-child(n+6){animation-delay:.16s}@media (prefers-reduced-motion: reduce){.scScreen>*{animation:none}}.scScreen.is-tight{gap:var(--lm-space-sm)}.scRows{display:grid;border-radius:var(--lm-radius-lg);overflow:hidden;background:var(--lm-surface);box-shadow:inset 0 0 0 1px var(--lm-border-hairline);font-size:var(--lm-type-body-size);color:var(--lm-text-strong)}.scRow{display:flex;align-items:center;gap:var(--lm-space-xs);width:100%;min-height:48px;padding:var(--lm-space-sm) var(--lm-space-md);text-align:left}.scRow+.scRow{border-top:1px solid var(--lm-border-hairline)}.scRow .scRowText{flex:1;min-width:0;color:var(--lm-text-strong);font-weight:var(--lm-weight-medium);line-height:1.55;letter-spacing:-.009em}.scRow>small{margin-left:auto;color:var(--lm-text-muted);font-size:var(--lm-type-sub-size)}.scRow>small+.scChevron{margin-left:0}.scRow>.scChevron:last-child{margin-left:auto}.scRow .scRowText+.scChevron{margin-left:0}.scChevron{flex:none;display:flex;color:var(--lm-text-faint)}.scSheetMask{position:fixed;top:0;right:0;bottom:0;left:0;background:color-mix(in oklab,var(--lm-shadow-ink) 34%,transparent);display:flex;align-items:flex-end;z-index:var(--lm-z-drawer)}.scSheet{display:flex;flex-direction:column;width:100%;min-height:32%;max-height:60vh;border-radius:var(--lm-radius-xl) var(--lm-radius-xl) 0 0;background:var(--lm-surface-modal);padding:0 var(--lm-space-lg) calc(var(--lm-space-xl) + env(safe-area-inset-bottom));overflow-y:auto}.scSheetGrip{flex:none;width:var(--lm-control-sm);height:var(--lm-space-2xs);margin:var(--lm-space-xs) auto 0;border-radius:var(--lm-radius-pill);background:var(--lm-border-strong)}.scSheet>b{display:block;padding:var(--lm-space-xs) 0 var(--lm-space-sm);font-size:var(--lm-type-headline-size);font-weight:var(--lm-weight-semibold);color:var(--lm-text-strong)}.scRadioList{display:grid}.scRadio{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:var(--lm-space-sm);width:100%;min-height:var(--lm-control-md);padding:var(--lm-space-xs) 0;text-align:left}.scRadio+.scRadio{box-shadow:inset 0 1px 0 var(--lm-border-hairline)}.scRadio .scRadioDot{display:grid;place-items:center;width:var(--lm-space-lg);height:var(--lm-space-lg);margin-top:1px;border-radius:50%;box-shadow:var(--lm-strong-ring)}.scRadio .scRadioDot:after{content:"";width:var(--lm-space-xs);height:var(--lm-space-xs);border-radius:50%;background:var(--lm-text-strong);transform:scale(0);transition:transform .12s ease}.scRadio.is-on .scRadioDot:after{transform:scale(1)}.scRadio .scRadioMain{display:grid;gap:var(--lm-space-2xs);min-width:0}.scRadio .scRadioMain b{color:var(--lm-text-strong);font-weight:var(--lm-weight-regular)}.scRadio small{color:var(--lm-text-muted);font-size:var(--lm-type-caption-size)}.scToast{position:fixed;top:calc(env(safe-area-inset-top) + var(--lm-control-md) + var(--lm-space-xs));line-height:1.5;letter-spacing:-.003em;left:0;right:0;width:max-content;max-width:min(362px,calc(100% - 2 * var(--lm-space-lg)));margin:0 auto;padding:var(--lm-space-xs) var(--lm-space-md);border-radius:var(--lm-radius-pill);background:color-mix(in oklab,var(--lm-surface-inverse) 92%,transparent);color:var(--lm-text-inverse);font-size:var(--lm-type-caption-size);font-weight:var(--lm-weight-medium);text-align:center;z-index:var(--lm-z-toast);animation:scToastDrop .24s cubic-bezier(.05,.7,.1,1) both}@keyframes scToastDrop{0%{opacity:0;transform:translateY(calc(-1 * var(--lm-space-sm)))}to{opacity:1;transform:none}}.scPageState{display:grid;justify-items:center;gap:var(--lm-space-xs);padding:var(--lm-space-2xl) var(--lm-space-md);text-align:center}.scPageState b{color:var(--lm-text-body);font-size:var(--lm-type-title-size);font-weight:var(--lm-weight-semibold)}.scPageState small{color:var(--lm-text-muted);font-size:var(--lm-type-caption-size);line-height:1.5}.scPageState.is-empty{flex:1;align-content:center;gap:var(--lm-space-2xs);padding:0}.scPageState.is-empty b{font-size:var(--lm-type-headline-size);font-weight:var(--lm-weight-medium)}.scSpinner{width:22px;height:22px;border-radius:50%;border:2px solid var(--lm-border-strong);border-top-color:var(--lm-action);animation:scSpin .8s linear infinite}@keyframes scSpin{to{transform:rotate(360deg)}}.scGroupLabel{display:inline-block;font-size:var(--lm-type-label-cjk-size);line-height:1.35;letter-spacing:.02em;font-weight:var(--lm-weight-medium);color:var(--lm-text-muted)}.scSrOnly{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
