@import"https://fonts.googleapis.com/css2?family=Space+Mono:wght@400;700&display=swap";:root{color-scheme:dark;--bg: #121317;--bg-canvas: #0C0D10;--surface: #191B21;--surface-2: #23262E;--surface-hi: #2B2F38;--accent: #FFFFFF;--accent-press: #C9CDD6;--accent-ink: #121317;--accent-blue: #4C9FFF;--ink: #E8EAF0;--ink-2: #9297A3;--ink-3: #5B606B;--line: rgba(255,255,255,.08);--line-strong: rgba(255,255,255,.16);--focus: #FFFFFF;--knob: #E8EAF0;--handle-chip: #FFFFFF;--checker-a: #191B21;--checker-b: #23262E;--backdrop: var(--bg-canvas);--glass: rgba(22,24,29,.62);--glass-2: rgba(255,255,255,.06);--glass-line: rgba(255,255,255,.11);--glass-blur: blur(30px) saturate(1.5);--glass-blur-sm: blur(16px) saturate(1.4);--handle: #ffffff;--handle-ring: rgba(0,0,0,.42);--r-panel: 20px;--r-card: 16px;--r-ctl: 10px;--r-pill: 999px;--r-sub: 12px;--panel-inset-x: 16px;--section-pad-top: 20px;--section-pad-bottom: 24px;--header-gap: 14px;--row-gap: 14px;--group-gap: 24px;--field-label-gap: 6px;--field-group-gap: 20px;--ctl-h: 28px;--card-pad: 12px;--card-gap: 16px;--hit-min: 24px;--z-canvas-line: 3;--z-canvas-chrome: 5;--z-canvas-raised: 6;--z-canvas-pop: 7;--z-dock: 25;--z-popover: 1000;--z-modal: 2000;--z-tooltip: 3000;--shadow-card: 0 8px 24px rgba(0,0,0,.5), 0 2px 6px rgba(0,0,0,.6), inset 0 0 0 1px rgba(255,255,255,.05);--shadow-pop: 0 16px 40px rgba(0,0,0,.62), inset 0 0 0 1px rgba(255,255,255,.06);--font-body: "Space Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--font-num: "Space Mono", ui-monospace, "SFMono-Regular", Menlo, monospace}:root[data-theme=light]{color-scheme:light;--bg:#E7E7EA;--bg-canvas:#E9E9EB;--surface:#F4F3F0;--surface-2:#EAE9E5;--surface-hi:#FFFFFF;--accent:#1B1B1B;--accent-press:#3A3D45;--accent-ink:#FFFFFF;--focus:#1B1B1B;--accent-blue:#0D99FF;--ink:#1B1B1B;--ink-2:#8C8C8C;--ink-3:#B4B4B0;--line:rgba(0,0,0,.08);--line-strong:rgba(0,0,0,.16);--knob:#FFFFFF;--checker-a:#FFFFFF;--checker-b:#DFDFE4;--shadow-card:0 8px 24px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.06);--shadow-pop:0 12px 32px rgba(0,0,0,.14);--glass: rgba(255,255,255,.7);--glass-2: rgba(0,0,0,.04);--glass-line: rgba(0,0,0,.1);--glass-blur: blur(30px) saturate(1.5);--glass-blur-sm: blur(16px) saturate(1.4);--handle: #ffffff;--handle-ring: rgba(0,0,0,.35)}:root[data-theme=dark]{color-scheme:dark;--glass: rgba(22,24,29,.62);--glass-2: rgba(255,255,255,.06);--glass-line: rgba(255,255,255,.11);--glass-blur: blur(30px) saturate(1.5);--glass-blur-sm: blur(16px) saturate(1.4);--handle: #ffffff;--handle-ring: rgba(0,0,0,.42)}.num,output,input[type=number]{font-family:var(--font-num);letter-spacing:.5px}*{box-sizing:border-box}:root{--dock-w: 330px;--dock-reserve-left: 330px;--dock-reserve-bottom: 0px;--sheet-h: 0px}.ui-icon{vertical-align:-.125em;flex-shrink:0}body,#root{margin:0;height:100vh;height:100dvh;font-family:var(--font-body);background:var(--bg);color:var(--ink)}.editor{height:100vh;height:100dvh;display:flex;flex-direction:column;background:var(--bg)}.editor__body{position:relative;flex:1;min-height:0}.app{position:relative;height:100%;overflow:hidden;background:var(--bg)}.dock-foot__svg{position:relative;display:inline-flex}.export-drawer{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:10px;padding:12px 14px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-card);box-shadow:var(--shadow-pop);white-space:nowrap}@media (prefers-reduced-motion: no-preference){.export-drawer{animation:pop-in .14s ease-out}}.export-drawer__opt{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--ink);cursor:pointer}.export-drawer__actions{display:flex;gap:8px}.dock-foot .export-drawer{left:auto;right:0;transform:none;white-space:normal;max-width:240px}.tb-color{display:inline-flex;align-items:center;gap:5px}.tb-color__lbl{font-family:var(--font-body);font-size:11px;color:var(--ink-2);white-space:nowrap}.tb-color .dropdown-ctl{margin:0;grid-template-columns:1fr}.tb-color .dropdown-select{padding:5px 10px}.stage{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px 24px calc(var(--dock-reserve-bottom) + 24px) calc(var(--dock-reserve-left) + 34px);overflow:auto;background:var(--bg-canvas)}.preview-wrap{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden}.preview-inner{position:relative;max-width:100%;max-height:100%}.preview-canvas{display:block;width:100%;height:100%;background:transparent}.preview-svg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.preview-svg svg{display:block;width:100%;height:100%}.handle-layer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:all;overflow:visible}.blob-handle{fill:transparent;stroke:var(--accent);stroke-width:1.5;cursor:grab;transition:width 80ms ease,height 80ms ease,x 80ms ease,y 80ms ease,stroke-width 80ms ease}.blob-handle--hover{fill:var(--accent);fill-opacity:.25;stroke-width:2;cursor:grab}.blob-handle:active{cursor:grabbing}.panel{position:absolute;top:10px;left:10px;bottom:10px;width:var(--dock-w);z-index:25;overflow-y:auto;overflow-x:visible;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-panel);box-shadow:var(--shadow-pop),inset 0 1px #ffffff14;padding:0;color:var(--ink);display:flex;flex-direction:column;gap:0}.dock__header,.dock__footer{padding:14px var(--panel-inset-x)}.dock__header{border-bottom:1px solid var(--glass-line)}.dock__footer{margin-top:auto;border-top:1px solid var(--glass-line)}.dock__grip,.dock-collapse{display:none}@media (min-width: 768px) and (max-width: 1023px){.panel{transition:transform .22s cubic-bezier(.4,0,.2,1)}.panel--collapsed{transform:translate(calc(-100% - 16px));pointer-events:none}.dock-collapse{display:grid;place-items:center;position:fixed;top:14px;right:14px;z-index:40;width:40px;height:40px;padding:0;border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);color:var(--ink-2);box-shadow:var(--shadow-card);cursor:pointer}.dock-collapse:hover,.dock-collapse[aria-pressed=true]{color:var(--ink)}}@media (max-width: 767px){:root{--dock-w: 0px;--dock-reserve-left: 0px;--dock-reserve-bottom: 55dvh;--sheet-h: 55dvh}.panel{position:fixed;left:0;right:0;bottom:0;top:auto;width:auto;height:var(--sheet-h);max-height:90dvh;border-radius:var(--r-panel) var(--r-panel) 0 0;border-bottom:none;overscroll-behavior:contain;transition:height .2s cubic-bezier(.4,0,.2,1)}.panel--dragging{transition:none}.dock__grip{display:flex;position:sticky;top:0;z-index:3;align-items:center;justify-content:center;height:24px;flex:none;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:var(--r-panel) var(--r-panel) 0 0;cursor:grab;touch-action:none}.dock__grip:active{cursor:grabbing}.dock__grip-bar{width:36px;height:4px;border-radius:999px;background:color-mix(in srgb,var(--ink) 30%,transparent)}.dock__footer{padding-bottom:calc(14px + env(safe-area-inset-bottom))}}@media (max-width: 767px) and (prefers-reduced-motion: reduce){.panel{transition:none}}@media (prefers-reduced-motion: reduce){.panel--collapsed,.panel{transition:none}}.dock-head{display:flex;flex-direction:column;gap:10px}.dock-head__row{display:flex;align-items:center;gap:12px}.dock-head__seed{flex-shrink:0;display:inline-flex;align-items:center;gap:5px}.dock-head .tb-color--grow,.dock-head .tb-color--grow .dropdown-ctl{flex:1;min-width:0}.dock-foot{display:flex;flex-direction:column;gap:12px}.dock-foot__transport{display:flex;align-items:center;gap:8px}.dock-foot__transport-play{flex:none;width:24px;height:24px;padding:0;display:grid;place-items:center}.dock-foot__transport-play svg{display:block;margin-left:1px}.dock-foot__transport-scrub{flex:1;min-width:0;margin:0}.dock-foot__transport-time{flex:none;font-size:10.5px;font-variant-numeric:tabular-nums;color:var(--ink-3);white-space:nowrap}.dock-foot__preview{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:6px}.dock-foot__png{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border-top:1px solid var(--glass-line);padding-top:12px}.dock-foot__export{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dock-foot__png button,.dock-foot__export>button,.dock-foot__svg,.dock-foot__svg>button{width:100%}.dock-foot__svg>button{display:inline-flex;align-items:center;justify-content:center;gap:6px}.panel-btn{padding:8px 12px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--surface-2);color:var(--ink);font:inherit;font-size:12px;white-space:nowrap;cursor:pointer;transition:background .12s ease}.panel-btn:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}.add-select{width:100%;padding:9px 26px 9px 12px;border:1px dashed var(--line);border-radius:var(--r-ctl);background:transparent;color:var(--ink-2);font:inherit;font-size:12px;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.add-select:hover{background-color:color-mix(in srgb,var(--ink) 5%,transparent);border-color:color-mix(in srgb,var(--ink) 30%,transparent);color:var(--ink)}.panel-section{display:flex;flex-direction:column;gap:var(--row-gap);padding:var(--section-pad-top) var(--panel-inset-x) var(--section-pad-bottom);border-bottom:1px solid var(--glass-line)}.panel-section:last-of-type{border-bottom:none}.panel-section:has(>h3.is-collapsed){padding-top:12px;padding-bottom:12px}.panel-section>h3,section>h3{font:700 10px/1 var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb,var(--ink) 65%,transparent);margin:0;display:flex;align-items:center;gap:6px}.section-actions{margin-left:auto;display:inline-flex;align-items:center;gap:4px}.section-reset,.section-collapse{display:inline-flex;align-items:center;justify-content:center;width:var(--hit-min);height:var(--hit-min);padding:0;background:transparent;border:1px solid transparent;border-radius:var(--r-ctl);color:var(--ink-3);cursor:pointer;transition:color .12s ease,background .12s ease,border-color .12s ease,opacity .12s ease,transform .18s ease}.section-reset:hover,.section-collapse:hover{color:var(--ink);background:var(--glass-2);border-color:var(--line)}.section-reset{opacity:0}.panel-section:hover .section-reset,.section-reset:focus-visible{opacity:1}.is-collapsed .section-collapse{transform:rotate(-90deg)}section>h3.is-collapsed{margin-bottom:0}section>h3.is-collapsed~*{display:none!important}.ctl{display:grid;grid-template-columns:96px 1fr 48px;align-items:center;gap:8px;font-size:12px;min-height:var(--ctl-h);margin:0;font-family:var(--font-body)}.ctl input[type=range]{width:100%}.ctl-cluster{display:flex;flex-direction:column;gap:var(--row-gap);margin-top:calc(var(--group-gap) - var(--row-gap))}.ctl-label,.ctl>span:first-child{font-size:11px;color:color-mix(in srgb,var(--ink) 76%,transparent)}.ctl .num-field{font-variant-numeric:tabular-nums;color:color-mix(in srgb,var(--ink) 90%,transparent)}.ctl-label{display:inline-flex;align-items:center;gap:6px;min-width:0}.ctl-info{flex:none;width:12px;height:12px;opacity:.4;border-radius:50%;border:1px solid var(--line-strong);color:var(--ink-3);font-size:8px;font-style:normal;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:help}.ascii-ramp-input{grid-column:2 / 4;width:100%;min-width:0;padding:6px 8px;font-family:monospace;font-size:12px;letter-spacing:1px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--ink)}.text-block-input{grid-column:1 / 4;width:100%;min-width:0;padding:6px 8px;font-family:var(--font-body);font-size:12px;line-height:1.35;resize:vertical;min-height:46px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--ink)}.num-field{width:100%;min-width:0;background:transparent;border:1px solid transparent;border-radius:var(--r-ctl);padding:3px 5px;text-align:right;color:var(--ink);cursor:text;transition:background .12s ease,border-color .12s ease}.num-field:hover{background:var(--surface-2)}.num-field:focus,.num-field:focus-visible{outline:none;background:var(--surface-hi);border-color:var(--accent)}.gradient-layer .num-field:hover{background:var(--surface-hi)}.ctl>*{min-width:0}.ctl input[type=file]{width:100%;max-width:100%;min-width:0}.ctl--toggle{grid-template-columns:1fr auto}.subgroup{display:flex;flex-direction:column;gap:var(--row-gap);background:var(--surface-2);border-radius:var(--r-sub);padding:var(--card-pad);margin-top:calc(var(--card-gap) - var(--row-gap))}.subgroup__label{display:block;font:700 10px/1 var(--font-body);letter-spacing:1px;text-transform:uppercase;color:color-mix(in srgb,var(--ink) 65%,transparent);margin-bottom:0}.subgroup__toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0;background:none;border:0;cursor:pointer}.subgroup__toggle .subgroup__label{margin-bottom:0}.subgroup__chevron{font-size:9px;color:var(--ink-3);line-height:1}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:16px;background:transparent;cursor:pointer}input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:linear-gradient(90deg,var(--accent) 0 var(--fill, 50%),var(--surface-2) var(--fill, 50%) 100%);box-shadow:inset 0 0 0 1px var(--line)}input[type=range]::-moz-range-track{height:6px;border-radius:999px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line)}input[type=range]::-moz-range-progress{height:6px;border-radius:999px;background:var(--accent)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;margin-top:-4px;border-radius:4px;background:var(--accent);box-shadow:0 1px 2px #00000038;transition:transform .11s cubic-bezier(.34,1.56,.64,1),box-shadow .11s ease}input[type=range]::-moz-range-thumb{width:14px;height:14px;border:none;border-radius:4px;background:var(--accent);transition:transform .11s cubic-bezier(.34,1.56,.64,1)}input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.12)}input[type=range]:active::-webkit-slider-thumb{transform:scale(1.45);box-shadow:0 2px 7px #00000052}input[type=range]:hover::-moz-range-thumb{transform:scale(1.12)}input[type=range]:active::-moz-range-thumb{transform:scale(1.45)}input[type=range]:active{cursor:grabbing}@media (pointer: coarse){:root{--hit-min: 44px}.ctl{min-height:44px;align-content:center}.panel-btn,.add-select{min-height:44px}input[type=range]{height:44px}input[type=range]::-webkit-slider-runnable-track,input[type=range]::-moz-range-track,input[type=range]::-moz-range-progress{height:4px}input[type=range]::-webkit-slider-thumb{width:20px;height:20px;margin-top:-8px}input[type=range]::-moz-range-thumb{width:20px;height:20px}}button{font-family:var(--font-body);font-size:12px;background:var(--surface-2);color:var(--ink);border:none;border-radius:var(--r-ctl);padding:4px 10px;cursor:pointer;transition:background .12s ease,color .12s ease,transform .08s ease}button:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}button:active,button.active,button.is-active{background:var(--accent);color:var(--accent-ink)}button:active{transform:translateY(1px) scale(.97)}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px) scale(.97)}to{opacity:1;transform:none}}.num{font-family:var(--font-num);letter-spacing:.5px;color:var(--ink)}.blob-size-ring{fill:none;stroke:var(--accent);stroke-width:1.5;opacity:.7;cursor:nwse-resize}.blob-size-ring--hover{opacity:1;stroke-width:2}.blob-falloff-ring{fill:none;stroke:var(--accent);stroke-width:2;stroke-dasharray:3 4;opacity:.95}.blob-size-grip,.blob-falloff-grip{stroke:var(--handle);stroke-width:1.5}.blob-size-grip,.blob-falloff-grip{fill:var(--accent)}.blob-size-grip:hover,.blob-falloff-grip:hover{stroke:var(--accent)}.cluster-ring{fill:none;stroke:var(--accent);stroke-width:1;stroke-dasharray:5 4;opacity:.6;pointer-events:none}.cluster-ring-grip{fill:transparent;stroke:var(--accent);stroke-width:1.5;cursor:ns-resize}.cluster-ring-grip:hover{fill:var(--accent);fill-opacity:.2}.cluster-crosshair{stroke:var(--accent);stroke-width:1.5;pointer-events:none}.cluster-center{fill:transparent;stroke:var(--accent);stroke-width:1.5;cursor:move}.cluster-center:hover{fill:var(--accent);fill-opacity:.25}.stop-drag-label rect{fill:var(--glass);stroke:var(--glass-line);stroke-width:1;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.stop-drag-label text{fill:var(--ink);font-family:var(--font-num);font-weight:700}.layer-bbox{fill:none;stroke:var(--accent);stroke-width:1.5;stroke-dasharray:5 4;pointer-events:none}.layer-grip{fill:var(--surface-hi);stroke:var(--accent);stroke-width:1.5}.layer-grip:hover{fill:var(--accent)}.layer-rot-stem{stroke:var(--accent);stroke-width:1.5;pointer-events:none}.layer-rot-knob{fill:var(--surface-hi);stroke:var(--accent);stroke-width:1.5}.canvas-drag-border{fill:none;stroke:var(--accent);stroke-width:2;pointer-events:none}.snap-guide{stroke:#ff2d9b;stroke-width:1.5;opacity:.9;pointer-events:none}.gradient-line{stroke:var(--accent);stroke-width:1;stroke-dasharray:4 3;opacity:.55;pointer-events:none}.gradient-center{fill:var(--accent);fill-opacity:.3;stroke:var(--accent);stroke-width:1.5;cursor:move}.gradient-center:hover{fill-opacity:.5}.gradient-endpoint{fill:transparent;stroke:var(--accent);stroke-width:1.5;cursor:crosshair}.gradient-endpoint:hover{fill:var(--accent);fill-opacity:.25}.gradient-width{fill:var(--surface-hi);stroke:var(--accent);stroke-width:1.5;cursor:ew-resize}.gradient-width:hover{fill:var(--accent);fill-opacity:.5}.gradient-stop-swatch{stroke:var(--handle);stroke-width:2.5;cursor:grab}.gradient-stop-swatch:hover{stroke:var(--accent)}.gradient-stop-swatch:active{cursor:grabbing}.blob-size-grip,.blob-falloff-grip,.cluster-ring-grip,.cluster-center,.gradient-center,.gradient-endpoint,.gradient-width,.gradient-stop-swatch,.layer-grip,.layer-rot-knob{transform-box:fill-box;transform-origin:center;transition:transform .13s cubic-bezier(.34,1.56,.64,1),fill .12s ease,stroke .12s ease;cursor:grab}.blob-size-grip:hover,.blob-falloff-grip:hover,.cluster-ring-grip:hover,.cluster-center:hover,.gradient-center:hover,.gradient-endpoint:hover,.gradient-width:hover,.gradient-stop-swatch:hover,.layer-grip:hover,.layer-rot-knob:hover{transform:scale(1.25)}.blob-size-grip:active,.blob-falloff-grip:active,.cluster-ring-grip:active,.cluster-center:active,.gradient-center:active,.gradient-endpoint:active,.gradient-width:active,.gradient-stop-swatch:active,.layer-grip:active,.layer-rot-knob:active{transform:scale(1.5);cursor:grabbing}.stop-pick-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:6}.stop-pick-anchor{position:absolute;transform:translate(-100px,16px);pointer-events:auto}.stop-pick-anchor .cp-trigger{display:none}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.cp-host{position:relative;display:inline-block;vertical-align:middle}.cp-trigger{display:block;width:22px;height:22px;border-radius:var(--r-ctl);border:1px solid var(--line);padding:0;cursor:pointer;flex-shrink:0;background-image:conic-gradient(var(--ink-3) 90deg,transparent 0 180deg,var(--ink-3) 0 270deg,transparent 0);background-size:8px 8px;background-position:0 0;position:relative}.cp-trigger:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:inherit}.cp-trigger--round{border-radius:50%;width:22px;height:22px}.cp-popover{position:fixed;z-index:1000;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:var(--r-card);box-shadow:var(--shadow-pop);border:1px solid var(--glass-line);padding:10px;width:200px;display:flex;flex-direction:column;gap:8px;-webkit-user-select:none;user-select:none;transform-origin:top left}@media (prefers-reduced-motion: no-preference){.cp-popover{animation:pop-in .14s ease-out}}.cp-sv{position:relative;width:100%;height:140px;border-radius:var(--r-ctl);overflow:hidden;cursor:crosshair;flex-shrink:0}.cp-sv-white{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,#fff,transparent);pointer-events:none}.cp-sv-black{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,transparent,#000);pointer-events:none}.cp-thumb{position:absolute;width:12px;height:12px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #00000059,0 1px 3px #00000040;transform:translate(-50%,-50%);pointer-events:none}.cp-slider{position:relative;height:12px;border-radius:var(--r-pill);cursor:pointer;overflow:hidden}.cp-slider--hue{background:linear-gradient(to right,red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.cp-slider--alpha{background-image:conic-gradient(var(--ink-3) 90deg,transparent 0 180deg,var(--ink-3) 0 270deg,transparent 0);background-size:8px 8px}.cp-alpha-gradient{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.cp-slider-thumb{position:absolute;top:50%;width:14px;height:14px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #00000059,0 1px 3px #00000040;transform:translate(-50%,-50%);pointer-events:none}.cp-inputs{display:flex;align-items:center;gap:6px}.cp-hex{flex:1;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);font-family:var(--font-body);font-size:11px;color:var(--ink);padding:3px 6px;min-width:0;text-transform:uppercase}.cp-hex:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.cp-alpha-label{font-size:11px;color:var(--ink-2);white-space:nowrap}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.auth-gate{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:var(--bg)}.tooltip{position:fixed;z-index:3000;transform:translate(-50%,-100%);max-width:260px;padding:4px 8px;font-family:var(--font-body);font-size:12px;line-height:1.35;color:var(--ink);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-line);border-radius:var(--r-ctl);box-shadow:var(--shadow-pop);pointer-events:none;white-space:nowrap}@media (prefers-reduced-motion: no-preference){.tooltip{animation:pop-in .1s ease-out}}.color-input-wrap{display:flex;flex-direction:column;gap:var(--field-label-gap);margin:calc(var(--field-group-gap) - var(--row-gap)) 0 0}.color-input-wrap:not(:has(.color-input-label)){margin-top:calc(var(--field-label-gap) - var(--row-gap))}.color-input-label{font-family:var(--font-body);font-size:11px;color:var(--ink-2)}.color-input-row{display:flex;align-items:center;gap:6px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);padding:6px 10px;position:relative}.color-input-swatch{width:20px;height:20px;border-radius:5px;border:1px solid var(--line);flex-shrink:0;cursor:pointer}.color-input-native{position:absolute;left:10px;top:6px;width:20px;height:20px;opacity:0;cursor:pointer}.color-input-dropper{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:none;border-radius:4px;background:transparent;color:var(--ink-2);cursor:pointer;padding:0}.color-input-dropper:hover{background:color-mix(in srgb,var(--ink) 10%,transparent);color:var(--ink)}.color-input-hex{font-family:var(--font-body);font-size:12px;color:var(--ink);flex:1;min-width:0;overflow:hidden}.color-input-alpha-wrap{display:flex;align-items:center;gap:1px;flex-shrink:0;cursor:ew-resize;touch-action:none;-webkit-user-select:none;user-select:none}.color-input-alpha{min-width:26px;background:transparent;border:none;font-family:var(--font-num);font-size:12px;color:var(--ink);text-align:right;padding:0}.color-input-alpha:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:3px}.color-input-alpha::-webkit-outer-spin-button,.color-input-alpha::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.color-input-alpha[type=number]{-moz-appearance:textfield}.color-input-alpha-pct{font-family:var(--font-body);font-size:11px;color:var(--ink-2)}.number-input-wrap{display:flex;flex-direction:column;gap:var(--field-label-gap);margin:calc(var(--field-group-gap) - var(--row-gap)) 0 0}.number-input-label{font-family:var(--font-body);font-size:11px;color:var(--ink-2)}.number-input-field{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);padding:6px 8px;font-family:var(--font-num);font-size:12px;color:var(--ink);width:100%;text-align:right}.number-input-field:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.number-input-field::-webkit-outer-spin-button,.number-input-field::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.number-input-field[type=number]{-moz-appearance:textfield}.preset-pills{display:flex;flex-wrap:wrap;gap:6px;margin:0}.preset-pill{font-family:var(--font-body);font-size:11px;background:var(--surface-2);color:var(--ink);border:none;border-radius:var(--r-pill);padding:5px 8px;cursor:pointer;transition:background .12s,color .12s;white-space:nowrap}.preset-pill:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}.preset-pill--active{background:var(--accent);color:var(--accent-ink)}.preset-pill--active:hover{background:var(--accent-press)}@media (pointer: coarse){.preset-pill{min-height:36px;padding:8px 12px;display:inline-flex;align-items:center}}.toggle-wrap{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.toggle-input{position:absolute;opacity:0;width:0;height:0}.toggle-track{position:relative;display:inline-block;width:36px;height:20px;border-radius:var(--r-pill);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);transition:background .18s ease,box-shadow .18s ease;cursor:pointer;flex-shrink:0}.toggle-input:checked+.toggle-track{background:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-press)}.toggle-wrap:hover .toggle-input:not(:checked)+.toggle-track{background:color-mix(in srgb,var(--ink) 6%,var(--surface-2))}.toggle-wrap:hover .toggle-input:checked+.toggle-track{background:var(--accent-press)}.toggle-knob{position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:5px;background:var(--knob);box-shadow:0 1px 3px #00000038;transition:transform .22s cubic-bezier(.34,1.56,.64,1),width .15s ease}.toggle-input:checked+.toggle-track .toggle-knob{transform:translate(16px)}.toggle-wrap:active .toggle-knob{width:17px}.toggle-input:focus-visible+.toggle-track{outline:2px solid var(--focus);outline-offset:2px}.toggle-label{font-family:var(--font-body);font-size:12px;color:var(--ink);-webkit-user-select:none;user-select:none}.ctl.dropdown-ctl{display:grid;grid-template-columns:96px 1fr;align-items:center;gap:8px;font-size:12px;margin:0;font-family:var(--font-body)}.dropdown-wrap{display:flex;align-items:center}.dropdown-select{display:flex;align-items:center;gap:6px;width:100%;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);padding:7px 10px;font-family:var(--font-body);font-size:12px;color:var(--ink);text-align:left;cursor:pointer;transition:background .12s ease,border-color .12s ease}.dropdown-select:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}.dropdown-select:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.dropdown-select__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-chevron{display:flex;color:var(--ink-2);font-size:10px}.dropdown-select:hover .dropdown-chevron,.dropdown-chevron--open{color:var(--ink)}@media (prefers-reduced-motion: no-preference){.dropdown-chevron{transition:color .12s ease-out,transform .14s ease-out}.dropdown-chevron--open{transform:rotate(180deg)}}.dropdown-menu{position:fixed;z-index:1000;width:max-content;max-width:240px;max-height:320px;overflow-y:auto;padding:6px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-ctl);box-shadow:var(--shadow-pop);font-family:var(--font-body)}@media (prefers-reduced-motion: no-preference){.dropdown-menu{animation:pop-in .14s ease-out}}.dropdown-option{display:flex;align-items:center;gap:6px;padding:7px 10px;font-size:12px;color:var(--ink);border-radius:var(--r-ctl);cursor:pointer}.dropdown-option--active{background:color-mix(in srgb,var(--ink) 10%,transparent)}.dropdown-option--selected{color:var(--accent)}.dropdown-option__marker{display:flex;align-items:center;justify-content:center;width:12px;flex:none}.dropdown-option__dot{width:6px;height:6px;border-radius:50%;background:var(--accent)}.dropdown-option__label{flex:1;min-width:0;white-space:nowrap}.add-select--picker{display:flex;align-items:center;justify-content:space-between;gap:6px}.add-select--picker:hover .dropdown-chevron{color:var(--ink)}.add-select__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}@media (pointer: coarse){.dropdown-select{min-height:44px}.dropdown-option{min-height:44px;padding-top:10px;padding-bottom:10px}}.gradient-editor{margin-top:6px;padding:8px;border-radius:var(--r-card);transition:box-shadow .12s ease}.gradient-editor.is-focused{box-shadow:0 0 0 2px var(--accent)}.gradient-editor>button{margin-top:8px}.gradient-editor__empty{font-family:var(--font-body);font-size:12px;color:var(--ink-3);margin:4px 0}.gradient-layer{display:flex;flex-direction:column;gap:var(--row-gap);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-sub);padding:var(--card-pad);margin-bottom:var(--card-gap)}.gradient-layer:not(.is-selected):hover{border-color:var(--line-strong)}.gradient-layer.is-selected{box-shadow:inset 0 0 0 2px var(--accent)}@media (prefers-reduced-motion: no-preference){.gradient-layer{transition:box-shadow .1s ease-out,border-color .1s ease-out}}.gradient-layer__header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:0}.gradient-layer__title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-body);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--ink-2)}.gradient-layer__actions{flex:none;display:flex;align-items:center;gap:2px}.gradient-layer .number-input-field,.gradient-layer .dropdown-select,.gradient-layer .color-input-row{background:var(--surface-hi)}.gradient-layer .dropdown-select:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}.gradient-layer input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg,var(--accent) 0 var(--fill, 50%),var(--surface-hi) var(--fill, 50%) 100%)}.gradient-layer input[type=range]::-moz-range-track{background:var(--surface-hi)}.card-btn,.file-btn{display:block;width:100%;text-align:center;font-family:var(--font-body);font-size:12px;color:var(--ink);background:var(--surface-hi);border:1px solid var(--line);border-radius:var(--r-ctl);padding:8px 12px;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background .12s ease}.card-btn:hover,.file-btn:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}.card-btn--full{margin-top:8px}.source-add{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 8px}.source-add button,.btn-add{width:100%;border-radius:var(--r-pill);border:1px solid var(--line);padding:8px 12px;white-space:nowrap}.btn-add{margin-top:8px}.gradient-layer__icon,.gradient-layer__remove{background:transparent;border:none;color:var(--ink-3);font-size:15px;line-height:1;padding:2px 5px;cursor:pointer;border-radius:var(--r-ctl)}.gradient-layer__icon:hover,.gradient-layer__remove:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 8%,transparent)}.gradient-bar{margin:8px 0 6px;padding:0 7px}.gradient-bar__track{position:relative;height:18px;border-radius:var(--r-ctl);cursor:copy;box-shadow:inset 0 0 0 1px var(--line)}.gradient-bar__pin{position:absolute;top:50%;width:14px;height:14px;transform:translate(-50%,-50%);border-radius:50%;border:2px solid var(--handle-chip);box-shadow:0 0 0 1px var(--ink),0 1px 3px #0006;padding:0;cursor:grab;z-index:1}.gradient-bar__pin.is-selected{box-shadow:0 0 0 2px var(--accent),0 1px 3px #0006}.gradient-bar__pin:active{cursor:grabbing}.gradient-stops{margin-top:4px}.gradient-stops__header{display:flex;align-items:center;justify-content:space-between;margin:4px 0 6px}.gradient-stops__title{font-family:var(--font-body);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--ink-2)}.gradient-stops__add{background:transparent;border:none;color:var(--ink-2);font-size:15px;line-height:1;padding:2px 5px;cursor:pointer;border-radius:var(--r-ctl)}.gradient-stops__add:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 8%,transparent)}.gradient-stop-row{display:flex;align-items:center;gap:6px;background:var(--surface);border-radius:var(--r-ctl);padding:5px 8px;margin-bottom:6px;box-shadow:inset 0 0 0 1px transparent}.gradient-stop-row.is-selected{box-shadow:inset 0 0 0 1px var(--accent)}.gradient-stop-pos{width:36px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--ink);font-size:12px;padding:3px 4px;text-align:right;-moz-appearance:textfield}.gradient-stop-pos::-webkit-outer-spin-button,.gradient-stop-pos::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.gradient-stop-pct{font-size:11px;color:var(--ink-3);margin-right:2px}.gradient-stop-row .color-input-wrap{flex:1;min-width:0;margin:0}.stop-remove{background:transparent;border:none;color:var(--ink-3);font-size:15px;line-height:1;cursor:pointer;padding:0 4px;border-radius:var(--r-ctl)}.stop-remove:hover:not(:disabled){color:var(--ink);background:color-mix(in srgb,var(--ink) 8%,transparent)}.stop-remove:disabled{opacity:.3;cursor:default}.listdrag{position:relative}.listdrag--active{-webkit-user-select:none;user-select:none}.listdrag-row--dragging{opacity:.45;outline:1px dashed var(--glass-line);outline-offset:-4px}.listdrag-handle{cursor:grab;-webkit-user-select:none;user-select:none}.listdrag-handle:active{cursor:grabbing}@media (prefers-reduced-motion: no-preference){.listdrag-row--landed{animation:listdrag-land .32s ease-out}}@keyframes listdrag-land{0%{box-shadow:inset 0 0 0 999px var(--glass-2)}}.listdrag__line{position:absolute;left:2px;right:2px;height:0;pointer-events:none;z-index:3;border-top:2px solid var(--accent)}.listdrag__line:before{content:"";position:absolute;left:-4px;top:-5px;width:8px;height:8px;border-radius:50%;background:var(--accent)}.listdrag__ghost{position:fixed;z-index:1000;pointer-events:none;display:flex;align-items:center;gap:6px;max-width:220px;padding:5px 10px;font-size:12px;color:var(--ink);background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid var(--glass-line);border-radius:var(--r-ctl, 8px);box-shadow:var(--shadow-card, 0 4px 14px rgba(0, 0, 0, .18));transform:scale(1.03);transform-origin:top left}.listdrag__ghost span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (prefers-reduced-motion: no-preference){.listdrag__ghost{animation:listdrag-ghost-lift .14s cubic-bezier(.22,1,.36,1)}}@keyframes listdrag-ghost-lift{0%{transform:scale(1);box-shadow:none}}.font-picker{display:flex;flex-direction:column;gap:4px}.font-picker__actions{display:flex;gap:6px}.font-picker__actions .panel-btn{flex:1;font-size:11px}.fp-trigger{display:flex;align-items:center;gap:6px;width:100%;min-width:0;padding:6px 8px;font-size:12px;text-align:left;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--ink);cursor:pointer}.fp-trigger:hover{border-color:var(--accent)}.fp-trigger__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fp-trigger__chevron{color:var(--ink-2);font-size:10px}.fp-popout{position:fixed;z-index:1000;display:flex;flex-direction:column;max-height:360px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-card);box-shadow:var(--shadow-pop);overflow:hidden;font-family:var(--font-body)}@media (prefers-reduced-motion: no-preference){.fp-popout{animation:pop-in .14s ease-out}}.fp-search{margin:8px;padding:6px 8px;font-size:12px;font-family:var(--font-body);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--ink)}.fp-search:focus{outline:2px solid var(--focus);outline-offset:-1px}.fp-list{flex:1;overflow-y:auto;padding:0 4px 4px}.fp-group{margin-bottom:4px}.fp-group__title{position:sticky;top:0;padding:4px 6px 2px;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);background:color-mix(in srgb,var(--glass) 88%,transparent);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.fp-group__more{padding:4px 6px;font-size:11px;color:var(--ink-2)}.fp-row{display:flex;align-items:center;border-radius:var(--r-ctl)}.fp-row--hi{background:color-mix(in srgb,var(--accent) 16%,transparent)}.fp-row--sel .fp-row__name{font-weight:600}.fp-row__name{flex:1;min-width:0;text-align:left;padding:5px 8px;font-size:12.5px;font-family:var(--font-body);background:none;border:none;color:var(--ink);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fp-row__del{background:none;border:none;padding:4px 8px;color:#b3261e;font-size:12px;cursor:pointer}.fp-empty{padding:12px;font-size:12px;color:var(--ink-2);text-align:center}.fp-actions{display:flex;gap:6px;padding:8px;border-top:1px solid var(--line)}.fp-actions .panel-btn{flex:1;font-size:11px}.font-picker__note,.font-picker__err{font-size:11px;padding:4px 8px;border-radius:var(--r-ctl)}.font-picker__note{color:var(--ink-dim, #888);background:var(--surface-2)}.font-picker__err{color:#b3261e;background:#b3261e14}.font-picker__link{margin-left:6px;background:none;border:none;padding:0;color:var(--accent, #d4a000);font:inherit;cursor:pointer;text-decoration:underline}.font-picker__delete{align-self:flex-start;background:none;border:none;padding:2px 0;color:#b3261e;font-size:11px;cursor:pointer;text-decoration:underline}.panel--takeover{overflow:hidden}@media (min-width: 768px){.panel--takeover{width:min(440px,46vw)}}.font-browse-ctl{display:flex;align-items:center;gap:8px;width:100%;min-width:0;padding:7px 9px;text-align:left;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--ink);cursor:pointer}.font-browse-ctl:hover{border-color:var(--accent)}.font-browse-ctl__label{flex:1;min-width:0;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.font-browse-ctl__hint{display:inline-flex;align-items:center;gap:2px;flex:0 0 auto;font-size:11px;color:var(--ink-2)}.font-browser{display:flex;flex-direction:column;height:100%;min-height:0}.fb-head{flex:0 0 auto;display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--glass-line)}.fb-refresh,.fb-upload{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--r-ctl);background:transparent;color:var(--ink-2);cursor:pointer}.fb-upload{margin-left:auto}.fb-refresh:hover,.fb-upload:hover{background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--ink)}.fb-refresh:disabled,.fb-upload:disabled{opacity:.5;cursor:default}.fb-back{display:inline-flex;align-items:center;gap:4px;padding:4px 6px;margin:-4px -6px;border:none;border-radius:var(--r-ctl);background:transparent;color:var(--ink);font-size:13px;font-weight:700;letter-spacing:.3px;cursor:pointer}.fb-back:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}.fb-close{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--r-ctl);background:transparent;color:var(--ink-2);cursor:pointer}.fb-close:hover{background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--ink)}.fm-sample-input,.fm-search{margin:10px 14px 0;padding:8px 10px;font-family:var(--font-body);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--ink)}.fm-sample-input{font-size:16px}textarea.fm-sample-input{resize:none;line-height:1.4;overflow-x:hidden;min-height:58px;max-height:128px;scrollbar-width:thin}.fm-align{display:flex;gap:4px}.fm-align__btn{width:26px;height:24px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:var(--r-ctl);background:transparent;color:var(--ink-2);cursor:pointer;padding:0}.fm-align__btn:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 8%,transparent)}.fm-align__btn--sel{background:var(--ink);color:var(--surface-1, #0e0f12);border-color:var(--ink)}.fm-hidden-note{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:10px 14px 0;padding:6px 10px;font-size:11px;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl)}.fm-hidden-note__show{flex:none;border:1px solid var(--line);border-radius:4px;background:none;color:var(--ink);font:inherit;padding:2px 8px;cursor:pointer}.fm-hidden-note__show:hover{background:color-mix(in srgb,var(--ink) 10%,transparent)}.fm-search{font-size:12px}.fm-sample-input:focus,.fm-search:focus{outline:2px solid var(--focus);outline-offset:-1px}.fm-list{flex:1 1 auto;min-height:80px;overflow-y:auto;margin:10px 6px 0;padding:0 4px;display:flex;flex-direction:column;gap:2px}.fm-row-wrap{display:flex;flex-direction:column;border:1px solid transparent;border-radius:var(--r-ctl)}.fm-row-wrap--sel{border-color:color-mix(in srgb,var(--accent) 55%,transparent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.fm-row{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;padding:8px 10px;border:none;border-radius:var(--r-ctl);background:none;color:var(--ink);cursor:pointer}.fm-row-wrap:not(.fm-row-wrap--sel) .fm-row:hover{background:color-mix(in srgb,var(--ink) 6%,transparent)}.fm-row__sample{font-size:20px;line-height:1.2;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.fm-row__meta{display:flex;align-items:center;gap:8px}.fm-row__name{font-size:11px;color:var(--ink-2)}.fm-row__count{font-size:10px;color:var(--ink-2);opacity:.85}.fm-row__src{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);opacity:.7;border:1px solid var(--glass-line);border-radius:4px;padding:1px 4px}.fm-empty{padding:20px;font-size:12px;color:var(--ink-2);text-align:center}.fm-styles{display:flex;flex-wrap:wrap;gap:4px;padding:0 10px 8px}.fm-style{padding:3px 8px;font-size:11px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);color:var(--ink-2);cursor:pointer}.fm-style:hover{border-color:var(--accent)}.fm-style--sel{background:color-mix(in srgb,var(--accent) 22%,transparent);border-color:color-mix(in srgb,var(--accent) 55%,transparent);color:var(--ink);font-weight:600}.fm-loadlocal{margin:8px 14px 0}.fm-bar{flex:0 0 auto;display:flex;flex-direction:column;gap:var(--row-gap, 8px);padding:12px 14px;border-top:1px solid var(--glass-line)}.fm-bar__case{display:flex;align-items:center;justify-content:space-between;gap:8px}.fm-bar__lbl{font-size:12px;color:var(--ink-2)}.modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:grid;place-items:center;padding:16px;background:#0006}.modal-card{width:min(340px,100%);padding:20px;color:var(--ink);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-panel);box-shadow:var(--shadow-pop)}.modal-card__title{margin:0 0 8px;font-size:13px;font-weight:700;letter-spacing:.3px}.modal-card__body{margin:0 0 18px;font-size:12px;line-height:1.5;color:var(--ink-2)}.modal-card__input{width:100%;margin:0 0 18px;padding:8px 10px;font:inherit;font-size:12px;color:var(--ink);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl)}.modal-card__input:focus{outline:2px solid var(--focus);outline-offset:-1px}.modal-card__err{margin:-10px 0 14px;font-size:11px;color:#ff6b6b}.modal-actions{display:flex;justify-content:flex-end;gap:8px}.modal-actions .panel-btn--primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.modal-actions .panel-btn--primary:hover{background:var(--accent-press)}@media (prefers-reduced-motion: no-preference){.modal-scrim{animation:modal-fade .14s ease-out}.modal-card{animation:pop-in .14s ease-out}}@keyframes modal-fade{0%{opacity:0}}.history__empty{margin:0;font-size:11px;line-height:1.5;color:var(--ink-2)}.history__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.history__row{display:flex;align-items:center;gap:10px}.history__thumb{flex:none;width:40px;height:40px;border-radius:var(--r-ctl);overflow:hidden;background:var(--surface-2);border:1px solid var(--glass-line);display:grid;place-items:center}.history__thumb img{width:100%;height:100%;object-fit:contain}.history__meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.history__name{font-size:12px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history__time{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--ink-2)}.history__tag{font:700 9px/1 var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb,var(--ink) 55%,transparent)}.history__actions{flex:none;display:flex;gap:2px}.history__btn{display:grid;place-items:center;width:26px;height:26px;border:none;background:transparent;color:var(--ink-2);border-radius:var(--r-ctl);cursor:pointer;transition:background .12s ease,color .12s ease}.history__btn:hover{background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--ink)}.history__btn:disabled{opacity:.4;cursor:default}.snippets{display:flex;flex-direction:column;gap:4px}.snippets__save{display:flex;gap:6px;align-items:center}.snippets__label{flex:1;min-width:0;padding:5px 8px;font-family:var(--font-body);font-size:12px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--ink)}.snippets__save .panel-btn{font-size:11px;white-space:nowrap}.snippets__list{list-style:none;margin:2px 0 0;padding:0;display:flex;flex-direction:column;gap:2px}.snippets__item{display:flex;align-items:center;gap:4px}.snippets__apply{flex:1;min-width:0;text-align:left;padding:4px 8px;font-size:12px;font-family:var(--font-body);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--ink);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.snippets__apply:hover{border-color:var(--accent, #d4a000)}.snippets__del{background:none;border:none;padding:2px 6px;color:#b3261e;font-size:12px;cursor:pointer}.snippets__note,.snippets__err{font-size:11px;padding:4px 8px;border-radius:var(--r-ctl)}.snippets__note{color:var(--ink-dim, #888);background:var(--surface-2)}.snippets__err{color:#b3261e;background:#b3261e14}.logomorph{display:flex;height:100%;min-height:0;position:relative}.logomorph__stage{position:relative;flex:1;min-width:0;display:flex;align-items:center;justify-content:center;padding:0;background:var(--backdrop);overflow:hidden;touch-action:none}.logomorph__zoom{position:absolute;left:calc(var(--dock-w) + 24px);bottom:calc(var(--dock-reserve-bottom) + 12px);padding:3px 8px;border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);font:700 11px Space Mono,ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--ink-2);cursor:pointer;-webkit-user-select:none;user-select:none}.logomorph__zoom:hover{color:var(--ink)}.logomorph__hudedit{position:absolute;z-index:var(--z-canvas-raised);display:flex;align-items:center;gap:2px;padding:5px 9px;border:1px solid var(--glass-line);border-radius:7px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);font:700 16px var(--font-num);color:var(--ink)}.logomorph__hudedit input{width:64px;padding:0;border:none;background:none;outline:none;font:inherit;color:var(--ink);letter-spacing:.5px}.logomorph__hudedit-unit{font-size:11px;color:var(--ink-2);-webkit-user-select:none;user-select:none}.logomorph__textedit{position:absolute;z-index:var(--z-canvas-raised);transform:translate(-50%,-50%);padding:4px 8px;border:1px solid var(--glass-line);border-radius:7px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.logomorph__textedit textarea{display:block;width:100%;min-width:60px;padding:0;border:none;background:none;outline:none;resize:none;overflow:hidden;font-family:var(--font-num);font-weight:700;line-height:1.2;color:var(--ink);letter-spacing:.3px}.logomorph__scrubber{position:absolute;z-index:var(--z-canvas-chrome);left:50%;bottom:calc(var(--dock-reserve-bottom) + 14px);transform:translate(-50%);width:240px;max-width:min(240px,60vw);padding:10px 14px;border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.logomorph__scrubber-track{position:relative;height:14px;cursor:pointer;touch-action:none}.logomorph__scrubber-rail{position:absolute;top:50%;left:0;right:0;height:2px;transform:translateY(-50%);border-radius:1px;background:var(--glass-line)}.logomorph__scrubber-dot{position:absolute;top:50%;width:6px;height:6px;transform:translate(-50%,-50%);border-radius:2px;background:var(--ink-2);pointer-events:none}.logomorph__scrubber-dot.is-active{background:var(--ink)}.logomorph__scrubber-thumb{position:absolute;top:50%;width:12px;height:12px;transform:translate(-50%,-50%);border-radius:3px;background:var(--ink);box-shadow:0 0 0 3px var(--glass);pointer-events:none;transition:box-shadow .1s ease}.logomorph__scrubber-thumb.is-dragging{box-shadow:0 0 0 4px var(--accent-blue-soft, rgba(76, 159, 255, .25))}.logomorph__toolbar{position:absolute;left:calc(var(--dock-w) + 24px);top:14px;z-index:var(--z-canvas-chrome);display:flex;flex-direction:column;gap:4px;padding:4px;border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--glass);box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.logomorph__tool{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--r-ctl, 6px);background:transparent;color:var(--ink-2);font-size:15px;line-height:1;cursor:pointer}.logomorph__tool:hover:not(:disabled){background:color-mix(in srgb,var(--ink) 8%,transparent)}.logomorph__tool[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}.logomorph__tool:disabled{opacity:.3;cursor:default}.logomorph__island{position:absolute;z-index:var(--z-canvas-chrome);display:flex;align-items:center;gap:2px;padding:4px;border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--glass);box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.logomorph__opbadge{position:absolute;z-index:var(--z-canvas-chrome);display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:1px solid var(--glass-line);border-radius:6px;background:var(--glass);box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);color:var(--ink);font:700 13px/1 var(--font-num, ui-monospace, monospace);cursor:pointer}.logomorph__opbadge:hover{background:color-mix(in srgb,var(--ink) 10%,var(--glass))}.logomorph__opbadge[data-dim="1"]{opacity:.4}.logomorph__opbadge[data-dim="1"]:hover{opacity:.85}.logomorph__colorpop{position:absolute;z-index:var(--z-canvas-pop);min-width:184px;padding:8px;border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--glass);box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.logomorph__eyedrop-hint{position:absolute;z-index:var(--z-canvas-pop);left:50%;top:14px;transform:translate(-50%);padding:6px 12px;white-space:nowrap;pointer-events:none;border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--glass);box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);font:600 11px/1 var(--font-num, ui-monospace, monospace);color:var(--ink)}.logomorph__island-sep{width:1px;height:16px;background:var(--glass-line);margin:0 3px}.logomorph__island-txt{height:24px;padding:0 8px;display:inline-flex;align-items:center;white-space:nowrap;font:600 10px/1 var(--font-num, ui-monospace, monospace);letter-spacing:.02em;color:var(--ink-2);background:transparent;border:none;border-radius:var(--r-ctl, 6px);cursor:pointer}.logomorph__island-txt:hover:not(:disabled){background:color-mix(in srgb,var(--ink) 8%,transparent)}.logomorph__island-txt:disabled{opacity:.3;cursor:default}.logomorph__island[data-dist="0"] .logomorph__island-dist{display:none}.logomorph__island-key{display:inline-flex;align-items:center;gap:3px;height:20px;padding:0 7px;font:700 9px/1 var(--font-num, ui-monospace, monospace);letter-spacing:.08em;color:var(--accent-blue);border:1px solid color-mix(in srgb,var(--accent-blue) 55%,transparent);border-radius:var(--r-ctl);background:color-mix(in srgb,var(--accent-blue) 14%,transparent)}.logomorph__island-key svg{display:block}.logomorph__spacing{position:relative;display:inline-flex}.logomorph__island[data-multi="0"] .logomorph__spacing,.logomorph__island[data-multi="0"] .logomorph__island-sep--spacing{display:none}.logomorph__spacing-pop{position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);z-index:var(--z-canvas-pop);display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--glass);box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.logomorph__spacing-pop input[type=range]{width:132px}.logomorph__spacing-pop .num-field{width:52px;text-align:right}.logomorph__spacing-invert{width:24px;height:24px;flex:none}.logomorph__ctxmenu{position:absolute;z-index:var(--z-canvas-raised);min-width:168px;padding:4px;border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--glass);box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.logomorph__ctxmenu-item{display:flex;align-items:baseline;justify-content:space-between;gap:12px;width:100%;padding:7px 9px;border:none;border-radius:calc(var(--r-ctl, 6px) - 2px);background:transparent;color:var(--ink);font-size:12px;text-align:left;cursor:pointer}.logomorph__ctxmenu-item:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}.logomorph__ctxmenu-hint{font:600 10px/1 var(--font-num, ui-monospace, monospace);color:var(--ink-2);white-space:nowrap}.logomorph__buildwarn{position:absolute;z-index:var(--z-canvas-pop);left:50%;top:16px;transform:translate(-50%);display:flex;align-items:center;gap:10px;max-width:min(520px,72%);padding:8px 8px 8px 12px;border:1px solid var(--glass-line);border-left:3px solid rgba(229,115,115,.9);border-radius:var(--r-ctl);background:var(--glass);box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);font-size:12px;line-height:1.35;color:var(--ink)}.logomorph__buildwarn button{flex:none;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border:none;border-radius:5px;background:transparent;color:var(--ink-2);font-size:15px;line-height:1;cursor:pointer}.logomorph__buildwarn button:hover{background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--ink)}.logomorph__buildnote{position:absolute;z-index:var(--z-canvas-pop);left:50%;top:16px;transform:translate(-50%);padding:7px 14px;max-width:min(520px,72%);border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--glass);box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);font-size:12px;line-height:1.35;color:var(--ink-2);white-space:nowrap;pointer-events:none}.logomorph .ctl:not(.dropdown-ctl):not(.ctl--toggle){grid-template-columns:96px 1fr 64px}.logomorph__export{display:grid;grid-template-columns:1fr 1fr;gap:8px}.logomorph__export .panel-btn,.logomorph__btn{flex:1;min-width:60px}.logomorph__ablist{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.logomorph__abrow{display:flex;align-items:center;gap:2px;border-radius:6px}.logomorph__abrow.is-active{background:var(--glass-2, rgba(255,255,255,.06))}.logomorph__abrow-sel{flex:1;min-width:0;display:flex;align-items:center;gap:7px;background:none;border:0;color:inherit;padding:5px 6px;cursor:pointer;text-align:left;font:inherit}.logomorph__abdot{width:6px;height:6px;border-radius:50%;background:var(--line, rgba(255,255,255,.2));flex:none}.logomorph__abrow.is-active .logomorph__abdot{background:var(--accent-blue, #4C9FFF)}.logomorph__abname{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logomorph__abname-input{flex:1;min-width:0;font:inherit;color:inherit;background:var(--glass, rgba(22,24,29,.62));border:1px solid var(--accent-blue, #4C9FFF);border-radius:4px;padding:1px 4px}.logomorph__absize{flex:none;opacity:.5;font-size:11px;font-variant-numeric:tabular-nums}.logomorph__abbtn{flex:none;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;background:none;border:0;color:inherit;opacity:.55;cursor:pointer;border-radius:4px}.logomorph__abbtn:hover:not(:disabled){opacity:1;background:var(--glass-2, rgba(255,255,255,.06))}.logomorph__abbtn:disabled{opacity:.18;cursor:default}.logomorph__abadd{display:grid;grid-template-columns:1fr;gap:6px}.logomorph__embed{display:flex;flex-direction:column;gap:8px}.logomorph__embed-hint{margin:0;font-size:11px;line-height:1.4;color:var(--ink-2)}.logomorph__embed-code{width:100%;resize:vertical;box-sizing:border-box;padding:8px 10px;border-radius:var(--r-ctl, 8px);border:1px solid var(--line, rgba(255, 255, 255, .12));background:var(--panel-2, rgba(255, 255, 255, .04));color:var(--ink-1);font-family:var(--font-mono, ui-monospace, monospace);font-size:11px;line-height:1.4}.logomorph__list{display:flex;flex-direction:column;gap:4px;margin-bottom:20px}.logomorph__scope-head{margin:8px 2px 2px;padding-top:8px;border-top:1px solid var(--line);font:700 10px/1 var(--font-body);letter-spacing:1px;text-transform:uppercase;color:color-mix(in srgb,var(--ink) 65%,transparent);-webkit-user-select:none;user-select:none}.logomorph__scope-empty{padding:10px 2px;font-size:12px;color:var(--ink-2);-webkit-user-select:none;user-select:none}.logomorph__row{display:flex;align-items:center;gap:7px;padding:0 10px;min-height:38px;border-radius:var(--r-ctl, 8px);cursor:pointer;font-size:12px}.logomorph__row .dropdown-ctl{grid-template-columns:minmax(0,max-content);width:auto;margin:0;flex:0 1 auto;min-width:0;max-width:92px}.logomorph__row .dropdown-select{width:100%;padding:3px 6px;gap:4px;font-size:11px;background:transparent;border-color:transparent;color:var(--ink-2)}.logomorph__row .dropdown-select:hover{background:var(--glass-2);border-color:var(--line);color:var(--ink)}.logomorph__row.is-active .dropdown-select{color:var(--ink)}.logomorph__bond-row{display:flex;gap:4px;align-items:center;margin-bottom:6px}.logomorph__bond-row .dropdown-ctl{flex:1;margin:0;grid-template-columns:1fr}.logomorph__row:hover{background:color-mix(in srgb,var(--ink) 5%,transparent)}.logomorph__op.is-default{display:none}.logomorph__row:hover .logomorph__op.is-default,.logomorph__row:focus-within .logomorph__op.is-default{display:inline-flex}.logomorph__row.is-multi{background:color-mix(in srgb,var(--ink) 4%,transparent);box-shadow:inset 0 0 0 1px var(--glass-line)}.logomorph__row.is-active{background:var(--glass-2);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--ink) 55%,transparent);color:var(--ink)}@media (prefers-reduced-motion: no-preference){.logomorph__row{transition:background .1s ease-out,color .1s ease-out}.logomorph__row button{transition:opacity .1s ease-out}}.logomorph__row button{border:none;background:none;cursor:pointer;font-size:10px;opacity:.6;display:inline-flex;align-items:center;justify-content:center;padding:0}.logomorph__row button:hover{opacity:1}.logomorph__row .logomorph__eye,.logomorph__row .logomorph__chevron{min-height:var(--hit-min)}.logomorph__row>button:not(.logomorph__eye):not(.logomorph__chevron){width:0;min-width:0;min-height:var(--hit-min);overflow:hidden;opacity:0}.logomorph__row:hover>button:not(.logomorph__eye):not(.logomorph__chevron),.logomorph__row:focus-within>button:not(.logomorph__eye):not(.logomorph__chevron){width:var(--hit-min);min-width:var(--hit-min);opacity:.6}.logomorph__row:hover>button:not(.logomorph__eye):not(.logomorph__chevron):hover{opacity:1}.logomorph__row>button:not(.logomorph__eye):not(.logomorph__chevron):disabled,.logomorph__row:hover>button:not(.logomorph__eye):not(.logomorph__chevron):disabled{width:0;min-width:0;opacity:0}.logomorph__rowname{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logomorph__rename{flex:1;min-width:0;padding:1px 4px;margin:0;border:1px solid var(--glass-line);border-radius:4px;background:var(--glass-2);outline:none;font:inherit;font-size:12px;color:var(--ink)}.logomorph__eye{font-size:11px}.logomorph__chip{width:12px;height:12px;border-radius:3px;border:1px solid var(--line);flex-shrink:0}.logomorph__fxbadge{flex-shrink:0;font-size:8.5px;font-weight:700;letter-spacing:.04em;line-height:1;padding:2px 4px;border-radius:4px;border:1px solid var(--glass-line);color:var(--ink-dim);background:color-mix(in srgb,var(--ink) 6%,transparent)}.logomorph__row--indent{padding-left:26px}.logomorph__chevron{font-size:10px;width:14px;text-align:center}@media (pointer: coarse){.logomorph__row{min-height:44px}.logomorph__tool{width:44px;height:44px}.logomorph__island-txt{min-height:44px}.logomorph__island-key{height:28px}.logomorph__toolbar{left:calc(var(--dock-w) + 24px + env(safe-area-inset-left));top:calc(14px + env(safe-area-inset-top))}.logomorph__help-btn{right:calc(24px + env(safe-area-inset-right));top:calc(14px + env(safe-area-inset-top))}.logomorph__zoom{left:calc(var(--dock-w) + 24px + env(safe-area-inset-left))}}.lm-mods,.lm-actions{position:absolute;z-index:5;display:flex;align-items:center;gap:5px;padding:5px;border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--glass);box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);-webkit-user-select:none;user-select:none}.lm-mods{left:calc(var(--dock-reserve-left) + 12px + env(safe-area-inset-left));bottom:calc(var(--dock-reserve-bottom) + 56px + env(safe-area-inset-bottom))}.lm-actions{right:calc(12px + env(safe-area-inset-right));bottom:calc(var(--dock-reserve-bottom) + 12px + env(safe-area-inset-bottom))}.lm-mods__chip{min-width:44px;min-height:44px;padding:4px 8px;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:none;border-radius:var(--r-ctl, 6px);background:transparent;color:var(--ink-2);font-size:15px;line-height:1;cursor:pointer}.lm-mods__lbl{font:600 9px/1 var(--font-num, ui-monospace, monospace);letter-spacing:.04em}.lm-mods__chip.is-on{background:var(--accent);color:var(--accent-ink)}.lm-mods__chip:not(.is-on):hover{background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--ink)}.lm-actions__btn{min-width:44px;min-height:44px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--r-ctl, 6px);background:transparent;color:var(--ink-2);font-size:16px;line-height:1;cursor:pointer}.lm-actions__btn:hover:not(:disabled){background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--ink)}.lm-actions__btn:disabled{opacity:.3;cursor:default}.lm-actions__sep{width:1px;align-self:stretch;margin:4px 2px;background:var(--glass-line);flex:none}.lm-loupe{position:absolute;z-index:6;pointer-events:none;border-radius:50%;border:2px solid var(--glass-line);box-shadow:var(--shadow-card),0 0 0 1px #00000059 inset;background:var(--backdrop)}.lm-drawer{position:absolute;z-index:5;right:calc(12px + env(safe-area-inset-right));bottom:calc(var(--dock-reserve-bottom) + 74px + env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:flex-end;gap:6px;-webkit-user-select:none;user-select:none}.lm-drawer__handle{min-height:40px;padding:0 12px;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--glass);box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);color:var(--ink-2);font-size:15px;line-height:1;cursor:pointer}.lm-drawer.is-open .lm-drawer__handle{color:var(--ink)}.lm-drawer__hlabel{font:600 10px/1 var(--font-num, ui-monospace, monospace);letter-spacing:.04em}.lm-drawer__body{display:flex;flex-direction:column;gap:7px;padding:8px;width:min(92vw,330px);border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--surface);box-shadow:var(--shadow-card)}.lm-drawer__hint{margin:0;padding:2px;font-size:11px;line-height:1.3;color:var(--ink-2)}.lm-drawer__coords{display:flex;flex-wrap:wrap;gap:5px}.lm-drawer__field{flex:1 1 auto;display:flex;align-items:center;gap:2px;padding:0 5px;min-height:34px;border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--surface-2)}.lm-drawer__flabel{font:700 10px/1 var(--font-num, ui-monospace, monospace);color:var(--ink-2)}.lm-drawer__finput{width:36px;min-width:0;padding:0;border:none;background:none;outline:none;font:700 13px/1 var(--font-num, ui-monospace, monospace);color:var(--ink);text-align:right}.lm-drawer__finput:disabled{opacity:.4}.lm-drawer__funit{font-size:10px;color:var(--ink-2)}.lm-drawer__tools{display:flex;align-items:center;justify-content:space-between;gap:10px}.lm-drawer__dpad{display:grid;grid-template-columns:repeat(3,34px);grid-template-rows:repeat(3,34px);gap:2px;flex:none}.lm-drawer__arrow{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--surface-2);color:var(--ink-2);font-size:12px;line-height:1;cursor:pointer}.lm-drawer__arrow:active:not(:disabled){background:var(--accent);color:var(--accent-ink)}.lm-drawer__arrow:disabled{opacity:.3;cursor:default}.lm-drawer__arrow--up{grid-column:2;grid-row:1}.lm-drawer__arrow--left{grid-column:1;grid-row:2}.lm-drawer__arrow--right{grid-column:3;grid-row:2}.lm-drawer__arrow--down{grid-column:2;grid-row:3}.lm-drawer__stepper{display:inline-flex;align-items:center;gap:3px;flex:none}.lm-drawer__step{min-width:34px;min-height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--surface-2);color:var(--ink);font-size:17px;line-height:1;cursor:pointer}.lm-drawer__step:active{background:color-mix(in srgb,var(--ink) 12%,transparent)}.lm-drawer__stepval{min-width:32px;text-align:center;font:700 12px/1 var(--font-num, ui-monospace, monospace);color:var(--ink)}.logomorph__list{position:relative;-webkit-user-select:none;user-select:none}.logomorph__row.is-dragging{opacity:.45;outline:1px dashed var(--glass-line);outline-offset:-2px}.logomorph__row.is-drop-into{box-shadow:inset 0 0 0 2px var(--accent)}@media (prefers-reduced-motion: no-preference){.logomorph__row.is-landed{animation:logomorph-land .32s ease-out}}@keyframes logomorph-land{0%{box-shadow:inset 0 0 0 999px var(--glass-2)}}.logomorph__dropline{position:absolute;left:6px;right:6px;height:0;pointer-events:none;z-index:var(--z-canvas-line);border-top:2px solid var(--accent)}.logomorph__dropline:before{content:"";position:absolute;left:-4px;top:-5px;width:8px;height:8px;border-radius:50%;background:var(--accent)}.logomorph__dropline--indent{left:26px}.logomorph__ghost{position:fixed;z-index:var(--z-popover);pointer-events:none;display:flex;align-items:center;gap:6px;max-width:220px;padding:5px 10px;font-size:12px;color:var(--ink);background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid var(--glass-line);border-radius:var(--r-ctl, 8px);box-shadow:var(--shadow-card, 0 4px 14px rgba(0, 0, 0, .18));transform:scale(1.03);transform-origin:top left}.logomorph__ghost span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logomorph__ghostcount{min-width:16px;height:16px;padding:0 4px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:8px;background:var(--accent);color:var(--accent-ink);font-size:10px;font-weight:700}@media (prefers-reduced-motion: no-preference){.logomorph__ghost{animation:logomorph-ghost-lift .14s cubic-bezier(.22,1,.36,1)}}@keyframes logomorph-ghost-lift{0%{transform:scale(1);box-shadow:none}}.logomorph__states{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.logomorph__state{position:relative;width:56px;height:56px;padding:0;border:2px solid var(--line);border-radius:var(--r-ctl, 8px);background:var(--surface-2);cursor:pointer;overflow:hidden}.logomorph__state img{width:100%;height:100%;object-fit:cover;display:block}.logomorph__state:hover{border-color:var(--ink-3)}.logomorph__state.is-active{border-color:var(--accent)}@media (prefers-reduced-motion: no-preference){.logomorph__state{transition:border-color .12s ease-out}}.logomorph__state--add{font-size:18px;color:var(--ink-2)}.logomorph__statex{position:absolute;top:1px;right:3px;font-size:9px;color:var(--ink-2);background:color-mix(in srgb,var(--surface) 80%,transparent);border-radius:4px;padding:0 2px}.logomorph__align{display:flex;gap:6px;margin-bottom:6px}.logomorph__align--grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.logomorph__align .logomorph__btn{flex:1;min-width:0;padding:7px 6px;font-size:13px;line-height:1;display:flex;align-items:center;justify-content:center;gap:5px}.logomorph__align .logomorph__btn:disabled,.logomorph__align .logomorph__btn:disabled:hover{opacity:.35;cursor:default;background:none;border-color:transparent}.logomorph__staterow{display:flex;gap:8px}.logomorph__seed{font-size:11px;opacity:.55;font-variant-numeric:tabular-nums}.logomorph__msel{font-size:11px;opacity:.55;margin:-2px 0 6px}.logomorph__coord{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;margin-bottom:6px}.logomorph__coord-field{display:grid;grid-template-columns:14px 1fr;align-items:center;gap:6px;min-height:var(--ctl-h);margin:0}.logomorph__coord-lbl{font-size:11px;text-align:center;color:color-mix(in srgb,var(--ink) 76%,transparent);font-family:var(--font-body)}.logomorph__coord-field .num-field{background:var(--surface-2);border-color:var(--glass-line);font-variant-numeric:tabular-nums}.logomorph__corner-list{display:flex;flex-direction:column;gap:4px;margin-bottom:6px}.logomorph__corner-field{grid-template-columns:60px 1fr}.logomorph__corner-lbl{text-align:left}.logomorph__legacy-round{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 4px 0 8px;margin-bottom:6px;max-width:100%;font:600 10px/1 var(--font-num, ui-monospace, monospace);letter-spacing:.02em;color:color-mix(in srgb,var(--ink) 62%,transparent);border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:color-mix(in srgb,var(--ink) 5%,transparent)}.logomorph__legacy-clear{font:inherit;color:var(--ink);background:color-mix(in srgb,var(--ink) 10%,transparent);border:none;border-radius:4px;padding:2px 7px;cursor:pointer}.logomorph__legacy-clear:hover{background:color-mix(in srgb,var(--ink) 18%,transparent)}.logomorph__help-btn{position:absolute;right:24px;top:14px;z-index:var(--z-canvas-chrome);width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--glass);box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:var(--ink-2);font:700 15px/1 var(--font-num, ui-monospace, monospace);cursor:pointer}.logomorph__help-btn:hover{color:var(--ink)}.logomorph__help-btn[aria-expanded=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.modal-card.logomorph-help{width:min(620px,100%);max-height:86vh;padding:0;display:flex;flex-direction:column}.logomorph-help__head{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-bottom:1px solid var(--glass-line)}.logomorph-help__title{margin:0;font-size:13px;font-weight:700;letter-spacing:.3px;color:var(--ink)}.logomorph-help__close{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--r-ctl);background:transparent;color:var(--ink-2);font-size:20px;line-height:1;cursor:pointer}.logomorph-help__close:hover{background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--ink)}.logomorph-help__grid{flex:1 1 auto;min-height:0;overflow-y:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:2px 28px;padding:16px 18px 18px}.logomorph-help__group{margin-bottom:12px}.logomorph-help__grouptitle{margin:0 0 7px;font:700 10px/1 var(--font-num, ui-monospace, monospace);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}.logomorph-help__rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.logomorph-help__row{display:flex;align-items:baseline;gap:9px}.logomorph-help__keys{flex:0 0 auto;display:inline-flex;gap:3px;align-items:center}.logomorph-help__kbd{font:600 10px/1 var(--font-num, ui-monospace, monospace);color:var(--ink);background:color-mix(in srgb,var(--ink) 8%,transparent);border:1px solid var(--glass-line);border-radius:4px;padding:3px 5px;white-space:nowrap}.logomorph-help__desc{font-size:11.5px;line-height:1.35;color:var(--ink-2)}@media (max-width: 640px){.logomorph-help__grid{grid-template-columns:1fr}}@media (max-width: 767px){.logomorph__toolbar{left:50%;right:auto;top:auto;transform:translate(-50%);bottom:calc(var(--dock-reserve-bottom) + 8px + env(safe-area-inset-bottom));flex-direction:row;flex-wrap:wrap;justify-content:center;width:max-content;max-width:calc(100vw - 16px)}.lm-mods,.lm-actions{bottom:calc(var(--dock-reserve-bottom) + 68px + env(safe-area-inset-bottom))}.lm-drawer{bottom:calc(var(--dock-reserve-bottom) + 128px + env(safe-area-inset-bottom))}.logomorph__zoom{left:calc(12px + env(safe-area-inset-left));right:auto;top:calc(12px + env(safe-area-inset-top));bottom:auto}.logomorph__help-btn{left:calc(12px + env(safe-area-inset-left));right:auto;top:calc(50px + env(safe-area-inset-top))}}.logomorph__toolsep{display:block;height:1px;margin:2px 4px;background:var(--glass-line)}.logomorph__snapctl{position:relative;display:flex}.logomorph__magnet[aria-pressed=false]{color:var(--ink-dim, var(--ink-2))}.logomorph__shapectl{position:relative;display:flex}.logomorph__shapegrid{display:grid;grid-template-columns:1fr 1fr;gap:4px}.logomorph__shapegrid-btn{width:100%;justify-content:center;text-align:center}.logomorph__gearctl{position:absolute;right:64px;top:14px;z-index:var(--z-canvas-chrome)}.logomorph__gear-btn{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--glass);box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:var(--ink-2);cursor:pointer}.logomorph__gear-btn:hover{color:var(--ink)}.logomorph__gear-btn[aria-expanded=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.logomorph__pop{position:absolute;z-index:60;width:264px;max-height:min(70vh,520px);overflow-y:auto;display:flex;flex-direction:column;gap:var(--row-gap);padding:12px 14px;border:1px solid var(--glass-line);border-radius:var(--r-card);background:var(--glass);box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.logomorph__pop--right{left:calc(100% + 10px);top:0}.logomorph__pop--below-right{top:calc(100% + 8px);right:0}.logomorph__pop-head{display:flex;align-items:center;justify-content:space-between}.logomorph__pop-title{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb,var(--ink) 65%,transparent)}.logomorph__pop-reset{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:0;border-radius:4px;background:none;color:var(--ink-2);opacity:.6;cursor:pointer}.logomorph__pop-reset:hover{opacity:1;background:var(--glass-2)}.logomorph__rpanel{position:absolute;right:10px;bottom:10px;z-index:25;width:var(--dock-w);max-height:min(62vh,620px);display:flex;flex-direction:column;overflow:hidden;background:var(--glass);border:1px solid var(--glass-line);border-radius:var(--r-panel);box-shadow:var(--shadow-pop, var(--shadow-card)),inset 0 1px #ffffff14;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:var(--ink)}.logomorph__rpanel-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden}.logomorph__seg{flex:none;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:2px;margin:8px;padding:2px;background:var(--glass-2);border-radius:var(--r-ctl)}.logomorph__seg-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:calc(var(--r-ctl) - 3px);padding:6px 10px;font:600 12px/1 var(--font-body);letter-spacing:.02em;color:var(--ink-2);background:transparent;cursor:pointer}.logomorph__seg-btn:hover{color:var(--ink)}.logomorph__seg-btn.is-active{color:var(--ink);background:var(--surface-2);box-shadow:var(--shadow-card)}.logomorph__coordpanel{position:absolute;right:10px;top:54px;z-index:25;width:244px;padding:10px 12px;background:var(--glass);border:1px solid var(--glass-line);border-radius:var(--r-card);box-shadow:var(--shadow-pop, var(--shadow-card)),inset 0 1px #ffffff14;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:var(--ink);transition:transform .18s ease-out}.logomorph__coordpanel--dodge{transform:translate(-276px)}@media (prefers-reduced-motion: reduce){.logomorph__coordpanel{transition:none}}.logomorph__coordpanel .logomorph__coord{margin-bottom:0}.logomorph--chrome-hidden .panel,.logomorph--chrome-hidden .dock-collapse,.logomorph--chrome-hidden .logomorph__toolbar,.logomorph--chrome-hidden .logomorph__gearctl,.logomorph--chrome-hidden .logomorph__help-btn,.logomorph--chrome-hidden .logomorph__island,.logomorph--chrome-hidden .logomorph__boolisland,.logomorph--chrome-hidden .logomorph__opbadge,.logomorph--chrome-hidden .logomorph__zoom,.logomorph--chrome-hidden .logomorph__scrubber,.logomorph--chrome-hidden .logomorph__rpanel,.logomorph--chrome-hidden .logomorph__coordpanel,.logomorph--chrome-hidden .lm-mods,.logomorph--chrome-hidden .lm-actions,.logomorph--chrome-hidden .lm-drawer,.logomorph--chrome-hidden .logomorph__hudedit,.logomorph--chrome-hidden .logomorph__buildwarn,.logomorph--chrome-hidden .logomorph__buildnote,.logomorph--chrome-hidden .logomorph__ctxmenu{display:none!important}@media (max-width: 767px){.logomorph__gearctl{left:calc(12px + env(safe-area-inset-left));right:auto;top:calc(88px + env(safe-area-inset-top))}.logomorph__pop{width:min(264px,calc(100vw - 24px))}.logomorph__pop--right{left:0;right:auto;top:auto;bottom:calc(100% + 8px)}.logomorph__pop--below-right{right:auto;left:0}.logomorph__rpanel{width:min(var(--dock-w, 300px),calc(100vw - 20px));right:calc(10px + env(safe-area-inset-right));bottom:calc(var(--dock-reserve-bottom) + 10px + env(safe-area-inset-bottom));max-height:40vh}.logomorph__coordpanel{right:calc(10px + env(safe-area-inset-right));top:calc(90px + env(safe-area-inset-top));width:min(244px,calc(100vw - 20px));transition:transform .18s ease-out,opacity .18s ease-out}.logomorph__coordpanel--dodge{transform:translateY(-8px);opacity:0;pointer-events:none}}.anim-timeline{position:absolute;left:calc(50% + var(--dock-w) / 2);bottom:calc(var(--dock-reserve-bottom) + 72px);transform:translate(-50%);display:flex;align-items:center;gap:12px;padding:8px 18px 8px 8px;border-radius:var(--r-pill);background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);box-shadow:var(--shadow-pop);z-index:5}.anim-timeline__play{flex:none;width:32px;height:32px;border:none;border-radius:50%;background:var(--ink);color:var(--bg);cursor:pointer;display:grid;place-items:center;transition:transform .12s ease,background .12s ease}.anim-timeline__play:hover{transform:scale(1.06);background:var(--ink)}.anim-timeline__play:active{transform:scale(.96);background:var(--ink);color:var(--bg)}.anim-timeline__play svg{display:block;margin-left:1px}.anim-timeline input[type=range]{width:260px;margin:0}.anim-timeline__time{font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}.anim-timeline__cur{color:var(--ink);font-weight:700}.anim-timeline__total{color:var(--ink-3)}.arc{display:flex;height:100%;min-height:0}.arc__stage{flex:1;min-width:0;position:relative;background:var(--backdrop);overflow:hidden;touch-action:none}.arc__canvas{position:absolute;display:block;border-radius:3px;box-shadow:var(--shadow-card);background-color:var(--checker-a);background-image:linear-gradient(45deg,var(--checker-b) 25%,transparent 25%,transparent 75%,var(--checker-b) 75%),linear-gradient(45deg,var(--checker-b) 25%,transparent 25%,transparent 75%,var(--checker-b) 75%);background-size:16px 16px;background-position:0 0,8px 8px}.arc__overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.arc__cp-anchor{position:absolute;transform:translate(-50%);z-index:6}.arc__toolbar{position:absolute;top:14px;left:calc(50% + var(--dock-w) / 2);transform:translate(-50%);display:flex;align-items:center;gap:2px;padding:4px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-ctl);box-shadow:var(--shadow-card)}.arc__toolbar button{border:0;background:transparent;padding:6px 12px;border-radius:calc(var(--r-ctl) - 3px);font:inherit;font-size:12px;color:var(--ink);cursor:pointer;white-space:nowrap}.arc__toolbar button:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}.arc-cycler{display:flex;align-items:center;gap:6px}.arc-cycler__btn{flex-shrink:0;width:26px;height:26px;border:0;background:transparent;border-radius:var(--r-ctl);color:var(--ink-2);font:inherit;font-size:17px;line-height:1;cursor:pointer;padding:0 0 2px}.arc-cycler__btn:hover{background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--ink)}.arc-cycler__name{flex:1;min-width:0;text-align:center;font-size:12px;font-weight:600;letter-spacing:.09em;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.arc__export{display:grid;grid-template-columns:1fr 1fr;gap:6px}.arc-pool{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}.arc-pool__swatch{display:flex;flex-direction:column;align-items:center;gap:3px}.arc-pool__swatch .cp-trigger{width:34px;height:34px;border-radius:calc(var(--r-ctl) - 4px)}.arc-pool__ctl{display:flex;align-items:center;gap:1px;opacity:0;transition:opacity .12s ease}.arc-pool__swatch:hover .arc-pool__ctl,.arc-pool__swatch:focus-within .arc-pool__ctl{opacity:1}.arc-pool__ctl button{border:0;background:transparent;cursor:pointer;width:16px;height:16px;line-height:1;padding:0;font-size:13px;color:color-mix(in srgb,var(--ink) 70%,transparent);border-radius:3px}.arc-pool__ctl button:hover:not(:disabled){background:color-mix(in srgb,var(--ink) 10%,transparent);color:var(--ink)}.arc-pool__ctl button:disabled{opacity:.3;cursor:default}.arc-pool__add{width:34px;height:34px;border:1px dashed var(--line);background:transparent;border-radius:calc(var(--r-ctl) - 4px);font-size:18px;line-height:1;color:color-mix(in srgb,var(--ink) 65%,transparent);cursor:pointer;align-self:flex-start}.arc-pool__add:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 55%,var(--line));color:var(--ink)}.arc-pool__add:disabled{opacity:.35;cursor:default}.gradient{display:flex;height:100%;min-height:0}.gradient__stage{flex:1;min-width:0;position:relative;background:var(--backdrop);overflow:hidden}.gradient__canvas{position:absolute;display:block;border-radius:3px;box-shadow:var(--shadow-card);background-color:var(--checker-a);background-image:linear-gradient(45deg,var(--checker-b) 25%,transparent 25%,transparent 75%,var(--checker-b) 75%),linear-gradient(45deg,var(--checker-b) 25%,transparent 25%,transparent 75%,var(--checker-b) 75%);background-size:16px 16px;background-position:0 0,8px 8px}.gradient__overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.gradient__toolbar{position:absolute;top:14px;left:calc(50% + var(--dock-w) / 2);transform:translate(-50%);display:flex;align-items:center;gap:2px;padding:4px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-ctl);box-shadow:var(--shadow-card)}.gradient__toolbar button{display:flex;align-items:center;gap:6px;border:0;background:transparent;padding:6px 12px;border-radius:calc(var(--r-ctl) - 3px);font:inherit;font-size:12px;color:var(--ink);cursor:pointer;white-space:nowrap}.gradient__toolbar button:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}.gradient__toolbar button.is-active{background:var(--accent);color:var(--accent-ink)}.gradient__toolbar kbd{font-family:inherit;font-size:10px;opacity:.5;background:color-mix(in srgb,var(--ink) 8%,transparent);border-radius:3px;padding:1px 4px}.gradient__axis{display:flex;gap:2px;border-left:1px solid var(--line);margin-left:4px;padding-left:6px}.gradient__axis button{padding:6px 9px}.fx-card{display:flex;flex-direction:column;gap:var(--row-gap);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-sub);padding:var(--card-pad);margin-bottom:var(--card-gap)}.fx-card:hover{border-color:var(--line-strong)}.fx-card--off{opacity:.55}@media (prefers-reduced-motion: no-preference){.fx-card{transition:border-color .1s ease-out}.fx-card__grip{transition:opacity .1s ease-out}.fx-card__btn{transition:opacity .1s ease-out,background .1s ease-out}}.fx-card:hover .fx-card__grip{opacity:.7}.fx-card__head{display:flex;align-items:center;gap:6px;margin-bottom:0;cursor:grab}.fx-card__head:active{cursor:grabbing}.fx-card__grip{font-size:11px;opacity:.4;-webkit-user-select:none;user-select:none;line-height:1}.fx-card__title{flex:1;font-size:12px;font-weight:700}.fx-card__btn{border:0;background:transparent;cursor:pointer;font:inherit;font-size:13px;line-height:1;opacity:.55;padding:3px 6px;border-radius:calc(var(--r-ctl) - 4px)}.fx-card__btn:hover{opacity:1;background:color-mix(in srgb,var(--ink) 8%,transparent)}.fx-linkrow{display:flex;align-items:center;gap:6px}.fx-linkrow__rows{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--row-gap)}.fx-linkrow__btn{flex:none;border:0;background:transparent;cursor:pointer;color:inherit;opacity:.5;padding:4px;border-radius:calc(var(--r-ctl) - 4px);display:inline-flex;align-items:center;justify-content:center}.fx-linkrow__btn:hover{opacity:1;background:color-mix(in srgb,var(--ink) 8%,transparent)}.fx-linkrow--linked .fx-linkrow__btn{opacity:.85}@media (prefers-reduced-motion: no-preference){.fx-linkrow__btn{transition:opacity .1s ease-out,background .1s ease-out}}@media (pointer: coarse){.fx-linkrow__btn{min-width:var(--hit-min, 44px);min-height:var(--hit-min, 44px)}}.gradient__grid-ctl{justify-content:space-between}.gradient__grid-inputs{display:inline-flex;align-items:center;gap:4px}.gradient__grid-inputs input{width:44px;padding:4px 6px;border:1px solid var(--line);border-radius:var(--r-ctl);background:transparent;color:var(--ink);font:inherit;font-size:12px;text-align:center}.gradient__grid-x{color:var(--ink-3);font-size:11px}.gradient__timeline{position:absolute;left:calc(50% + var(--dock-w) / 2);bottom:calc(var(--dock-reserve-bottom) + 18px);transform:translate(-50%);display:flex;align-items:center;gap:12px;padding:8px 18px 8px 8px;border-radius:999px;background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);box-shadow:var(--shadow-pop);z-index:5}.gradient__timeline-play{flex:none;width:32px;height:32px;border:none;border-radius:50%;background:var(--ink);color:var(--bg);cursor:pointer;display:grid;place-items:center;transition:transform .12s ease,background .12s ease}.gradient__timeline-play:hover{transform:scale(1.06)}.gradient__timeline-play:active{transform:scale(.96)}.gradient__timeline-play svg{display:block;margin-left:1px}.gradient__timeline input[type=range]{width:260px;margin:0}.gradient__timeline-time{font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}.gradient__timeline-cur{color:var(--ink);font-weight:700}.gradient__timeline-total{color:var(--ink-3)}.gradient__presets{display:grid;grid-template-columns:repeat(auto-fill,minmax(62px,1fr));gap:6px}.gradient__preset-swatch{height:44px;border:1px solid var(--line);border-radius:var(--r-ctl);cursor:pointer;position:relative;overflow:hidden;padding:0;background-size:cover}.gradient__preset-swatch:hover{box-shadow:inset 0 0 0 2px #ffffffd9,0 2px 8px #0000001f}.gradient__preset-label{position:absolute;bottom:0;left:0;right:0;padding:2px 4px;font-size:10px;line-height:1.4;text-align:center;background:#00000059;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gradient__export{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.gradient__export .panel-btn{padding:9px 6px}.gradient-node-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:6px 0}.gradient-node-actions .panel-btn{padding:7px 6px;font-size:11px}.gradient-node-link{margin:6px 0}.gradient-node-link .panel-btn{width:100%}.gradient-node-link .panel-btn.gradient-node-link--active{background:color-mix(in srgb,var(--accent) 12%,transparent);border-color:var(--accent)}.gradient-palette-swatches{display:grid;grid-template-columns:1fr 1fr;gap:6px 8px;margin-bottom:8px}.gradient-palette-swatches>*{min-width:0;margin:0}.gradient-palette-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px}.universal{display:flex;height:100%;min-height:0}.uni-kind{display:flex;gap:2px;padding:3px;background:color-mix(in srgb,var(--ink) 6%,transparent);border:1px solid var(--line);border-radius:var(--r-ctl)}.uni-kind button{flex:1;border:0;background:transparent;padding:6px 12px;border-radius:calc(var(--r-ctl) - 3px);font:inherit;font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--ink-2);cursor:pointer}.uni-kind button:hover{color:var(--ink)}.uni-kind button.is-active{background:var(--accent);color:var(--accent-ink)}.uni-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:6px}.uni-grid__tile{height:48px;border:1px solid var(--line);border-radius:var(--r-ctl);cursor:pointer;position:relative;overflow:hidden;padding:0;background-color:var(--surface-2);background-size:cover;background-position:center}.uni-grid__tile:hover{box-shadow:inset 0 0 0 2px #ffffffd9,0 2px 8px #0000001f}.uni-grid__tile.is-selected{box-shadow:inset 0 0 0 2px var(--accent),0 2px 8px #00000024;border-color:var(--accent)}.uni-grid__label{position:absolute;bottom:0;left:0;right:0;padding:2px 4px;font-size:10px;line-height:1.4;text-align:center;background:#0006;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.uni-wheel{display:flex;flex-direction:column;gap:10px;margin-bottom:10px}.uni-wheel__canvas{display:block;width:100%;max-width:216px;aspect-ratio:1;height:auto;margin:0 auto;border-radius:50%;touch-action:none;cursor:crosshair;user-select:none;-webkit-user-select:none}.uni-wheel__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.uni-note{margin:6px 2px 2px;font-size:11px;line-height:1.45;color:color-mix(in srgb,var(--ink) 55%,transparent)}.universal__export{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.universal__export .panel-btn{padding:9px 6px}.ov-layer{display:flex;flex-direction:column;gap:6px;padding:6px;margin-bottom:6px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl)}.ov-layer.is-selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.ov-layer__header{display:flex;align-items:center;gap:8px;min-width:0}.ov-layer__thumb{flex:0 0 26px;width:26px;height:26px;border-radius:5px;overflow:hidden;background:repeating-conic-gradient(color-mix(in srgb,var(--ink) 12%,transparent) 0% 25%,transparent 0% 50%) 0 0 / 10px 10px;border:1px solid var(--line)}.ov-layer__thumb img{display:block;width:100%;height:100%;object-fit:contain}.ov-layer__name{flex:1;min-width:0;font-size:12px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ov-layer__actions{display:flex;align-items:center;gap:2px}.ov-layer__icon{border:0;background:transparent;padding:3px;border-radius:4px;line-height:0;color:color-mix(in srgb,var(--ink) 70%,transparent);cursor:pointer}.ov-layer__icon:hover{background:color-mix(in srgb,var(--ink) 10%,transparent);color:var(--ink)}.ov-layer__icon.is-active{color:var(--accent)}.ov-layer__remove:hover{color:#e5484d}.ov-layer.is-locked{background:color-mix(in srgb,var(--ink) 4%,var(--surface-2))}.ov-layer.is-locked .ov-layer__thumb{opacity:.6}.ov-layer__body{display:flex;flex-direction:column;gap:var(--row-gap)}.ov-fitframe{display:flex}.ov-fitframe button{flex:1;padding:8px 12px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font:inherit;font-size:12px;cursor:pointer;transition:background .12s ease}.ov-fitframe button:first-child{border-radius:var(--r-ctl) 0 0 var(--r-ctl);border-right:0}.ov-fitframe button:last-child{border-radius:0 var(--r-ctl) var(--r-ctl) 0}.ov-fitframe button:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}.ov-fitframe button:disabled{opacity:.4;cursor:not-allowed;background:var(--surface-2)}.ov-drop{display:flex;flex-direction:column;gap:6px;padding:10px;border:1px dashed var(--line);border-radius:var(--r-ctl);text-align:center}.ov-drop.is-over{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.ov-drop__hint{margin:0;font-size:11px;color:color-mix(in srgb,var(--ink) 55%,transparent)}.avi{display:flex;height:100%;min-height:0}.avi__stage{flex:1;min-width:0;position:relative;background:var(--backdrop);overflow:hidden;touch-action:none}.avi__canvas{position:absolute;display:block;background:transparent}.avi__overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.avi__toolbar{position:absolute;top:14px;left:calc(50% + var(--dock-w) / 2);transform:translate(-50%);display:flex;align-items:center;gap:2px;padding:4px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-ctl);box-shadow:var(--shadow-card)}.avi__toolbar button{border:0;background:transparent;padding:6px 12px;border-radius:calc(var(--r-ctl) - 3px);font:inherit;font-size:12px;color:var(--ink);cursor:pointer;white-space:nowrap}.avi__toolbar button:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}.avi__export{display:grid;grid-template-columns:1fr 1fr;gap:6px}.avi-mini{display:block;width:100%;aspect-ratio:1}.avi-mini svg{display:block;width:100%;height:100%}.avi-variant-card{display:flex;gap:14px;align-items:center;padding:12px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl)}.avi-variant-card__preview{width:72px;flex:0 0 72px}.avi-variant-card__body{display:flex;flex-direction:column;gap:4px;min-width:0}.avi-variant-card__family{font-size:15px;font-weight:600;color:var(--ink)}.avi-variant-card__palette{font-size:12px;color:color-mix(in srgb,var(--ink) 70%,transparent)}.avi-variant-card__seed{margin-top:2px;align-self:flex-start;border:0;background:transparent;padding:2px 0;font:inherit;font-size:12px;font-variant-numeric:tabular-nums;color:color-mix(in srgb,var(--ink) 82%,transparent);cursor:pointer;display:inline-flex;gap:6px;align-items:center}.avi-variant-card__seed:hover{color:var(--ink)}.avi-variant-card__glyph{opacity:.7}.avi-variant-card__surprise{margin-top:6px;align-self:flex-start}.avi-shape-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.avi-shape-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 6px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);cursor:pointer}.avi-shape-card:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.avi-shape-card.is-active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.avi-shape-card .avi-mini{width:100%}.avi-shape-card__name{font-size:11px;color:color-mix(in srgb,var(--ink) 78%,transparent)}.avi-pal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;max-height:260px;overflow-y:auto;padding-right:2px}.avi-pal-card{display:flex;flex-direction:column;gap:4px;padding:5px;background:var(--surface-2);border:1px solid var(--line);border-radius:calc(var(--r-ctl) - 2px);cursor:pointer;text-align:left}.avi-pal-card:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.avi-pal-card.is-active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.avi-pal-strip{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;height:16px;border-radius:4px;overflow:hidden}.avi-pal-strip>span{display:block;height:100%}.avi-pal-name{font-size:10.5px;color:color-mix(in srgb,var(--ink) 78%,transparent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.avi-pal-edit{display:flex;flex-direction:column;gap:var(--row-gap);margin-top:6px}.avi-pal-edit__head{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:color-mix(in srgb,var(--ink) 76%,transparent)}.avi-pal-reset{border:0;background:transparent;padding:0;font:inherit;font-size:11px;color:var(--accent);cursor:pointer}.avi-pal-reset:hover{text-decoration:underline}.avi-pal-swatches{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}.avi-swatch{display:flex;flex-direction:column;align-items:center;gap:3px}.avi-swatch .cp-trigger{width:34px;height:34px;border-radius:calc(var(--r-ctl) - 4px)}.avi-swatch__ctl{display:flex;align-items:center;gap:1px;opacity:0;transition:opacity .12s ease}.avi-swatch:hover .avi-swatch__ctl,.avi-swatch:focus-within .avi-swatch__ctl{opacity:1}.avi-swatch__ctl button{border:0;background:transparent;cursor:pointer;width:16px;height:16px;line-height:1;padding:0;font-size:13px;color:color-mix(in srgb,var(--ink) 70%,transparent);border-radius:3px}.avi-swatch__ctl button:hover:not(:disabled){background:color-mix(in srgb,var(--ink) 10%,transparent);color:var(--ink)}.avi-swatch__ctl button:disabled{opacity:.3;cursor:default}.avi-swatch-add{width:34px;height:34px;border:1px dashed var(--line);background:transparent;border-radius:calc(var(--r-ctl) - 4px);font-size:18px;line-height:1;color:color-mix(in srgb,var(--ink) 65%,transparent);cursor:pointer;align-self:flex-start}.avi-swatch-add:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 55%,var(--line));color:var(--ink)}.avi-swatch-add:disabled{opacity:.35;cursor:default}.avi-layer{display:flex;flex-direction:column;gap:6px;padding:6px;margin-bottom:6px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl)}.avi-layer.is-selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.avi-layer__header{display:flex;align-items:center;gap:8px;min-width:0}.avi-layer__thumb{flex:0 0 26px;width:26px;height:26px;border-radius:5px;overflow:hidden;background:repeating-conic-gradient(color-mix(in srgb,var(--ink) 12%,transparent) 0% 25%,transparent 0% 50%) 0 0 / 10px 10px;border:1px solid var(--line)}.avi-layer__thumb img{display:block;width:100%;height:100%;object-fit:contain}.avi-layer__name{flex:1;min-width:0;font-size:12px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.avi-layer__actions{display:flex;align-items:center;gap:2px}.avi-layer__icon{border:0;background:transparent;padding:3px;border-radius:4px;line-height:0;color:color-mix(in srgb,var(--ink) 70%,transparent);cursor:pointer}.avi-layer__icon:hover{background:color-mix(in srgb,var(--ink) 10%,transparent);color:var(--ink)}.avi-layer__remove:hover{color:#e5484d}.avi-layer__body{display:flex;flex-direction:column;gap:var(--row-gap)}.avi-drop{display:flex;flex-direction:column;gap:6px;padding:10px;border:1px dashed var(--line);border-radius:var(--r-ctl);text-align:center}.avi-drop.is-over{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.avi-drop__hint{margin:0;font-size:11px;color:color-mix(in srgb,var(--ink) 55%,transparent)}.avi-lg__hint{margin:2px 0 0;font-size:11px;color:color-mix(in srgb,var(--ink) 55%,transparent)}.avi-hue{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:10px;border-radius:999px;background:linear-gradient(90deg,#f42525,#f2f20d,#17cf17,#1dc9c9,#4242f0,#ee2bee,#f42525);box-shadow:inset 0 0 0 1px var(--line);cursor:pointer}.avi-hue::-webkit-slider-runnable-track{height:10px;border-radius:999px;background:transparent;box-shadow:none}.avi-hue::-moz-range-track{height:10px;border-radius:999px;background:transparent;box-shadow:none}.avi-hue::-webkit-slider-thumb{-webkit-appearance:none;width:15px;height:15px;margin-top:-2.5px;border-radius:50%;background:#fff;border:2px solid rgba(0,0,0,.35);box-shadow:0 1px 3px #0000004d}.avi-hue::-moz-range-thumb{width:15px;height:15px;border-radius:50%;background:#fff;border:2px solid rgba(0,0,0,.35)}.lockup{display:flex;height:100%;min-height:0}.lockup__stage{flex:1;min-width:0;position:relative;background:var(--backdrop);overflow:hidden;touch-action:none}.lockup__canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.lockup__empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--ink-2);font-size:13px;pointer-events:none;text-align:center;padding:0 24px}.lockup__toolbar{position:absolute;top:14px;left:calc(50% + var(--dock-w) / 2);transform:translate(-50%);display:flex;align-items:center;gap:2px;padding:4px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-ctl);box-shadow:var(--shadow-card)}.lockup__toolbar button{border:0;background:transparent;padding:6px 12px;border-radius:calc(var(--r-ctl) - 3px);font:inherit;font-size:12px;color:var(--ink);cursor:pointer;white-space:nowrap}.lockup__toolbar button:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}.lockup__drop{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px;border:1px dashed var(--line);border-radius:var(--r-ctl);text-align:center}.lockup__drop.is-over{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.lockup__drop-hint{margin:0;font-size:11px;color:color-mix(in srgb,var(--ink) 55%,transparent)}.lockup__drop-error{color:#b3261e}.lockup__paste-area{width:100%;min-height:60px;padding:6px 8px;font:inherit;font-size:12px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--ink);resize:vertical}.lockup__text-input{grid-column:2 / 4;width:100%;min-width:0;padding:6px 8px;font:inherit;font-size:12px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--ink)}.lockup__gaps{display:flex;flex-direction:column;gap:var(--row-gap)}.lockup__export{display:grid;grid-template-columns:1fr 1fr;gap:6px}.lockup__magic{display:flex;flex-direction:column;gap:6px}.lockup__magic-btn{width:100%}.lockup__magic-clear{padding:0;border:0;background:none;font:inherit;color:var(--accent-blue);cursor:pointer;text-decoration:underline}.lockup__seed-tabs{display:flex;gap:6px}.lockup__seed-tab.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.lockup__seed-panel{display:flex;flex-direction:column;gap:var(--row-gap);margin-top:6px}.lockup__harmony-base{display:flex;align-items:center;gap:8px}.lockup__swatch-list{display:flex;flex-direction:column;gap:6px;margin-top:6px}.lockup__swatch-row{display:flex;align-items:center;gap:8px}.lockup__swatch-row .dropdown-ctl{flex:1;margin:0;grid-template-columns:1fr}.lockup__swatch-row__ctl{display:flex;align-items:center;gap:1px}.lockup__swatch-row__ctl button{border:0;background:transparent;cursor:pointer;width:20px;height:20px;line-height:1;padding:0;font-size:13px;color:color-mix(in srgb,var(--ink) 70%,transparent);border-radius:3px}.lockup__swatch-row__ctl button:hover:not(:disabled){background:color-mix(in srgb,var(--ink) 10%,transparent);color:var(--ink)}.lockup__swatch-row__ctl button:disabled{opacity:.3;cursor:default}.lockup__swatch-actions{display:flex;gap:6px;margin-top:4px}.lockup__swatch-actions .panel-btn{flex:1}.lockup__oncolor{display:flex;flex-direction:column;gap:8px;margin-top:10px}.lockup__type-role{display:flex;flex-direction:column;gap:var(--row-gap);padding-top:8px;margin-top:4px;border-top:1px solid var(--line)}.lockup__type-role__head{display:flex;align-items:baseline;justify-content:space-between;font-size:12px;color:var(--ink)}.lockup__type-role__size{display:inline-flex;gap:6px;align-items:baseline;font-size:11px;color:var(--ink-2)}.lockup__specimen{display:flex;flex-direction:column;gap:8px;margin-top:10px}.scales{display:flex;height:100%;min-height:0}.scales__stage{flex:1;min-width:0;overflow-y:auto;overflow-x:hidden;background:var(--backdrop);padding:28px 32px;padding-left:calc(var(--dock-w, 330px) + 44px);padding-bottom:calc(28px + var(--dock-reserve-bottom, 0px))}@media (max-width: 767px){.scales__stage{padding-left:20px;padding-right:20px}}.scales__doc{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:32px}.scales__sub{margin:0;font-size:11.5px;color:var(--ink-3);letter-spacing:.01em}.scale-block{display:flex;flex-direction:column}.scale-block__label{position:relative;display:inline-flex;align-items:center;gap:8px;align-self:flex-start;margin-bottom:10px;border:0;background:transparent;padding:0;cursor:pointer;font:inherit}.scale-block__label:after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:2px;border-radius:2px;background:var(--ink);opacity:0;transition:opacity .12s ease}.scale-block__label:hover:after{opacity:.3}.scale-block.is-active .scale-block__label:after{opacity:1}.scale-block__name{font-size:13px;font-weight:600;color:var(--ink)}.scale-block__stops{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:8px;margin-top:7px;font-size:9.5px;color:var(--ink-3);text-align:center;letter-spacing:.02em}.scale-chip{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:18px;padding:0 6px;border-radius:5px;border:1px solid var(--line);background:var(--surface-hi);font-size:9.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}.scale-block__label .scale-chip{min-width:0}.scale-block.is-active .scale-chip{background:var(--ink);color:var(--bg);border-color:var(--ink)}.scale-strip{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;overflow:hidden;border-radius:6px}.scale-strip--mini{height:16px;border-radius:4px}.scale-strip--stage{height:44px;gap:8px;border-radius:0;overflow:visible}.scale-strip--stage .scale-strip__cell{border-radius:8px}.scale-strip__cell{position:relative;display:block;height:100%;width:100%;border:0;padding:0;margin:0;cursor:default}.scale-strip--stage .scale-strip__cell{cursor:pointer;transition:transform .1s ease}.scale-strip--mini .scale-strip__cell.is-editable{cursor:pointer}.scale-strip--stage .scale-strip__cell:hover{transform:scaleY(1.12);z-index:1}.scale-strip--stage .scale-strip__cell:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;z-index:2}.scale-strip__lock{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:.85;pointer-events:none}.scale-strip--mini .scale-strip__lock{transform:translate(-50%,-50%) scale(.7)}.scale-strip__pin{position:absolute;top:3px;right:3px;width:4px;height:4px;border-radius:50%;opacity:.7;pointer-events:none}.scales-edit-anchor .cp-trigger{display:none}.scales__previews{display:flex;flex-direction:column;gap:14px}.pv-both{display:flex;flex-direction:column;gap:16px}.pv{position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:var(--pv-bg);color:var(--pv-text);font-family:var(--pv-font-body, system-ui, sans-serif);box-shadow:0 1px 2px #0003,0 10px 30px #0003}.pv__content{padding:14px}.pv:has(>.pv__theme-tag)>.pv__content{padding-top:32px}.pv__theme-tag{position:absolute;top:10px;right:10px;z-index:4;font-size:9.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:999px;background:var(--pv-surface);color:var(--pv-text-muted);border:1px solid var(--pv-border);font-family:system-ui,sans-serif}.pv h1,.pv h2,.pv h3,.pv h4{font-family:var(--pv-font-heading, inherit);margin:0}.pv-masonry{columns:15rem;column-gap:12px}.pv-masonry--chart{columns:17rem}.pv-masonry--head{column-width:auto;column-count:2;column-gap:16px}@media (max-width: 560px){.pv-masonry,.pv-masonry--chart,.pv-masonry--head{columns:1}}.pv-panel{position:relative;break-inside:avoid;margin:0 0 12px;border-radius:12px;border:1px solid var(--pv-border);background:var(--pv-surface);padding:13px;overflow:hidden;display:flex;flex-direction:column;gap:9px}.pv-panel--page{background:var(--pv-bg)}.pv-panel--flush{padding:0;gap:0}.pv-masonry .pv-panel--wide{column-span:all}.pv-masonry--head .pv-panel{padding:20px;gap:11px;margin-bottom:16px}.pv-site{display:flex;flex-direction:column;gap:12px}.pv-panel__tag{position:absolute;top:7px;right:7px;z-index:5;font-size:9px;font-weight:650;letter-spacing:.03em;white-space:nowrap;padding:2px 6px;border-radius:999px;background:color-mix(in srgb,var(--pv-text) 10%,transparent);color:var(--pv-text-muted);font-family:system-ui,sans-serif;opacity:0;transform:translateY(-2px);transition:opacity .14s ease,transform .14s ease;pointer-events:none}.pv-panel:hover>.pv-panel__tag{opacity:.92;transform:none}.pv-card{background:var(--pv-surface);border:1px solid var(--pv-border);border-radius:11px;padding:12px;display:flex;flex-direction:column;gap:8px}.pv-card__head{display:flex;align-items:center;justify-content:space-between;gap:8px}.pv-card__title{font-size:12.5px;font-weight:650;color:var(--pv-text)}.pv-btn{display:inline-flex;align-items:center;gap:6px;justify-content:center;padding:8px 14px;border-radius:8px;font-size:12.5px;font-weight:600;border:1px solid transparent;cursor:default;white-space:nowrap}.pv-btn--sm{padding:5px 10px;font-size:11.5px}.pv-btn--primary{background:var(--pv-accent);color:var(--pv-on-accent)}.pv-btn--primary.is-hover{background:var(--pv-accent-hover)}.pv-btn--secondary{background:var(--pv-surface-hi);color:var(--pv-text);border-color:var(--pv-border-strong)}.pv-btn--secondary.is-hover{background:var(--pv-surface);border-color:var(--pv-text-subtle)}.pv-btn--ghost{background:transparent;color:var(--pv-accent)}.pv-btn--ghost.is-hover{background:var(--pv-accent-subtle)}.pv-btn--danger{background:var(--pv-danger);color:var(--pv-on-danger)}.pv-btn--danger.is-hover{filter:brightness(.93)}.pv-btn.is-disabled{opacity:.42}.pv-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:999px;font-size:10.5px;font-weight:650}.pv-badge--accent{background:var(--pv-accent-subtle);color:var(--pv-accent-hover)}.pv-badge--success{background:var(--pv-success-bg);color:var(--pv-success-text)}.pv-badge--warning{background:var(--pv-warning-bg);color:var(--pv-warning-text)}.pv-badge--danger{background:var(--pv-danger-bg);color:var(--pv-danger-text)}.pv-chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:6px;font-size:10.5px;font-weight:550;background:var(--pv-surface-hi);color:var(--pv-text-muted);border:1px solid var(--pv-border)}.pv-chip--accent{background:var(--pv-accent-subtle);color:var(--pv-accent-hover);border-color:transparent}.pv-input{display:inline-flex;align-items:center;flex:1;min-width:0;padding:8px 11px;border-radius:8px;font-size:12px;background:var(--pv-bg);color:var(--pv-text-subtle);border:1px solid var(--pv-border-strong)}.pv-input--focus{color:var(--pv-text);border-color:var(--pv-ring);box-shadow:0 0 0 3px color-mix(in srgb,var(--pv-ring) 30%,transparent)}.pv-input--error{color:var(--pv-danger-text);border-color:var(--pv-danger)}.pv-input__caret{width:1px;height:14px;margin-left:1px;background:var(--pv-accent)}.pv-toggle{width:34px;height:20px;border-radius:999px;background:var(--pv-border-strong);padding:2px;display:inline-flex;align-items:center;flex:0 0 auto}.pv-toggle.is-on{background:var(--pv-accent);justify-content:flex-end}.pv-toggle__knob{width:16px;height:16px;border-radius:50%;background:var(--pv-surface)}.pv-toggle.is-on .pv-toggle__knob{background:var(--pv-on-accent)}.pv-alert{padding:9px 12px;border-radius:9px;font-size:12px;line-height:1.4;border:1px solid}.pv-alert+.pv-alert{margin-top:7px}.pv-alert b{font-weight:700}.pv-alert--accent{background:var(--pv-accent-subtle);color:var(--pv-accent-hover);border-color:color-mix(in srgb,var(--pv-accent) 40%,transparent)}.pv-alert--success{background:var(--pv-success-bg);color:var(--pv-success-text);border-color:var(--pv-success-border)}.pv-alert--warning{background:var(--pv-warning-bg);color:var(--pv-warning-text);border-color:var(--pv-warning-border)}.pv-alert--danger{background:var(--pv-danger-bg);color:var(--pv-danger-text);border-color:var(--pv-danger-border)}.pv-stat{display:flex;flex-direction:column;gap:5px}.pv-stat__label{font-size:10.5px;color:var(--pv-text-muted);font-weight:550}.pv-stat__value{font-size:19px;font-weight:700;color:var(--pv-text);letter-spacing:-.01em}.pv-spark{width:100%;height:24px;display:block;margin-top:2px}.pv-minibars{display:flex;align-items:flex-end;gap:5px;height:72px;padding-top:6px}.pv-minibars__bar{flex:1;background:var(--pv-accent);border-radius:3px 3px 0 0;min-height:4px}.pv-minibars__bar:nth-child(2n){background:var(--pv-accent-hover)}.pv-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.pv-list__item{display:flex;align-items:center;gap:8px;font-size:12px}.pv-list__dot{width:8px;height:8px;border-radius:50%;background:var(--pv-accent);flex:0 0 auto}.pv-list__name{color:var(--pv-text);font-weight:550}.pv-list__amt{margin-left:auto;color:var(--pv-text-muted)}.pv-table{width:100%;border-collapse:collapse;font-size:11.5px}.pv-table th{text-align:left;font-weight:600;color:var(--pv-text-muted);padding:5px 6px;border-bottom:1px solid var(--pv-border);font-size:10px;text-transform:uppercase;letter-spacing:.04em}.pv-table td{padding:7px 6px;color:var(--pv-text);border-bottom:1px solid var(--pv-border)}.pv-table tr:last-child td{border-bottom:0}.pv-table__num{text-align:right}.pv-table__u{display:inline-flex;align-items:center;gap:6px}.pv-av{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;flex:0 0 auto;font-size:11px;font-weight:700;background:var(--pv-accent-subtle);color:var(--pv-accent-hover);font-family:system-ui,sans-serif}.pv-av--sm{width:20px;height:20px;font-size:9px}.pv-av--more{background:var(--pv-surface-hi);color:var(--pv-text-muted)}.pv-avstack{display:inline-flex;align-items:center}.pv-avstack .pv-av{border:1.5px solid var(--pv-surface);margin-left:-6px}.pv-avstack .pv-av:first-child{margin-left:0}.pv-av-status{position:relative;display:inline-flex}.pv-av-status__dot{position:absolute;right:-1px;bottom:-1px;border:1.5px solid var(--pv-surface)}.pv-dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto;background:var(--pv-text-subtle)}.pv-dot--accent{background:var(--pv-accent)}.pv-dot--success{background:var(--pv-success)}.pv-dot--warning{background:var(--pv-warning)}.pv-dot--danger{background:var(--pv-danger)}.pv-icobtn{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:7px;color:var(--pv-text-muted);background:transparent;flex:0 0 auto}.pv-icobtn--play{background:var(--pv-accent);color:var(--pv-on-accent);border-radius:50%;width:28px;height:28px}.pv-tint{position:relative;border-radius:10px;overflow:hidden;background:linear-gradient(135deg,var(--pv-accent),var(--pv-accent-active))}.pv-tint--series{background:linear-gradient(135deg,var(--pv-series-0),var(--pv-series-1, var(--pv-accent-active)))}.pv-tint--warm{background:linear-gradient(135deg,var(--pv-series-3, var(--pv-accent)),var(--pv-series-2, var(--pv-accent-active)))}.pv-tint--muted{background:linear-gradient(135deg,var(--pv-surface-hi),var(--pv-border-strong))}.pv-tint__doodle{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;color:var(--pv-on-accent);opacity:.5}.pv-prog{height:6px;border-radius:999px;background:var(--pv-surface-hi);overflow:hidden}.pv-prog--sm{height:4px}.pv-prog__fill{display:block;height:100%;border-radius:999px;background:var(--pv-accent)}.pv-prog__fill--success{background:var(--pv-success)}.pv-product__img{height:96px;border-radius:0}.pv-product__body{display:flex;flex-direction:column;gap:5px;padding:11px 12px 12px}.pv-product__row{display:flex;align-items:center;justify-content:space-between;gap:8px}.pv-product__name{font-size:13px;font-weight:650;color:var(--pv-text)}.pv-product__meta{font-size:11px;color:var(--pv-text-muted)}.pv-product__buy{display:flex;align-items:center;justify-content:space-between;margin-top:4px}.pv-product__price{font-size:15px;font-weight:700;color:var(--pv-text)}.pv-blog{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.pv-blog__row{display:flex;align-items:center;gap:10px}.pv-blog__thumb{width:42px;height:42px;flex:0 0 42px;border-radius:8px}.pv-blog__text{display:flex;flex-direction:column;gap:2px;min-width:0}.pv-blog__title{font-size:12px;font-weight:600;color:var(--pv-text);line-height:1.3}.pv-blog__meta{font-size:10.5px;color:var(--pv-text-subtle)}.pv-cal__head{display:flex;align-items:center;justify-content:space-between}.pv-cal__nav{display:flex;gap:2px}.pv-cal__dow{display:grid;grid-template-columns:repeat(7,1fr);font-size:8.5px;color:var(--pv-text-subtle);text-align:center;margin-top:2px}.pv-cal__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.pv-cal__cell{aspect-ratio:1;display:grid;place-items:center;font-size:9px;border-radius:5px;color:var(--pv-text-muted)}.pv-cal__cell.is-out{color:transparent}.pv-cal__cell.is-mark{background:var(--pv-accent-subtle);color:var(--pv-accent-hover);font-weight:650}.pv-cal__cell.is-today{background:var(--pv-accent);color:var(--pv-on-accent);font-weight:700}.pv-todo{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.pv-todo__item{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--pv-text)}.pv-todo__item.is-done .pv-todo__text{color:var(--pv-text-subtle);text-decoration:line-through}.pv-check{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:5px;border:1.5px solid var(--pv-border-strong);color:transparent;flex:0 0 auto}.pv-check.is-on,.pv-todo__item.is-done .pv-check{background:var(--pv-accent);border-color:var(--pv-accent);color:var(--pv-on-accent)}.pv-profile{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;padding:4px 0 2px}.pv-profile .pv-av{width:44px;height:44px;font-size:15px;margin-bottom:2px}.pv-profile__name{font-size:13.5px;font-weight:650;color:var(--pv-text)}.pv-profile__handle{font-size:10.5px;color:var(--pv-text-muted)}.pv-profile__stats{display:flex;gap:12px;margin:6px 0;font-size:10px;color:var(--pv-text-muted)}.pv-profile__stats b{display:block;font-size:13px;color:var(--pv-text)}.pv-profile__follow{width:100%}.pv-jobs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}.pv-jobs__row{display:flex;align-items:center;gap:9px}.pv-jobs__logo{width:28px;height:28px;flex:0 0 28px;border-radius:7px}.pv-jobs__text{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.pv-jobs__role{font-size:11.5px;font-weight:600;color:var(--pv-text)}.pv-jobs__co{font-size:10px;color:var(--pv-text-muted)}.pv-chipcloud{display:flex;flex-wrap:wrap;gap:6px}.pv-notif{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}.pv-notif__row{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--pv-text)}.pv-notif__row .pv-dot{margin-top:0}.pv-notif__text{flex:1;min-width:0;line-height:1.3}.pv-notif__time{color:var(--pv-text-subtle);font-size:10px;flex:0 0 auto}.pv-player{display:flex;gap:11px;padding:11px;align-items:center}.pv-player__art{width:56px;height:56px;flex:0 0 56px;border-radius:9px}.pv-player__body{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.pv-player__track{font-size:12.5px;font-weight:650;color:var(--pv-text)}.pv-player__artist{font-size:10.5px;color:var(--pv-text-muted)}.pv-player__prog{height:4px;border-radius:999px;background:var(--pv-surface-hi);overflow:hidden;margin:2px 0}.pv-player__fill{display:block;height:100%;background:var(--pv-accent);border-radius:999px}.pv-player__ctrl{display:flex;align-items:center;gap:6px}.pv-banner{display:flex;align-items:center;gap:9px;padding:8px 12px;background:var(--pv-accent-subtle);font-size:11.5px;color:var(--pv-text)}.pv-banner__text{color:var(--pv-text-muted)}.pv-banner__link{color:var(--pv-accent);font-weight:600;margin-left:auto}.pv-banner__x{color:var(--pv-text-subtle);display:inline-flex}.pv-nav{display:flex;align-items:center;gap:14px;padding:11px 14px}.pv-nav__brand{font-weight:750;color:var(--pv-text);font-size:14px;font-family:var(--pv-font-heading);white-space:nowrap}.pv-nav__links{display:flex;gap:14px}.pv-nav__links a{color:var(--pv-text-muted);font-size:12px}.pv-nav__links a.is-active{color:var(--pv-text);font-weight:600}.pv-nav__actions{display:flex;gap:8px;margin-left:auto}.pv-appbar{display:flex;align-items:center;gap:12px;padding:10px 14px}.pv-appbar__search{display:flex;align-items:center;gap:7px;flex:1;max-width:360px;padding:7px 10px;border-radius:8px;background:var(--pv-bg);border:1px solid var(--pv-border-strong);color:var(--pv-text-subtle);font-size:11.5px}.pv-appbar__ph{color:var(--pv-text-subtle)}.pv-kbd{margin-left:auto;font-size:9.5px;padding:1px 5px;border-radius:4px;border:1px solid var(--pv-border);color:var(--pv-text-muted)}.pv-appbar__right{display:flex;align-items:center;gap:10px;margin-left:auto}.pv-navc{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:11px 14px}.pv-navc__brand{text-align:center}.pv-navc__side{display:flex;gap:14px}.pv-navc__side--r{justify-content:flex-end}.pv-navc__side a{color:var(--pv-text-muted);font-size:12px}.pv-navc .pv-nav__brand{text-align:center;letter-spacing:.14em;font-size:13px}.pv-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:20px;padding:6px 4px;align-items:center}@media (max-width: 640px){.pv-hero{grid-template-columns:1fr}}.pv-hero__copy{display:flex;flex-direction:column;align-items:flex-start;gap:11px}.pv-hero__title{font-size:27px;line-height:1.08;letter-spacing:-.02em;color:var(--pv-text)}.pv-hero__lede{font-size:13px;line-height:1.5;color:var(--pv-text-muted);max-width:40ch}.pv-hero__cta{display:flex;gap:8px;margin-top:2px}.pv-hero__trust{display:flex;align-items:center;gap:8px;margin-top:6px}.pv-hero__trusttext{font-size:10.5px;color:var(--pv-text-subtle)}.pv-hero__panel{min-width:0}.pv-hero__shot{position:relative;aspect-ratio:4 / 3;width:100%}.pv-hero__float{position:absolute;right:12px;bottom:12px;display:flex;flex-direction:column;gap:2px;padding:9px 11px;border-radius:10px;background:var(--pv-surface);border:1px solid var(--pv-border);box-shadow:0 6px 18px #0000002e}.pv-hero__floatlabel{font-size:9.5px;color:var(--pv-text-muted)}.pv-hero__floatval{font-size:17px;font-weight:700;color:var(--pv-text)}.pv-hero__float .pv-badge{align-self:flex-start;margin-top:2px}.pv-herob{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:26px 18px;background:radial-gradient(120% 130% at 50% 0%,var(--pv-accent-subtle),transparent 70%)}.pv-herob__title{font-size:24px;line-height:1.1;letter-spacing:-.02em;color:var(--pv-text);max-width:22ch}.pv-herob__lede{font-size:12.5px;line-height:1.5;color:var(--pv-text-muted);max-width:46ch}.pv-feats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}@media (max-width: 680px){.pv-feats{grid-template-columns:repeat(2,1fr)}}.pv-feat{display:flex;flex-direction:column;gap:6px;padding:12px;border-radius:10px;background:var(--pv-surface);border:1px solid var(--pv-border)}.pv-panel--page .pv-feat{background:var(--pv-surface)}.pv-feat__ico{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:8px;background:var(--pv-accent-subtle);color:var(--pv-accent)}.pv-feat__t{font-size:12.5px;font-weight:650;color:var(--pv-text)}.pv-feat__d{font-size:11px;line-height:1.4;color:var(--pv-text-muted)}.pv-price{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}@media (max-width: 640px){.pv-price{grid-template-columns:1fr}}.pv-tier{position:relative;display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:12px;background:var(--pv-surface);border:1px solid var(--pv-border)}.pv-tier.is-pop{border-color:var(--pv-accent);box-shadow:0 0 0 1px var(--pv-accent)}.pv-tier__flag{position:absolute;top:-9px;left:14px;font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:2px 8px;border-radius:999px;background:var(--pv-accent);color:var(--pv-on-accent)}.pv-tier__name{font-size:12px;font-weight:650;color:var(--pv-text-muted)}.pv-tier__price{display:flex;align-items:baseline;gap:3px}.pv-tier__price b{font-size:24px;font-weight:750;color:var(--pv-text)}.pv-tier__per{font-size:11px;color:var(--pv-text-subtle)}.pv-tier__feats{list-style:none;margin:2px 0 6px;padding:0;display:flex;flex-direction:column;gap:6px}.pv-tier__feats li{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--pv-text-muted)}.pv-tier__ck{display:inline-flex;color:var(--pv-accent);flex:0 0 auto}.pv-tier__cta{margin-top:auto}.pv-split2{display:grid;grid-template-columns:1.15fr 1fr;gap:12px}@media (max-width: 640px){.pv-split2{grid-template-columns:1fr}}.pv-quote{display:flex;flex-direction:column;gap:10px;padding:15px;border-radius:12px;background:var(--pv-surface);border:1px solid var(--pv-border)}.pv-quote__stars{display:inline-flex;gap:2px;color:var(--pv-accent)}.pv-quote__text{font-size:14px;line-height:1.5;color:var(--pv-text);font-family:var(--pv-font-heading)}.pv-quote__by{display:flex;align-items:center;gap:8px}.pv-quote__name{display:block;font-size:11.5px;font-weight:600;color:var(--pv-text)}.pv-quote__role{display:block;font-size:10px;color:var(--pv-text-muted)}.pv-signup{display:flex;flex-direction:column;gap:8px;padding:15px;border-radius:12px;background:var(--pv-surface);border:1px solid var(--pv-border)}.pv-signup__title{font-size:13px;font-weight:650;color:var(--pv-text);margin-bottom:2px}.pv-signup__go{width:100%;margin-top:2px}.pv-signup__or{font-size:10px;color:var(--pv-text-subtle);text-align:center}.pv-signup__oauth{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pv-footer{display:flex;flex-direction:column;gap:14px;padding:16px 16px 12px}.pv-footer__cols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:14px}@media (max-width: 640px){.pv-footer__cols{grid-template-columns:1fr 1fr}}.pv-footer__brandcol{display:flex;flex-direction:column;gap:6px}.pv-footer__tag{font-size:11px;color:var(--pv-text-muted);max-width:24ch}.pv-footer__col{display:flex;flex-direction:column;gap:6px}.pv-footer__h{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--pv-text-subtle)}.pv-footer__col a{font-size:11.5px;color:var(--pv-text-muted)}.pv-footer__bar{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid var(--pv-border);font-size:10.5px;color:var(--pv-text-subtle)}.pv-footer__soc{display:flex;gap:6px}.pv-dashpanel{overflow:hidden}.pv-dash{display:grid;grid-template-columns:138px 1fr;gap:0}@media (max-width: 560px){.pv-dash{grid-template-columns:1fr}.pv-dash__side{display:none}}.pv-dash__side{display:flex;flex-direction:column;gap:10px;padding:14px 12px;background:var(--pv-surface);border-right:1px solid var(--pv-border)}.pv-dash__brand{font-weight:750;font-size:13px;color:var(--pv-text)}.pv-dash__side nav{display:flex;flex-direction:column;gap:2px}.pv-dash__navlink{padding:6px 8px;border-radius:6px;font-size:11.5px;color:var(--pv-text-muted)}.pv-dash__navlink.is-active{background:var(--pv-accent-subtle);color:var(--pv-accent-hover);font-weight:600}.pv-dash__upsell{margin-top:auto;display:flex;flex-direction:column;gap:5px;padding:10px;border-radius:9px;background:var(--pv-bg);border:1px solid var(--pv-border)}.pv-dash__upselltitle{font-size:10.5px;font-weight:650;color:var(--pv-text)}.pv-dash__upsellsub{font-size:9.5px;color:var(--pv-text-subtle)}.pv-dash__main{display:flex;flex-direction:column;gap:11px;min-width:0;padding:13px}.pv-dash__top{display:flex;align-items:center;gap:10px}.pv-dash__crumb{font-size:12px;font-weight:600;color:var(--pv-text)}.pv-dash__crumbsep{color:var(--pv-text-subtle);margin:0 2px}.pv-dash__search{margin-left:auto;max-width:200px}.pv-dash__statrow{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}@media (max-width: 560px){.pv-dash__statrow{grid-template-columns:repeat(2,1fr)}}.pv-dash__stat{gap:4px;padding:11px}.pv-dash__grid{display:grid;grid-template-columns:1.5fr 1fr;gap:10px}@media (max-width: 560px){.pv-dash__grid{grid-template-columns:1fr}}.pv-area{width:100%;height:auto}.pv-dash__feed{min-width:0}.pv-feed{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}.pv-feed__row{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--pv-text-muted)}.pv-feed__text{flex:1;min-width:0;line-height:1.3}.pv-feed__text b{color:var(--pv-text);font-weight:650}.pv-feed__time{color:var(--pv-text-subtle);font-size:10px;flex:0 0 auto}.pv-comp__label{font-size:10px;font-weight:650;text-transform:uppercase;letter-spacing:.05em;color:var(--pv-text-subtle)}.pv-comp__row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pv-btnmatrix{display:flex;flex-direction:column;gap:7px}.pv-btnmatrix__row{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.pv-btnmatrix__row .pv-btn{width:100%}.pv-fields{display:flex;flex-direction:column;gap:9px}.pv-field{display:flex;flex-direction:column;gap:4px}.pv-field__lbl{font-size:10.5px;color:var(--pv-text-muted);font-weight:550}.pv-field .pv-input{flex:none}.pv-field__err{font-size:10px;color:var(--pv-danger-text)}.pv-ctrls{display:flex;flex-direction:column;gap:9px}.pv-ctrls__row{display:flex;align-items:center;gap:9px}.pv-ctrls__lbl{font-size:11.5px;color:var(--pv-text)}.pv-select{display:flex;align-items:center;justify-content:space-between;padding:7px 11px;border-radius:8px;background:var(--pv-bg);border:1px solid var(--pv-border-strong);color:var(--pv-text);font-size:12px}.pv-select__chev{color:var(--pv-text-muted)}.pv-radio{width:16px;height:16px;border-radius:50%;border:1.5px solid var(--pv-border-strong);flex:0 0 auto;position:relative}.pv-radio.is-on{border-color:var(--pv-accent)}.pv-radio.is-on:after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;background:var(--pv-accent)}.pv-slider{position:relative;height:6px;border-radius:999px;background:var(--pv-surface-hi);margin:6px 0 12px}.pv-slider__fill{position:absolute;left:0;top:0;height:100%;border-radius:999px;background:var(--pv-accent)}.pv-slider__knob{position:absolute;top:50%;width:14px;height:14px;border-radius:50%;background:var(--pv-surface);border:2px solid var(--pv-accent);transform:translate(-50%,-50%)}.pv-tabs{display:flex;gap:4px;border-bottom:1px solid var(--pv-border)}.pv-tabs__t{padding:6px 10px;font-size:11.5px;color:var(--pv-text-muted);border-bottom:2px solid transparent;margin-bottom:-1px}.pv-tabs__t.is-active{color:var(--pv-accent);border-bottom-color:var(--pv-accent);font-weight:600}.pv-seg{display:inline-flex;padding:2px;border-radius:8px;background:var(--pv-surface-hi)}.pv-seg span{padding:4px 12px;font-size:11px;border-radius:6px;color:var(--pv-text-muted)}.pv-seg span.is-active{background:var(--pv-surface);color:var(--pv-text);font-weight:600;box-shadow:0 1px 2px #0000001f}.pv-tipwrap{position:relative;display:inline-flex;padding-top:26px}.pv-tip{position:absolute;top:0;left:0;padding:4px 8px;border-radius:6px;background:var(--pv-text);color:var(--pv-bg);font-size:10px;white-space:nowrap}.pv-tip__arrow{position:absolute;top:18px;left:16px;width:7px;height:7px;background:var(--pv-text);transform:rotate(45deg)}.pv-modal{display:flex;flex-direction:column;gap:9px;padding:13px;border-radius:11px;background:var(--pv-elevated);border:1px solid var(--pv-border-strong);box-shadow:0 12px 30px #00000040}.pv-modal__head{display:flex;align-items:center;justify-content:space-between}.pv-modal__title{font-size:13px;font-weight:650;color:var(--pv-text)}.pv-modal__body{font-size:11.5px;line-height:1.45;color:var(--pv-text-muted);margin:0}.pv-modal__foot{display:flex;justify-content:flex-end;gap:8px;margin-top:2px}.pv-pag{display:flex;align-items:center;gap:4px;margin-top:8px}.pv-pag__p{display:inline-grid;place-items:center;min-width:24px;height:24px;border-radius:6px;font-size:11px;color:var(--pv-text-muted);border:1px solid transparent}.pv-pag__p.is-active{background:var(--pv-accent);color:var(--pv-on-accent);font-weight:650}.pv-pag__e{color:var(--pv-text-subtle);font-size:11px;padding:0 2px}.pv-crumb{display:flex;align-items:center;gap:6px;font-size:11.5px}.pv-crumb a{color:var(--pv-text-muted)}.pv-crumb__sep{color:var(--pv-text-subtle);display:inline-flex}.pv-crumb__cur{color:var(--pv-text);font-weight:600}.pv-skel{display:flex;align-items:center;gap:10px}.pv-skel+.pv-skel{margin-top:8px}.pv-skel__av{width:30px;height:30px;border-radius:50%;flex:0 0 auto;background:var(--pv-surface-hi)}.pv-skel__lines{display:flex;flex-direction:column;gap:6px;flex:1}.pv-skel__l{height:8px;border-radius:999px;background:linear-gradient(90deg,var(--pv-surface-hi),var(--pv-border),var(--pv-surface-hi));background-size:200% 100%;animation:pv-shimmer 1.4s ease-in-out infinite}@keyframes pv-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.pv-skel__l{animation:none}}.pv-chart__svg{width:100%;height:auto}.pv-chart__axis{font-size:8px;fill:var(--pv-text-muted);text-anchor:middle;font-family:system-ui,sans-serif}.pv-donutwrap{display:flex;align-items:center;gap:12px}.pv-donutwrap svg{flex:0 0 auto}.pv-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:11px;color:var(--pv-text-muted)}.pv-legend li{display:flex;align-items:center;gap:7px}.pv-legend__sw{width:10px;height:10px;border-radius:3px;flex:0 0 auto}.pv-hbars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}.pv-hbars__row{display:flex;align-items:center;gap:8px;font-size:11px}.pv-hbars__lbl{flex:0 0 52px;color:var(--pv-text-muted)}.pv-hbars__track{flex:1;height:8px;border-radius:999px;background:var(--pv-surface-hi);overflow:hidden}.pv-hbars__fill{display:block;height:100%;border-radius:999px}.pv-hbars__val{flex:0 0 auto;color:var(--pv-text-muted)}.pv-kpis{display:flex;flex-direction:column;gap:12px}.pv-kpi{display:flex;flex-direction:column;gap:2px}.pv-kpi__val{font-size:17px;font-weight:700;color:var(--pv-text)}.pv-goals{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}.pv-goals__row{display:flex;flex-direction:column;gap:5px}.pv-goals__head{display:flex;justify-content:space-between;font-size:11px;color:var(--pv-text-muted)}.pv-head__eyebrow{font-size:10.5px;font-weight:650;text-transform:uppercase;letter-spacing:.08em;color:var(--pv-accent-hover);margin-bottom:-2px}.pv-head__display{font-size:30px;line-height:1.05;letter-spacing:-.02em;color:var(--pv-text)}.pv-head__h2{font-size:19px;color:var(--pv-text);letter-spacing:-.01em}.pv-head__body{font-size:13px;line-height:1.6;color:var(--pv-text-muted);max-width:65ch}.pv-head__link{color:var(--pv-accent);font-weight:600}.pv-head__meta{font-size:12px;color:var(--pv-text-subtle);letter-spacing:.02em}.pv-ty{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}.pv-ty__row{display:flex;align-items:baseline;gap:12px}.pv-ty__sample{flex:0 0 46px;color:var(--pv-text);font-family:var(--pv-font-heading);line-height:1}.pv-ty__display{font-size:24px;font-weight:700;letter-spacing:-.02em}.pv-ty__h1{font-size:20px;font-weight:700}.pv-ty__h2{font-size:17px;font-weight:650}.pv-ty__h3{font-size:14px;font-weight:600}.pv-ty__body{font-size:12px;font-family:var(--pv-font-body)}.pv-ty__cap{font-size:10px;color:var(--pv-text-muted);font-family:var(--pv-font-body)}.pv-ty__meta{display:flex;flex-direction:column;gap:1px}.pv-ty__name{font-size:11px;color:var(--pv-text);font-weight:600}.pv-ty__size{font-size:9.5px;color:var(--pv-text-subtle)}.pv-weights{display:flex;flex-wrap:wrap;gap:12px;font-size:15px;color:var(--pv-text);font-family:var(--pv-font-heading)}.pv-blockquote{margin:4px 0;padding:8px 0 8px 14px;border-left:3px solid var(--pv-accent);font-size:14px;font-style:italic;color:var(--pv-text);font-family:var(--pv-font-heading)}.pv-syn{display:flex;flex-direction:column;gap:12px}.pv-syn__note{margin:0;font-size:12px;color:var(--ink-2)}.pv-syn__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (max-width: 720px){.pv-syn__grid{grid-template-columns:1fr}}.pv-syn__tile{margin:0;display:flex;flex-direction:column;gap:7px}.pv-syn__canvas,.pv-syn__avatar,.pv-syn__fallback{width:100%;aspect-ratio:1;border-radius:12px;overflow:hidden;border:1px solid var(--line);background:var(--surface-2);display:block}.pv-syn__avatar svg,.pv-syn__avatar{width:100%;height:100%}.pv-syn__avatar{display:grid;place-items:center}.pv-syn__fallback{display:grid;place-items:center;color:var(--ink-3);font-size:11px}.pv-syn__cap{font-size:11px;color:var(--ink-2);text-align:center}.pv-own__drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:200px;padding:24px;text-align:center;cursor:pointer;border:1.5px dashed var(--line-strong);border-radius:14px;background:var(--surface-2);color:var(--ink-2)}.pv-own__drop.is-drag,.pv-own__drop:hover{border-color:var(--accent);background:var(--surface-hi)}.pv-own__drop:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pv-own__drop-ico{font-size:18px;font-weight:700;color:var(--ink);padding:8px 12px;border:1px solid var(--line);border-radius:8px}.pv-own__drop-title{margin:0;font-size:14px;font-weight:600;color:var(--ink)}.pv-own__drop-sub{margin:0;font-size:12px;color:var(--ink-3);max-width:40ch;line-height:1.4}.pv-own{display:flex;flex-direction:column;gap:12px}.pv-own__bar{display:flex;align-items:center;gap:10px}.pv-own__name{font-size:12px;color:var(--ink-2)}.pv-own__clear{margin-left:auto}.pv-own__ba{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 720px){.pv-own__ba{grid-template-columns:1fr}}.pv-own__pane{margin:0;display:flex;flex-direction:column;gap:6px}.pv-own__pane figcaption{font-size:10.5px;font-weight:650;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3)}.pv-own__art{width:100%;max-height:320px;object-fit:contain;border-radius:10px;border:1px solid var(--line);background:#fff;display:block}.pv-own__art svg{width:100%;height:auto;display:block}.pv-own__legend{display:flex;flex-wrap:wrap;gap:6px}.pv-own__map{display:inline-flex;align-items:center;gap:3px;font-size:10px;color:var(--ink-3)}.pv-own__sw{width:13px;height:13px;border-radius:3px;border:1px solid var(--line)}.oo{display:flex;flex-direction:column;gap:14px;user-select:none;-webkit-user-select:none}.oo input,.oo-chip__edit{user-select:text;-webkit-user-select:text}.oo__bar{display:flex;align-items:center;gap:10px}.oo__bar-group{display:inline-flex;align-items:center;gap:8px}.oo__title{font-size:12px;font-weight:650;color:var(--ink-2)}.oo__act{cursor:pointer;font:inherit;font-size:11.5px;color:var(--ink);padding:5px 11px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--surface-2)}.oo__act:hover{border-color:var(--line-strong);background:var(--surface-hi)}.oo__ico{cursor:pointer;width:22px;height:22px;border-radius:50%;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);font-size:12px;line-height:1;display:grid;place-items:center}.oo__ico:hover,.oo__ico.is-on{color:var(--ink);border-color:var(--line-strong);background:var(--surface-hi)}.oo__clear{margin-left:auto;cursor:pointer;font:inherit;font-size:11.5px;color:var(--ink-3);padding:5px 11px;border:1px solid var(--line);border-radius:var(--r-ctl);background:transparent}.oo__clear:hover{color:var(--ink);border-color:var(--line-strong)}.oo__variants{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.oo-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 7px 3px 11px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface-2)}.oo-chip.is-active{border-color:var(--line-strong);background:var(--surface-hi);box-shadow:inset 0 0 0 1px var(--line-strong)}.oo-chip__name{cursor:pointer;font:inherit;font-size:11.5px;color:var(--ink);background:none;border:0;padding:0}.oo-chip.is-active .oo-chip__name{font-weight:600}.oo-chip__edit{width:68px;font:inherit;font-size:11.5px;background:var(--surface);border:1px solid var(--accent);border-radius:5px;color:var(--ink);padding:1px 5px}.oo-chip__copy,.oo-chip__x{cursor:pointer;flex:0 0 auto;width:17px;height:17px;border:0;background:none;color:var(--ink-3);border-radius:50%;font-size:11px;line-height:1;display:grid;place-items:center}.oo-chip__copy:hover,.oo-chip__x:hover{color:var(--ink);background:var(--surface)}.oo-chip--add{cursor:pointer;padding:0;width:26px;height:26px;justify-content:center;color:var(--ink-2);font-size:15px;line-height:1}.oo-chip--add:hover{color:var(--ink);border-color:var(--line-strong)}.oo__ba{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (max-width: 720px){.oo__ba{grid-template-columns:1fr}}.oo__pane{margin:0;display:flex;flex-direction:column;gap:8px}.oo__pane figcaption{display:flex;align-items:center;gap:8px;font-size:10.5px;font-weight:650;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3)}.oo__mode-note{font-weight:500;text-transform:none;letter-spacing:0;color:var(--ink-3)}.oo__seg{display:inline-flex;border:1px solid var(--line);border-radius:var(--r-ctl);overflow:hidden}.oo__seg-btn{cursor:pointer;font:inherit;font-size:10px;text-transform:none;letter-spacing:0;padding:2px 8px;border:0;background:var(--surface-2);color:var(--ink-3)}.oo__seg-btn.is-on{background:var(--surface-hi);color:var(--ink)}.oo__pane-acts{margin-left:auto;display:inline-flex;gap:6px}.oo__mini{cursor:pointer;font:inherit;font-size:10px;text-transform:none;letter-spacing:0;padding:3px 9px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--surface-2);color:var(--ink-2)}.oo__mini:hover{color:var(--ink);border-color:var(--line-strong)}.oo__art{position:relative;width:100%;height:240px;border-radius:10px;padding:0;border:1px solid var(--line);background:transparent;overflow:hidden;touch-action:none}.oo__zoomer{width:100%;height:100%;display:grid;place-items:center}.oo__art svg{width:100%;height:auto;max-height:100%;display:block;overflow:visible}.oo__art--after:not(.is-zoomed){cursor:crosshair}.oo__art.is-zoomed{cursor:grab}.oo__art.is-zoomed:active{cursor:grabbing}.oo__zoom{position:absolute;left:50%;bottom:8px;transform:translate(-50%);display:inline-flex;align-items:center;gap:2px;padding:2px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-pill);box-shadow:var(--shadow-pop)}.oo__zoom-btn{cursor:pointer;width:22px;height:22px;border:0;background:none;color:var(--ink-2);font-size:14px;line-height:1;border-radius:50%;display:grid;place-items:center}.oo__zoom-btn:hover:not(:disabled){color:var(--ink);background:var(--surface-hi)}.oo__zoom-btn:disabled{opacity:.35;cursor:default}.oo__zoom-pct{cursor:pointer;min-width:42px;padding:0 4px;border:0;background:none;color:var(--ink-2);font:inherit;font-size:10.5px;text-align:center}.oo__zoom-pct:hover{color:var(--ink)}.oo__composer{display:flex;gap:14px;align-items:flex-start}.oo__composer .oo__ba{flex:1 1 auto;min-width:0}@media (max-width: 720px){.oo__composer{flex-direction:column}}.oo-sel{position:absolute;pointer-events:none;box-sizing:border-box;border:1px solid var(--ink);box-shadow:0 0 0 1px var(--surface);border-radius:2px}.oo-sel__h{position:absolute;width:9px;height:9px;border-radius:3px;pointer-events:auto;box-sizing:border-box;background:var(--ink);border:1.5px solid var(--surface)}.oo-sel__h--nw{left:0;top:0;transform:translate(-50%,-50%);cursor:nwse-resize}.oo-sel__h--ne{right:0;top:0;transform:translate(50%,-50%);cursor:nesw-resize}.oo-sel__h--sw{left:0;bottom:0;transform:translate(-50%,50%);cursor:nesw-resize}.oo-sel__h--se{right:0;bottom:0;transform:translate(50%,50%);cursor:nwse-resize}.oo-sel__rot{position:absolute;left:50%;top:0;width:10px;height:10px;border-radius:50%;transform:translate(-50%,-220%);pointer-events:auto;cursor:grab;box-sizing:border-box;background:var(--surface);border:1.5px solid var(--ink)}.oo-sel__rot:before{content:"";position:absolute;left:50%;top:100%;width:1.5px;height:12px;transform:translate(-50%);background:var(--ink)}.oo-sel__rot:active{cursor:grabbing}.oo-snap{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:3;overflow:hidden}.oo-snap__line{position:absolute;background:#ff2d9b;box-shadow:0 0 0 .5px #ff2d9b59}.oo-snap__line--v{top:0;bottom:0;width:1px}.oo-snap__line--h{left:0;right:0;height:1px}.oo-snap__g{position:absolute;width:9px;height:9px;transform:translate(-50%,-50%);box-sizing:border-box;border:1.5px solid #ff2d9b;background:#ff2d9b2e}.oo-snap__g--center{border-radius:50%}.oo-snap__g--midpoint{transform:translate(-50%,-50%) rotate(45deg)}.oo-snap__g--edge{width:7px;height:7px;border-radius:1px;opacity:.8}.oo-snap__hud{position:absolute;padding:2px 6px;font-size:10.5px;line-height:1.3;white-space:nowrap;color:var(--ink);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:6px;box-shadow:var(--shadow-pop)}.oo-layers{flex:0 0 176px;display:flex;flex-direction:column;gap:6px}@media (max-width: 720px){.oo-layers{flex-basis:auto;width:100%}}.oo-layers__head{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:10.5px;font-weight:650;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3)}.oo-layers__add{font:inherit;font-size:10.5px;font-weight:650;letter-spacing:.02em;text-transform:none;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--glass-line);border-radius:6px;padding:2px 7px;cursor:pointer}.oo-layers__add:hover{color:var(--ink);background:var(--surface-hi)}.oo-gpanel{flex:0 0 292px;align-self:flex-start;position:sticky;top:8px;max-height:min(82vh,720px);display:flex;flex-direction:column;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-panel, 14px);box-shadow:var(--shadow-pop),inset 0 1px #ffffff14;color:var(--ink);overflow:hidden}@media (max-width: 900px){.oo-gpanel{flex-basis:260px}}@media (max-width: 720px){.oo-gpanel{flex-basis:auto;width:100%;max-height:60vh}}.oo-gpanel__head{flex:0 0 auto;display:flex;align-items:center;gap:8px;padding:9px 10px;border-bottom:1px solid var(--glass-line)}.oo-gpanel__title{font-size:12px;font-weight:650;color:var(--ink)}.oo-gpanel__kind{margin-left:auto}.oo-gpanel__eject{font:inherit;font-size:10.5px;font-weight:600;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--glass-line);border-radius:6px;padding:3px 8px;cursor:pointer}.oo-gpanel__eject:hover:not(:disabled){color:var(--ink);background:var(--surface-hi)}.oo-gpanel__eject:disabled{opacity:.5;cursor:default}.oo-gpanel__x{flex:none;width:22px;height:22px;display:grid;place-items:center;font-size:15px;line-height:1;color:var(--ink-3);background:none;border:0;border-radius:6px;cursor:pointer}.oo-gpanel__x:hover{color:var(--ink);background:var(--surface-hi)}.oo-gpanel__hint{flex:0 0 auto;padding:7px 10px;font-size:11px;color:var(--ink-2);background:var(--surface-2);border-bottom:1px solid var(--glass-line)}.oo-gpanel__body{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden}.oo-layer{display:flex;align-items:center;gap:3px;padding:3px 4px;border-radius:7px;border:1px solid transparent;cursor:default;touch-action:none}.oo-layer:hover{background:var(--surface-2)}.oo-layer.is-selected{background:var(--surface-hi);border-color:var(--line-strong)}.oo-layer__ico{cursor:pointer;width:20px;height:20px;flex:none;display:grid;place-items:center;border:0;background:none;color:var(--ink-3);border-radius:5px}.oo-layer__ico:hover:not(:disabled){color:var(--ink);background:var(--surface-hi)}.oo-layer__ico:disabled{opacity:.3;cursor:default}.oo-layer__name{flex:1 1 auto;min-width:0;font-size:11.5px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:5px}.oo-layer.is-selected .oo-layer__name{color:var(--ink)}.oo-layer__tag{font-size:8.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);border:1px solid var(--line);border-radius:4px;padding:0 3px;flex:none}.oo-layer__edit{flex:1 1 auto;min-width:0;font:inherit;font-size:11.5px;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:5px;padding:1px 5px}.oo-layer__opacity{flex:0 0 44px;width:44px;accent-color:var(--ink-2);cursor:pointer}.oo-layer__kind{flex:none;width:16px;height:16px;display:grid;place-items:center;color:var(--ink-3);font-size:11px;line-height:1}.oo-layer.is-selected .oo-layer__kind{color:var(--ink-2)}.oo-add{position:relative}.oo-add__menu{position:absolute;right:0;top:calc(100% + 4px);z-index:40;min-width:148px;display:flex;flex-direction:column;padding:4px;gap:1px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:9px;box-shadow:var(--shadow-pop)}.oo-add__item{text-align:left;font:inherit;font-size:11.5px;color:var(--ink-2);background:none;border:0;border-radius:6px;padding:5px 8px;cursor:pointer}.oo-add__item:hover{color:var(--ink);background:var(--surface-hi)}.oo-textedit{position:absolute;z-index:5;font:inherit;font-size:12px;color:var(--ink);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--accent, var(--line-strong));border-radius:5px;padding:2px 6px;box-shadow:var(--shadow-pop);outline:none}.oo-tpanel__text{width:100%;box-sizing:border-box;resize:vertical;min-height:46px;font:inherit;font-size:12px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:6px 8px}.oo-tpanel__align{display:flex;align-items:center;justify-content:space-between;gap:8px}.oo-tpanel__seg{display:inline-flex;gap:2px;padding:2px;background:var(--surface-2);border:1px solid var(--line);border-radius:7px}.oo-tpanel__seg-btn{width:26px;height:22px;display:grid;place-items:center;cursor:pointer;border:0;background:none;color:var(--ink-3);border-radius:5px}.oo-tpanel__seg-btn:hover{color:var(--ink);background:var(--surface-hi)}.oo-tpanel__seg-btn.is-on{color:var(--ink);background:var(--surface);box-shadow:inset 0 0 0 1px var(--line-strong)}.oo-tpanel__fill{width:30px;height:22px;border-radius:6px;border:1px solid var(--line);cursor:pointer;padding:0}.oo-tpanel__fill:hover{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 30%,transparent)}.modal-card.lm-import{width:min(680px,92vw)}.lm-import__head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.lm-import__title{margin:0;font-size:15px;font-weight:650;color:var(--ink)}.lm-import__x{margin-left:auto;width:26px;height:26px;display:grid;place-items:center;font-size:17px;line-height:1;color:var(--ink-3);background:none;border:0;border-radius:6px;cursor:pointer}.lm-import__x:hover{color:var(--ink);background:var(--surface-hi)}.lm-import__sub{display:flex;align-items:center;gap:12px;margin-bottom:8px;font-size:11.5px;color:var(--ink-2)}.lm-import__count{margin-left:auto;margin-right:auto;color:var(--ink-3)}.lm-import__link{font:inherit;font-size:11.5px;color:var(--ink-2);background:none;border:0;cursor:pointer}.lm-import__link:hover{color:var(--ink);text-decoration:underline}.lm-import__msg{font-size:12.5px;color:var(--ink-2);text-align:center;padding:26px 8px}.lm-import__hint{font-size:11.5px;color:var(--ink-3)}.lm-import__err{font-size:11.5px;color:var(--danger, #e5484d);margin:6px 0 0}.lm-import__projects,.lm-import__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;max-height:52vh;overflow-y:auto;padding:2px}.lm-proj{display:flex;flex-direction:column;gap:6px;padding:8px;cursor:pointer;text-align:left;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;color:var(--ink-2)}.lm-proj:hover:not(:disabled){border-color:var(--line-strong);background:var(--surface-hi);color:var(--ink)}.lm-proj:disabled{opacity:.5;cursor:default}.lm-proj__thumb{aspect-ratio:1 / 1;display:grid;place-items:center;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:7px}.lm-proj__thumb img{width:100%;height:100%;object-fit:contain}.lm-proj__ph{color:var(--ink-3);font-size:22px}.lm-proj__name{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lm-obj{display:flex;flex-direction:column;gap:5px;padding:7px;cursor:pointer;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;position:relative}.lm-obj.is-on{border-color:var(--line-strong);background:var(--surface-hi)}.lm-obj__cb{position:absolute;top:7px;left:7px;accent-color:var(--ink);cursor:pointer}.lm-obj__thumb{aspect-ratio:1 / 1;display:grid;place-items:center;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:7px}.lm-obj__svg{display:block;width:100%;height:100%}.lm-obj__svg svg{width:100%;height:100%;object-fit:contain}.lm-obj__empty{color:var(--ink-3)}.lm-obj__name{font-size:11px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lm-import__acts{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.lm-import__go:not(:disabled){color:var(--ink);background:var(--surface-hi);border-color:var(--line-strong)}.oo__map{display:flex;flex-direction:column;gap:4px;border-top:1px solid var(--line);padding-top:12px}.oo__map-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.oo__map-title{font-size:10.5px;font-weight:650;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3)}.oo__reset-all{cursor:pointer;font:inherit;font-size:11px;color:var(--ink-2);background:none;border:0;padding:2px 4px}.oo__reset-all:hover{color:var(--ink);text-decoration:underline}.oo-row{display:flex;align-items:center;gap:10px;min-height:42px;padding:5px 8px;border-radius:8px;border:1px solid transparent}.oo-row.is-hover{background:var(--surface-hi);border-color:var(--line)}.oo-row.is-override{background:var(--surface-2)}.oo-row__label{flex:0 0 auto;font-size:9.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);border:1px solid var(--line);border-radius:5px;padding:1px 5px}.oo-row__sw,.oo-row__target{flex:0 0 auto;width:24px;height:24px;border-radius:6px;border:1px solid var(--line)}.oo-row__target{cursor:pointer}.oo-row__target:hover{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 30%,transparent)}.oo-row__arrow{color:var(--ink-3);font-size:12px}.oo-row__tok{font-size:11px;color:var(--ink-2);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.oo-row__count{margin-left:auto;flex:0 0 auto;font-size:10px;color:var(--ink-3)}.oo-row__revert{cursor:pointer;flex:0 0 auto;width:22px;height:22px;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--ink-2);font-size:12px;line-height:1;display:grid;place-items:center}.oo-row__revert:hover{color:var(--ink);border-color:var(--line-strong)}.oo-pick{position:fixed;z-index:1300;width:260px;display:flex;flex-direction:column;gap:8px;padding:10px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-ctl);box-shadow:var(--shadow-pop);color:var(--ink)}.oo-pick__head{flex:0 0 auto;display:flex;align-items:center;gap:6px;font-size:11px;color:var(--ink-2)}.oo-pick__sw{width:16px;height:16px;border-radius:4px;border:1px solid var(--line)}.oo-pick__close{margin-left:auto;cursor:pointer;width:20px;height:20px;border:0;background:none;color:var(--ink-3);font-size:15px;line-height:1;border-radius:5px;display:grid;place-items:center}.oo-pick__close:hover{color:var(--ink);background:var(--surface-hi)}.oo-pick__scroll{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:7px;overflow-y:auto}.oo-pick__scale{display:flex;flex-direction:column;gap:3px}.oo-pick__scale-name{font-size:10px;color:var(--ink-3)}.oo-pick__strip{display:grid;grid-template-columns:repeat(11,1fr);gap:2px}.oo-pick__stop{height:18px;border:1px solid var(--glass-line);border-radius:3px;cursor:pointer;padding:0}.oo-pick__stop.is-on{outline:2px solid var(--ink);outline-offset:1px}.oo-pick__foot{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:6px;border-top:1px solid var(--glass-line)}.oo-pick__custom{display:inline-flex;align-items:center;gap:6px}.oo-pick__custom-lbl{font-size:11px;color:var(--ink-2)}.oo-pick__keep{cursor:pointer;font:inherit;font-size:11px;color:var(--ink-2);padding:4px 8px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--surface-2)}.oo-pick__keep:hover{color:var(--ink);border-color:var(--line-strong)}.oo-help{position:fixed;z-index:1300;width:320px;padding:12px 14px;overflow-y:auto;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-ctl);box-shadow:var(--shadow-pop);color:var(--ink)}.oo-help__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.oo-help__title{display:block;font-size:12px}.oo-help__close{cursor:pointer;width:20px;height:20px;border:0;background:none;color:var(--ink-3);font-size:15px;line-height:1;border-radius:5px;display:grid;place-items:center}.oo-help__close:hover{color:var(--ink);background:var(--surface-hi)}.oo-help__list{margin:0;padding-left:16px;display:flex;flex-direction:column;gap:6px;font-size:11.5px;color:var(--ink-2);line-height:1.45}.oo-help__list b{color:var(--ink);font-weight:600}.oo-confirm{width:240px}.oo-confirm .oo-help__title{margin-bottom:8px}.oo-confirm__body{margin:0 0 10px;font-size:11.5px;color:var(--ink-2);line-height:1.4}.oo-confirm__acts{display:flex;gap:6px}.oo-confirm__acts .panel-btn{flex:1;justify-content:center}.oo-confirm__go{border-color:var(--accent)}.oo-hi{box-shadow:0 0 0 1.5px var(--accent),0 0 0 3px #00000073;border-radius:4px}.oo-chip-pop{z-index:1300}.oo-chip-pop__hint{font-size:9px;color:var(--ink-3);margin-top:3px;text-align:center}.cm{display:flex;flex-direction:column;gap:12px}.cm__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.cm__title{margin:0;font-size:15px;font-weight:650;color:var(--ink)}.cm__sub{margin:3px 0 0;font-size:11.5px;color:var(--ink-2)}.cm__scroll{overflow-x:auto}.cm__grid{display:grid;gap:2px;min-width:520px}.cm__colhead,.cm__rowhead{display:flex;align-items:center;gap:4px;justify-content:center;font-size:9.5px;color:var(--ink-2);padding:2px}.cm__rowhead{justify-content:flex-start}.cm__swatch{width:11px;height:11px;border-radius:3px;border:1px solid var(--line);flex:0 0 auto}.cm__cell{aspect-ratio:1;min-height:30px;border:0;border-radius:4px;cursor:pointer;display:grid;place-items:center;font-size:10px;font-weight:600;padding:0}.cm__cell.is-fail{background:var(--surface-2)}.cm__cell.is-fail:after{content:""}.cm__cell.is-pass{box-shadow:inset 0 0 0 1px #00000014}.cm__cell:focus-visible{outline:2px solid var(--accent);outline-offset:1px;z-index:1}.cm__val{pointer-events:none}.cm-pop{position:fixed;z-index:1000;display:flex;gap:10px;width:190px;padding:10px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-ctl);box-shadow:var(--shadow-pop);color:var(--ink)}.cm-pop__demo{flex:0 0 42px;width:42px;height:42px;border-radius:7px;display:grid;place-items:center;font-weight:700;font-size:15px;border:1px solid var(--line)}.cm-pop__meta{display:flex;flex-direction:column;gap:2px;min-width:0}.cm-pop__meta strong{font-size:13px}.cm-pop__line{font-size:10.5px;color:var(--ink-2)}.cm-pop__verdict{margin-top:2px;font-size:10px;color:var(--ink-3)}.cm-pop__verdict.is-pass{color:#3fb950}.panel-field-label{display:block;font-size:10.5px;color:var(--ink-2);margin:4px 0 2px}.cm-toggle{width:100%;justify-content:center}.cm-caption{margin:2px 0 0;font-size:10.5px;color:var(--ink-3);line-height:1.35;min-height:14px}.scales-export__code{margin:8px 0 0;max-height:168px;overflow:auto;padding:10px;border-radius:var(--r-ctl);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);font-family:ui-monospace,Cascadia Code,SF Mono,Courier New,monospace;font-size:10.5px;line-height:1.5;color:var(--ink);white-space:pre;-webkit-overflow-scrolling:touch}.scales-export__code code{font:inherit;color:inherit}.scales-export__row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-top:8px}.scales-export__row .panel-btn{justify-content:center}.scales-export__brandkit{width:100%;justify-content:center;margin-top:8px}.scales-export__hint{margin:4px 0 0;font-size:10.5px;color:var(--ink-3);line-height:1.35}.seed-brandkit{width:100%;justify-content:center;margin-top:8px}.stop-pop{position:fixed;z-index:1000;display:flex;gap:10px;width:236px;padding:10px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-ctl);box-shadow:var(--shadow-pop);color:var(--ink)}.stop-pop__swatch{flex:0 0 40px;width:40px;height:40px;border-radius:6px;border:1px solid var(--line)}.stop-pop__body{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.stop-pop__head{display:flex;align-items:center;justify-content:space-between}.stop-pop__head strong{font-size:12px}.stop-pop__copied{font-size:10px;color:var(--ink-3);opacity:0;transition:opacity .12s ease}.stop-pop__copied.is-on{opacity:1;color:var(--ink)}.stop-pop__val{font-size:10.5px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stop-pop__chips{display:flex;gap:4px;margin-top:3px}.stop-pop__chip{font-size:9.5px;padding:2px 5px;border-radius:4px;border:1px solid var(--line);color:var(--ink-3);background:var(--surface-2)}.stop-pop__chip.is-mid{color:var(--ink-2)}.stop-pop__chip.is-pass{color:var(--ink);border-color:var(--line-strong)}.scale-row{display:flex;flex-direction:column;gap:7px;padding:8px;margin-bottom:6px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--surface-2);cursor:pointer}.scale-row.is-active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.scale-row__top{display:flex;align-items:center;gap:7px;min-width:0}.scale-row__name{flex:1;min-width:0;border:0;background:transparent;padding:2px 0;font:inherit;font-size:12px;color:var(--ink)}.scale-row__name:focus{outline:none}.scale-row__seed{flex:0 0 16px;width:16px;height:16px;border-radius:4px;border:1px solid var(--line)}.scale-row__seed:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.scale-row__actions{display:flex;align-items:center;gap:1px}.scale-row__icon{border:0;background:transparent;padding:3px;border-radius:4px;line-height:0;color:var(--ink-3);cursor:pointer}.scale-row__icon:hover:not(:disabled){background:color-mix(in srgb,var(--ink) 10%,transparent);color:var(--ink)}.scale-row__icon:disabled{opacity:.3;cursor:default}.scale-row__remove:hover:not(:disabled){color:#e5484d}.seed-row{display:flex;align-items:center;gap:8px}.seed-row .cp-trigger{width:32px;height:32px;border-radius:calc(var(--r-ctl) - 4px);flex:0 0 32px}.seed-hex{flex:1;min-width:0;padding:7px 10px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--surface);color:var(--ink);font-size:12px;text-transform:lowercase}.seed-hex:focus{outline:none;border-color:var(--line-strong)}.seed-random{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;padding:7px 10px}.curve{display:flex;flex-direction:column;gap:4px}.curve__label{font-size:11px;color:color-mix(in srgb,var(--ink) 76%,transparent)}.curve__svg{width:100%;aspect-ratio:100 / 28;display:block;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-ctl);touch-action:none}.curve__axis{stroke:var(--line);stroke-width:.4}.curve__line{stroke:color-mix(in srgb,var(--ink) 30%,transparent);stroke-width:.7;stroke-linejoin:round}.curve__dot{stroke:#00000073;stroke-width:.5;cursor:ns-resize;paint-order:stroke;outline:none}.curve__dot:hover{stroke:#000000b3;stroke-width:.7}.curve__dot:focus-visible{stroke:var(--accent);stroke-width:.9}.curve__dot.is-pinned{stroke:var(--accent);stroke-width:.7}.curve-steppers{display:grid;grid-template-columns:1fr 1fr;gap:8px}.stepper{display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:4px;padding:4px 6px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--surface-2)}.stepper__label{font-size:10.5px;color:var(--ink-2)}.stepper__val{font-size:11px;min-width:20px;text-align:center}.stepper__btn{width:20px;height:20px;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--ink);cursor:pointer;font-size:13px;line-height:1;padding:0}.stepper__btn:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}.num-table{display:flex;flex-direction:column;gap:2px;font-size:11px}.num-table__head,.num-table__row{display:grid;grid-template-columns:34px 1fr 1fr 1fr;gap:4px;align-items:center}.num-table__head{color:var(--ink-3);font-size:9.5px;text-transform:uppercase;letter-spacing:.06em;padding:0 2px}.num-table__head span:first-child{text-align:left}.num-table__head span{text-align:center}.num-table__stop{text-align:left;color:var(--ink-2)}.num-table__row.is-pinned .num-table__stop{color:var(--accent)}.num-table__in{width:100%;min-width:0;padding:3px 4px;text-align:center;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--ink);font-size:11px;-moz-appearance:textfield}.num-table__in::-webkit-outer-spin-button,.num-table__in::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.num-table__in:focus{outline:none;border-color:var(--line-strong)}.num-table__row.is-pinned .num-table__in{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.ci{display:flex;flex-direction:column;gap:12px}.ci__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.ci__title{margin:0;font-size:15px;font-weight:650;color:var(--ink)}.ci__sub{margin:3px 0 0;font-size:11.5px;color:var(--ink-2)}.ci__scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.ci__table{width:100%;min-width:560px;border-collapse:collapse;font-size:12px}.ci__th{text-align:left;font-weight:600;font-size:10.5px;color:var(--ink-2);padding:4px 10px 8px;border-bottom:1px solid var(--line);white-space:nowrap}.ci__th--stop{width:40px}.ci__th--copy{width:34px}.ci__th sup{font-size:8px}.ci__info{margin-left:5px;border:0;background:transparent;color:var(--ink-3);cursor:help;font-size:11px;padding:0;line-height:1}.ci__row{border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent)}.ci__row:hover{background:color-mix(in srgb,var(--ink) 4%,transparent)}.ci__stop{padding:7px 10px;color:var(--ink);font-weight:600}.ci__apca{padding:5px 10px;display:flex;gap:5px;align-items:center}.ci-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:999px;border:1px solid color-mix(in srgb,var(--line) 80%,transparent);min-width:58px}.ci-pill--black{border-color:#ffffff24}.ci-pill__aa{font-size:11px;font-weight:700}.ci-pill__lc{font-size:10.5px;font-weight:650;opacity:.92}.ci-pill.is-none .ci-pill__lc{opacity:.55}.ci__val{padding:7px 10px;color:var(--ink-2);cursor:pointer;border-radius:5px;display:inline-block;white-space:nowrap}.ci__val:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 8%,transparent)}.ci__val--hex{color:var(--ink)}.ci__copycell{padding:5px 8px;text-align:right}.ci__copy{border:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);border-radius:6px;padding:3px 7px;cursor:pointer;font-size:12px;line-height:1}.ci__copy:hover{color:var(--ink);border-color:var(--line-strong)}.cm-toggle-row{display:grid;grid-template-columns:1fr 1fr;gap:6px}.cm-toggle-row .cm-toggle{width:100%}.font-step{display:flex;flex-direction:column;gap:3px;margin-bottom:6px}.font-step__role{font-size:10px;color:var(--ink-3)}.font-step__ctl{display:flex;align-items:center;gap:4px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--surface);padding:3px}.font-step__arrow{border:0;background:transparent;color:var(--ink-2);cursor:pointer;padding:2px 8px;border-radius:6px;font-size:15px;line-height:1}.font-step__arrow:hover{background:color-mix(in srgb,var(--ink) 10%,transparent);color:var(--ink)}.font-step__name{flex:1;text-align:center;font-size:13px;color:var(--ink);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.font-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:2px}.font-actions .panel-btn{flex:1;justify-content:center}.seed-harmony-hint{margin:3px 0 0;font-size:10px;color:var(--ink-3);line-height:1.35}.scales-export__link{width:100%;justify-content:center;margin-top:6px}.pv-brand{columns:16rem;column-gap:12px}.pv-brand>.pv-panel{break-inside:avoid;margin-bottom:12px}@media (max-width: 560px){.pv-brand{columns:1}}.pv-poster{position:relative;aspect-ratio:3 / 4;border-radius:12px;overflow:hidden;background:var(--pv-a-100, var(--pv-bg))}.pv-poster__dots{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(var(--pv-accent) 30%,transparent 32%);background-size:13px 13px;opacity:.9;-webkit-mask-image:linear-gradient(120deg,#000 20%,transparent 78%);mask-image:linear-gradient(120deg,#000 20%,transparent 78%)}.pv-poster__type{position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;display:flex;flex-direction:column;justify-content:flex-end}.pv-poster__kicker{font-size:10px;letter-spacing:.18em;font-weight:700;color:var(--pv-accent-active)}.pv-poster__title{font-family:var(--pv-font-heading);font-size:30px;line-height:1.02;font-weight:800;color:var(--pv-text);letter-spacing:-.02em;margin:6px 0}.pv-poster__foot{font-size:10.5px;color:var(--pv-text-muted)}.pv-lockup{display:flex;align-items:center;gap:10px;padding:4px 2px 12px}.pv-lockup .pv-mark{width:30px;height:30px}.pv-lockup__words{display:flex;flex-direction:column}.pv-lockup__name{font-family:var(--pv-font-heading);font-size:17px;font-weight:750;color:var(--pv-text);letter-spacing:-.01em}.pv-lockup__tag{font-size:10px;color:var(--pv-text-muted);letter-spacing:.02em}.pv-lockup__inverse{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;background:var(--pv-accent)}.pv-lockup__inverse .pv-mark{width:22px;height:22px}.pv-bizcard{aspect-ratio:1.66;border-radius:11px;overflow:hidden;display:flex;flex-direction:column;background:var(--pv-surface);border:1px solid var(--pv-border)}.pv-bizcard__top{display:flex;align-items:center;gap:7px;padding:10px 12px;background:var(--pv-accent);color:var(--pv-on-accent);font-family:var(--pv-font-heading);font-weight:700;font-size:13px}.pv-bizcard__top .pv-mark{width:18px;height:18px}.pv-bizcard__body{padding:11px 12px;display:flex;flex-direction:column;gap:2px}.pv-bizcard__nm{font-size:13px;font-weight:700;color:var(--pv-text)}.pv-bizcard__role{font-size:10.5px;color:var(--pv-accent);font-weight:600}.pv-bizcard__line{font-size:10px;color:var(--pv-text-muted);margin-top:4px}.pv-pattern{display:flex;height:120px;border-radius:11px;overflow:hidden;transform:skew(-12deg) scale(1.2)}.pv-pattern__stripe{flex:1}.pv-appmini__hd{display:flex;align-items:center;justify-content:space-between;padding:4px 2px 8px}.pv-appmini__title{font-family:var(--pv-font-heading);font-weight:750;font-size:14px;color:var(--pv-text)}.pv-appmini__hero{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:18px 12px;border-radius:12px;background:var(--pv-accent);color:var(--pv-on-accent);font-size:12.5px;font-weight:600}.pv-appmini__hero .pv-mark{width:26px;height:26px}.pv-appmini__row{display:flex;gap:8px;margin:8px 0}.pv-appmini__pill{flex:1;height:28px;border-radius:8px;background:var(--pv-surface-hi);border:1px solid var(--pv-border)}.pv-appmini__cta{text-align:center;padding:9px;border-radius:8px;background:var(--pv-accent-subtle);color:var(--pv-accent-hover);font-size:12px;font-weight:650}.pv-phone{flex:0 0 auto;width:186px;border-radius:26px;padding:8px;background:var(--pv-surface-hi);border:1px solid var(--pv-border-strong);position:relative}.pv-phone__notch{position:absolute;top:12px;left:50%;transform:translate(-50%);width:54px;height:5px;border-radius:999px;background:var(--pv-border-strong);z-index:2}.pv-phone__screen{border-radius:19px;overflow:hidden;background:var(--pv-bg);color:var(--pv-text);aspect-ratio:9 / 18;display:flex;flex-direction:column;padding:12px 11px;gap:8px}.pv-phone__status{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:var(--pv-text-muted);font-weight:600;padding-top:4px}.pv-phone__sig{width:16px;height:8px;border-radius:2px;background:var(--pv-text-subtle);opacity:.6}.pv-phone__label{position:absolute;bottom:-18px;left:0;right:0;text-align:center;font-size:10px;color:var(--ink-3)}.pv-shad{display:flex;flex-direction:column;gap:12px}.pv-shad__bar{display:flex;align-items:center;justify-content:space-between;padding-right:56px}.pv-shad__brand{font-family:var(--pv-font-heading);font-weight:700;font-size:13px;color:var(--pv-text)}.pv-shad__export{border:1px solid var(--pv-border-strong);background:var(--pv-surface);color:var(--pv-text);border-radius:8px;padding:6px 12px;font-size:11.5px;font-weight:600;cursor:pointer}.pv-shad__export:hover{background:var(--pv-surface-hi)}.pv-shad__grid{columns:15rem;column-gap:12px}@media (max-width: 560px){.pv-shad__grid{columns:1}}.pv-shcard{break-inside:avoid;margin-bottom:12px;border:1px solid var(--pv-border);border-radius:12px;background:var(--pv-surface);padding:14px;display:flex;flex-direction:column;gap:9px}.pv-shcard--wide{break-inside:avoid}.pv-shcard__hd{display:flex;flex-direction:column;gap:1px}.pv-shcard__title{font-size:13px;font-weight:650;color:var(--pv-text)}.pv-shcard__sub{font-size:10.5px;color:var(--pv-text-muted)}.pv-shbars{display:flex;align-items:flex-end;gap:6px;height:84px}.pv-shbars__b{flex:1;border-radius:5px 5px 2px 2px;background:var(--pv-accent);opacity:.9}.pv-shbars__b:nth-child(2n){background:var(--pv-series-1, var(--pv-accent))}.pv-shlabel{font-size:10.5px;font-weight:600;color:var(--pv-text-muted)}.pv-shinput{padding:9px 11px;border-radius:8px;border:1px solid var(--pv-border-strong);background:var(--pv-bg);color:var(--pv-text-subtle);font-size:12px}.pv-shinput--sm{padding:8px 10px}.pv-shrow{display:flex;gap:8px}.pv-shfield{flex:1;display:flex;flex-direction:column;gap:4px}.pv-shcheck{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--pv-text-muted)}.pv-shcheck__box{width:15px;height:15px;border-radius:5px;border:1.5px solid var(--pv-border-strong);flex:0 0 auto}.pv-shcheck__box.is-on{background:var(--pv-accent);border-color:var(--pv-accent)}.pv-shbtns{display:flex;gap:8px;margin-top:2px}.pv-shbtn{flex:1;padding:8px 12px;border-radius:8px;border:1px solid var(--pv-border-strong);background:var(--pv-surface);color:var(--pv-text);font-size:12px;font-weight:600;cursor:pointer}.pv-shbtn--primary{background:var(--pv-accent);color:var(--pv-on-accent);border-color:transparent}.pv-shbtn--sm{flex:0 0 auto;padding:6px 14px}.pv-shchips{display:flex;flex-wrap:wrap;gap:6px}.pv-shchip{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;font-size:10.5px;font-weight:600}.pv-shchip__dot{width:6px;height:6px;border-radius:50%;background:currentColor}.pv-shchip--accent{background:var(--pv-accent-subtle);color:var(--pv-accent-hover)}.pv-shchip--success{background:var(--pv-success-bg);color:var(--pv-success-text)}.pv-shchip--warning{background:var(--pv-warning-bg);color:var(--pv-warning-text)}.pv-shdonut{width:128px;height:128px;border-radius:50%;margin:4px auto 0;display:grid;place-items:center}.pv-shdonut__hole{width:84px;height:84px;border-radius:50%;background:var(--pv-surface);display:grid;place-items:center;font-size:13px;font-weight:700;color:var(--pv-text)}.pv-shopt{display:flex;gap:10px;align-items:flex-start;padding:11px;border-radius:10px;border:1px solid var(--pv-border)}.pv-shopt+.pv-shopt{margin-top:8px}.pv-shopt.is-on{border-color:var(--pv-accent);background:var(--pv-accent-subtle)}.pv-shradio{width:16px;height:16px;border-radius:50%;border:1.5px solid var(--pv-border-strong);flex:0 0 auto;margin-top:1px}.pv-shradio.is-on{border-color:var(--pv-accent);box-shadow:inset 0 0 0 3px var(--pv-accent)}.pv-shopt__t{display:block;font-size:12.5px;font-weight:600;color:var(--pv-text)}.pv-shopt__d{display:block;font-size:10.5px;color:var(--pv-text-muted);margin-top:2px}.pv-shsetting{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px;border-radius:10px;border:1px solid var(--pv-border)}.pv-shsetting+.pv-shsetting{margin-top:8px}.pv-shsetting__verified{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--pv-text)}.pv-shchev{color:var(--pv-text-subtle);font-size:16px}.pv-apps{display:flex;flex-wrap:wrap;gap:34px 24px;padding:6px 4px 22px;justify-content:center}.pv-feed__hd{display:flex;align-items:center;justify-content:space-between}.pv-feed__title{font-family:var(--pv-font-heading);font-weight:750;font-size:15px;color:var(--pv-text)}.pv-feed__stories{display:flex;gap:7px}.pv-feed__story{width:30px;height:30px;border-radius:50%;border:2px solid var(--pv-bg);box-shadow:0 0 0 2px currentColor}.pv-feed__card{border:1px solid var(--pv-border);border-radius:11px;padding:9px;background:var(--pv-surface);display:flex;flex-direction:column;gap:6px}.pv-feed__row{display:flex;align-items:center;gap:7px}.pv-feed__u{font-size:11.5px;font-weight:650;color:var(--pv-text)}.pv-feed__t{font-size:11px;color:var(--pv-text-muted);line-height:1.4}.pv-tabbar{margin-top:auto;display:flex;justify-content:space-around;padding-top:8px;border-top:1px solid var(--pv-border)}.pv-tabbar span{width:22px;height:4px;border-radius:999px;background:var(--pv-text-subtle);opacity:.5}.pv-tabbar span.is-on{background:var(--pv-accent);opacity:1}.pv-player__art{aspect-ratio:1;border-radius:14px;background:linear-gradient(150deg,var(--pv-a-300, var(--pv-accent)),var(--pv-a-700, var(--pv-accent-active)));display:grid;place-items:center}.pv-player__wave{width:60%;height:34%;border-radius:8px;background:repeating-linear-gradient(90deg,var(--pv-on-accent) 0 3px,transparent 3px 7px);opacity:.55}.pv-player__track{font-family:var(--pv-font-heading);font-size:15px;font-weight:750;color:var(--pv-text);margin-top:4px}.pv-player__artist{font-size:11px;color:var(--pv-text-muted)}.pv-player__bar{height:5px;border-radius:999px;background:var(--pv-surface-hi);overflow:hidden}.pv-player__fill{display:block;width:42%;height:100%;background:var(--pv-accent)}.pv-player__ctl{display:flex;align-items:center;justify-content:center;gap:22px;color:var(--pv-text);font-size:15px;margin-top:auto}.pv-player__play{width:42px;height:42px;border-radius:50%;background:var(--pv-accent);color:var(--pv-on-accent);display:grid;place-items:center}.pv-onb__art{aspect-ratio:1.5;border-radius:14px;background:var(--pv-accent);display:grid;place-items:center}.pv-onb__art .pv-mark{width:44px;height:44px}.pv-onb__title{font-family:var(--pv-font-heading);font-size:17px;font-weight:750;color:var(--pv-text);text-align:center;margin-top:4px}.pv-onb__body{font-size:11.5px;color:var(--pv-text-muted);text-align:center;line-height:1.45;margin:0}.pv-onb__dots{display:flex;justify-content:center;gap:6px;margin-top:auto}.pv-onb__dots span{width:6px;height:6px;border-radius:50%;background:var(--pv-text-subtle);opacity:.5}.pv-onb__dots span.is-on{width:16px;border-radius:999px;background:var(--pv-accent);opacity:1}.pv-onb__cta{text-align:center;padding:10px;border-radius:9px;background:var(--pv-accent);color:var(--pv-on-accent);font-size:12.5px;font-weight:650}.pv-grads{display:flex;flex-direction:column;gap:12px}.pv-grads__note{margin:0;font-size:12px;color:var(--pv-text-muted)}.pv-grads__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.pv-grad{position:relative;aspect-ratio:4 / 3;border-radius:12px;border:1px solid var(--pv-border);cursor:pointer;padding:0;overflow:hidden}.pv-grad__lab{position:absolute;left:8px;bottom:7px;font-size:10.5px;font-weight:650;color:var(--pv-text);background:color-mix(in srgb,var(--pv-surface) 82%,transparent);padding:2px 7px;border-radius:999px}.pv-grad__copied{position:absolute;right:8px;top:7px;font-size:10px;font-weight:650;color:var(--pv-on-accent);background:var(--pv-accent);padding:2px 7px;border-radius:999px;opacity:0;transition:opacity .14s ease}.pv-grad__copied.is-on{opacity:1}.pv-grad:focus-visible{outline:2px solid var(--pv-ring);outline-offset:2px}.pv-logos{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.pv-logo{margin:0;border-radius:12px;border:1px solid var(--pv-border);overflow:hidden;display:flex;flex-direction:column}.pv-logo__art{flex:1;min-height:96px;display:flex;align-items:center;justify-content:center;gap:8px}.pv-logo__art .pv-mark{width:34px;height:34px}.pv-logo__word{font-family:var(--pv-font-heading);font-weight:750;font-size:15px;color:inherit;letter-spacing:-.01em}.pv-logo__cap{font-size:10px;color:var(--pv-text-muted);text-align:center;padding:6px;background:var(--pv-surface);border-top:1px solid var(--pv-border)}.pv-mark{display:block}.pv-area{display:flex;flex-direction:column;gap:10px}.pv-inspect-root{display:contents}.pv-toolbar{display:flex;justify-content:flex-end}.pv-eyedrop{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:550;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-pill);cursor:pointer;transition:color .14s ease,border-color .14s ease,background .14s ease}.pv-eyedrop:hover,.pv-eyedrop.is-on{color:var(--ink);border-color:var(--line-strong)}.pv-eyedrop.is-on svg{color:var(--accent, var(--ink))}.pv-eyedrop svg{opacity:.85}.pv-inspect-chip{position:fixed;z-index:1200;pointer-events:none;min-width:148px;max-width:244px;padding:7px 9px;display:flex;flex-direction:column;gap:3px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-ctl);box-shadow:var(--shadow-pop);color:var(--ink);font-family:system-ui,sans-serif}.pv-inspect-chip__row{display:flex;align-items:center;gap:6px;font-size:10.5px;line-height:1.3}.pv-inspect-chip__row.is-bg{font-weight:650;color:var(--ink)}.pv-inspect-chip__row.is-text,.pv-inspect-chip__row.is-border{color:var(--ink-2)}.pv-inspect-chip__dot{flex:0 0 auto;width:11px;height:11px;border-radius:3px;border:1px solid var(--glass-line)}.pv-inspect-chip__tok{font-weight:600;white-space:nowrap}.pv-inspect-chip__hex{color:var(--ink-2);white-space:nowrap}.pv-inspect-chip__row.is-bg .pv-inspect-chip__hex{color:var(--ink)}.pv-inspect-chip__kind{margin-left:auto;font-size:8.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}.pv-inspect-chip__copied{font-size:10.5px;font-weight:700;color:var(--ink);padding-bottom:3px;margin-bottom:1px;border-bottom:1px solid var(--glass-line)}.pv-inspect-outline{position:fixed;z-index:1199;pointer-events:none;border-radius:5px;box-shadow:0 0 0 1.5px #ffffffeb,0 0 0 3px #00000080}:where(.pv) button{cursor:pointer;border:0;background:none;color:inherit;padding:0;margin:0;font:inherit;letter-spacing:inherit;text-align:inherit;-moz-appearance:none;appearance:none;-webkit-appearance:none}:where(.pv) input{font:inherit;-moz-appearance:none;appearance:none;-webkit-appearance:none}:where(.pv) button:focus-visible,:where(.pv) [role=button]:focus-visible,:where(.pv) [role=slider]:focus-visible{outline:2px solid var(--pv-ring);outline-offset:2px}.pv-btn{cursor:pointer;transition:background .12s ease,border-color .12s ease,filter .12s ease,transform .08s ease}.pv-btn--primary:not(.is-disabled):hover{background:var(--pv-accent-hover)}.pv-btn--secondary:not(.is-disabled):hover{background:var(--pv-surface);border-color:var(--pv-text-subtle)}.pv-btn--ghost:not(.is-disabled):hover{background:var(--pv-accent-subtle)}.pv-btn--danger:not(.is-disabled):hover{filter:brightness(.93)}.pv-btn:not(.is-disabled):active{transform:translateY(.5px) scale(.99)}.pv-btn.is-disabled{pointer-events:none}.pv-icobtn{cursor:pointer;transition:color .12s ease,transform .08s ease}.pv-icobtn:hover{color:var(--pv-accent)}.pv-icobtn:active{transform:scale(.92)}.pv-icobtn--play:hover{color:var(--pv-on-accent);filter:brightness(1.05)}.pv-toggle--btn{transition:background .14s ease}.pv-check--btn,.pv-radio--btn{transition:border-color .12s ease,background .12s ease}.pv-check--btn:not(.is-on):hover,.pv-radio--btn:not(.is-on):hover{border-color:var(--pv-accent)}.pv-chip--btn{transition:background .12s ease,color .12s ease,border-color .12s ease}.pv-chip--btn:not(.pv-chip--accent):hover{border-color:var(--pv-text-subtle);color:var(--pv-text)}.pv-cal__cell--btn{transition:background .1s ease}.pv-cal__cell--btn:not(.is-today):hover{background:var(--pv-surface-hi);color:var(--pv-text)}.pv-nav__links button{color:var(--pv-text-muted);font-size:12px;transition:color .12s ease}.pv-nav__links button.is-active{color:var(--pv-text);font-weight:600}.pv-nav__links button:not(.is-active):hover{color:var(--pv-text)}.pv-dash__navlink{transition:background .12s ease,color .12s ease}.pv-dash__navlink:not(.is-active):hover{background:var(--pv-surface-hi);color:var(--pv-text)}.pv-tier{cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease,transform .1s ease}.pv-tier:not(.is-selected):hover{border-color:var(--pv-border-strong)}.pv-tier.is-selected{border-color:var(--pv-accent);box-shadow:0 0 0 1px var(--pv-accent)}.pv-input--live:not(.pv-input--error){color:var(--pv-text)}.pv-input::placeholder,.pv-shinput::placeholder{color:var(--pv-text-subtle);opacity:1}.pv-input:focus,.pv-shinput:focus{outline:none;color:var(--pv-text);border-color:var(--pv-ring);box-shadow:0 0 0 3px color-mix(in srgb,var(--pv-ring) 30%,transparent)}.pv-input--error:focus{border-color:var(--pv-danger);box-shadow:0 0 0 3px color-mix(in srgb,var(--pv-danger) 26%,transparent)}.pv-selectwrap{position:relative}.pv-selectwrap .pv-select{width:100%;cursor:pointer;transition:border-color .12s ease}.pv-selectwrap .pv-select:hover{border-color:var(--pv-text-subtle)}.pv-select__menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:6;display:flex;flex-direction:column;padding:4px;background:var(--pv-surface);border:1px solid var(--pv-border-strong);border-radius:8px;box-shadow:0 8px 24px #00000047}.pv-select__opt{text-align:left;padding:6px 8px;border-radius:6px;font-size:12px;color:var(--pv-text-muted)}.pv-select__opt:hover{background:var(--pv-surface-hi);color:var(--pv-text)}.pv-select__opt.is-on{color:var(--pv-accent);font-weight:600}.pv-tabs__panel{padding:9px 2px 2px}.pv-tabs__blurb{margin:0;font-size:11.5px;color:var(--pv-text-muted);line-height:1.5}.pv-tabs__t:not(.is-active):hover{color:var(--pv-text)}.pv-seg button{padding:4px 12px;font-size:11px;border-radius:6px;color:var(--pv-text-muted);transition:background .12s ease,color .12s ease}.pv-seg button.is-active{background:var(--pv-surface);color:var(--pv-text);font-weight:600;box-shadow:0 1px 2px #0000001f}.pv-seg button:not(.is-active):hover{color:var(--pv-text)}.pv-pag__p{cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.pv-pag__p:not(.is-active):hover{border-color:var(--pv-border-strong);color:var(--pv-text)}.pv-slider--live{cursor:pointer;touch-action:none}.pv-slider--live .pv-slider__knob{cursor:grab}.pv-slider--live:active .pv-slider__knob{cursor:grabbing}.pv-shbtn{transition:background .12s ease,border-color .12s ease,filter .12s ease,transform .08s ease}.pv-shbtn:hover{filter:brightness(1.04);border-color:var(--pv-text-subtle)}.pv-shbtn:active{transform:translateY(.5px)}.pv-shcheck--btn{cursor:pointer;text-align:left}.pv-shopt--btn{width:100%;text-align:left;cursor:pointer;transition:border-color .12s ease,background .12s ease}.pv-shopt--btn:not(.is-on):hover{border-color:var(--pv-border-strong)}.pv-feed__like{margin-left:auto;color:var(--pv-text-subtle);display:inline-flex;padding:2px;transition:color .12s ease,transform .12s ease}.pv-feed__like:hover{color:var(--pv-text-muted)}.pv-feed__like.is-on{color:var(--pv-danger)}.pv-feed__like.is-on:active{transform:scale(1.15)}.pv-tabbar button{width:22px;height:4px;border-radius:999px;background:var(--pv-text-subtle);opacity:.5;transition:opacity .12s ease,background .12s ease}.pv-tabbar button.is-on{background:var(--pv-accent);opacity:1}.pv-tabbar button:not(.is-on):hover{opacity:.8}.pv-appmini__pill{cursor:pointer;transition:border-color .12s ease,background .12s ease}.pv-appmini__pill.is-on{border-color:var(--pv-accent);background:var(--pv-accent-subtle)}.pv-appmini__cta{cursor:pointer;transition:filter .12s ease,transform .08s ease}.pv-appmini__cta:hover{filter:brightness(1.04)}.pv-appmini__cta:active{transform:translateY(.5px)}.pv-player__play{cursor:pointer;transition:filter .12s ease,transform .08s ease}.pv-player__play:hover{filter:brightness(1.05)}.pv-player__play:active{transform:scale(.95)}.pv-player__ctl button{color:inherit}.pv-onb__cta{cursor:pointer;transition:filter .12s ease,transform .08s ease}.pv-onb__cta:hover{filter:brightness(1.05)}.pv-onb__cta:active{transform:translateY(.5px)}.pv-banner__x{cursor:pointer;transition:color .12s ease}.pv-banner__x:hover{color:var(--pv-text)}.pv-hbars__fill{transition:filter .12s ease}.pv-hbars__row:hover .pv-hbars__fill{filter:brightness(1.1)}.pv-legend li{transition:color .12s ease}.pv-legend li:hover{color:var(--pv-text)}.pv-minibars__bar,.pv-shbars__b{transition:filter .12s ease}.pv-minibars__bar:hover,.pv-shbars__b:hover{filter:brightness(1.12)}.pv-logo{transition:transform .12s ease,box-shadow .12s ease}.pv-logo:hover{transform:translateY(-1px);box-shadow:0 6px 18px #0000002e}.pv-grad:hover{filter:brightness(1.05)}.pv-head__link{cursor:pointer}.pv-head__link:hover{text-decoration:underline}@media (prefers-reduced-motion: reduce){.pv-btn,.pv-icobtn,.pv-eyedrop,.pv-tier,.pv-logo,.pv-grad,.pv-shbtn,.pv-appmini__cta,.pv-player__play,.pv-onb__cta,.pv-feed__like{transition:none}.pv-btn:active,.pv-icobtn:active,.pv-shbtn:active,.pv-appmini__cta:active,.pv-player__play:active,.pv-onb__cta:active,.pv-tabbar button,.pv-feed__like.is-on:active{transform:none}}.home{min-height:100vh;background:var(--bg);color:var(--ink);padding-bottom:48px}.home__bar{position:sticky;top:0;z-index:10;padding:14px 0;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--glass-line)}.home__bar-inner{display:flex;align-items:center;gap:12px;max-width:1200px;margin:0 auto;padding:0 24px}.home__brand{font-size:15px;letter-spacing:1px}.home__spacer{flex:1}.home__section{max-width:1200px;margin:0 auto;padding:28px 24px 0}.home__row-title{margin:0 0 12px;font-size:12px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-2)}.home__create{padding-top:40px}.home__headline{margin:0 0 22px}.home__display{margin:0;font-family:var(--font-body);font-size:clamp(34px,5vw,54px);font-weight:700;line-height:1;letter-spacing:-1.5px;color:var(--ink)}.home__subhead{margin:10px 0 0;font-size:13px;letter-spacing:.3px;color:var(--ink-2)}.home__create-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;padding:8px 4px 14px;margin:-8px -4px 0}@media (max-width: 1023px){.home__create-grid{grid-template-columns:1fr 1fr;gap:16px}}@media (max-width: 559px){.home__create-grid{grid-template-columns:1fr}}.home__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:18px;padding:8px 4px 14px;margin:-8px -4px 0}.gen-card{position:relative;aspect-ratio:16 / 9;padding:0;font:inherit;background:#0c0d11;border:1px solid var(--glass-line);border-radius:var(--r-card);overflow:hidden;cursor:pointer;transition:transform .18s ease,border-color .14s ease,box-shadow .18s ease}.gen-card:hover{transform:scale(1.03);border-color:color-mix(in srgb,var(--gen-hue) 72%,transparent);box-shadow:var(--shadow-pop),0 0 0 1px color-mix(in srgb,var(--gen-hue) 45%,transparent);z-index:1}.gen-card:active{transform:scale(1.01)}.gen-card:focus-visible{outline:2px solid var(--gen-hue);outline-offset:2px}.gen-card__canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.gen-card__play{position:absolute;top:50%;left:50%;display:grid;place-items:center;width:44px;height:44px;padding-left:3px;border-radius:var(--r-pill);background:var(--gen-hue);color:#0c0d11;font-size:14px;box-shadow:var(--shadow-pop);opacity:0;transform:translate(-50%,-50%) scale(.9);transition:opacity .14s ease,transform .14s ease;pointer-events:none}.gen-card:hover .gen-card__play{opacity:1;transform:translate(-50%,-50%) scale(1)}.gen-card__label{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:48px 16px 14px;text-align:left;background:linear-gradient(to top,rgba(0,0,0,.55),transparent);pointer-events:none}.gen-card__name{font-size:13px;font-weight:700;letter-spacing:.4px;color:#fff}.gen-card__tagline{max-width:100%;font-size:11px;color:#ffffffa6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proj-card{position:relative;display:flex;flex-direction:column;aspect-ratio:1 / 1;padding:0;text-align:left;color:var(--ink);background:var(--glass);border:1px solid var(--glass-line);border-radius:var(--r-card);overflow:hidden;cursor:pointer;transition:border-color .14s ease,transform .08s ease,background .15s ease}.proj-card:hover{border-color:var(--accent);background:color-mix(in srgb,#fff 4%,var(--glass))}.proj-card:active{transform:scale(.99)}.proj-card__thumb{flex:1;background-color:var(--surface-2);background-position:center;background-size:cover;background-repeat:no-repeat}.proj-card__thumb:not([style]){background-image:repeating-conic-gradient(var(--ink-3) 0% 25%,transparent 0% 50%);background-size:16px 16px;opacity:.4}.proj-card__badge{position:absolute;top:10px;left:10px;padding:3px 10px;font-size:10px;letter-spacing:.4px;color:var(--ink-2);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-line);border-radius:var(--r-pill);pointer-events:none}.proj-card__meta{display:flex;flex-direction:column;gap:3px;padding:12px 14px;background:var(--surface);border-top:1px solid var(--line)}.proj-card__name{font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proj-card__time{font-size:11px;color:var(--ink-3)}.proj-card__actions{position:absolute;top:8px;right:8px;display:flex;gap:6px;opacity:0;transition:opacity .14s ease}.proj-card:hover .proj-card__actions,.proj-card:focus-within .proj-card__actions,.proj-card__actions:has([aria-expanded=true]){opacity:1}.proj-card__more{display:grid;place-items:center;width:26px;height:26px;padding:0;color:var(--ink);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-line);border-radius:var(--r-pill);cursor:pointer;transition:background .12s ease,border-color .12s ease}.proj-card__more:hover,.proj-card__more[aria-expanded=true]{background:color-mix(in srgb,#fff 10%,var(--glass));border-color:var(--line-strong)}.proj-card__more:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.home__empty,.home__err{text-align:center;color:var(--ink-2);padding:40px 24px}.home__err{color:#ff6b6b}.folder-head{display:flex;align-items:center;gap:6px;margin:0 0 12px}.folder-head__toggle{display:flex;align-items:center;gap:8px;padding:3px 8px;margin:-3px -8px;font-family:inherit;font-size:12px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-2);background:none;border:none;border-radius:var(--r-ctl);cursor:pointer;transition:color .12s ease,background .12s ease}.folder-head__toggle:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 6%,transparent)}.folder-head__toggle:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.folder-head__chev{display:flex}@media (prefers-reduced-motion: no-preference){.folder-head__chev{transition:transform .14s ease-out}}.folder-head__chev--collapsed{transform:rotate(-90deg)}.folder-head__count{font-weight:400;letter-spacing:0;color:var(--ink-3)}.folder-head__edit{display:grid;place-items:center;width:22px;height:22px;padding:0;color:var(--ink-2);background:none;border:none;border-radius:var(--r-ctl);cursor:pointer;opacity:0;transition:opacity .14s ease,color .12s ease,background .12s ease}.folder-head:hover .folder-head__edit,.folder-head__edit:focus-visible{opacity:1}.folder-head__edit:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 8%,transparent)}.folder-head__edit:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.folder-head__static{display:flex;color:var(--ink-2);margin-left:20px}.folder-head__input{font-family:inherit;font-size:12px;letter-spacing:1px;color:var(--ink);background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-ctl);padding:4px 10px;width:220px}.folder-head__input:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.folder-head__delete:hover{color:#ff6b6b}.home__toolbar{display:flex;align-items:center;padding-top:22px}.home__newfolder{display:inline-flex;align-items:center;gap:7px;padding:7px 13px 7px 11px;font-family:inherit;font-size:12px;font-weight:600;letter-spacing:.3px;color:var(--ink);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-line);border-radius:var(--r-pill);cursor:pointer;transition:background .12s ease,border-color .12s ease}.home__newfolder:hover{background:color-mix(in srgb,#fff 8%,var(--glass));border-color:var(--line-strong)}.home__newfolder:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.home__empty--folder{text-align:left;padding:6px 4px 16px;font-size:12px;color:var(--ink-2)}.home__row-title--quiet{color:var(--ink-2);font-weight:500;display:inline-flex;align-items:center;gap:6px}.card-menu{position:fixed;z-index:1000;min-width:168px;max-width:260px;max-height:320px;overflow-y:auto;padding:6px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-ctl);box-shadow:var(--shadow-pop);font-family:var(--font-body)}@media (prefers-reduced-motion: no-preference){.card-menu{animation:pop-in .14s ease-out}}.card-menu__item{display:flex;align-items:center;gap:6px;width:100%;padding:7px 10px;font-family:inherit;font-size:12px;text-align:left;color:var(--ink);background:none;border:none;border-radius:var(--r-ctl);cursor:pointer}.card-menu__item:hover,.card-menu__item:focus-visible{background:color-mix(in srgb,var(--ink) 10%,transparent)}.card-menu__item:focus-visible{outline:none}.card-menu__item--danger:hover,.card-menu__item--danger:focus-visible{color:#ff6b6b}.card-menu__sep{height:1px;margin:5px 4px;background:var(--glass-line)}.card-menu__marker{display:flex;align-items:center;justify-content:center;width:12px;flex:none;color:var(--ink-2)}.card-menu__dot{width:6px;height:6px;border-radius:50%;background:var(--accent)}.card-menu__label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-menu__new{padding:3px}.card-menu__input{width:100%;font-family:inherit;font-size:12px;color:var(--ink);background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-ctl);padding:6px 9px}.card-menu__input:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.proj-card--dragging{opacity:.4}body.home-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.drop-target--over{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--r-ctl);background:color-mix(in srgb,var(--accent) 12%,transparent)}.home-drag-ghost{position:fixed;z-index:1000;max-width:220px;padding:5px 10px;font-size:12px;color:var(--ink);background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid var(--glass-line);border-radius:var(--r-ctl);box-shadow:var(--shadow-pop);transform:scale(1.03);transform-origin:top left;pointer-events:none}.home-drag-ghost span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (prefers-reduced-motion: no-preference){.home-drag-ghost{animation:home-ghost-lift .14s cubic-bezier(.22,1,.36,1)}}@keyframes home-ghost-lift{0%{transform:scale(1);box-shadow:none}}.proj-card__check{position:absolute;top:8px;left:8px;z-index:2;display:grid;place-items:center;width:22px;height:22px;padding:0;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);border:1px solid var(--line-strong);border-radius:6px;cursor:pointer;opacity:0;transition:opacity .12s ease,background .12s ease,border-color .12s ease}.proj-card:hover .proj-card__check,.home--selecting .proj-card__check,.proj-card--selected .proj-card__check{opacity:1}.proj-card__check:focus-visible{outline:2px solid var(--focus);outline-offset:2px;opacity:1}.proj-card--selected .proj-card__check{background:var(--accent);border-color:var(--accent)}.proj-card__tick{width:12px;height:12px;fill:none;stroke:var(--accent-ink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:0}.proj-card--selected .proj-card__tick{opacity:1}.proj-card--selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.proj-card__badge{transition:transform .14s ease,opacity .14s ease}.proj-card:hover .proj-card__badge,.home--selecting .proj-card__badge{transform:translate(28px)}@media (hover: none){.proj-card__check{opacity:1;width:28px;height:28px}.proj-card__badge{transform:translate(34px)}}.home-selbar{position:fixed;left:50%;bottom:24px;z-index:1500;transform:translate(-50%);display:flex;align-items:center;gap:6px;padding:8px 10px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-pill);box-shadow:var(--shadow-pop)}@media (prefers-reduced-motion: no-preference){.home-selbar{animation:selbar-rise .16s cubic-bezier(.22,1,.36,1)}}@keyframes selbar-rise{0%{opacity:0;transform:translate(-50%,12px)}}.home-selbar__count{padding:0 4px 0 8px;font-size:12px;font-weight:700;letter-spacing:.3px;color:var(--ink);white-space:nowrap}.home-selbar__sep{width:1px;align-self:stretch;margin:3px 2px;background:var(--glass-line)}.home-selbar__btn{display:inline-flex;align-items:center;gap:5px;padding:7px 12px;font-family:inherit;font-size:12px;font-weight:600;color:var(--ink);background:none;border:none;border-radius:var(--r-pill);cursor:pointer;white-space:nowrap;transition:background .12s ease,color .12s ease}.home-selbar__btn:hover{background:color-mix(in srgb,var(--ink) 10%,transparent)}.home-selbar__btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.home-selbar__btn--danger:hover{color:#ff6b6b}.home-selbar__btn--ghost{color:var(--ink-2)}.home-selbar__btn--ghost:hover{color:var(--ink)}.home-selbar__move{position:relative;display:flex}.home-selbar__menu{position:absolute;bottom:calc(100% + 8px);left:0}.route-msg{display:grid;place-items:center;height:100vh;background:var(--bg);color:var(--ink-2)}.route-msg__card{display:grid;justify-items:center;gap:10px;padding:22px 30px;font-size:13px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);border-radius:var(--r-card);box-shadow:var(--shadow-pop)}.route-msg__card p{margin:0}.route-msg__card a{display:inline-flex;align-items:center;gap:6px;color:var(--ink)}.tabbar{display:flex;align-items:flex-end;gap:2px;height:40px;padding:6px 10px 0;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--glass-line);overflow-x:auto;overflow-y:hidden;flex-shrink:0;scrollbar-width:thin}.tabbar__home{flex-shrink:0;align-self:center;margin:0 6px 3px 0;background:transparent;border:none;color:var(--ink);font:inherit;font-size:12px;font-weight:700;letter-spacing:1px;padding:5px 9px;border-radius:7px;cursor:pointer}.tabbar__home:hover{background:var(--surface-2)}.tab{display:flex;align-items:center;gap:8px;min-width:0;max-width:200px;padding:7px 8px 7px 12px;font-size:12px;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-bottom:none;border-radius:9px 9px 0 0;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:background .12s ease,color .12s ease}.tab:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}.tab--active{background:var(--glass-2);color:var(--ink)}.tab__name{overflow:hidden;text-overflow:ellipsis}.tab__rename{min-width:0;max-width:150px;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--accent);border-radius:4px;padding:1px 4px;outline:none}.tab__close{flex-shrink:0;background:transparent;border:none;color:var(--ink-3);font-size:15px;line-height:1;padding:1px 4px;border-radius:5px;cursor:pointer}.tab__close:hover{background:var(--surface-2);color:var(--ink)}.tabbar__new{flex-shrink:0;align-self:center;margin-bottom:3px;background:transparent;border:none;color:var(--ink-2);font-size:16px;line-height:1;padding:5px 9px;border-radius:7px;cursor:pointer}.tabbar__new:hover{background:var(--surface-2);color:var(--ink)}.tabbar__user{flex-shrink:0;align-self:center;margin:0 4px 3px auto;display:flex;align-items:center}.modal-actions--draft{flex-wrap:wrap}.modal-card__chips{display:flex;flex-wrap:wrap;gap:6px;margin:-8px 0 16px}.modal-chip{padding:4px 10px;font:inherit;font-size:11px;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:999px;cursor:pointer}.modal-chip:hover{color:var(--ink);border-color:var(--glass-line)}.modal-chip--on{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}.tabbar--phone{overflow:visible;align-items:center;gap:8px;padding:6px 10px}.tabbar__home--icon{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;margin:0;padding:0;color:var(--ink)}.tabbar__pill{flex:1;min-width:0;height:32px;padding:0 12px;display:inline-flex;align-items:center;gap:6px;background:var(--glass-2);border:1px solid var(--glass-line);border-radius:999px;color:var(--ink);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.tabbar__pill-name{flex:1;min-width:0;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tabbar__pill-count{flex:none;min-width:18px;height:18px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:var(--accent-ink);border-radius:999px;font:700 10px/1 var(--font-num)}.tabbar__pill svg{color:var(--ink-2);flex:none}.tabswitch{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;flex-direction:column;justify-content:flex-end}.tabswitch__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080}.tabswitch__sheet{position:relative;z-index:1;max-height:80dvh;overflow-y:auto;padding:8px 14px calc(16px + env(safe-area-inset-bottom));background:var(--surface);border-top-left-radius:16px;border-top-right-radius:16px;border-top:1px solid var(--glass-line);box-shadow:var(--shadow-card)}.tabswitch__grip{width:36px;height:4px;margin:0 auto 10px;border-radius:999px;background:var(--glass-line)}.tabswitch__head{margin-bottom:8px;font:700 11px/1 var(--font-num);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}.tabswitch__list{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:4px}.tabswitch__row{display:flex;align-items:center;gap:4px;border-radius:10px;background:var(--surface-2)}.tabswitch__row.is-active{background:var(--glass-2);box-shadow:inset 2px 0 0 var(--ink)}.tabswitch__name{flex:1;min-width:0;min-height:44px;padding:0 12px;text-align:left;background:none;border:none;color:var(--ink);font:inherit;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.tabswitch__rename{flex:1;min-width:0;margin:6px;padding:8px 10px;border:1px solid var(--accent);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit;font-size:14px;font-weight:600;outline:none}.tabswitch__act{flex:none;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;background:none;border:none;color:var(--ink-2);font-size:15px;line-height:1;cursor:pointer}.tabswitch__act:hover{color:var(--ink)}.tabswitch__new{width:100%;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px dashed var(--glass-line);border-radius:10px;background:none;color:var(--ink);font:inherit;font-size:14px;font-weight:600;cursor:pointer}.tabswitch__new:hover{border-color:var(--ink-3)}
