:root{color-scheme:light;--ink:#202722;--muted:#6f776f;--green:#345a44;--line:#dce2d7;--paper:#f6f7f1}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}header,footer{max-width:1220px;margin:auto;padding:30px 48px;display:flex;justify-content:space-between;align-items:center}a{color:var(--ink);text-decoration:none;font-size:14px}.brand{font-size:25px;font-weight:750;letter-spacing:2px}.brand span{font-size:12px;letter-spacing:1px;margin-left:16px;color:var(--muted);font-weight:400}main{max-width:1124px;margin:35px auto 70px;display:grid;grid-template-columns:1fr 1.1fr;gap:65px;padding:0 30px}.intro{padding:50px 0}.eyebrow{font-size:11px;letter-spacing:3px;color:var(--green)}h1{font-size:clamp(46px,5vw,68px);line-height:1.2;letter-spacing:-3px;margin:27px 0}p{font-size:14px;line-height:1.9;color:var(--muted)}.plans{display:flex;gap:9px;flex-wrap:wrap;margin:30px 0}.plans span,.tag{border:1px solid var(--line);padding:7px 11px;border-radius:6px;font-size:12px;color:var(--green)}.panel{padding:32px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 18px 50px #20392007;align-self:start;min-height:440px}.steps{padding:0;display:flex;list-style:none;justify-content:space-between;font-size:11px;color:#939b90;border-bottom:1px solid var(--line);padding-bottom:22px;margin:0 0 34px}.steps .active{color:var(--green);font-weight:700}h2{font-size:24px;letter-spacing:-.6px;margin:17px 0 12px}label{font-size:13px;display:block;margin:22px 0 9px}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:8px;padding:14px;font:inherit;font-size:14px;background:#fcfdf9;color:var(--ink)}input:focus,textarea:focus,select:focus{outline:2px solid #90ae92;outline-offset:2px}textarea{resize:vertical;font-family:monospace;font-size:12px}button{font:inherit;cursor:pointer;border:0;border-radius:8px;padding:11px 16px;font-size:13px}button:disabled{cursor:default;opacity:.45}.primary{width:100%;padding:16px;background:var(--green);color:white;margin-top:24px}.secondary{background:#f0f3ec;margin-top:12px;margin-right:8px;color:var(--green)}.small{font-size:12px}.notice{grid-column:1/-1;background:#e9eddb;border:1px solid #dae1c6;color:#526341;padding:13px 18px;border-radius:10px;font-size:12px;display:flex;justify-content:space-between;align-items:center;gap:10px}.notice button{background:#fff;font-size:12px;padding:7px 10px}.error{padding:12px 14px;border-radius:8px;background:#fff0e8;color:#994621;font-size:13px;margin-bottom:18px}.check{display:flex;align-items:center;gap:9px}.check input{width:auto}dl{padding:16px;background:#f6f7f1;border-radius:10px}dt{font-size:11px;color:var(--muted);margin-top:14px}dt:first-child{margin-top:0}dd{font-size:15px;margin:6px 0;overflow-wrap:anywhere}.timeline{padding-left:19px;font-size:13px;color:var(--muted)}.timeline li{padding:8px 0}.timeline time{display:block;font-size:10px;margin-top:5px;color:#91978e}footer{border-top:1px solid var(--line);font-size:12px;color:var(--muted)}footer span{font-size:11px}[hidden]{display:none!important}.admin-main{display:block;max-width:1200px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.admin-grid .wide{grid-column:1/-1}.admin-grid .panel{min-height:0}.scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}th,td{text-align:left;border-bottom:1px solid var(--line);padding:12px 10px}th{color:var(--muted);font-weight:400}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--paper);padding:12px;border-radius:8px;font-size:11px}.tag{display:inline-block}.topline{display:flex;justify-content:space-between;align-items:center}@media(max-width:760px){header,footer{padding:24px}main{grid-template-columns:1fr;gap:20px;margin:5px auto 35px;padding:0 20px}.intro{padding:12px 5px}.intro h1{font-size:44px;margin:16px 0}.intro h1 br{display:block}.intro>p{margin:12px 0}.intro .small{display:none}.plans{margin:18px 0}.panel{padding:25px 22px;min-height:0}.notice{flex-direction:column;align-items:flex-start}.admin-grid{grid-template-columns:1fr}footer span{display:none}.steps{font-size:10px;gap:10px}}

/* Keep long order references inside narrow customer panels. */
#order-id{overflow-wrap:anywhere}
@media(max-width:760px){.intro h1{font-size:36px;letter-spacing:-1.5px}.panel{min-width:0}input,textarea,select{font-size:16px}}

/* Customer recharge center; admin styles remain independent. */
.recharge-page{--ink:#202438;--muted:#73788c;--green:#6450c8;--line:#e4e6f0;--paper:#f5f6fb;background:radial-gradient(ellipse at 8% 12%,#eeebfc,transparent 48%),#f5f6fb}
.recharge-page header{max-width:none;padding:22px max(24px,calc((100vw - 1120px)/2));background:#ffffffed;border-bottom:1px solid var(--line)}
.recharge-page .brand{letter-spacing:0;color:#41338d}.recharge-page .brand span{letter-spacing:0}
.recharge-page main{max-width:1180px;grid-template-columns:360px minmax(0,1fr);gap:24px;margin:30px auto 48px}
.recharge-page .service-overview{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:8px 0 12px}
.recharge-page h1{font-size:30px;letter-spacing:-.7px;margin:8px 0 6px}.recharge-page .service-overview p{margin:0}.recharge-page .eyebrow{letter-spacing:1px;font-size:12px;font-weight:600}
.recharge-page .plans{margin:0;gap:8px}.recharge-page .plans span{background:#fff;border-color:#ded8f5;color:#5b49ae;padding:10px 13px}
.recharge-page .recharge-guide,.recharge-page .recharge-form{background:white;border:1px solid var(--line);border-radius:18px;box-shadow:0 8px 32px #30306005;padding:28px;min-width:0}
.recharge-page h2{font-size:22px;letter-spacing:0}.recharge-page .recharge-guide>p{margin-bottom:24px}
.recharge-page .guide-list{list-style:none;counter-reset:guide;margin:0;padding:0}.recharge-page .guide-list li{counter-increment:guide;position:relative;padding:0 0 26px 40px}.recharge-page .guide-list li:before{content:"0" counter(guide);position:absolute;left:0;top:-3px;border-radius:9px;background:#f0edfc;color:#7560cf;padding:7px;font-size:11px;font-weight:700}.recharge-page strong{font-size:14px}.recharge-page .guide-list p{font-size:13px;margin:6px 0}.recharge-page .guide-list a{font-size:12px;color:var(--green);font-weight:600}
.recharge-page .lookup-help{background:#f7f7fc;border-radius:10px;padding:16px}.recharge-page .lookup-help p{font-size:12px;margin:6px 0 0}
.recharge-page .form-heading{border-bottom:1px solid var(--line);margin:-2px -28px 24px;padding:0 28px 18px}.recharge-page .form-heading h2{margin:8px 0}.recharge-page .form-heading p{margin:0;font-size:13px}.recharge-page .steps{font-size:12px;background:#f8f7fc;border:0;border-radius:10px;padding:16px;margin-bottom:28px}.recharge-page .recharge-form{min-height:500px}.recharge-page input,.recharge-page textarea{background:#fafbfe}.recharge-page input:focus,.recharge-page textarea:focus{outline-color:#b2a4ed}.recharge-page .primary{background:#6650c9}.recharge-page .secondary{background:#f0edfa}.recharge-page footer{max-width:1120px;padding:22px 0}.recharge-page .notice{background:#fff8e9;border-color:#efdfbb;color:#85682b}
@media(max-width:760px){.recharge-page header{padding:20px}.recharge-page .brand{font-size:22px}.recharge-page .brand span{margin-left:8px;font-size:11px}.recharge-page main{grid-template-columns:minmax(0,1fr);padding:0 16px;margin-top:20px;gap:18px}.recharge-page .service-overview{display:block}.recharge-page h1{font-size:27px}.recharge-page .plans{margin-top:16px}.recharge-page .recharge-form{grid-row:3;min-height:0}.recharge-page .recharge-guide{grid-row:4}.recharge-page .recharge-guide,.recharge-page .recharge-form{padding:24px}.recharge-page .form-heading{margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px}.recharge-page .steps{gap:8px;font-size:11px}.recharge-page footer{margin:0 20px}.recharge-page .notice{grid-row:1}}

.customer-tools{display:flex;gap:10px;margin:0 0 24px}.customer-tools button{background:#eeeafa;color:#5241a3;flex:1}.customer-tools button:focus-visible{outline:2px solid #6450c8}

button,a,input,textarea,select{transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .12s ease,opacity .16s ease}
button:not(:disabled):hover{filter:brightness(.95);box-shadow:0 4px 12px #30255d15}button:not(:disabled):active{transform:translateY(1px) scale(.98);box-shadow:none}button:focus-visible,a:focus-visible{outline:3px solid #aaa0dd;outline-offset:3px}
button.is-loading{cursor:wait;opacity:.8;pointer-events:none}button.is-loading:before{content:'';display:inline-block;vertical-align:-2px;width:13px;height:13px;margin-right:9px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:button-spin .7s linear infinite}
.customer-tools button[aria-pressed="true"]{background:#6450c8;color:white;box-shadow:0 3px 9px #6450c82a}
.recharge-form form:not([hidden]),#confirmation:not([hidden]),#result:not([hidden]){animation:panel-enter .18s ease-out}
.action-notice{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);z-index:1000;padding:13px 20px;border-radius:12px;background:#282b38;color:white;box-shadow:0 8px 30px #0002;font-size:13px;max-width:calc(100vw - 32px);width:max-content;pointer-events:none}.action-notice.is-error{background:#934329}
@keyframes button-spin{to{transform:rotate(360deg)}}@keyframes panel-enter{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){*,*:before{transition:none!important;animation:none!important}}
