.recolor-main{padding:48px 64px;max-width:1400px;margin:0 auto}.page-eyebrow{font-family:Space Mono,monospace;font-size:10px;letter-spacing:.3em;color:var(--muted);text-transform:uppercase;margin-bottom:8px}.page-title{font-family:Cormorant Garamond,serif;font-size:36px;font-weight:300;color:var(--text);letter-spacing:.04em;margin-bottom:40px}.recolor-grid{display:grid;grid-template-columns:420px 1fr;grid-gap:32px;gap:32px;align-items:start}.left-col{display:flex;flex-direction:column;gap:20px}.section-card{background:var(--surface);border:1px solid var(--border);border-radius:2px;overflow:hidden}.card-header{padding:14px 20px;border-bottom:1px solid var(--border);justify-content:space-between}.card-header,.card-header-left{display:flex;align-items:center}.card-header-left{gap:12px}.step-num{width:22px;height:22px;border:1px solid var(--border);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Space Mono,monospace;font-size:9px;color:var(--text);flex-shrink:0}.step-num.done{background:var(--accent-subtle);border-color:rgba(201,168,224,.3);color:var(--accent)}.card-title{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--text)}.card-badge,.card-title{font-family:Space Mono,monospace}.card-badge{font-size:8px;padding:2px 8px;border-radius:20px;border:1px solid rgba(201,168,224,.25);color:var(--accent);background:var(--accent-subtle)}.card-body{padding:20px}.file-drop{border:1px dashed hsla(0,0%,100%,.1);border-radius:2px;padding:28px;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:all .3s}.file-drop:hover{border-color:var(--accent);background:var(--accent-subtle)}.file-drop-icon{opacity:.2;color:var(--text);margin-bottom:4px}.file-drop-text{font-family:Cormorant Garamond,serif;font-size:17px;color:var(--text);font-style:italic}.file-drop-sub{font-family:Space Mono,monospace;font-size:9px;color:var(--muted);opacity:.5;letter-spacing:.12em}.file-loaded{gap:12px;padding:12px 16px;background:rgba(201,168,224,.05);border:1px solid rgba(201,168,224,.15);margin-bottom:18px}.file-icon,.file-loaded{display:flex;align-items:center;border-radius:2px}.file-icon{width:36px;height:36px;background:var(--accent-subtle);justify-content:center;flex-shrink:0}.file-name{font-size:11px;color:var(--accent);margin-bottom:3px}.file-meta,.file-name{font-family:Space Mono,monospace}.file-meta{font-size:9px;color:var(--text)}.detected-swatches{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.d-swatch{display:flex;align-items:center;gap:7px;padding:5px 10px;background:var(--bg);border:1px solid var(--border);border-radius:2px;cursor:pointer;transition:all .2s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.d-swatch:hover{border-color:hsla(0,0%,100%,.15)}.d-swatch.on{border-color:rgba(201,168,224,.4);background:var(--accent-subtle)}.d-dot{width:11px;height:11px;border-radius:50%;flex-shrink:0}.d-hex{font-family:Space Mono,monospace;font-size:9px;color:var(--text);letter-spacing:.04em}.stats-row{display:flex;gap:0;border:1px solid var(--border);border-radius:2px;overflow:hidden}.stat-cell{flex:1 1;padding:10px 14px;border-right:1px solid var(--border)}.stat-cell:last-child{border-right:none}.stat-val{font-size:18px;color:var(--accent);line-height:1;margin-bottom:4px}.stat-lbl,.stat-val{font-family:Space Mono,monospace}.stat-lbl{font-size:8px;color:var(--muted);letter-spacing:.12em;text-transform:uppercase}.source-toggle{display:flex;gap:4px;margin-bottom:14px}.src-btn{flex:1 1;padding:9px;background:var(--bg);border:1px solid var(--border);color:var(--text);font-family:Space Mono,monospace;font-size:9px;letter-spacing:.12em;cursor:pointer;border-radius:2px;transition:all .2s}.src-btn.active{border-color:var(--accent);color:var(--accent);background:var(--accent-subtle)}.new-palette-bar{display:flex;height:32px;border-radius:2px;overflow:hidden;margin-bottom:14px;border:1px solid var(--border)}.np-swatch{flex:1 1;cursor:pointer;transition:flex .3s}.np-swatch:hover{flex:2 1}.mapping-toggle{display:flex;align-items:center;justify-content:space-between;padding:10px 0;cursor:pointer;border-bottom:1px solid var(--border);margin-bottom:14px}.mapping-toggle-label{letter-spacing:.15em;text-transform:uppercase}.mapping-toggle-icon,.mapping-toggle-label{font-family:Space Mono,monospace;font-size:9px;color:var(--text)}.mapping-toggle-icon{transition:transform .2s}.mapping-toggle-icon.open{transform:rotate(180deg)}.mapping-rows{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.m-row{display:flex;align-items:center;gap:10px}.m-from{width:24px;height:24px;border-radius:2px;border:1px solid var(--border);flex-shrink:0}.m-arrow{font-family:Space Mono,monospace;font-size:10px;color:var(--border)}.m-to{width:24px;height:24px;border-radius:2px;flex-shrink:0;cursor:pointer;border:1px solid transparent;transition:border-color .2s}.m-to:hover{border-color:var(--accent)}.m-from-hex{flex:1 1}.m-from-hex,.m-to-hex{font-size:9px;color:var(--text)}.m-auto,.m-from-hex,.m-to-hex{font-family:Space Mono,monospace}.m-auto{font-size:7px;color:var(--accent);padding:1px 5px;border:1px solid rgba(201,168,224,.25);border-radius:10px;letter-spacing:.08em}.recolor-apply-btn{width:100%;padding:13px;background:linear-gradient(135deg,var(--accent),var(--accent2));border:none;border-radius:2px;color:#1a1018;font-family:Space Mono,monospace;font-size:11px;font-weight:700;letter-spacing:.2em;cursor:pointer;transition:all .2s}.recolor-apply-btn:hover:not(:disabled){opacity:.88;transform:translateY(-1px)}.recolor-apply-btn:disabled{opacity:.3;cursor:not-allowed;transform:none}.right-col{position:-webkit-sticky;position:sticky;top:24px}.preview-card{background:var(--surface);border:1px solid var(--border);border-radius:2px;overflow:hidden}.preview-header{padding:14px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.preview-toolbar{display:flex;gap:4px}.mode-btn{padding:6px 14px;background:none;border:1px solid var(--border);color:var(--text);font-family:Space Mono,monospace;font-size:9px;letter-spacing:.12em;cursor:pointer;border-radius:2px;transition:all .2s}.mode-btn.active{border-color:var(--accent);color:var(--accent);background:var(--accent-subtle)}.browser-chrome{background:#1c1c20;border-bottom:1px solid var(--border);padding:10px 16px;display:flex;align-items:center;gap:10px}.browser-dots{display:flex;gap:5px}.browser-dot{width:8px;height:8px;border-radius:50%}.browser-bar{flex:1 1;background:var(--bg);border:1px solid var(--border);border-radius:3px;padding:4px 10px;font-family:Space Mono,monospace;font-size:9px;color:var(--text);letter-spacing:.05em}.preview-frame{width:100%;background:#fff;min-height:480px;overflow:hidden;position:relative}.result-bar{padding:16px 20px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:16px}.result-stats{display:flex;gap:20px}.r-stat-val{font-size:20px;color:var(--accent);line-height:1}.r-stat-lbl,.r-stat-val{font-family:Space Mono,monospace}.r-stat-lbl{font-size:8px;color:var(--muted);letter-spacing:.12em;margin-top:3px}.download-btn{padding:10px 20px;background:transparent;border:1px solid rgba(201,168,224,.3);color:var(--accent);font-family:Space Mono,monospace;font-size:9px;letter-spacing:.15em;cursor:pointer;border-radius:2px;transition:all .2s;white-space:nowrap}.download-btn:hover:not(:disabled){background:var(--accent-subtle)}.download-btn:disabled{opacity:.25;cursor:not-allowed}@media (max-width:960px){.recolor-grid{grid-template-columns:1fr}.right-col{position:static}header{padding:24px}.recolor-main{padding:32px 24px}}