:root{--bg:#f3efe6;--paper:#fbf8f1;--paper2:#e9e1d1;--ink:#171713;--text:#29281f;--muted:#6c6756;--gold:#a77d31;--copper:#c39a4a;--line:rgba(23,23,19,.14);--shadow:0 14px 34px rgba(23,23,19,.09);--max:980px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;font-size:15px;line-height:1.72;overflow-x:hidden}body.locked{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.wrap{width:min(var(--max),calc(100% - 32px));margin:0 auto}.utility-bar{height:22px;background:var(--ink);color:#d8b66f;position:fixed;left:0;right:0;top:0;z-index:40;font-size:12px}.utility-inner{height:22px;display:flex;align-items:center;justify-content:space-between}.text-button{border:0;background:transparent;color:#d8b66f;min-height:22px;cursor:pointer}.site-header{height:58px;background:rgba(251,248,241,.97);border-bottom:1px solid var(--line);position:fixed;left:0;right:0;top:22px;z-index:39;backdrop-filter:blur(10px)}.header-inner{height:58px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;min-height:44px}.brand-logo{height:26px;max-width:180px;object-fit:contain}.brand-text{font-weight:800;font-size:17px;letter-spacing:.04em}.header-actions{display:flex;align-items:center;gap:8px}.compact-link,.menu-trigger{height:42px;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer}.menu-trigger{border-color:rgba(167,125,49,.48)}.primary-tabs{height:46px;background:var(--paper);border-bottom:1px solid var(--line);position:fixed;left:0;right:0;top:80px;z-index:38}.tab-inner{height:46px;display:flex;align-items:center;gap:8px}.tab{height:32px;padding:0 15px;display:inline-flex;align-items:center;border-left:3px solid var(--ink);background:#f6f1e7;color:var(--ink);font-size:13px}.tab.active{border-left-color:var(--copper);background:var(--ink);color:#f8e9c0}.site-main{padding-top:150px;min-height:70vh}.hero{padding:34px 0 18px}.eyebrow{font-size:12px;letter-spacing:.12em;color:var(--gold);font-weight:700;text-transform:uppercase}.hero h1,.page-intro h1{font-size:28px;line-height:1.28;margin:10px 0 14px;color:var(--ink);letter-spacing:-.02em}.hero .lead{font-size:18px;color:#453e2d;margin:0 0 10px}.hero p,.page-intro p{max-width:780px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.btn{min-height:42px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ink);font-weight:700}.btn.primary{background:linear-gradient(135deg,#171713 0%,#c39a4a 100%);color:#fff8e7}.btn.secondary{background:var(--paper);color:var(--ink);border-color:rgba(167,125,49,.55)}.btn:hover,.btn:focus-visible,.compact-link:hover,.menu-trigger:hover,.tab:hover{transform:translateY(-1px);outline:none;box-shadow:0 6px 18px rgba(23,23,19,.08)}.section{padding:26px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:16px}.section-head h2{font-size:21px;margin:0;color:var(--ink)}.section-head p{margin:0;color:var(--muted);font-size:13px}.image-slot{background:#eee7d8;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;overflow:hidden}.image-slot img{width:100%;height:100%;object-fit:contain;object-position:center}.slot-wide{height:210px}.slot-medium{height:180px}.slot-tall{height:310px}.slot-banner{height:210px}.split-feature{display:grid;grid-template-columns:1.05fr .95fr;gap:18px}.feature-card,.story-card,.info-card,.status-card,.method-card,.topic-card,.term-card{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow)}.feature-card{padding:20px}.feature-card h3,.story-card h3,.info-card h3,.topic-card h3{font-size:17px;margin:10px 0 8px;color:var(--ink)}.feature-card p,.story-card p,.info-card p,.topic-card p{margin:0;color:#443f30}.stack-list{display:grid;gap:12px}.story-card{padding:18px;border-left:4px solid var(--gold)}.story-card.with-image{display:grid;grid-template-columns:230px 1fr;gap:18px;align-items:center}.fold-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fold-card{background:var(--paper);border:1px solid var(--line);position:relative;padding:22px}.fold-card:after{content:"";position:absolute;right:0;top:0;border-top:26px solid #d9c69d;border-left:26px solid transparent}.fold-card h3{margin:0 0 8px;color:var(--ink)}.timeline{display:grid;gap:10px}.timeline-row{display:grid;grid-template-columns:110px 1fr;gap:16px;align-items:start;background:var(--paper);border:1px solid var(--line);padding:16px}.timeline-state{font-weight:800;color:var(--gold)}.topic-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.topic-card{padding:18px}.center-card{max-width:760px;margin:0 auto;background:var(--paper);border:1px solid var(--line);padding:26px;box-shadow:var(--shadow)}.media-panel{display:grid;grid-template-columns:330px 1fr;gap:24px;align-items:center;background:var(--paper);border:1px solid var(--line);padding:20px}.media-images{display:grid;gap:10px;justify-items:center}.app-icon{width:50px;height:50px;object-fit:contain}.page-intro{padding:22px 0 18px;border-bottom:1px solid var(--line);margin-bottom:22px}.content-shell{padding-bottom:44px}.article-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.info-card{padding:20px}.vertical-list{display:grid;gap:14px}.vertical-item{background:var(--paper);border:1px solid var(--line);padding:20px}.vertical-item h2{font-size:19px;margin:0 0 8px;color:var(--ink)}.right-image-row{display:grid;grid-template-columns:1.2fr 300px;gap:22px;align-items:center;background:var(--paper);border:1px solid var(--line);padding:20px}.method-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.method-card{padding:20px}.method-card h2{font-size:18px;margin:0 0 9px}.terms{display:grid;gap:14px}.term-card{padding:21px}.term-card h2{font-size:18px;margin:0 0 8px;color:var(--ink)}.qa-list{display:grid;gap:10px}.qa-list details{background:var(--paper);border:1px solid var(--line);padding:15px 18px}.qa-list summary{font-weight:800;color:var(--ink);cursor:pointer}.qa-list p{margin:10px 0 0}.site-footer{background:var(--ink);color:#eee8da;border-top:2px solid var(--copper);padding:30px 0 74px}.footer-brand-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:22px;border-bottom:1px solid rgba(255,255,255,.1)}.footer-brand{display:flex;align-items:center;gap:10px}.footer-logo{height:24px;max-width:150px;object-fit:contain}.footer-brand div{display:grid}.footer-brand span{font-size:11px;color:#c8b581}.footer-brand-row p{margin:0;max-width:560px;color:#cfc8b8;font-size:13px}.footer-links{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:24px 0}.footer-links h2{font-size:13px;color:#d9b866;margin:0 0 8px}.footer-links a{display:block;font-size:13px;color:#e9e2d2;padding:4px 0}.footer-note,.footer-copy{font-size:12px;color:#bcb4a1}.footer-copy{padding-top:10px}.overlay{position:fixed;inset:0;background:rgba(12,12,10,.46);opacity:0;visibility:hidden;pointer-events:none;transition:.2s;z-index:60}.overlay.open{opacity:1;visibility:visible;pointer-events:auto}.nav-drawer{position:fixed;right:0;top:0;width:min(390px,88vw);height:100vh;background:var(--paper);z-index:70;transform:translateX(105%);visibility:hidden;pointer-events:none;transition:.24s;box-shadow:-12px 0 40px rgba(0,0,0,.14)}.nav-drawer.open{transform:translateX(0);visibility:visible;pointer-events:auto}.drawer-head{height:70px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 18px}.drawer-brand{display:flex;align-items:center;gap:9px}.drawer-brand img{height:24px;max-width:140px;object-fit:contain}.close-button{min-height:40px;padding:0 12px;border:1px solid var(--line);background:var(--paper);cursor:pointer}.drawer-body{height:calc(100vh - 70px);overflow:auto;padding:12px 18px 26px}.drawer-body section{padding:10px 0 12px}.drawer-body h2{font-size:12px;color:var(--gold);margin:0 0 5px;letter-spacing:.08em}.drawer-body a{display:grid;padding:9px 0;border-bottom:1px solid rgba(23,23,19,.07)}.drawer-body b{font-size:14px}.drawer-body span{font-size:12px;color:var(--muted)}.search-panel{position:fixed;left:0;right:0;top:80px;z-index:68;visibility:hidden;pointer-events:none;opacity:0;transform:translateY(-10px);transition:.2s}.search-panel.open{visibility:visible;pointer-events:auto;opacity:1;transform:translateY(0)}.search-box{width:min(680px,calc(100% - 32px));margin:0 auto;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);padding:20px}.search-head{display:flex;align-items:center;justify-content:space-between}.search-box p{color:var(--muted)}.search-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.search-grid a{min-height:42px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);background:#f3eee3}.mobile-nav{display:none}
@media(max-width:760px){.primary-tabs{display:none}.site-main{padding-top:105px;padding-bottom:58px}.hero{padding-top:26px}.hero h1,.page-intro h1{font-size:24px}.split-feature,.fold-grid,.topic-grid,.article-columns,.method-grid,.media-panel,.right-image-row,.story-card.with-image{grid-template-columns:1fr}.story-card.with-image{gap:12px}.timeline-row{grid-template-columns:1fr;gap:4px}.media-images{max-width:330px;margin:0 auto}.footer-brand-row{align-items:flex-start;flex-direction:column}.footer-links{grid-template-columns:repeat(2,1fr)}.search-panel{top:0;height:100vh;background:var(--ink);display:flex;align-items:flex-start;padding-top:72px}.search-box{background:var(--ink);color:#f2e5bf;border-color:rgba(195,154,74,.45)}.search-box p{color:#d7c49b}.search-grid{grid-template-columns:repeat(2,1fr)}.search-grid a{background:#24231e;color:#f2e5bf;border-color:rgba(195,154,74,.35)}.mobile-nav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:50;background:var(--paper);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.mobile-nav a{height:49px;display:flex;align-items:center;justify-content:center;font-size:12px}.mobile-nav a.active{background:var(--ink);color:#e7c77c}.site-footer{padding-bottom:86px}.slot-wide,.slot-banner{height:180px}.slot-tall{height:290px}}
@media(max-width:440px){.wrap{width:calc(100% - 32px)}.compact-link,.menu-trigger{padding:0 11px}.header-actions{gap:5px}.hero-actions{display:grid}.btn{width:100%}.footer-links{grid-template-columns:1fr 1fr}.search-grid{grid-template-columns:1fr 1fr}}
