:root{--color-paper: oklch(97% .012 214);--color-paper-2: oklch(94% .014 214);--color-paper-3: oklch(90% .018 214);--color-ink: oklch(20% .022 214);--color-ink-2: oklch(34% .018 214);--color-muted: oklch(48% .016 214);--color-rule: oklch(80% .018 214);--color-rule-strong: oklch(66% .034 214);--color-grid: oklch(76% .018 214 / .28);--color-mask: oklch(20% .022 214 / .62);--color-accent: oklch(44% .096 207);--color-accent-soft: oklch(90% .036 207);--color-accent-ink: oklch(97% .012 214);--color-focus: oklch(54% .16 207);--color-graphite: oklch(22% .024 214);--color-danger: oklch(45% .14 28);--color-warn: oklch(72% .12 82);--color-warn-soft: oklch(95% .042 82);--font-display: "Space Grotesk", "Noto Sans SC", ui-sans-serif, sans-serif;--font-body: "Noto Sans SC", ui-sans-serif, system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--space-3xs: .25rem;--space-2xs: .5rem;--space-xs: .75rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2rem;--space-xl: 3rem;--space-2xl: 4.5rem;--space-3xl: 7rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-md: 1.25rem;--text-lg: 1.5625rem;--text-xl: 1.953rem;--text-2xl: 2.441rem;--text-display: clamp(2.75rem, 5vw + 1rem, 5.25rem);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.7, 0, .84, 0);--ease-in-out: cubic-bezier(.87, 0, .13, 1);--dur-short: .18s;--dur-medium: .32s;--dur-long: .56s;--rule-hair: 1px;--rule-focus: 2px;--radius-control: 6px;--radius-panel: 8px;--radius-soft: 12px;--page-max: 1240px;--page-gutter: clamp(1rem, 4vw, 2rem)}*{box-sizing:border-box}html,body{overflow-x:clip;scroll-behavior:smooth}body{margin:0;color:var(--color-ink);background:var(--color-paper);font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;text-rendering:optimizeLegibility}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background-image:linear-gradient(var(--color-grid) 1px,transparent 1px),linear-gradient(90deg,var(--color-grid) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:linear-gradient(to bottom,var(--color-mask),transparent 62%);mask-image:linear-gradient(to bottom,var(--color-mask),transparent 62%)}a{color:inherit;text-decoration:none}img,iframe{max-width:100%}button,input,textarea{font:inherit}button,a,input,textarea,.import-btn{transition:border-color var(--dur-short) var(--ease-out),background-color var(--dur-short) var(--ease-out),color var(--dur-short) var(--ease-out),opacity var(--dur-short) var(--ease-out),transform var(--dur-short) var(--ease-out)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,.import-btn:focus-within{outline:var(--rule-focus) solid var(--color-focus);outline-offset:3px}.layout-shell{min-height:100dvh;display:grid;grid-template-rows:auto 1fr auto}.topbar{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-md);min-height:72px;padding:var(--space-sm) var(--page-gutter);border-bottom:var(--rule-hair) solid var(--color-rule);background:color-mix(in oklch,var(--color-paper) 88%,transparent);-webkit-backdrop-filter:blur(14px) saturate(130%);backdrop-filter:blur(14px) saturate(130%)}.topbar__brand{display:flex;align-items:center;min-width:0;gap:var(--space-xs)}.topbar__logo{width:44px;height:44px;flex:0 0 auto;object-fit:contain;border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-control);background:var(--color-paper-2);padding:5px}.topbar__title{font-family:var(--font-display);font-size:var(--text-md);font-weight:700;line-height:1.18;letter-spacing:0;overflow-wrap:anywhere}.topbar__meta{margin:2px 0 0;color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.2;letter-spacing:.04em;text-transform:uppercase}.topbar__nav,.quick-nav nav,.site-footer nav{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2xs)}.topbar__nav a,.quick-nav nav a,.site-footer nav a,.wall-head__link,.home-cta__btn{white-space:nowrap}.topbar__nav a,.quick-nav nav a{min-height:40px;display:inline-flex;align-items:center;justify-content:center;border:var(--rule-hair) solid transparent;border-radius:var(--radius-control);padding:0 var(--space-xs);color:var(--color-ink-2);font-size:var(--text-sm);font-weight:500}.topbar__nav a:hover,.quick-nav nav a:hover,.topbar__nav .router-link-active,.quick-nav nav .router-link-active{border-color:var(--color-rule-strong);color:var(--color-accent);background:var(--color-paper-2)}.main-content{width:min(100%,var(--page-max));margin-inline:auto;padding:var(--space-lg) var(--page-gutter) var(--space-2xl)}.page-grid{display:grid;gap:var(--space-lg)}.quick-nav{display:flex;justify-content:space-between;align-items:center;gap:var(--space-md);width:max-content;justify-self:end;border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-panel);padding:var(--space-xs);background:var(--color-paper-2)}.admin-quick-nav{width:100%;justify-self:stretch}.lang-switch{display:flex;gap:var(--space-2xs)}button,.import-btn{min-height:44px;border:var(--rule-hair) solid var(--color-accent);border-radius:var(--radius-control);padding:0 var(--space-sm);cursor:pointer;color:var(--color-accent-ink);background:var(--color-accent);font-weight:700}button:hover,.import-btn:hover,.home-cta__btn:hover,.wall-head__link:hover{transform:translateY(-1px)}button:active,.import-btn:active,.home-cta__btn:active{transform:translateY(0)}button:disabled{cursor:not-allowed;opacity:.52;transform:none}.lang-switch button,.tab-btn,.btn-secondary,.category-btn{color:var(--color-ink-2);border-color:var(--color-rule);background:var(--color-paper)}.lang-switch button.active,.tab-btn.active,.category-btn.active{color:var(--color-accent);border-color:var(--color-accent);background:var(--color-accent-soft)}.hero-card{min-height:clamp(340px,50dvh,560px);overflow:hidden;border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-panel);background-color:var(--color-paper-3);background-position:center}.hero-card__mask{min-height:inherit;display:grid;align-content:end;gap:var(--space-md);padding:clamp(2rem,7vw,5.5rem);color:var(--color-paper);background:linear-gradient(90deg,#041418e6,#04141894 48%,#0414182e)}.hero-card__mask h1{max-width:12ch;margin:0;font-family:var(--font-display);font-size:var(--text-display);font-weight:700;line-height:1.04;letter-spacing:0;overflow-wrap:anywhere}.hero-card__mask p{max-width:58ch;margin:0;color:var(--color-paper-2);font-size:var(--text-md);line-height:1.55}.section-list,.data-strip,.capability-grid,.pc-stat-grid,.resource-grid,.page-wall{display:grid;gap:var(--space-md)}.section-list,.data-strip,.capability-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pc-stat-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.resource-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.page-wall{grid-template-columns:repeat(2,minmax(0,1fr))}.section-card,.data-card,.capability-card,.wall-head,.page-item,.resource-group,.resource-item,.admin-wrap,.pc-stat-card,.image-editor-card,.admin-token-card,.page-editor{border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-panel);background:var(--color-paper-2)}.section-card,.data-card,.capability-card,.wall-head,.resource-group,.admin-wrap,.pc-stat-card,.admin-token-card,.page-editor{padding:var(--space-md)}.wall-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:var(--space-md)}.wall-head h2,.admin-wrap h2,.home-cta h2{margin:0;font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;line-height:1.12;letter-spacing:0}.wall-head p,.section-card p,.capability-card p,.admin-tip,.data-card__note,.pc-stat-card__note,.admin-quick-nav p,.admin-token-card p{color:var(--color-muted)}.wall-head p,.section-card p,.capability-card p,.home-cta p,.admin-tip,.admin-quick-nav p,.admin-token-card p{margin:0;line-height:1.65}.wall-head__desc{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-xs)}.wall-head__link,.home-cta__btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;border:var(--rule-hair) solid var(--color-accent);border-radius:var(--radius-control);padding:0 var(--space-sm);color:var(--color-accent);background:var(--color-accent-soft);font-weight:700}.page-item,.resource-item{overflow:hidden;color:var(--color-ink);content-visibility:auto;contain-intrinsic-size:320px}.page-item__preview,.resource-item{cursor:zoom-in}.page-item__preview{display:block;width:100%;aspect-ratio:4 / 3;margin:0;padding:0;border:0;background:var(--color-paper-3)}.page-item img,.resource-item img{display:block;width:100%;height:100%}.page-item img{object-fit:contain}.resource-item img{aspect-ratio:4 / 3;height:auto;object-fit:cover;background:var(--color-paper-3)}.page-item__meta,.resource-item span{display:grid;gap:var(--space-2xs);padding:var(--space-sm)}.page-item__meta h3,.resource-group h3,.resource-group__title,.section-card h3,.capability-card h3,.editor-section h3{margin:0;color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;line-height:1.2}.page-item__meta h3,.page-item__meta p,.resource-item span{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical}.page-item__meta h3{min-height:2.4em;-webkit-line-clamp:2}.page-item__meta p{min-height:3.2em;margin:0;color:var(--color-muted);line-height:1.6;-webkit-line-clamp:2}.resource-item span{min-height:3.2em;color:var(--color-ink-2);font-size:var(--text-sm);line-height:1.5;-webkit-line-clamp:2}.tab-row{display:flex;flex-wrap:wrap;gap:var(--space-2xs);margin-block:0 var(--space-sm)}.main-tab-row{margin-bottom:var(--space-sm)}.tab-btn{border-radius:var(--radius-control)}.home-feature{display:grid;gap:var(--space-lg)}.data-card{min-height:176px;display:grid;align-content:space-between}.data-card__label{margin:0;color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase}.data-card h3,.pc-stat-card__value{margin:var(--space-xs) 0;color:var(--color-accent);font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;line-height:1.1}.data-card__note,.pc-stat-card__note{margin:0;font-size:var(--text-sm)}.capability-card{border-top-color:var(--color-accent)}.home-cta{display:flex;justify-content:space-between;align-items:center;gap:var(--space-lg);border:var(--rule-hair) solid var(--color-rule-strong);border-radius:var(--radius-panel);padding:var(--space-lg);color:var(--color-paper);background:var(--color-graphite)}.home-cta p{max-width:68ch;color:var(--color-paper-3)}.home-cta__actions,.btn-row,.product-admin__actions{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.home-cta__btn{color:var(--color-accent-ink);background:var(--color-accent)}.home-cta__btn.ghost,.btn-secondary{color:var(--color-paper);border-color:var(--color-rule-strong);background:transparent}.product-overview{display:grid;gap:var(--space-md)}.pc-stat-card{width:100%;text-align:left;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:default;color:var(--color-ink)}.pc-stat-card.is-action{cursor:pointer}.pc-stat-card.is-action:hover{border-color:var(--color-accent)}.pc-stat-card__label{margin:0;color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;line-height:1.25}.preview-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--space-sm);background:#041418b8}.preview-dialog{position:relative;max-width:min(1200px,96vw);max-height:94dvh;overflow:auto;border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-panel);background:var(--color-paper)}.preview-dialog img{display:block;width:100%;height:auto}.preview-close{position:sticky;top:var(--space-xs);left:calc(100% - 84px);z-index:2;margin:var(--space-xs)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm)}label{display:flex;flex-direction:column;gap:var(--space-2xs);color:var(--color-ink-2);font-size:var(--text-sm);font-weight:700}input,textarea{width:100%;min-height:44px;border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-control);padding:var(--space-xs);color:var(--color-ink);background:var(--color-paper);outline:none}input:focus,textarea:focus{border-color:var(--color-accent)}.editor-section{margin-top:var(--space-lg);padding-top:var(--space-md);border-top:var(--rule-hair) dashed var(--color-rule)}.editor-section.first{margin-top:0;padding-top:0;border-top:0}.section-editor,.section-editor.bilingual{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm);margin-bottom:var(--space-sm)}.page-editor__head{margin-bottom:var(--space-xs);font-weight:700}.import-btn{display:inline-flex;align-items:center;position:relative;overflow:hidden}.import-btn input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.status{min-height:24px;margin:var(--space-sm) 0 0;color:var(--color-accent)}.status--error,.image-editor-card__preview span{color:var(--color-danger)}.product-admin__head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-md)}.product-admin__head code{padding:2px 6px;border-radius:var(--radius-control);color:var(--color-accent);background:var(--color-accent-soft)}.product-admin__actions{justify-content:flex-end;margin-top:0}.product-admin__layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:var(--space-md);margin-top:var(--space-md)}.product-admin__side{display:grid;align-content:start;gap:var(--space-2xs)}.category-btn{width:100%;display:flex;justify-content:space-between;gap:var(--space-xs);text-align:left}.category-btn small{flex:0 0 auto;color:var(--color-muted);font-weight:400}.product-admin__main,.image-editor-card__body{min-width:0}.product-admin__add-form .form-grid__wide,.form-grid__wide{grid-column:1 / -1}.image-editor-card{display:grid;grid-template-columns:180px minmax(0,1fr);gap:var(--space-sm)}.image-editor-card+.image-editor-card{margin-top:var(--space-sm)}.image-editor-card__preview{display:grid;align-content:start;gap:var(--space-2xs)}.image-editor-card__preview img{width:100%;aspect-ratio:4 / 3;border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-control);object-fit:cover;background:var(--color-paper-3)}.btn-danger{border-color:var(--color-danger);background:var(--color-danger)}.admin-token-card{border-color:var(--color-warn);background:var(--color-warn-soft)}.site-footer{width:min(100%,var(--page-max));margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-lg) var(--page-gutter);border-top:var(--rule-hair) solid var(--color-rule);color:var(--color-muted);font-size:var(--text-sm)}.site-footer p{margin:0}.site-footer a{min-height:36px;display:inline-flex;align-items:center;color:var(--color-ink-2)}.loading-view{min-height:40dvh;display:flex;align-items:center;justify-content:center;color:var(--color-muted);font-size:var(--text-base)}@media(max-width:60rem){.quick-nav,.home-cta,.product-admin__head,.site-footer{display:grid;grid-template-columns:1fr;align-items:start}.topbar{position:static;grid-template-columns:1fr;align-items:start;gap:var(--space-xs);min-height:0}.topbar__nav{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.main-content{padding-block:var(--space-md) var(--space-xl)}.section-list,.data-strip,.capability-grid,.page-wall,.form-grid,.section-editor,.section-editor.bilingual,.product-admin__layout,.image-editor-card{grid-template-columns:1fr}.wall-head{grid-template-columns:1fr;align-items:start}}@media(max-width:40rem){.topbar{gap:var(--space-2xs);padding-block:var(--space-2xs)}.topbar__logo{width:32px;height:32px;padding:4px}.topbar__title{overflow:hidden;font-size:var(--text-base);line-height:1.15;white-space:nowrap;text-overflow:ellipsis}.topbar__meta{display:none}.topbar__nav a{min-height:34px;padding-inline:var(--space-2xs);font-size:var(--text-sm)}.quick-nav{justify-self:end;padding:var(--space-3xs)}.lang-switch button,.quick-nav nav a{min-height:36px;padding-inline:var(--space-xs);font-size:var(--text-sm)}.hero-card__mask{padding:var(--space-lg)}.hero-card__mask p{font-size:var(--text-base)}.wall-head__link,.home-cta__btn{width:100%}}@media(prefers-reduced-motion:reduce){html,body{scroll-behavior:auto}*,*:before,*:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}
