@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.w-full{width:100%}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--brand-cream:#f7e9d8;--brand-peach:#ffb4ab;--brand-coral:#e94928;--brand-tomato:#ff6443;--brand-ink:#525254;--coral-700:#a8341a;--coral-300:#ff8a6e;--warm-100:#fff4e1;--warm-200:#f7e9d8;--warm-300:#ecddc8;--ink-mute:#9a938d;--ink-soft:#6e6a66;--warm-800:#3a3633;--warm-820:#3a2a26;--warm-850:#2a2725;--warm-900:#1f1d1b;--warm-950:#171514;--cream-bright:#fbf3e9;--cream-soft:#c9c1b8;--cream-mute:#8e8881;--demo-rogue:#3a6;--chevron-light:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%236E6A66' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M4 6l4 4 4-4'/></svg>");--chevron-dark:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23C9C1B8' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M4 6l4 4 4-4'/></svg>");--green-700:#2e6e2e;--green-500:#3a8a3a;--green-300:#6fbf6f;--green-tint:#e4f1e1;--green-tint-dark:#22331f;--amber-700:#9c5a14;--amber-300:#f2b27a;--amber-tint:#fbead6;--amber-tint-dark:#3a2c16;--crit-tint:#fbe2da;--crit-tint-dark:#3a201a;--a-ink-04:#5252540a;--a-ink-08:#52525414;--a-ink-16:#52525429;--a-ink-30:#5252544d;--a-ink-35:#52525459;--a-ink-60:#52525499;--a-coral-16:#e9492829;--a-coral-22:#e9492838;--a-coral-25:#e9492840;--a-coral-60:#e9492899;--a-cream-08:#f7e9d814;--a-cream-16:#f7e9d829;--a-cream-28:#f7e9d847;--a-cream-78:#f7e9d8c7;--s-0:0;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--s-10:128px;--control-sm:36px;--control-md:44px;--control-lg:52px;--hit-min:44px;--icon-sm:16px;--icon-md:20px;--icon-lg:24px;--icon-xl:48px;--r-1:6px;--r-2:10px;--r-3:14px;--r-4:20px;--r-5:28px;--r-pill:999px;--bw-1:1px;--bw-2:2px;--focus-w:2px;--focus-offset:3px;--z-base:0;--z-raised:10;--z-sticky:100;--z-header:200;--z-scrim:900;--z-drawer:1000;--z-modal:1100;--z-sheet:1100;--z-toast:1300;--z-grain:80;--z-progress:1400;--z-cursor:1500;--d-instant:.1s;--d-fast:.2s;--d-base:.3s;--d-slow:.5s;--d-spin:.8s;--d-progress:60ms;--d-mask-timeout:5s;--d-toast:4s;--d-loop-scan:2.8s;--d-loop-shimmer:1.6s;--d-loop-cue:2s;--d-loop-marquee:38s;--e-out-expo:cubic-bezier(.16,1,.3,1);--e-out-quart:cubic-bezier(.25,1,.5,1);--e-out-back:cubic-bezier(.34,1.56,.64,1);--e-in-out:cubic-bezier(.4,0,.2,1);--e-linear:linear;--f:"Jost",system-ui,-apple-system,sans-serif;--f-mono:ui-monospace,SFMono-Regular,Menlo,monospace;--fs-display:clamp(4rem,8vw,8.75rem);--fs-h1:clamp(2.5rem,5.4vw,5rem);--fs-h2:clamp(2.125rem,4.6vw,4rem);--fs-h3:clamp(1.375rem,2vw,1.875rem);--fs-h4:1.125rem;--fs-lead:clamp(1.0625rem,1.3vw,1.3125rem);--fs-body:.9375rem;--fs-caption:.8125rem;--fs-micro:.6875rem;--fs-nano:.625rem;--fs-primary-label-min:1.1875rem;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-black:800;--fw-primary-label:700;--lh-tight:1.08;--lh-snug:1.3;--lh-body:1.5;--lh-loose:1.6;--mobile-w:380px;--canvas:var(--brand-cream);--surface:var(--warm-100);--surface-2:var(--brand-peach);--surface-sunken:var(--warm-300);--surface-dim:var(--warm-300);--fg:var(--brand-ink);--fg-soft:var(--ink-soft);--fg-mute:var(--ink-mute);--on-action:var(--warm-100);--on-accent:var(--warm-100);--line:var(--a-ink-16);--line-strong:var(--a-ink-30);--line-soft:var(--a-ink-08);--accent:var(--brand-coral);--accent-text:var(--coral-700);--action:var(--brand-coral);--action-hover:var(--coral-700);--action-sm:var(--coral-700);--focus:var(--coral-700);--logo-cutout:var(--surface-2);--select-chevron:var(--chevron-light);--positive:var(--green-700);--positive-pip:var(--green-500);--positive-surface:var(--green-tint);--caution:var(--amber-700);--caution-pip:var(--brand-tomato);--caution-surface:var(--amber-tint);--critical:var(--coral-700);--critical-pip:var(--brand-coral);--critical-surface:var(--crit-tint);--info:var(--ink-soft);--info-pip:var(--ink-soft);--info-surface:var(--warm-300);--critical-fill:var(--coral-700);--toast-bg:var(--warm-900);--toast-fg:var(--cream-bright);--toast-accent:var(--coral-300);--toast-positive:var(--green-300);--caution-fill:var(--brand-tomato);--on-caution:var(--warm-950);--viewfinder-1:var(--warm-900);--viewfinder-2:var(--warm-800);--on-viewfinder:var(--cream-bright);--viewfinder-reticle:var(--brand-peach);--shadow-sm:0 1px 2px var(--a-ink-08);--shadow-md:0 8px 16px -8px var(--a-ink-30), 0 2px 6px -2px var(--a-ink-16);--shadow-lg:0 30px 60px -30px var(--a-ink-30), 0 12px 22px -16px var(--a-ink-30);--shadow-text:0 2px 8px var(--a-ink-60);--scrim:var(--a-ink-35)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--canvas:var(--warm-900);--surface:var(--warm-850);--surface-2:var(--warm-820);--surface-sunken:var(--warm-950);--surface-dim:var(--warm-800);--fg:var(--cream-bright);--fg-soft:var(--cream-soft);--fg-mute:var(--cream-mute);--on-action:var(--warm-100);--on-accent:var(--warm-950);--line:var(--a-cream-16);--line-strong:var(--a-cream-28);--line-soft:var(--a-cream-08);--accent:var(--brand-coral);--accent-text:var(--coral-300);--action:var(--brand-coral);--action-hover:var(--coral-700);--action-sm:var(--coral-700);--focus:var(--coral-300);--logo-cutout:var(--surface-2);--select-chevron:var(--chevron-dark);--positive:var(--green-300);--positive-pip:var(--green-500);--positive-surface:var(--green-tint-dark);--caution:var(--amber-300);--caution-pip:var(--brand-tomato);--caution-surface:var(--amber-tint-dark);--critical:var(--coral-300);--critical-pip:var(--brand-coral);--critical-surface:var(--crit-tint-dark);--info:var(--fg-soft);--info-pip:var(--fg-soft);--info-surface:var(--warm-800);--shadow-sm:0 1px 2px #17151466;--shadow-md:0 8px 16px -8px #17151480, 0 2px 6px -2px #17151466;--shadow-lg:0 30px 60px -30px #17151499, 0 12px 22px -16px #17151480;--scrim:#1715148c}}[data-theme=dark]{--canvas:var(--warm-900);--surface:var(--warm-850);--surface-2:var(--warm-820);--surface-sunken:var(--warm-950);--surface-dim:var(--warm-800);--fg:var(--cream-bright);--fg-soft:var(--cream-soft);--fg-mute:var(--cream-mute);--on-action:var(--warm-100);--on-accent:var(--warm-950);--line:var(--a-cream-16);--line-strong:var(--a-cream-28);--line-soft:var(--a-cream-08);--accent:var(--brand-coral);--accent-text:var(--coral-300);--action:var(--brand-coral);--action-sm:var(--coral-700);--action-hover:var(--coral-700);--focus:var(--coral-300);--logo-cutout:var(--surface-2);--select-chevron:var(--chevron-dark);--positive:var(--green-300);--positive-pip:var(--green-500);--positive-surface:var(--green-tint-dark);--caution:var(--amber-300);--caution-pip:var(--brand-tomato);--caution-surface:var(--amber-tint-dark);--critical:var(--coral-300);--critical-pip:var(--brand-coral);--critical-surface:var(--crit-tint-dark);--info:var(--fg-soft);--info-pip:var(--fg-soft);--info-surface:var(--warm-800);--shadow-sm:0 1px 2px #17151466;--shadow-md:0 8px 16px -8px #17151480, 0 2px 6px -2px #17151466;--shadow-lg:0 30px 60px -30px #17151499, 0 12px 22px -16px #17151480;--scrim:#1715148c}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html,body{background:var(--canvas);color:var(--fg);font-family:var(--f);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0;font-weight:400}body{line-height:var(--lh-body);letter-spacing:-.003em;overflow-x:hidden}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}::selection{background:var(--accent);color:var(--on-accent)}:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{top:var(--s-2);left:var(--s-2);z-index:var(--z-toast);background:var(--action-sm);color:var(--on-action);padding:var(--s-2) var(--s-4);border-radius:var(--r-2);transition:transform var(--d-fast) var(--e-out-expo);position:fixed;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.progress{height:3px;z-index:var(--z-progress);background:var(--a-ink-08);pointer-events:none;position:fixed;top:0;left:0;right:0}.progress i{background:var(--accent);width:0;height:100%;transition:width var(--d-progress) var(--e-linear);will-change:width;display:block}.grain{pointer-events:none;z-index:var(--z-grain);mix-blend-mode:multiply;opacity:.045;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.7 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");position:fixed;inset:0}[data-theme=dark] .grain{mix-blend-mode:screen;opacity:.06}.cursor{border:var(--bw-2) solid var(--fg);pointer-events:none;width:34px;height:34px;z-index:var(--z-cursor);mix-blend-mode:difference;color:var(--surface);transition:width var(--d-base) var(--e-out-expo),height var(--d-base) var(--e-out-expo);border-radius:50%;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor:before{content:"";background:var(--surface);opacity:.85;border-radius:50%;width:4px;height:4px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cursor.is-interactive{background:var(--accent);border-color:var(--accent);width:64px;height:64px}.cursor.is-interactive:before{opacity:0}.cursor.is-interactive .label{opacity:1;transform:scale(1)}.cursor .label{font-size:var(--fs-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--on-accent);opacity:0;transition:opacity var(--d-fast),transform var(--d-fast);place-items:center;font-weight:600;display:grid;position:absolute;inset:0;transform:scale(.6)}@media (hover:none),(pointer:coarse){.cursor{display:none}}.hecho-logo{width:auto;height:1em;color:var(--accent);display:block}.site-header{z-index:var(--z-header);background:var(--surface-2);transition:transform var(--d-base) var(--e-out-expo),background var(--d-fast) ease;padding-top:env(safe-area-inset-top);position:fixed;top:0;left:0;right:0}.site-header .inner{padding:var(--s-3) var(--s-6);color:var(--accent-text);justify-content:space-between;align-items:center;gap:var(--s-5);display:flex}.site-header.scrolled{background:var(--surface-2)}@supports (color:color-mix(in lab, red, red)){.site-header.scrolled{background:color-mix(in srgb,var(--surface-2) 94%,transparent)}}.site-header.scrolled{-webkit-backdrop-filter:saturate(140%)blur(10px);backdrop-filter:saturate(140%)blur(10px)}.brand{color:var(--accent);align-items:center;line-height:1;display:inline-flex}.brand .hecho-logo{height:28px}.nav{gap:var(--s-5);color:var(--accent-text);font-size:var(--fs-micro);letter-spacing:.06em;text-transform:uppercase;flex-wrap:wrap;flex:1;justify-content:center;font-weight:600;display:flex}.nav button{padding:var(--s-1) 2px;position:relative}.nav button:after{content:"";transform-origin:100%;height:1px;transition:transform var(--d-base) var(--e-out-expo);background:currentColor;position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(0)}.nav button:hover:after,.nav button.is-current:after{transform-origin:0;transform:scaleX(1)}.meta-right{align-items:center;gap:var(--s-3);color:var(--accent-text);font-size:var(--fs-micro);letter-spacing:.2em;text-transform:uppercase;font-weight:600;display:flex}.theme-toggle{align-items:center;gap:var(--s-2);border:var(--bw-1) solid var(--accent-text);color:var(--accent-text);border-radius:var(--r-pill);padding:var(--s-1) var(--s-3);min-height:var(--control-sm);font-size:var(--fs-micro);letter-spacing:.12em;text-transform:uppercase;font-weight:600;display:inline-flex}.theme-toggle svg{width:var(--icon-sm);height:var(--icon-sm)}.display,h1,h2,h3,h4{font-family:var(--f);color:var(--fg);letter-spacing:-.025em;text-wrap:balance;margin:0}.display{font-size:var(--fs-display);letter-spacing:-.035em;font-weight:800;line-height:.92}h1{font-size:var(--fs-h1);font-weight:800;line-height:1.06}h2{font-size:var(--fs-h2);line-height:var(--lh-tight);letter-spacing:-.03em;font-weight:800}h3{font-size:var(--fs-h3);font-weight:700;line-height:1.18}h4{font-size:var(--fs-h4);line-height:var(--lh-snug);font-weight:600}.display em,h1 em,h2 em{color:var(--accent);font-style:italic;font-weight:400}h3 em,h4 em{color:var(--accent-text);font-style:italic;font-weight:400}p{text-wrap:pretty;margin:0}.lead{font-size:var(--fs-lead);color:var(--fg-soft);max-width:62ch;font-weight:400;line-height:1.55}.caption{font-size:var(--fs-caption);color:var(--fg-soft);line-height:var(--lh-body)}.micro{font-size:var(--fs-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-text);font-weight:600}code{font-family:var(--f-mono);background:var(--a-ink-08);border-radius:var(--r-1);padding:1px 5px;font-size:.92em}.char,.word{will-change:transform,opacity;display:inline-block}.split-mask{vertical-align:top;padding-bottom:.12em;line-height:1.18;display:inline-block;overflow:hidden}main{z-index:var(--z-base);position:relative}section{padding:120px 0;position:relative}.container{max-width:1280px;padding:0 var(--s-6);margin:0 auto}.container-wide{max-width:1440px;padding:0 var(--s-6);margin:0 auto}.eyebrow{font-size:var(--fs-micro);letter-spacing:.32em;text-transform:uppercase;color:var(--accent-text);align-items:center;gap:var(--s-3);font-weight:600;display:inline-flex}.eyebrow:before{content:"";background:currentColor;width:34px;height:1px;display:inline-block}.section-head{gap:var(--s-7);margin-bottom:var(--s-8);grid-template-columns:1fr 1fr;align-items:end;display:grid}.section-head .lead{margin-top:0}.section-head h2{margin-top:var(--s-4)}.lifecycle{align-items:center;gap:var(--s-1);font-size:var(--fs-micro);letter-spacing:.1em;text-transform:uppercase;padding:2px var(--s-2);border-radius:var(--r-1);border:var(--bw-1) solid var(--line);font-weight:700;display:inline-flex}.lifecycle.stable{color:var(--positive);border-color:var(--positive)}.lifecycle.beta{color:var(--caution);border-color:var(--caution)}.lifecycle.deprecated{color:var(--critical);border-color:var(--critical);text-decoration:line-through}.cover{height:100vh;min-height:680px;padding:80px 0 var(--s-6);background:var(--canvas);place-items:center;display:grid;position:relative;overflow:hidden}.cover:before{content:"";background:var(--surface-2);height:62%;z-index:var(--z-base);pointer-events:none;position:absolute;top:0;left:0;right:0}.cover .container{z-index:var(--z-raised);gap:var(--s-7);grid-template-columns:1.05fr .95fr;align-items:stretch;width:100%;height:100%;display:grid;position:relative}.cover .left{justify-content:center;gap:var(--s-5);flex-direction:column;display:flex}.cover .cover-mark{width:min(640px,90%);color:var(--accent);margin-bottom:var(--s-2)}.cover .meta-line{gap:var(--s-4);color:var(--accent-text);font-size:var(--fs-micro);letter-spacing:.22em;text-transform:uppercase;flex-wrap:wrap;align-items:center;font-weight:600;display:flex}.cover .meta-line span:nth-child(2){opacity:.55}.cover h1{color:var(--fg)}.cover h1 em{color:var(--accent)}.cover .lead{color:var(--fg);opacity:.82;max-width:50ch}.cover-side{justify-content:flex-end;gap:var(--s-5);color:var(--accent-text);flex-direction:column;align-self:end;display:flex}.cover-side .meta{font-size:var(--fs-micro);letter-spacing:.22em;text-transform:uppercase;font-weight:600}.cover-side .ix-list{border-top:var(--bw-1) solid var(--a-coral-25);flex-direction:column;display:flex}.cover-side .ix-list a{gap:var(--s-3);padding:var(--s-3) 0;border-bottom:var(--bw-1) solid var(--a-coral-16);font-size:var(--fs-caption);color:var(--fg);transition:color var(--d-fast);grid-template-columns:50px 1fr 14px;align-items:center;display:grid}.cover-side .ix-list a:hover{color:var(--accent-text)}.cover-side .ix-list a .ix{color:var(--accent-text);font-weight:700;font-size:var(--fs-micro);letter-spacing:.1em}.cover-side .ix-list a .arr{color:var(--accent-text);opacity:.6}.scroll-cue{left:50%;bottom:var(--s-6);color:var(--fg);font-size:var(--fs-nano);letter-spacing:.22em;text-transform:uppercase;align-items:center;gap:var(--s-2);z-index:var(--z-raised);flex-direction:column;font-weight:600;display:flex;position:absolute;transform:translate(-50%)}.scroll-cue:after{content:"";opacity:.4;width:1px;height:36px;animation:cue var(--d-loop-cue) var(--e-in-out) infinite;background:currentColor}@keyframes cue{0%,to{opacity:.2;transform:scaleY(.4)translateY(-8px)}50%{opacity:.6;transform:scaleY(1)translateY(0)}}.found{background:var(--canvas);padding:140px 0}.found.alt{background:var(--surface)}.found.dark-band{background:var(--warm-900);color:var(--cream-bright)}.found.dark-band h2,.found.dark-band h3,.found.dark-band h4{color:var(--cream-bright)}.found.dark-band .eyebrow{color:var(--coral-300)}.found.dark-band .lead{color:var(--a-cream-78)}.tile{background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);padding:var(--s-5)}.note-box{margin-top:var(--s-5);background:var(--info-surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);padding:var(--s-4) var(--s-5);font-size:var(--fs-caption);color:var(--fg-soft);line-height:1.55}.note-box b{color:var(--fg)}.btn{justify-content:center;align-items:center;gap:var(--s-2);padding:var(--s-3) var(--s-5);border-radius:var(--r-pill);background:var(--action);color:var(--on-action);font-weight:var(--fw-primary-label);font-size:var(--fs-primary-label-min);letter-spacing:0;text-transform:none;font-family:var(--f);cursor:pointer;border:var(--bw-1) solid var(--action);transition:background var(--d-fast) var(--e-out-expo),color var(--d-fast) var(--e-out-expo),transform var(--d-fast) var(--e-out-expo),border-color var(--d-fast);min-height:var(--control-md);white-space:nowrap;line-height:1;text-decoration:none;display:inline-flex}.btn:hover{background:var(--action-hover);border-color:var(--action-hover)}.btn:active{transform:translateY(1px)}.btn:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}.btn.ghost{color:var(--fg);border-color:var(--line-strong);background:0 0}.btn.ghost:hover{background:var(--fg);color:var(--surface);border-color:var(--fg)}.btn.danger{background:var(--critical-fill);border-color:var(--critical-fill);color:var(--on-action)}.btn.icon-only{width:var(--control-md);height:var(--control-md);min-height:var(--control-md);padding:0}.btn.icon-only svg{width:var(--icon-md);height:var(--icon-md)}.btn.sm{padding:var(--s-2) var(--s-4);font-size:var(--fs-micro);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.04em;min-height:var(--control-sm);gap:var(--s-1);background:var(--action-sm);border-color:var(--action-sm)}.btn.sm:hover{background:var(--action-hover);border-color:var(--action-hover)}.btn.sm.ghost{border-color:var(--line-strong);background:0 0}.btn.sm.icon-only{width:var(--control-sm);height:var(--control-sm);padding:0}.btn.sm.icon-only svg{width:var(--icon-sm);height:var(--icon-sm)}.btn.lg{padding:var(--s-4) var(--s-6);min-height:var(--control-lg)}.btn.lg.icon-only{width:var(--control-lg);height:var(--control-lg);padding:0}.btn.full{width:100%}.btn[disabled],.btn[aria-disabled=true]{background:var(--surface-dim);color:var(--fg-mute);border-color:var(--surface-dim);cursor:not-allowed;pointer-events:none}.btn.is-loading{pointer-events:none;color:#0000;position:relative}.btn.is-loading:after{content:"";width:var(--icon-md);height:var(--icon-md);border:var(--bw-2) solid var(--on-action);animation:spin var(--d-spin) var(--e-linear) infinite;border-top-color:#0000;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes spin{to{transform:rotate(360deg)}}.btn .arrow{transition:transform var(--d-base) var(--e-out-expo);display:inline-block}.btn:hover .arrow{transform:translate(4px)}.tabbar{background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);box-shadow:var(--shadow-md);padding:var(--s-2) var(--s-1) var(--s-3);width:100%;max-width:var(--mobile-w);padding-bottom:max(var(--s-3),env(safe-area-inset-bottom));justify-content:space-around;display:flex}.tabbar .tab{align-items:center;gap:var(--s-1);font-size:var(--fs-nano);color:var(--fg-soft);letter-spacing:.04em;padding:var(--s-1) var(--s-2);cursor:pointer;transition:color var(--d-fast) var(--e-out-expo);min-height:var(--control-md);background:0 0;border:0;flex-direction:column;flex:1;font-weight:500;display:flex}.tabbar .tab svg{width:var(--icon-lg);height:var(--icon-lg);color:currentColor;transition:transform var(--d-fast) var(--e-out-expo)}.tabbar .tab .dot{width:5px;height:5px;transition:background var(--d-fast);background:0 0;border-radius:50%}.tabbar .tab.is-active{color:var(--accent-text);font-weight:700}.tabbar .tab.is-active .dot{background:var(--accent)}.tabbar .tab:hover svg{transform:translateY(-1px)}.tabbar .tab:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:-2px;border-radius:var(--r-2)}.input,.textarea,.select{background-color:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);padding:var(--s-3) var(--s-4);font-family:var(--f);font-size:var(--fs-body);color:var(--fg);width:100%;transition:border-color var(--d-fast),background-color var(--d-fast),box-shadow var(--d-fast);min-height:var(--control-md);align-items:center;font-weight:400;line-height:1.4;display:flex}.input:focus,.textarea:focus,.select:focus{border-color:var(--focus);background-color:var(--canvas);box-shadow:0 0 0 var(--focus-w) var(--focus);outline:none}@supports (color:color-mix(in lab, red, red)){.input:focus,.textarea:focus,.select:focus{box-shadow:0 0 0 var(--focus-w) color-mix(in srgb,var(--focus) 28%,transparent)}}.input:focus-visible,.textarea:focus-visible,.select:focus-visible{outline:none}.input::placeholder,.textarea::placeholder{color:var(--fg-mute);font-weight:400}.input[aria-invalid=true],.textarea[aria-invalid=true],.select[aria-invalid=true]{border-color:var(--critical);box-shadow:0 0 0 var(--bw-1) var(--critical)}.input:disabled,.textarea:disabled,.select:disabled{background-color:var(--surface-dim);color:var(--fg-mute);cursor:not-allowed}.textarea{resize:vertical;align-items:flex-start;min-height:96px}.input-group{gap:var(--s-2);flex-direction:column;display:flex}.input-group .label-row{justify-content:space-between;align-items:baseline;gap:var(--s-2);display:flex}.input-group label{font-size:var(--fs-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-soft);font-weight:600}.input-group .req{font-size:var(--fs-nano);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-mute);font-weight:700}.input-group .req.required{color:var(--critical)}.input-group .help{font-size:var(--fs-micro);color:var(--fg-soft);margin-top:var(--s-1)}.input-group .help.err{color:var(--critical);align-items:center;gap:var(--s-1);font-size:var(--fs-caption);font-weight:500;display:flex}.input-group .help.err svg{width:var(--icon-sm);height:var(--icon-sm);flex:none}.search{align-items:center;gap:var(--s-2);background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-pill);padding:var(--s-2) var(--s-4);font-family:var(--f);font-size:var(--fs-body);color:var(--fg);width:100%;min-height:var(--control-md);display:flex}.search:focus-within{border-color:var(--focus);box-shadow:0 0 0 var(--focus-w) var(--focus)}@supports (color:color-mix(in lab, red, red)){.search:focus-within{box-shadow:0 0 0 var(--focus-w) color-mix(in srgb,var(--focus) 28%,transparent)}}.search svg{color:var(--fg-soft);width:var(--icon-md);height:var(--icon-md);flex:none}.search input{font-family:var(--f);font-size:var(--fs-body);color:var(--fg);background:0 0;border:0;outline:none;flex:1;min-width:0;font-weight:400}.search input::placeholder{color:var(--fg-mute)}.select{cursor:pointer;background-image:var(--select-chevron);background-repeat:no-repeat;background-position:right var(--s-4) center;appearance:none;padding-inline-end:var(--s-7);position:relative}.switch{cursor:pointer;flex:none;align-items:center;width:44px;height:26px;display:inline-flex;position:relative}.switch input{opacity:0;cursor:pointer;width:100%;height:100%;z-index:var(--z-raised);margin:0;position:absolute}.switch .track{border-radius:var(--r-pill);background:var(--surface-dim);transition:background var(--d-fast);position:absolute;inset:0}.switch .thumb{background:var(--surface);width:20px;height:20px;box-shadow:var(--shadow-sm);transition:transform var(--d-base) var(--e-out-back);border-radius:50%;position:absolute;top:3px;left:3px}.switch input:checked~.track{background:var(--action)}.switch input:checked~.thumb{transform:translate(18px)}.switch input:focus-visible~.track{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}.switch input:disabled~.track{opacity:.5}.qty{border:var(--bw-1) solid var(--line);border-radius:var(--r-pill);background:var(--surface);align-items:center;display:inline-flex;overflow:hidden}.qty button{width:var(--control-sm);height:var(--control-sm);color:var(--fg);cursor:pointer;transition:background var(--d-fast);background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.qty button:hover{background:var(--surface-dim)}.qty button:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:-2px}.qty button:disabled{color:var(--fg-mute);cursor:not-allowed}.qty button svg{width:var(--icon-sm);height:var(--icon-sm)}.qty input{text-align:center;width:48px;font-family:var(--f);font-size:var(--fs-body);color:var(--fg);font-feature-settings:"tnum" 1;background:0 0;border:0;outline:none;font-weight:600}.choice{align-items:center;gap:var(--s-2);cursor:pointer;font-size:var(--fs-body);color:var(--fg);min-height:var(--hit-min);display:inline-flex}.choice input{opacity:0;width:1px;height:1px;position:absolute}.choice .box{border:var(--bw-2) solid var(--line-strong);border-radius:var(--r-1);width:22px;height:22px;transition:background var(--d-fast),border-color var(--d-fast);flex:none;place-items:center;display:grid}.choice .box.round{border-radius:50%}.choice .box svg{width:14px;height:14px;color:var(--on-action);opacity:0;transition:opacity var(--d-fast),transform var(--d-fast);transform:scale(.6)}.choice input:checked~.box{background:var(--action);border-color:var(--action)}.choice input:checked~.box svg{opacity:1;transform:scale(1)}.choice input:checked~.box.round:after{content:"";background:var(--on-action);border-radius:50%;width:9px;height:9px}.choice input:focus-visible~.box{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}.segmented{background:var(--surface-dim);border-radius:var(--r-pill);padding:var(--s-1);gap:var(--s-1);display:inline-flex}.segmented button{padding:var(--s-2) var(--s-4);border-radius:var(--r-pill);font-size:var(--fs-caption);color:var(--fg-soft);cursor:pointer;min-height:var(--control-sm);transition:background var(--d-fast),color var(--d-fast);background:0 0;border:0;font-weight:600}.segmented button[aria-selected=true]{background:var(--surface);color:var(--fg);box-shadow:var(--shadow-sm)}.segmented button:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}.pill{align-items:center;gap:var(--s-1);padding:var(--s-1) var(--s-3);border-radius:var(--r-pill);background:var(--surface-dim);font-size:var(--fs-micro);letter-spacing:.04em;color:var(--fg-soft);border:var(--bw-1) solid var(--line);font-weight:600;font-family:var(--f);display:inline-flex}.pill.coral{background:var(--action-sm);color:var(--on-action);border-color:var(--action-sm)}.pill.ink{background:var(--fg);color:var(--surface);border-color:var(--fg)}.pill.outline{color:var(--fg);background:0 0}.pill.positive{background:var(--positive-surface);color:var(--positive);border-color:var(--positive)}@supports (color:color-mix(in lab, red, red)){.pill.positive{border-color:color-mix(in srgb,var(--positive) 40%,transparent)}}.pill.caution{background:var(--caution-surface);color:var(--caution);border-color:var(--caution)}@supports (color:color-mix(in lab, red, red)){.pill.caution{border-color:color-mix(in srgb,var(--caution) 40%,transparent)}}.pill.critical{background:var(--critical-surface);color:var(--critical);border-color:var(--critical)}@supports (color:color-mix(in lab, red, red)){.pill.critical{border-color:color-mix(in srgb,var(--critical) 40%,transparent)}}.chip{align-items:center;gap:var(--s-1);padding:var(--s-1) var(--s-3);border-radius:var(--r-pill);background:var(--surface);font-size:var(--fs-caption);color:var(--fg);border:var(--bw-1) solid var(--line);transition:background var(--d-fast) var(--e-out-expo),border-color var(--d-fast);cursor:pointer;min-height:var(--control-sm);font-weight:600;display:inline-flex}.chip .dot{background:var(--accent);border-radius:50%;width:7px;height:7px}.chip:hover{background:var(--surface-2);border-color:var(--accent)}.chip:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}.chip[aria-pressed=true],.chip.is-selected{background:var(--action-sm);color:var(--on-action);border-color:var(--action-sm)}.chip[aria-pressed=true] .dot,.chip.is-selected .dot{background:var(--on-action)}.tag{align-items:center;gap:var(--s-1);padding:var(--s-1) var(--s-2);border-radius:var(--r-1);background:var(--surface-dim);font-size:var(--fs-nano);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-soft);font-weight:600;display:inline-flex}.tag.coral{background:var(--action-sm);color:var(--on-action)}.tag.positive{background:var(--positive-surface);color:var(--positive)}.badge{min-width:18px;height:18px;padding:0 var(--s-1);border-radius:var(--r-pill);background:var(--action-sm);color:var(--on-action);font-size:var(--fs-nano);font-feature-settings:"tnum" 1;justify-content:center;align-items:center;font-weight:700;line-height:1;display:inline-flex}.badge.dot{width:8px;min-width:8px;height:8px;padding:0}.lock-chip{align-items:center;gap:var(--s-1);padding:var(--s-1) var(--s-2);border-radius:var(--r-pill);background:var(--accent);display:inline-flex}@supports (color:color-mix(in lab, red, red)){.lock-chip{background:color-mix(in srgb,var(--accent) 14%,transparent)}}.lock-chip{color:var(--accent-text);font-size:var(--fs-micro);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.lock-chip svg{width:12px;height:12px}.sync-tag{align-items:center;gap:var(--s-1);font-size:var(--fs-micro);color:var(--caution);letter-spacing:.04em;font-weight:600;display:inline-flex}.sync-tag .spin-dot{border:var(--bw-2) solid var(--caution);width:10px;height:10px;animation:spin var(--d-spin) var(--e-linear) infinite;border-top-color:#0000;border-radius:50%}.card{background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);padding:var(--s-4);gap:var(--s-3);font-family:var(--f);max-width:var(--mobile-w);flex-direction:column;display:flex}.card.product{width:100%;padding:0;overflow:hidden}.card.product .img{aspect-ratio:1;background:linear-gradient(135deg,var(--surface-2),var(--surface-dim));color:var(--accent);place-items:center;display:grid}.card.product .img svg{width:48%;height:auto}.card.product .img img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.card.product .body{padding:var(--s-3) var(--s-4) var(--s-4);gap:var(--s-1);flex-direction:column;display:flex}.card.product .brand{font-size:var(--fs-nano);letter-spacing:.18em;text-transform:uppercase;color:var(--accent-text);font-weight:700}.card.product .nm{font-size:var(--fs-body);color:var(--fg);font-weight:600;line-height:1.25}.card.product .row{margin-top:var(--s-1);justify-content:space-between;align-items:center;display:flex}.card.brand{padding:var(--s-4);gap:var(--s-4);width:100%}.card.brand .head{justify-content:space-between;align-items:center;display:flex}.card.brand .head .name{font-size:var(--fs-h4);letter-spacing:-.01em;font-weight:700}.card.brand .stats{gap:var(--s-3);padding-top:var(--s-3);border-top:var(--bw-1) solid var(--line);grid-template-columns:1fr 1fr 1fr;display:grid}.card.brand .stat{gap:var(--s-1);flex-direction:column;display:flex}.card.brand .stat .v{font-size:var(--fs-h4);color:var(--fg);font-feature-settings:"tnum" 1;font-weight:700}.card.brand .stat .l{font-size:var(--fs-nano);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-soft);font-weight:600}.card.order{padding:var(--s-4);gap:var(--s-3);width:100%}.card.order .row{font-size:var(--fs-caption);justify-content:space-between;align-items:center;display:flex}.card.order .id{font-size:var(--fs-micro);color:var(--fg-soft);letter-spacing:.06em}.card.order .total{font-size:var(--fs-h4);font-feature-settings:"tnum" 1;font-weight:700}.card.draft{padding:var(--s-4);gap:var(--s-2);cursor:pointer;width:100%;transition:transform var(--d-base) var(--e-out-expo)}.card.draft:hover{transform:translateY(-2px)}.card.draft:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}.card.draft .head{justify-content:space-between;align-items:center;display:flex}.card.draft .nm{font-size:var(--fs-body);font-weight:700}.card.draft .meta{gap:var(--s-3);color:var(--fg-soft);font-size:var(--fs-caption);flex-wrap:wrap;display:flex}.card.draft .meta b{color:var(--fg)}.card.style-tile{aspect-ratio:4/5;background:var(--surface);width:100%;padding:0;position:relative;overflow:hidden}.card.style-tile .illo{height:100%;color:var(--accent);padding:var(--s-4);justify-content:center;align-items:center;display:flex}.card.style-tile .lbl{left:var(--s-4);bottom:var(--s-4);right:var(--s-4);position:absolute}.card.style-tile .lbl small{font-size:var(--fs-nano);letter-spacing:.18em;text-transform:uppercase;color:var(--accent-text);margin-bottom:var(--s-1);font-weight:700;display:block}.card.style-tile .lbl b{font-size:var(--fs-h4);color:var(--fg);font-weight:700;line-height:1.15}.card.is-locked{position:relative}.card.is-locked .img,.card.is-locked .illo{filter:grayscale(.5)saturate(.6);opacity:.8}.card.is-locked .lock-over{justify-content:center;align-items:center;gap:var(--s-2);background:var(--surface);flex-direction:column;display:flex;position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.card.is-locked .lock-over{background:color-mix(in srgb,var(--surface) 70%,transparent)}}.card.is-locked .lock-over{text-align:center;padding:var(--s-4)}.card.is-locked .lock-over .price-hidden{font-size:var(--fs-caption);color:var(--fg-soft);font-weight:600}.list-row{gap:var(--s-3);padding:var(--s-3) var(--s-4);background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);width:100%;min-height:64px;font-family:var(--f);transition:background var(--d-fast) var(--e-out-expo);cursor:pointer;text-align:start;grid-template-columns:auto 1fr auto;align-items:center;display:grid}.list-row:hover{background:var(--surface-2)}.list-row:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}.list-row[aria-current=true],.list-row.is-selected{border-color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.list-row[aria-current=true],.list-row.is-selected{background:color-mix(in srgb,var(--accent) 8%,transparent)}}.list-row.dense{padding:var(--s-2) var(--s-4);min-height:48px}.list-row .thumb{border-radius:var(--r-2);background:linear-gradient(135deg,var(--surface-2),var(--surface-dim));width:44px;height:44px;color:var(--accent);flex:none;place-items:center;display:grid}.list-row .thumb svg{width:22px;height:22px}.list-row .body{gap:var(--s-1);flex-direction:column;min-width:0;display:flex}.list-row .body .pri{font-size:var(--fs-body);color:var(--fg);white-space:nowrap;text-overflow:ellipsis;font-weight:600;line-height:1.3;overflow:hidden}.list-row .body .sec{font-size:var(--fs-caption);color:var(--fg-soft);line-height:1.4}.list-row .trail{align-items:center;gap:var(--s-2);font-size:var(--fs-caption);color:var(--fg-soft);font-feature-settings:"tnum" 1;display:flex}.list-row .trail svg{color:var(--fg-mute);width:var(--icon-sm);height:var(--icon-sm)}.avatar{background:var(--action-sm);width:36px;height:36px;color:var(--on-action);font-weight:700;font-size:var(--fs-caption);letter-spacing:.02em;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.avatar.lg{width:56px;height:56px;font-size:var(--fs-h4)}.avatar.sm{width:24px;height:24px;font-size:var(--fs-nano)}.avatar.dark{background:var(--fg)}.identity{align-items:center;gap:var(--s-2);padding-block:var(--s-1);padding-inline:var(--s-1) var(--s-3);border-radius:var(--r-pill);background:var(--surface);border:var(--bw-1) solid var(--line);font-size:var(--fs-caption);color:var(--fg);font-weight:600;font-family:var(--f);display:inline-flex}.identity .meta{flex-direction:column;gap:0;line-height:1.2;display:flex}.identity .meta .role{font-size:var(--fs-nano);color:var(--fg-soft);letter-spacing:.04em;font-weight:500}.price{align-items:baseline;gap:var(--s-1);font-family:var(--f);color:var(--fg);font-feature-settings:"tnum" 1;display:inline-flex}.price .v{font-size:var(--fs-h3);letter-spacing:-.01em;font-weight:700;line-height:1}.price .currency{font-size:var(--fs-micro);color:var(--fg-soft);letter-spacing:.06em;text-transform:uppercase;font-weight:600}.price .msrp{font-size:var(--fs-micro);color:var(--fg-mute);margin-inline-start:var(--s-1);text-decoration:line-through}.price .tier{font-size:var(--fs-micro);color:var(--positive);margin-inline-start:var(--s-1);font-weight:700}.price.compact .v{font-size:var(--fs-h4)}.price.compact .currency{font-size:var(--fs-nano)}.moq{align-items:center;gap:var(--s-1);padding:var(--s-1) var(--s-3);border-radius:var(--r-pill);background:var(--surface-2);color:var(--fg);font-size:var(--fs-micro);letter-spacing:.06em;text-transform:uppercase;font-weight:600;display:inline-flex}.moq svg{width:12px;height:12px;color:var(--accent)}.moq.unmet{background:var(--caution-surface);color:var(--caution)}.stock{align-items:center;gap:var(--s-1);font-size:var(--fs-caption);color:var(--fg);font-weight:600;display:inline-flex}.stock .dot{border-radius:50%;flex:none;width:8px;height:8px}.stock.in .dot{background:var(--positive-pip)}.stock.low .dot{background:var(--caution-pip)}.stock.out .dot{background:var(--fg-mute)}.stock .lbl{font-size:var(--fs-micro);letter-spacing:.06em;color:var(--fg-soft);font-weight:500}.stock.unknown{color:var(--fg-soft)}.stock.unknown .dot{background:var(--fg-mute);border:var(--bw-1) dashed var(--fg-soft);background:0 0}.scrim{background:var(--scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:var(--z-scrim);position:absolute;inset:0}.modal-stage{background:linear-gradient(135deg,var(--surface-dim) 0%,var(--surface-2) 100%);border-radius:var(--r-3);justify-content:center;align-items:center;width:100%;height:380px;display:flex;position:relative;overflow:hidden}.modal-shell{padding:var(--s-5);z-index:var(--z-modal);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.modal{background:var(--surface);border-radius:var(--r-4);padding:var(--s-5);width:min(100%,320px);box-shadow:var(--shadow-lg);gap:var(--s-3);flex-direction:column;display:flex}.modal .head{justify-content:space-between;align-items:center;display:flex}.modal .head h4{font-size:var(--fs-h4);font-weight:700}.modal .close{width:28px;height:28px;color:var(--fg-soft);background:var(--surface-dim);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid}.modal .close:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}.modal .close svg{width:14px;height:14px}.modal p{font-size:var(--fs-body);color:var(--fg-soft);line-height:1.55}.modal .actions{gap:var(--s-2);margin-top:var(--s-1);display:flex}.modal .actions .btn{flex:1}.sheet-shell{z-index:var(--z-sheet);justify-content:center;align-items:flex-end;display:flex;position:absolute;inset:0}.sheet{background:var(--surface);border-radius:var(--r-4) var(--r-4) 0 0;padding:var(--s-5) var(--s-5) var(--s-6);width:100%;box-shadow:var(--shadow-lg);gap:var(--s-3);flex-direction:column;display:flex}.sheet .grab{background:var(--surface-dim);width:36px;height:4px;margin:0 auto var(--s-1);border-radius:2px}.sheet h4{font-size:var(--fs-h4);font-weight:700}.sheet .opts{margin-top:var(--s-2);border-top:var(--bw-1) solid var(--line);flex-direction:column;gap:0;display:flex}.sheet .opt{align-items:center;gap:var(--s-3);padding:var(--s-3) 0;border-bottom:var(--bw-1) solid var(--line);font-size:var(--fs-body);color:var(--fg);cursor:pointer;min-height:var(--hit-min);text-align:start;border-inline:0;background:0 0;border-top:0;width:100%;display:flex}.sheet .opt:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:-2px}.sheet .opt svg{color:var(--accent);width:var(--icon-md);height:var(--icon-md)}.drawer-shell{z-index:var(--z-drawer);justify-content:flex-end;display:flex;position:absolute;inset:0}.drawer{background:var(--surface);width:280px;height:100%;padding:var(--s-5);gap:var(--s-4);box-shadow:var(--shadow-lg);flex-direction:column;display:flex}.drawer h4{font-size:var(--fs-h4);font-weight:700}.drawer .row{padding:var(--s-3) 0;border-bottom:var(--bw-1) solid var(--line);font-size:var(--fs-caption);justify-content:space-between;align-items:center;display:flex}.drawer .row b{color:var(--fg);font-weight:600}.drawer .row span{color:var(--fg-soft)}.toast{align-items:center;gap:var(--s-3);background:var(--toast-bg);color:var(--toast-fg);padding:var(--s-3) var(--s-4);border-radius:var(--r-3);max-width:340px;box-shadow:var(--shadow-md);font-size:var(--fs-body);font-weight:500;display:flex}.toast svg{color:var(--toast-accent);width:var(--icon-md);height:var(--icon-md);flex:none}.toast.positive svg{color:var(--toast-positive)}.toast .msg{flex:1}.toast .act{font-size:var(--fs-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--toast-accent);cursor:pointer;padding:var(--s-1);background:0 0;border:0;font-weight:700}.toast .act:focus-visible{outline:var(--focus-w) solid var(--toast-fg);outline-offset:2px}.banner{align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);background:var(--surface-2);border:var(--bw-1) solid var(--a-coral-22);border-radius:var(--r-3);color:var(--fg);max-width:var(--mobile-w);font-size:var(--fs-caption);font-weight:500;line-height:1.45;display:flex}.banner svg{color:var(--accent);width:var(--icon-md);height:var(--icon-md);flex:none}.banner .msg b{color:var(--fg);font-weight:700}.banner .msg{color:var(--fg);flex:1}.banner.caution{background:var(--caution-surface);border-color:var(--caution)}@supports (color:color-mix(in lab, red, red)){.banner.caution{border-color:color-mix(in srgb,var(--caution) 30%,transparent)}}.banner.caution svg{color:var(--caution)}.offline-bar{align-items:center;gap:var(--s-2);width:100%;max-width:var(--mobile-w);padding:var(--s-2) var(--s-4);background:var(--toast-bg);color:var(--toast-fg);font-size:var(--fs-caption);border-radius:var(--r-2);font-weight:600;display:flex}.offline-bar svg{width:var(--icon-sm);height:var(--icon-sm);flex:none}.offline-bar .act{color:var(--toast-accent);font-weight:700;font-size:var(--fs-micro);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;background:0 0;border:0;margin-inline-start:auto}.offline-bar.slow{background:var(--caution-fill);color:var(--on-caution)}.offline-bar.slow .act{color:var(--on-caution)}.empty{align-items:center;gap:var(--s-3);padding:var(--s-7) var(--s-5);text-align:center;background:var(--surface);border:var(--bw-1) dashed var(--line-strong);border-radius:var(--r-3);max-width:var(--mobile-w);flex-direction:column;display:flex}.empty svg{color:var(--accent);width:42px;height:42px}.empty h4{font-size:var(--fs-h4);font-weight:700}.empty p{font-size:var(--fs-caption);color:var(--fg-soft);max-width:30ch;line-height:1.55}.fullscreen-state{justify-content:center;align-items:center;gap:var(--s-4);padding:var(--s-8) var(--s-5);text-align:center;background:var(--canvas);border:var(--bw-1) solid var(--line);border-radius:var(--r-4);max-width:var(--mobile-w);flex-direction:column;min-height:360px;display:flex}.fullscreen-state .ico{width:64px;height:64px;color:var(--accent)}.fullscreen-state h4{font-size:var(--fs-h3);font-weight:800}.fullscreen-state p{font-size:var(--fs-body);color:var(--fg-soft);max-width:34ch;line-height:1.55}.fullscreen-state .actions{gap:var(--s-2);flex-wrap:wrap;justify-content:center;display:flex}.skeleton{gap:var(--s-3);width:100%;max-width:var(--mobile-w);flex-direction:column;display:flex}.skeleton .s-bar{border-radius:var(--r-1);background:linear-gradient(90deg,var(--surface-dim) 0%,var(--surface) 50%,var(--surface-dim) 100%);height:14px;animation:shimmer var(--d-loop-shimmer) var(--e-linear) infinite;background-size:200% 100%}.skeleton .s-bar.lg{height:24px}.skeleton .s-bar.sm{width:50%;height:10px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.viewfinder{width:100%;max-width:var(--mobile-w);aspect-ratio:4/5;background:linear-gradient(160deg,var(--viewfinder-1) 0%,var(--viewfinder-2) 60%,var(--viewfinder-1) 100%);border-radius:var(--r-4);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.viewfinder:before{content:"";border:1.5px solid var(--viewfinder-reticle);position:absolute;inset:18%}@supports (color:color-mix(in lab, red, red)){.viewfinder:before{border:1.5px solid color-mix(in srgb,var(--viewfinder-reticle) 40%,transparent)}}.viewfinder:before{border-radius:var(--r-3)}.viewfinder .corners{position:absolute;inset:16%}.viewfinder .corners:before,.viewfinder .corners:after{content:"";border:var(--bw-2) solid var(--accent);width:24px;height:24px;position:absolute}.viewfinder .corners:before{border-inline-end:0;border-bottom:0;border-radius:6px 0 0;top:-2px;left:-2px}.viewfinder .corners:after{border-inline-start:0;border-top:0;border-radius:0 0 6px;bottom:-2px;right:-2px}.viewfinder .corners i{border:var(--bw-2) solid var(--accent);width:24px;height:24px;position:absolute}.viewfinder .corners i.tr{border-inline-start:0;border-bottom:0;border-radius:0 6px 0 0;top:-2px;right:-2px}.viewfinder .corners i.bl{border-inline-end:0;border-top:0;border-radius:0 0 0 6px;bottom:-2px;left:-2px}.viewfinder .scan-line{background:linear-gradient(90deg,transparent,var(--accent),transparent);height:2px;box-shadow:0 0 24px 6px var(--a-coral-60);animation:scan var(--d-loop-scan) var(--e-in-out) infinite;position:absolute;top:50%;left:18%;right:18%}@keyframes scan{0%,to{top:30%}50%{top:70%}}.viewfinder .hint{z-index:2;color:var(--on-viewfinder);font-size:var(--fs-micro);letter-spacing:.16em;text-transform:uppercase;text-align:center;text-shadow:var(--shadow-text);width:84%;font-weight:600;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.viewfinder.has-roi:before{content:none}.viewfinder .roi{z-index:1;border-radius:var(--r-3);box-shadow:0 0 0 9999px var(--scrim);position:relative}.viewfinder .roi .c{border:var(--bw-2) solid var(--accent);width:26px;height:26px;position:absolute}.viewfinder .roi .c.tl{border-inline-end:0;border-bottom:0;border-radius:6px 0 0;top:-2px;left:-2px}.viewfinder .roi .c.tr{border-inline-start:0;border-bottom:0;border-radius:0 6px 0 0;top:-2px;right:-2px}.viewfinder .roi .c.bl{border-inline-end:0;border-top:0;border-radius:0 0 0 6px;bottom:-2px;left:-2px}.viewfinder .roi .c.br{border-inline-start:0;border-top:0;border-radius:0 0 6px;bottom:-2px;right:-2px}.viewfinder .roi .roi-line-track{pointer-events:none;will-change:transform;animation:roi-scan var(--d-loop-scan) var(--e-in-out) infinite;position:absolute;inset:0}.viewfinder .roi .roi-line{background:linear-gradient(90deg,transparent,var(--accent),transparent);height:2px;box-shadow:0 0 24px 6px var(--a-coral-60);position:absolute;top:0;left:6%;right:6%}@keyframes roi-scan{0%,to{transform:translateY(2px)}50%{transform:translateY(calc(100% - 4px))}}.viewfinder .lowlight{top:var(--s-4);align-items:center;gap:var(--s-1);background:var(--caution-fill);color:var(--on-caution);font-size:var(--fs-micro);letter-spacing:.08em;text-transform:uppercase;padding:var(--s-1) var(--s-3);border-radius:var(--r-pill);font-weight:700;display:inline-flex;position:absolute;left:50%;transform:translate(-50%)}.viewfinder .lowlight svg{width:12px;height:12px}.viewfinder.permission{background:var(--surface-dim);gap:var(--s-3);padding:var(--s-6);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.viewfinder.permission svg{width:48px;height:48px;color:var(--fg-soft)}.viewfinder.permission h4{color:var(--fg);font-size:var(--fs-h4)}.viewfinder.permission p{color:var(--fg-soft);font-size:var(--fs-caption);max-width:30ch;line-height:1.5}.viewfinder .scan-loading{z-index:3;justify-content:center;align-items:center;gap:var(--s-3);background:var(--scrim);color:var(--on-viewfinder);text-align:center;padding:var(--s-5);flex-direction:column;display:flex;position:absolute;inset:0}.viewfinder .scan-loading .spin{border:var(--bw-2) solid var(--on-viewfinder);width:34px;height:34px;animation:spin var(--d-spin) var(--e-linear) infinite;border-top-color:#0000;border-radius:50%}.viewfinder .scan-loading .lbl{font-size:var(--fs-micro);letter-spacing:.16em;text-transform:uppercase;font-weight:600}.scan-result{background:var(--surface);border-radius:var(--r-3);padding:var(--s-4);gap:var(--s-2);width:100%;max-width:var(--mobile-w);box-shadow:var(--shadow-md);border:var(--bw-1) solid var(--line);flex-direction:column;display:flex}.scan-result .top{justify-content:space-between;align-items:start;gap:var(--s-3);display:flex}.scan-result .top .info{gap:var(--s-1);flex-direction:column;flex:1;display:flex}.scan-result .brand{font-size:var(--fs-nano);letter-spacing:.18em;text-transform:uppercase;color:var(--accent-text);font-weight:700}.scan-result .nm{font-size:var(--fs-h4);font-weight:700;line-height:1.2}.scan-result .grid-info{gap:var(--s-2);padding:var(--s-3) 0;border-top:var(--bw-1) solid var(--line);border-bottom:var(--bw-1) solid var(--line);margin-top:var(--s-1);grid-template-columns:1fr 1fr;display:grid}.scan-result .grid-info .col{gap:var(--s-1);flex-direction:column;display:flex}.scan-result .grid-info .l{font-size:var(--fs-nano);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-soft);font-weight:600}.scan-result .grid-info .v{font-size:var(--fs-body);color:var(--fg);font-feature-settings:"tnum" 1;font-weight:600}.scan-result .grid-info .v.rec{color:var(--accent-text);font-weight:700}.scan-result .grid-info .v .manual-link{font-size:var(--fs-micro);color:var(--accent-text);font-weight:700;text-decoration:underline}.scan-result .actions{gap:var(--s-2);display:flex}.scan-result .actions .btn{flex:1}.confidence{align-items:center;gap:var(--s-1);font-size:var(--fs-micro);letter-spacing:.04em;color:var(--fg-soft);font-weight:700;display:inline-flex}.confidence .meter{border-radius:var(--r-pill);background:var(--surface-dim);width:46px;height:5px;overflow:hidden}.confidence .meter i{background:var(--positive-pip);height:100%;display:block}.confidence.mid .meter i{background:var(--caution-pip)}.confidence.low .meter i{background:var(--fg-mute)}.candidate-list{gap:var(--s-2);width:100%;max-width:var(--mobile-w);flex-direction:column;display:flex}.privacy-row{padding:var(--s-3) var(--s-4);background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);width:100%;max-width:var(--mobile-w);justify-content:space-between;align-items:center;gap:var(--s-3);display:flex}.privacy-row .label{font-size:var(--fs-caption);color:var(--fg-soft);font-weight:500}.privacy-row .value{font-size:var(--fs-h4);font-feature-settings:"tnum" 1;color:var(--fg);align-items:center;gap:var(--s-2);justify-content:flex-end;min-width:120px;font-weight:700;display:inline-flex;position:relative}.privacy-row.is-masked .value-content{visibility:hidden}.privacy-row.is-masked .value:before{content:"●●●●●●";font-size:var(--fs-caption);letter-spacing:.18em;color:var(--fg-mute);position:absolute;right:0}.privacy-row .hold-btn{background:var(--surface-dim);width:32px;height:32px;color:var(--fg-soft);cursor:pointer;transition:background var(--d-fast),color var(--d-fast),transform var(--d-fast) var(--e-out-back);-webkit-user-select:none;user-select:none;touch-action:none;border:0;border-radius:50%;place-items:center;display:grid}.privacy-row .hold-btn:active,.privacy-row .hold-btn.is-holding{background:var(--action);color:var(--on-action);transform:scale(1.1)}.privacy-row .hold-btn:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}.privacy-row .hold-btn svg{width:14px;height:14px}.privacy-row.is-revealing .value-content{visibility:visible}.privacy-row.is-revealing .value:before{display:none}.conflict{gap:var(--s-3);width:100%;max-width:var(--mobile-w);background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);padding:var(--s-4);flex-direction:column;display:flex}.conflict .cmp{gap:var(--s-2);grid-template-columns:1fr 1fr;display:grid}.conflict .opt{border:var(--bw-2) solid var(--line);border-radius:var(--r-2);padding:var(--s-3);gap:var(--s-1);cursor:pointer;flex-direction:column;display:flex}.conflict .opt.is-chosen{border-color:var(--action);background:var(--action)}@supports (color:color-mix(in lab, red, red)){.conflict .opt.is-chosen{background:color-mix(in srgb,var(--action) 8%,transparent)}}.conflict .opt .who{font-size:var(--fs-nano);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-soft);font-weight:700}.conflict .opt .qty{font-size:var(--fs-h4);font-feature-settings:"tnum" 1;font-weight:700}.timeline{gap:var(--s-3);flex-direction:column;padding-inline-start:var(--s-5);display:flex;position:relative}.timeline .rail{background:var(--line);width:2px;position:absolute;top:8px;bottom:8px;left:7px}.timeline .step{align-items:flex-start;gap:var(--s-3);display:flex;position:relative}.timeline .step .pip{background:var(--accent);border:3px solid var(--canvas);border-radius:50%;width:16px;height:16px;position:absolute;top:2px;left:-22px}.timeline .step.todo .pip{background:var(--surface);border:var(--bw-2) solid var(--line-strong)}.timeline .step b{font-size:var(--fs-caption)}.timeline .step.todo b{color:var(--fg-soft)}.viz{background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);padding:var(--s-4);gap:var(--s-2);max-width:var(--mobile-w);flex-direction:column;display:flex}.viz .viz-head{justify-content:space-between;align-items:baseline;display:flex}.viz .viz-head .l{font-size:var(--fs-nano);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-soft);font-weight:700}.viz .viz-head .v{font-size:var(--fs-h4);font-feature-settings:"tnum" 1;font-weight:700}.viz .viz-head .delta{font-size:var(--fs-micro);font-weight:700}.viz .delta.up{color:var(--positive)}.viz .delta.down{color:var(--critical)}.sparkline{width:100%;height:48px;color:var(--accent)}.sparkline path.area{fill:var(--accent)}@supports (color:color-mix(in lab, red, red)){.sparkline path.area{fill:color-mix(in srgb,var(--accent) 14%,transparent)}}.sparkline path.area{stroke:none}.sparkline path.line{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.bars{align-items:flex-end;gap:var(--s-1);height:64px;display:flex}.bars i{background:var(--surface-dim);border-radius:3px 3px 0 0;flex:1;position:relative}.bars i.hot{background:var(--accent)}.gauge{gap:var(--s-1);flex-direction:column;display:flex}.gauge .track{border-radius:var(--r-pill);background:var(--surface-dim);height:10px;overflow:hidden}.gauge .track i{border-radius:var(--r-pill);background:var(--positive-pip);height:100%;display:block}.gauge .track i.warn{background:var(--caution-pip)}.gauge .scale{font-size:var(--fs-nano);color:var(--fg-mute);font-feature-settings:"tnum" 1;justify-content:space-between;display:flex}.form{gap:var(--s-4);width:100%;max-width:var(--mobile-w);background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);padding:var(--s-5);flex-direction:column;display:flex}.form .validation-summary{gap:var(--s-2);padding:var(--s-3) var(--s-4);border-radius:var(--r-2);background:var(--critical-surface);border:var(--bw-1) solid var(--critical);flex-direction:column;display:flex}@supports (color:color-mix(in lab, red, red)){.form .validation-summary{border:var(--bw-1) solid color-mix(in srgb,var(--critical) 40%,transparent)}}.form .validation-summary{color:var(--critical)}.form .validation-summary b{font-size:var(--fs-caption);align-items:center;gap:var(--s-1);font-weight:700;display:flex}.form .validation-summary svg{width:var(--icon-sm);height:var(--icon-sm)}.form .validation-summary a{font-size:var(--fs-caption);color:var(--critical);font-weight:600;text-decoration:underline}.photo-frame{border-radius:var(--r-3);background:linear-gradient(135deg,var(--surface-2),var(--surface-dim));position:relative;overflow:hidden}.photo-frame.r-1-1{aspect-ratio:1}.photo-frame.r-4-5{aspect-ratio:4/5}.photo-frame.r-3-2{aspect-ratio:3/2}.photo-frame .ph{color:var(--accent);place-items:center;display:grid;position:absolute;inset:0}.photo-frame .ph svg{width:40%}.photo-frame .tier-overlay{top:var(--s-2);left:var(--s-2);position:absolute}.swatch-grid{gap:var(--s-4);margin-top:var(--s-6);grid-template-columns:repeat(5,1fr);display:grid}.swatch{background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);transition:transform var(--d-base) var(--e-out-expo);flex-direction:column;display:flex;overflow:hidden}.swatch:hover{transform:translateY(-3px)}.swatch .chip{aspect-ratio:1;width:100%;padding:var(--s-3);color:var(--fg);font-weight:600;font-size:var(--fs-micro);letter-spacing:.12em;text-transform:uppercase;align-items:flex-end;display:flex;position:relative}.swatch .chip.on-dark{color:var(--brand-cream)}.swatch .body{padding:var(--s-3);gap:var(--s-1);flex-direction:column;display:flex}.swatch .name{font-weight:700;font-size:var(--fs-body)}.swatch .hex{font-size:var(--fs-caption);color:var(--fg-soft);font-family:var(--f-mono);letter-spacing:.02em}.swatch .role{font-size:var(--fs-micro);color:var(--fg-mute);line-height:1.45}.tier-table{margin-top:var(--s-6);gap:var(--s-4);grid-template-columns:repeat(3,1fr);display:grid}.tier-card{border:var(--bw-1) solid var(--line);border-radius:var(--r-3);padding:var(--s-5);background:var(--surface);gap:var(--s-2);flex-direction:column;display:flex}.tier-card .t{font-size:var(--fs-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-text);font-weight:700}.tier-card code{font-size:var(--fs-caption);color:var(--fg);background:0 0;padding:0;display:block}.derived{margin-top:var(--s-7);gap:var(--s-3);grid-template-columns:repeat(4,1fr);display:grid}.derived .row{align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);border:var(--bw-1) solid var(--line);border-radius:var(--r-2);background:var(--surface);display:flex}.derived .row .dot{border-radius:var(--r-1);border:var(--bw-1) solid var(--a-ink-08);flex:none;width:32px;height:32px}.derived .row .meta{flex-direction:column;display:flex}.derived .row .meta b{font-weight:700;font-size:var(--fs-caption);font-family:var(--f-mono)}.derived .row .meta span{font-size:var(--fs-micro);color:var(--fg-soft);font-feature-settings:"tnum" 1}.contrast-table,.tokens-table,.matrix-table,.std-table{margin-top:var(--s-6);border-collapse:separate;border-spacing:0;width:100%;font-size:var(--fs-caption)}.contrast-table th,.contrast-table td,.tokens-table th,.tokens-table td,.matrix-table th,.matrix-table td,.std-table th,.std-table td{padding:var(--s-3) var(--s-3);text-align:start;border-bottom:var(--bw-1) solid var(--line);vertical-align:middle}.contrast-table th,.tokens-table th,.matrix-table th,.std-table th{font-weight:600;font-size:var(--fs-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--fg-soft);background:var(--surface)}.contrast-table .sample{border-radius:var(--r-1);width:120px;height:36px;font-weight:600;font-size:var(--fs-caption);border:var(--bw-1) solid var(--line);justify-content:center;align-items:center;display:inline-flex}.contrast-table .ratio{font-feature-settings:"tnum" 1;font-weight:700;font-family:var(--f-mono)}.contrast-table .pass{color:var(--positive);font-weight:700;font-size:var(--fs-micro);letter-spacing:.1em}.contrast-table .warn{color:var(--caution);font-weight:700;font-size:var(--fs-micro);letter-spacing:.1em}.contrast-table .fail{color:var(--critical);font-weight:700;font-size:var(--fs-micro);letter-spacing:.1em}.tokens-table td:first-child{color:var(--accent-text);font-weight:700;font-family:var(--f-mono);font-size:var(--fs-caption)}.tokens-table td .sw{border:var(--bw-1) solid var(--a-ink-08);vertical-align:middle;width:22px;height:22px;border-radius:5px;margin-inline-end:var(--s-2);display:inline-block}.tokens-table td.val{font-feature-settings:"tnum" 1;color:var(--fg-soft);font-family:var(--f-mono);font-size:var(--fs-caption)}.std-table td b{color:var(--fg)}.std-table code{font-size:var(--fs-micro)}.matrix{margin-top:var(--s-5);gap:var(--s-3);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.matrix .cell{border:var(--bw-1) solid var(--line);border-radius:var(--r-2);padding:var(--s-4) var(--s-3) var(--s-3);background:var(--canvas);align-items:center;gap:var(--s-3);flex-direction:column;justify-content:center;min-height:120px;display:flex;position:relative}.matrix .cell .st{top:var(--s-2);left:var(--s-2);font-size:var(--fs-nano);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-mute);font-weight:700;position:absolute}.type-scale{gap:var(--s-5);margin-top:var(--s-6);border-top:var(--bw-1) solid var(--line);flex-direction:column;display:flex}.type-row{gap:var(--s-5);padding:var(--s-5) 0;border-bottom:var(--bw-1) solid var(--line);grid-template-columns:88px 1fr 240px;align-items:baseline;display:grid}.type-row .label{font-size:var(--fs-micro);letter-spacing:.22em;text-transform:uppercase;color:var(--accent-text);padding-top:var(--s-2);font-weight:600}.type-row .sample{color:var(--fg)}.type-row .spec{font-size:var(--fs-micro);color:var(--fg-soft);font-feature-settings:"tnum" 1;line-height:1.7}.type-row .spec b{color:var(--fg);font-weight:700}.weights{gap:var(--s-4);margin-top:var(--s-5);grid-template-columns:repeat(3,1fr);display:grid}.weight-card{background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);padding:var(--s-5)}.weight-card .num{letter-spacing:-.04em;font-size:46px;line-height:1;font-weight:inherit}.weight-card .name{font-size:var(--fs-micro);letter-spacing:.18em;text-transform:uppercase;color:var(--accent-text);margin-top:var(--s-2);font-weight:600}.descender-zone{margin-top:var(--s-7);background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);padding:var(--s-6);position:relative;overflow:hidden}.descender-zone .demo{letter-spacing:-.03em;color:var(--fg);padding-bottom:.12em;font-size:84px;font-weight:800;line-height:1.18;display:inline-block;position:relative}.logo-grid{margin-top:var(--s-6);gap:var(--s-5);grid-template-columns:1.5fr 1fr;display:grid}.logo-card{background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-4);padding:var(--s-6);gap:var(--s-5);flex-direction:column;justify-content:space-between;min-height:280px;display:flex}.logo-card.peach{background:var(--surface-2)}.logo-card.dark{background:var(--fg)}.logo-card.dark h4,.logo-card.dark .caption{color:var(--surface)}.logo-card .display-stage{flex:1;justify-content:center;align-items:center;display:flex}.logo-card .display-stage .hecho-logo{height:72px}.logo-card.small .display-stage .hecho-logo{height:24px}.logo-card .stage-meta{justify-content:space-between;align-items:center;display:flex}.logo-card .stage-meta .caption{font-size:var(--fs-micro);letter-spacing:.18em;text-transform:uppercase;color:var(--accent-text);font-weight:600}.clearspace{margin-top:var(--s-6);background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-4);padding:var(--s-7);justify-content:center;align-items:center;min-height:300px;display:flex;position:relative}.clearspace .cs-wrap{padding:54px;position:relative}.clearspace .cs-wrap:before{content:"";border:var(--bw-1) dashed var(--accent);border-radius:var(--r-2);opacity:.45;position:absolute;inset:0}.clearspace .cs-wrap .hecho-logo{height:60px;position:relative}.clearspace .cs-label{color:var(--accent-text);font-size:var(--fs-nano);letter-spacing:.16em;text-transform:uppercase;font-weight:700;position:absolute}.clearspace .cs-label.t{top:var(--s-2);left:50%;transform:translate(-50%)}.clearspace .cs-label.b{bottom:var(--s-2);left:50%;transform:translate(-50%)}.clearspace .cs-label.l{left:var(--s-2);transform-origin:0;top:50%;transform:translateY(-50%)rotate(-90deg)}.clearspace .cs-label.r{right:var(--s-2);transform-origin:100%;top:50%;transform:translateY(-50%)rotate(90deg)}.dodont{margin-top:var(--s-7);gap:var(--s-3);grid-template-columns:repeat(3,1fr);display:grid}.dd{background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);padding:var(--s-5);gap:var(--s-3);flex-direction:column;min-height:200px;display:flex}.dd .demo{background:var(--surface-2);border-radius:var(--r-2);padding:var(--s-4);flex:1;place-items:center;display:grid;position:relative;overflow:hidden}.dd .demo .hecho-logo{height:34px}.dd.bad .demo .hecho-logo{filter:hue-rotate(180deg)saturate(.5)}.dd[data-mod=stretch] .demo .hecho-logo{transform:scaleX(1.6)}.dd[data-mod=rotate] .demo .hecho-logo{transform:rotate(-18deg)}.dd[data-mod=shadow] .demo .hecho-logo{filter:drop-shadow(0 6px 12px var(--a-ink-60))}.dd[data-mod=recolor] .demo{--demo-bad:var(--demo-rogue)}.dd[data-mod=recolor] .demo .hecho-logo{color:var(--demo-bad)}.dd[data-mod=crop] .demo .hecho-logo{clip-path:inset(0 40% 0 0);transform:scale(2.4)}.dd[data-mod=swap] .demo{--logo-cutout:var(--brand-coral)}.dd[data-mod=swap] .demo .hecho-logo{color:var(--brand-peach)}.dd .label{align-items:center;gap:var(--s-1);font-size:var(--fs-caption);color:var(--fg);font-weight:600;display:flex}.dd .label:before{content:"";width:18px;height:18px;font-size:var(--fs-micro);border-radius:50%;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.dd.do .label:before{content:"✓";background:var(--positive-pip);color:var(--on-action);text-align:center;font-weight:700;line-height:18px}.dd.bad .label:before{content:"×";background:var(--critical-fill);color:var(--on-action);font-size:var(--fs-caption);text-align:center;font-weight:800;line-height:18px}.dd .label small{color:var(--fg-soft);font-weight:400;font-size:var(--fs-caption)}.spacing-ladder{margin-top:var(--s-6);border-top:var(--bw-1) solid var(--line);flex-direction:column;gap:0;display:flex}.sl-row{gap:var(--s-5);padding:var(--s-3) 0;border-bottom:var(--bw-1) solid var(--line);grid-template-columns:60px 90px 1fr 240px;align-items:center;display:grid}.sl-row .tok{font-size:var(--fs-micro);letter-spacing:.1em;color:var(--accent-text);font-weight:700;font-family:var(--f-mono)}.sl-row .val{font-size:var(--fs-micro);color:var(--fg-soft);font-feature-settings:"tnum" 1}.sl-row .vis{background:var(--accent);border-radius:3px;height:18px}.sl-row .role{font-size:var(--fs-caption);color:var(--fg-soft);text-align:end}.grid-demo{margin-top:var(--s-7);gap:var(--s-5);grid-template-columns:1fr 1fr;display:grid}.grid-demo .cols{gap:var(--s-2);align-items:stretch;height:180px;display:grid}.grid-demo .cols.mobile{grid-template-columns:repeat(4,1fr)}.grid-demo .cols.desktop{grid-template-columns:repeat(12,1fr)}.grid-demo .cols i{background:var(--a-coral-16);border-radius:2px}.grid-demo .spec{font-size:var(--fs-caption);color:var(--fg-soft)}.grid-demo .spec b{color:var(--fg);font-weight:700}.icon-rules,.a11y-grid{gap:var(--s-4);margin-top:var(--s-6);margin-bottom:var(--s-7);grid-template-columns:repeat(4,1fr);display:grid}.a11y-grid{grid-template-columns:repeat(3,1fr)}.icon-rule,.a11y-card{background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);padding:var(--s-5);gap:var(--s-2);flex-direction:column;display:flex}.icon-rule .ix,.a11y-card .ix{font-size:var(--fs-micro);letter-spacing:.1em;color:var(--accent-text);font-weight:700}.icon-rule b,.a11y-card b{font-size:var(--fs-body);font-weight:700}.icon-rule p,.a11y-card p{font-size:var(--fs-caption);color:var(--fg-soft);line-height:1.5}.a11y-card .demo{margin-top:var(--s-2);padding:var(--s-3);background:var(--canvas);border-radius:var(--r-2);font-size:var(--fs-caption);gap:var(--s-2);flex-direction:column;display:flex}.icon-grid{border:var(--bw-1) solid var(--line);border-radius:var(--r-3);background:var(--line);margin-top:var(--s-5);grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:0;display:grid;overflow:hidden}.icon-cell{background:var(--surface);padding:var(--s-5) var(--s-3) var(--s-3);align-items:center;gap:var(--s-3);transition:background var(--d-fast);flex-direction:column;display:flex}.icon-cell:hover{background:var(--surface-2)}.icon-cell svg{color:var(--accent);width:36px;height:36px}.icon-cell .nm{font-size:var(--fs-micro);color:var(--fg);font-weight:500}.illo-grid{margin-top:var(--s-6);gap:var(--s-4);grid-template-columns:repeat(3,1fr);display:grid}.illo-tile{background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-4);padding:var(--s-5);flex-direction:column;min-height:340px;display:flex;overflow:hidden}.illo-tile .canvas{color:var(--accent);padding:var(--s-2) var(--s-2) var(--s-5);flex:1;justify-content:center;align-items:center;display:flex}.illo-tile .canvas svg{width:100%;height:100%;max-height:220px}.illo-tile .lbl{font-weight:700;font-size:var(--fs-h4);line-height:1.15}.illo-tile .lbl small{font-weight:600;font-size:var(--fs-nano);letter-spacing:.18em;text-transform:uppercase;color:var(--accent-text);margin-bottom:var(--s-1);display:block}.motion-grid{margin-top:var(--s-6);gap:var(--s-5);grid-template-columns:1fr 1fr;display:grid}.motion-card{background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-4);padding:var(--s-5);gap:var(--s-4);flex-direction:column;display:flex}.duration-ladder{gap:var(--s-2);flex-direction:column;display:flex}.dur-row{gap:var(--s-3);font-size:var(--fs-caption);grid-template-columns:120px 60px 1fr 90px;align-items:center;display:grid}.dur-row .tok{color:var(--accent-text);font-weight:700;font-size:var(--fs-micro);letter-spacing:.06em;text-transform:uppercase;font-family:var(--f-mono)}.dur-row .ms{color:var(--fg-soft);font-feature-settings:"tnum" 1;text-align:end}.dur-row .bar-wrap{background:var(--surface-dim);border-radius:3px;height:6px;position:relative;overflow:hidden}.dur-row .bar-wrap i{background:var(--accent);width:0;height:100%;animation-iteration-count:infinite;animation-timing-function:var(--e-out-expo);border-radius:3px;position:absolute;top:0;left:0}.dur-row[data-d=instant] .bar-wrap i{animation:dbar var(--d-instant) infinite alternate}.dur-row[data-d=fast] .bar-wrap i{animation:dbar var(--d-fast) infinite alternate}.dur-row[data-d=base] .bar-wrap i{animation:dbar var(--d-base) infinite alternate}.dur-row[data-d=slow] .bar-wrap i{animation:dbar var(--d-slow) infinite alternate}@keyframes dbar{0%{width:0}to{width:100%}}.dur-row .play{font-size:var(--fs-micro);color:var(--fg-soft);font-weight:600}.easing-curves{gap:var(--s-3);grid-template-columns:repeat(2,1fr);display:grid}.curve{background:var(--surface-dim);border-radius:var(--r-2);padding:var(--s-3);aspect-ratio:1.2;justify-content:flex-end;gap:var(--s-1);flex-direction:column;display:flex;position:relative}.curve svg{inset:var(--s-3);width:auto;height:auto;color:var(--accent);position:absolute}.curve svg path{fill:none;stroke:currentColor;stroke-width:2px}.curve .nm{font-size:var(--fs-micro);color:var(--fg);z-index:var(--z-raised);font-weight:700;font-family:var(--f-mono);position:relative}.curve .v{font-size:var(--fs-nano);color:var(--fg-soft);font-feature-settings:"tnum" 1;z-index:var(--z-raised);position:relative}.voice-grid{margin-top:var(--s-6);gap:var(--s-4);grid-template-columns:1fr 1fr;display:grid}.voice-card{background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-4);padding:var(--s-5);gap:var(--s-4);flex-direction:column;display:flex}.voice-card.do{border-color:var(--positive)}.voice-card .tag{font-size:var(--fs-micro);letter-spacing:.18em;text-transform:uppercase;color:var(--positive);align-items:center;gap:var(--s-1);font-weight:700;display:inline-flex}.voice-card .tag:before{content:"";background:var(--positive-pip);border-radius:50%;width:10px;height:10px}.voice-card.bad .tag:before{background:var(--fg-mute)}.voice-card.bad .tag{color:var(--fg-mute)}.voice-card.bad{border-color:var(--fg-mute)}.voice-card .quote{font-size:var(--fs-h4);color:var(--fg);border-inline-start:2px solid var(--positive);padding-inline-start:var(--s-4);font-weight:500;line-height:1.45}.voice-card.bad .quote{border-color:var(--fg-mute);color:var(--fg-soft);text-decoration:line-through;-webkit-text-decoration-color:var(--a-ink-30);-webkit-text-decoration-color:var(--a-ink-30);-webkit-text-decoration-color:var(--a-ink-30);text-decoration-color:var(--a-ink-30)}.voice-card .note{font-size:var(--fs-caption);color:var(--fg-soft);line-height:1.55}.glossary{margin-top:var(--s-7);gap:0 var(--s-7);border-top:var(--bw-1) solid var(--line);grid-template-columns:1fr 1fr;display:grid}.glossary .g-row{padding:var(--s-3) 0;border-bottom:var(--bw-1) solid var(--line);gap:var(--s-4);font-size:var(--fs-caption);grid-template-columns:160px 1fr;display:grid}.glossary .g-row b{color:var(--accent-text);font-weight:700}.glossary .g-row span{color:var(--fg-soft);line-height:1.55}.comp-list{gap:var(--s-4);margin-top:var(--s-6);flex-direction:column;display:flex}.comp{gap:var(--s-7);background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-4);padding:var(--s-6);grid-template-columns:minmax(360px,440px) 1fr;align-items:flex-start;display:grid}.comp .stage{background:var(--canvas);border:var(--bw-1) dashed var(--line-strong);border-radius:var(--r-3);padding:var(--s-5);gap:var(--s-4);flex-direction:column;justify-content:center;align-items:stretch;min-height:200px;display:flex}.comp .stage.flat{align-items:flex-start}.comp .spec h4{font-size:var(--fs-caption);color:var(--accent-text);text-transform:uppercase;letter-spacing:.16em;margin-bottom:var(--s-3);align-items:center;gap:var(--s-2);flex-wrap:wrap;font-weight:700;display:flex}.comp .spec .name{font-size:var(--fs-h3);letter-spacing:-.02em;font-weight:800;line-height:1.1}.comp .spec .use-when{font-size:var(--fs-body);color:var(--fg-soft);margin-top:var(--s-2);font-style:italic;line-height:1.5}.comp .spec .role-row{margin-top:var(--s-5);gap:var(--s-2) var(--s-4);font-size:var(--fs-caption);color:var(--fg);grid-template-columns:96px 1fr;display:grid}.comp .spec .role-row dt{color:var(--fg-soft);font-weight:600;font-size:var(--fs-micro);letter-spacing:.12em;text-transform:uppercase;align-self:start;padding-top:2px}.comp .spec .role-row dd{color:var(--fg);margin:0;line-height:1.55}.comp .spec .role-row dd code{font-size:var(--fs-micro)}.pattern-grid{gap:var(--s-6);margin-top:var(--s-6);grid-template-columns:repeat(2,1fr);display:grid}.pattern{gap:var(--s-3);flex-direction:column;display:flex}.pattern .frame{background:var(--canvas);border:var(--bw-1) solid var(--line);border-radius:var(--r-4);padding:var(--s-5);gap:var(--s-3);flex-direction:column;min-height:560px;display:flex;overflow:hidden}.pattern .frame .phone{width:100%;max-width:var(--mobile-w);gap:var(--s-2);flex-direction:column;margin:0 auto;display:flex}.pattern .frame .phone .topbar{font-size:var(--fs-micro);color:var(--fg-soft);justify-content:space-between;align-items:center;font-weight:600;display:flex}.pattern .frame .phone .topbar .left{gap:var(--s-2);align-items:center;display:flex}.pattern .frame .phone .h-row{justify-content:space-between;align-items:center;display:flex}.pattern .frame .phone .h-row h4{letter-spacing:-.02em;font-size:22px;font-weight:800}.pattern .label{color:var(--fg);justify-content:space-between;align-items:baseline;display:flex}.pattern .label b{font-size:var(--fs-h4);font-weight:700}.pattern .label span{font-size:var(--fs-micro);letter-spacing:.18em;text-transform:uppercase;color:var(--accent-text);font-weight:600}.spread{background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-4);width:100%;max-width:var(--mobile-w);flex-direction:column;min-height:380px;padding:0;display:flex;position:relative;overflow:hidden}.spread .canvas{padding:var(--s-5) var(--s-5) var(--s-4);color:var(--accent);flex:1;justify-content:center;align-items:center;min-height:220px;display:flex}.spread .canvas svg{width:100%;height:100%;max-height:220px}.spread .meta{padding:0 var(--s-5) var(--s-4);gap:var(--s-1);flex-direction:column;display:flex}.spread .meta small{font-size:var(--fs-nano);letter-spacing:.18em;text-transform:uppercase;color:var(--accent-text);font-weight:600}.spread .meta b{font-size:var(--fs-h4);font-weight:700;line-height:1.15}.spread .chips-row{gap:var(--s-1);padding:0 var(--s-5) var(--s-5);flex-wrap:wrap;display:flex}.platform-grid,.gov-grid{margin-top:var(--s-6);gap:var(--s-4);grid-template-columns:1fr 1fr;display:grid}.platform-card,.gov-card{background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);padding:var(--s-5);gap:var(--s-3);flex-direction:column;display:flex}.platform-card h4,.gov-card h4{font-size:var(--fs-h4)}.platform-card p,.gov-card p{font-size:var(--fs-caption);color:var(--fg-soft);line-height:1.55}.platform-card ul,.gov-card ul{font-size:var(--fs-caption);color:var(--fg-soft);margin:0;padding-inline-start:var(--s-4);line-height:1.7}.haptic-row{align-items:center;gap:var(--s-3);padding:var(--s-2) 0;border-bottom:var(--bw-1) solid var(--line);font-size:var(--fs-caption);display:flex}.haptic-row b{min-width:120px;color:var(--fg)}footer{padding:var(--s-9) 0 var(--s-8);background:var(--surface-2);color:var(--accent-text)}footer .container{gap:var(--s-7);grid-template-columns:auto 1fr auto;align-items:end;display:grid}footer .hecho-logo{height:72px;color:var(--accent)}footer .legal{font-size:var(--fs-caption);letter-spacing:.04em;color:var(--fg);max-width:42ch;line-height:1.6}footer .legal b{font-weight:700}footer .legal .changelog{gap:var(--s-1);margin-top:var(--s-3);color:var(--fg-soft);font-size:var(--fs-micro);flex-direction:column;display:flex}footer .links{align-items:flex-end;gap:var(--s-2);font-size:var(--fs-caption);flex-direction:column;font-weight:500;display:flex}footer .links .label{font-size:var(--fs-micro);letter-spacing:.2em;text-transform:uppercase;color:var(--accent-text);font-weight:700}footer a:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}footer .marquee{margin-top:var(--s-8);border-top:var(--bw-1) solid var(--a-coral-25);padding-top:var(--s-4);font-family:var(--f);letter-spacing:-.02em;color:var(--accent);white-space:nowrap;font-size:8vw;font-style:italic;font-weight:500;line-height:.95;display:flex;overflow:hidden}footer .marquee span{animation:marq var(--d-loop-marquee) var(--e-linear) infinite;align-items:flex-start;gap:.05em;padding-inline-end:.6em;display:inline-flex}@keyframes marq{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (max-width:1180px){.cover .container{gap:var(--s-6);grid-template-columns:1fr;height:auto}.cover:before{height:48%}.cover{height:auto;min-height:100vh;padding:110px 0 var(--s-7)}.swatch-grid{grid-template-columns:repeat(2,1fr)}.derived,.tier-table{grid-template-columns:1fr 1fr}.section-head{gap:var(--s-4);grid-template-columns:1fr}.logo-grid,.motion-grid,.voice-grid,.illo-grid,.comp,.pattern-grid,.grid-demo,.platform-grid,.gov-grid{grid-template-columns:1fr}.dodont,.icon-rules{grid-template-columns:1fr 1fr}.a11y-grid{grid-template-columns:1fr}.glossary{grid-template-columns:1fr;gap:0}footer .container{gap:var(--s-5);grid-template-columns:1fr}footer .links{align-items:flex-start}.nav{display:none}.type-row{gap:var(--s-4);grid-template-columns:64px 1fr}.type-row .spec{grid-column:1/-1}}@media (max-width:640px){section,.found{padding:80px 0}.container,.container-wide{padding:0 var(--s-5)}.swatch-grid,.derived,.weights,.tier-table{grid-template-columns:1fr}.icon-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}.site-header .inner{padding:var(--s-3) var(--s-5)}.dodont{grid-template-columns:1fr}}[dir=rtl] .list-row .trail svg,[dir=rtl] .pattern .frame .phone .topbar .left svg,[dir=rtl] .scan-result .actions svg,[dir=rtl] .cover-side .ix-list a .arr{transform:scaleX(-1)}[dir=rtl] .select{background-position:left var(--s-4) center}[dir=rtl] .privacy-row.is-masked .value:before{right:auto;inset-inline-end:0}[dir=rtl] .timeline{padding-inline-start:0;padding-inline-end:var(--s-5)}[dir=rtl] .timeline .rail{left:auto;inset-inline-start:7px}[dir=rtl] .timeline .step .pip{left:auto;inset-inline-start:calc(-1 * var(--s-5) + 2px)}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.viewfinder .scan-line,.viewfinder .roi-line-track,.dur-row .bar-wrap i,footer .marquee span,.sync-tag .spin-dot,.btn.is-loading:after,.skeleton .s-bar,.scroll-cue:after{animation:none!important}}.love-btn{border-radius:var(--r-pill);border:var(--bw-1) solid var(--line);background:var(--surface);width:32px;height:32px;color:var(--fg-soft);cursor:pointer;transition:color var(--d-fast),border-color var(--d-fast),background var(--d-fast);flex:none;justify-content:center;align-items:center;display:inline-flex}.love-btn:hover{color:var(--accent-text);border-color:var(--accent-text)}.love-btn:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}.love-btn.is-loved{color:var(--accent);border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.love-btn.is-loved{border-color:color-mix(in srgb,var(--accent) 40%,transparent)}}.love-btn.is-loved{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.love-btn.is-loved{background:color-mix(in srgb,var(--accent) 10%,transparent)}}.love-btn.is-loved svg{animation:love-pop .35s var(--e-out-expo)}@keyframes love-pop{0%{transform:scale(.5)}55%{transform:scale(1.25)}to{transform:scale(1)}}[data-reduced] .love-btn.is-loved svg{animation:none}.love-added-overlay{z-index:3;justify-content:center;align-items:center;gap:var(--s-2);text-align:center;padding:var(--s-5);background:var(--surface);border-radius:inherit;flex-direction:column;animation:.18s both love-added-in;display:flex;position:absolute;inset:0}.love-added-overlay .burst{width:72px;height:72px;color:var(--accent);background:var(--accent);border-radius:50%;place-items:center;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.love-added-overlay .burst{background:color-mix(in srgb,var(--accent) 14%,transparent)}}.love-added-overlay .burst{animation:love-pop .5s var(--e-out-back)}.love-added-overlay .burst:before{content:"";border:2px solid var(--accent);animation:love-ring .6s var(--e-out-expo) forwards;border-radius:50%;position:absolute;inset:0}.love-added-overlay h3{margin:0}@keyframes love-ring{0%{opacity:.55;transform:scale(.6)}to{opacity:0;transform:scale(1.8)}}@keyframes love-added-in{0%{opacity:0}to{opacity:1}}.love-btn.overlay{top:var(--s-2);background:var(--surface);width:28px;height:28px;position:absolute;inset-inline-end:var(--s-2)}@supports (color:color-mix(in lab, red, red)){.love-btn.overlay{background:color-mix(in srgb,var(--surface) 84%,transparent)}}.love-btn.overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2}.love-row{cursor:default;grid-template-columns:1fr auto}.love-row .lr-open{gap:var(--s-3);text-align:start;min-width:0;font-family:var(--f);color:var(--fg);cursor:pointer;background:0 0;border:0;grid-template-columns:auto 1fr;align-items:center;padding:0;display:grid}.love-row .lr-open:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset);border-radius:var(--r-2)}.love-src{align-items:center;gap:var(--s-1);font-size:var(--fs-nano);color:var(--fg-mute);display:inline-flex}.love-src svg{flex:none}.love-note{align-items:center;gap:var(--s-1);font-size:var(--fs-nano);color:var(--accent-text);font-style:italic;display:inline-flex}.love-note svg{flex:none}.entry{justify-content:center;align-items:center;gap:var(--s-6);height:100%;padding:var(--s-4);flex-direction:column;display:flex;position:relative}.entry .corner-btn{top:var(--s-3);width:var(--control-md);height:var(--control-md);color:var(--fg-soft);background:var(--surface);border:var(--bw-1) solid var(--line);cursor:pointer;border-radius:50%;place-items:center;display:grid;position:absolute;inset-inline-end:var(--s-3)}.entry .corner-btn:hover{background:var(--surface-dim)}.entry-brand{align-items:center;gap:var(--s-3);flex-direction:column;display:flex}.entry-brand svg{color:var(--accent)}.entry-tag{font-size:var(--fs-caption);color:var(--fg-soft);letter-spacing:.08em;text-transform:uppercase;font-weight:600}.entry-choices{gap:var(--s-3);flex-direction:column;width:100%;max-width:340px;display:flex}.entry-card{align-items:center;gap:var(--s-3);width:100%;padding:var(--s-4);background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);cursor:pointer;text-align:start;font-family:var(--f);transition:border-color var(--d-fast),background var(--d-fast);display:flex}.entry-card:hover{border-color:var(--accent-text);background:var(--surface-2)}.entry-card:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}.entry-card .ec-ic{border-radius:var(--r-2);background:linear-gradient(135deg,var(--surface-2),var(--surface-dim));width:48px;height:48px;color:var(--accent);flex:none;place-items:center;display:grid}.entry-card .ec-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.entry-card .ec-body b{font-size:var(--fs-body);color:var(--fg)}.entry-card .ec-body span{font-size:var(--fs-caption);color:var(--fg-soft)}.entry-card .ec-arr{color:var(--fg-mute);flex:none;display:inline-flex}.entry-alt{color:var(--fg-soft);font-family:var(--f);font-size:var(--fs-caption);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;font-weight:600;text-decoration:underline}.home-top{justify-content:space-between;align-items:center;gap:var(--s-3);min-height:44px;display:flex}.home-top .ht-actions{gap:2px;display:flex}.home-top .hicon{width:var(--control-md);height:var(--control-md);color:var(--fg);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:grid;position:relative}.home-top .hicon:hover{background:var(--surface-dim)}.home-top .hicon svg{width:22px;height:22px}.home-top .hicon .badge{position:absolute;top:2px;right:2px}.scan-cta{align-items:center;gap:var(--s-4);width:100%;padding:var(--s-4) var(--s-5);background:var(--action);color:var(--on-action);border-radius:var(--r-3);cursor:pointer;font-family:var(--f);text-align:start;transition:background var(--d-fast);border:0;display:flex}.scan-cta:hover{background:var(--action-hover)}.scan-cta:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}.scan-cta .sc-ic{flex:none;display:inline-flex}.scan-cta .sc-body{flex-direction:column;gap:2px;display:flex}.scan-cta .sc-body b{font-size:var(--fs-h4,17px);font-weight:700}.scan-cta .sc-body span{font-size:var(--fs-caption);opacity:.85}.cat-card{align-items:flex-start;gap:var(--s-2);cursor:pointer;max-width:none}.cat-card .cc-art{border-radius:var(--r-2);width:48px;height:48px}.cat-card b{font-size:var(--fs-body)}.cat-card .muted{font-size:var(--fs-caption)}html,body{height:100%}body.proto{background:radial-gradient(1200px 600px at 12% -10%, var(--surface-2), transparent 60%), radial-gradient(900px 500px at 110% 10%, var(--surface-2), transparent 55%), var(--canvas);margin:0}@supports (color:color-mix(in lab, red, red)){body.proto{background:radial-gradient(1200px 600px at 12% -10%, color-mix(in srgb, var(--surface-2) 55%, transparent), transparent 60%), radial-gradient(900px 500px at 110% 10%, color-mix(in srgb, var(--surface-2) 40%, transparent), transparent 55%), var(--canvas)}}body.proto{overflow:hidden}.app-shell{grid-template-columns:372px 1fr;width:100%;height:100dvh;display:grid}.app-shell.console-collapsed{grid-template-columns:1fr}.stage{min-width:0;padding:var(--s-6);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.stage-grain{pointer-events:none;opacity:.5;position:absolute;inset:0}.device{width:402px;height:min(872px,100vh - 48px);box-shadow:0 2px 1px 1px #ffffff0f inset, var(--shadow-lg), 0 50px 90px -40px #1f1d1b99;background:#0f0e0d;border-radius:54px;flex:none;padding:11px;position:relative}.device:after{content:"";background:#2a2826;border-radius:3px;width:3px;height:86px;position:absolute;top:200px;right:-2px}.device .notch{z-index:40;background:#0f0e0d;border-radius:0 0 18px 18px;width:128px;height:30px;position:absolute;top:11px;left:50%;transform:translate(-50%)}.screen-frame{background:var(--canvas);width:100%;height:100%;color:var(--fg);border-radius:44px;flex-direction:column;display:flex;position:relative;overflow:hidden}.statusbar{height:48px;font-size:var(--fs-caption);color:var(--fg);z-index:30;flex:none;justify-content:space-between;align-items:flex-end;padding:0 26px 6px;font-weight:600;display:flex;position:relative}.statusbar .clock{font-feature-settings:"tnum" 1;letter-spacing:.02em}.statusbar .ind{align-items:center;gap:6px;display:inline-flex}.statusbar .ind svg{width:17px;height:17px}.statusbar .batt{opacity:.9;border:1.4px solid;border-radius:3px;width:24px;height:12px;position:relative}.statusbar .batt:before{content:"";background:currentColor;border-radius:1px;width:70%;position:absolute;top:1.4px;bottom:1.4px;left:1.4px}.statusbar .batt:after{content:"";background:currentColor;border-radius:0 2px 2px 0;width:2px;position:absolute;top:3px;bottom:3px;right:-3px}.app-header{align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-4) var(--s-3);background:var(--canvas);border-bottom:var(--bw-1) solid var(--line-soft);z-index:25;flex:none;display:flex;position:relative}.app-header .title{letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:21px;font-weight:800;overflow:hidden}.app-header .title small{font-size:var(--fs-nano);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-text);font-weight:700;display:block}.app-header .back{width:var(--control-md);height:var(--control-md);color:var(--fg);border-radius:50%;flex:none;place-items:center;display:grid}.app-header .back:hover{background:var(--surface-dim)}.app-header .hicon{width:var(--control-md);height:var(--control-md);color:var(--fg);border-radius:50%;flex:none;place-items:center;display:grid;position:relative}.app-header .hicon:hover{background:var(--surface-dim)}.app-header .hicon svg{width:22px;height:22px}.app-header .hicon .badge{position:absolute;top:4px;right:4px}.app-header.on-camera{background:var(--viewfinder-1);color:var(--on-viewfinder);border-bottom-color:#0000}.app-header.on-camera .title,.app-header.on-camera .back,.app-header.on-camera .hicon{color:var(--on-viewfinder)}.screen-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-direction:column;flex:auto;display:flex;position:relative;overflow:hidden auto}.screen-scroll::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:3px}.screen-body{padding:var(--s-4) var(--s-4) var(--s-7);gap:var(--s-4);flex-direction:column;flex:1 0 auto;min-height:100%;display:flex}.screen-body.flush{gap:0;padding:0}.screen-frame.camera{background:var(--viewfinder-1)}.screen-frame.camera .screen-body{padding:0}.net-slot{z-index:24;position:relative}.net-slot .offline-bar{border-radius:0;justify-content:flex-start;max-width:none}.tabbar-wrap{padding:var(--s-2) var(--s-3) var(--s-2);background:var(--canvas);z-index:25;flex:none;position:relative}.tabbar-wrap .tabbar{max-width:none;box-shadow:var(--shadow-md)}.home-indicator{background:var(--canvas);flex:none;place-items:center;height:22px;display:grid}.home-indicator i{background:var(--fg);opacity:.85;border-radius:3px;width:134px;height:5px}.screen-frame.camera .tabbar-wrap,.screen-frame.camera .home-indicator{background:var(--viewfinder-1)}.screen-frame.camera .home-indicator i{background:var(--on-viewfinder)}@keyframes screen-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.screen-body.animate-in{animation:screen-in var(--d-base) var(--e-out-expo)}@media (prefers-reduced-motion:reduce){.screen-body.animate-in{animation:none}}.stack{gap:var(--s-3);flex-direction:column;display:flex}.stack.tight{gap:var(--s-2)}.stack.loose{gap:var(--s-4)}.row-between{justify-content:space-between;align-items:center;gap:var(--s-3);display:flex}.section-label{font-size:var(--fs-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-text);font-weight:700}.muted{color:var(--fg-soft);font-size:var(--fs-caption);line-height:1.5}.hairline{height:var(--bw-1);background:var(--line);width:100%}.grid-2{gap:var(--s-3);grid-template-columns:1fr 1fr;display:grid}.grid-3{gap:var(--s-2);grid-template-columns:1fr 1fr 1fr;display:grid}.rail{gap:var(--s-3);padding-bottom:var(--s-2);scrollbar-width:none;scroll-snap-type:x mandatory;display:flex;overflow-x:auto}.rail::-webkit-scrollbar{display:none}.rail>*{scroll-snap-align:start;flex:none}.rail.tiles>*{width:158px}.list-row.pick{grid-template-columns:auto auto 1fr}.chip-row{gap:var(--s-2);padding-bottom:var(--s-1);scrollbar-width:none;display:flex;overflow-x:auto}.chip-row::-webkit-scrollbar{display:none}.sticky-actions{margin:var(--s-3) calc(-1 * var(--s-4)) calc(-1 * var(--s-7));padding:var(--s-3) var(--s-4) var(--s-4);background:var(--canvas);position:sticky;bottom:0}@supports (color:color-mix(in lab, red, red)){.sticky-actions{background:color-mix(in srgb, var(--canvas) 92%, transparent)}}.sticky-actions{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:var(--bw-1) solid var(--line);gap:var(--s-2);z-index:10;display:flex}.sticky-actions .btn{flex:1}.thumb-illo{color:var(--accent);background:linear-gradient(135deg, var(--surface-2), var(--surface-dim));place-items:center;display:grid}.coachmark{z-index:35;background:var(--toast-bg);color:var(--toast-fg);border-radius:var(--r-3);padding:var(--s-3) var(--s-4);max-width:240px;box-shadow:var(--shadow-lg);font-size:var(--fs-caption);line-height:1.5;position:absolute}.coachmark .act{margin-top:var(--s-2);color:var(--toast-accent);font-weight:700;font-size:var(--fs-micro);text-transform:uppercase;letter-spacing:.1em}.device-overlay{z-index:50;pointer-events:none;border-radius:44px;position:absolute;inset:0;overflow:hidden}.device-overlay>*{pointer-events:auto}.overlay-host,.overlay-host .sheet-shell,.overlay-host .modal-shell,.overlay-host .drawer-shell{position:absolute;inset:0}.overlay-host .sheet{max-height:86%;overflow-y:auto}.sheet:focus,.modal:focus,.drawer:focus{outline:none}.overlay-host .drawer{width:min(280px,80%)}.mask-inline{cursor:default;font:inherit;color:inherit;border:0;border-bottom:1.5px solid var(--accent);background:0 0;align-items:center;padding:0;line-height:1.1;display:inline-flex;position:relative}.mask-inline .mv{visibility:hidden}.mask-inline .mdots{letter-spacing:.14em;color:var(--fg-mute);justify-content:center;align-items:center;font-size:.82em;display:inline-flex;position:absolute;inset:0}.mask-inline.is-open{cursor:default;border-bottom-color:#0000}.mask-inline.is-open .mv{visibility:visible}.mask-inline.is-open .mdots{display:none}.mask-inline:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:2px;border-radius:2px}.toast-host{z-index:60;gap:var(--s-2);flex-direction:column;align-items:center;width:max-content;max-width:88%;display:flex;position:absolute;bottom:96px;left:50%;transform:translate(-50%)}.sheet-shell,.modal-shell,.drawer-shell{animation:scrim-in var(--d-fast) ease}@keyframes scrim-in{0%{opacity:0}to{opacity:1}}.sheet{animation:sheet-up var(--d-slow) var(--e-out-expo)}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:none}}.modal{animation:modal-pop var(--d-base) var(--e-out-back)}@keyframes modal-pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}.drawer{animation:drawer-in var(--d-base) var(--e-out-expo)}@keyframes drawer-in{0%{transform:translate(100%)}to{transform:none}}@media (prefers-reduced-motion:reduce){.sheet,.modal,.drawer,.sheet-shell,.modal-shell,.drawer-shell{animation:none}}.console{background:var(--surface);border-right:var(--bw-1) solid var(--line);flex-direction:column;min-width:0;height:100vh;display:flex;overflow:hidden}.app-shell.console-collapsed .console{display:none}.console-head{padding:var(--s-4) var(--s-4) var(--s-3);border-bottom:var(--bw-1) solid var(--line);gap:var(--s-2);flex-direction:column;display:flex}.console-head .brand-row{justify-content:space-between;align-items:center;display:flex}.console-head .hecho-logo{height:22px}.console-head .ver{font-size:var(--fs-nano);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-soft);font-weight:700}.console-head .sub{font-size:var(--fs-caption);color:var(--fg-soft);line-height:1.4}.console-tabs{gap:var(--s-1);padding:var(--s-3) var(--s-3) 0;grid-template-columns:repeat(4,1fr);display:grid}.console-tabs button{padding:var(--s-2) var(--s-1);border-radius:var(--r-2) var(--r-2) 0 0;font-size:var(--fs-micro);letter-spacing:.04em;color:var(--fg-soft);cursor:pointer;border-bottom:2px solid #0000;font-weight:700}.console-tabs button[aria-selected=true]{color:var(--accent-text);border-bottom-color:var(--accent)}.console-tabs button:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:-2px;border-radius:var(--r-1)}.console-body{padding:var(--s-4);gap:var(--s-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.console-body::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:4px}.console-foot{padding:var(--s-2) var(--s-4);border-top:var(--bw-1) solid var(--line);font-size:var(--fs-nano);color:var(--fg-mute);justify-content:space-between;align-items:center;display:flex}.var-group{gap:var(--s-2);flex-direction:column;display:flex}.var-group>.gl{font-size:var(--fs-nano);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-soft);font-weight:700}.var-row{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-2) 0;border-bottom:var(--bw-1) solid var(--line-soft);display:flex}.var-row .vk{font-size:var(--fs-caption);color:var(--fg);font-weight:600}.var-row .vk small{color:var(--fg-soft);font-weight:400;font-size:var(--fs-nano);margin-top:1px;line-height:1.3;display:block}.seg-mini{background:var(--surface-dim);border-radius:var(--r-pill);flex-wrap:wrap;justify-content:flex-end;gap:2px;max-width:196px;padding:2px;display:inline-flex}.seg-mini button{border-radius:var(--r-pill);font-size:var(--fs-nano);color:var(--fg-soft);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:4px 9px;font-weight:700}.seg-mini button[aria-pressed=true]{background:var(--surface);color:var(--accent-text);box-shadow:var(--shadow-sm)}.seg-mini button:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:1px}.console-list{gap:var(--s-1);flex-direction:column;display:flex}.c-item{align-items:center;gap:var(--s-2);text-align:start;width:100%;padding:var(--s-2) var(--s-3);border-radius:var(--r-2);background:var(--surface);border:var(--bw-1) solid var(--line);cursor:pointer;transition:background var(--d-fast), border-color var(--d-fast);display:flex}.c-item:hover{background:var(--surface-2)}.c-item.is-active{border-color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.c-item.is-active{background:color-mix(in srgb, var(--accent) 8%, transparent)}}.c-item:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:1px}.c-item .cid{font-size:var(--fs-nano);color:var(--accent-text);font-weight:800;font-family:var(--f-mono);flex:none;min-width:34px}.c-item .cnm{font-size:var(--fs-caption);color:var(--fg);flex:1;min-width:0;line-height:1.3}.c-item .cph{font-size:var(--fs-nano);letter-spacing:.06em;color:var(--fg-mute);font-weight:700}.c-group-h{font-size:var(--fs-nano);letter-spacing:.16em;text-transform:uppercase;color:var(--fg-soft);margin-top:var(--s-3);padding:0 var(--s-1);justify-content:space-between;font-weight:700;display:flex}.c-group-h:first-child{margin-top:0}.flow-player{background:var(--canvas);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);padding:var(--s-3);gap:var(--s-2);flex-direction:column;display:flex}.flow-player .fp-head{justify-content:space-between;align-items:baseline;gap:var(--s-2);display:flex}.flow-player .fp-title{font-size:var(--fs-body);font-weight:700}.flow-player .fp-count{font-size:var(--fs-nano);color:var(--fg-soft);font-feature-settings:"tnum" 1}.flow-player .fp-step{font-size:var(--fs-caption);color:var(--fg);min-height:56px;line-height:1.5}.flow-player .fp-step .sid{font-size:var(--fs-nano);color:var(--accent-text);font-weight:700;font-family:var(--f-mono)}.flow-player .fp-branch{font-size:var(--fs-nano);color:var(--fg-soft);border-inline-start:2px solid var(--accent);margin-top:var(--s-1);padding-inline-start:var(--s-2)}.flow-player .fp-nav{gap:var(--s-2);display:flex}.flow-player .fp-nav .btn{flex:1}.telemetry{gap:var(--s-1);font-family:var(--f-mono);flex-direction:column;display:flex}.tel-row{gap:var(--s-2);padding:var(--s-1) var(--s-2);border-radius:var(--r-1);background:var(--canvas);border:var(--bw-1) solid var(--line-soft);font-size:var(--fs-nano);align-items:baseline;display:flex}.tel-row .te{color:var(--accent-text);word-break:break-all;flex:1;font-weight:700}.tel-row .ts{color:var(--fg-mute);font-feature-settings:"tnum" 1}.tel-row .tsrc{color:var(--fg-soft)}.tel-empty{font-size:var(--fs-caption);color:var(--fg-mute);padding:var(--s-3);text-align:center;font-style:italic}.proto-fab{z-index:var(--z-toast);align-items:center;gap:var(--s-2);background:var(--action-sm);color:var(--on-action);border-radius:var(--r-pill);padding:var(--s-2) var(--s-4);font-size:var(--fs-micro);letter-spacing:.08em;text-transform:uppercase;box-shadow:var(--shadow-md);font-weight:700;display:inline-flex;position:fixed}.proto-fab.left{left:var(--s-4);top:var(--s-4)}.proto-fab svg{width:16px;height:16px}.proto-fab[hidden]{display:none}.device-tools{top:var(--s-3);right:calc(100% + var(--s-4));gap:var(--s-2);flex-direction:column;display:flex;position:absolute}.device-tools button{background:var(--surface);border:var(--bw-1) solid var(--line);width:40px;height:40px;color:var(--fg-soft);box-shadow:var(--shadow-sm);cursor:pointer;border-radius:50%;place-items:center;display:grid}.device-tools button:hover{color:var(--accent-text);border-color:var(--accent)}.device-tools button[aria-pressed=true]{background:var(--action-sm);color:var(--on-action);border-color:var(--action-sm)}.device-tools button svg{width:18px;height:18px}.proto-swap{justify-content:center;align-items:center;gap:var(--s-2);margin-top:var(--s-3);padding:var(--s-2) var(--s-3);border:var(--bw-1) solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--accent-text);font-size:var(--fs-micro);letter-spacing:.08em;text-transform:uppercase;font-weight:700;text-decoration:none;display:flex}.proto-swap:hover{border-color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.proto-swap:hover{background:color-mix(in srgb, var(--accent) 6%, transparent)}}.proto-swap svg{flex:none;width:15px;height:15px}.device-wrap{display:flex;position:relative}@media (max-width:1040px){.app-shell{grid-template-columns:1fr}.console{width:min(372px,86vw);z-index:var(--z-drawer);transition:transform var(--d-base) var(--e-out-expo);box-shadow:var(--shadow-lg);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.app-shell.console-open .console{transform:none}.device-tools{right:auto;left:calc(100% + var(--s-3))}}@media (max-width:520px){.stage{padding:0}.device{border-radius:0;width:100vw;height:100dvh;padding:0}.device:after,.device .notch{display:none}.screen-frame{border-radius:0}.statusbar{height:40px}.device-tools{left:auto;right:var(--s-3);flex-direction:row;top:auto;bottom:86px}.console{width:100vw}}.console-scrim{background:var(--scrim);z-index:999;opacity:0;pointer-events:none;transition:opacity var(--d-fast);position:fixed;inset:0}.app-shell.console-open~.console-scrim{opacity:1;pointer-events:auto}@media (min-width:1041px){.console-scrim{display:none}}.scene{aspect-ratio:16/10;background:linear-gradient(160deg, var(--surface-2), var(--surface-dim));border-radius:inherit;width:100%;color:var(--accent);position:relative;overflow:hidden}.scene-ground{opacity:.75;background:currentColor;border-radius:1px;height:1.5px;position:absolute;top:78%;left:7%;right:7%}.scene-item{pointer-events:none;position:absolute;transform:translate(-50%,-100%)}.scene-item svg{width:100%;height:100%}.scene-dot{width:var(--hit-min);height:var(--hit-min);transform:translate(-50%, -50%) translateY(calc(-1 * var(--lift,24px)));cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute}.scene-dot i{background:var(--surface);border:var(--bw-2) solid var(--accent);width:14px;height:14px;box-shadow:0 0 0 0 var(--a-coral-25);transition:transform var(--d-fast) var(--e-out-back);animation:dot-pulse 2.4s var(--e-in-out) infinite;border-radius:50%}.scene-dot:hover i,.scene-dot[aria-expanded=true] i{background:var(--accent);animation:none;transform:scale(1.15)}.scene-dot:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:-8px;border-radius:50%}@keyframes dot-pulse{0%,to{box-shadow:0 0 0 0 var(--a-coral-25)}50%{box-shadow:0 0 0 8px #0000}}@media (prefers-reduced-motion:reduce){.scene-dot i{animation:none}}.scene-pop{z-index:5;align-items:center;gap:var(--s-2);background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);box-shadow:var(--shadow-md);padding:var(--s-2) var(--s-3);width:max-content;max-width:86%;animation:scene-pop-in var(--d-fast) var(--e-out-back);display:flex;position:absolute;transform:translate(-50%)}@keyframes scene-pop-in{0%{opacity:0;transform:translate(-50%)scale(.92)}to{opacity:1;transform:translate(-50%)scale(1)}}@media (prefers-reduced-motion:reduce){.scene-pop{animation:none}}.scene-pop .sp-body{min-width:0;color:var(--fg);flex-direction:column;display:flex}.scene-pop .sp-body b{font-size:var(--fs-caption);white-space:nowrap;text-overflow:ellipsis;line-height:1.2;overflow:hidden}.scene-pop .sp-acts{gap:var(--s-1);flex:none;display:flex}.scene-hint{align-items:center;gap:var(--s-1);font-size:var(--fs-nano);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-text);font-weight:700;display:inline-flex}.scene-hint i{border:var(--bw-2) solid var(--accent);border-radius:50%;width:8px;height:8px}.resume-card{gap:var(--s-1);width:220px;padding:var(--s-3) var(--s-4);background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);text-align:start;cursor:pointer;transition:transform var(--d-fast) var(--e-out-expo), border-color var(--d-fast);flex-direction:column;display:flex}.resume-card:hover{border-color:var(--accent);transform:translateY(-2px)}.resume-card:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}.resume-card .rc-head{justify-content:space-between;align-items:center;gap:var(--s-2);width:100%;display:flex}.resume-card .rc-head b{font-size:var(--fs-body);white-space:nowrap;text-overflow:ellipsis;min-width:0;line-height:1.2;overflow:hidden}.resume-card .rc-line{align-items:baseline;gap:var(--s-1);font-size:var(--fs-caption);font-feature-settings:"tnum" 1;display:flex}.resume-card .rc-time{align-items:center;gap:var(--s-1);font-size:var(--fs-nano);color:var(--fg-mute);display:inline-flex}.drop-card{align-items:center;gap:var(--s-1);width:132px;padding:var(--s-3) var(--s-2);background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);text-align:center;cursor:pointer;transition:transform var(--d-fast) var(--e-out-expo), border-color var(--d-fast);flex-direction:column;display:flex}.drop-card:hover{border-color:var(--accent);transform:translateY(-2px)}.drop-card:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}.drop-card .dc-art{border-radius:var(--r-2);place-items:center;width:72px;height:72px;display:grid}.drop-card .dc-name{font-size:var(--fs-caption);color:var(--fg);font-weight:700;line-height:1.15}.drop-card.is-locked .dc-art{filter:grayscale(.5)saturate(.6);opacity:.75}.brand-grid{gap:var(--s-2);grid-template-columns:repeat(3,1fr);display:grid}.brand-tile{aspect-ratio:4/5;border-radius:var(--r-3);border:var(--bw-1) solid var(--line);cursor:pointer;background:linear-gradient(160deg, var(--surface-2), var(--surface-dim));transition:transform var(--d-fast) var(--e-out-expo);flex-direction:column;padding:0;display:flex;position:relative;overflow:hidden}.brand-tile:nth-child(3n+2){background:linear-gradient(200deg, var(--surface-dim), var(--surface-2))}.brand-tile:hover{transform:translateY(-2px)}.brand-tile:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}.brand-tile .bt-art{color:var(--accent);padding-top:var(--s-2);flex:1;place-items:center;display:grid}.brand-tile .bt-art img{object-fit:contain;max-width:78%;max-height:72px}.brand-tile .bt-name{padding:var(--s-1) var(--s-2) var(--s-3);font-size:var(--fs-caption);color:var(--fg);text-align:center;font-weight:700;line-height:1.15}.brand-tile .bt-lock{top:var(--s-2);right:var(--s-2);background:var(--surface);border-radius:50%;place-items:center;width:22px;height:22px;display:grid;position:absolute}@supports (color:color-mix(in lab, red, red)){.brand-tile .bt-lock{background:color-mix(in srgb, var(--surface) 85%, transparent)}}.brand-tile .bt-lock{color:var(--accent-text)}.brand-tile.is-locked .bt-art{filter:grayscale(.5)saturate(.6);opacity:.75}.low-card{align-items:center;gap:var(--s-2);background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);padding:var(--s-2) var(--s-3);width:252px;display:flex}.low-card .lc-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.low-card .lc-body b{font-size:var(--fs-caption);white-space:nowrap;text-overflow:ellipsis;line-height:1.2;overflow:hidden}.low-card .btn{flex:none}.floorplan{background:var(--surface);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);padding:var(--s-5);color:var(--accent);min-height:240px;position:relative}.floorplan .pins{position:absolute;inset:0}.map-pin{background:var(--surface);border:var(--bw-2) solid var(--line-strong);width:34px;height:34px;color:var(--fg);font-size:var(--fs-nano);cursor:pointer;border-radius:50%;place-items:center;font-weight:700;display:grid;position:absolute;transform:translate(-50%,-50%)}.map-pin.visited{border-color:var(--accent);color:var(--accent-text)}.map-pin.current{background:var(--action);border-color:var(--action);color:var(--on-action);transform:translate(-50%,-50%)scale(1.12)}.map-pin:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:2px}[hidden]{display:none!important}.center-col{text-align:center;align-items:center;gap:var(--s-3);flex-direction:column;display:flex}.pad-block{padding:var(--s-6) var(--s-4)}.fullbleed-illo{width:100%;color:var(--accent)}*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}.screen-scroll::-webkit-scrollbar{width:8px}.console-body::-webkit-scrollbar{width:8px}.screen-scroll::-webkit-scrollbar-track{background:0 0}.console-body::-webkit-scrollbar-track{background:0 0}.screen-scroll::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:var(--r-pill);background-clip:padding-box;border:2px solid #0000}.console-body::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:var(--r-pill);background-clip:padding-box;border:2px solid #0000}.screen-scroll::-webkit-scrollbar-thumb:hover{background:var(--accent);background-clip:padding-box}.console-body::-webkit-scrollbar-thumb:hover{background:var(--accent);background-clip:padding-box}.cam-btn{background:var(--a-ink-60);width:40px;height:40px;color:var(--on-viewfinder);cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:0;border-radius:50%;place-items:center;display:grid}.cam-btn:hover{background:var(--a-ink-35)}.cam-link{color:var(--on-viewfinder);font-size:var(--fs-caption);opacity:.92;padding:var(--s-2);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;font-weight:600;text-decoration:underline}.segmented.on-camera{background:var(--a-ink-60);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.segmented.on-camera button{color:var(--on-viewfinder)}.segmented.on-camera button[aria-selected=true]{background:var(--cream-bright);color:var(--warm-900);box-shadow:none}.switch input{width:auto;height:auto;inset:-9px -6px}.list-row .switch .thumb,.switch .thumb{background:var(--surface);place-items:unset;width:20px;height:20px;color:inherit;background-image:none;border-radius:50%;display:block}.sheet-x{width:30px;height:30px;color:var(--fg-soft);background:var(--surface-dim);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.sheet-x:hover{color:var(--fg)}.sheet-x:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:2px}.sheet .grab{background:var(--surface-dim);width:44px;height:5px;margin:0 auto var(--s-2);cursor:grab;border:0;border-radius:3px;padding:0;display:block}.sheet .grab:active{cursor:grabbing}.overlay-host .sheet .opt{border-inline:0}.toggle-row{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-3) 0;border-bottom:var(--bw-1) solid var(--line);min-height:var(--hit-min);display:flex}.toggle-row:last-child{border-bottom:0}.toggle-row .tl{flex-direction:column;gap:2px;min-width:0;display:flex}.toggle-row .tl .pri{font-size:var(--fs-body);color:var(--fg);font-weight:600}.toggle-row .tl .sec{font-size:var(--fs-caption);color:var(--fg-soft);line-height:1.4}.check-list{border:var(--bw-1) solid var(--line);border-radius:var(--r-3);flex-direction:column;display:flex;overflow:hidden}.check-row{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);border-bottom:var(--bw-1) solid var(--line);cursor:pointer;min-height:var(--hit-min);background:var(--surface);display:flex}.check-row:last-child{border-bottom:0}.check-row .pri{font-size:var(--fs-body);font-weight:500}.check-row .choice{margin:0}.share-rec{gap:var(--s-3);padding:var(--s-3);border:var(--bw-1) solid var(--line);border-radius:var(--r-3);background:var(--surface);grid-template-columns:auto auto 1fr auto;align-items:center;display:grid}.share-rec .choice{margin:0}.share-rec .share-perm{width:auto;min-height:var(--control-sm);padding:var(--s-1) var(--s-6) var(--s-1) var(--s-3);font-size:var(--fs-caption)}.share-rec .body .pri{font-size:var(--fs-caption);font-weight:600}.share-rec .body .sec{font-size:var(--fs-nano);color:var(--fg-soft)}.line-row{align-items:center;gap:var(--s-3);padding:var(--s-2) 0;display:flex}.line-row .body{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.line-row .pri{font-size:var(--fs-body);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.line-row .sec{font-size:var(--fs-caption);color:var(--fg-soft);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.line-trail{align-items:flex-end;gap:var(--s-1);flex-direction:column;flex:none;display:flex}.line-trail .line-total{font-feature-settings:"tnum" 1;white-space:nowrap;font-weight:700}.success-mark{width:96px;height:96px;position:relative}.success-mark svg{width:96px;height:96px;overflow:visible}.success-mark .ring{fill:none;stroke:var(--accent);stroke-width:3px;stroke-dasharray:176;stroke-dashoffset:176px;animation:sm-ring var(--d-slow) var(--e-out-expo) forwards}.success-mark .tick{fill:none;stroke:var(--accent);stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:44;stroke-dashoffset:44px;animation:sm-tick var(--d-base) var(--e-out-expo) .4s forwards}.success-mark .spark{background:var(--accent);opacity:0;border-radius:50%;width:6px;height:6px;position:absolute;top:50%;left:50%}.success-mark .s1{animation:sm-spark var(--d-slow) var(--e-out-expo) .45s forwards;--tx:-42px;--ty:-30px}.success-mark .s2{animation:sm-spark var(--d-slow) var(--e-out-expo) .52s forwards;--tx:44px;--ty:-22px}.success-mark .s3{animation:sm-spark var(--d-slow) var(--e-out-expo) .5s forwards;--tx:-36px;--ty:36px;background:var(--brand-tomato)}.success-mark .s4{animation:sm-spark var(--d-slow) var(--e-out-expo) .58s forwards;--tx:40px;--ty:32px;background:var(--brand-tomato)}@keyframes sm-ring{to{stroke-dashoffset:0}}@keyframes sm-tick{to{stroke-dashoffset:0}}@keyframes sm-spark{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)}40%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--tx)), calc(-50% + var(--ty))) scale(1)}}@media (prefers-reduced-motion:reduce){.success-mark .ring,.success-mark .tick{stroke-dashoffset:0;animation:none}.success-mark .spark{display:none}}.ios-steps{gap:var(--s-3);width:100%;padding:var(--s-3);border-radius:var(--r-3);background:var(--surface-dim);text-align:start;flex-direction:column;margin:0;list-style:none;display:flex}.ios-step{align-items:center;gap:var(--s-2);display:flex}.ios-step-num{background:var(--accent);width:22px;height:22px;color:var(--on-accent);font-size:var(--fs-micro);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.ios-step-txt{font-size:var(--fs-caption);line-height:var(--lh-body)}.ios-glyph{vertical-align:-4px;margin:0 1px}.ios-arrow{z-index:40;pointer-events:none;align-items:center;gap:var(--s-1);color:var(--accent);left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 10px);flex-direction:column;display:flex;position:fixed;transform:translate(-50%)}.ios-arrow.up{bottom:auto;top:calc(env(safe-area-inset-top,0px) + 10px);flex-direction:column-reverse}.ios-arrow .lbl{font-size:var(--fs-micro);letter-spacing:.08em;text-transform:uppercase;background:var(--toast-bg);color:var(--toast-fg);padding:3px var(--s-2);border-radius:var(--r-pill);white-space:nowrap;font-weight:700}.ios-arrow .chev{animation:ios-bob 1.1s var(--e-in-out) infinite}.ios-arrow.up .chev{animation-name:ios-bob-up}@keyframes ios-bob{0%,to{transform:translateY(0)}50%{transform:translateY(7px)}}@keyframes ios-bob-up{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@media (prefers-reduced-motion:reduce){.ios-arrow .chev{animation:none}}.splash-bar{border-radius:var(--r-pill);background:var(--surface-dim);width:132px;height:4px;overflow:hidden}.splash-bar i{border-radius:var(--r-pill);background:var(--accent);width:40%;height:100%;animation:splash-slide 1.2s var(--e-in-out) infinite;display:block}@keyframes splash-slide{0%{transform:translate(-120%)}to{transform:translate(330%)}}.proto-spinner{border:3px solid var(--surface-dim);border-top-color:var(--accent);width:44px;height:44px;animation:spin-rotate var(--d-spin) var(--e-linear) infinite;border-radius:50%;margin:0 auto}@keyframes spin-rotate{to{transform:rotate(360deg)}}.sync-tag .spin-dot{animation-name:spin-rotate}@media (prefers-reduced-motion:reduce){.splash-bar i{width:100%;animation:none}.proto-spinner{animation:none}}.welcome{height:100%;padding:var(--s-6) 0 var(--s-5);justify-content:space-between;align-items:center;gap:var(--s-4);flex-direction:column;display:flex}.carousel{flex:1;align-items:center;width:100%;display:flex;overflow:hidden}.carousel-track{width:100%;transition:transform var(--d-base) var(--e-out-expo);display:flex}.carousel .slide{align-items:center;gap:var(--s-4);padding:0 var(--s-5);text-align:center;flex-direction:column;flex:0 0 100%;display:flex}.carousel .slide-ic{color:var(--accent)}.carousel .slide p{max-width:30ch}.dots{gap:0;display:flex}.dots .dot{width:var(--hit-min);height:var(--hit-min);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.dots .dot:before{content:"";border-radius:var(--r-pill);background:var(--surface-dim);width:8px;height:8px;transition:background var(--d-fast), width var(--d-fast)}.dots .dot.is-on:before{background:var(--accent);width:22px}.dots .dot:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:-8px;border-radius:50%}@media (prefers-reduced-motion:reduce){.carousel-track{transition:none}}:root{--f:var(--font-jost), system-ui, -apple-system, sans-serif}.hk-shell{background:var(--canvas);flex-direction:column;width:100%;max-width:440px;min-height:100dvh;margin-inline:auto;display:flex;position:relative}.card.product .img{position:relative}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
