:root{--font-main: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "Courier New", Courier, monospace;--bg-app: #f8fafc;--bg-card: rgba(255, 255, 255, .75);--bg-card-hover: rgba(255, 255, 255, .9);--bg-input: #ffffff;--border-subtle: rgba(0, 0, 0, .06);--border-medium: rgba(0, 0, 0, .1);--border-focus: rgba(79, 70, 229, .5);--text-main: #0f172a;--text-muted: #475569;--text-dark: #94a3b8;--color-primary: #4f46e5;--color-primary-glow: rgba(79, 70, 229, .08);--color-secondary: #9333ea;--color-cyan: #0891b2;--color-success: #059669;--color-success-bg: rgba(16, 185, 129, .06);--color-success-border: rgba(16, 185, 129, .18);--color-warning: #d97706;--color-warning-bg: rgba(217, 119, 6, .06);--color-warning-border: rgba(217, 119, 6, .18);--color-danger: #e11d48;--color-danger-bg: rgba(225, 29, 72, .05);--color-danger-border: rgba(225, 29, 72, .18);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .02);--shadow-md: 0 10px 30px rgba(0, 0, 0, .03), 0 1px 3px rgba(0, 0, 0, .01);--shadow-lg: 0 20px 45px rgba(0, 0, 0, .06);--shadow-glow: 0 0 20px rgba(79, 70, 229, .06);--transition-fast: all .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: all .3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-main);background-color:var(--bg-app);background-image:radial-gradient(at 0% 0%,rgba(99,102,241,.07) 0px,transparent 45%),radial-gradient(at 100% 0%,rgba(168,85,247,.05) 0px,transparent 45%),radial-gradient(at 50% 100%,rgba(6,182,212,.04) 0px,transparent 50%);background-attachment:fixed;color:var(--text-main);min-height:100vh;line-height:1.6;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-app)}::-webkit-scrollbar-thumb{background:#0000001a;border-radius:9999px;border:2px solid var(--bg-app)}::-webkit-scrollbar-thumb:hover{background:#0003}.app-wrapper{flex:1;max-width:1400px;width:100%;margin:0 auto;padding:2.5rem 1.5rem;display:flex;flex-direction:column;gap:2.25rem}.app-header-grid{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center}.header-left h1{font-size:2.75rem;font-weight:800;letter-spacing:-.04em;background:linear-gradient(135deg,#7c3aed,#4f46e5,#0891b2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.5rem;line-height:1.1;filter:drop-shadow(0 1px 4px rgba(79,70,229,.1))}.header-left p{color:var(--text-muted);font-size:1.05rem;font-weight:500;max-width:780px}.header-right{display:flex;justify-content:flex-end;align-items:center}@media (max-width: 900px){.app-header-grid{grid-template-columns:1fr;text-align:center}.header-left p{margin:0 auto}.header-right{justify-content:center;margin-top:-.5rem}}.panel{background:var(--bg-card);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-subtle);border-radius:24px;padding:1.25rem;box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:1rem;transition:var(--transition-normal);position:relative;overflow:hidden}.panel:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent)}.panel:hover{border-color:var(--border-medium);box-shadow:var(--shadow-lg),0 0 20px #4f46e505}.panel h2{font-size:1.2rem;font-weight:700;color:var(--text-main);border-bottom:1px solid var(--border-subtle);padding-bottom:.5rem;margin-bottom:.25rem;display:flex;align-items:center;gap:.625rem}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;align-items:start}.dashboard-column{display:flex;flex-direction:column;gap:1.25rem}@media (max-width: 1024px){.dashboard-grid{grid-template-columns:1fr}}.main-navigation-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:.625rem;background:#fff9;border:1px solid var(--border-subtle);padding:.5rem;border-radius:18px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm)}.nav-tab-btn{padding:.75rem 1.25rem;font-size:.875rem;font-weight:700;border-radius:14px;border:1px solid transparent;background:transparent;cursor:pointer;color:var(--text-muted);transition:var(--transition-normal);display:flex;align-items:center;gap:.5rem}.nav-tab-btn:hover{color:var(--text-main);background:#00000005}.nav-tab-btn.active{background:#fff;color:var(--color-primary);border-color:#4f46e526;box-shadow:0 4px 12px #4f46e514}.color-inputs-container{display:flex;flex-direction:column;gap:.75rem}.color-input-group{display:flex;flex-direction:column;gap:.35rem}.color-input-group label{font-size:.75rem;font-weight:800;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.picker-input-wrapper{display:flex;gap:.875rem;align-items:center}.color-swatch-picker{position:relative;width:52px;height:52px;border-radius:14px;overflow:hidden;border:1.5px solid rgba(0,0,0,.08);box-shadow:var(--shadow-sm);cursor:pointer;transition:var(--transition-fast);flex-shrink:0}.color-swatch-picker:hover{transform:scale(1.06);border-color:#00000026}.color-swatch-picker input[type=color]{position:absolute;top:-8px;left:-8px;width:68px;height:68px;padding:0;border:none;cursor:pointer;background:none}.text-input-field{flex:1;background:var(--bg-input);border:1px solid var(--border-medium);border-radius:14px;color:var(--text-main);padding:.9rem 1.15rem;font-family:var(--font-mono);font-size:.95rem;font-weight:500;transition:var(--transition-normal);box-shadow:inset 0 1px 2px #00000005}.text-input-field::placeholder{color:var(--text-dark)}.text-input-field:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px var(--color-primary-glow),var(--shadow-glow)}.text-input-field.input-error{border-color:var(--color-danger);box-shadow:0 0 0 3px #e11d481f}.input-error-msg{font-size:.75rem;color:var(--color-danger);margin-top:.125rem;display:flex;align-items:center;gap:.375rem;font-weight:600}.adjuster-widget{background:#00000005;border:1px solid var(--border-subtle);border-radius:16px;padding:1rem;margin-top:.25rem}.adjuster-tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--border-subtle);padding-bottom:.75rem;margin-bottom:.875rem}.adjuster-tab-btn{padding:.35rem .75rem;font-size:.75rem;font-weight:700;border-radius:8px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;transition:var(--transition-fast)}.adjuster-tab-btn:hover{color:var(--text-main)}.adjuster-tab-btn.active{background:#fff;color:var(--color-primary);box-shadow:var(--shadow-sm)}.rgb-adjusters-container{display:flex;flex-direction:column;gap:.45rem}.rgb-slider-row{display:grid;grid-template-columns:24px 1fr 44px;gap:.45rem;align-items:center}.rgb-slider-label{font-size:.75rem;font-weight:800;text-align:center;border-radius:6px;padding:.15rem 0}.label-red{background:#f43f5e1a;color:#e11d48}.label-green{background:#10b9811a;color:#059669}.label-blue{background:#3b82f61a;color:#2563eb}.label-alpha{background:#0000000d;color:var(--text-muted)}.label-hue{background:linear-gradient(135deg,#ef4444,#3b82f6);color:#fff}.label-saturation{background:#a855f71a;color:#7c3aed}.label-lightness{background:#00000014;color:#1e293b}.label-chroma{background:#06b6d41a;color:#0891b2}.label-chroma-ok{background:#14b8a61a;color:#0d9488}.rgb-slider-val{font-size:.75rem;font-weight:700;font-family:var(--font-mono);color:var(--text-muted);text-align:right}.rgb-range-slider{-webkit-appearance:none;width:100%;height:6px;border-radius:9999px;outline:none;background:#0000000f;transition:var(--transition-fast)}.rgb-range-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:#fff;border:2px solid #cbd5e1;cursor:pointer;box-shadow:0 1px 3px #00000026;transition:transform .1s ease}.rgb-range-slider::-webkit-slider-thumb:hover{transform:scale(1.2);border-color:var(--color-primary)}.rgb-range-slider::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#fff;border:2px solid #cbd5e1;cursor:pointer;box-shadow:0 1px 3px #00000026;transition:transform .1s ease}.rgb-range-slider::-moz-range-thumb:hover{transform:scale(1.2);border-color:var(--color-primary)}.slider-red{background:linear-gradient(to right,#f43f5e14,#f43f5ed9)}.slider-green{background:linear-gradient(to right,#10b98114,#10b981d9)}.slider-blue{background:linear-gradient(to right,#3b82f614,#3b82f6d9)}.slider-hue{background:linear-gradient(to right,#ef4444,#eab308,#22c55e,#06b6d4,#3b82f6,#a855f7,#ef4444)}.slider-saturation{background:linear-gradient(to right,#00000008,#a855f7)}.slider-lightness{background:linear-gradient(to right,#000,#888,#fff)}.presets-section{margin-top:.75rem;border-top:1px dashed var(--border-subtle);padding-top:.75rem}.presets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.5rem;margin-top:.5rem}.preset-chip{display:flex;align-items:center;gap:.625rem;padding:.5rem .75rem;border-radius:12px;background:#ffffffb3;border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;transition:var(--transition-normal);text-align:left}.preset-chip:hover{background:#fff;border-color:#4f46e540;color:var(--text-main);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.preset-split-preview{display:flex;width:28px;height:28px;border-radius:8px;overflow:hidden;border:1px solid rgba(0,0,0,.06);flex-shrink:0}.preset-color-block{flex:1;height:100%}.preset-info{font-size:.75rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ratio-panel{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2.25rem 2rem;border-radius:20px;background:linear-gradient(135deg,#fff,#f8fafccc);border:1px solid var(--border-subtle);position:relative;overflow:hidden;box-shadow:inset 0 1px 3px #ffffffe6}.ratio-panel:before{content:"";position:absolute;width:150px;height:150px;background:var(--color-primary-glow);filter:blur(50px);top:-50px;z-index:0}.ratio-label{font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.5rem;z-index:1}.ratio-value-big{font-size:5rem;font-weight:800;letter-spacing:-.04em;line-height:1;margin-bottom:.5rem;z-index:1;font-feature-settings:"tnum"}.ratio-value-big.ratio-pass{color:var(--color-success);text-shadow:0 2px 12px rgba(16,185,129,.18)}.ratio-value-big.ratio-fail{color:var(--color-danger);text-shadow:0 2px 12px rgba(225,29,72,.15)}.checklist-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.875rem;width:100%}@media (max-width: 600px){.checklist-grid{grid-template-columns:1fr}}.check-card{padding:1.15rem 1rem;border-radius:16px;background:#ffffff80;border:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:.625rem;align-items:center;text-align:center;transition:var(--transition-normal)}.check-card.pass{border-color:var(--color-success-border);background:var(--color-success-bg)}.check-card.fail{border-color:var(--color-danger-border);background:var(--color-danger-bg)}.check-card .badge{font-size:.7rem;font-weight:800;padding:.25rem .625rem;border-radius:9999px;text-transform:uppercase;letter-spacing:.02em}.check-card.pass .badge{background:#10b9811f;color:var(--color-success)}.check-card.fail .badge{background:#e11d481a;color:var(--color-danger)}.check-card .title{font-size:.9rem;font-weight:700;color:var(--text-main)}.check-card .req{font-size:.725rem;color:var(--text-muted);font-weight:500}.suggestion-engine-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:20px;padding:1.75rem;display:flex;flex-direction:column;gap:1.25rem}.card-header-row{display:flex;justify-content:space-between;align-items:center;gap:1rem}.card-header-row h3{font-size:1.15rem;font-weight:700;color:var(--text-main);display:flex;align-items:center;gap:.5rem}.card-tag{font-size:.65rem;font-weight:800;color:var(--color-cyan);background:#06b6d414;border:1px solid rgba(6,182,212,.2);padding:.2rem .5rem;border-radius:6px;text-transform:uppercase;letter-spacing:.05em}.card-desc{font-size:.85rem;color:var(--text-muted);line-height:1.5}.controls-row{display:flex;flex-wrap:wrap;gap:1.25rem;border-bottom:1px solid var(--border-subtle);padding-bottom:1.25rem}.control-group{display:flex;flex-direction:column;gap:.5rem}.control-label{font-size:.725rem;font-weight:800;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.toggle-container{display:flex;background:#00000008;border:1px solid var(--border-subtle);padding:.25rem;border-radius:10px}.toggle-btn{padding:.45rem .875rem;font-size:.75rem;font-weight:700;border-radius:8px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;transition:var(--transition-fast);white-space:nowrap}.toggle-btn:hover{color:var(--text-main)}.toggle-btn.active{background:#fff;color:var(--text-main);box-shadow:var(--shadow-sm)}.suggestions-list{display:flex;flex-direction:column;gap:1rem;margin-top:.5rem}.suggestion-item{display:flex;justify-content:space-between;align-items:center;background:#00000004;border:1px solid var(--border-subtle);border-radius:16px;padding:1.25rem;gap:1.5rem;transition:var(--transition-normal)}.suggestion-item:hover{background:#fff;border-color:var(--border-medium);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.suggestion-info{display:flex;flex-direction:column;gap:.75rem;flex:1}.suggestion-title-row{display:flex;flex-direction:column;gap:.25rem}.suggestion-title-text{font-size:.875rem;font-weight:700;color:var(--text-main)}.suggestion-subtitle-text{font-size:.725rem;color:var(--text-muted)}.color-preview-bar{display:flex;align-items:center;gap:.75rem}.color-val-label{padding:.4rem .875rem;font-size:.8rem;font-weight:700;border-radius:6px;border:1px solid var(--border-subtle);min-width:60px;text-align:center}.color-hex-badge{font-family:var(--font-mono);font-size:.75rem;font-weight:700;color:var(--text-main);background:#00000008;padding:.35rem .625rem;border-radius:6px}.color-hex-pair{display:flex;gap:.5rem}.metrics-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.metric-item{font-size:.75rem;color:var(--text-muted)}.metric-item strong{color:var(--text-main);font-weight:700}.de-badge{font-size:.7rem;font-weight:700;padding:.2rem .5rem;border-radius:6px}.de-identical{background:#10b98114;color:#059669}.de-excellent{background:#06b6d414;color:#0891b2}.de-good{background:#4f46e514;color:#4f46e5}.de-moderate{background:#f59e0b14;color:#d97706}.de-large{background:#e11d4814;color:#e11d48}.suggestion-actions{display:flex;gap:.5rem;align-items:center}.action-btn{padding:.5rem .875rem;font-size:.75rem;font-weight:700;border-radius:8px;cursor:pointer;transition:var(--transition-fast)}.secondary-action{background:transparent;border:1px solid var(--border-subtle);color:var(--text-muted)}.secondary-action:hover{border-color:var(--border-medium);color:var(--text-main);background:#00000005}.primary-action{background:var(--color-primary);border:1px solid transparent;color:#fff}.primary-action:hover{background:#4f46e5;box-shadow:0 4px 10px #4f46e526;transform:translateY(-1px)}.suggestion-success-alert{background:#10b9810d;border:1px solid rgba(16,185,129,.15);color:#059669;border-radius:12px;padding:.875rem 1rem;font-size:.8rem;font-weight:600;line-height:1.4}.compare-panel-container{border-top:1px dashed var(--border-subtle);padding-top:1.5rem;margin-top:.5rem;display:flex;flex-direction:column;gap:1rem}.compare-header{display:flex;justify-content:space-between;align-items:center}.compare-header h4{font-size:.825rem;font-weight:800;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin:0}.compare-close-btn{background:transparent;border:none;font-size:.875rem;cursor:pointer;color:var(--text-muted);transition:var(--transition-fast)}.compare-close-btn:hover{color:var(--text-main)}.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.compare-item-card{border:1px solid var(--border-subtle);border-radius:16px;padding:1.25rem;position:relative;overflow:hidden;min-height:180px;display:flex;flex-direction:column;justify-content:space-between}.compare-badge{position:absolute;top:10px;right:10px;font-size:.65rem;font-weight:800;text-transform:uppercase;padding:.2rem .5rem;border-radius:6px;box-shadow:var(--shadow-sm)}.badge-before{background:#f1f5f9;color:#475569;border:1px solid #cbd5e1}.badge-after{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.mockup-content{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem}.mockup-header{font-size:.85rem;font-weight:800}.mockup-text{font-size:.75rem;line-height:1.45;opacity:.85}.mockup-btn{align-self:flex-start;padding:.45rem 1rem;font-size:.725rem;font-weight:700;border-radius:6px;border-width:1px;border-style:solid;cursor:pointer;margin-top:.25rem}@media (max-width: 640px){.suggestion-item{flex-direction:column;align-items:stretch;gap:1rem}.suggestion-actions{justify-content:flex-end}.compare-grid{grid-template-columns:1fr}}.simulator-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:20px;padding:1.75rem;display:flex;flex-direction:column;gap:1.25rem;margin-top:1rem}.simulator-header-row{display:flex;justify-content:space-between;align-items:center;gap:1rem}.simulator-header-row h3{font-size:1.15rem;font-weight:700;color:var(--text-main);display:flex;align-items:center;gap:.5rem}.sim-tabs-container{display:flex;flex-wrap:wrap;gap:.375rem;background:#00000008;border:1px solid var(--border-subtle);padding:.25rem;border-radius:10px}.sim-tab-btn{padding:.45rem .875rem;font-size:.75rem;font-weight:700;border-radius:8px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;transition:var(--transition-fast)}.sim-tab-btn:hover{color:var(--text-main)}.sim-tab-btn.active{background:#fff;color:var(--text-main);box-shadow:var(--shadow-sm)}.mode-desc-alert{background:#4f46e50a;border:1px solid rgba(79,70,229,.1);color:#4f46e5;border-radius:10px;padding:.625rem .875rem;font-size:.75rem;line-height:1.4;font-weight:500}.sim-normal{filter:none}.sim-protanopia{filter:url(#protanopia)}.sim-deuteranopia{filter:url(#deuteranopia)}.sim-tritanopia{filter:url(#tritanopia)}.sim-achromatopsia{filter:url(#achromatopsia)}.sim-preview-box{border-radius:16px;padding:1.75rem;border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);position:relative;transition:var(--transition-normal)}.sim-preview-badge{position:absolute;top:10px;right:12px;font-size:.65rem;font-weight:800;text-transform:uppercase;opacity:.45;letter-spacing:.05em}.preview-elements-grid{display:flex;flex-direction:column;gap:1.25rem}.sim-preview-heading{font-size:1.15rem;font-weight:800;letter-spacing:-.02em;margin-bottom:.25rem}.sim-preview-paragraph{font-size:.85rem;line-height:1.5;opacity:.85}.sim-preview-alert{border-width:1px;border-style:solid;border-radius:10px;padding:.75rem 1rem;font-size:.775rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.preview-interactive-controls{display:flex;flex-direction:column;gap:1rem;border-top:1px dashed rgba(0,0,0,.06);padding-top:1rem}.sim-input-group{display:flex;flex-direction:column;gap:.375rem}.sim-input-label{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;opacity:.7}.sim-mock-input{width:100%;padding:.5rem .75rem;border-width:1px;border-style:solid;border-radius:8px;font-size:.775rem;background:transparent;outline:none;font-weight:500}.sim-actions-badges-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.sim-preview-btn{padding:.5rem 1rem;font-size:.75rem;font-weight:700;border-radius:8px;border-width:1.5px;border-style:solid;cursor:pointer;background:transparent;transition:var(--transition-fast)}.sim-preview-btn:hover{transform:translateY(-1.5px);opacity:.95}.sim-preview-pill{font-size:.65rem;font-weight:800;text-transform:uppercase;padding:.25rem .625rem;border-radius:9999px;border-width:1.5px;border-style:solid;letter-spacing:.02em}.audit-dashboard-grid{display:grid;grid-template-columns:310px 1fr;gap:2rem;align-items:start}@media (max-width: 1024px){.audit-dashboard-grid{grid-template-columns:1fr}}.audit-sidebar{display:flex;flex-direction:column;gap:1.25rem;position:sticky;top:2rem}.palette-inputs-stack{display:flex;flex-direction:column;gap:.875rem}.palette-input-item{display:flex;flex-direction:column;gap:.375rem}.role-label-text{font-size:.7rem;font-weight:800;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.text-input-compact{padding:.5rem .75rem;font-size:.85rem;font-family:var(--font-mono);background:var(--bg-input);border:1px solid var(--border-medium);border-radius:10px;color:var(--text-main);outline:none;transition:var(--transition-fast)}.text-input-compact:focus{border-color:var(--border-focus)}.audit-export-actions{display:flex;flex-direction:column;gap:.625rem;margin-top:.75rem;border-top:1px solid var(--border-subtle);padding-top:1.25rem}.full-width-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;border-radius:12px;font-size:.875rem;font-weight:700;border:1px solid transparent;background:var(--color-primary);color:#fff;cursor:pointer;transition:var(--transition-fast)}.full-width-btn:hover{background:#4f46e5;transform:translateY(-1.5px);box-shadow:0 4px 10px #4f46e526}.audit-notification-alert{background:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success);font-size:.75rem;font-weight:700;padding:.625rem .875rem;border-radius:10px;text-align:center;margin-top:.5rem;animation:fadeIn .2s ease}.audit-main-content{display:flex;flex-direction:column;gap:2rem}.matrix-panel{display:flex;flex-direction:column;gap:1rem}.matrix-header-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.matrix-scroll-wrapper{overflow-x:auto;border-radius:16px;border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);background:#fff9}.matrix-table{width:100%;border-collapse:separate;border-spacing:0}.sticky-corner{position:sticky;left:0;top:0;z-index:10;background:#f1f5f9;font-size:.7rem;font-weight:800;color:var(--text-muted);text-transform:uppercase;border-right:2px solid var(--border-medium);border-bottom:2px solid var(--border-medium);padding:1rem;text-align:left}.sticky-row-header{position:sticky;left:0;z-index:5;background:#f1f5f9;border-right:2px solid var(--border-medium);border-bottom:1px solid var(--border-subtle);padding:.75rem 1rem;text-align:left;font-weight:700;font-size:.8rem;text-transform:capitalize}.sticky-col-header{position:sticky;top:0;z-index:5;background:#f1f5f9;border-bottom:2px solid var(--border-medium);border-right:1px solid var(--border-subtle);padding:.75rem;text-align:center;font-weight:700;font-size:.8rem;text-transform:capitalize}.matrix-cell{border-right:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);padding:.75rem;text-align:center;cursor:pointer;transition:var(--transition-fast)}.matrix-cell:hover{background:#00000005}.matrix-cell.selected{outline:2px solid var(--color-primary);outline-offset:-2px;background:#4f46e50a}.matrix-cell-same{background:#00000005;color:var(--text-dark);cursor:not-allowed}.gradient-dashboard-grid{display:grid;grid-template-columns:310px 1fr;gap:2rem;align-items:start}@media (max-width: 1024px){.gradient-dashboard-grid{grid-template-columns:1fr}}.gradient-sidebar{display:flex;flex-direction:column;gap:1.25rem}.gradient-main-content{display:flex;flex-direction:column;gap:1.75rem}.gradient-render-canvas{height:220px;border-radius:20px;border:1px solid var(--border-medium);position:relative;overflow:hidden;box-shadow:var(--shadow-md);display:flex;align-items:center;justify-content:center}.gradient-heatmap-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.overlay-title{font-size:1.75rem;font-weight:800;letter-spacing:-.02em;line-height:1.1;z-index:2;position:relative}.overlay-desc{font-size:.85rem;font-weight:600;opacity:.9;z-index:2;position:relative;margin-top:.25rem}.gradient-track-wrapper{display:flex;flex-direction:column;gap:.625rem;margin-top:1rem}.gradient-stop-track{position:relative;width:100%;height:18px;border-radius:9999px;border:2px solid #ffffff;box-shadow:inset 0 2px 4px #00000026,var(--shadow-sm);cursor:crosshair;margin-bottom:.75rem}.gradient-stop-handle{position:absolute;top:50%;transform:translate(-50%,-50%);width:22px;height:22px;border-radius:50%;border:2.5px solid #ffffff;box-shadow:0 1px 4px #0000004d;cursor:grab;transition:transform .1s ease;z-index:4}.gradient-stop-handle:hover{transform:translate(-50%,-50%) scale(1.2)}.gradient-stop-handle.selected{outline:2.5px solid var(--color-primary);outline-offset:2px;z-index:5}.analytics-panel{display:flex;flex-direction:column;gap:1rem}.grid-3-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}@media (max-width: 600px){.grid-3-columns{grid-template-columns:1fr}}.analytics-cell-card{background:#fff9;border:1px solid var(--border-subtle);border-radius:16px;padding:1.25rem 1rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.375rem;text-align:center}.analytics-card-label{font-size:.65rem;font-weight:800;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.analytics-value{font-size:1.65rem;font-weight:800;line-height:1.1;color:var(--text-main)}.analytics-sub-label{font-size:.7rem;color:var(--text-dark);font-weight:500}.gradient-fix-actions-alert{background:var(--color-danger-bg);border:1px solid var(--color-danger-border);color:var(--color-danger);border-radius:16px;padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:.875rem}.fix-header-text{font-size:.85rem;font-weight:700}.fix-actions-row{display:flex;gap:.75rem;flex-wrap:wrap}.showcase-container-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:24px;padding:2rem;display:flex;flex-direction:column;gap:1.5rem;box-shadow:var(--shadow-md)}.preview-theme-tabs{display:flex;background:#0000000a;border:1px solid rgba(0,0,0,.06);padding:.25rem;border-radius:12px;width:fit-content;margin-bottom:.25rem}.theme-tab-btn{padding:.5rem 1rem;font-size:.8rem;font-weight:700;border-radius:9px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;transition:var(--transition-fast);display:flex;align-items:center;gap:.375rem}.theme-tab-btn:hover{color:var(--text-main)}.theme-tab-btn.active{background:#fff;color:var(--color-primary);box-shadow:0 2px 6px #0000000f}.showcase-controls{display:flex;flex-wrap:wrap;gap:1.5rem;background:#00000005;border:1px solid var(--border-subtle);padding:1.25rem;border-radius:16px}.state-sim-checkboxes{flex:1;min-width:250px}.cb-simulator-controls{flex:1;min-width:280px}.cb-controls-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;height:100%}.checkboxes-row{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;height:100%}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.825rem;font-weight:600;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary);border-radius:4px;cursor:pointer}.showcase-viewport-frame{display:flex;justify-content:center;align-items:center;background:#00000008;border-radius:20px;padding:1.5rem;border:1px solid var(--border-subtle);transition:var(--transition-normal);width:100%}.frame-desktop{width:100%}.frame-mobile{max-width:360px;width:100%;margin:0 auto;border:14px solid #0f172a;border-radius:40px;box-shadow:var(--shadow-lg),0 25px 60px #00000026;overflow:hidden;background:#0f172a}.simulated-browser-window{width:100%;border-radius:12px;overflow:hidden;box-shadow:0 10px 30px #00000014,0 1px 3px #00000005;display:flex;flex-direction:column;transition:var(--transition-normal);position:relative;min-height:520px;background:#fff}.frame-mobile .simulated-browser-window{border-radius:24px}.simulated-browser-window:before{content:"";display:block;height:28px;background:#00000008;border-bottom:1px solid rgba(0,0,0,.05);position:relative}.simulated-browser-window:after{content:"•••";font-size:16px;color:#00000026;position:absolute;top:1px;left:14px;line-height:28px;letter-spacing:1px}.mockup-navbar{display:flex;justify-content:space-between;align-items:center;padding:.875rem 1.25rem;font-size:.8rem;font-weight:600}.nav-brand-logo{display:flex;align-items:center;gap:.5rem;font-weight:800;font-size:.875rem}.logo-dot{width:10px;height:10px;border-radius:50%}.nav-links-row{display:flex;gap:1rem}.nav-link{font-size:.75rem;font-weight:700;cursor:pointer;opacity:.7;padding-bottom:2px;border-bottom:2px solid transparent;transition:all .15s ease}.nav-link.active{opacity:1;border-bottom-width:2px;border-bottom-style:solid}.nav-pill{font-size:.6rem;font-weight:800;text-transform:uppercase;border-width:1.5px;border-style:solid;border-radius:9999px;padding:.125rem .5rem}.badge-acc-score{font-size:.65rem;font-weight:700;color:#64748b;background:#0000000a;padding:.25rem .5rem;border-radius:6px}.showcase-content-layout{padding:1.5rem;flex:1;overflow-y:auto}.mockup-dashboard-columns{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:start}.frame-mobile .mockup-dashboard-columns{grid-template-columns:1fr}@media (max-width: 768px){.mockup-dashboard-columns{grid-template-columns:1fr}}.mockup-col-item{display:flex;flex-direction:column;gap:1.5rem}.mockup-card-container{border-width:1px;border-style:solid;border-radius:16px;padding:1.25rem;display:flex;flex-direction:column;gap:1rem;background:#00000001}.card-header-with-badge{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(0,0,0,.06);padding-bottom:.5rem;margin-bottom:.25rem}.card-header-with-badge h5{font-size:.85rem;font-weight:800;margin:0;color:inherit}.comp-indicator-tag{font-family:var(--font-mono);font-size:.65rem;font-weight:800;padding:.15rem .4rem;border-radius:4px}.comp-aaa{background:#10b9811a;color:#10b981}.comp-aa{background:#22c55e14;color:#22c55e}.comp-ui{background:#eab30814;color:#b45309}.comp-fail{background:#ef444414;color:#ef4444}.mockup-form-group{display:flex;flex-direction:column;gap:.875rem}.form-field-item{display:flex;flex-direction:column;gap:.375rem}.form-label-txt{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;opacity:.8}.form-input-box{width:100%;padding:.525rem .75rem;border-width:1px;border-style:solid;border-radius:8px;font-size:.8rem;outline:none;font-weight:500;transition:var(--transition-fast)}.form-checkbox-row{display:flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;opacity:.9}.form-submit-btn{padding:.55rem 1rem;font-size:.75rem;font-weight:700;border-radius:8px;border-width:1.5px;border-style:solid;cursor:pointer;text-align:center;transition:var(--transition-normal)}.mockup-alert-container{border-width:1px;border-style:solid;border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.375rem;transition:var(--transition-normal)}.alert-title-row{display:flex;justify-content:space-between;align-items:center}.alert-title-row h6{font-size:.75rem;font-weight:800;margin:0}.alert-body-txt{font-size:.75rem;opacity:.9;line-height:1.4;font-weight:500}.mockup-table{width:100%;border-collapse:collapse;font-size:.75rem}.mockup-table th{text-align:left;padding:.5rem;font-weight:800;color:#64748b;text-transform:uppercase;font-size:.65rem;border-bottom:1px solid rgba(0,0,0,.06)}.mockup-table td{padding:.5rem;font-weight:600}.mock-badge{font-size:.6rem;font-weight:800;text-transform:uppercase;padding:.125rem .5rem;border-radius:9999px;display:inline-block}.mockup-modal-card{border-width:1px;border-style:solid;border-radius:16px;padding:1.25rem;display:flex;flex-direction:column;gap:.75rem;background:#00000001}.modal-header-row{display:flex;justify-content:space-between;align-items:center}.modal-header-row h6{font-size:.8rem;font-weight:800;margin:0}.close-x-btn{font-size:.75rem;opacity:.6;cursor:pointer}.modal-desc-txt{font-size:.75rem;opacity:.85;line-height:1.4;font-weight:500}.modal-footer-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.25rem}.modal-cancel-btn,.modal-confirm-btn{padding:.45rem .875rem;font-size:.7rem;font-weight:700;border-radius:6px;cursor:pointer}.modal-confirm-btn{border:none}.modal-cancel-btn{background:transparent;transition:var(--transition-fast)}.token-main-content{display:flex;flex-direction:column;gap:2rem}.editor-panel{display:flex;flex-direction:column;gap:1.25rem}.editor-header-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.format-tabs-bar{display:flex;flex-wrap:wrap;gap:.375rem;background:#00000008;border:1px solid var(--border-subtle);padding:.25rem;border-radius:12px}.format-tab-btn{padding:.5rem 1rem;font-size:.8rem;font-weight:700;border-radius:8px;border:none;background:transparent;cursor:pointer;color:var(--text-muted);transition:var(--transition-fast)}.format-tab-btn:hover{color:var(--text-main)}.format-tab-btn.active{background:#fff;color:var(--text-main);box-shadow:var(--shadow-sm)}.code-editor-container{display:flex;flex-direction:column;border-radius:16px;background:#090d16;box-shadow:var(--shadow-lg);overflow:hidden;border:1px solid rgba(0,0,0,.15)}.editor-file-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;background:#111729;border-bottom:1px solid rgba(255,255,255,.05)}.file-icon-name{color:#94a3b8;font-size:.8rem;font-family:var(--font-mono);font-weight:600;display:flex;align-items:center;gap:.5rem}.file-icon-name:before{content:"📄"}.editor-actions{display:flex;gap:.5rem}.editor-btn-action{padding:.4rem .85rem;font-size:.75rem;font-weight:700;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:#e2e8f0;cursor:pointer;transition:var(--transition-fast)}.editor-btn-action:hover{background:#ffffff1a;transform:translateY(-1px)}.code-editor-body{display:grid;grid-template-columns:48px 1fr;font-family:var(--font-mono);font-size:.85rem;line-height:1.5rem;padding:1.25rem 0;background:#060911;color:#e2e8f0;overflow-x:auto;min-height:320px}.line-numbers-col{display:flex;flex-direction:column;text-align:right;padding-right:1rem;color:#475569;border-right:1px solid rgba(255,255,255,.05);-webkit-user-select:none;user-select:none}.line-number-row{height:1.5rem}.code-text-pre{margin:0;padding:0 1.25rem;overflow-x:auto}.code-line-row{height:1.5rem;white-space:pre}.error-boundary-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--bg-app)}.error-card{max-width:500px;width:100%;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:24px;padding:2.5rem;text-align:center;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.error-icon{font-size:3rem;margin-bottom:1rem}.error-card h2{font-size:1.5rem;margin-bottom:.75rem}.error-message{color:var(--color-danger);font-family:var(--font-mono);background:var(--color-danger-bg);border:1px solid var(--color-danger-border);padding:.75rem;border-radius:10px;font-size:.85rem;margin-bottom:1.25rem;word-break:break-word}.error-description{color:var(--text-muted);font-size:.875rem;margin-bottom:1.75rem}.error-reset-btn{padding:.75rem 1.5rem;border-radius:12px;border:none;background:var(--color-danger);color:#fff;font-weight:700;font-size:.875rem;cursor:pointer;transition:var(--transition-fast)}.error-reset-btn:hover{background:#e11d48;transform:translateY(-1.5px)}.app-footer{text-align:center;padding:2rem 1.5rem;color:var(--text-muted);font-size:.85rem;font-weight:600;border-top:1px solid var(--border-subtle);margin:3rem -1.25rem -1.25rem;background:#00000002}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s cubic-bezier(.4,0,.2,1)}.preview-layout-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:2rem;align-items:start;margin-top:1.5rem;width:100%}.preview-sidebar-column{display:flex;flex-direction:column;gap:1.5rem}.app-layout{display:flex;flex-direction:column;min-height:100vh;background:var(--bg-main);color:var(--text-main)}.sleek-header{height:64px;flex-shrink:0;background:#ffffffd9;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;padding:0 2rem;position:sticky;top:0;z-index:1000;box-shadow:0 1px 2px #00000003}.header-brand{display:flex;align-items:center;gap:.625rem;font-weight:800;font-size:1.15rem;background:linear-gradient(135deg,#7c3aed,#4f46e5,#0891b2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;-webkit-user-select:none;user-select:none}.header-brand-logo{font-size:1.35rem;filter:drop-shadow(0 2px 4px rgba(79,70,229,.15))}.header-actions{display:flex;align-items:center;gap:1rem}.signin-trigger-btn{padding:.5rem 1.15rem;font-size:.8rem;font-weight:700;border-radius:10px;border:1px solid var(--border-medium);background:#fff;color:var(--text-main);cursor:pointer;transition:var(--transition-fast);box-shadow:var(--shadow-sm)}.signin-trigger-btn:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:0 4px 12px #4f46e526;transform:translateY(-1px)}.user-profile-badge{display:flex;align-items:center;gap:.625rem;padding:.35rem .85rem;background:#fff;border-radius:9999px;border:1px solid var(--border-subtle);font-size:.825rem;font-weight:700;box-shadow:var(--shadow-sm)}.user-avatar-circle{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#4f46e5);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:800}.signout-btn{border:none;background:transparent;color:var(--text-muted);cursor:pointer;font-size:.75rem;font-weight:700;padding-left:.625rem;margin-left:.25rem;border-left:1px solid var(--border-subtle);transition:var(--transition-fast)}.signout-btn:hover{color:#ef4444}.dashboard-viewport-container{display:flex;flex:1}.sleek-sidebar{width:280px;background:#fff;border-right:1px solid var(--border-subtle);padding:1.75rem 1rem;display:flex;flex-direction:column;justify-content:space-between;position:fixed;top:64px;left:0;bottom:0;box-sizing:border-box;transition:width .3s cubic-bezier(.4,0,.2,1),padding .3s cubic-bezier(.4,0,.2,1);flex-shrink:0;overflow:visible;z-index:99}.sleek-sidebar.collapsed{width:78px;padding:1.75rem .5rem}.sidebar-top-section{display:flex;flex-direction:column;gap:1.5rem}.sidebar-section-title{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding-left:.75rem;transition:opacity .2s ease,transform .2s ease;opacity:.8}.sleek-sidebar.collapsed .sidebar-section-title{opacity:0;transform:translate(-10px);pointer-events:none;height:0;margin:0;padding:0;overflow:hidden}.sidebar-nav-list{display:flex;flex-direction:column;gap:.375rem}.sidebar-nav-item{width:100%;padding:.75rem .875rem;font-size:.825rem;font-weight:600;border-radius:10px;border:1px solid transparent;background:transparent;color:var(--text-muted);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.75rem;text-align:left;position:relative}.sidebar-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:20px;height:20px}.sidebar-svg-icon{width:18px;height:18px;stroke:var(--text-muted);stroke-width:2px;transition:stroke .2s ease,transform .2s ease}.sidebar-nav-item:hover{color:var(--text-main);background:#00000005}.sidebar-nav-item:hover .sidebar-svg-icon{stroke:var(--text-main);transform:translateY(-.5px)}.sidebar-nav-item.active{background:var(--color-primary-glow);color:var(--color-primary);border-color:#4f46e526}.sidebar-nav-item.active .sidebar-svg-icon{stroke:var(--color-primary)}.sidebar-nav-text{opacity:1;transform:translate(0);transition:opacity .2s ease,transform .2s ease;white-space:nowrap}.sleek-sidebar.collapsed .sidebar-nav-text{opacity:0;transform:translate(-10px);pointer-events:none;width:0;height:0;overflow:hidden;display:none}.sleek-sidebar.collapsed .sidebar-nav-item{justify-content:center;padding:.75rem 0;gap:0}.sidebar-floating-toggle-btn{position:absolute;top:24px;right:-13px;width:26px;height:26px;border-radius:50%;background:#fff;border:1px solid var(--border-subtle);color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 3px 8px #0000000f;z-index:120;transition:all .2s ease;opacity:.8}.sleek-sidebar:hover .sidebar-floating-toggle-btn,.sidebar-floating-toggle-btn:hover{opacity:1;color:var(--color-primary);border-color:#4f46e54d;background:#fff;box-shadow:0 4px 12px #4f46e51a}.sidebar-floating-toggle-btn .toggle-chevron{width:14px;height:14px;stroke:currentColor;transition:transform .2s ease}.sidebar-floating-toggle-btn:hover .toggle-chevron{transform:scale(1.1)}.sidebar-saved-palettes-card{border:1px solid var(--border-subtle);border-radius:14px;background:#ffffffa6;padding:1rem .875rem;display:flex;flex-direction:column;gap:.75rem;box-shadow:var(--shadow-sm);transition:all .3s ease}.sleek-sidebar.collapsed .sidebar-saved-palettes-card{padding:.75rem .35rem;align-items:center;border-radius:10px}.saved-palettes-header{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);display:flex;align-items:center;gap:.5rem;border-bottom:1px solid var(--border-subtle);padding-bottom:.5rem;transition:all .2s ease;opacity:.85}.saved-palettes-icon{width:14px;height:14px;stroke:var(--text-muted);transition:stroke .2s ease}.sleek-sidebar.collapsed .saved-palettes-header{border-bottom:none;padding-bottom:0;justify-content:center;width:100%}.sleek-sidebar.collapsed .saved-palettes-header .saved-palettes-icon{width:18px;height:18px;stroke:var(--text-muted)}.sidebar-saved-palettes-title{flex:1;transition:opacity .2s ease}.saved-palettes-count{font-size:.7rem;opacity:.7}.sleek-sidebar.collapsed .sidebar-saved-palettes-title,.sleek-sidebar.collapsed .saved-palettes-count{display:none}.saved-palettes-list{display:flex;flex-direction:column;gap:.375rem;max-height:180px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.1) transparent}.sleek-sidebar.collapsed .saved-palettes-list{align-items:center;width:100%}.saved-palette-item{display:flex;align-items:center;justify-content:space-between;padding:.4rem .5rem;background:#fff;border:1px solid var(--border-subtle);border-radius:8px;cursor:pointer;transition:all .2s ease}.saved-palette-item:hover{border-color:var(--color-primary);background:var(--bg-card-hover);transform:translateY(-.5px);box-shadow:var(--shadow-sm)}.sleek-sidebar.collapsed .saved-palette-item{justify-content:center;padding:.4rem 0;width:32px;height:32px;border-radius:50%;background:#fff;border:1px solid var(--border-subtle)}.saved-palette-colors{display:flex;align-items:center;gap:.5rem}.sleek-sidebar.collapsed .saved-palette-colors{justify-content:center}.saved-palette-dot{width:14px;height:14px;border-radius:50%;border:1px solid var(--border-subtle);background:linear-gradient(135deg,var(--fg-color) 50%,var(--bg-color) 50%);display:inline-block}.sleek-sidebar.collapsed .saved-palette-dot{width:16px;height:16px}.saved-palette-name{font-size:.75rem;font-weight:600;color:var(--text-main);max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sleek-sidebar.collapsed .saved-palette-name{display:none}.delete-saved-palette-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:.65rem;padding:.15rem;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.delete-saved-palette-btn:hover{color:var(--color-danger);background:var(--color-danger-bg)}.sleek-sidebar.collapsed .delete-saved-palette-btn{display:none}.saved-palettes-placeholder{font-size:.725rem;color:var(--text-muted);text-align:center;padding:.5rem .25rem;line-height:1.4;font-weight:500}.sleek-sidebar.collapsed .saved-palettes-placeholder{display:none}.save-palette-trigger-btn{width:100%;padding:.5rem .75rem;font-size:.75rem;font-weight:600;border-radius:8px;background:var(--color-primary);color:#fff;border:none;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.35rem}.save-palette-trigger-btn:hover{background:#4338ca;transform:translateY(-.5px);box-shadow:0 4px 10px #4f46e533}.save-palette-trigger-btn .plus-icon{font-size:.9rem;font-weight:500}.sleek-sidebar.collapsed .save-palette-trigger-btn{width:32px;height:32px;padding:0;border-radius:50%;margin:.25rem auto 0}.sleek-sidebar.collapsed .save-palette-trigger-btn .btn-text{display:none}.sidebar-signin-placeholder{cursor:pointer;padding:.75rem .5rem;background:var(--color-primary-glow);border-radius:10px;border:1px dashed rgba(79,70,229,.25);color:var(--text-muted);font-size:.725rem;text-align:center;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.375rem}.sidebar-signin-placeholder .sidebar-svg-icon{width:16px;height:16px;stroke:var(--text-muted);transition:stroke .2s ease}.sidebar-signin-placeholder:hover{background:#4f46e51f;border-color:var(--color-primary);color:var(--text-main)}.sidebar-signin-placeholder:hover .sidebar-svg-icon{stroke:var(--color-primary)}.sleek-sidebar.collapsed .sidebar-signin-placeholder{padding:.5rem 0;border-radius:50%;width:32px;height:32px;margin:.25rem auto 0}.sleek-sidebar.collapsed .sidebar-signin-text{display:none}.sidebar-footer{font-size:.65rem;color:var(--text-muted);opacity:.8;text-align:center;font-weight:500;letter-spacing:.02em;padding-top:1rem;border-top:1px solid var(--border-subtle)}.app-viewport{flex:1;padding:1.25rem;box-sizing:border-box;margin-left:280px;transition:margin-left .3s cubic-bezier(.4,0,.2,1)}.sleek-sidebar.collapsed~.app-viewport{margin-left:78px}.signin-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a66;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s cubic-bezier(.4,0,.2,1)}.signin-modal-card{width:380px;background:#fff;border:1px solid var(--border-subtle);border-radius:24px;padding:2rem;box-shadow:var(--shadow-lg),0 20px 25px -5px #0000001a;display:flex;flex-direction:column;gap:1.5rem;animation:modalScaleUp .25s cubic-bezier(.34,1.56,.64,1)}@keyframes modalScaleUp{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.signin-modal-header{display:flex;flex-direction:column;gap:.375rem}.signin-modal-header h3{font-size:1.25rem;font-weight:800;color:var(--text-main);margin:0}.signin-modal-header p{font-size:.8rem;color:var(--text-muted);margin:0;line-height:1.45}.signin-form{display:flex;flex-direction:column;gap:1.25rem}.signin-form-field{display:flex;flex-direction:column;gap:.375rem}.signin-form-field label{font-size:.725rem;font-weight:800;text-transform:uppercase;color:var(--text-muted)}.signin-form-field input{padding:.625rem .875rem;font-size:.85rem;font-weight:500;border:1px solid var(--border-subtle);border-radius:8px;outline:none;background:#00000003;transition:var(--transition-fast)}.signin-form-field input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #4f46e526}.signin-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.signin-cancel-btn{padding:.55rem 1.25rem;font-size:.8rem;font-weight:700;border-radius:8px;background:transparent;border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;transition:var(--transition-fast)}.signin-cancel-btn:hover{background:#00000005;color:var(--text-main)}.signin-submit-btn{padding:.55rem 1.25rem;font-size:.8rem;font-weight:700;border-radius:8px;background:var(--color-primary);color:#fff;border:none;cursor:pointer;transition:var(--transition-fast)}.signin-submit-btn:hover{background:#4f46e5;box-shadow:0 4px 12px #4f46e533}.signin-modal-tip{font-size:.7rem;color:var(--text-muted);text-align:center;background:#4f46e50a;padding:.5rem;border-radius:8px;border:1px solid rgba(79,70,229,.08)}@media (max-width: 900px){.dashboard-viewport-container{flex-direction:column}.sleek-sidebar,.sleek-sidebar.collapsed{width:100%!important;height:auto!important;position:static!important;border-right:none!important;border-bottom:1px solid rgba(255,255,255,.08)!important;padding:1rem!important;flex-direction:column!important;gap:.75rem!important}.sidebar-floating-toggle-btn{display:none!important}.sidebar-top-section{gap:.75rem!important;width:100%}.sidebar-section-title{display:none!important}.sidebar-nav-list{flex-direction:row!important;flex-wrap:wrap!important;gap:.5rem!important}.sidebar-nav-item{width:auto!important;flex:1 1 calc(50% - .25rem)!important;min-width:120px!important;justify-content:center!important;padding:.625rem .75rem!important;font-size:.775rem!important;gap:.5rem!important}.sidebar-nav-text,.sleek-sidebar.collapsed .sidebar-nav-text{opacity:1!important;transform:none!important;width:auto!important;height:auto!important;overflow:visible!important;display:inline!important}.sidebar-saved-palettes-card,.sidebar-footer{display:none!important}.app-viewport,.sleek-sidebar.collapsed~.app-viewport{margin-left:0!important}}.image-extractor-widget{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;padding:1rem;display:flex;flex-direction:column;gap:.75rem;box-shadow:var(--shadow-sm);margin-top:.75rem}.extractor-subheading{font-size:1rem;font-weight:700;color:var(--text-main);margin:0}.image-dropzone{border:2px dashed var(--border-medium);border-radius:16px;padding:1.25rem 1rem;text-align:center;cursor:pointer;transition:var(--transition-normal);background:#00000001;display:flex;flex-direction:column;align-items:center;gap:.5rem}.image-dropzone:hover,.image-dropzone.drag-over{border-color:var(--color-primary);background:#4f46e505}.dropzone-icon{font-size:2rem;filter:drop-shadow(0 2px 4px rgba(79,70,229,.1))}.dropzone-text{font-size:.85rem;color:var(--text-main);margin:0}.dropzone-text strong{color:var(--color-primary);font-weight:700}.dropzone-subtext{font-size:.725rem;color:var(--text-muted)}.extractor-workspace{display:flex;flex-direction:column;gap:1.25rem}.workspace-tip{font-size:.775rem;color:var(--text-muted);line-height:1.4;margin:0}.eyedropper-canvas-wrapper{display:flex;justify-content:center;background:#00000005;border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden;padding:.5rem}.eyedropper-canvas{max-width:100%;max-height:250px;display:block;cursor:crosshair;border-radius:6px;box-shadow:var(--shadow-sm);transition:transform .15s ease}.eyedropper-canvas:hover{transform:scale(1.01)}.picker-target-toggle{display:flex;flex-direction:column;gap:.5rem}.target-label-txt{font-size:.725rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.target-toggle-buttons{display:flex;gap:.75rem}.target-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem;font-size:.8rem;font-weight:700;border-radius:10px;border:1.5px solid var(--border-subtle);background:#fff;color:var(--text-muted);cursor:pointer;transition:var(--transition-fast)}.target-btn:hover{border-color:var(--border-medium);color:var(--text-main)}.target-btn.active{border-color:var(--active-border);color:var(--text-main);background:#00000003;box-shadow:var(--shadow-sm)}.target-btn .color-dot{width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,.1);display:inline-block}.dominant-palette-section{display:flex;flex-direction:column;gap:.5rem}.palette-label-txt{font-size:.725rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.dominant-chips-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:.375rem}.dominant-chip{aspect-ratio:1;border-radius:8px;border:1px solid rgba(0,0,0,.1);cursor:pointer;transition:var(--transition-fast);padding:0;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.dominant-chip:hover{transform:scale(1.125);box-shadow:var(--shadow-sm);z-index:10}.chip-contrast-dot{width:4px;height:4px;border-radius:50%;opacity:.3}.dominant-chip:hover .chip-contrast-dot{opacity:.8}.extractor-reset-btn{padding:.55rem;font-size:.75rem;font-weight:700;border-radius:10px;border:1px solid var(--border-subtle);background:#fff;color:var(--text-muted);cursor:pointer;transition:var(--transition-fast);text-align:center}.extractor-reset-btn:hover{border-color:var(--border-medium);color:var(--text-main);background:#00000003}.share-palette-btn{padding:.5rem 1.15rem;font-size:.8rem;font-weight:700;border-radius:10px;border:1px solid transparent;background:linear-gradient(135deg,#7c3aed,#4f46e5);color:#fff;cursor:pointer;transition:var(--transition-fast);box-shadow:var(--shadow-sm);display:inline-flex;align-items:center;gap:.5rem}.share-palette-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #4f46e540}.share-palette-btn:active{transform:translateY(0)}
