:root{--page-backdrop:#0b0d10;--background:#f5f6f8;--surface:#fff;--foreground:#16181d;--muted:#6b7280;--border:#e5e7eb;--primary:#16a34a;--primary-hover:#15803d;--danger:#dc2626;--danger-bg:#fef2f2;--success-bg:#f0fdf4;--radius:12px}@media (prefers-color-scheme:dark){:root{--background:#0b0d10;--surface:#15181d;--foreground:#f2f3f5;--muted:#9aa1ac;--border:#262b33;--danger-bg:#2a1414;--success-bg:#0f2417}}[data-theme=dark]{--background:#0b0d10;--surface:#15181d;--foreground:#f2f3f5;--muted:#9aa1ac;--border:#262b33;--primary:#16a34a;--primary-hover:#15803d;--danger:#dc2626;--danger-bg:#2a1414;--success-bg:#0f2417}[data-theme=light]{--background:#f5f6f8;--surface:#fff;--foreground:#16181d;--muted:#6b7280;--border:#e5e7eb;--primary:#16a34a;--primary-hover:#15803d;--danger:#dc2626;--danger-bg:#fef2f2;--success-bg:#f0fdf4}[data-theme]{color:var(--foreground)}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;height:100%}@media (prefers-color-scheme:dark){html{--lightningcss-light: ;--lightningcss-dark:initial}}html,body{max-width:100vw;overflow-x:hidden}body{min-height:100%;color:var(--foreground);background:var(--background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;display:flex}*{box-sizing:border-box;margin:0;padding:0}a{color:inherit}.page{background:var(--page-backdrop);flex:1;justify-content:center;min-height:100%;padding:40px 16px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:460px;height:fit-content;padding:28px}.card+.card{margin-top:16px}.eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:12px;font-weight:600}h1{margin-bottom:8px;font-size:22px;font-weight:700}h2{margin-bottom:10px;font-size:17px;font-weight:600}p{color:var(--muted);line-height:1.5}.price{margin:12px 0 20px;font-size:28px;font-weight:800}.field{margin-bottom:14px}.field label{margin-bottom:6px;font-size:13px;font-weight:600;display:block}.field input,.field select,.field textarea{border:1px solid var(--border);background:var(--background);width:100%;color:var(--foreground);border-radius:8px;padding:11px 12px;font-family:inherit;font-size:15px}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--primary);outline-offset:1px}.field input:disabled{color:var(--muted);cursor:not-allowed}.field-error{color:var(--danger);margin-top:4px;font-size:12px}.radio-group{gap:10px;display:flex}.radio-group label{border:1px solid var(--border);text-align:center;cursor:pointer;border-radius:8px;flex:1;padding:10px;font-size:14px;font-weight:600}.radio-group input{margin-right:6px}.btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;margin-top:6px;padding:13px;font-size:15px;font-weight:700}.btn:hover:not(:disabled){background:var(--primary-hover)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{color:var(--foreground);border:1px solid var(--border);background:0 0}.alert{border-radius:8px;margin-bottom:16px;padding:12px 14px;font-size:14px}.alert-error{background:var(--danger-bg);color:var(--danger)}.alert-success{background:var(--success-bg);color:var(--primary)}.badge{background:var(--border);border-radius:999px;margin-bottom:12px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-block}.kv{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding:10px 0;font-size:14px;display:flex}.kv:last-child{border-bottom:none}.kv span:first-child{color:var(--muted)}.copy-box{border:1px dashed var(--border);word-break:break-all;border-radius:8px;align-items:center;gap:8px;margin:10px 0;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;display:flex}.copy-box button{background:var(--border);cursor:pointer;border:none;border-radius:6px;flex-shrink:0;padding:6px 10px;font-size:12px;font-weight:700}.spinner{border:2px solid var(--border);border-top-color:var(--primary);vertical-align:middle;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin;display:inline-block}.center-row{justify-content:center;align-items:center;gap:10px;padding:20px 0;display:flex}@keyframes spin{to{transform:rotate(360deg)}}.product-list{flex-direction:column;gap:12px;display:flex}.product-list>div{border:1px solid var(--border);border-radius:var(--radius);padding:16px}.product-list a{border:1px solid var(--border);border-radius:8px;padding:8px 12px;display:inline-block}.product-list a:hover{border-color:var(--primary);color:var(--primary)}.section-title{align-items:center;gap:12px;margin-bottom:18px;display:flex}.section-title h2{margin-bottom:0}.icon-badge{background:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.icon-badge svg{width:18px;height:18px}.product-summary-row{align-items:flex-start;gap:14px;display:flex}.product-thumb{object-fit:cover;background:var(--border);border-radius:10px;flex-shrink:0;width:64px;height:64px}.product-thumb-fallback{background:var(--primary);color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;font-size:20px;font-weight:800;display:flex}.product-summary-info{flex:1;min-width:0}.product-summary-info .product-name{margin-bottom:4px;font-size:15px;font-weight:700;line-height:1.3}.product-summary-info .product-price{color:var(--primary);font-size:16px;font-weight:800}.divider{border:none;border-top:1px solid var(--border);margin:16px 0}.total-row{justify-content:space-between;align-items:center;font-weight:700;display:flex}.total-row .total-amount{font-size:18px}.admin-nav{border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 24px;display:flex}.admin-nav a{margin-right:18px;font-weight:600}.admin-nav a:hover{color:var(--primary)}.admin-nav-user{color:var(--muted);align-items:center;gap:12px;font-size:14px;display:flex}.admin-content{max-width:640px;margin:0 auto;padding:32px 16px}.admin-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.product-row-admin{border:1px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding:14px 16px;display:flex}.product-row-admin .links a{color:var(--muted)}.btn-sm{width:auto;margin-top:0;padding:8px 14px;font-size:13px;display:inline-block}.btn-danger{background:var(--danger)}.btn-danger:hover{background:#b91c1c}.admin-content-wide{max-width:1080px}.tabs{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.tab{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600}.tab:hover{color:var(--foreground)}.tab-active{background:var(--primary);border-color:var(--primary);color:#fff}.table-wrap{border:1px solid var(--border);border-radius:var(--radius);width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;white-space:nowrap;border-bottom:1px solid var(--border);padding:10px 14px}th{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;background:var(--background);font-size:12px;font-weight:600}tbody tr:last-child td{border-bottom:none}.status-badge{border-radius:999px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-block}.status-confirmed{background:var(--success-bg);color:var(--primary)}.status-pending{background:var(--background);color:var(--muted);border:1px solid var(--border)}.status-failed,.status-expired{background:var(--danger-bg);color:var(--danger)}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px}.stat-label{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin-bottom:8px;font-size:12px;font-weight:600}.stat-value{font-size:26px;font-weight:800}.stat-sub{color:var(--muted);margin-top:4px;font-size:12px}.field small{color:var(--muted);margin-top:4px;font-size:12px;display:block}
