:root{--ink:#071721;--ink2:#0b2633;--paper:#f5eddd;--muted:#c9c1b0;--gold:#d9aa50;--gold2:#f2d78a;--plato:#8baee8;--aristotle:#9fc87e;--line:rgba(217,170,80,.28);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--measure:74ch}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{margin:0;color:var(--paper);font-family:Georgia,"Times New Roman",serif;background:radial-gradient(circle at 15% -10%,#1d5065 0,transparent 34rem),radial-gradient(circle at 90% 10%,#35264e66 0,transparent 35rem),linear-gradient(180deg,#071721,#02090e 75%,#07131b);line-height:1.78}button,a{font:inherit}a{color:inherit}.readerTop{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:.8rem;padding:calc(.55rem + var(--safe-top)) max(1rem,env(safe-area-inset-right)) .55rem max(1rem,env(safe-area-inset-left));background:#041016f0;border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.back{display:flex;align-items:center;gap:.45rem;text-decoration:none;color:var(--gold2);font-family:Inter,system-ui,sans-serif}.readerTitle{display:grid;line-height:1.15}.readerTitle strong{font-size:.95rem}.readerTitle small{color:#f5eddd78;font-family:Inter,system-ui,sans-serif}.readerTools{display:flex;gap:.4rem;margin-left:auto}.readerTools button{width:2.45rem;aspect-ratio:1;border:1px solid var(--line);border-radius:50%;color:var(--gold2);background:#ffffff08;cursor:pointer}.readingProgress{position:fixed;z-index:60;top:calc(3.55rem + var(--safe-top));left:0;right:0;height:3px;background:#fff1}.readingProgress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold2))}
.page{width:min(calc(100% - 2rem),1160px);margin:auto;padding-bottom:calc(5rem + var(--safe-bottom))}.lessonHero{padding:clamp(4rem,10vw,8rem) 0 clamp(3rem,7vw,5rem);border-bottom:1px solid var(--line)}.eyebrow{margin:0 0 .8rem;color:var(--gold);font:800 .75rem/1.3 Inter,system-ui,sans-serif;letter-spacing:.17em;text-transform:uppercase}.lessonCode{display:inline-block;margin-bottom:1rem;padding:.45rem .65rem;border:1px solid var(--line);border-radius:999px;color:var(--gold2);font:800 .75rem Inter,system-ui,sans-serif}.lessonHero h1{max-width:15ch;margin:0;font-size:clamp(3.2rem,9vw,7rem);line-height:.94;letter-spacing:-.045em;font-weight:500}.subtitle{max-width:760px;margin:1.2rem 0 0;color:#f5edddaa;font-size:clamp(1.1rem,2.4vw,1.4rem)}.problem{max-width:850px;margin:2rem 0 0;padding:1.2rem 1.4rem;border-left:4px solid var(--gold);border-radius:.3rem 1rem 1rem .3rem;color:#f5edddda;background:#0004;font-size:clamp(1.18rem,2.3vw,1.48rem);font-style:normal}
.readingLayout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(2rem,6vw,5rem);align-items:start;padding-top:3rem}.tocCard{position:sticky;top:calc(5rem + var(--safe-top));padding:1rem;border:1px solid var(--line);border-radius:1rem;background:#06151ddd;backdrop-filter:blur(12px);font-family:Inter,system-ui,sans-serif}.tocLabel{margin:0 0 .6rem;color:var(--gold);font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.tocCard nav{display:grid}.tocCard nav a{padding:.55rem .25rem;border-bottom:1px solid #ffffff0d;text-decoration:none;color:#f5eddd9a;font-size:.85rem;line-height:1.35}.tocCard nav a:hover{color:var(--gold2)}.tocActions{display:grid;gap:.5rem;margin-top:1rem}.tocActions button,.tocActions a{padding:.65rem .75rem;border:1px solid var(--line);border-radius:.75rem;color:var(--gold2);background:#0003;text-decoration:none;text-align:center;font-size:.82rem;cursor:pointer}.tocActions button.read{color:#07131a;background:#9bcf86;border-color:#9bcf86}
.article{min-width:0}.article section{max-width:var(--measure);padding:0 0 3.2rem;scroll-margin-top:6rem}.article h2{margin:0 0 1rem;color:#f7efdF;font-size:clamp(2rem,5vw,3.3rem);line-height:1.08;font-weight:500}.article h3{margin:2rem 0 .65rem;color:var(--gold2);font-size:1.35rem}.article p{margin:.8rem 0;color:#f5edddc2;font-size:1.08rem}.article strong{color:#fff3cf}.article em{color:#e8d8aa}.article .focusBox,.article .criticalBox,.article .worksBox{margin:1.5rem 0;padding:1.15rem 1.25rem;border:1px solid var(--line);border-radius:1rem;background:#ffffff08}.article .focusBox{border-left:4px solid var(--gold)}.article .criticalBox{border-left:4px solid #d67b6d}.article .worksBox{border-left:4px solid #8baee8}.article ul{padding-left:1.3rem;color:#f5edddb8}.article li{margin:.55rem 0}.article table{width:100%;border-collapse:collapse;margin:1.4rem 0;font-family:Inter,system-ui,sans-serif;font-size:.9rem}.article th,.article td{padding:.8rem;border:1px solid #ffffff18;text-align:left;vertical-align:top}.article th{color:var(--gold2);background:#0003}
.closing{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2rem;padding-top:3rem;border-top:1px solid var(--line)}.closing>div{padding:1.3rem;border:1px solid var(--line);border-radius:1rem;background:#ffffff08}.closing h2{margin:0;font-size:2rem;font-weight:500}.closing h3{margin:0 0 .8rem;color:var(--gold2);font-weight:500}.closing li{margin:.6rem 0;color:#f5edddb8}.notFound{width:min(calc(100% - 2rem),760px);margin:10vh auto;padding:2rem;border:1px solid var(--line);border-radius:1rem;background:#ffffff09}.notFound h1{font-size:3rem}.notFound a{display:inline-block;padding:.7rem 1rem;border:1px solid var(--line);border-radius:999px;color:var(--gold2);text-decoration:none}.toast{position:fixed;z-index:90;left:50%;bottom:calc(1.2rem + var(--safe-bottom));transform:translate(-50%,1rem);padding:.75rem 1rem;border-radius:999px;color:#07131a;background:var(--gold2);opacity:0;pointer-events:none;transition:.2s;font:800 .9rem Inter,system-ui,sans-serif}.toast.show{opacity:1;transform:translate(-50%,0)}body.large{font-size:118%}
@media(max-width:820px){.readingLayout{grid-template-columns:1fr}.tocCard{position:relative;top:auto}.tocCard nav{grid-template-columns:1fr 1fr;gap:0 .8rem}.closing{grid-template-columns:1fr}}
@media(max-width:560px){.readerTitle small,.back span{display:none}.page{width:min(calc(100% - 1.2rem),1160px)}.tocCard nav{grid-template-columns:1fr}.lessonHero h1{font-size:clamp(3rem,15vw,5rem)}.article p{font-size:1.03rem}}
@media print{.readerTop,.readingProgress,.tocCard,.toast{display:none!important}.page{width:100%;padding:0}.readingLayout{display:block}.lessonHero{padding-top:0}.article section{page-break-inside:avoid}.closing{page-break-before:always}body{background:#fff;color:#111}.article p,.closing li,.subtitle{color:#222}.article h2,.lessonHero h1{color:#000}.problem,.article .focusBox,.article .criticalBox,.article .worksBox,.closing>div{background:#fff;border-color:#999}}
