.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}@font-face{font-family:NATS;src:url(/assets/NATS-Regular-DjyQlEf2.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;size-adjust:113%;ascent-override:76%;descent-override:24%;line-gap-override:0%;unicode-range:U+0020-02FF,U+2000-22FF}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--ui-hue: 240;--ui-sat: 0;--ui-ground-l: 7;--dur-fast: .1s;--dur-base: .12s;--dur-slow: .18s;--dur-slower: .22s;--r-sm: 3px;--r-md: 5px;--r-lg: 7px;--r-xl: 12px;--r-pill: 999px;--r-full: 50%;--space-0: .05rem;--space-1: .1rem;--space-2: .15rem;--space-3: .2rem;--space-4: .25rem;--space-5: .3rem;--space-6: .35rem;--space-7: .4rem;--space-8: .5rem;--space-9: .6rem;--space-10: .7rem;--space-11: .9rem;--space-12: 1.2rem;--space-13: 1.5rem;--space-14: 2rem;--fs-2xs: .55rem;--fs-xs: .62rem;--fs-sm: .68rem;--fs-md: .75rem;--fs-lg: .85rem;--fs-xl: 1rem;--fs-2xl: 1.5rem;--fs-3xl: 2rem;--ls-1: .02em;--ls-2: .04em;--ls-3: .06em;--ls-4: .08em;--ls-5: .12em;--ls-6: .16em;--lh-tight: 1;--lh-snug: 1.25;--lh-normal: 1.4;--lh-relaxed: 1.6;--shadow-sm: 0 6px 18px rgba(0, 0, 0, .28);--shadow-md: 0 8px 24px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .45);--shadow-xl: 0 24px 64px rgba(0, 0, 0, .4);--z-base: 1;--z-sticky: 10;--z-dropdown: 60;--z-popover: 200;--z-modal: 300}:root,[data-theme=dark]{--ui-ground-l: 7;--ground: hsl(var(--ui-hue), calc(var(--ui-sat) * 22%), calc(var(--ui-ground-l) * 1%));--surface: hsl(var(--ui-hue), calc(var(--ui-sat) * 19%), calc((var(--ui-ground-l) + 3) * 1%));--surface2: hsl(var(--ui-hue), calc(var(--ui-sat) * 18%), calc((var(--ui-ground-l) + 6) * 1%));--border: hsl(var(--ui-hue), calc(var(--ui-sat) * 21%), calc((var(--ui-ground-l) + 10) * 1%));--text: hsl(var(--ui-hue), calc(var(--ui-sat) * 16%), clamp(91%, calc((var(--ui-ground-l) + 84) * 1%), 98%));--muted: hsl(var(--ui-hue), calc(var(--ui-sat) * 18%), clamp(41%, calc((var(--ui-ground-l) + 34) * 1%), 82%));--accent: hsl(var(--ui-hue), calc(var(--ui-sat) * 16%), clamp(91%, calc((var(--ui-ground-l) + 84) * 1%), 98%));--pass: #5dde8a;--pass-border: rgba(93,222,138,.28);--pass-bg: rgba(93,222,138,.08);--error: #ff7076}[data-theme=light]{--ui-ground-l: 97;--ground: hsl(var(--ui-hue), calc(var(--ui-sat) * 40%), calc(var(--ui-ground-l) * 1%));--surface: hsl(var(--ui-hue), calc(var(--ui-sat) * 31%), calc((var(--ui-ground-l) - 3) * 1%));--surface2: hsl(var(--ui-hue), calc(var(--ui-sat) * 29%), calc((var(--ui-ground-l) - 6) * 1%));--border: hsl(var(--ui-hue), calc(var(--ui-sat) * 30%), calc((var(--ui-ground-l) - 14) * 1%));--text: hsl(var(--ui-hue), calc(var(--ui-sat) * 38%), clamp(8%, calc((var(--ui-ground-l) - 85) * 1%), 14%));--muted: hsl(var(--ui-hue), calc(var(--ui-sat) * 21%), clamp(30%, calc((var(--ui-ground-l) - 38) * 1%), 62%));--accent: hsl(var(--ui-hue), calc(var(--ui-sat) * 38%), clamp(8%, calc((var(--ui-ground-l) - 85) * 1%), 14%));--pass: #1a7a42;--pass-border: rgba(26,122,66,.3);--pass-bg: rgba(26,122,66,.08);--error: #b3261e}html,body{background:var(--ground);color:var(--text);font-family:NATS,sans-serif;min-height:100vh;margin:0;padding:0}#app-wrapper{display:flex;flex-direction:column;align-items:center;padding:var(--space-10) var(--space-14) var(--space-10);gap:var(--space-10);width:100%;min-height:100vh;min-height:100dvh;box-sizing:border-box;background:var(--ground)}header{width:100%;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;row-gap:var(--space-6);border-bottom:1px solid var(--border);padding:var(--space-8) 0}.header-right{display:flex;align-items:center;gap:var(--space-11);flex-shrink:0;margin-left:auto}.theme-toggle{background:none;border:none;cursor:pointer;font-size:var(--fs-xl);color:var(--muted);padding:0;line-height:var(--lh-tight);opacity:.65;transition:opacity var(--dur-slow),color var(--dur-slow),transform var(--dur-base);font-family:inherit;flex-shrink:0;display:flex;align-items:center;justify-content:center}@media (hover: hover){.theme-toggle:hover{opacity:1;color:var(--text)}}.theme-toggle:active{transform:scale(.86);opacity:.9}.wordmark{margin:0;font-size:clamp(.5rem,2.6vw,.86rem);font-weight:400;letter-spacing:var(--ls-6);text-transform:uppercase;color:var(--muted);white-space:nowrap}.app-body{--wheel-col: 360px;width:100%;display:grid;grid-template-columns:var(--wheel-col) minmax(0,1fr);gap:var(--space-13);align-items:start}.col-left,.col-right{display:flex;flex-direction:column;min-width:0}.col-left,.col-right{gap:var(--space-9)}.contrast-section{display:flex;flex-direction:column;gap:var(--space-5)}.section-label{font-size:var(--fs-md);letter-spacing:var(--ls-6);text-transform:uppercase;color:var(--muted)}.wheel-wrap{position:relative;flex-shrink:0;width:360px;height:360px}#wheel,#overlay{display:block;width:360px;height:360px;border-radius:var(--r-full);position:absolute;top:0;left:0;touch-action:none}#overlay{border:1px solid var(--border)}#overlay{pointer-events:none}.swatch-col{display:flex;flex-direction:column;gap:var(--space-7);width:100%}.swatch{position:relative;width:100%;height:52px;min-height:40px;border-radius:var(--r-sm);border:1px solid var(--border);transition:background var(--dur-fast);overflow:hidden}.lum-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-5)}.lum-alpha-group{display:flex;flex-direction:column;gap:var(--space-11);margin-bottom:var(--space-6)}.lum-alpha-group .lum-row{margin-bottom:var(--space-1)}.field-label{font-size:var(--fs-lg);letter-spacing:var(--ls-6);text-transform:uppercase;color:var(--muted)}.field-value{font-size:var(--fs-lg);color:var(--text);font-variant-numeric:tabular-nums;font-family:ui-monospace,monospace;min-width:5ch;text-align:right}input[type=range]{-webkit-appearance:none;width:100%;height:5px;border-radius:var(--r-sm);outline:none;cursor:pointer;background-image:linear-gradient(to right,#000,#fff);background-color:transparent;background-size:100% 5px;background-position:center;background-repeat:no-repeat}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:13px;height:13px;border-radius:var(--r-full);background:var(--text);border:2px solid var(--ground);box-shadow:0 0 0 1px var(--accent);cursor:pointer;transition:transform var(--dur-fast),box-shadow var(--dur-base)}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.25)}input[type=range]::-moz-range-thumb{width:13px;height:13px;border-radius:var(--r-full);background:var(--text);border:2px solid var(--ground);cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-md)}input[type=range]:focus-visible{outline:none}input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 2px var(--ground),0 0 0 4px var(--accent);transform:scale(1.15)}input[type=range]:focus-visible::-moz-range-thumb{box-shadow:0 0 0 2px var(--ground),0 0 0 4px var(--accent)}@media (pointer: coarse){input[type=range]{height:28px}input[type=range]::-webkit-slider-thumb{width:24px;height:24px}input[type=range]::-moz-range-thumb{width:24px;height:24px}input[type=text]{font-size:var(--fs-xl)!important}}.swatch-data-row{display:flex;flex-direction:column;gap:var(--space-10);width:100%}.slider-group{display:flex;flex-direction:column;gap:var(--space-10);padding:var(--space-9);background:var(--surface2);border:1px solid var(--border);border-radius:var(--r-sm)}.data-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden}.data-cell{background:var(--surface2);padding:var(--space-7) var(--space-8);display:flex;flex-direction:column;gap:var(--space-3)}.data-cell.full{grid-column:1 / -1}.cell-label{font-size:var(--fs-md);letter-spacing:var(--ls-6);text-transform:uppercase;color:var(--muted)}.cell-value{font-size:var(--fs-lg);color:var(--text);font-variant-numeric:tabular-nums;font-family:ui-monospace,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-panel{display:grid;grid-template-columns:160px 1fr;gap:var(--space-9) var(--space-12);padding:var(--space-9) var(--space-11);background:var(--surface2);border:1px solid var(--border);border-radius:var(--r-md);align-items:start}.custom-sliders-wrap{display:flex;flex-direction:column;gap:var(--space-8);align-items:stretch}.custom-mode-tabs{display:flex;border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden}.custom-mode-tab{flex:1;background:none;border:none;color:var(--muted);cursor:pointer;font-family:inherit;font-size:var(--fs-xs);letter-spacing:var(--ls-5);padding:var(--space-3) var(--space-7);text-transform:uppercase;transition:background var(--dur-base),color var(--dur-base),transform var(--dur-fast)}.custom-mode-tab+.custom-mode-tab{border-left:1px solid var(--border)}.custom-mode-tab:hover{background:var(--surface);color:var(--text)}.custom-mode-tab:active{transform:scale(.94)}.custom-mode-tab.active{background:var(--border);color:var(--text)}.custom-wheel-col{display:flex;flex-direction:column;gap:var(--space-7);align-items:center}.custom-wheel-canvas{width:120px;height:120px;min-width:120px;min-height:120px;border-radius:var(--r-full);cursor:crosshair;display:block;flex-shrink:0;touch-action:none}.custom-wheel-col{--custom-field-h: 22px}.custom-mini-swatch{position:relative;width:100%;height:var(--custom-field-h);border-radius:var(--r-sm);border:1px solid var(--border);flex-shrink:0}.custom-hex-wrap{position:relative;width:100%}.custom-hex-input{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text);font-family:ui-monospace,monospace;font-size:var(--fs-md);letter-spacing:var(--ls-1);height:var(--custom-field-h, 22px);padding:var(--space-2) .6em;text-align:center;text-transform:uppercase;width:100%;outline:none;transition:border-color var(--dur-slow);cursor:pointer;box-sizing:border-box}.custom-hex-input:focus{border-color:var(--muted);cursor:text}.custom-hex-input.hex-copied{border-color:var(--pass)}.custom-hex-copy-icon{position:absolute;right:.6em;top:50%;transform:translateY(-50%);font-size:var(--fs-lg);line-height:var(--lh-tight);opacity:.4;cursor:pointer;transition:opacity var(--dur-slow),color var(--dur-slow);color:var(--text);-webkit-user-select:none;user-select:none}.custom-hex-copy-icon:after{content:"⧉"}@media (hover: hover){.custom-hex-copy-icon:hover{opacity:.8}}.custom-hex-copy-icon.hex-copied{opacity:1;color:var(--pass)}.custom-hex-copy-icon.hex-copied:after{content:"✓"}.hex-eyedropper{position:absolute;left:.5em;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;padding:0;background:none;border:none;color:var(--text);opacity:.4;cursor:pointer;font-size:var(--fs-lg);line-height:var(--lh-tight);transition:opacity var(--dur-slow),color var(--dur-slow)}.hex-eyedropper[hidden]{display:none}.hex-eyedropper svg{display:block}@media (hover: hover){.hex-eyedropper:hover{opacity:.8}}.hex-eyedropper.picking{opacity:1;color:var(--accent)}.custom-gray-slider{background-image:linear-gradient(to right,#000,#fff)!important}.custom-slider-group{display:none;flex-direction:column;gap:var(--space-8)}.custom-slider-group.active{display:flex}.custom-color-subgroups{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-10) var(--space-13)}.custom-subgroup{display:flex;flex-direction:column;gap:var(--space-8)}.custom-group-label{font-size:var(--fs-xs);letter-spacing:var(--ls-6);text-transform:uppercase;color:var(--muted);padding-bottom:var(--space-2);border-bottom:1px solid var(--border)}.custom-slider-row{display:grid;grid-template-columns:.9rem 1fr 4.5ch;gap:var(--space-7);align-items:center}.custom-ch{font-size:var(--fs-sm);text-align:right;color:var(--muted)}.custom-val{font-size:var(--fs-sm);font-variant-numeric:tabular-nums;font-family:ui-monospace,monospace;color:var(--text);text-align:right}.fv-u{display:inline-block;width:1ch}.fv-u--deg{width:.5ch;overflow:visible}input.field-value,input.custom-val,input.settings-row-val{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;border-bottom:1px dashed var(--muted);border-radius:var(--r-sm);outline:none;padding:0 0 .18em;color:inherit;font-size:inherit;font-family:inherit;font-variant-numeric:inherit;text-align:right;cursor:text;transition:background var(--dur-base),border-color var(--dur-base),border-style var(--dur-base)}input.field-value{width:5ch;min-width:5ch;flex-shrink:0}input.custom-val,input.settings-row-val{width:100%}input.field-value:hover,input.custom-val:hover,input.settings-row-val:hover,input.field-value:focus,input.custom-val:focus,input.settings-row-val:focus{background:var(--surface);border-bottom-style:solid;border-bottom-color:var(--muted)}.preview-tiles{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-9)}.preview-tile{padding:var(--space-10) var(--space-11);border-radius:var(--r-md);display:flex;flex-direction:column;gap:var(--space-6);min-width:0;position:relative}.preview-meta{display:flex;align-items:center;gap:var(--space-8);margin-bottom:var(--space-1)}.preview-pair{display:flex;align-items:center;gap:var(--space-5)}.preview-role{font-size:var(--fs-xs);letter-spacing:var(--ls-5);text-transform:uppercase;opacity:.55;font-family:ui-monospace,monospace}.preview-pair-dot{width:12px;height:12px;border-radius:var(--r-sm);border:1px solid rgba(128,128,128,.25);flex-shrink:0}.preview-wcag{display:flex;gap:var(--space-7);align-items:flex-start;flex-wrap:wrap;align-self:flex-end;max-width:100%}.preview-wcag-rows{display:grid;grid-template-columns:minmax(0,1fr);justify-items:end;min-width:0;max-width:100%;position:relative}.preview-verdict-group{grid-area:1 / 1;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-end;gap:var(--space-3);min-width:0;max-width:100%}.preview-verdict-apca{visibility:hidden;position:absolute;top:0;right:0}.preview-wcag-rows.apca .preview-verdict-apca{visibility:visible;position:static}.preview-wcag-rows.apca .preview-verdict-wcag{visibility:hidden;position:absolute;top:0;right:0}.preview-wcag-row{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}.preview-wcag-cat{font-size:var(--fs-xs);font-family:ui-monospace,monospace;letter-spacing:var(--ls-2);width:4.5rem;flex-shrink:0;text-align:right;white-space:nowrap}.preview-wcag-cat:after{content:":";opacity:.45;margin-left:.05em}.preview-badge{font-size:var(--fs-xs);letter-spacing:var(--ls-4);text-transform:uppercase;padding:var(--space-2) var(--space-6);border-radius:var(--r-sm);border:1px solid;font-family:ui-monospace,monospace;white-space:nowrap}.preview-badge-pass{color:#5dde8a;border-color:#5dde8a8c;background:#5dde8a29}.preview-badge-fail{color:inherit;border-color:#80808033;background:#8080800f;opacity:.5}.preview-ratio-label{font-size:var(--fs-sm);font-variant-numeric:tabular-nums;opacity:.6;font-family:inherit;white-space:nowrap;flex-shrink:0;margin-left:auto}.preview-display{font-size:var(--fs-3xl);font-weight:700;line-height:var(--lh-tight);font-family:system-ui,-apple-system,sans-serif;letter-spacing:-.01em}.preview-body{font-size:var(--fs-lg);line-height:var(--lh-relaxed);font-family:system-ui,-apple-system,sans-serif}.preview-section{display:flex;flex-direction:column;gap:var(--space-1)}.preview-section-label{font-size:var(--fs-2xs);letter-spacing:var(--ls-5);text-transform:uppercase;font-family:ui-monospace,monospace;opacity:.4}.preview-size{text-transform:none}.preview-size:before{content:" · "}.preview-ui-row{display:flex;align-items:center;gap:var(--space-9);flex-wrap:wrap}.preview-palette{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-5) var(--space-7);cursor:pointer}.preview-palette-text{font-size:var(--fs-lg);font-weight:700;line-height:var(--lh-tight);letter-spacing:var(--ls-1);transform:translateY(-.091em)}.preview-palette-bg{width:14px;height:14px;border-radius:var(--r-sm);border:1px solid rgba(128,128,128,.4);flex-shrink:0}.preview-share-btn{display:inline-flex;align-items:center;gap:.35em;background:currentColor;border:none;border-radius:var(--r-md);color:inherit;cursor:pointer;font-family:system-ui,-apple-system,sans-serif;font-size:var(--fs-lg);letter-spacing:var(--ls-2);line-height:var(--lh-tight);height:var(--share-btn-h, 1.65rem);padding:0 .5em 0 .62em;transition:opacity var(--dur-base),transform var(--dur-fast);white-space:nowrap}@media (hover: hover){.preview-share-btn:hover{opacity:.75}}.preview-share-btn:active{opacity:.55;transform:scale(.95)}.preview-share-btn .preview-share-label,.preview-share-btn .preview-icon{color:var(--tile-bg)}.preview-platform-group{display:flex;align-items:center;gap:var(--space-6);margin-left:auto}.preview-platform-btn{display:inline-flex;align-items:center;justify-content:center;background:currentColor;border:none;border-radius:var(--r-md);color:inherit;cursor:pointer;height:var(--share-btn-h, 1.65rem);aspect-ratio:1;padding:0;line-height:0;transition:opacity var(--dur-base),transform var(--dur-fast)}@media (hover: hover){.preview-platform-btn:hover{opacity:.75}}.preview-platform-btn:active{opacity:.55;transform:scale(.95)}.preview-platform-btn svg{width:1em;height:1em;fill:var(--tile-bg);display:block;flex-shrink:0}.preview-platform-btn.just-copied{opacity:.45;pointer-events:none}.preview-icon{width:1.1rem;height:1.1rem;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.cv{display:inline-block;text-align:right;font-variant-numeric:tabular-nums}.cv+.cv{margin-left:.5ch}.cv-hue,.cv-pct{min-width:4ch}.cv-byte{min-width:3ch}.copyable{cursor:pointer}.copyable:after{content:"⧉";display:inline-block;width:1.5em;text-align:center;font-size:.88em;opacity:.45;margin-left:.1em;vertical-align:baseline;transition:opacity var(--dur-slow),color var(--dur-slow);color:var(--icon-clr, currentColor)}.copyable:hover:after{opacity:1}.copyable.copied:after{content:"✓";color:var(--pass);opacity:1}.pin-btn{background:none;border:none;cursor:pointer;font-size:var(--fs-md);line-height:var(--lh-tight);padding:var(--space-3);opacity:.65;color:inherit;transition:opacity var(--dur-base),transform var(--dur-fast)}.pin-btn svg{display:block}@media (hover: hover){.pin-btn:hover{opacity:1}}.pin-btn:active{transform:scale(.9)}.pin-btn--mini{position:absolute;top:50%;right:.3rem;transform:translateY(-50%);font-size:var(--fs-lg);padding:var(--space-1);display:flex;align-items:center}.pin-btn--mini:active{transform:translateY(-50%) scale(.9)}.preview-apca{font-size:var(--fs-sm);font-variant-numeric:tabular-nums;opacity:.6;font-family:inherit;white-space:nowrap;flex-shrink:0}.preview-apca-tier{font-size:var(--fs-xs);line-height:var(--lh-normal);letter-spacing:var(--ls-4);font-weight:600;max-width:100%;text-align:right}.preview-apca-tier:empty{display:none}.preview-apca-font{font-size:var(--fs-xs);line-height:var(--lh-normal);letter-spacing:var(--ls-1);max-width:100%;text-align:right}.preview-apca-font:empty{display:none}:root{--palette-w: min(90vw, 480px)}.palette-section{position:fixed;top:0;right:0;bottom:0;width:var(--palette-w);display:flex;flex-direction:column;gap:var(--space-9);padding:var(--space-11) var(--space-11) calc(1rem + env(safe-area-inset-bottom,0px) + var(--palette-vv-gap, 0px) + var(--rlcw-fit-reserve, 0px));border-left:1px solid var(--border);background:var(--ground);box-shadow:-12px 0 32px #0000004d;overflow:hidden;z-index:5;transform:translateZ(0)}.palette-section--opening{animation:palette-slide-in var(--dur-slower) ease}@keyframes palette-slide-in{0%{transform:translate(100%)}}.palette-section--closing{animation:palette-slide-out var(--dur-slower) ease forwards}@keyframes palette-slide-out{to{transform:translate(100%)}}.palette-section--swiping{animation:none;will-change:transform}.palette-section[hidden]{display:none}.palette-section--dragging .palette-rail{overflow:hidden}.palette-toggle{position:relative}body.palette-open .palette-toggle{opacity:1;color:var(--text)}.palette-toggle-count{position:absolute;top:-1px;right:-1px;width:7px;height:7px;border-radius:var(--r-pill);background:var(--text);box-shadow:0 0 0 1.5px var(--ground)}.section-label-row{display:flex;align-items:center;justify-content:space-between}.palette-head{display:flex;align-items:center;gap:var(--space-11)}.palette-history{display:flex;align-items:center;gap:var(--space-6);margin-left:auto}.palette-history-btn{font-size:var(--fs-lg)}.palette-history-btn:disabled{opacity:.28;cursor:default}.palette-history-btn:disabled:hover{opacity:.28;color:var(--muted)}.palette-clear{background:none;border:none;color:var(--muted);cursor:pointer;font-family:inherit;font-size:var(--fs-sm);letter-spacing:var(--ls-5);text-transform:uppercase;padding:var(--space-1) 0;transition:color var(--dur-base)}@media (hover: hover){.palette-clear:hover{color:var(--text)}}.palette-export{flex-shrink:0;margin-top:calc(3px - .55rem);display:flex;flex-direction:column;gap:var(--space-7);padding-top:var(--space-8);border-top:1px solid var(--border)}.palette-export-label{font-size:var(--fs-xs);letter-spacing:var(--ls-6);text-transform:uppercase;color:var(--muted)}.palette-export-tabs,.palette-export-actions{display:flex;flex-wrap:nowrap;gap:var(--space-7)}.palette-export-tabs>.settings-theme-btns{flex:1 1 0;min-width:0}.palette-export-tabs .settings-theme-btn{flex:1 1 0;min-width:0;white-space:nowrap;font-size:var(--fs-2xs);letter-spacing:var(--ls-1);padding:var(--space-5) var(--space-5)}@media (max-width: 479px){.palette-export-tabs .settings-theme-btn{padding:var(--space-5) var(--space-1);font-size:var(--fs-2xs);letter-spacing:var(--ls-1)}}@media (max-width: 400px){.palette-export-tabs .settings-theme-btn{font-size:var(--fs-2xs);letter-spacing:var(--ls-1)}}.palette-export-btn{flex:1 1 0;min-width:0;border:1px solid var(--border);border-radius:var(--r-sm);background:none;color:var(--muted);cursor:pointer;font-family:inherit;font-size:var(--fs-sm);letter-spacing:var(--ls-5);text-transform:uppercase;padding:var(--space-6) var(--space-7);transition:background var(--dur-base),color var(--dur-base),border-color var(--dur-base),transform var(--dur-fast)}@media (hover: hover){.palette-export-btn:hover{background:var(--surface2);color:var(--text)}}.palette-export-btn:active{transform:scale(.97)}.palette-export-btn.copied,.palette-export-btn.done{color:var(--pass);border-color:var(--pass)}.chip-editor{--chip-editor-open-max: 760px;display:flex;flex-direction:column;gap:var(--space-9);margin:var(--space-1) 0 var(--space-2);padding:var(--space-9) var(--space-9) var(--space-10);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface2, var(--surface));overflow:visible;max-height:var(--chip-editor-open-max);transform-origin:top;animation:chip-editor-in var(--dur-slower) ease}@keyframes chip-editor-in{0%{opacity:0;max-height:0;margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0;clip-path:inset(0 0 100% 0);transform:translateY(-4px)}to{opacity:1;max-height:var(--chip-editor-open-max);clip-path:inset(0 0 0 0);transform:translateY(0)}}.chip-editor--closing{pointer-events:none;overflow:hidden;animation:chip-editor-out var(--dur-slow) ease forwards}@keyframes chip-editor-out{to{opacity:0;max-height:0;margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0;border-top-width:0;border-bottom-width:0;clip-path:inset(0 0 100% 0);transform:translateY(-4px)}}.chip-editor .custom-mode-tabs{margin-bottom:0}.chip-editor .custom-mode-tab{font-size:var(--fs-sm);letter-spacing:var(--ls-5)}.chip-editor .custom-mode-tab:hover{background:var(--surface2);color:var(--text)}.chip-editor-wheel{display:block;width:min(100%,200px);height:auto;aspect-ratio:1 / 1;align-self:center;border-radius:var(--r-full);cursor:crosshair;touch-action:none}.chip-editor-wheel[hidden]{display:none}.chip-editor .custom-slider-group{gap:var(--space-7)}.chip-editor-sliders{display:flex;flex-direction:column;gap:var(--space-7)}.chip-editor-hexwrap{position:relative}.chip-editor-namewrap{margin-top:var(--space-5);position:relative}.chip-editor-name{text-transform:none;letter-spacing:normal;height:var(--custom-field-h, 22px);padding:var(--space-2) var(--space-14);font-size:var(--fs-md)}.chip-editor-name-reset{position:absolute;right:0;top:0;height:100%;width:1.9em;display:flex;align-items:center;justify-content:flex-end;padding:0 .6em 0 0;background:none;border:none;color:var(--text);opacity:.4;cursor:pointer;font-size:var(--fs-lg);line-height:var(--lh-tight);transition:opacity var(--dur-slow),color var(--dur-slow)}@media (hover: hover){.chip-editor-name-reset:hover{opacity:.8;color:var(--accent)}}.chip-editor-hex{width:100%;text-align:center;height:var(--custom-field-h, 22px);padding:var(--space-2) var(--space-14);font-family:ui-monospace,monospace;font-size:var(--fs-md)}.chip-editor-preview{display:flex;flex-direction:column;gap:var(--space-7);padding-top:var(--space-8);border-top:1px solid var(--border)}.chip-editor-tile{position:relative;display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);min-height:54px;padding:var(--space-8) var(--space-10);border:1px solid var(--border);border-radius:var(--r-md)}.chip-editor-ag-wrap{display:inline-flex;flex-direction:row;align-items:center;gap:var(--space-6);flex-shrink:0}.chip-editor-ag{font-size:var(--fs-2xl);line-height:var(--lh-tight);font-weight:600;transform:translateY(-.091em);flex-shrink:0}.chip-editor-ag-size{font-size:var(--fs-2xs);line-height:var(--lh-tight);letter-spacing:var(--ls-2);font-family:ui-monospace,monospace;opacity:.5;white-space:nowrap}.chip-editor-ag-size:empty{display:none}.chip-editor-cmp-btn{flex:1 1 0;min-width:0;align-self:stretch;display:flex;align-items:center;justify-content:space-between;gap:var(--space-9);background:none;border:none;padding:var(--space-3) var(--space-2) var(--space-3) var(--space-1);border-radius:var(--r-md);color:inherit;cursor:pointer;text-align:left}.chip-editor-tile-label{min-width:0;font-size:var(--fs-md);font-weight:600;letter-spacing:var(--ls-1);line-height:var(--lh-tight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip-editor-tile-icon{display:block;flex-shrink:0;transform:translateY(-.44px);opacity:.85;transition:opacity var(--dur-base)}@media (hover: hover){.chip-editor-cmp-btn:hover .chip-editor-tile-icon{opacity:1}}.chip-editor-dropdown{position:absolute;top:calc(100% + 4px);right:0;z-index:6;min-width:12rem;overflow:hidden;background:var(--surface2, var(--surface));border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.chip-editor-dd-scroll{max-height:9rem;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:var(--space-4)}.chip-editor-dropdown[hidden]{display:none}.chip-editor-dd-item{display:flex;align-items:center;gap:var(--space-7);width:100%;padding:var(--space-5) var(--space-6);background:none;border:none;border-radius:var(--r-md);color:var(--text);cursor:pointer;font-size:var(--fs-sm);text-align:left}@media (hover: hover){.chip-editor-dd-item:hover:not([disabled]){background:var(--border)}}.chip-editor-dd-item[aria-selected=true]{background:var(--border)}.chip-editor-dd-item[disabled]{cursor:default;color:var(--muted)}.chip-editor-dd-role{flex-shrink:0;min-width:2.4em;font-size:var(--fs-2xs);letter-spacing:var(--ls-4);text-transform:uppercase;color:var(--muted)}.chip-editor-dd-swatch{width:14px;height:14px;border-radius:var(--r-sm);flex-shrink:0;border:1px solid rgba(128,128,128,.35)}.chip-editor-dd-name{flex:1;white-space:nowrap}.chip-editor-dd-hex{flex-shrink:1;min-width:0;overflow:hidden;text-overflow:ellipsis;font-family:ui-monospace,monospace;font-size:var(--fs-xs);color:var(--muted)}.chip-editor-dd-check{flex-shrink:0;width:.9em;text-align:center;color:var(--pass)}.chip-editor-cmp{display:flex;align-items:center;gap:var(--space-7);font-size:var(--fs-sm);color:var(--muted)}.chip-editor-cmp-role{font-size:var(--fs-2xs);letter-spacing:var(--ls-5);text-transform:uppercase}.chip-editor-cmp-ratio{margin-left:auto;font-variant-numeric:tabular-nums;color:var(--text)}.chip-editor-badges{display:inline-flex;gap:var(--space-4)}.chip-editor-badge{font-size:var(--fs-2xs);letter-spacing:var(--ls-2);padding:var(--space-0) var(--space-5);border-radius:var(--r-sm);border:1px solid var(--border);color:var(--muted)}.chip-editor-badge.pass{color:var(--pass);border-color:color-mix(in srgb,var(--pass) 45%,transparent)}.chip-editor-apca-tier{font-size:var(--fs-xs);line-height:var(--lh-normal);font-weight:700;letter-spacing:var(--ls-3);text-align:right;color:var(--text)}.chip-editor-apca-font{font-size:var(--fs-xs);line-height:var(--lh-normal);text-align:right;overflow-wrap:anywhere;color:var(--error)}.chip-editor-apca-font.pass{color:var(--pass)}.chip-editor-apca-tier:empty,.chip-editor-apca-font:empty{display:none}.chip-editor-actions{display:flex;gap:var(--space-8);width:100%}.chip-editor-cancel,.chip-editor-done{flex:1 1 0;padding:var(--space-7);border-radius:var(--r-md);font-family:inherit;font-size:var(--fs-sm);letter-spacing:var(--ls-3);cursor:pointer;transition:background var(--dur-base),color var(--dur-base),opacity var(--dur-base),transform var(--dur-fast)}.chip-editor-done{background:var(--border);border:1px solid var(--border);color:var(--text)}.chip-editor-cancel{background:none;border:1px solid var(--border);color:var(--muted)}@media (hover: hover){.chip-editor-cancel:hover,.chip-editor-done:hover{opacity:.85}}.chip-editor-cancel:active,.chip-editor-done:active{transform:scale(.98)}.palette-chip.editing{outline:1px solid var(--accent);outline-offset:1px}.palette-rail{--pal-fade: 15px;display:flex;flex-direction:column;gap:var(--space-8);flex:1;overflow-y:auto;overflow-x:hidden;min-height:0;scrollbar-width:thin;overscroll-behavior:contain;padding:var(--pal-fade) 3px;margin:-3px;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 var(--pal-fade),#000 calc(100% - var(--pal-fade)),transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 var(--pal-fade),#000 calc(100% - var(--pal-fade)),transparent 100%)}.palette-rail-content{display:flex;flex-direction:column;gap:var(--space-8)}.palette-rail--editor-transition{pointer-events:none}.palette-chip{display:flex;align-items:center;width:100%;flex-shrink:0;border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;cursor:grab;user-select:none;-webkit-user-select:none;touch-action:pan-y;-webkit-touch-callout:none;-webkit-user-drag:none;-webkit-tap-highlight-color:transparent;transition:transform var(--dur-slow) ease,box-shadow var(--dur-slow) ease}.palette-chip *{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.palette-chip--lifted{transition:box-shadow var(--dur-slow) ease;position:relative;z-index:3;box-shadow:var(--shadow-md);cursor:grabbing}.palette-chip--settling{position:relative;z-index:3}.palette-group{display:flex;flex-direction:column;gap:var(--space-6)}.palette-group+.palette-group{margin-top:var(--space-3)}.palette-group-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);transition:transform var(--dur-slow) ease}.palette-group-label{font-size:var(--fs-xs);letter-spacing:var(--ls-6);text-transform:uppercase;color:var(--muted)}.palette-group-add{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--muted);cursor:pointer;padding:var(--space-1);font-size:var(--fs-lg);flex-shrink:0;transition:color var(--dur-base),opacity var(--dur-base)}@media (hover: hover){.palette-group-add:hover{color:var(--text)}}.palette-group-add:active{transform:scale(.9)}.palette-group-add:disabled{opacity:.3;cursor:default}.palette-group-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.palette-group-import{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--muted);cursor:pointer;padding:var(--space-1);font-size:var(--fs-md);flex-shrink:0;transition:color var(--dur-base),opacity var(--dur-base),transform var(--dur-fast)}@media (hover: hover){.palette-group-import:hover{color:var(--text)}}.palette-group-import:active{transform:scale(.9)}.palette-group-import:disabled{opacity:.3;cursor:default}.scale-import{position:fixed;z-index:var(--z-modal);width:250px;max-width:calc(100vw - 1rem);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--space-9);display:flex;flex-direction:column;gap:var(--space-5);box-shadow:var(--shadow-md)}.scale-import-title{font-size:var(--fs-xs);font-weight:600;color:var(--text);letter-spacing:var(--ls-1)}.scale-import-label{font-size:var(--fs-2xs);letter-spacing:var(--ls-4);text-transform:uppercase;color:var(--muted);margin-top:var(--space-2)}.scale-import-row{display:flex;flex-wrap:wrap;gap:3px}.scale-import-sw{width:1.1rem;height:1.1rem;border-radius:var(--r-sm);border:1px solid rgba(128,128,128,.25);cursor:pointer;padding:0;transition:transform var(--dur-base) ease}.scale-import-sw:active{transform:scale(.9)}.scale-import-sw.ok{outline:2px solid var(--pass);outline-offset:1px}.scale-import-sw.dup{outline:2px solid var(--muted);outline-offset:1px}.scale-import-status{font-size:var(--fs-2xs);color:var(--muted);margin-top:var(--space-2)}.scale-import.full .scale-import-row{opacity:.4;pointer-events:none}.lp-theme-swatch,.scale-import-sw,.sg-swatch{position:relative}.lp-theme-swatch:after,.scale-import-sw:after,.sg-swatch:after{content:attr(data-name);position:absolute;bottom:calc(100% + 7px);left:50%;transform:translate(-50%);background:var(--surface2);color:var(--muted);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--space-1) var(--space-7);font-size:var(--fs-2xs);font-weight:500;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--dur-fast) ease;z-index:var(--z-sticky)}@media (hover: hover){.lp-theme-swatch:hover:after,.scale-import-sw:hover:after,.sg-swatch:hover:after{opacity:1}}.lp-theme-swatch{cursor:pointer;transition:transform var(--dur-base) ease}.lp-theme-swatch:active,.sg-swatch:active{transform:scale(.96)}.lp-theme-swatch.copied:after,.sg-swatch.copied:after{opacity:1}.palette-group-list{display:flex;flex-direction:column;gap:var(--space-7)}.palette-chip-grip{flex-shrink:0;display:flex;align-items:center;justify-content:center;align-self:stretch;padding:0 var(--space-6) 0 var(--space-7);font-size:var(--fs-xl);cursor:grab;opacity:.55;touch-action:none;transition:opacity var(--dur-base)}.palette-chip-grip svg{display:block;pointer-events:none}@media (hover: hover){.palette-chip-grip:hover{opacity:.9}}.palette-chip--lifted .palette-chip-grip{cursor:grabbing}.palette-chip-rank{font-size:var(--fs-2xs);letter-spacing:var(--ls-3);text-transform:uppercase;opacity:.7;padding-left:var(--space-3);flex:0 0 6.1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:none;user-select:none}.palette-chip-rank--named{text-transform:none}.palette-chip-hex{font-size:var(--fs-md);letter-spacing:var(--ls-3);padding:var(--space-8) var(--space-5) var(--space-8) var(--space-6);flex:1;text-align:left}.palette-chip-edit{display:flex;align-items:center;background:none;border:none;color:inherit;cursor:pointer;font-size:var(--fs-lg);line-height:var(--lh-tight);opacity:.55;padding:var(--space-8) var(--space-4);transition:opacity var(--dur-slow)}.palette-chip-edit svg{display:block}@media (hover: hover){.palette-chip-edit:hover{opacity:1}}.palette-chip-recall{display:flex;align-items:center;background:none;border:none;color:inherit;cursor:pointer;font-size:var(--fs-lg);line-height:var(--lh-tight);opacity:.55;padding:var(--space-8) var(--space-4);transition:opacity var(--dur-slow)}.palette-chip-recall svg{display:block}@media (hover: hover){.palette-chip-recall:hover{opacity:1}}.palette-chip-duplicate{display:flex;align-items:center;background:none;border:none;color:inherit;cursor:pointer;font-size:var(--fs-lg);line-height:var(--lh-tight);opacity:.55;padding:var(--space-8) var(--space-4);transition:opacity var(--dur-slow)}.palette-chip-duplicate svg{display:block}@media (hover: hover){.palette-chip-duplicate:hover{opacity:1}}.palette-chip-duplicate:disabled{opacity:.2;cursor:default}.palette-chip-copy{background:none;border:none;color:inherit;cursor:pointer;font-size:var(--fs-md);line-height:var(--lh-tight);opacity:.55;padding:var(--space-8) var(--space-4);transition:opacity var(--dur-slow),color var(--dur-slow);-webkit-user-select:none;user-select:none}.palette-chip-copy:after{content:"⧉"}@media (hover: hover){.palette-chip-copy:hover{opacity:1}}.palette-chip-copy.copied{opacity:1;color:var(--pass)}.palette-chip-copy.copied:after{content:"✓"}.palette-chip-remove{background:none;border:none;color:inherit;cursor:pointer;font-size:var(--fs-lg);line-height:var(--lh-tight);opacity:.55;padding:var(--space-8) var(--space-8) var(--space-8) var(--space-2);transition:opacity var(--dur-base)}@media (hover: hover){.palette-chip-remove:hover{opacity:1}}.about{width:100%}.about summary{cursor:pointer;color:var(--muted);font-size:var(--fs-md);letter-spacing:var(--ls-6);text-transform:uppercase;padding:var(--space-6) 0;transition:color var(--dur-base)}@media (hover: hover){.about summary:hover{color:var(--text)}}.about summary h2{display:inline;font-size:inherit;font-weight:400;letter-spacing:inherit}.about-body{max-width:720px;padding:var(--space-8) 0 var(--space-10);display:flex;flex-direction:column;gap:var(--space-9);font-size:var(--fs-lg);line-height:var(--lh-relaxed);color:var(--text)}.about-body p,.about-body li{text-align:justify;text-justify:inter-word;hyphens:auto;-webkit-hyphens:auto}.about-body h3{font-size:var(--fs-md);letter-spacing:var(--ls-6);text-transform:uppercase;color:var(--muted);font-weight:400;margin-top:var(--space-7)}.about-body ul{padding-left:var(--space-12);display:flex;flex-direction:column;gap:var(--space-5)}.about-fineprint{font-size:var(--fs-md);color:var(--muted)}.about-body code{font-family:inherit;font-size:.92em;background:color-mix(in srgb,currentColor 9%,transparent);border-radius:var(--r-sm);padding:.06em .36em;hyphens:none;-webkit-hyphens:none;word-break:break-word}@media (max-width: 860px){.about-body{max-width:none}}.about-modal[hidden]{display:none}.about-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-dropdown);display:flex;align-items:center;justify-content:center;padding:var(--space-14)}.about-modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000008c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:about-modal-fade var(--dur-slow) ease}.about-modal-panel{position:relative;display:flex;flex-direction:column;width:100%;max-width:780px;max-height:84vh;overflow:hidden;background:var(--ground);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-xl);animation:about-modal-pop var(--dur-slow) ease}.about-modal-head{flex:0 0 auto;padding:1.5rem 3.4rem 1.1rem 2.2rem;border-bottom:1px solid var(--border)}.about-modal-title{margin:0;font-size:var(--fs-2xl);font-weight:600;line-height:var(--lh-tight);color:var(--text)}.about-modal-subtitle{margin:.35rem 0 0;font-size:var(--fs-md);letter-spacing:var(--ls-6);text-transform:uppercase;color:var(--muted)}.about-modal-scroll{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:1.6rem 3.4rem 2.2rem 2.2rem}@keyframes about-modal-fade{0%{opacity:0}}@keyframes about-modal-pop{0%{opacity:0;transform:translateY(8px) scale(.99)}}.about-modal-panel .about-body{max-width:none;padding-top:0}.about-modal-close,.kbd-help-close{position:absolute;top:.55rem;right:.7rem;z-index:var(--z-base);width:1.75rem;height:1.75rem;padding:0;background:none;border:none;border-radius:var(--r-sm);color:var(--muted);font-size:0;cursor:pointer;transition:color var(--dur-base) ease}.about-modal-close:before,.about-modal-close:after,.kbd-help-close:before,.kbd-help-close:after{content:"";position:absolute;top:50%;left:50%;width:.72rem;height:1px;background:currentColor}.about-modal-close:before,.kbd-help-close:before{transform:translate(-50%,-50%) rotate(45deg)}.about-modal-close:after,.kbd-help-close:after{transform:translate(-50%,-50%) rotate(-45deg)}@media (hover: hover){.about-modal-close:hover,.kbd-help-close:hover{color:var(--text)}}.about-modal-close:focus-visible,.kbd-help-close:focus-visible{outline:none;color:var(--text)}body.about-modal-open{overflow:hidden}.copyright{font-size:var(--fs-md);letter-spacing:var(--ls-5);color:var(--muted);text-align:center}.copyright a{color:inherit;text-decoration:none}.copyright a:hover{text-decoration:underline}.app-version{font-size:var(--fs-md);letter-spacing:var(--ls-5);color:var(--muted);white-space:nowrap}.settings-wrap{position:relative;display:flex;align-items:center}@media (hover: hover){.settings-wrap:hover .theme-toggle{opacity:1;color:var(--text)}}.settings-wrap.settings-open .theme-toggle{opacity:1;color:var(--text)}.settings-panel{position:absolute;top:calc(100% + 4px);right:0;width:360px;max-width:calc(100vw - 4rem);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);display:flex;flex-direction:column;z-index:var(--z-popover);max-height:calc(100dvh - 6rem);overflow:hidden;opacity:0;transform:translateY(-5px);visibility:hidden;pointer-events:none;transition:opacity var(--dur-slow) ease,transform var(--dur-slow) ease,visibility 0s linear var(--dur-slow)}.settings-panel-scroll{display:flex;flex-direction:column;gap:var(--space-10);padding:var(--space-11) var(--space-11);min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin}.settings-panel-scroll::-webkit-scrollbar{width:8px}.settings-panel-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--r-md)}.settings-panel-scroll::-webkit-scrollbar-track{background:transparent}@media (hover: hover){.settings-wrap:hover:after{content:"";position:absolute;top:100%;right:0;width:min(360px,calc(100vw - 4rem));height:8px}.settings-wrap:hover .settings-panel{opacity:1;transform:translateY(0);visibility:visible;pointer-events:auto;transition:opacity var(--dur-slow) ease,transform var(--dur-slow) ease}}.settings-wrap.settings-open .settings-panel{opacity:1;transform:translateY(0);visibility:visible;pointer-events:auto;transition:opacity var(--dur-slow) ease,transform var(--dur-slow) ease}.settings-wrap.settings-dismissed .settings-panel{opacity:0;transform:translateY(-5px);visibility:hidden;pointer-events:none;transition:opacity var(--dur-slow) ease,transform var(--dur-slow) ease,visibility 0s linear var(--dur-slow)}.settings-backdrop{display:none}@media (max-width: 640px){.settings-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:199;background:#00000080;opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--dur-slow) ease,visibility 0s linear var(--dur-slow)}.settings-wrap.settings-open .settings-backdrop{opacity:1;visibility:visible;pointer-events:auto;transition:opacity var(--dur-slow) ease}.settings-wrap.settings-dismissed .settings-backdrop{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--dur-slow) ease,visibility 0s linear var(--dur-slow)}.settings-wrap.settings-open .theme-toggle{position:relative;z-index:var(--z-popover)}}.layout-panel{width:440px}.layout-preview{display:flex;flex-direction:column;gap:var(--space-11);min-width:0}.lp-modes{display:flex;border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden}.lp-mode-btn{flex:1;font-family:inherit;font-size:var(--fs-sm);padding:var(--space-6);border:none;background:none;color:var(--muted);cursor:pointer;transition:background var(--dur-base) ease,color var(--dur-base) ease}.lp-mode-btn+.lp-mode-btn{border-left:1px solid var(--border)}.lp-mode-btn:hover{color:var(--text)}.lp-mode-btn.active{background:var(--border);color:var(--text)}.lp-theme-scale{display:grid;grid-template-columns:repeat(11,1fr);gap:2px}.lp-theme-swatch{height:1.4rem;border-radius:var(--r-sm)}.lp-theme-block{display:flex;flex-direction:column;gap:var(--space-5)}.lp-theme-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-7)}.lp-theme-name{font-size:var(--fs-2xs);letter-spacing:var(--ls-4);text-transform:uppercase;color:var(--muted)}.lp-theme-save{font-family:inherit;font-size:var(--fs-2xs);letter-spacing:var(--ls-1);padding:var(--space-3) var(--space-7);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2);color:var(--text);cursor:pointer;white-space:nowrap;transition:background var(--dur-base) ease}.lp-theme-save:hover{background:var(--border)}.lp-theme-save:active{transform:scale(.96)}.lp-theme-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-7);padding:var(--space-9) var(--space-11)}.lp-theme-card{border:1px solid;border-radius:var(--r-lg);padding:var(--space-8);display:flex;flex-direction:column;gap:var(--space-4)}.lp-theme-card-title{font-size:var(--fs-sm);font-weight:600}.lp-theme-card-body{font-size:var(--fs-xs);line-height:var(--lh-normal)}.lp-theme-card-link{font-size:var(--fs-xs);font-weight:600;margin-top:auto;text-decoration:underline;text-underline-offset:2px}.lp-hint{font-size:var(--fs-sm);line-height:var(--lh-normal);color:var(--muted)}.lp-alerts{margin:0 var(--space-11) var(--space-3);border:1px solid;border-radius:var(--r-lg);padding:var(--space-8) var(--space-9);display:flex;flex-direction:column;gap:var(--space-6)}.lp-alert{display:flex;align-items:flex-start;gap:var(--space-7);font-size:var(--fs-xs);line-height:var(--lh-normal)}.lp-alert-filled{padding:var(--space-6) var(--space-8);border-radius:var(--r-md)}.lp-alert-icon{flex:0 0 auto;font-weight:700}.lp-alert-text{flex:1 1 auto}.lp-states{display:flex;gap:var(--space-5);margin-top:var(--space-8)}.lp-state-chip{font-size:var(--fs-2xs);font-weight:600;padding:var(--space-3) var(--space-8);border-radius:var(--r-md);letter-spacing:var(--ls-1)}.kbd-help{position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-modal) + 20);display:flex;align-items:center;justify-content:center;padding:var(--space-14);visibility:hidden;transition:visibility 0s linear var(--dur-slow)}.kbd-help.show{visibility:visible;transition:visibility 0s}.kbd-help-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px);transition:background var(--dur-slow) ease,-webkit-backdrop-filter var(--dur-slow) ease,backdrop-filter var(--dur-slow) ease}.kbd-help.show .kbd-help-backdrop{background:#0000008c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.kbd-help-panel{position:relative;display:flex;flex-direction:column;width:100%;max-width:30rem;max-height:84vh;overflow:hidden;background:var(--ground);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-xl);opacity:0;transform:translateY(8px) scale(.99);transition:opacity var(--dur-slow) ease,transform var(--dur-slow) ease}.kbd-help.show .kbd-help-panel{opacity:1;transform:none}.kbd-help-head{flex:0 0 auto;padding:1.5rem 3.4rem 1.1rem 2.2rem;border-bottom:1px solid var(--border)}.kbd-help-title{margin:0;font-size:var(--fs-2xl);font-weight:600;line-height:var(--lh-tight);color:var(--text)}.kbd-help-list{margin:0;overflow-y:auto;overscroll-behavior:contain;min-height:0;display:flex;flex-direction:column;gap:var(--space-7);padding:1.6rem 2.2rem 2.2rem}.kbd-help-row{display:grid;grid-template-columns:8rem 1fr;gap:var(--space-9);align-items:center}.kbd-help-row dt{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.kbd-help-row dd{margin:0;font-size:var(--fs-xs);color:var(--muted)}.kbd-help-sep{color:var(--muted);font-size:var(--fs-2xs)}.kbd-help kbd{font-family:ui-monospace,monospace;font-size:var(--fs-2xs);line-height:1.5;min-width:1.6em;text-align:center;padding:var(--space-2) var(--space-5);border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);color:var(--text)}.cvd-snack{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + var(--space-13));transform:translate(-50%,.4rem);z-index:calc(var(--z-modal) + 5);padding:var(--space-5) var(--space-10);background:var(--surface2);color:var(--text);border:1px solid var(--border);border-radius:999px;font-size:var(--fs-2xs);letter-spacing:var(--ls-4);text-transform:uppercase;white-space:nowrap;box-shadow:0 4px 18px #00000052;opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--dur-base) ease,transform var(--dur-base) ease,visibility var(--dur-base)}.cvd-snack.show{opacity:1;visibility:visible;transform:translate(-50%)}#wheel:focus{outline:none}#wheel:focus-visible{outline:2px solid var(--text);outline-offset:3px;border-radius:50%}.lp-view-sublabel{margin:var(--space-10) 0 var(--space-3)}.lp-gallery{padding:var(--space-3) 0 0}.lp-cg-sec{padding:var(--space-10) var(--space-11);border-top:1px solid rgba(128,128,128,.14)}.lp-cg-sec:first-child{border-top:0}.lp-cg-h{font-size:var(--fs-2xs);letter-spacing:var(--ls-5);text-transform:uppercase;opacity:.6;margin-bottom:var(--space-8)}.lp-cg-row{display:grid;grid-template-columns:4.6rem repeat(4,1fr);gap:var(--space-5);align-items:center;margin-bottom:var(--space-5)}.lp-cg-head{margin-bottom:var(--space-7)}.lp-cg-rowlabel{font-size:var(--fs-xs);font-weight:600}.lp-cg-state{font-size:var(--fs-2xs);letter-spacing:var(--ls-3);text-transform:uppercase;opacity:.75;text-align:center}.lp-cg-cell{display:flex;justify-content:center}.lp-cg-btn{display:inline-block;border:1px solid transparent;border-radius:var(--r-md);padding:var(--space-4) var(--space-8);font-size:var(--fs-xs);font-weight:600;white-space:nowrap}.lp-cg-disabled{opacity:.6}.lp-cg-inputs{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-8)}.lp-cg-flabel{font-size:var(--fs-2xs);letter-spacing:var(--ls-2);text-transform:uppercase;margin-bottom:var(--space-3)}.lp-cg-input{border:1px solid;border-radius:var(--r-md);padding:var(--space-6) var(--space-7);font-size:var(--fs-xs)}.lp-cg-badges{display:flex;flex-wrap:wrap;gap:var(--space-6)}.lp-cg-badge{border:1px solid transparent;border-radius:var(--r-pill);padding:var(--space-2) var(--space-8);font-size:var(--fs-2xs);font-weight:600}.lp-cg-table{border:1px solid;border-radius:var(--r-lg);overflow:hidden}.lp-cg-tr{display:grid;grid-template-columns:1.4fr 1fr 1fr;border-top:1px solid}.lp-cg-tr:first-child{border-top:0}.lp-cg-thead{font-weight:700}.lp-cg-td{padding:var(--space-6) var(--space-8);font-size:var(--fs-xs);display:flex;align-items:center}.lp-cg-overlay{position:relative;border:1px solid;border-radius:var(--r-lg);height:8.5rem;overflow:hidden}.lp-cg-overlay-behind{position:absolute;top:0;right:0;bottom:0;left:0;padding:var(--space-10);display:flex;flex-direction:column;gap:var(--space-7)}.lp-cg-obar{height:.5rem;border-radius:var(--r-sm);opacity:.85}.lp-cg-scrim{position:absolute;top:0;right:0;bottom:0;left:0}.lp-cg-dialog{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:68%;border:1px solid;border-radius:var(--r-lg);padding:var(--space-9) var(--space-10);display:flex;flex-direction:column;gap:var(--space-5);box-shadow:0 6px 20px #00000059}.lp-cg-dtitle{font-size:var(--fs-sm);font-weight:700}.lp-cg-dbody{font-size:var(--fs-2xs);line-height:var(--lh-normal)}.lp-cg-dbtns{display:flex;gap:var(--space-6);justify-content:flex-end;margin-top:var(--space-3)}.lp-audit{margin-top:var(--space-9);display:flex;flex-direction:column;gap:var(--space-5)}.lp-audit-head{font-size:var(--fs-2xs);letter-spacing:var(--ls-3);text-transform:uppercase;color:var(--muted)}.lp-matrix{display:grid;gap:2px;align-items:stretch}.lp-matrix-corner{font-size:var(--fs-2xs);color:var(--muted);display:flex;align-items:center;white-space:nowrap}.lp-matrix-colh,.lp-matrix-rowh{display:flex;align-items:center;justify-content:center;gap:2px;font-size:var(--fs-2xs);color:var(--muted);font-variant-numeric:tabular-nums}.lp-matrix-dot{width:.5rem;height:.5rem;border-radius:var(--r-sm);border:1px solid var(--border);flex:none}.lp-matrix-cell{display:flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-1);border-radius:var(--r-sm);min-width:0;font-size:var(--fs-2xs);font-weight:700;font-variant-numeric:tabular-nums;background:var(--surface2)}.lp-check{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-8);font-size:var(--fs-xs)}.lp-check-label{color:var(--muted)}.lp-check-val{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.lp-v-pass{color:var(--pass)}.lp-matrix-cell.lp-v-pass{background:var(--pass-bg)}.lp-v-warn{color:var(--text)}.lp-v-fail{color:var(--error);opacity:.85}.lp-screen{border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column}.lp-btn{display:inline-block;border-radius:var(--r-md);padding:var(--space-5) var(--space-9);font-size:var(--fs-sm);font-weight:600;white-space:nowrap}.lp-btn-lg{padding:var(--space-7) var(--space-11);font-size:var(--fs-md)}.lp-btn-ghost{background:transparent!important;border:1px solid currentColor}.lp-nav{display:flex;align-items:center;gap:var(--space-9);padding:var(--space-9) var(--space-10)}.lp-brand-wrap{display:flex;align-items:center;gap:var(--space-7)}.lp-brand-dot{width:.7rem;height:.7rem;border-radius:var(--r-full);flex:none}.lp-brand{font-weight:700;font-size:var(--fs-lg);letter-spacing:var(--ls-1)}.lp-navlinks{display:flex;gap:var(--space-9);flex:1;margin-left:var(--space-6)}.lp-navlink{font-size:var(--fs-sm);white-space:nowrap}.lp-navright{display:flex;align-items:center;gap:var(--space-7)}.lp-search{font-size:var(--fs-xs);border:1px solid currentColor;border-radius:var(--r-pill);padding:var(--space-3) var(--space-9);opacity:.85}.lp-hero{padding:var(--space-12) var(--space-11) var(--space-12);display:flex;flex-direction:column;gap:var(--space-8)}.lp-eyebrow{align-self:flex-start;font-size:var(--fs-xs);letter-spacing:var(--ls-3);border:1px solid currentColor;border-radius:var(--r-pill);padding:var(--space-1) var(--space-8)}.lp-h1{font-size:var(--fs-xl);font-weight:700;line-height:var(--lh-snug);letter-spacing:-.01em}.lp-sub{font-size:var(--fs-md);line-height:var(--lh-normal);max-width:36ch}.lp-herobtns{display:flex;gap:var(--space-8);margin-top:var(--space-6)}.lp-shot{margin-top:var(--space-10);border-radius:var(--r-lg);overflow:hidden;box-shadow:0 8px 22px #0000002e}.lp-shot-bar{display:flex;gap:var(--space-5);padding:var(--space-7) var(--space-9)}.lp-shot-dot{width:.5rem;height:.5rem;border-radius:var(--r-full);opacity:.7}.lp-shot-body{padding:var(--space-2) var(--space-10) var(--space-11);display:flex;flex-direction:column;gap:var(--space-7)}.lp-shot-line{height:.45rem;border-radius:var(--r-sm);opacity:.85}.lp-trust{display:flex;align-items:center;gap:var(--space-10);padding:var(--space-8) var(--space-11);border-top:1px solid rgba(128,128,128,.15)}.lp-trust-label{font-size:var(--fs-2xs);letter-spacing:var(--ls-1);white-space:nowrap;opacity:.8}.lp-trust-marks{display:flex;gap:var(--space-9);flex:1;justify-content:space-around}.lp-trust-mark{font-size:var(--fs-md);font-weight:700;letter-spacing:var(--ls-1);opacity:.75}.lp-pricing{padding:var(--space-11) var(--space-11);display:flex;flex-direction:column;gap:var(--space-9)}.lp-price-head{display:flex;align-items:baseline;justify-content:space-between}.lp-price-plan{font-size:var(--fs-lg);font-weight:700;letter-spacing:var(--ls-1)}.lp-price-amt{font-size:var(--fs-lg);font-weight:700}.lp-price-feats{display:flex;flex-direction:column;gap:var(--space-4)}.lp-price-feat{font-size:var(--fs-sm)}.lp-btn-block{display:block;text-align:center;margin-top:var(--space-4)}.lp-news{padding:var(--space-11) var(--space-11);display:flex;flex-direction:column;gap:var(--space-8)}.lp-news-title{font-size:var(--fs-lg);font-weight:700}.lp-news-form{display:flex;gap:var(--space-7)}.lp-input{flex:1;font-size:var(--fs-sm);border:1px solid currentColor;border-radius:var(--r-md);padding:var(--space-6) var(--space-9);opacity:.9;white-space:nowrap;overflow:hidden}.lp-stats{display:flex;padding:var(--space-11) var(--space-9)}.lp-stat{flex:1;text-align:center}.lp-stat-num{font-size:var(--fs-xl);font-weight:700}.lp-stat-lab{font-size:var(--fs-2xs);letter-spacing:var(--ls-1);margin-top:var(--space-1);opacity:.9}.lp-quote{padding:var(--space-11) var(--space-11);display:flex;flex-direction:column;gap:var(--space-10)}.lp-quote-text{font-size:var(--fs-lg);line-height:var(--lh-normal);font-weight:500}.lp-person{display:flex;align-items:center;gap:var(--space-8)}.lp-avatar{width:1.5rem;height:1.5rem;border-radius:var(--r-full);flex:none}.lp-person-name{font-size:var(--fs-sm);font-weight:600}.lp-person-role{font-size:var(--fs-xs);opacity:.85}.lp-cta{padding:var(--space-12) var(--space-11);display:flex;flex-direction:column;gap:var(--space-7);align-items:flex-start}.lp-cta-title{font-size:var(--fs-lg);font-weight:700;line-height:var(--lh-snug)}.lp-cta-sub{font-size:var(--fs-sm)}.lp-cta .lp-btn{margin-top:var(--space-5)}.lp-footer{padding:var(--space-11) var(--space-11) var(--space-11);display:flex;flex-direction:column;gap:var(--space-11);border-top:1px solid rgba(128,128,128,.15)}.lp-footer-top{display:flex;gap:var(--space-11)}.lp-footer-brand{flex:1.4;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-7)}.lp-footer-tag{flex-basis:100%;font-size:var(--fs-xs);line-height:var(--lh-normal);opacity:.85;margin-top:var(--space-2)}.lp-footer-cols{display:flex;gap:var(--space-11);flex:1}.lp-footer-col{display:flex;flex-direction:column;gap:var(--space-5)}.lp-footer-head{font-size:var(--fs-2xs);letter-spacing:var(--ls-4);text-transform:uppercase;margin-bottom:var(--space-1)}.lp-footer-link{font-size:var(--fs-xs)}.lp-palette{display:flex;gap:var(--space-11);padding-top:var(--space-10);border-top:1px solid rgba(128,128,128,.15)}.lp-palette-standalone{margin-top:var(--space-10);padding:var(--space-10) var(--space-3) 0}.lp-palette-standalone .lp-pal-label{color:var(--muted)}.lp-pal-group{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-5)}.lp-pal-label{font-size:var(--fs-2xs);letter-spacing:var(--ls-4);text-transform:uppercase}.lp-pal-swatches{display:flex;flex-wrap:wrap;gap:var(--space-4)}.lp-pal-swatch{width:1.35rem;height:1.15rem;border-radius:var(--r-md);flex:none;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--fs-2xs);background:var(--surface2);border:1px solid var(--border)}.lp-pal-swatch-fill{font-size:0;border:1px solid rgba(128,128,128,.25)}.lp-copy{font-size:var(--fs-2xs);opacity:.8}.lp-btn{cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform var(--dur-fast) ease,filter var(--dur-base) ease,box-shadow var(--dur-base) ease}.lp-btn:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 3px 10px #00000029}.lp-btn:active{transform:translateY(0) scale(.97);filter:brightness(.95);box-shadow:none}.lp-navlink,.lp-footer-link{cursor:pointer;transition:opacity var(--dur-base) ease}.lp-navlink:hover,.lp-footer-link:hover{opacity:1;text-decoration:underline;text-underline-offset:2px}.lp-brand-wrap{cursor:pointer;transition:transform var(--dur-fast) ease}.lp-brand-wrap:active{transform:scale(.96)}.lp-search,.lp-input{cursor:text;transition:filter var(--dur-base) ease,box-shadow var(--dur-base) ease}.lp-search:hover,.lp-input:hover{filter:brightness(1.1)}.lp-search:active,.lp-input:active{box-shadow:0 0 0 2px currentColor inset}.lp-trust-mark{cursor:pointer;transition:opacity var(--dur-base) ease}.lp-trust-mark:hover{opacity:1}.lp-pal-swatch{cursor:pointer;transition:transform var(--dur-fast) ease}.lp-pal-swatch:hover{transform:scale(1.14)}@media (max-width: 640px){.settings-panel{position:fixed;top:var(--pop-top, 3rem);left:.75rem;right:.75rem;width:auto;max-width:none;margin:0;box-shadow:var(--shadow-lg)}}.sg-hs{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8)}.sg-hs-label{font-size:var(--fs-sm);color:var(--muted)}.sg-seed{display:flex;align-items:center;gap:var(--space-7);font-size:var(--fs-sm);color:var(--muted)}.sg-seed-dot{width:1rem;height:1rem;border-radius:var(--r-sm);border:1px solid var(--border);flex:none}.sg-seed-txt{font-variant-numeric:tabular-nums}.sg-label{font-size:var(--fs-2xs);letter-spacing:var(--ls-4);text-transform:uppercase;color:var(--muted)}.sg-scale{display:grid;grid-template-columns:repeat(11,1fr);gap:2px}.sg-swatch{position:relative;height:2.6rem;border:none;border-radius:var(--r-md);cursor:pointer;padding:0;display:flex;align-items:flex-end;justify-content:center;transition:transform var(--dur-base) ease}.sg-swatch-step{font-size:var(--fs-2xs);font-weight:700;padding-bottom:var(--space-2);opacity:.9}.sg-themes{display:flex;gap:var(--space-9)}.sg-theme{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-7)}.sg-theme-name{font-size:var(--fs-2xs);letter-spacing:var(--ls-4);text-transform:uppercase;color:var(--muted)}.sg-ui{border:1px solid;border-radius:var(--r-lg);padding:var(--space-8)}.sg-ui-surface{border:1px solid;border-radius:var(--r-md);padding:var(--space-9);display:flex;flex-direction:column;gap:var(--space-5)}.sg-ui-title{font-size:var(--fs-lg);font-weight:700;line-height:var(--lh-tight)}.sg-ui-body{font-size:var(--fs-xs);line-height:var(--lh-normal)}.sg-ui-muted{font-size:var(--fs-2xs)}.sg-ui-btn{align-self:flex-start;margin-top:var(--space-2);font-size:var(--fs-xs);font-weight:600;padding:var(--space-5) var(--space-9);border-radius:var(--r-md)}.sg-checks{display:flex;flex-direction:column;gap:var(--space-2)}.sg-check{display:flex;justify-content:space-between;font-size:var(--fs-2xs)}.sg-check-label{color:var(--muted);letter-spacing:var(--ls-1)}.sg-check-val{font-variant-numeric:tabular-nums;font-weight:600}.sg-check.pass .sg-check-val{color:var(--pass)}.sg-check.fail .sg-check-val{color:var(--error)}.sg-export{display:flex;flex-direction:column;gap:var(--space-7)}.settings-theme-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8)}.settings-theme-btns{display:flex;border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden}.settings-theme-btn{background:none;border:none;color:var(--muted);cursor:pointer;font-family:inherit;font-size:var(--fs-sm);letter-spacing:var(--ls-5);padding:var(--space-3) var(--space-10);text-transform:uppercase;transition:background var(--dur-base),color var(--dur-base),transform var(--dur-fast)}.settings-theme-btn+.settings-theme-btn{border-left:1px solid var(--border)}.settings-theme-btn:hover{background:var(--surface2);color:var(--text)}.settings-theme-btn:active{transform:scale(.93)}.settings-theme-btn.active{background:var(--border);color:var(--text)}.contrast-lock-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-6) var(--space-10);margin:var(--space-9) 0 var(--space-3)}.contrast-lock-btns{flex-shrink:0}.contrast-lock-btns[hidden]{display:none}@media (max-width: 639px){.contrast-lock-row{gap:var(--space-7)}.contrast-lock-btn{padding:var(--space-3) var(--space-7);font-size:var(--fs-xs);letter-spacing:var(--ls-2)}}@media (max-width: 480px){.contrast-lock-row{gap:var(--space-5)}.contrast-lock-btn{padding:var(--space-2) var(--space-6);font-size:var(--fs-2xs)}.contrast-lock-error{font-size:var(--fs-xs)}}.contrast-lock-btns{display:inline-flex;border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden}.contrast-lock-btn{background:none;border:none;color:var(--muted);cursor:pointer;font-family:inherit;font-size:var(--fs-sm);letter-spacing:var(--ls-5);padding:var(--space-3) var(--space-10);text-transform:uppercase;transition:background var(--dur-base),color var(--dur-base),transform var(--dur-fast)}.contrast-lock-btn+.contrast-lock-btn{border-left:1px solid var(--border)}.preview-apca-fontctrl{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-5)}.apca-font-select-wrap{position:relative;display:inline-flex;align-items:center}.apca-font-select-wrap:after{content:"";position:absolute;right:.42rem;top:50%;width:.34rem;height:.34rem;border-right:1.5px solid var(--text);border-bottom:1.5px solid var(--text);transform:translateY(-70%) rotate(45deg);pointer-events:none}.apca-font-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text);font-family:inherit;font-size:var(--fs-xs);padding:var(--space-2) var(--space-12) var(--space-2) var(--space-6);cursor:pointer;outline:none}.apca-font-select:focus{border-color:var(--muted)}.apca-type-controls{display:flex;align-items:center;gap:var(--space-5);flex-shrink:0}.apca-type-controls[hidden]{display:none}.apca-type-readout{font-size:var(--fs-xs);color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.contrast-lock-btn:hover{background:var(--surface2);color:var(--text)}.contrast-lock-btn:active{transform:scale(.93)}.contrast-lock-btn.active{background:var(--border);color:var(--text)}.contrast-lock-row.has-error .contrast-lock-btns:not(.contrast-lock-mode) .contrast-lock-btn.active{background:var(--error);color:#fff}.contrast-lock-error{font-size:var(--fs-sm);letter-spacing:var(--ls-2);color:var(--error);flex:1 1 0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-panel-label{font-size:var(--fs-xs);letter-spacing:var(--ls-6);text-transform:uppercase;color:var(--muted);padding-bottom:var(--space-8);border-bottom:1px solid var(--border)}.settings-row{display:grid;grid-template-columns:.9rem 1fr 4.5ch;gap:var(--space-7);align-items:center}.settings-row-label{font-size:var(--fs-sm);letter-spacing:var(--ls-5);text-transform:uppercase;color:var(--muted)}.settings-row .settings-row-label{font-size:var(--fs-sm);letter-spacing:normal;text-transform:none;text-align:right}.settings-row-val{font-size:var(--fs-sm);font-variant-numeric:tabular-nums;font-family:ui-monospace,monospace;color:var(--text);text-align:right}#ui-brightness-slider{background-image:linear-gradient(to right,#000,#fff)!important}#ui-hue-slider{background-image:linear-gradient(to right,#dd3c3c,#dd8c3c,#dddd3c,#8cdd3c,#3cdd3c,#3cdd8c,#3cdddd,#3c8cdd,#3c3cdd,#8c3cdd,#dd3cdd,#dd3c8c,#dd3c3c)!important}.settings-btns{display:flex;justify-content:flex-end;gap:var(--space-7)}.settings-reset-btn{background:none;border:1px solid var(--border);border-radius:var(--r-sm);color:var(--muted);cursor:pointer;font-family:inherit;font-size:var(--fs-xs);letter-spacing:var(--ls-5);padding:var(--space-4) var(--space-10);text-transform:uppercase;transition:border-color var(--dur-base),color var(--dur-base),transform var(--dur-fast)}@media (hover: hover){.settings-reset-btn:hover{border-color:var(--muted);color:var(--text)}}.settings-reset-btn:active{transform:scale(.93)}.settings-divider{border-top:1px solid var(--border);margin:var(--space-6) 0}.underlay-picker{display:flex;flex-direction:column;gap:var(--space-7);margin-top:var(--space-6)}.underlay-top{display:flex;align-items:center;gap:var(--space-8)}.underlay-swatch{width:1.6rem;height:1.6rem;flex:none;border-radius:var(--r-md);border:1px solid var(--border);background:#fff}.underlay-tabs{flex:1}.underlay-sliders{display:flex;flex-direction:column}.underlay-hexwrap{align-self:flex-start}.settings-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8)}.toggle-switch{position:relative;display:inline-block;cursor:pointer;flex-shrink:0;line-height:0;transition:opacity var(--dur-slow)}@media (hover: hover){.toggle-switch:hover{opacity:.82}}.toggle-switch input{position:absolute;opacity:0;width:0;height:0}.toggle-track{display:inline-block;width:2rem;height:1rem;background:var(--border);border-radius:var(--r-lg);border:1px solid var(--muted);position:relative;transition:background var(--dur-slow) ease,border-color var(--dur-slow) ease}.toggle-thumb{position:absolute;top:.125rem;left:.125rem;width:.625rem;height:.625rem;background:var(--text);border-radius:var(--r-full);transition:transform var(--dur-slow) cubic-bezier(.34,1.15,.64,1),background var(--dur-slow) ease}.toggle-switch input:checked+.toggle-track{background:var(--text);border-color:transparent}.toggle-switch input:checked+.toggle-track .toggle-thumb{transform:translate(1rem);background:var(--ground)}.toggle-switch:focus-within .toggle-track{outline:2px solid var(--accent);outline-offset:2px}@media (max-width: 1099px){#app-wrapper{padding:var(--space-11) var(--space-13)}.app-body{--wheel-col: 300px;gap:var(--space-12)}.wheel-wrap,#wheel,#overlay{width:300px;height:300px}}@media (max-width: 860px){.app-body{grid-template-columns:1fr}.col-left{align-items:stretch}.col-right{width:100%;align-items:stretch}.contrast-section,.preview-tiles{width:100%}.wheel-wrap{align-self:center}.swatch-data-row{flex-direction:row;align-items:stretch;gap:var(--space-10)}.swatch-col{flex:1}.swatch{height:auto;flex:1;min-height:60px}.data-grid{flex:1.6}.preview-display{font-size:var(--fs-3xl)}.custom-color-subgroups{grid-template-columns:1fr 1fr}}@media (max-width: 639px){#app-wrapper{padding:var(--space-12) var(--space-11) var(--space-14);gap:var(--space-12)}.wheel-wrap,#wheel,#overlay{width:300px;height:300px}.preview-display{font-size:var(--fs-2xl)}.preview-tile{padding:var(--space-11) var(--space-11);gap:var(--space-6)}}@media (max-width: 520px){.custom-panel,.custom-color-subgroups{grid-template-columns:1fr}.custom-wheel-col{display:grid;grid-template-columns:80px 1fr;grid-template-rows:1fr auto;gap:var(--space-7) var(--space-10);align-items:stretch}.custom-wheel-canvas{width:80px;height:80px;min-width:80px;min-height:80px;grid-row:1 / 3}.custom-mini-swatch{width:100%;height:auto}.preview-body{font-size:var(--fs-lg)}.preview-small{font-size:var(--fs-sm)}.header-right{gap:var(--space-9)}}@media (max-width: 400px){#app-wrapper{padding:var(--space-11) var(--space-10) var(--space-13)}.preview-tiles{grid-template-columns:1fr}.app-version{font-size:var(--fs-xs);letter-spacing:var(--ls-3)}.header-right{gap:var(--space-6)}.wordmark{letter-spacing:var(--ls-6)}}@media (min-width: 861px){.app-body{container-type:inline-size;--wheel-col: clamp(260px, 28cqw, 600px)}.wheel-wrap,#wheel,#overlay{width:var(--wheel-col);height:var(--wheel-col)}#app-wrapper{min-height:0}body{display:flex;flex-direction:column;justify-content:safe center;min-height:100vh;min-height:100dvh}}
