/* Quick Create wizard */
.wz{background:var(--bg-alt);padding:56px 0 72px}
.wz-shell{max-width:900px;margin:0 auto;background:#fff;border:1px solid var(--border);border-radius:18px;padding:34px;box-shadow:var(--shadow-md)}
.wz-steps{display:flex;gap:6px;margin-bottom:28px}
.wz-dot{flex:1;height:5px;border-radius:99px;background:var(--border);transition:background .2s}
.wz-dot.on{background:var(--primary)}
.wz-dot.cur{background:var(--accent)}
.wz-step h2{font-size:1.5rem;margin-bottom:6px}
.wz-step > p.sub{color:var(--muted);margin-bottom:24px;font-size:.9375rem;line-height:1.6}
.wz-nav{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap;align-items:center}
.wz-nav .spacer{flex:1}
.wz-nav .btn[disabled]{opacity:.45;pointer-events:none}

/* choice cards */
.wz-choice{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.wz-choice button{
  text-align:left;border:1.5px solid var(--border);border-radius:14px;background:#fff;padding:24px;cursor:pointer;transition:all .16s
}
.wz-choice button:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}
.wz-choice button.selected{border-color:var(--primary);background:var(--primary-light)}
.wz-choice .pic{height:96px;border-radius:10px;margin-bottom:14px;display:grid;gap:5px;padding:6px;background:#F3F4F6}
.wz-choice .pic.collage{grid-template-columns:2fr 1fr 1fr;grid-template-rows:1fr 1fr}
.wz-choice .pic.collage i:nth-child(1){grid-row:span 2}
.wz-choice .pic.mag{grid-template-columns:1fr 1fr}
.wz-choice .pic.mag i:nth-child(1){grid-row:span 2}
.wz-choice .pic i{display:block;border-radius:5px;background:linear-gradient(135deg,#94A3B8,#CBD5E1)}
.wz-choice .pic.collage i:nth-child(1){background:linear-gradient(135deg,#6366F1,#EC4899)}
.wz-choice .pic.mag i:nth-child(1){background:linear-gradient(135deg,#F59E0B,#EF4444)}
.wz-choice h3{font-size:1.125rem;margin-bottom:6px}
.wz-choice p{color:var(--muted);font-size:.875rem;line-height:1.55}

/* photo upload */
.wz-drop{
  border:2px dashed var(--border);border-radius:14px;padding:38px 20px;text-align:center;cursor:pointer;
  background:var(--bg-alt);transition:all .16s
}
.wz-drop:hover,.wz-drop.over{border-color:var(--primary);background:var(--primary-light)}
.wz-drop strong{display:block;font-size:1.0625rem;color:var(--primary);margin-bottom:4px}
.wz-drop span{color:var(--muted);font-size:.875rem}
.wz-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;margin-top:18px}
.ph-cell{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;border:1px solid var(--border);background:var(--bg-alt);cursor:grab}
.ph-cell img{width:100%;height:100%;object-fit:cover;display:block}
.ph-cell .x{
  position:absolute;top:4px;right:4px;width:24px;height:24px;border-radius:50%;
  background:rgba(17,24,39,.78);color:#fff;font-size:.875rem;line-height:24px;text-align:center;border:none;cursor:pointer
}
.ph-cell .num{
  position:absolute;left:4px;bottom:4px;background:rgba(255,255,255,.9);color:var(--text);
  font-size:.6875rem;font-weight:700;padding:1px 6px;border-radius:5px
}
.wz-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;flex-wrap:wrap}
.wz-meta strong{font-size:.9375rem}
.wz-meta span{color:var(--muted);font-size:.875rem}

/* results */
.vr-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.vr-card{border:1.5px solid var(--border);border-radius:14px;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.vr-card.on{border-color:var(--primary)}
.vr-head{
  display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;
  font-size:.8125rem;font-weight:700;color:var(--primary);background:var(--primary-light)
}
.vr-head span{font-weight:600;color:var(--muted);font-size:.75rem}
.vr-shot{padding:14px;display:grid;place-items:center;background:var(--bg-alt);flex:1}
.vr-shot canvas{max-width:100%;height:auto;box-shadow:var(--shadow-md);background:#fff}
.vr-actions{display:grid;gap:8px;padding:14px}
.vr-actions .btn{width:100%;padding:11px 14px;font-size:.875rem}
.wz-busy{padding:48px;text-align:center;color:var(--muted);font-weight:600}

/* modal */
.wz-modal{position:fixed;inset:0;background:rgba(15,23,42,.6);z-index:400;display:grid;place-items:center;padding:16px}
.wz-modal-box{background:#fff;border-radius:16px;padding:24px;max-width:900px;width:100%;max-height:88vh;overflow:auto}
.wz-modal-box h3{margin-bottom:16px}
.wz-pages{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
.wz-page{text-align:center}
.wz-page canvas{width:100%;height:auto;box-shadow:var(--shadow-sm);border:1px solid var(--border);background:#fff}
.wz-page span{display:block;font-size:.75rem;color:var(--muted);margin-top:5px}
.wz-modal-actions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}

/* saved projects */
.saved-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}
.saved-card{border:1px solid var(--border);border-radius:12px;padding:18px;background:#fff}
.saved-card h4{font-size:1rem;margin-bottom:4px}
.saved-card p{color:var(--muted);font-size:.8125rem;margin-bottom:14px}
.saved-actions{display:flex;gap:8px}
.saved-actions .btn{flex:1;padding:9px 10px;font-size:.8125rem}

/* toast */
.wz-toast{
  position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(16px);
  background:#111827;color:#fff;padding:11px 18px;border-radius:10px;font-size:.875rem;font-weight:600;
  opacity:0;pointer-events:none;transition:all .2s;z-index:500;max-width:90vw;text-align:center
}
.wz-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

@media(max-width:900px){
  .vr-grid{grid-template-columns:1fr}
}
@media(max-width:768px){
  .wz{padding:32px 0 48px}
  .wz-shell{padding:22px 18px;border-radius:14px}
  .wz-choice{grid-template-columns:1fr}
  .wz-step h2{font-size:1.25rem}
  .wz-nav .btn{flex:1;min-width:130px}
  .wz-nav .spacer{display:none}
  .wz-photos{grid-template-columns:repeat(auto-fill,minmax(78px,1fr))}
}
