:root{--bg:#fff6f4;--deep:#f6e4e2;--paper:#fff;--soft:#fbecea;--ink:#1c1212;--body:#3e2424;--muted:#6e4848;--sub:#9a7070;--red:#b4232c;--bright:#e23b44;--dark:#7a1520;--gold:#c4a06a;--line:rgba(180,35,44,.16);--shadow:0 12px 28px rgba(28,18,18,.08);--grad:linear-gradient(135deg,#e23b44 0%,#b4232c 55%,#7a1520 100%)}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;background:radial-gradient(circle at 10% 0,#fff 0,#fff6f4 38%,#f9ece9 100%);color:var(--body);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;font-size:15px;line-height:1.75;overflow-x:hidden}body.locked{overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}.shell{width:min(960px,calc(100% - 32px));margin:0 auto}.skip-link{position:fixed;left:16px;top:-60px;z-index:1000;background:#fff;color:var(--dark);padding:8px 12px;border-radius:8px}.skip-link:focus{top:8px}.site-header{position:fixed;z-index:100;left:0;right:0;top:0}.red-brow{height:18px;background:var(--dark);color:#fff;font-size:12px}.brow-row,.brand-row,.quick-row{display:flex;align-items:center;justify-content:space-between;height:100%}.plain-btn{border:0;background:transparent;color:#fff;padding:0 4px}.brand-bar{height:54px;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}.brand-row{height:54px}.brand-home{display:inline-flex;align-items:center;min-height:44px;font-size:16px;font-weight:850;color:var(--dark)}.brand-home img,.fold-brand img,.footer-brand img{height:24px;width:auto;object-fit:contain}.brand-actions{display:flex;align-items:center;gap:8px}.app-link,.menu-btn{height:44px;padding:0 14px;border-radius:12px;border:1px solid var(--line);display:inline-flex;align-items:center;gap:8px;justify-content:center;font-weight:800;font-size:14px}.app-link{background:#fff;color:var(--dark)}.menu-btn{background:var(--grad);color:#fff;box-shadow:0 6px 16px rgba(180,35,44,.18)}.quick-nav{height:44px;background:linear-gradient(90deg,#fbecea,#fff6f4);border-bottom:1px solid var(--line)}.quick-row{justify-content:flex-start;gap:26px}.quick-link{display:inline-flex;align-items:center;gap:8px;height:44px;font-size:13px;font-weight:800;color:var(--dark)}.quick-badge{width:24px;height:24px;display:grid;place-items:center;border:1px solid var(--red);border-radius:7px;background:#fff;color:var(--dark)}.quick-link.is-current .quick-badge{background:var(--dark);color:#fff;border-color:var(--gold);box-shadow:0 6px 16px rgba(180,35,44,.18)}.site-main{padding-top:142px;padding-bottom:72px;min-height:70vh}.breadcrumb{display:flex;align-items:center;gap:8px;margin:0 0 18px;color:var(--sub);font-size:13px}.breadcrumb a{color:var(--dark);text-decoration:underline;text-underline-offset:3px}h1,h2,h3{color:var(--ink);margin:0 0 10px}h1{font-size:24px;line-height:1.3}h2{font-size:20px}h3{font-size:16px}p{margin:0 0 12px}.lead{font-size:17px;color:var(--dark);font-weight:800}.muted{color:var(--muted)}.kicker{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:850;color:var(--dark);margin-bottom:10px}.kicker:before{content:"";width:7px;height:22px;border-radius:99px;background:var(--grad)}.btn-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.btn-primary,.btn-secondary{height:44px;min-width:118px;padding:0 18px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;transition:.18s}.btn-primary{background:var(--grad);color:#fff;box-shadow:0 6px 16px rgba(180,35,44,.18)}.btn-secondary{background:#fff;color:var(--dark);border:1px solid var(--line)}.btn-primary:hover,.menu-btn:hover,.quick-link.is-current:hover .quick-badge,.mobile-bottom .is-current:hover{filter:brightness(1.06);box-shadow:0 0 0 3px rgba(226,59,68,.28),0 10px 24px rgba(122,21,32,.28)}.btn-primary:active,.menu-btn:active,.quick-link.is-current:active .quick-badge,.mobile-bottom .is-current:active{filter:brightness(1.08);box-shadow:0 0 0 4px rgba(196,160,106,.42),0 0 22px rgba(226,59,68,.50)}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--bright);outline-offset:2px}.media-slot{background:#fff9f7;border:1px solid var(--line);border-radius:12px;display:flex;align-items:center;justify-content:center;overflow:hidden}.media-slot img{width:100%;height:100%;object-fit:contain;object-position:center}.media-wide{width:100%;height:168px}.media-160{width:100%;height:160px}.media-square{width:240px;height:176px;max-width:100%}.media-app{width:240px;height:320px;max-width:100%}.media-banner{width:100%;height:200px}.media-icon{width:64px;height:64px;padding:8px}.mast-intro{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:28px;position:relative;overflow:hidden}.mast-intro:after{content:"";position:absolute;right:-45px;top:-60px;width:180px;height:180px;border-radius:50%;border:34px solid rgba(180,35,44,.05)}.mast-intro>*{position:relative;z-index:1}.home-ledger{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-top:16px}.home-ledger article,.section-card,.page-hero{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 22px rgba(28,18,18,.05)}.home-ledger article{padding:20px}.section-card,.page-hero{padding:22px;margin:16px 0}.page-hero{padding:26px}.accent-card{border-top:4px solid var(--red)!important}.stack-list{display:grid;gap:10px;margin-top:14px}.stack-list a,.entry-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}.stack-list a:last-child,.entry-row:last-child{border-bottom:0}.split-uneven{display:grid;grid-template-columns:300px 1fr;gap:22px;align-items:center}.story-pair{display:grid;grid-template-columns:.9fr 1.1fr;gap:14px}.story-pair article{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px}.story-pair article:first-child{transform:translateY(8px)}.marker-list{display:grid;gap:12px}.marker-list article{position:relative;padding:16px 18px 16px 48px;background:#fff;border:1px solid var(--line);border-radius:12px}.marker-list article:before{content:attr(data-mark);position:absolute;left:14px;top:14px;width:24px;height:24px;border-radius:7px;background:var(--soft);border:1px solid var(--line);display:grid;place-items:center;color:var(--dark);font-weight:900}.status-board{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.status-board div{background:var(--soft);border:1px solid var(--line);padding:15px;border-radius:12px}.status-board strong{display:block;color:var(--dark);margin-bottom:4px}.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.topic-grid a{min-height:132px;background:linear-gradient(180deg,#fff,#fff8f6);border:1px solid var(--line);border-radius:12px;padding:16px}.topic-grid strong{display:block;color:var(--ink);font-size:16px;margin-bottom:8px}.note-panel{border-left:4px solid var(--gold);background:var(--soft);padding:16px 18px;border-radius:0 12px 12px 0}.app-wrap{display:grid;grid-template-columns:270px 1fr;gap:22px;align-items:start}.icon-app-row{display:flex;align-items:center;gap:12px;margin-bottom:14px}.copy-sections section{padding:18px 0;border-bottom:1px solid var(--line)}.copy-sections section:first-child{padding-top:0}.copy-sections section:last-child{border-bottom:0;padding-bottom:0}.two-col-copy{display:grid;grid-template-columns:1fr 1fr;gap:14px}.two-col-copy article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px}.faq-list details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:0 16px;margin:10px 0}.faq-list summary{list-style:none;cursor:pointer;min-height:52px;display:flex;align-items:center;font-weight:850;color:var(--ink)}.faq-list summary::-webkit-details-marker{display:none}.faq-list details p{padding:0 0 16px}.site-footer{background:var(--ink);color:#fbecea;border-top:1px solid var(--red);font-size:13px}.footer-inner{padding:34px 0 24px}.footer-brand{display:flex;align-items:center;gap:12px;margin-bottom:24px}.footer-brand strong{font-size:16px}.footer-brand span{display:block;color:#d7b5b5}.footer-groups{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.footer-groups section{display:flex;flex-direction:column;gap:7px}.footer-groups h2{font-size:13px;color:#fff;margin:0 0 6px}.footer-note{margin-top:24px;color:#d7b5b5}.copyright{color:#b99292;margin-bottom:0}.screen-mask{position:fixed;inset:0;background:rgba(28,18,18,.5);z-index:180;opacity:0;visibility:hidden;pointer-events:none;transition:.18s}.screen-mask.is-open{opacity:1;visibility:visible;pointer-events:auto}.fold-panel{position:fixed;z-index:200;right:16px;top:82px;width:420px;max-width:calc(100% - 32px);max-height:68vh;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 22px 60px rgba(28,18,18,.22);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px) scale(.98);transition:.18s;overflow:hidden}.fold-panel.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:none}.fold-head{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid var(--line)}.fold-brand{display:flex;align-items:center;gap:10px;font-weight:850}.close-btn{min-height:44px;padding:0 13px;border:1px solid var(--line);background:#fff;color:var(--dark);border-radius:10px}.fold-scroll{overflow:auto;max-height:calc(68vh - 58px);padding:10px 14px 18px}.fold-scroll section{padding:10px 0;border-bottom:1px solid var(--line)}.fold-scroll section:last-child{border-bottom:0}.fold-scroll h2{font-size:13px;color:var(--sub);margin:0 0 5px}.fold-scroll a{display:grid;grid-template-columns:116px 1fr;gap:10px;padding:9px 0;min-height:44px}.fold-scroll b{color:var(--ink)}.fold-scroll span{color:var(--muted);font-size:13px}.search-panel{position:fixed;z-index:210;left:0;right:0;top:72px;opacity:0;visibility:hidden;pointer-events:none;transition:.18s}.search-panel.is-open{opacity:1;visibility:visible;pointer-events:auto}.search-card{width:min(760px,calc(100% - 32px));margin:0 auto;background:#fff;border:1px solid var(--line);box-shadow:0 20px 50px rgba(28,18,18,.18);border-radius:0 0 14px 14px;padding:20px}.search-head{display:flex;justify-content:space-between;gap:16px;align-items:center}.search-head span{display:block;color:var(--sub);font-size:12px}.search-head strong{color:var(--ink);font-size:18px}.search-input-wrap{display:block;margin:16px 0}.search-input-wrap span{display:block;color:var(--muted);font-size:13px;margin-bottom:6px}.search-input-wrap input{width:100%;height:44px;border:1px solid var(--line);border-radius:10px;padding:0 12px;color:var(--ink);background:#fff}.search-presets{display:flex;gap:8px;flex-wrap:wrap}.search-presets a{min-height:44px;padding:0 14px;display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;color:var(--dark);background:var(--soft)}#searchHint{color:var(--sub);font-size:13px;margin-top:12px}.mobile-bottom{display:none}
@media(max-width:720px){.quick-nav{display:none}.site-main{padding-top:96px;padding-bottom:86px}.brand-actions{gap:6px}.app-link,.menu-btn{padding:0 10px}.fold-panel{top:76px;right:16px;width:90%;max-width:none;max-height:68vh}.fold-scroll{max-height:calc(68vh - 58px)}.search-panel{top:0;bottom:0;background:var(--dark)}.search-card{width:100%;height:100%;border:0;border-radius:0;margin:0;background:var(--dark);color:#fff;padding:22px 16px}.search-head span,.search-input-wrap span,#searchHint{color:#f0caca}.search-head strong{color:#fff}.search-card .close-btn{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}.search-input-wrap input{border-color:rgba(255,255,255,.3);background:#fff}.search-presets a{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.26);color:#fff}.home-ledger,.split-uneven,.story-pair,.app-wrap,.two-col-copy,.topic-grid{grid-template-columns:1fr}.story-pair article:first-child{transform:none}.status-board{grid-template-columns:1fr}.media-square,.media-app{margin:0 auto}.page-hero,.mast-intro,.section-card{padding:18px}.footer-groups{grid-template-columns:1fr 1fr}.fold-scroll a{grid-template-columns:108px 1fr}.mobile-bottom{position:fixed;z-index:120;left:0;right:0;bottom:0;height:calc(48px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#fff;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr)}.mobile-bottom a{display:grid;place-items:center;min-height:48px;font-size:13px;color:var(--muted)}.mobile-bottom a.is-current{background:var(--dark);color:#fff;box-shadow:0 6px 16px rgba(180,35,44,.18)}.site-footer{padding-bottom:48px}}


/* v3: layered paper rhythm */
body{background:linear-gradient(180deg,#fffaf8 0,#fff6f4 36%,#f7e7e4 100%)}
.mast-intro{border-radius:18px;border-left:5px solid var(--red);background:linear-gradient(120deg,#fff 0,#fffaf7 70%,#fbecea 100%)}
.home-ledger{grid-template-columns:.78fr 1.22fr}.home-ledger article:first-child{transform:translateY(10px)}
.section-card{border-radius:16px}.page-hero{border-radius:18px;border-top:4px solid var(--gold)}
.v3-ribbon{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0 0}.v3-ribbon a{padding:9px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--dark);font-weight:800}
.v3-feature{display:grid;grid-template-columns:1fr 260px;gap:20px;align-items:center}.v3-feature.reverse{grid-template-columns:260px 1fr}.v3-feature.reverse .media-slot{order:-1}
.v3-columns{columns:2;column-gap:28px}.v3-columns section{break-inside:avoid;margin:0 0 16px;padding:0 0 16px;border-bottom:1px solid var(--line)}
.v3-track{display:grid;gap:12px}.v3-track article{display:grid;grid-template-columns:100px 1fr;gap:14px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:12px}.v3-track strong{color:var(--dark)}
.v3-callout{background:linear-gradient(135deg,#7a1520,#b4232c);color:#fff;border-radius:14px;padding:20px}.v3-callout h2,.v3-callout h3{color:#fff}
@media(max-width:720px){.v3-feature,.v3-feature.reverse{grid-template-columns:1fr}.v3-feature.reverse .media-slot{order:0}.v3-columns{columns:1}.v3-track article{grid-template-columns:1fr}.home-ledger{grid-template-columns:1fr}.home-ledger article:first-child{transform:none}}
