:root{font-family:Segoe UI,system-ui,-apple-system,sans-serif;color:#172b30;background:#f4f7f6;font-synthesis:none;--teal:#116958;--muted:#637374;--line:#e2e9e6}
*{box-sizing:border-box}body{margin:0}a{color:inherit}.topbar{height:86px;border-bottom:1px solid var(--line);padding:0 max(24px,calc((100vw - 1060px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff}.brand{text-decoration:none;font-size:15px;font-weight:650;display:flex;align-items:center;gap:12px}.brand-icon{display:grid;place-items:center;width:35px;height:35px;border-radius:10px;background:var(--teal);color:#fff;font-size:26px}.top-note{color:var(--muted);font-size:12px}main{max-width:820px;margin:0 auto;padding:48px 24px 0}.intro{margin-bottom:29px}.eyebrow{display:block;letter-spacing:1.8px;color:var(--teal);font-size:10px;font-weight:750}h1{font-size:36px;letter-spacing:-1.1px;font-weight:650;line-height:1.2;margin:11px 0 12px}.intro p,.receipt>p{color:var(--muted);font-size:15px;line-height:1.6;margin:0}.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:34px 38px;box-shadow:0 8px 34px #18342c05}fieldset{margin:0 0 30px;padding:0 0 29px;border:0;border-bottom:1px solid var(--line);min-width:0}fieldset:last-of-type{margin-bottom:22px;padding-bottom:25px}legend{display:flex;align-items:center;gap:10px;padding:0;font-size:16px;font-weight:650;margin-bottom:0}.step{display:inline-grid;place-items:center;border:1px solid #dfe9e4;border-radius:50%;width:25px;height:25px;color:var(--teal);font-size:11px;background:#f8fbf9;flex-shrink:0}.hint{color:var(--muted);font-size:12px;line-height:1.5;margin:8px 0 18px 35px}.options{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.option{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:9px;padding:15px 14px;cursor:pointer;font-size:13px;overflow-wrap:anywhere;transition:background .15s,border-color .15s}.option:hover{border-color:#8bbca9}.option:has(input:checked){background:#f0f9f4;border-color:#79aa98}.option input{accent-color:var(--teal);width:16px;height:16px;margin:0;flex-shrink:0}.dropzone{border:1.5px dashed #a9c4b8;border-radius:11px;background:#f8fbf9;padding:27px 16px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;cursor:pointer;color:var(--teal);position:relative}.dropzone strong{color:#2b403d;font-size:14px;font-weight:600;margin-top:4px}.dropzone>span{font-size:12px;color:var(--muted)}.dropzone .choose{font-weight:650;color:var(--teal);text-decoration:underline;text-underline-offset:3px}.dropzone input{position:absolute;width:100%;height:100%;left:0;top:0;opacity:0;cursor:pointer}.dropzone:hover,.dropzone.dragging{background:#edf7f1;border-color:var(--teal)}.dropzone:focus-within{outline:3px solid #a8d7c4;outline-offset:3px}.small{font-size:11px;color:var(--muted);line-height:1.6;margin:10px 0 0}.file-list{list-style:none;padding:0;margin:12px 0 0}.file-list li{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;margin-top:8px;font-size:12px}.file-name{flex:1;min-width:0;overflow-wrap:anywhere}.file-size{color:var(--muted);white-space:nowrap}.remove-file{border:0;background:transparent;color:var(--muted);font-size:20px;cursor:pointer;padding:0 4px}.file-summary{color:var(--muted);font-size:11px;margin:12px 0 0}.optional{font-weight:400;font-size:11px;color:var(--muted);margin-left:auto}.field-label{display:block;font-size:12px;font-weight:600;margin:18px 0 8px}.text-input{font:inherit;font-size:13px;width:100%;border:1px solid #d8e1dd;border-radius:8px;padding:12px;color:inherit;background:white}.text-input:focus{outline:2px solid #acd0be;outline-offset:1px}.text-input::placeholder{color:#8a9895}textarea{resize:vertical;min-height:90px}.form-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}.form-bottom p{font-size:11px;line-height:1.6;color:var(--muted);margin:0}.primary{background:var(--teal);border:1px solid var(--teal);border-radius:8px;color:#fff;font-family:inherit;font-size:13px;font-weight:600;padding:14px 19px;display:inline-flex;align-items:center;justify-content:center;gap:28px;text-decoration:none;cursor:pointer;white-space:nowrap;min-height:46px}.primary:hover{background:#0b5547}.primary:disabled{opacity:.65;cursor:wait}.primary span{font-size:18px;font-weight:400}.alert{border-radius:8px;background:#fff2ef;color:#963c2a;border:1px solid #f5d1c8;font-size:13px;line-height:1.5;padding:14px 16px;margin:0 0 24px}.upload-status{margin:0 0 20px;font-size:12px;color:var(--teal)}progress{display:block;accent-color:var(--teal);width:100%;height:9px;margin-top:10px}footer{text-align:center;color:#8b9993;font-size:10px;padding:27px 20px 32px}footer span{padding:0 8px}.receipt{margin:40px 0 80px;text-align:center;padding:44px 38px}.success-icon{display:grid;place-items:center;width:58px;height:58px;background:#e7f4eb;color:var(--teal);border-radius:50%;font-size:28px;margin:0 auto 25px}.receipt h1{font-size:31px}.receipt dl{margin:30px 0;text-align:left;border:1px solid var(--line);border-radius:10px;padding:6px 20px}.receipt dl>div{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.receipt dl>div:last-child{border-bottom:0}.receipt dt{color:var(--muted)}.receipt dd{margin:0;text-align:right;font-weight:600;overflow-wrap:anywhere;min-width:0}.receipt-id{font-family:Consolas,monospace;font-size:11px}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #a8d7c4;outline-offset:3px}[hidden]{display:none!important}
@media(max-width:600px){.topbar{height:70px;padding:0 20px}.top-note{display:none}main{padding:32px 15px 0}h1{font-size:29px}.intro{margin-bottom:23px}.intro p{font-size:13px}.card{padding:25px 21px;border-radius:13px}.options{grid-template-columns:1fr}.hint{margin-left:0}legend{font-size:14px;gap:8px}.form-bottom{align-items:stretch;flex-direction:column;gap:17px}.form-bottom p br{display:none}.primary{width:100%}.receipt{padding:34px 23px;margin-top:12px}.receipt dl{padding:5px 14px}.receipt dl>div{flex-direction:column;gap:7px}.receipt dd{text-align:left}.receipt h1{font-size:27px}.optional{font-size:10px}.dropzone strong{font-size:13px}}
