:root{font-family:Inter,PingFang SC,Microsoft YaHei,Noto Sans CJK SC,system-ui,sans-serif;color:#13243d;background:#edf6ff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.56}.page-shell{position:relative;display:grid;grid-template-rows:auto 1fr auto;min-height:100vh;overflow:hidden;background:radial-gradient(circle at 18% 20%,rgba(76,178,255,.28),transparent 30%),radial-gradient(circle at 84% 12%,rgba(82,223,255,.26),transparent 24%),radial-gradient(circle at 50% 88%,rgba(35,124,255,.2),transparent 34%),linear-gradient(135deg,#fff,#f4fbff 44%,#e2f2ff)}.page-shell:before{position:absolute;inset:0;content:"";background:linear-gradient(rgba(34,109,184,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(34,109,184,.055) 1px,transparent 1px);background-size:58px 58px;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.72),transparent 78%);mask-image:linear-gradient(to bottom,rgba(0,0,0,.72),transparent 78%);pointer-events:none}.page-shell:after{position:absolute;right:-14vw;top:12vh;width:44vw;max-width:640px;aspect-ratio:1;content:"";background:radial-gradient(circle,rgba(53,161,255,.22),transparent 62%);filter:blur(6px);pointer-events:none}.site-header,.hero-layout,footer{position:relative;z-index:1}.site-header{display:flex;align-items:center;justify-content:space-between;width:min(1160px,calc(100% - 48px));min-height:78px;margin:0 auto}.brand{display:inline-flex;align-items:center}.brand img{display:block;width:176px;height:35px;object-fit:contain}.support-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;color:#235f9d;background:#ffffff8a;border:1px solid rgba(255,255,255,.78);border-radius:8px;box-shadow:0 14px 30px #4078b014;font-size:14px;font-weight:760;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.header-actions{display:flex;align-items:center;gap:10px}.hero-layout{display:grid;place-items:center;width:min(1160px,calc(100% - 48px));margin:0 auto;padding:34px 0 42px}.redeem-card{width:min(720px,100%);padding:42px;color:#172944;background:linear-gradient(145deg,#ffffffbd,#f2faff94);border:1px solid rgba(255,255,255,.86);border-radius:8px;box-shadow:inset 0 1px #ffffffeb,0 34px 90px #2b5f992e;-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px)}.admin-shell{overflow:auto}.card-mark{display:grid;width:72px;height:72px;margin:0 auto 22px;place-items:center;background:#ffffffb8;border:1px solid rgba(255,255,255,.9);border-radius:8px;box-shadow:0 18px 38px #237cff24}.card-mark img{width:50px;height:50px;object-fit:contain}.card-title{text-align:center}h1{margin:0;color:#0f63dc;font-size:48px;font-weight:840;letter-spacing:0;line-height:1.08}.card-title p{margin:14px 0 0;color:#5c708a;font-size:17px;font-weight:560;line-height:1.6}.mode-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:34px;padding:7px;background:#e1f1ffc2;border:1px solid rgba(255,255,255,.8);border-radius:8px}.mode-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:58px;color:#536a84;background:transparent;border:0;border-radius:8px;font-size:16px;font-weight:800;transition:background .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}.mode-tabs button:hover{color:#0d63dc}.mode-tabs button.active{color:#0f63dc;background:#ffffffe6;box-shadow:0 14px 30px #2f84ff1f}.form-area{display:grid;gap:12px;margin-top:28px}label{color:#243b59;font-size:15px;font-weight:800}.code-field{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;min-height:72px;padding:0 18px;color:#0f63dc;background:#ffffffc7;border:1px solid rgba(255,255,255,.92);border-radius:8px;box-shadow:inset 0 1px #ffffffeb,0 14px 26px #3470af14}.code-field input,.text-field,textarea{width:100%;min-width:0;color:#152a46;background:#ffffffc7;border:1px solid rgba(255,255,255,.92);border-radius:8px;outline:0;box-shadow:inset 0 1px #ffffffd1}.code-field input{height:68px;padding:0;background:transparent;border:0;box-shadow:none;font-size:22px;font-weight:760}.code-field button{display:inline-grid;width:42px;height:42px;place-items:center;color:#0f63dc;background:#e8f4ffe0;border:1px solid rgba(255,255,255,.88);border-radius:8px}.text-field{height:60px;padding:0 18px;font-size:16px;font-weight:620}textarea{min-height:188px;padding:18px;resize:vertical;font-size:17px;font-weight:680;line-height:1.65}input::placeholder,textarea::placeholder{color:#8092aa}.import-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;width:fit-content;min-height:44px;padding:0 16px;color:#0f63dc;background:#ffffffb8;border:1px solid rgba(255,255,255,.9);border-radius:8px;font-size:14px;font-weight:800}.form-hint{margin:-2px 0 0;color:#60748d;font-size:13px;font-weight:650;line-height:1.6}.redeem-button{display:inline-flex;align-items:center;justify-content:center;gap:11px;width:100%;min-height:66px;margin-top:30px;color:#fff;background:linear-gradient(135deg,#1f8dff,#3ed0e8);border:0;border-radius:8px;box-shadow:0 24px 48px #1f8dff47;font-size:20px;font-weight:860;letter-spacing:0;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.redeem-button:hover{box-shadow:0 28px 56px #1f8dff57;filter:saturate(1.04);transform:translateY(-1px)}.redeem-button.compact{min-height:52px;margin-top:12px;font-size:16px}.security-note{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:20px;color:#59708a;font-size:14px;font-weight:650;text-align:center}.security-note svg{flex:0 0 auto;color:#0f80e8}.result-panel{display:grid;gap:12px;margin-top:24px}.result-item{display:grid;grid-template-columns:auto 1fr;gap:12px;padding:16px;border-radius:8px}.result-item.success{color:#0f5f3d;background:#e8fff3cc;border:1px solid rgba(155,228,192,.74)}.result-item.error{color:#8b2534;background:#ffeef1d1;border:1px solid rgba(238,177,188,.7)}.result-icon{padding-top:1px}.result-item strong,.result-item span,.result-item em{display:block}.result-item strong{font-size:14px;font-weight:860}.result-item span{margin-top:4px;font-size:14px;font-weight:700}.result-item em{margin-top:4px;font-size:13px;font-style:normal;opacity:.78}.result-item pre{max-height:180px;margin:12px 0 0;overflow:auto;padding:12px;color:#15304a;white-space:pre-wrap;word-break:break-word;background:#ffffffb8;border-radius:8px;font-size:13px;line-height:1.55}.download-link{display:inline-flex;align-items:center;gap:7px;width:fit-content;margin-top:12px;padding:8px 10px;color:#0f63dc;background:#ffffffbd;border:1px solid rgba(166,211,247,.72);border-radius:8px;font-size:13px;font-weight:820}.admin-layout{position:relative;z-index:1;display:grid;grid-template-columns:minmax(420px,.92fr) minmax(360px,.74fr);gap:22px;width:min(1160px,calc(100% - 48px));margin:22px auto 48px}.admin-panel{padding:26px;background:linear-gradient(145deg,#ffffffc2,#f2faff99);border:1px solid rgba(255,255,255,.86);border-radius:8px;box-shadow:inset 0 1px #ffffffeb,0 28px 70px #2b5f9924;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.admin-head h1{margin:0;font-size:34px}.admin-head p{margin:10px 0 0;color:#5c708a;font-size:14px;font-weight:600;line-height:1.7}.admin-auth{display:grid;grid-template-columns:1fr auto;gap:12px;margin-top:24px}.admin-auth button,.admin-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 18px;color:#0f63dc;background:#ffffffc2;border:1px solid rgba(255,255,255,.92);border-radius:8px;font-size:14px;font-weight:820}.admin-grid{display:grid;grid-template-columns:1fr .7fr .7fr;gap:12px;margin-top:22px}.admin-panel label{display:grid;gap:10px;margin-top:18px}.admin-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.file-field{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;min-height:56px;padding:0 14px;color:#0f63dc;background:#ffffffc7;border:1px solid rgba(255,255,255,.92);border-radius:8px}.file-field input{width:100%;min-width:0;color:#243b59;font-size:14px;font-weight:700}.file-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#60748d;font-size:12px;font-weight:650;line-height:1.5}.file-meta button,.row-actions button{display:inline-grid;flex:0 0 auto;width:34px;height:34px;place-items:center;color:#8b2534;background:#ffeef1d1;border:1px solid rgba(238,177,188,.7);border-radius:8px}.admin-message{margin:18px 0 0;padding:12px 14px;color:#0f5f3d;background:#e8fff3d1;border:1px solid rgba(155,228,192,.74);border-radius:8px;font-size:14px;font-weight:760}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.stats-grid span{display:grid;gap:6px;min-height:78px;padding:14px;color:#60748d;background:#ffffffa8;border:1px solid rgba(255,255,255,.86);border-radius:8px;font-size:12px;font-weight:760}.stats-grid strong{color:#0f63dc;font-size:25px;line-height:1}.admin-table{margin-top:22px;overflow:hidden;background:#ffffff8f;border:1px solid rgba(255,255,255,.86);border-radius:8px}.admin-table h2{margin:0;padding:16px;color:#243b59;border-bottom:1px solid rgba(198,225,247,.72);font-size:16px}.table-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:14px 16px}.table-row+.table-row{border-top:1px solid rgba(198,225,247,.62)}.table-empty{padding:18px 16px;color:#60748d;font-size:13px;font-weight:700}.table-row strong,.table-row span{display:block}.table-row strong{color:#172944;font-size:13px;font-weight:860}.table-row span{margin-top:4px;color:#60748d;font-size:12px;font-weight:650}.table-row em{padding:4px 8px;color:#0f63dc;background:#e8f4ffe6;border-radius:8px;font-size:11px;font-style:normal;font-weight:820}.row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px}.table-row em.redeemed,.table-row em.success{color:#0f5f3d;background:#e8fff3e6}.table-row em.disabled,.table-row em.error{color:#8b2534;background:#ffeef1e6}footer{display:flex;align-items:center;justify-content:space-between;gap:18px;width:min(1160px,calc(100% - 48px));min-height:64px;margin:0 auto;color:#60748d;font-size:13px;font-weight:650}footer a{color:#0f63dc}@media(max-width:760px){.site-header,.hero-layout,footer{width:calc(100% - 28px)}.site-header{min-height:70px}.brand img{width:148px;height:30px}.support-link{min-height:40px;padding:0 12px;font-size:13px}.hero-layout{padding:18px 0 30px}.redeem-card{padding:26px 18px}.card-mark{width:58px;height:58px;margin-bottom:18px}.card-mark img{width:42px;height:42px}h1{font-size:34px}.card-title p{font-size:15px}.mode-tabs{margin-top:26px}.mode-tabs button{min-height:52px;gap:7px;font-size:14px}.code-field{min-height:62px;gap:10px;padding:0 12px}.code-field input{height:58px;font-size:17px}.text-field{height:56px}textarea{min-height:174px;font-size:15px}.redeem-button{min-height:60px;font-size:18px}footer{align-items:flex-start;flex-direction:column;justify-content:center;padding-bottom:18px}.header-actions{flex-wrap:wrap}.admin-layout{grid-template-columns:1fr;width:calc(100% - 28px)}.admin-grid,.admin-auth,.stats-grid{grid-template-columns:1fr}}@media(max-width:420px){.site-header{align-items:flex-start;flex-direction:column;gap:12px;padding-top:16px}.mode-tabs{grid-template-columns:1fr}.security-note{align-items:flex-start;text-align:left}}
