/* Loom Wizard (issue #187) */
.loom-wizard-bg{position:fixed;top:0;left:0;width:100%;height:100vh;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;z-index:60;padding:1rem}
.loom-wizard{background:var(--surface);border:1px solid var(--surface2);border-radius:14px;width:100%;max-width:720px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}
.loom-wizard-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--surface2)}
.loom-wizard-stepper{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap}
.loom-step{display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:var(--muted)}
.loom-step.active{color:var(--amber);font-weight:600}
.loom-step.done{color:var(--loom-teal)}
.loom-step-dot{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;border:2px solid var(--muted);color:var(--muted)}
.loom-step.active .loom-step-dot{border-color:var(--amber);color:var(--amber);background:rgba(232,168,56,.1)}
.loom-step.done .loom-step-dot{border-color:var(--loom-teal);color:var(--loom-teal);background:rgba(20,184,166,.1)}
.loom-wizard-body{padding:1.5rem;flex:1;overflow-y:auto}
.loom-wizard-footer{padding:1rem 1.5rem;border-top:1px solid var(--surface2);display:flex;justify-content:space-between;align-items:center}
.loom-radio-group{display:flex;flex-direction:column;gap:.5rem}
.loom-radio-opt{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--surface2);border:2px solid transparent;border-radius:10px;cursor:pointer;min-height:60px;transition:border-color .2s}
.loom-radio-opt:hover{border-color:var(--amber)}
.loom-radio-opt.selected{border-color:var(--amber);background:rgba(232,168,56,.08)}
.loom-radio-opt input[type=radio]{display:none}
.loom-field{margin-bottom:1rem}
.loom-field label{display:block;font-size:.85rem;font-weight:600;margin-bottom:.35rem;color:var(--text)}
.loom-field input,.loom-field textarea,.loom-field select{width:100%;padding:.6rem .8rem;background:var(--surface2);border:1px solid var(--surface3);border-radius:8px;color:var(--text);font-size:.9rem;font-family:inherit}
.loom-field textarea{min-height:120px;resize:vertical}
.loom-char-count{font-size:.75rem;text-align:right;margin-top:.2rem}
.loom-char-count.red{color:var(--red)}
.loom-char-count.yellow{color:var(--amber)}
.loom-char-count.green{color:var(--green)}
.loom-tags-wrap{display:flex;flex-wrap:wrap;gap:.4rem;padding:.5rem;background:var(--surface2);border:1px solid var(--surface3);border-radius:8px;min-height:44px;cursor:text}
.loom-tag-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .6rem;background:var(--surface3);border-radius:16px;font-size:.8rem;color:var(--text)}
.loom-tag-chip .remove{cursor:pointer;opacity:.6;font-size:.9rem}
.loom-tag-chip .remove:hover{opacity:1;color:var(--red)}
.loom-tag-suggestions{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.5rem}
.loom-tag-suggest{padding:.2rem .5rem;background:var(--surface3);border:1px solid var(--surface2);border-radius:12px;font-size:.75rem;color:var(--muted);cursor:pointer}
.loom-tag-suggest:hover{border-color:var(--amber);color:var(--amber)}
.loom-screenshots{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem;margin:.5rem 0}
.loom-screenshot{position:relative;aspect-ratio:16/9;border-radius:8px;overflow:hidden;border:1px solid var(--surface3)}
.loom-screenshot img{width:100%;height:100%;object-fit:cover}
.loom-screenshot .remove-ss{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;background:rgba(0,0,0,.7);color:var(--red);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.8rem}
.loom-price-display{text-align:center;font-family:'Cinzel',serif;font-size:2.5rem;color:var(--amber);margin:1rem 0}
.loom-price-slider{width:100%;accent-color:var(--amber)}
.loom-price-hint{text-align:center;font-size:.85rem;color:var(--muted);margin:.5rem 0}
.loom-review-card{background:var(--surface2);border:1px solid var(--surface3);border-radius:12px;overflow:hidden;max-width:360px;margin:0 auto}
.loom-review-cover{aspect-ratio:3/2;background:var(--surface3)}
.loom-review-cover img{width:100%;height:100%;object-fit:cover}
.loom-review-body{padding:1rem}
.loom-review-tags{display:flex;flex-wrap:wrap;gap:.3rem;margin:.5rem 0}
.loom-review-tag{padding:.15rem .4rem;background:var(--surface3);border-radius:8px;font-size:.7rem;color:var(--muted)}
.loom-review-price{font-family:'Cinzel',serif;font-size:1.3rem;color:var(--amber);margin-top:.5rem}
.loom-banner{background:linear-gradient(135deg,rgba(20,184,166,.15),rgba(20,184,166,.05));border:1px solid var(--loom-teal);border-radius:10px;padding:1rem;margin:1rem 0;font-size:.85rem;color:var(--text)}
.loom-saved-indicator{position:fixed;bottom:1.5rem;right:1.5rem;background:var(--green);color:var(--text-on-color);padding:.4rem .8rem;border-radius:8px;font-size:.8rem;font-weight:600;opacity:0;transition:opacity .3s;z-index:70}
.loom-saved-indicator.show{opacity:1}
.loom-badge{display:inline-flex;align-items:center;padding:.15rem .5rem;border-radius:10px;font-size:.65rem;font-weight:600;margin-left:.4rem}
.loom-badge.draft{background:var(--surface3);color:var(--muted)}
.loom-badge.submitted{background:rgba(20,184,166,.15);color:var(--loom-teal)}
.loom-badge.live{background:rgba(232,168,56,.15);color:var(--amber)}
.loom-badge.rejected{background:rgba(192,57,43,.15);color:var(--red)}
@media(max-width:640px){.loom-wizard{max-width:100%;max-height:100vh;height:100vh;border-radius:0}.loom-wizard-stepper{gap:.25rem}.loom-step span{display:none}.loom-wizard-body{padding:1rem}}
