.sp-guide{--guide-panel:#fff;--guide-text:#25334b;--guide-muted:#647187;z-index:1600;background:var(--guide-panel);width:min(350px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--guide-text);font:15px/1.55 var(--font-ui),system-ui,sans-serif;text-align:left;box-sizing:border-box;border:1px solid #879aef65;border-radius:18px;outline:0;padding:20px;position:fixed;overflow:auto;box-shadow:0 12px 48px #101c3829}[data-theme=dark] .sp-guide{--guide-panel:#20283c;--guide-text:#edf1fc;--guide-muted:#b9c4dd;border-color:#7c8fe875;box-shadow:0 12px 48px #0005}.sp-guide header{background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;margin:0 0 12px;padding:0;display:flex}.sp-guide header>span{font:600 10px/1.4 var(--font-ui);letter-spacing:.1em;color:var(--guide-muted)}.sp-guide h3{font:650 20px/1.3 var(--font-ui);letter-spacing:-.02em;color:inherit;margin:0 0 10px}.sp-guide-copy{color:var(--guide-muted);font-size:15px;line-height:1.6}.sp-guide-copy p{margin:0}.sp-guide-copy code{color:var(--guide-text);font:14px/1.4 Consolas,monospace}.sp-guide footer{border:0;justify-content:flex-end;gap:10px;margin:18px 0 0;padding:0;display:flex}.sp-guide button{font:500 14px/1.4 var(--font-ui);min-height:36px;color:inherit;cursor:pointer;box-shadow:none;background:0 0;border:1px solid #879aef45;border-radius:9px;padding:8px 12px;transform:none}.sp-guide header button{border:0;min-height:30px;padding:3px 8px;font-size:23px;line-height:1}.sp-guide button{-webkit-user-select:none;user-select:none;transition:background-color .15s,color .15s,border-color .15s}.sp-guide button:hover:not(:disabled){color:var(--guide-text);box-shadow:none;background:#899eec18;transform:none}.sp-guide .sp-guide-next{color:#fff;background:#536ade;border-color:#536ade}.sp-guide .sp-guide-next:hover:not(:disabled){color:#fff;background:#455bc6;border-color:#455bc6}.sp-guide button:active:not(:disabled){box-shadow:none;transform:none}.sp-guide button:disabled{opacity:.6;cursor:wait}.sp-guide button:focus-visible{outline-offset:3px;outline:2px solid #8095ff}.sp-guide-focus{z-index:1599;pointer-events:none;box-sizing:border-box;border:2px solid #7a91f0;border-radius:13px;position:fixed;box-shadow:0 0 0 5px #8095ff18}.sp-guide-error{color:#d66c72;margin:12px 0 0;font-size:13px}@media (max-width:719px){.sp-guide{max-height:44dvh;padding:16px}.sp-guide h3{font-size:18px}.sp-guide-copy{font-size:14px}.sp-guide footer{margin-top:12px}}@media (prefers-reduced-motion:reduce){.sp-guide,.sp-guide-focus{transition:none;animation:none}}
.introduction-card{border:1px solid var(--line);background:var(--glass);color:var(--ink);border-radius:17px;align-items:center;gap:16px;margin:8px 28px 0;padding:18px 22px;display:flex}.introduction-paused-notice{color:var(--muted);margin:12px 28px;font-size:14px;line-height:1.5}.introduction-symbol{color:var(--blue);flex-shrink:0}.introduction-description{flex:1;min-width:0}.introduction-description h2{letter-spacing:-.02em;margin:0 0 4px;font-size:17px;font-weight:650;line-height:1.35}.introduction-description p{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.introduction-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.introduction-actions button{font:500 14px/1.4 var(--font-ui);box-shadow:none;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;display:inline-flex}.intro-start{color:var(--ink);background:#879eed12;border:1px solid #8399ec55}.intro-later{color:var(--muted);background:0 0;border:0}.introduction-actions button{-webkit-user-select:none;user-select:none;transition:background-color .15s,color .15s,border-color .15s;transform:none}.introduction-actions button:hover:not(:disabled){background:color-mix(in srgb,var(--blue) 12%,var(--surface));color:var(--ink);border-color:color-mix(in srgb,var(--blue) 45%,var(--line));box-shadow:none;transform:none}.introduction-actions button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.introduction-actions button:disabled{opacity:.55;cursor:default}.learning-access-bar{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:10px 32px 4px;font-size:13px;display:flex}.learning-access-bar:empty{display:none}.learning-access-bar a{color:var(--blue);align-items:center;gap:4px;display:inline-flex}.learning-access-bar label{align-items:center;gap:10px;margin-left:auto;display:flex}.learning-access-bar select{font:inherit;color:var(--ink);background:var(--glass);border:1px solid var(--line);border-radius:8px;padding:6px 9px}@media (max-width:700px){.introduction-card{flex-wrap:wrap;gap:12px;margin:8px 12px 0;padding:16px}.introduction-description{flex-basis:calc(100% - 40px)}.introduction-actions{justify-content:flex-end;width:100%}.learning-access-bar{margin:10px 16px}.learning-access-bar label{margin-left:0}}
.lecture-intro{border:1px solid var(--line);background:var(--surface);color:var(--ink);font:16px/1.5 var(--font-ui),system-ui,sans-serif;border-radius:18px;margin:16px 0 28px;padding:24px}.lecture-intro header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.lecture-intro header span{letter-spacing:.08em;color:var(--muted);font-size:11px}.lecture-intro h3{color:inherit;margin:6px 0 0;font-size:22px;line-height:1.3}.lecture-intro p{color:var(--muted);margin:12px 0}.lecture-intro button{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--ink);font:500 14px/1.4 var(--font-ui);box-shadow:none;cursor:pointer;border-radius:9px;padding:9px 14px;transform:none}.lecture-intro button:hover:not(:disabled){background:color-mix(in srgb,var(--blue) 10%,var(--surface));box-shadow:none;transform:none}.lecture-intro button:disabled{opacity:.5;cursor:default}.lecture-intro button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.lecture-intro header>button{border:0;flex-shrink:0;padding:0 8px;font-size:24px}.lecture-intro-inputs{gap:16px;margin:18px 0;display:flex}.lecture-intro-inputs label{flex:1;gap:6px;min-width:0;max-width:210px;font-size:14px;display:grid}.lecture-intro-inputs input{box-sizing:border-box;border:1px solid var(--line);background:var(--surface);width:100%;min-height:42px;color:var(--ink);font:16px/1.4 var(--font-ui);border-radius:9px;margin:0;padding:9px 12px}.lecture-intro-panels{grid-template-columns:1.4fr 1fr;gap:14px;display:grid}.lecture-intro-panels>div{border:1px solid var(--line);border-radius:12px;min-width:0;overflow:hidden}.lecture-intro h4{font:500 13px/1.5 var(--font-ui);border-bottom:1px solid var(--line);color:var(--muted);margin:0;padding:10px 14px}.lecture-intro pre{margin:0;padding:10px 0;font:15px/1.7 Consolas,monospace;overflow-x:auto}.lecture-intro pre code{font:inherit;color:var(--ink);white-space:pre;background:0 0;border-left:3px solid #0000;padding:2px 14px;display:block}.lecture-intro code.is-current{border-left-color:var(--blue);background:color-mix(in srgb,var(--blue) 12%,transparent)}.lecture-intro output{padding:14px;font:16px/1.5 Consolas,monospace;display:block}.lecture-intro .lecture-intro-note{min-height:3em;color:var(--ink)}.lecture-intro-steps{align-items:center;gap:12px;display:flex}.lecture-intro-steps span{color:var(--muted);font-size:13px}.lecture-intro footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;margin-top:20px;padding-top:16px;display:flex}.lecture-intro footer span{color:var(--muted);max-width:360px;font-size:13px}.lecture-intro footer button{color:#fff;background:#536ade;border-color:#536ade;flex-shrink:0}.lecture-intro footer button:hover{color:#fff;background:#455bc6}@media (max-width:600px){.lecture-intro{margin-top:12px;padding:16px;font-size:14px}.lecture-intro h3{font-size:20px}.lecture-intro-panels{grid-template-columns:minmax(0,1fr) 88px;gap:8px}.lecture-intro h4{align-items:center;min-height:36px;padding:8px;font-size:12px;display:flex}.lecture-intro pre{font-size:13px}.lecture-intro pre code{padding:2px 8px}.lecture-intro output{padding:10px;font-size:14px}.lecture-intro footer{flex-direction:column;align-items:stretch;gap:12px}.lecture-intro-inputs{gap:12px}.lecture-intro .lecture-intro-note{min-height:0}}
.olympiad-practice{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:14px;justify-content:space-between;align-items:center;gap:20px;margin:20px 0 28px;padding:20px;display:flex}.olympiad-practice h2{margin:0 0 6px;font-size:20px;line-height:1.35}.olympiad-practice p{color:var(--muted);margin:0;font-size:15px;line-height:1.6}.olympiad-practice .board-link{flex-shrink:0}@media (max-width:600px){.olympiad-practice{flex-direction:column;align-items:flex-start;gap:16px;padding:16px}}
.item-access{color:var(--muted);font-size:16px;line-height:1.45}.topic-wrap>.item-access{align-items:center;min-height:35px;margin:3px 12px;display:flex}.topic-wrap:has(>.item-access)>.card-edit{box-shadow:none;margin:0;position:absolute;bottom:5px;right:10px}.item-access .item-access-trigger{min-height:34px;color:var(--muted);box-shadow:none;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;align-items:center;gap:7px;padding:5px 9px;font-family:inherit;font-size:16px;font-weight:500;line-height:1.4;transition:background .15s,color .15s,border-color .15s;display:inline-flex;transform:none}.item-access.is-open .item-access-trigger{color:var(--success)}.item-access .item-access-trigger svg{flex:none}.item-access-chevron{color:var(--muted);opacity:.65}.item-access .item-access-trigger:hover:not(:disabled),.item-access .item-access-trigger[aria-expanded=true]{background:var(--surface);border-color:var(--line);box-shadow:none;transform:none}.item-access .item-access-trigger:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.item-access .item-access-trigger:disabled{opacity:.65;cursor:wait}.item-access-unavailable{color:var(--muted);align-items:center;gap:7px;padding:5px 9px;font-size:14px;display:inline-flex}.topic-status+.item-access{border-bottom:1px solid var(--line);margin:0 30px 12px;padding:0 0 12px}.topic-status+.item-access .item-access-trigger{background:var(--raised);border-radius:10px;padding:8px 12px;font-size:14px}.item-access-menu{box-sizing:border-box;border:1px solid var(--line);background:var(--surface);width:320px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);color:var(--ink);box-shadow:0 12px 40px var(--shadow);text-align:left;border-radius:16px;margin:0;padding:8px;font-family:inherit;font-size:14px;line-height:1.45;position:fixed;inset:auto;overflow:auto}.item-access-menu::backdrop{background:0 0}.item-access-menu>header{flex-direction:column;gap:3px;padding:8px 10px 12px;display:flex}.item-access-menu>header strong{font-size:14px;font-weight:600}.item-access-menu>header>span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.item-access-options{gap:3px;display:grid}.item-access-menu .item-access-option{width:100%;min-height:60px;color:var(--ink);font:inherit;text-align:left;box-shadow:none;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:10px;padding:10px;display:flex;transform:none}.item-access-option>svg{color:var(--muted);flex:none}.item-access-option>span{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.item-access-option strong{font-size:14px;font-weight:500}.item-access-option small{color:var(--muted);font-size:12px;line-height:1.4}.item-access-option .item-access-check{visibility:hidden;color:var(--blue)}.item-access-menu .item-access-option[aria-pressed=true]{background:var(--raised)}.item-access-option[aria-pressed=true] .item-access-check{visibility:visible}.item-access-menu .item-access-option:hover:not(:disabled){background:var(--raised);border-color:var(--line);box-shadow:none;transform:none}.item-access-menu .item-access-option:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}.item-access-menu .item-access-option:disabled{opacity:.6;cursor:wait}.item-access-menu>p{color:var(--danger);margin:8px 10px;font-size:13px}@media (max-width:600px){.topic-status+.item-access{margin:0 18px 10px}}@media (prefers-reduced-motion:reduce){.item-access .item-access-trigger{transition:none}}
