/* Palette Extractor */
.ple-card{display:flex;flex-direction:column;gap:.85rem;padding:1.5rem;background:var(--t-bg);border:1px solid var(--t-border-glass);border-radius:var(--t-radius);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);margin-bottom:1.5rem}
.ple-drop{border:2px dashed var(--t-border);border-radius:var(--t-radius);padding:2rem 1rem;text-align:center;cursor:pointer;display:flex;flex-direction:column;gap:.3rem;align-items:center;transition:all .25s}
.ple-drop:hover,.ple-drop.over{border-color:var(--t-accent);background:var(--t-accent-glow)}
.ple-drop-icon{font-size:2rem}
.ple-drop-title{font-weight:800}
.ple-drop-sub{font-size:.78rem;color:var(--text-tertiary)}
.ple-toolbar{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.ple-toolbar img{width:72px;height:72px;object-fit:cover;border-radius:12px;border:1px solid var(--t-border)}
.ple-toolbar label{font-size:.8rem;font-weight:700;display:flex;align-items:center;gap:.5rem}
.ple-btn{padding:.6rem 1.2rem;border:none;border-radius:100px;font-weight:700;font-size:.82rem;cursor:pointer;background:linear-gradient(135deg,var(--t-accent),var(--t-accent-2));color:#fff}
.ple-btn.secondary{background:var(--t-bg-card);color:var(--text);border:1px solid var(--t-border)}
.ple-error{font-size:.82rem;color:#ef4444;font-weight:600}
.ple-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.8rem;min-height:120px}
.ple-swatch{border:1px solid var(--t-border-glass);border-radius:var(--t-radius);overflow:hidden;background:var(--t-bg-card)}
.ple-color{height:84px;cursor:pointer}
.ple-vals{display:flex;flex-direction:column;padding:.5rem;gap:.25rem}
.ple-val{background:none;border:none;cursor:pointer;text-align:left;font-family:var(--t-mono);font-size:.74rem;font-weight:700;color:var(--text);padding:.15rem .3rem;border-radius:6px}
.ple-val:hover{background:var(--t-accent-glow)}
.ple-val.dim{font-weight:400;color:var(--text-tertiary);font-size:.68rem}
