:root{
  --bg:#f8f2eb;--card:#fffdfa;--text:#201710;--muted:#7c6f64;--line:#eadccd;
  --brand:#9b6b43;--brand2:#d5a36f;--soft:#fff3e5;--dark:#2b2118;
  --green:#25855a;--shadow:0 22px 70px rgba(74,48,25,.10);
}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Pretendard,Arial,sans-serif;color:var(--text)}
button{border:0;border-radius:16px;padding:13px 17px;font-weight:900;cursor:pointer;font-size:14px;font-family:inherit}
.primary{background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff}
.secondary{background:#f1e8df;color:#59493d}
.green{background:linear-gradient(135deg,#25855a,#5bd58c);color:#fff}
.pink{background:linear-gradient(135deg,#bd4d78,#ec7da5);color:#fff}
.dark{background:var(--dark);color:#fff}
.ghost{padding:12px 18px;border:1px solid var(--line);border-radius:14px;background:#fff;font-weight:800}
.card{background:rgba(255,255,255,.86);border:1px solid var(--line);border-radius:30px;padding:24px;box-shadow:var(--shadow)}
.card h3{margin:0 0 12px;font-size:19px}
.hint{margin:-3px 0 18px;color:var(--muted);font-size:13px;line-height:1.6}
.row{display:flex;gap:10px;flex-wrap:wrap}
.page{display:none}.page.active{display:block}
.order-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}
.summary{display:grid;gap:10px}
.summary-line{display:flex;justify-content:space-between;gap:12px;font-size:13px}
.summary-line span{color:var(--muted)}
.pricebox{background:#fff9f2;border:1px solid var(--line);border-radius:20px;padding:16px}
.price-row{display:flex;justify-content:space-between;margin-bottom:8px;font-size:13px}
.total{font-size:22px;font-weight:900;margin-top:10px}
.log{font-size:12px;color:var(--muted);line-height:1.6;background:#fff9f2;border-radius:14px;padding:12px}
.field label{display:block;font-size:12px;font-weight:900;color:var(--muted);margin-bottom:6px}
.field input,textarea{width:100%;border:1px solid var(--line);border-radius:14px;padding:12px 14px;font-size:14px;font-family:inherit}
textarea{min-height:88px;resize:vertical}
.payment-panel{margin-top:18px;padding:18px;border-radius:20px;border:1px solid #ecd1b1;background:linear-gradient(180deg,#fffaf4,#fffdfa)}
.bank-info{display:grid;gap:8px;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid var(--line);margin-bottom:14px}
.payment-status-badge{display:inline-flex;padding:8px 12px;border-radius:999px;font-size:12px;font-weight:900;background:#fff4e8;color:#8a562c;border:1px solid #ecd1b1;margin-bottom:12px}
.order-history-list{display:grid;gap:10px;max-height:320px;overflow-y:auto;margin-bottom:14px}
.order-history-item{display:grid;grid-template-columns:56px 1fr auto;gap:10px;align-items:center;padding:11px 12px;border-radius:16px;border:1px solid var(--line);background:#fffdfa;cursor:pointer}
.order-history-item.active,.order-history-item:hover{border-color:var(--brand);box-shadow:0 0 0 3px rgba(155,107,67,.1)}
.order-history-item img{width:56px;height:56px;border-radius:12px;object-fit:cover}
.order-history-detail{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.order-preview-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px}
.order-preview-gallery img{width:100%;height:88px;object-fit:cover;border-radius:12px}
.auth-modal,.feedback-modal,.feedback-prompt-modal,.feedback-designer-upsell-modal,.download-select-modal,.preview-progress{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;padding:20px}
.auth-modal.open,.feedback-modal.open,.feedback-prompt-modal.open,.feedback-designer-upsell-modal.open,.download-select-modal.open,.preview-progress.open{display:flex}
.auth-modal-backdrop,.feedback-modal-backdrop,.feedback-prompt-backdrop,.feedback-designer-upsell-backdrop,.download-select-backdrop,.preview-progress-backdrop{position:absolute;inset:0;background:rgba(20,16,12,.58);backdrop-filter:blur(8px)}
.auth-modal-panel{position:relative;width:min(420px,100%);background:#1c1917;color:#f5f5f4;border-radius:28px;padding:34px 28px 28px}
.feedback-modal-panel,.download-select-panel,.preview-progress-panel{position:relative;background:#fffdfa;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow)}
.feedback-modal-panel{width:90vw;max-width:90vw;height:90vh;padding:24px 28px;display:flex;flex-direction:column}
.download-select-panel{width:min(720px,92vw);max-height:85vh;padding:24px 28px;display:flex;flex-direction:column}
.preview-progress-panel{width:min(520px,100%);overflow:hidden}
.preview-progress-visual{height:220px;background:linear-gradient(135deg,#e8d9cb,#fff6ec);position:relative}
.preview-progress-body{padding:22px}
.preview-bar{height:12px;border-radius:999px;background:#f1e8df;overflow:hidden;margin:12px 0}
.preview-bar>span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--brand),var(--brand2))}
.feedback-body{display:grid;grid-template-columns:1fr 1fr;gap:24px;flex:1;min-height:0}
.feedback-preview.compare{display:grid;grid-template-columns:1fr 1fr;min-height:300px;border:1px solid var(--line);border-radius:22px;overflow:hidden}
.feedback-preview .half img{width:100%;height:100%;object-fit:contain;background:#fff9f2}
@media(max-width:900px){.order-grid,.order-history-detail,.feedback-body{grid-template-columns:1fr}}
