:root{color-scheme:dark;--ink:#e6ecf7;--muted:#9aa8c2;--line:#313c52;--paper:#0f1420;--wash:#151b29;--card-bg:#161d2c;--input-bg:#0f1420;--input-border:#5a6b8d;--hero-glow:#1b2a4a;--hero-from:#131a29;--hero-to:#0f1420;--brand-soft:#1c2740;--brand-soft-hover:#24324f;--brand-soft-ink:#a8c4ff;--success:#4ade80;--success-soft:#0f2a1c;--danger:#ff8a80;--danger-soft:#33191a;--danger-ink:#0b1220;--badge-bg:#232c3e;--badge-ink:#a3b0c7;--badge-ok-bg:#12301f;--badge-ok-ink:#5fd48b;--download-bg:#12291d;--download-ink:#6ee7a1;--card-shadow:0 6px 18px rgb(0 0 0/45%);--brand-shadow:0 18px 45px rgb(0 0 0/55%);--purchase-border:#2c3a58}:root[data-theme=light]{color-scheme:light;--ink:#172033;--muted:#61708b;--line:#e4e9f2;--paper:#ffffff;--wash:#f7f9fc;--card-bg:#ffffff;--input-bg:#ffffff;--input-border:#cbd5e1;--hero-glow:#dbeafe;--hero-from:#fbfdff;--hero-to:#ffffff;--brand-soft:#eaf1ff;--brand-soft-hover:#dce9ff;--brand-soft-ink:#1e4fb8;--success:#16803d;--success-soft:#effbf2;--danger:#c9372c;--danger-soft:#fff0ef;--danger-ink:#ffffff;--badge-bg:#eef2f7;--badge-ink:#52627b;--badge-ok-bg:#eaf8ee;--badge-ok-ink:#16803d;--download-bg:#effbf2;--download-ink:#146c35;--card-shadow:0 6px 18px rgb(30 55 90/4%);--brand-shadow:0 18px 45px rgb(37 99 235/12%);--purchase-border:#d6e3ff}:root,main{--brand-on-light:#2563eb;--brand-on-light-hover:#1d4ed8;--brand-ink-on-light:#ffffff;--brand-on-dark:#5c8af0;--brand-on-dark-hover:#749cf2;--brand-ink-on-dark:#0b1220;--brand:var(--brand-on-dark);--brand-hover:var(--brand-on-dark-hover);--brand-ink:var(--brand-ink-on-dark)}:root[data-theme=light],:root[data-theme=light] main{--brand:var(--brand-on-light);--brand-hover:var(--brand-on-light-hover);--brand-ink:var(--brand-ink-on-light)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{width:min(1120px,calc(100% - 40px));margin:0 auto}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line);background:var(--paper)}.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:800;letter-spacing:-.03em}.brand-logo{display:block;width:auto;height:28px;max-width:160px;object-fit:contain}.nav{position:relative}.nav-link,.nav-toggle{display:inline-flex;align-items:center;gap:6px;min-height:42px;padding:0 14px;border:0;border-radius:9px;background:var(--brand-soft);color:var(--brand-soft-ink);font-weight:700;list-style:none;cursor:pointer}.nav-toggle::-webkit-details-marker{display:none}.nav-toggle::marker{content:""}.nav-link:hover,.nav-toggle:hover{background:var(--brand-soft-hover)}.nav-link:focus-visible,.nav-toggle:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.nav-link[aria-current=page]{outline:2px solid var(--brand);outline-offset:2px}.nav-menu{position:absolute;top:calc(100% + 8px);left:0;z-index:20;display:grid;min-width:220px;max-height:70vh;overflow-y:auto;padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--card-bg);box-shadow:var(--card-shadow)}.nav-menu a{padding:10px 12px;border-radius:8px}.nav-menu a:hover{background:var(--brand-soft)}.nav-menu a[aria-current=page]{background:var(--brand-soft);color:var(--brand-soft-ink);font-weight:700}.nav-menu-head{font-weight:700;border-bottom:1px solid var(--line);border-radius:8px 8px 0 0}.hero{padding:90px 0 72px;background:radial-gradient(circle at 80% 10%,var(--hero-glow) 0,transparent 32%),linear-gradient(180deg,var(--hero-from) 0,var(--hero-to) 100%)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);grid-gap:48px;gap:48px;align-items:center}.eyebrow{color:var(--brand);font-size:14px;font-weight:700;letter-spacing:.08em}h1{max-width:760px;margin:14px 0 18px;font-size:clamp(38px,6vw,68px);line-height:1.08;letter-spacing:-.055em}h2{margin:0 0 22px;font-size:clamp(28px,3vw,42px);letter-spacing:-.04em}.lead{max-width:680px;color:var(--muted);font-size:19px;line-height:1.8}.section{padding:80px 0}.section-wash{background:var(--wash)}.cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px}.card{padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--card-bg);box-shadow:var(--card-shadow)}.card h3{margin:0 0 10px;font-size:18px}.card p,.delivery li,.faq p{color:var(--muted);line-height:1.7}.delivery{display:grid;grid-gap:10px;gap:10px;margin:0;padding:0;list-style:none}.delivery li{position:relative;padding-left:26px}.delivery li:before{position:absolute;left:0;color:var(--brand);content:"✓";font-weight:800}.richtext{max-width:720px;color:var(--muted);font-size:17px;line-height:1.85}.richtext p{margin:0 0 18px}.richtext p:last-child{margin-bottom:0}.spec-table{width:100%;border-collapse:collapse;text-align:left}.spec-table td,.spec-table th{padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top}.spec-table th{width:34%;color:var(--muted);font-weight:700}.spec-table tr:last-child td,.spec-table tr:last-child th{border-bottom:0}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:16px;gap:16px}.gallery figure{margin:0}.gallery img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:12px;background:var(--wash)}.gallery figcaption{margin-top:8px;color:var(--muted);font-size:14px}.gallery-thumb{display:block;max-width:100%;max-height:120px;width:auto;border-radius:8px}.cta-band{padding:40px 32px;border:1px solid var(--line);border-radius:18px;background:var(--card-bg);text-align:center}.cta-band h2{margin:0 0 10px}.cta-band .lead{margin:0 auto 22px;max-width:620px}.textarea-prose{font-family:inherit;min-height:220px}.advanced{padding:14px 16px;border:1px solid var(--line);border-radius:12px}.advanced summary{cursor:pointer;font-weight:700}.advanced[open] summary{margin-bottom:12px}.purchase-card{padding:28px;border:1px solid var(--purchase-border);border-radius:20px;background:var(--card-bg);box-shadow:var(--brand-shadow)}.price{margin:12px 0;font-size:38px;font-weight:800;letter-spacing:-.04em}.price small{font-size:16px;color:var(--muted);font-weight:500}.form-stack{display:grid;grid-gap:12px;gap:12px}.input,.select,.textarea{width:100%;padding:12px 14px;border:1px solid var(--input-border);border-radius:9px;background:var(--input-bg);color:var(--ink)}.input[type=color]{width:84px;padding:4px;cursor:pointer}.textarea{min-height:150px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.button{display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:0 18px;border:0;border-radius:9px;background:var(--brand);color:var(--brand-ink);font-weight:700}.button:hover{background:var(--brand-hover)}.button:disabled{opacity:.55;cursor:not-allowed}.button-secondary{background:var(--brand-soft);color:var(--brand-soft-ink)}.button-secondary:hover{background:var(--brand-soft-hover)}.button-danger{background:var(--danger);color:var(--danger-ink)}.theme-toggle{display:inline-flex;justify-content:center;align-items:center;width:46px;height:46px;padding:0;border:0;border-radius:9px;background:var(--brand-soft);color:var(--brand-soft-ink)}.theme-toggle:hover{background:var(--brand-soft-hover)}.theme-toggle:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.theme-icon{width:20px;height:20px}.theme-icon.icon-light,:root[data-theme=light] .theme-toggle .icon-dark{display:none}:root[data-theme=light] .theme-toggle .icon-light{display:inline}.hint{color:var(--muted);font-size:14px;line-height:1.6}.message{margin:0;padding:10px 12px;border-radius:8px;font-size:14px}.error{background:var(--danger-soft);color:var(--danger)}.success{background:var(--success-soft);color:var(--success)}.faq{display:grid;grid-gap:12px;gap:12px}.faq details{padding:18px;border:1px solid var(--line);border-radius:10px}.faq summary{font-weight:700;cursor:pointer}.footer{padding:28px 0;border-top:1px solid var(--line);color:var(--muted);font-size:14px}.footer-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px}.footer-tagline{margin:0}.footer-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin:0;padding:0;list-style:none}.footer-links a{color:var(--muted);text-decoration:underline;text-underline-offset:3px}.footer-links a:hover{color:var(--ink)}.preview{display:flex;align-items:center;background:var(--paper)}.preview,.repeat-row{padding:16px;border:1px solid var(--line);border-radius:12px}.repeat-row{display:grid;grid-gap:10px;gap:10px}.repeat-row-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.nav-children{display:grid;grid-gap:10px;gap:10px;padding-left:14px;border-left:2px solid var(--line)}.admin-page{padding:40px 0 70px;background:var(--wash);min-height:100vh}.tabs{display:grid;grid-gap:20px;gap:20px}.tab-list{display:flex;flex-wrap:wrap;gap:6px;padding:6px;border:1px solid var(--line);border-radius:14px;background:var(--card-bg)}.tab{min-height:42px;padding:0 16px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-weight:700;cursor:pointer}.tab:hover{background:var(--brand-soft);color:var(--brand-soft-ink)}.tab:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.tab-active,.tab-active:hover{background:var(--brand);color:var(--brand-ink)}.tab-panel{min-width:0}.panel{padding:24px;border:1px solid var(--line);border-radius:14px;background:var(--card-bg)}.panel+.panel{margin-top:20px}.panel h2,.panel h3{margin-top:0}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.site-row,.spread{justify-content:space-between}.site-row{display:flex;align-items:center;gap:16px;padding:14px 0;border-top:1px solid var(--line)}.site-row:first-of-type{border-top:0}.badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:var(--badge-bg);color:var(--badge-ink);font-size:12px;font-weight:700}.badge-published{background:var(--badge-ok-bg);color:var(--badge-ok-ink)}.download-list{display:grid;grid-gap:10px;gap:10px;margin-top:16px}.html-page{--purchase-bar-h:72px;min-height:100dvh}.page-frame{padding-bottom:calc(var(--purchase-bar-h) + env(safe-area-inset-bottom))}.page-frame-body{display:block;width:100%;height:calc(100dvh - var(--purchase-bar-h));border:0;background:var(--paper)}.checkout-panel{position:fixed;right:0;bottom:calc(var(--purchase-bar-h) + env(safe-area-inset-bottom));left:0;z-index:11;max-height:70dvh;overflow-y:auto;padding:20px;border-top:1px solid var(--line);background:var(--card-bg);box-shadow:var(--card-shadow)}.checkout-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:1120px;margin:0 auto 12px}.checkout-panel .purchase-card{max-width:560px;margin:0 auto}.purchase-bar{position:fixed;right:0;bottom:0;left:0;z-index:10;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;min-height:var(--purchase-bar-h);padding:10px max(20px,env(safe-area-inset-left)) calc(10px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-right));border-top:1px solid var(--line);background:var(--card-bg)}.purchase-bar-brand{font-weight:800;letter-spacing:-.03em}.purchase-bar-price{font-size:20px;font-weight:800}.purchase-bar-price small{font-size:13px;font-weight:500;color:var(--muted)}.download-link{display:flex;justify-content:space-between;gap:12px;padding:14px;border-radius:9px;background:var(--download-bg);color:var(--download-ink);font-weight:700}.download-name,.download-note{min-width:0;overflow-wrap:anywhere}.download-note{font-weight:400;font-size:13px;opacity:.75;text-align:right}@media (max-width:760px){.shell{width:min(100% - 28px,1120px)}.hero{padding:58px 0 48px}.cards,.hero-grid{grid-template-columns:1fr}.section{padding:54px 0}h1{font-size:42px}.topbar-inner{min-height:60px}.site-row{align-items:flex-start;flex-direction:column}.brand-logo{height:24px;max-width:120px}.nav-menu{left:auto;right:0;min-width:200px}.footer-inner{flex-direction:column;align-items:flex-start;gap:12px}.spec-table td,.spec-table th{display:block;width:auto;padding:10px 0}.spec-table th{padding-bottom:0;border-bottom:0}.gallery{grid-template-columns:1fr}.cta-band{padding:30px 20px}}