*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#000;color:#ddd;font:16px/1.75 system-ui,-apple-system,"Microsoft YaHei",sans-serif;overflow-x:hidden}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}a,button,input{outline-offset:3px}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #fff}a:hover{color:#fff}p{margin:0 0 1.15em}h1,h2,h3{line-height:1.3;color:#f7f7f7}h1{font-size:clamp(28px,3vw,34px);margin:.25em 0 .55em}h2{font-size:clamp(22px,2.5vw,28px);margin:0 0 20px}h3{font-size:19px;margin:0 0 13px}.wrap{width:min(1240px,calc(100% - 48px));margin:auto}.site-head{position:sticky;top:0;background:#050505;border-bottom:1px solid rgba(255,255,255,.12);z-index:40}.brand-bar{height:72px;display:flex;align-items:center;gap:24px}.brand{display:inline-flex;align-items:center;gap:9px;white-space:nowrap;color:#fff;font-size:23px}.brand img{display:block;height:32px;width:auto;max-width:116px;object-fit:contain}.brand-sub{display:flex;flex-direction:column;font-size:12px;line-height:1.4;letter-spacing:.1em;color:#a5a5a5}.brand-sub strong{color:#c7c7c7}.top-actions{margin-left:auto;display:flex;align-items:center;gap:8px;white-space:nowrap}.top-actions button,.top-actions a,.panel-head button{border:1px solid rgba(255,255,255,.4);border-radius:5px;background:transparent;color:#f7f7f7;padding:8px 14px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.top-actions a{background:#f7f7f7;color:#000}.top-actions a:hover{background:#ddd;color:#000}.main-nav{border-top:1px solid rgba(255,255,255,.12)}.main-nav .wrap{display:flex;gap:clamp(10px,2vw,25px);height:48px;align-items:center;white-space:nowrap}.main-nav a{font-size:14px;padding:10px 2px;border-bottom:2px solid transparent}.main-nav a.active,.main-nav a:hover{border-bottom-color:#ddd;color:#fff}main{padding-bottom:66px;min-height:60vh}section{min-width:0}.section{padding:58px 0;border-bottom:1px solid rgba(255,255,255,.12)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}.section-head p{max-width:660px;color:#a5a5a5}.eyebrow{font-size:12px;letter-spacing:.13em;color:#c7c7c7}.lead{max-width:830px;font-size:17px;color:#ddd}.intro{padding:46px 0 35px;border-bottom:1px solid rgba(255,255,255,.12)}.intro .lead{max-width:850px}.links,.quicklinks{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.links a,.quicklinks a,.btn{border:1px solid rgba(255,255,255,.4);padding:9px 17px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:5px}.links a:first-child,.btn.primary{background:#f7f7f7;color:#000}.links a:hover,.quicklinks a:hover,.btn:hover{background:#1a1a1a;color:#fff}.links a:first-child:hover,.btn.primary:hover{background:#ddd;color:#000}.media{margin:0 0 24px;text-align:center}.media img{width:100%;height:auto;max-width:100%;object-fit:contain;object-position:center;display:block;margin:auto}.hero .media img{max-height:300px;width:auto;max-width:100%}.hero .hero-copy{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:28px 0 36px}.hero-copy p{max-width:570px}.four-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.tile,.block,.status,.step{padding:22px;background:#0b0b0b;border:1px solid rgba(255,255,255,.12);border-radius:7px;min-width:0}.tile p,.block p,.status p{color:#ddd}.tile a,.text-link{display:inline-block;color:#f7f7f7;border-bottom:1px solid #a5a5a5;padding-bottom:2px}.two-col{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:35px;align-items:start}.two-col.has-media{grid-template-columns:minmax(0,.38fr) minmax(0,.62fr)}.news-row,.chapter,.strip{padding:22px 0;border-top:1px solid rgba(255,255,255,.18)}.news-row h3,.chapter h2,.strip h3{margin:0 0 10px}.news-row p,.chapter p{max-width:850px}.chapter{max-width:900px}.prose{max-width:850px}.chapters .chapter:nth-child(2n){margin-left:auto}.long-body{display:grid;grid-template-columns:minmax(0,850px) minmax(180px,1fr);gap:36px}.aside-box{padding:20px;border:1px solid rgba(255,255,255,.12);background:#121212}.aside-box a{display:block;padding:8px 0}.badge{font-size:12px;display:inline-block;border:1px solid rgba(255,255,255,.4);border-radius:3px;padding:2px 8px;color:#c7c7c7}.stage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.app-pair{display:flex;align-items:center;gap:14px;margin-bottom:18px}.app-pair img{width:auto;height:auto;max-width:64px;max-height:64px;object-fit:contain}.app-media img{max-height:420px;width:auto;max-width:100%}.slate-row{display:grid;grid-template-columns:170px 1fr;gap:18px;padding:23px 0;border-top:1px solid rgba(255,255,255,.15)}.slate-row p{max-width:800px}.site-footer{background:#050505;border-top:1px solid rgba(255,255,255,.12);padding:42px 0;color:#a5a5a5}.footer-brand{margin-bottom:25px}.footer-brand span{margin-left:14px;font-size:12px;letter-spacing:.13em}.footer-brand p{margin-top:10px}.footer-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:23px}.footer-grid h3{font-size:15px;color:#f7f7f7}.footer-grid a{display:block;font-size:14px;margin-bottom:8px}.legal{font-size:13px;margin:24px 0 0}.overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:60}.overlay[hidden]{display:none}.panel{visibility:hidden;pointer-events:none;position:fixed;top:72px;left:0;right:0;z-index:70;background:#121212;border:1px solid rgba(255,255,255,.25);max-height:min(70vh,730px);overflow-y:auto;overscroll-behavior:contain}.panel.is-open{visibility:visible;pointer-events:auto}.panel-inner{padding:18px 0 27px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.panel-head h2{margin:0;font-size:22px}.menu-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.menu-grid section{min-width:0}.menu-grid a{display:block;border-bottom:1px solid rgba(255,255,255,.12);padding:8px 0}.menu-grid strong,.menu-grid small{display:block}.menu-grid small{font-size:12px;color:#a5a5a5;line-height:1.55}.search-panel .panel-inner{max-width:580px}.search-panel label{display:block;margin-bottom:6px}.search-panel input{width:100%;background:#050505;border:1px solid #777;color:#fff;padding:10px 12px;border-radius:5px;min-height:44px}.hint{font-size:13px;color:#a5a5a5;margin-top:10px}.bottom-nav{display:none}@media(max-width:1100px){.main-nav a{font-size:13px}.main-nav a:nth-child(n+7){display:none}.four-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:780px){.wrap{width:calc(100% - 32px)}.site-head .brand-bar{height:60px;gap:9px}.brand{font-size:20px}.brand img{height:28px;max-width:74px}.brand-sub,.main-nav,.desktop-app{display:none}.top-actions{gap:5px}.top-actions button,.top-actions a{padding:8px 9px;min-width:44px;font-size:13px}.panel{top:60px}.hero .hero-copy,.two-col,.two-col.has-media,.long-body{grid-template-columns:1fr;gap:18px}.section{padding:37px 0}.section-head{display:block}.section-head p{margin-top:10px}.bottom-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;bottom:0;left:0;right:0;padding-bottom:env(safe-area-inset-bottom);min-height:56px;background:#0b0b0b;border-top:1px solid #444;z-index:50}.bottom-nav a,.bottom-nav button{display:flex;align-items:center;justify-content:center;background:transparent;border:0;color:#ddd;font-size:12px;min-height:56px;padding:5px 2px}.bottom-nav a:hover,.bottom-nav button:hover{color:#fff;background:#1a1a1a}main{padding-bottom:95px}.site-footer{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.app-media img{max-height:360px}.slate-row{grid-template-columns:1fr;gap:4px}.menu-grid{grid-template-columns:1fr;gap:12px}.panel{max-height:70vh}.panel-inner{padding-bottom:25px}}@media(max-width:480px){.four-grid,.stage-grid,.footer-grid{grid-template-columns:1fr}.footer-grid{gap:12px}.tile,.block,.status{padding:18px}.brand{gap:5px}.brand img{max-width:46px}.top-actions button,.top-actions a{padding:7px;font-size:12px}.hero .media img{max-height:300px}}
.two-col.has-media:not(:has(.media)){grid-template-columns:1fr}.two-col.has-media>div:empty{display:none}.section:empty{display:none}
