
:root{--bg:#0B1F33;--bg2:#0C5A8A;--ridge:#073D59;--fg:#F6F4E8;--mute:#B1BABD;--line:rgba(246,244,232,.16);--acc:#F5C56B;--card:rgba(7,61,89,.55);--cta:#EF4444}
*{box-sizing:border-box}html{background:#0a3a5c}
body{margin:0;color:var(--fg);font:18px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:linear-gradient(180deg,var(--bg) 0,var(--bg) 220px,#0a3a5c 100%) fixed}
header,main,footer{max-width:72rem;margin:0 auto;padding-left:20px;padding-right:20px}
header{display:flex;flex-wrap:wrap;gap:8px 22px;align-items:center;padding-top:16px;padding-bottom:12px;border-bottom:1px solid var(--line)}
a.brand{display:flex;align-items:center;gap:10px;color:var(--fg);text-decoration:none;font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:.95rem}
a.brand img{width:40px;height:40px;border-radius:50%}nav{margin-left:auto}nav a{margin-left:18px;color:var(--mute);text-decoration:none}nav a:hover{color:var(--acc)}
h1{font-size:1.9rem;line-height:1.25;margin:1.4rem 0 .4rem}h2{font-size:1.4rem;margin:2.2rem 0 .5rem}h3{font-size:1.15rem;margin:1.6rem 0 .3rem;color:var(--acc)}
a{color:var(--acc)}.meta{color:var(--mute);font-size:.9rem}.lead{font-size:1.1rem;color:var(--mute)}

.hero .cap{color:var(--mute);letter-spacing:.3em;font-size:.8rem;margin-top:16px}.hero h1{font-size:2.3rem;margin:.3rem 0}.hero .tag{font-size:1.25rem}.hero .tag b{color:var(--acc)}
.btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:22px}
.btn{display:inline-block;border-radius:999px;padding:10px 22px;font-weight:700;text-decoration:none}.btn.sub{background:var(--cta);color:#fff}.btn.ghost{border:2px solid var(--acc);color:var(--acc)}
.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:12px 0}
.pillar{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px 16px}.pillar b{color:var(--acc);letter-spacing:.1em;font-size:.85rem}
.problem{background:var(--card);border:1px solid var(--line);border-left:5px solid var(--acc);border-radius:10px;padding:12px 16px;margin:14px 0}
.problem .tag{display:inline-block;font-size:.75rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--acc)}
.answer{color:var(--acc);font-weight:700}.note{color:var(--mute);font-style:italic}
details{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:8px 14px;margin:12px 0}summary{cursor:pointer;font-weight:700}
.video{position:relative;padding-top:56.25%;margin:18px 0;border-radius:10px;overflow:hidden;background:#000}.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.cta{border:1px solid var(--line);background:var(--card);border-radius:10px;padding:14px 16px;margin:28px 0}
table{border-collapse:collapse;margin:12px 0;width:100%;font-size:.95rem}th,td{border:1px solid var(--line);padding:6px 10px;text-align:left}

footer{color:var(--mute);font-size:.85rem;padding-top:24px;padding-bottom:40px;border-top:1px solid var(--line);margin-top:40px}
.hero{display:grid;grid-template-columns:auto 1fr;gap:12px 36px;align-items:center;text-align:left;padding:36px 0 24px}
.hero .logo{width:168px;height:168px;border-radius:50%;box-shadow:0 0 0 3px var(--acc)}.hero .btns{justify-content:flex-start}
.hero h1{font-size:2.7rem}.hero .cap{margin-top:0}
.home-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:40px;align-items:start}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin:12px 0}
a.card{display:block;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px;text-decoration:none;color:var(--fg);transition:border-color .15s,transform .15s}
a.card:hover{border-color:var(--acc);transform:translateY(-2px)}a.card .t{display:block;font-weight:800;font-size:1.08rem;line-height:1.3;color:var(--acc);margin:4px 0 8px}
a.card .d{display:block;font-size:.92rem;color:var(--mute);line-height:1.5}a.card .k{font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.side h2{margin-top:0}.side .pillars{grid-template-columns:1fr}
.art{display:grid;grid-template-columns:minmax(0,46rem) 17rem;gap:48px;justify-content:center;align-items:start}.art article{min-width:0}
aside.toc{position:sticky;top:16px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-top:24px;font-size:.95rem}
aside.toc b{display:block;color:var(--acc);letter-spacing:.1em;font-size:.8rem;text-transform:uppercase;margin-bottom:8px}
aside.toc ol{margin:0 0 14px;padding-left:1.1em}aside.toc li{margin:4px 0}aside.toc a{color:var(--fg);text-decoration:none}aside.toc a:hover{color:var(--acc)}
aside.toc .btn{display:block;text-align:center;margin-top:8px;padding:9px 12px}.prose{max-width:46rem;margin:0 auto}
.foot{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px}.foot b{display:block;color:var(--fg);margin-bottom:6px}.foot a{display:block;color:var(--mute);margin:3px 0}
.hero>div,.home-grid>*{min-width:0}.cards{grid-template-columns:repeat(auto-fill,minmax(min(250px,100%),1fr))}
@media (max-width:900px){.art,.home-grid{grid-template-columns:1fr}aside.toc{position:static;order:-1;margin-top:12px}.hero{grid-template-columns:1fr;text-align:center;justify-items:center}.hero .btns{justify-content:center}.hero h1{font-size:2.1rem}.foot{grid-template-columns:1fr}}
.katex-display{overflow-x:auto;overflow-y:hidden}
