@charset "UTF-8";:root{color-scheme:light;--color-bg: #f3f5f8;--color-surface: #ffffff;--color-surface-2: #e8ecf1;--color-text: #1a1f27;--color-text-muted: #5c6574;--color-border: #d3d9e1;--color-accent: #c95c0c;--color-accent-hover: #a84b08;--color-accent-contrast: #ffffff;--color-warning: #8a5a00;--color-danger: #b42318;--color-focus: #2f6fb4;--color-success: #2e7d4f;--color-canvas: #e3e7ed;--color-block: #fffdfa;--color-grid: rgb(0 0 0 / .07);--color-guide: #0891b2;--color-seam: #1f2530;--color-section-border: #1f2530;--section-0: #f6d9cf;--section-1: #d5e6f3;--section-2: #dcefd6;--section-3: #f5eac4;--section-4: #e6daf2;--section-5: #cfeeea;--section-6: #f3d6e6;--section-7: #e3e0d2;--radius-sm: 4px;--radius-md: 8px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--font-sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, "Cascadia Mono", Consolas, monospace;--header-height: 48px;--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--touch-target: 40px}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--color-bg: #14181f;--color-surface: #1c212a;--color-surface-2: #262c37;--color-text: #e6e9ee;--color-text-muted: #98a1b0;--color-border: #343c49;--color-accent: #f5913e;--color-accent-hover: #f8a862;--color-accent-contrast: #1a1108;--color-warning: #e8c95a;--color-danger: #f47174;--color-focus: #6cb4f0;--color-success: #6fcf97;--color-canvas: #0e1117;--color-block: #1f242d;--color-grid: rgb(255 255 255 / .06);--color-guide: #22c3e6;--color-seam: #dfe4ea;--color-section-border: #dfe4ea;--section-0: #4a302c;--section-1: #263a4c;--section-2: #2c4029;--section-3: #4a4126;--section-4: #3a2e4c;--section-5: #22403e;--section-6: #472b3c;--section-7: #363c46}}:root[data-theme=dark]{color-scheme:dark;--color-bg: #14181f;--color-surface: #1c212a;--color-surface-2: #262c37;--color-text: #e6e9ee;--color-text-muted: #98a1b0;--color-border: #343c49;--color-accent: #f5913e;--color-accent-hover: #f8a862;--color-accent-contrast: #1a1108;--color-warning: #e8c95a;--color-danger: #f47174;--color-focus: #6cb4f0;--color-success: #6fcf97;--color-canvas: #0e1117;--color-block: #1f242d;--color-grid: rgb(255 255 255 / .06);--color-guide: #22c3e6;--color-seam: #dfe4ea;--color-section-border: #dfe4ea;--section-0: #4a302c;--section-1: #263a4c;--section-2: #2c4029;--section-3: #4a4126;--section-4: #3a2e4c;--section-5: #22403e;--section-6: #472b3c;--section-7: #363c46}*,*:before,*:after{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:1rem;line-height:1.5;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;text-size-adjust:100%}button,a,label,select,input{touch-action:manipulation}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}h1{font-size:1.6rem;line-height:1.2}h2{margin:0 0 var(--space-3);font-size:1.1rem}a{color:var(--color-accent)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}kbd{display:inline-block;padding:1px var(--space-2);border:1px solid var(--color-border);border-bottom-width:2px;border-radius:var(--radius-sm);background:var(--color-surface-2);font-family:var(--font-mono);font-size:.85rem;white-space:nowrap}.card{margin-bottom:var(--space-4);padding:var(--space-4) var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}@media(max-width:640px){.card{padding-inline:var(--space-4)}}.field{margin:0 0 var(--space-4);padding:0;border:0}.field>legend,.field>label{display:block;margin-bottom:var(--space-2);padding:0;font-weight:600}.hint{margin:var(--space-1) 0 var(--space-3);color:var(--color-text-muted);font-size:.875rem}.btn{padding:var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:.875rem;cursor:pointer}@media(hover:hover){.btn:hover:not(:disabled){background:var(--color-surface-2)}}.btn:disabled{opacity:.45;cursor:default}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px}.tb-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:32px;height:32px;padding:0 6px;border:1px solid transparent;border-radius:var(--radius-sm);background:none;color:var(--color-text);font:inherit;font-size:.85rem;cursor:pointer;--icon-size: 18px}@media(hover:hover){.tb-btn:hover:not(:disabled){background:var(--color-surface-2)}}.tb-btn.active{border-color:var(--color-border);background:var(--color-surface-2);color:var(--color-accent)}.tb-btn:disabled{opacity:.4;cursor:default}.tb-btn.small{min-width:26px;height:26px;padding:0 4px;--icon-size: 16px}.btn-primary{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-accent-contrast);font-weight:600}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover)}.btn-danger{border-color:var(--color-danger);color:var(--color-danger)}input[type=number],input[type=text],input[type=search],select,textarea{padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font:inherit}.segmented{display:inline-flex;flex-wrap:wrap;padding:2px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-2)}.segmented label{position:relative;cursor:pointer}.segmented input{position:absolute;opacity:0;inset:0;margin:0;cursor:inherit}.segmented span{display:block;padding:var(--space-1) var(--space-4);border-radius:calc(var(--radius-md) - 2px);color:var(--color-text-muted)}.segmented input:checked+span{background:var(--color-surface);color:var(--color-text);font-weight:600;box-shadow:0 1px 2px #0000001f}.segmented input:focus-visible+span{outline:2px solid var(--color-focus);outline-offset:1px}.segmented input:disabled+span{opacity:.45;cursor:not-allowed}.panel-body{display:block;padding:var(--space-3)}.panel-body h3{margin:var(--space-4) 0 var(--space-2)}.panel-body h3:first-child{margin-top:0}.panel-body h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.panel-body p{margin:var(--space-1) 0}.panel-body .segmented{margin-bottom:var(--space-3)}.field-row{display:flex;align-items:flex-end;gap:var(--space-2);margin-bottom:var(--space-3)}.field-row label{display:grid;gap:2px;font-size:.8rem;color:var(--color-text-muted)}.field-row input{width:5.5rem}.field-row .unit{padding-bottom:var(--space-1);color:var(--color-text-muted)}.stack-field{display:grid;gap:2px;margin-bottom:var(--space-3);font-size:.8rem;color:var(--color-text-muted)}.stack-field input{width:100%}.button-row{display:flex;flex-wrap:wrap;gap:var(--space-1)}.checkbox-row{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);font-size:.875rem;cursor:pointer}.text-warning{color:var(--color-warning);font-size:.875rem}.btn.icon{min-width:1.75rem;padding-inline:var(--space-1);font-weight:600}.section-swatch{display:inline-block;width:14px;height:14px;border:1px solid var(--color-section-border);border-radius:3px}.section-swatch[data-section="0"]{background:var(--section-0)}.section-swatch[data-section="1"]{background:var(--section-1)}.section-swatch[data-section="2"]{background:var(--section-2)}.section-swatch[data-section="3"]{background:var(--section-3)}.section-swatch[data-section="4"]{background:var(--section-4)}.section-swatch[data-section="5"]{background:var(--section-5)}.section-swatch[data-section="6"]{background:var(--section-6)}.section-swatch[data-section="7"]{background:var(--section-7)}@media(pointer:coarse){.btn{min-height:var(--touch-target);padding-inline:var(--space-4)}.tb-btn{min-width:var(--touch-target);height:var(--touch-target);--icon-size: 20px}.tb-btn.small{min-width:34px;height:34px;--icon-size: 18px}input[type=number],input[type=text],input[type=search],select,textarea{min-height:var(--touch-target);font-size:16px}input[type=checkbox],input[type=radio]{width:20px;height:20px}.segmented span{padding:var(--space-2) var(--space-4)}.checkbox-row{min-height:var(--touch-target)}}
