/* A spacious browser layout, with the familiar five-item menu on phones. */
.site-header{position:sticky;top:0;z-index:45;display:flex;align-items:center;gap:28px;min-height:76px;padding:16px 36px;border-bottom:1px solid var(--line);background:var(--bg)}.site-logo{font:29px/1 Georgia,serif;color:var(--ink);text-decoration:none;white-space:nowrap}.site-logo>span{color:var(--accent)}.site-header-caption{font-size:12px;color:var(--muted)}.site-account{margin-left:auto;display:flex;align-items:center;gap:14px}.site-account>.button{padding:12px 18px;font-size:13px}.site-user,.site-signout{background:transparent;border:0;color:var(--ink);cursor:pointer;font-size:13px;min-height:42px}.site-signout{color:var(--muted)}.site-sidebar{position:fixed;top:76px;bottom:0;left:0;width:232px;padding:40px 22px;border-right:1px solid var(--line);background:var(--bg);display:flex;flex-direction:column;z-index:30}.site-menu-label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0 12px 18px}.site-sidebar nav{display:grid;gap:7px}.site-sidebar a{display:flex;align-items:center;gap:13px;padding:13px 15px;min-height:49px;border-radius:13px;color:var(--muted);text-decoration:none;font-size:14px;font-weight:650}.site-sidebar a span{font-size:23px;line-height:1}.site-sidebar a:hover{background:var(--paper);color:var(--ink)}.site-sidebar a.active{background:color-mix(in srgb,var(--accent) 14%,var(--paper));color:var(--accent-dark)}.site-sidebar-note{margin-top:auto;padding:20px 12px;display:grid;gap:9px;color:var(--muted);font-size:12px;line-height:1.6}.site-sidebar-note small{font-size:11px}.site-sidebar~.bottom-nav{display:none!important}#app main.shell{width:calc(100% - 232px);max-width:1240px;margin:0 0 0 232px;padding:42px 48px 70px!important;overflow-wrap:anywhere}main.shell>.brand{margin-bottom:12px;font-size:21px}main.shell>.compact-hero{max-width:760px}main.shell .grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.site-welcome{max-width:790px;padding:32px 0 44px}.site-welcome h1{font:clamp(40px,4.8vw,64px)/1.05 Georgia,serif;letter-spacing:-.045em;margin:20px 0 23px}.site-welcome>p{font-size:17px;line-height:1.8;max-width:650px;color:var(--muted)}.site-welcome-actions{display:flex;gap:12px;flex-wrap:wrap;margin:27px 0 20px}.site-welcome>small{display:block;font-size:12px;line-height:1.7;color:var(--muted);max-width:620px}.site-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 36px}.site-highlights button{padding:22px;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:20px;text-align:left;cursor:pointer}.site-highlights button>span{font-size:29px;color:var(--accent)}.site-highlights h2{font:22px/1.2 Georgia,serif;margin:17px 0 11px}.site-highlights p{font-size:12px;line-height:1.7;color:var(--muted);margin:0}.site-highlights button:hover{border-color:var(--accent)}.site-welcome+.site-highlights~.section-head{margin-top:35px}.site-profile-login{max-width:660px;padding:28px 0}.site-profile-login .button{margin-top:22px}.site-profile-login h1{font-size:clamp(30px,4vw,45px)}.site-profile-login p{line-height:1.8}main.shell .reading-progress{left:232px;width:calc(100% - 232px);top:76px}.lesson-content,.rich-content,.course-program{max-width:920px}.site-login{width:min(440px,calc(100vw - 28px));max-height:calc(100dvh - 40px);overflow:auto;padding:27px;border-radius:22px;border:1px solid var(--line);color:var(--ink);background:var(--paper);box-shadow:0 20px 100px #0003}.site-login::backdrop{background:#21181499}.site-login h2{font:30px Georgia,serif;margin:0}.site-login p,.site-login small{font-size:13px;color:var(--muted);line-height:1.7}.site-login small{display:block;margin-top:20px;font-size:11px}.site-login #site-telegram-link{display:flex;margin:18px 0 22px}.site-login label{display:block;font-size:13px;line-height:1.6}.site-login input{width:100%;height:60px;letter-spacing:.35em;text-align:center;border:1px solid var(--line);border-radius:13px;background:var(--bg);color:var(--ink);font-size:25px;margin:10px 0}.site-login form>.button{width:100%;display:flex}.site-login [hidden]{display:none!important}#site-code-status{color:var(--accent-dark)}.site-login-start{margin:10px 0}.site-header a:focus-visible,.site-sidebar a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(min-width:1100px){main.shell .course-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:32px;align-items:start}.course-hero>img{grid-column:2;grid-row:1/8;height:auto!important;aspect-ratio:16/9}.course-hero>h1{font-size:38px}.course-hero>p{font-size:15px}.course-hero>.eyebrow{grid-row:1}.course-hero>.course-primary{grid-column:1}.course-hero~.section-head,.course-hero~.course-program{max-width:900px}}
@media(max-width:1099px){#app main.shell{padding:30px 28px 70px!important}.site-highlights{grid-template-columns:1fr}.site-highlights button{display:grid;grid-template-columns:36px minmax(0,1fr);gap:4px 15px;padding:20px}.site-highlights h2{margin:0}.site-highlights p{grid-column:2}.site-highlights button>span{grid-row:1/3}.site-header-caption{display:none}.site-header{padding:16px 24px}.site-sidebar{width:200px;padding:30px 14px}#app main.shell{width:calc(100% - 200px);margin-left:200px}main.shell .grid{grid-template-columns:1fr}main.shell .reading-progress{left:200px;width:calc(100% - 200px)}}
@media(max-width:760px){.site-sidebar{display:none}.site-sidebar~.bottom-nav{display:grid!important}.site-header{min-height:65px;gap:12px;padding:13px 16px}.site-logo{font-size:24px}.site-account{gap:6px}.site-account>.button{padding:10px 12px;font-size:11px;min-height:40px}.site-user,.site-signout{font-size:11px;padding:4px}.site-account .site-user{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#app main.shell{width:100%;margin:0;padding:25px 16px 110px!important}.site-welcome{padding:13px 0 27px}.site-welcome h1{font-size:43px;margin:15px 0 18px}.site-welcome p{font-size:15px;line-height:1.75}.site-welcome-actions{display:grid;gap:10px}.site-welcome-actions .button{display:flex;text-align:center}.site-welcome>small{font-size:11px}.site-highlights{gap:10px;margin-bottom:25px}.site-highlights h2{font-size:21px}.site-header .site-logo span{display:none}.site-header+.shell>.brand{font-size:19px}.site-profile-login h1{font-size:32px}main.shell .reading-progress{left:0;width:100%;top:65px}.site-login{padding:20px}.site-login h2{font-size:27px}}@media(max-width:350px){.site-header{padding:12px}.site-logo{font-size:21px}.site-welcome h1{font-size:37px}.site-account>.button{font-size:10px;padding:9px}#app main.shell{padding-left:12px!important;padding-right:12px!important}}
.site-lesson-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}
.site-library-group>summary{display:flex;align-items:center;gap:13px;padding:13px 15px;min-height:49px;border-radius:13px;color:var(--muted);font-size:14px;font-weight:650;cursor:pointer;list-style:none}.site-library-group>summary::-webkit-details-marker{display:none}.site-library-group>summary>span{font-size:23px;line-height:1}.site-library-group>summary i{margin-left:auto;font-style:normal;transition:transform .18s}.site-library-group[open]>summary i{transform:rotate(180deg)}.site-library-group>summary:hover{background:var(--paper);color:var(--ink)}.site-library-group>summary.active{background:color-mix(in srgb,var(--accent) 14%,var(--paper));color:var(--accent-dark)}.site-library-group>summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.site-library-submenu{margin:8px 0 6px 26px;padding-left:9px;border-left:1px solid var(--line);display:grid;gap:4px}.site-sidebar .site-library-submenu a{padding:10px 12px;font-size:13px;min-height:44px}.site-sidebar .site-library-submenu a span{font-size:17px}.site-library-mobile{display:none}.site-library-mobile[hidden]{display:none!important}
@media(max-width:760px){.site-library-mobile{display:block;position:fixed;z-index:70;left:16px;right:16px;bottom:calc(98px + env(safe-area-inset-bottom,0px));padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--paper);box-shadow:0 12px 40px #0004}.site-library-mobile>.site-menu-label{display:block;margin:0 0 13px}.site-library-mobile>div{display:grid;grid-template-columns:1fr 1fr;gap:10px}.site-library-mobile a{display:flex;align-items:center;gap:10px;min-height:52px;padding:12px;border-radius:12px;border:1px solid var(--line);text-decoration:none;color:var(--ink);background:var(--bg);font-size:14px}.site-library-mobile a>span{color:var(--accent);font-size:22px}.site-library-mobile a:hover,.site-library-mobile a.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--paper))}.site-library-mobile a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}}
.site-lesson-body{min-width:0}
:root{--accent:#9e5544;--accent-dark:#854332}
.free-mark{background:#48634b!important;color:#fff!important;font-size:12px!important}.course-card.locked{opacity:1}.course-card.locked .course-cover{filter:grayscale(1);opacity:.65}.course-card.locked .course-card-main :is(h3,p,small){color:var(--muted);opacity:1}
.rich-content a{color:var(--accent-dark);text-decoration:underline;text-underline-offset:3px}.library-segments button.active{background:#9e5544!important;color:#fff!important}
@media(prefers-color-scheme:dark){.material-card.locked{background:#342f2c;color:var(--ink)}.material-card.locked :is(h3,p,.item-stats){color:var(--ink)}}
.site-skip{position:fixed;left:16px;top:-100px;z-index:200;padding:14px 20px;background:var(--paper);color:var(--ink);border:2px solid var(--accent);border-radius:12px}.site-skip:focus{top:12px}#main-content{scroll-margin-top:90px}#main-content:focus{outline:none}#main-content :is(a,button,input,select,textarea,summary):focus-visible,.library-search:focus-within{outline:3px solid var(--accent);outline-offset:3px}#main-content :is(a,button,input,select,textarea,summary){scroll-margin-block:100px}.item-tags button,.item-stats{font-size:12px!important}.item-tags button{min-height:28px}.site-footer{margin-top:42px;padding:24px 0;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:15px;font-size:13px}.site-footer a{color:var(--muted)}.site-info,.site-server-content{max-width:780px;margin:30px auto;padding:24px;line-height:1.8}.site-info h1{font:36px/1.2 Georgia,serif}.chips{flex-wrap:wrap;overflow:visible!important}.site-themes-toggle{display:none}.site-theme-heading{font-size:14px}.site-sidebar{overflow-y:auto}.site-library-group>summary{flex-shrink:0}
@media(prefers-color-scheme:light){:root{--muted:#756055}}
@media(max-width:760px){.site-themes-toggle{display:inline-flex;margin:12px 0;min-height:44px}.chips.site-themes-collapsed .chip:not(.active){display:none}.chips{gap:8px}.bottom-nav small{font-size:11px!important}.site-footer{padding-bottom:25px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media(prefers-color-scheme:dark){:root{--accent:#d79178;--accent-dark:#edb29a}.button:not(.secondary),.chip.active,.library-segments button.active{background:#9e5544;color:#fff}.button:not(.secondary):hover,.button:not(.secondary):focus-visible{background:#854332;color:#fff}.button.secondary,.bottom-nav button.active{background:#49342b;color:#edb29a}}
.site-lesson-outline{padding:22px;border:1px solid var(--line);border-radius:18px;background:var(--paper);min-width:0}
.site-lesson-outline h2{font:23px/1.25 Georgia,serif;margin:10px 0 20px}
.site-lesson-outline .course-lesson-row{padding:12px 7px;gap:9px}
.site-lesson-outline .course-lesson-row b{font-size:12px}
.site-lesson-outline .course-lesson-row small{font-size:11px}
@media(min-width:1300px){.site-lesson-layout{grid-template-columns:minmax(0,1fr) 260px;align-items:start}.site-lesson-outline{position:sticky;top:100px}}
@media(max-width:760px){.site-lesson-outline{display:none}}

/* Web-only palette. A deliberate user choice, independent of Telegram/system theme. */
:root{color-scheme:light;--bg:#f7f5f0;--paper:#fffdf9;--ink:#302924;--muted:#6e625a;--accent:#9e5544;--accent-dark:#854332;--line:#e5ddd3;--soft:#f1e9df;--shadow:0 7px 22px #5b403208;--hero-start:#fffaf2;--hero-end:#f5e4d7;--locked-bg:#eeeae4}
:root[data-site-theme="dark"]{color-scheme:dark;--bg:#22201e;--paper:#2d2926;--ink:#f4ece5;--muted:#c8b8ad;--accent:#d99b83;--accent-dark:#edbda7;--line:#53473f;--soft:#3b322d;--shadow:none;--hero-start:#342b26;--hero-end:#282421;--locked-bg:#34302d}
.site-header,.site-sidebar{background:var(--paper)}
.site-header{box-shadow:0 2px 16px #30292404}
.site-sidebar a.active,.site-library-group>summary.active{background:var(--soft);color:var(--accent-dark)}
.site-welcome,main.shell>.compact-hero,main.shell>.hero:not(.course-hero){padding:34px 36px;margin:0 0 28px;border:1px solid var(--line);border-radius:26px;background:linear-gradient(115deg,var(--hero-start),var(--hero-end))}
.site-welcome h1{margin-top:14px}
.site-highlights button,.card,.like-box,.site-lesson-outline{box-shadow:var(--shadow);border-color:var(--line)}
.site-highlights button:hover{background:color-mix(in srgb,var(--accent) 4%,var(--paper))}
.button:not(.secondary),.chip.active,.library-segments button.active{background:#9e5544!important;color:#fff!important}
.button:not(.secondary):hover,.button:not(.secondary):focus-visible{background:#854332!important;color:#fff!important}
.button.secondary,.lesson-previous,.course-next-note,.bottom-nav button.active{background:var(--soft);color:var(--accent-dark)}
.button.secondary:hover,.button.secondary:focus-visible{background:color-mix(in srgb,var(--accent) 12%,var(--paper));color:var(--accent-dark)}
.bottom-nav,.lesson-navigation,.reading-progress span{background:var(--paper)}
.empty-course-cover{background:linear-gradient(145deg,var(--hero-start),var(--hero-end));color:var(--accent-dark)}
.material-card.locked{background:var(--locked-bg);color:var(--muted);border-color:var(--line)}
.material-card.locked :is(h3,p,.item-stats){color:var(--ink)}
.course-lesson-row.locked{background:var(--locked-bg);color:var(--muted);opacity:1}
.related-material-card.locked{opacity:1;filter:none;background:var(--locked-bg)}
.related-material-card.locked img{filter:grayscale(1);opacity:.5}
.related-material-card.locked:hover{background:var(--locked-bg)}
.course-lesson-row.completed .lesson-number,.course-finish-mark{background:#48634b;color:#fff}
.site-theme-toggle{display:grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:13px;background:var(--paper);color:var(--ink);font-size:21px;cursor:pointer}
.site-theme-toggle:hover{background:var(--soft);border-color:var(--accent)}
.site-theme-toggle:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
:root[data-site-theme="dark"] .test-mode-banner{border-color:var(--line);background:var(--soft);color:var(--ink)}
:root[data-site-theme="dark"] .test-mode-banner small{color:var(--muted)}
:root[data-site-theme="dark"] .test-mode-options{background:var(--paper)}
:root[data-site-theme="dark"] .test-mode-banner button{color:var(--ink)}
:root[data-site-theme="dark"] .test-mode-banner button.active{background:#9e5544;color:#fff}
@media(max-width:760px){.site-welcome,main.shell>.compact-hero,main.shell>.hero:not(.course-hero){padding:24px 20px;border-radius:22px;margin-bottom:22px}.site-welcome h1{font-size:38px}.site-theme-toggle{width:44px;height:44px}.site-account{gap:8px}.site-header .site-account>.button{font-size:10px;padding:10px}.site-highlights{margin-top:0}}
@media(max-width:350px){.site-logo{font-size:19px}.site-header{gap:7px;padding-inline:12px}.site-account{gap:6px}.site-welcome h1{font-size:33px}.site-welcome,main.shell>.compact-hero,main.shell>.hero:not(.course-hero){padding:22px 16px}}
.site-login .site-telegram-options{display:grid;gap:10px;margin:18px 0 22px}.site-login .site-telegram-options #site-telegram-link{margin:0}.site-login .site-telegram-options .button{display:flex;width:100%;padding:12px 14px;text-align:center;line-height:1.4;white-space:normal}.site-login .site-telegram-options p{margin:0;font-size:12px}
