@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;500;600;700;800&display=swap');
:root{font-family:'Noto Sans TC',system-ui,sans-serif;color:#1d2e3f;background:#f4f8fc;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 8% 10%,#dcecff 0,transparent 36%),radial-gradient(circle at 96% 85%,#e6eef8 0,transparent 33%),#f4f8fc}button,input,select{font:inherit}button{cursor:pointer}a{color:#1b5d92}.shell{max-width:720px;margin:auto;padding:24px 20px 32px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.identity{display:flex;align-items:center;gap:11px}.brand-logo{width:76px;height:52px;object-fit:contain;flex:0 0 76px}.identity strong,.identity small{display:block}.identity strong{font-size:18px}.identity small{font-size:11px;color:#667b90;margin-top:2px}.top-note{font-size:11px;color:#285c77;background:#ebf8f6;border:1px solid #d7ede9;border-radius:99px;padding:8px 10px;white-space:nowrap}.hero{background:linear-gradient(125deg,#102e4c 0%,#123f65 62%,#286a90 100%);border-radius:24px;color:white;padding:32px 26px 25px;box-shadow:0 20px 40px #244b782a;overflow:hidden;position:relative}.hero:after{content:'';position:absolute;width:230px;height:230px;border:48px solid #ffffff0b;border-radius:50%;right:-145px;top:-105px}.hero-copy,.hero-points{position:relative;z-index:1}.eyebrow{display:inline-block;background:#ffffff22;border:1px solid #ffffff37;border-radius:99px;padding:5px 11px;font-size:11px}.hero h1{font-size:32px;line-height:1.28;letter-spacing:-.04em;margin:15px 0 10px}.hero h1 em{font-style:normal;color:#ffe09a}.hero p{font-size:13px;line-height:1.8;color:#deebf6;margin:0;max-width:590px}.hero-points{display:flex;gap:7px;margin-top:22px}.hero-points span{flex:1;text-align:center;background:#ffffff1d;border:1px solid #ffffff24;border-radius:9px;padding:9px 4px;font-size:11px;font-weight:700}.notice{font-size:11px;line-height:1.7;color:#586b7e;background:#fff;border:1px solid #e2e8f1;padding:11px 15px;border-radius:11px;margin:12px 0}.panel{background:#fff;border:1px solid #e0e8f1;border-radius:23px;padding:24px;box-shadow:0 16px 36px #1d3d6210}.panel-head{display:flex;justify-content:space-between}.step-label{font-size:11px;color:#647890;font-weight:700}.step-dots{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:-16px}.step-dots i{width:25px;height:25px;border:1px solid #dbe4ed;border-radius:50%;display:grid;place-items:center;font-size:11px;font-style:normal;color:#9aadc0}.step-dots i.current{background:#123d61;color:#fff;border-color:#123d61}.step-dots b{width:26px;height:1px;background:#dce5ee}.panel h2{font-size:22px;letter-spacing:-.035em;margin:22px 0 4px}.subhead{color:#6a7c90;font-size:12px;line-height:1.6;margin:0 0 17px}.help-strip{background:#f0f6fc;border:1px solid #e3edf7;border-radius:10px;padding:11px 13px;color:#3d6788;font-size:11px;margin:0 0 13px}.amount-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.amount-card{text-align:left;position:relative;border:1px solid #e0e7ef;background:#fff;border-radius:15px;min-height:108px;padding:18px;transition:transform .16s,border-color .16s,box-shadow .16s}.amount-card:hover,.amount-card:focus-visible{transform:translateY(-2px);border-color:#3d80af;box-shadow:0 8px 22px #1a56871a;outline:none}.amount-card strong{display:block;font-size:19px}.amount-card small{display:block;color:#718499;margin-top:5px;font-size:11px}.amount-card span{position:absolute;right:14px;bottom:13px;background:#eef4f9;border-radius:8px;width:26px;height:26px;display:grid;place-items:center;color:#315d7d;font-size:20px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.fields label,.fields legend{font-size:12px;font-weight:700}.fields input:not([type=radio]),.fields select{display:block;margin-top:7px;border:1px solid #d6e0e9;border-radius:10px;height:47px;padding:0 12px;width:100%;background:#fff;color:#1d2e3f}.fields input:focus,.fields select:focus{outline:2px solid #a5d4ed;border-color:#2b759f}.fields fieldset{grid-column:span 2;border:0;padding:0;margin:0}.choice-row{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:8px}.choice-row label{border:1px solid #d6e0e9;border-radius:10px;height:47px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}.choice-row label:has(input:checked){background:#eff7fb;border-color:#3b87b4}.choice-row input{accent-color:#16537a}.qualify{font-size:11px;color:#5b6c7d;line-height:1.7}.actions{display:flex;gap:9px}.actions button{border:0;border-radius:10px;padding:14px 15px;font-size:13px;font-weight:800}.back{background:#edf2f7;color:#35526b}.submit{flex:1;background:#123f65;color:#fff}.submit:disabled{opacity:.6;cursor:wait}.error{min-height:18px;color:#a82929;font-size:12px}.consent{font-size:10px;color:#78899a;line-height:1.7}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}footer{text-align:center;color:#91a0ae;font-size:10px;margin-top:22px}footer a{color:inherit}@media(max-width:560px){.shell{padding:13px 10px 25px}.topbar{padding:2px 5px}.identity strong{font-size:15px}.identity small{font-size:10px}.top-note{font-size:9px;padding:6px}.hero{padding:25px 20px 20px;border-radius:19px}.hero h1{font-size:27px}.hero-points{margin-top:17px}.hero-points span{font-size:10px}.panel{padding:18px;border-radius:19px}.panel h2{font-size:21px}.amount-card{padding:14px;min-height:101px}.amount-card strong{font-size:17px}.fields{grid-template-columns:1fr}.fields fieldset{grid-column:span 1}}@media(max-width:350px){.top-note{display:none}.amount-card strong{font-size:15px}}

@media(max-width:480px){.topbar{flex-wrap:wrap;gap:12px}.identity{min-width:0}.identity strong{font-size:17px}}

/* Keep the step label and progress indicator on the same row without overlap. */
.panel-head>div{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%}
.step-label{line-height:1.4}
.step-dots{flex:none;margin-top:0}



/* Show the tree mark from the supplied logo at a legible size. */
.brand-logo{display:block;flex:0 0 64px;width:64px;height:55px;border-radius:8px;background:#fff url("/tengzhen-logo.png") no-repeat center -26px;background-size:148.4px 147.4px}
