:root{--background:#eef3f8;--foreground:#152033;--muted:#64748b;--muted-strong:#475569;--primary:#0a84ff;--primary-strong:#0066d6;--danger:#ff453a;--danger-strong:#d92d20;--success:#30d158;--warning:#ffd60a;--panel:#ffffffb8;--panel-strong:#ffffffe6;--border:#94a3b857;--shadow:0 28px 80px #0f172a29;--radius-lg:28px;--radius-md:18px;--font-sans:"SF Pro Display", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif}*{box-sizing:border-box}html{background:radial-gradient(circle at 15% 10%,#0a84ff38,#0000 30rem),radial-gradient(circle at 90% 20%,#30d1582e,#0000 28rem),linear-gradient(145deg,#f8fbff 0%,#e9f0f8 45%,#dfe8f3 100%);min-height:100%}body{min-height:100vh;color:var(--foreground);font-family:var(--font-sans);background:linear-gradient(#ffffff9e,#fff0),0 0;margin:0}button,input{font:inherit}.page-shell{place-items:center;min-height:100vh;padding:48px 20px;display:grid;position:relative;overflow:hidden}.page-shell:before,.page-shell:after{content:"";filter:blur(4px);opacity:.8;pointer-events:none;border-radius:999px;width:340px;height:340px;position:absolute}.page-shell:before{background:linear-gradient(135deg,#0a84ff2e,#5ac8fa14);top:-110px;left:-80px}.page-shell:after{background:linear-gradient(135deg,#ffd60a33,#30d1581f);bottom:-130px;right:-120px}.home-panel{z-index:1;width:min(100%,720px);position:relative}.hero-kicker{border:1px solid var(--border);color:var(--muted-strong);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:#ffffff9e;border-radius:999px;align-items:center;gap:8px;margin-bottom:18px;padding:8px 14px;display:inline-flex;box-shadow:0 12px 36px #0f172a14}.hero-kicker:before{background:var(--success);content:"";border-radius:999px;width:8px;height:8px;box-shadow:0 0 0 6px #30d15829}.hero-title{letter-spacing:-.06em;margin:0;font-size:clamp(42px,8vw,76px);font-weight:760;line-height:.98}.hero-subtitle{max-width:620px;color:var(--muted);margin:22px 0 34px;font-size:clamp(17px,2vw,21px);line-height:1.7}.redeem-form{gap:16px;display:grid}.redeem-actions{gap:12px;display:grid}.form-note{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.glass-card{border-radius:var(--radius-lg);background:var(--panel);-webkit-backdrop-filter:blur(34px)saturate(1.28);backdrop-filter:blur(34px)saturate(1.28);box-shadow:var(--shadow), inset 0 1px 0 #ffffffe6;border:1px solid #ffffffa3}.card{padding:26px}.button{cursor:pointer;letter-spacing:-.01em;border:0;border-radius:16px;justify-content:center;align-items:center;gap:8px;min-height:50px;padding:0 22px;font-weight:690;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button:active{transform:translateY(0)}.button:disabled{cursor:not-allowed;opacity:.58;transform:none}.button-primary{color:#fff;background:linear-gradient(180deg, var(--primary), var(--primary-strong));box-shadow:0 16px 32px #0a84ff47}.button-secondary{color:var(--foreground);box-shadow:inset 0 0 0 1px var(--border);background:#ffffffc2}.button-danger{color:#fff;background:linear-gradient(180deg, var(--danger), var(--danger-strong));box-shadow:0 16px 32px #ff453a3d}.input{border:1px solid var(--border);width:100%;min-height:56px;color:var(--foreground);background:#ffffffd1;border-radius:18px;outline:none;padding:0 18px;transition:border-color .16s,box-shadow .16s,background .16s;box-shadow:inset 0 1px #fffc}.input::placeholder{color:#94a3b8}.input:focus{background:#fff;border-color:#0a84ff9e;box-shadow:0 0 0 5px #0a84ff24}.status-badge{border-radius:999px;align-items:center;padding:6px 10px;font-size:13px;font-weight:700;display:inline-flex}.status-badge-success{color:#0f6b2d;background:#30d1582e}.status-badge-warning{color:#8a6400;background:#ffd60a33}.status-badge-danger{color:#a51f17;background:#ff453a29}.status-badge-neutral{color:var(--muted-strong);background:#64748b1f}.panel-page-shell{place-items:start center}.customer-panel,.panel-not-found{z-index:1;width:min(100%,860px);position:relative}.customer-panel{gap:18px;display:grid}.panel-header{gap:12px;margin-bottom:4px;display:grid}.panel-title{letter-spacing:-.05em;margin:0;font-size:clamp(36px,6vw,58px);font-weight:760;line-height:1}.panel-description{color:var(--muted);margin:0;font-size:16px;line-height:1.65}.panel-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.info-card{gap:14px;display:grid}.account-info-card{gap:12px}.section-heading{letter-spacing:-.02em;font-size:18px;font-weight:760}.info-label{color:var(--muted);margin-bottom:5px;font-size:13px;font-weight:700}.info-value,.copy-value{color:var(--foreground);overflow-wrap:anywhere;font-size:18px;font-weight:720}.copy-row{border:1px solid var(--border);background:#ffffff8c;border-radius:20px;justify-content:space-between;align-items:center;gap:14px;min-height:72px;padding:14px;display:flex}.copy-feedback{min-height:20px;color:var(--muted);margin-top:6px;font-size:.86rem;font-weight:700}.code-result{width:fit-content;min-height:42px;color:var(--primary-strong);letter-spacing:.04em;background:#0a84ff1a;border-radius:15px;align-items:center;padding:0 16px;font-size:18px;font-weight:760;display:inline-flex}.panel-actions{flex-wrap:wrap;gap:12px;display:flex}.download-link{min-height:50px;color:var(--primary-strong);box-shadow:inset 0 0 0 1px var(--border);background:#ffffffc7;border-radius:16px;justify-content:center;align-items:center;padding:0 18px;font-weight:720;text-decoration:none;transition:transform .16s,box-shadow .16s;display:inline-flex}.download-link:hover{transform:translateY(-1px);box-shadow:inset 0 0 0 1px #0a84ff3d,0 14px 28px #0a84ff1f}.admin-login-card{max-width:520px;margin:26px auto 0}.admin-form{gap:14px;display:grid}.admin-header{border-radius:var(--radius-xl);justify-content:space-between;align-items:center;padding:26px;display:flex}.admin-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px;display:grid}.admin-stat-card{min-height:150px}.admin-stat-value{color:var(--foreground);letter-spacing:-.05em;font-size:clamp(36px,6vw,58px);font-weight:780}@media (max-width:640px){.page-shell{align-items:start;padding:34px 16px}.hero-kicker{margin-bottom:16px}.hero-title{font-size:44px}.hero-subtitle{margin:18px 0 24px}.card{border-radius:24px;padding:20px}.button,.input{min-height:54px}.panel-grid{grid-template-columns:1fr}.copy-row,.panel-actions{flex-direction:column;align-items:stretch}.download-link{width:100%}.admin-header,.admin-stats{grid-template-columns:1fr}.admin-header{flex-direction:column;align-items:stretch}}
