:root{--ink:#13201c;--bg:#eef2f0;--surface:#fff;--line:#d3ddd9;--muted:#5a6a64;--soft:#3d4c47;--accent:#f2b705;--on-accent:#1a1500;--teal:#0e6b5c;--teal-soft:#dcefea;--ok:#1d7a46;--ok-soft:#ddf2e5;--warn:#8a4b00;--warn-soft:#fbebd2;--bad:#b3261e;--bad-soft:#f9dedc;--f-display:"Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;--f-body:"IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;--f-mono:"IBM Plex Mono", ui-monospace, Menlo, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);font:16px/1.55 var(--f-body);-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:var(--teal)}a:hover{color:var(--ink)}h1,h2,h3{font-family:var(--f-display);letter-spacing:-.02em;text-wrap:balance;margin:0;line-height:1.05}p{margin:0}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.wrap{max-width:1240px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));margin:0 auto}.top{background:var(--ink);color:var(--bg);z-index:20;position:sticky;top:0}.top .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-block:12px;display:flex}.brand{font:800 26px/1 var(--f-display);letter-spacing:-.02em;color:var(--bg);text-decoration:none}.brand span{background:var(--accent);color:var(--on-accent);border-radius:4px;padding:0 6px}.brand:hover{color:var(--bg)}.nav{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.nav a{color:var(--bg);border-radius:8px;padding:8px 10px;font-size:15px;text-decoration:none}.nav a:hover{color:var(--bg);background:#22302b}.nav .hl{color:var(--accent);font-weight:600}.btn{font:600 16px var(--f-body);cursor:pointer;background:var(--ink);color:var(--bg);border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:13px 20px;text-decoration:none;display:inline-flex}.btn:hover{color:var(--bg);opacity:.92}.btn.primary{background:var(--accent);color:var(--on-accent)}.btn.primary:hover{color:var(--on-accent)}.btn.ghost{color:var(--ink);border:1px solid var(--line);background:0 0}.btn.ghost:hover{color:var(--ink);background:var(--surface)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.small{min-height:36px;padding:8px 14px;font-size:14px}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px}.muted{color:var(--muted)}.eyebrow{font:500 13px var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--teal)}.chip{font:600 12px var(--f-body);white-space:nowrap;border-radius:999px;align-items:center;padding:4px 10px;display:inline-flex}.chip.ok{background:var(--ok-soft);color:var(--ok)}.chip.warn{background:var(--warn-soft);color:var(--warn)}.chip.bad{background:var(--bad-soft);color:var(--bad)}.chip.idle{background:var(--bg);color:var(--muted);border:1px solid var(--line)}.note{background:var(--teal-soft);border-radius:10px;padding:14px 16px;font-size:14px;line-height:1.5}.note b{color:var(--teal)}.note.warn{background:var(--warn-soft)}.note.warn b{color:var(--warn)}.demo-banner{background:var(--warn-soft);color:var(--warn);text-align:center;padding:6px 16px;font-size:13px}.grid-cards{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;display:grid}.item-card{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:14px;flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.item-card:hover{color:var(--ink);border-color:var(--ink)}.item-card img{object-fit:cover;background:var(--bg);width:100%;height:170px}.item-card .body{flex-direction:column;flex:1;gap:6px;padding:14px;display:flex}.item-card .title{font-size:16px;font-weight:600}.item-card .meta{color:var(--muted);font-size:13px}.item-card .foot{justify-content:space-between;align-items:center;margin-top:auto;padding-top:6px;display:flex}.price{font:700 20px var(--f-display)}.price small{font:400 13px var(--f-body);color:var(--muted)}.form{flex-direction:column;gap:16px;display:flex}.row{flex-wrap:wrap;gap:14px;display:flex}.row>*{flex:220px;min-width:0}label.f{flex-direction:column;gap:6px;font-size:14px;font-weight:600;display:flex}label.f small{color:var(--muted);font-weight:400}input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],select,textarea{font:16px var(--f-body);border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px;width:100%;padding:11px 13px}textarea{resize:vertical;min-height:110px}.check{align-items:flex-start;gap:10px;font-size:14px;display:flex}.check input{margin-top:3px}.err{color:var(--bad);font-size:14px}.okmsg{color:var(--ok);font-size:14px}.drop{border:1.5px dashed var(--line);background:var(--bg);border-radius:12px;flex-direction:column;gap:10px;padding:16px;display:flex}.thumbs{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;display:grid}.thumbs img{aspect-ratio:4/3;object-fit:cover;border-radius:8px;width:100%}.tabs{background:var(--bg);border:1px solid var(--line);border-radius:999px;gap:4px;padding:4px;display:flex}.tabs button{font:600 14px var(--f-body);cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:999px;flex:1 1 0;padding:10px}.tabs button[aria-selected=true]{background:var(--ink);color:var(--bg)}.slots{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.slots button{font:500 13px var(--f-mono);border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer;border-radius:8px;padding:10px 0}.slots button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.kv{font-variant-numeric:tabular-nums;grid-template-columns:1fr auto;gap:8px 16px;margin:0;font-size:15px;display:grid}.kv dd{text-align:right;margin:0}.kv .total{border-top:1px solid var(--line);padding-top:8px;font-weight:700}.foot-site{background:var(--ink);color:#9aaba4;margin-top:64px;padding-block:36px;font-size:14px}.foot-site .wrap{flex-wrap:wrap;justify-content:space-between;gap:20px;display:flex}.foot-site a{color:#9aaba4}@media (max-width:640px){.nav a.hide-sm{display:none}.card{padding:18px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
