
:root{--bg:#0b1020;--panel:#121a31;--card:#17213d;--text:#eef4ff;--muted:#a8b3cf;--accent:#69e4a6;--accent2:#79a8ff;--danger:#ff6b6b}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top left,#1b2c55,var(--bg) 42%);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;min-height:100vh}.hero{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:44px max(24px,8vw) 28px}.hero.small{padding-bottom:10px}.eyebrow{margin:0 0 8px;color:var(--accent);text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:800}h1{font-size:clamp(34px,6vw,70px);line-height:.96;margin:0 0 14px}h2{margin:0 0 10px}.hero p:not(.eyebrow){margin:0;color:var(--muted);font-size:18px}.adminlink,a{color:var(--accent);text-decoration:none}.adminlink{border:1px solid #34405f;border-radius:999px;padding:11px 16px;background:#0f1730}main{display:grid;grid-template-columns:1fr 360px;gap:26px;padding:20px max(24px,8vw) 60px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px}.card,.cart,.checkout-box,.result{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.12);border-radius:24px;box-shadow:0 20px 70px rgba(0,0,0,.24)}.card{padding:22px;min-height:260px;display:flex;flex-direction:column}.emoji{font-size:48px;margin-bottom:16px}.card p{color:var(--muted);flex:1}.card strong{font-size:22px;margin:10px 0 18px}button{appearance:none;border:0;border-radius:14px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#08101f;font-weight:900;padding:13px 16px;cursor:pointer;box-shadow:0 12px 30px rgba(105,228,166,.22)}button:disabled{opacity:.45;cursor:not-allowed}.cart{padding:22px;position:sticky;top:20px;height:max-content}.cart-row{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid rgba(255,255,255,.08);padding:10px 0}.cart-row small{color:var(--muted)}.qty{display:flex;gap:6px;align-items:center}.qty button{padding:4px 9px;border-radius:8px}.total{display:flex;justify-content:space-between;font-size:21px;font-weight:900;margin:20px 0}pre#status,#message{white-space:pre-wrap;color:var(--muted);background:#08101f;border-radius:14px;padding:12px;min-height:38px}.checkout{display:block;max-width:840px;margin:0 auto}.checkout-box,.result{padding:28px}.component-slot{margin:20px 0;min-height:70px;border:1px dashed rgba(255,255,255,.14);border-radius:18px;padding:14px;background:rgba(0,0,0,.12)}.line{display:flex;justify-content:space-between;padding:8px 0;color:var(--muted)}@media(max-width:900px){main{grid-template-columns:1fr}.cart{position:static}.hero{align-items:flex-start;flex-direction:column}}


.session-log{grid-column:1/-1;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.14);border-radius:24px;padding:20px;box-shadow:0 20px 70px rgba(0,0,0,.22)}
.session-log-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:8px}.session-log-head h2{margin:0}.session-log-head button{padding:9px 12px;border-radius:10px;background:#263455;color:var(--text);box-shadow:none}.session-log p{margin:0 0 12px;color:var(--muted);font-size:14px}.session-log pre{margin:0;max-height:420px;overflow:auto;white-space:pre-wrap;word-break:break-word;background:#07101f;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:14px;color:#dce8ff;font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
@media(max-width:800px){.session-log-head{align-items:flex-start;flex-direction:column}.session-log pre{max-height:360px}}


.payment-selection{margin:18px 0;padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.035)}.payment-selection h3,#cardStep h3{margin:0 0 8px}.payment-selection p{margin:0 0 12px;color:var(--muted)}.payment-methods{display:flex;flex-wrap:wrap;gap:10px}.payment-method-option{display:flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.16);background:#0f1730;color:var(--text);border-radius:14px;padding:12px 14px;box-shadow:none}.payment-method-option.selected{outline:2px solid var(--accent);background:rgba(105,228,166,.12)}.payment-method-option small{color:var(--muted)}#cardStep{margin-top:18px}
