:root{color-scheme:dark;--bg:#17222b;--panel:#232f3c;--line:#3c4853;--text:#ebedef;--muted:#74899b;--acid:#d8ff42;--green:#30d989}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Arial,"Microsoft YaHei","PingFang SC",sans-serif}button,input,select{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:0.125rem solid var(--acid);outline-offset:0.25rem}[hidden]{display:none!important}.app-shell{max-width:37.5rem;min-height:100svh;margin:auto;padding:1.625rem 1.5rem 1.125rem;display:flex;flex-direction:column}.brand{display:flex;gap:1.125rem;align-items:center;margin-bottom:2.375rem;flex-shrink:0}.brand img{width:2.6875rem;height:2.6875rem;object-fit:cover;border-radius:50%}.brand-name{font-family:"Noto Serif SC","SimSun",serif;font-size:1.6875rem;font-style:italic;letter-spacing:0.0625rem}.brand-caption{margin-top:0.1875rem;font-size:0.875rem;color:var(--muted);letter-spacing:0.125rem}.brand-caption a{text-decoration:none;border-bottom:0.0625rem solid #42515d}.progress{height:0.25rem;display:flex;gap:0.375rem;margin:0 0 2.8125rem}.progress i{display:block;flex:1;background:#0d1821;border-radius:0.25rem}.progress i.active{background:linear-gradient(90deg,#7a912c,var(--acid));box-shadow:0 0 1rem #d8ff4250}.progress i.done{background:#526337}#screen{display:flex;flex-direction:column;flex:1;min-height:0}.step-heading{display:flex;align-items:center;gap:1.25rem;margin-bottom:1.4375rem}.step-heading .number{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:2.375rem;white-space:nowrap}.step-heading em{color:var(--muted);font-style:inherit}.step-heading .rule{height:0.125rem;background:#35414b;flex:1}.step-heading small{letter-spacing:0.25rem;font-size:0.8125rem;font-weight:bold;color:var(--muted)}h1{font-family:"Noto Serif SC","SimSun",serif;font-weight:400;font-size:2.6875rem;line-height:1.3;margin:0 0 0.75rem;letter-spacing:0}.description{color:var(--muted);font-size:1.125rem;line-height:1.65;margin:0 0 2.0625rem}.choices{display:grid;gap:0.9375rem;margin-bottom:1.25rem}.choice{width:100%;min-height:7.125rem;border:0.0625rem solid var(--line);border-radius:1.3125rem;background:var(--panel);padding:1.5rem 1.6875rem;display:flex;align-items:center;text-align:left;color:var(--text);gap:1.3125rem;transition:background .16s,border-color .16s,box-shadow .16s}.choice .radio{width:1.8125rem;height:1.8125rem;min-width:1.8125rem;border:0.125rem solid #33414c;background:#17212a;border-radius:50%;position:relative;align-self:flex-start;margin-top:0.25rem}.choice .choice-copy{flex:1}.choice .choice-title{font-size:1.4375rem;font-weight:500;line-height:1.4}.choice .choice-description{color:var(--muted);font-size:1.1875rem;line-height:1.45;margin-top:0.25rem}.choice .tag{color:var(--muted);font-size:0.875rem;letter-spacing:0.125rem;white-space:nowrap}.choice.selected{border:0.125rem solid #a7bc45;box-shadow:0 0 0 0.3125rem #0f1922,0 0.5rem 2.1875rem #d8ff4210;padding:1.4375rem 1.625rem}.choice.selected .radio{border-color:var(--acid)}.choice.selected .radio:after{content:"";position:absolute;inset:0.375rem;background:var(--acid);border-radius:50%}.choice.selected .tag{background:var(--acid);color:#354013;padding:0.25rem 0.5625rem;font-weight:bold;border-radius:1.25rem}.actions{display:flex;gap:0.9375rem;margin-top:auto;padding-top:1.875rem;padding-bottom:1.5625rem;position:sticky;bottom:0;background:linear-gradient(0deg,var(--bg) 80%,transparent);z-index:2}.primary{flex:1;min-height:4.625rem;border:0;border-radius:3.125rem;background:#f1f3ef;color:#101616;font-weight:700;font-size:1.375rem;display:flex;align-items:center;justify-content:center;gap:1.25rem}.primary:disabled{background:#25303a;color:#637482}.primary.confirm{background:var(--acid);box-shadow:0 0.75rem 2.1875rem #d8ff4218}.back{height:4.625rem;width:4.625rem;border-radius:50%;border:0.0625rem solid #3d4954;background:var(--panel);color:var(--text);font-size:2.25rem;font-weight:300}.signature{margin-top:1rem;text-align:center;font-size:1.125rem;color:#a3b2bf;letter-spacing:.5px;min-height:1.5rem;padding-bottom:env(safe-area-inset-bottom)}.field-card{background:var(--panel);padding:1.625rem;border:0.0625rem solid var(--line);border-radius:1.625rem;margin-bottom:1.375rem}.field-card label{display:block;font-size:0.75rem;letter-spacing:0.1875rem;color:var(--muted);margin-bottom:0.625rem}.field-card input{width:100%;border:0;background:none;color:var(--text);font-size:1.5625rem;padding:0.3125rem 0;outline:none;min-height:2.5rem}.unknown{align-self:flex-start;background:#26313b;border:0.0625rem solid #394651;border-radius:2.1875rem;color:#d7dfe6;font-size:1rem;padding:0.8125rem 1.25rem;margin-bottom:1.375rem}.unknown.selected{border-color:var(--acid);color:var(--acid)}.field-note{padding:1rem 1.25rem;border-radius:1rem;background:#222e3a;color:var(--muted);font-size:0.875rem;line-height:1.6}.receipt{position:relative;border:0.0625rem solid var(--line);border-radius:1.8125rem;background:#232e3a;padding:1.75rem 2.125rem;margin-bottom:2.125rem;box-shadow:0 0 0 0.125rem #ffffff05;overflow:hidden}.receipt:after{content:"";position:absolute;bottom:-0.5625rem;left:0.75rem;right:0.75rem;height:1.125rem;background:radial-gradient(circle at 0.5625rem 0.5625rem,var(--bg) 0.5rem,transparent 0.53125rem) 0 0/1.5rem 1.125rem repeat-x}.receipt-row{display:flex;align-items:center;justify-content:space-between;gap:1.5625rem;padding:1.0625rem 0;border-bottom:0.0625rem solid #34414b}.receipt-row:last-child{border:0}.receipt-row span{color:var(--muted);font-family:"SimSun",serif;font-size:1.1875rem}.receipt-row strong{font-size:1.375rem;font-weight:600;overflow-wrap:anywhere;text-align:right}.receipt-row:nth-child(2) strong{font-family:"SimSun",serif;font-style:italic;font-size:1.6875rem}.notice{display:flex;gap:0.8125rem;background:#303f2d;border:0.0625rem solid #6b823c;border-radius:1.375rem;padding:1.3125rem;color:#e6e9df;font-size:1.0625rem;line-height:1.65;margin-bottom:1.875rem}.notice .info{color:#caff16}.challenge-label,.state-tag{align-self:flex-start;border:0.0625rem solid #3d4a55;background:#222e3a;border-radius:1.5625rem;padding:0.625rem 1rem;letter-spacing:0.3125rem;color:#8fa2b4;font:0.8125rem Georgia,serif;margin:1.375rem 0 1.6875rem}.human-title{font-family:Georgia,"Times New Roman",serif;font-style:italic;line-height:1.06;margin:0 0 1.8125rem;font-weight:400}.human-title .human-first{font-size:3.1875rem;color:#7592ac;letter-spacing:-0.1875rem}.human-title .human-first b{font-size:4.25rem;color:#b2d000;font-weight:400}.human-title .human-second{font-size:4.3125rem;color:#eff0ee;display:block;letter-spacing:-0.1875rem}.challenge-description{font-size:1.3125rem;color:var(--muted);line-height:1.7;margin-bottom:2.375rem}.challenge-box{background:#232f3c;border-radius:1.875rem;border:0.0625rem solid #3b4955;box-shadow:0 0 0 0.125rem #ffffff04;min-height:9.875rem;padding:1.6875rem 1.375rem;display:flex;justify-content:center;align-items:center}.challenge-credit{text-align:center;color:var(--muted);font-family:monospace;font-size:0.875rem;letter-spacing:0.0625rem;margin:3rem 0 3.4375rem}.real-widget-note{font-size:0.9375rem;line-height:1.8;color:var(--muted)}.state-screen{display:flex;flex:1;flex-direction:column;align-items:center;padding-top:1.25rem}.state-icon{width:8.125rem;height:8.125rem;border:0.125rem solid var(--green);border-radius:50%;color:var(--green);display:grid;place-items:center;margin:0 0 1.875rem;position:relative}.state-icon svg{width:4.8125rem;height:4.8125rem;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.state-title{font-family:"SimSun",serif;font-style:italic;font-size:2.5rem;margin:0 0 2.1875rem}.state-title small{font-size:1.6875rem;color:var(--muted);margin-right:0.625rem}.state-title mark{background:linear-gradient(0deg,var(--acid) 0 24%,transparent 24%);color:var(--text)}.delivery{width:100%;border-radius:1.4375rem;background:#212d38;border:0.0625rem solid #34424d;padding:1.4375rem;margin-bottom:1.6875rem}.delivery .order-number{display:flex;justify-content:space-between;align-items:center;gap:0.875rem;margin-bottom:1.75rem}.delivery .order-number span,.delivery label{font:0.75rem monospace;letter-spacing:0.125rem;color:var(--muted)}.delivery .order-number strong{font-family:Georgia,serif;font-size:1.125rem}.delivery input{display:block;width:100%;background:#14212a;border:0;color:#ccd7df;font-size:0.875rem;padding:0.75rem 0.625rem;margin:0.75rem 0 1.25rem;border-radius:0.625rem}.delivery-actions{display:flex;align-items:center;justify-content:space-between;gap:0.9375rem}.copy{border:0;background:transparent;color:var(--text);font-size:1rem;cursor:pointer}.enter{border:0;background:#0b1119;color:var(--acid);text-decoration:none;font-size:1.125rem;border-radius:1.875rem;padding:0.875rem 1.375rem;font-weight:700}.state-note{font-size:1rem;color:var(--muted);text-align:center;line-height:1.7}.close-window{background:transparent;color:var(--muted);border:0.0625rem solid #33434c;border-radius:2.1875rem;font-size:1.125rem;padding:1.125rem;width:100%;margin-top:1.875rem}.state-screen.rate{justify-content:center;padding-bottom:6.25rem}.rate .state-icon{color:#d0a34c;border-color:#a78136;width:6.4375rem;height:6.4375rem}.rate .state-tag{align-self:center;font-size:0.6875rem;margin:0 0 1.5rem;letter-spacing:0.125rem}.rate .state-title{font-size:2.3125rem;margin-bottom:1.5625rem}.rate .close-window{border-color:#74827f;color:#dde5df;margin-top:1.875rem}.toast{position:fixed;left:50%;bottom:5rem;transform:translateX(-50%);background:#e8eddf;color:#182025;padding:0.75rem 1.25rem;border-radius:0.875rem;z-index:10;font-size:0.9375rem;max-width:90%;text-align:center}.loading{display:flex;justify-content:center;align-items:center;gap:0.5625rem;min-height:50vh}.loading b{width:0.625rem;height:0.625rem;border-radius:50%;background:var(--muted);animation:blink 1s infinite}.loading b:nth-child(2){animation-delay:.15s}.loading b:nth-child(3){animation-delay:.3s}@keyframes blink{50%{opacity:.2}}.preview-bar{position:sticky;top:0;z-index:8;background:#303f2a;border-bottom:0.0625rem solid #566840;color:#e7f7d1;font-size:0.75rem;padding:0.625rem;display:flex;gap:0.75rem;align-items:center;justify-content:center}.preview-bar select{max-width:8.125rem;background:#17222b;border:0.0625rem solid #586742;padding:0.3125rem;border-radius:0.3125rem}.error-box{padding:1.25rem;background:#462f30;color:#f1c0b7;border:0.0625rem solid #81554f;border-radius:1.125rem;font-size:1.0625rem;line-height:1.7}.challenge-retry{margin-top:1.25rem;padding:0.75rem 1.25rem;border-radius:1.5625rem;background:#e9ecdf;border:0;color:#182025}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* Scale the 576px reference canvas continuously, including desktop WebView zoom. */
html{font-size:min(2.77777778vw,16px);-webkit-text-size-adjust:100%;text-size-adjust:100%}
.app-shell{max-width:36rem;padding:1.5rem 1.875rem 1.125rem;min-height:100svh}
.brand{gap:1.125rem;min-height:3.375rem;margin-bottom:2.6875rem}
.brand img{width:2.625rem;height:2.625rem}
.brand-name{font-size:1.6875rem}.brand-caption{font-size:0.875rem;letter-spacing:0.125rem}
.progress{height:0.375rem;margin-bottom:3.4375rem;gap:0.625rem;flex-shrink:0}
.progress i{position:relative;overflow:hidden;background:#222f3b;box-shadow:none}
.progress i.done{background:#0b1117}.progress i.active{background:#222f3b;box-shadow:none}
.progress i.active:after{content:"";display:block;height:100%;width:100%;transform-origin:left;background:linear-gradient(90deg,#0b1117,#d8ff42);animation:step-sweep 1.7s ease-in-out infinite alternate}
@keyframes step-sweep{0%{transform:scaleX(.12)}100%{transform:scaleX(1)}}
.step-heading{gap:1.25rem;margin-bottom:1.25rem;min-height:2.875rem;flex-shrink:0}
.step-heading .number{font-family:"Times New Roman",serif;font-size:2.625rem;letter-spacing:-0.125rem;line-height:2.875rem}
.step-heading small{font-size:0.9375rem;letter-spacing:0.25rem}
h1{font-size:2.875rem;line-height:1.25;margin-bottom:0.625rem}
.description{font-size:1.25rem;line-height:1.6875rem;margin:0 0 2.125rem}
.choices{gap:0.9375rem;margin-bottom:0}.choice{min-height:7.375rem;padding:1.5rem 1.6875rem;gap:1.3125rem;border-radius:1.3125rem;flex-shrink:0}
.choice .radio{width:1.8125rem;height:1.8125rem;min-width:1.8125rem;margin-top:0.1875rem}
.choice .choice-title{font-size:1.4375rem;font-weight:500;line-height:1.875rem}.choice .choice-description{font-size:1.1875rem;line-height:1.6875rem;margin-top:0.1875rem}
.choice.selected{border:0.1875rem solid #a9be43;padding:1.375rem 1.5625rem;box-shadow:none}
.choice.selected .radio{background:var(--acid);border-color:#10191d}.choice.selected .radio:after{inset:0.4375rem;background:#14212a}
.choice.selected .tag{background:var(--acid);color:#354013;padding:0.3125rem 0.75rem;border-radius:1.25rem}
#screen[data-step="2"] .choice.selected{border:0.25rem solid #090e14;padding:1.3125rem 1.5rem;box-shadow:0 1rem 2.1875rem #d8ff4220}
#screen[data-step="1"] .choice.selected .radio{background:#17212a;border-color:var(--acid)}
#screen[data-step="1"] .choice.selected .radio:after{background:var(--acid)}
.actions{gap:0.9375rem;padding-top:1.25rem;padding-bottom:0;margin-top:auto;flex-shrink:0;bottom:1.125rem;background:linear-gradient(0deg,var(--bg) 78%,#17222b00)}
.primary{min-height:4.875rem;font-size:1.5rem;gap:0.875rem}.primary:disabled{background:#222e3a;color:#74899b}
.primary.confirm{box-shadow:0 0.9375rem 1.875rem #d8ff4225}
.back{width:4.875rem;height:4.875rem;flex-shrink:0;display:grid;place-items:center}
.back svg{width:1.375rem;height:1.375rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.field-card{padding:1.5rem 1.6875rem;min-height:7.375rem;border-radius:1.3125rem;margin-bottom:1.5rem;flex-shrink:0}
.field-card label{font-family:"SimSun",serif;font-size:1rem;letter-spacing:0.125rem;margin-bottom:0.625rem}
.input-row{display:flex;align-items:center;gap:0.75rem}.field-card input{min-width:0;font-size:1.6875rem;line-height:2.25rem;min-height:2.25rem;padding:0;flex:1}
.field-card input::placeholder{font-style:italic;color:var(--muted);opacity:1}
#counterpart-count{font-family:"SimSun",serif;font-size:0.875rem;color:var(--muted);white-space:nowrap;letter-spacing:0.0625rem}
.inline-icon{width:1.375rem;height:1.375rem;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.unknown{display:flex;align-items:center;gap:0.75rem;min-height:3.625rem;padding:0.8125rem 1.25rem;font-size:1.25rem;margin-bottom:1.875rem;flex-shrink:0}.unknown .inline-icon{color:var(--muted)}
.field-note{display:flex;align-items:flex-start;gap:0.75rem;padding:1.125rem 1.25rem;border-radius:1.3125rem;font-size:1.125rem;line-height:1.6875rem;flex-shrink:0}
.field-note .inline-icon{margin-top:0.125rem}
.receipt{padding:1.6875rem 2.25rem 1.25rem;min-height:16.875rem;border-radius:1.8125rem;margin-bottom:2.25rem;flex-shrink:0}
.receipt-row{position:relative;min-height:4.625rem;padding:1.125rem 0;gap:1.25rem;z-index:1}.receipt-row span{font-size:1.1875rem}.receipt-row strong{font-size:1.4375rem;line-height:2rem}.receipt-row:nth-of-type(2) strong{font-family:"SimSun",serif;font-style:italic;font-size:1.75rem}
.receipt:after{bottom:-0.5rem;left:0;right:0;height:1.25rem;background:radial-gradient(circle at 0.75rem 0.625rem,var(--bg) 0.5rem,transparent 0.53125rem) 0 0/1.5rem 1.25rem repeat-x}
.receipt-stamp{position:absolute;right:-0.3125rem;top:4.875rem;width:6.875rem;height:6.875rem;border:0.125rem dashed #a2ad2033;border-radius:50%;transform:rotate(-18deg);pointer-events:none}
.receipt-stamp:after{content:"";position:absolute;inset:1.75rem 1.25rem;border:0.1875rem double #a2ad2022;border-radius:0.375rem}
.notice{padding:1.125rem 1.25rem;border-radius:1.3125rem;font-size:1.125rem;line-height:1.75rem;gap:0.75rem;margin-bottom:0;min-height:5.875rem;flex-shrink:0}.notice .inline-icon{color:#badc00;margin-top:0.1875rem}
.challenge-label{font:0.8125rem "Times New Roman",serif;letter-spacing:0.3125rem;min-height:2.4375rem;padding:0.625rem 1rem;margin:1.375rem 0 1.6875rem}
.human-title{font-family:"Times New Roman",serif;line-height:1;margin-bottom:1.8125rem}
.human-title .human-first{display:block;height:4rem;font-size:3.1875rem;line-height:4rem;letter-spacing:-0.1875rem;transform:scaleX(.74);transform-origin:left}
.human-title .human-first b{font-size:4.25rem}.human-title .human-second{font-size:4.3125rem;line-height:4rem;letter-spacing:-0.1875rem;transform:scaleX(.8);transform-origin:left}
.challenge-description{font-size:1.375rem;line-height:2.25rem;margin-bottom:2.375rem}
.challenge-box{min-height:10.625rem;padding:1.875rem 2rem;border-radius:1.875rem;flex-shrink:0}
.turnstile-frame{width:100%;min-width:0;position:relative}
#turnstile-widget{width:300px;min-height:65px;transform-origin:top left}.challenge-credit{font-size:0.875rem;line-height:1.25rem;margin:3rem 0 3.4375rem}

.brand-name{line-height:2rem}.brand-caption{line-height:1.125rem}
.receipt .receipt-row strong{font-family:Arial,"Microsoft YaHei",sans-serif;font-style:normal;font-size:1.4375rem}.receipt .receipt-row:nth-of-type(2) strong{font-family:"SimSun",serif;font-style:italic;font-size:1.75rem}
.human-title .human-second{transform:scaleX(.92)}
