/* Shared styles for order / admin / terms pages */
.page-wrap{max-width:560px; margin:0 auto; padding:130px 16px 80px; display:grid; gap:22px}
.page-wrap.wide{max-width:1180px}
.panel{padding:30px; border-radius:26px; background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02)); border:1px solid var(--line2)}
.panel h1{font-size:30px; margin:14px 0 10px}
.order-head{display:flex; justify-content:space-between; align-items:center}
.order-head code{color:var(--ink2); background:rgba(255,255,255,.06); padding:5px 10px; border-radius:8px}
.status{display:inline-flex; align-items:center; gap:8px; padding:6px 12px; border-radius:999px; font-size:13px; font-weight:600; margin-top:16px}
.status .dot{width:8px; height:8px; border-radius:50%; background:currentColor}
.status.ok{color:#6EE7B7; background:rgba(16,185,129,.14)} .status.wait{color:#FCD34D; background:rgba(245,158,11,.14)} .status.bad{color:#FDA4AF; background:rgba(244,63,94,.14)}
.status.wait .dot{animation:pulse 1.6s infinite}
.loader{display:flex; gap:8px; justify-content:center; margin:26px 0}
.loader span{width:10px; height:10px; border-radius:50%; background:#818CF8; animation:ld 1.2s infinite ease-in-out}
.loader span:nth-child(2){animation-delay:.15s} .loader span:nth-child(3){animation-delay:.3s}
@keyframes ld{0%,80%,100%{transform:scale(.5); opacity:.4}40%{transform:scale(1); opacity:1}}
.fine a{word-break:break-all}

/* admin */
.toolbar{display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-bottom:18px}
.toolbar .kpi{padding:10px 16px; border-radius:14px; background:var(--panel); border:1px solid var(--line); font-size:13px; color:var(--muted)}
.toolbar .kpi b{display:block; font:700 22px 'Space Grotesk'; color:var(--ink)}
.toolbar .spacer{flex:1}
.toolbar select,.toolbar input{height:38px; border-radius:10px; border:1px solid var(--line2); background:rgba(255,255,255,.04); color:#fff; padding:0 12px; font:500 14px Inter}
.tbl-wrap{overflow-x:auto; border-radius:18px; border:1px solid var(--line)}
.otable{width:100%; border-collapse:collapse; font-size:14px; min-width:880px}
.otable th{text-align:left; font:600 11px Inter; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); padding:12px 14px; background:rgba(255,255,255,.03)}
.otable td{padding:12px 14px; border-top:1px solid var(--line); vertical-align:top}
.otable code{font-size:13px}
.badge{display:inline-block; padding:3px 9px; border-radius:999px; font-size:11.5px; font-weight:700}
.badge.pending_verification{color:#FCD34D; background:rgba(245,158,11,.14)} .badge.approved{color:#6EE7B7; background:rgba(16,185,129,.14)}
.badge.rejected{color:#FDA4AF; background:rgba(244,63,94,.14)} .badge.awaiting_payment{color:#94A3B8; background:rgba(148,163,184,.12)}
.actions{display:flex; flex-wrap:wrap; gap:6px}
.terms h2{font-size:20px; margin:26px 0 8px} .terms p,.terms li{color:var(--ink2)}
.wait-rows{display:grid; gap:10px}
.wait-row{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 14px; border-radius:14px; background:var(--panel); border:1px solid var(--line)}
.order-head{gap:12px} .order-head .eyebrow{margin:0}
