:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;color:#233633;font-synthesis:none}*{box-sizing:border-box}body.public-page{margin:0;background:#f3f6f4;min-height:100vh;padding:40px 20px}.public-card{--form-accent:#126e61;--form-bg:#fff;--form-radius:10px;--form-space:24px;background:var(--form-bg);border-radius:18px;max-width:680px;margin:0 auto;padding:40px 48px;box-shadow:0 12px 60px #13372e09}.demo-banner{background:#f4f5ef;color:#596553;font-size:11px;padding:9px 12px;border-radius:6px;margin-bottom:28px;text-align:center;line-height:1.7}.public-header{margin-bottom:30px}.public-eyebrow{font-size:10px;letter-spacing:2.4px;color:var(--form-accent);font-weight:700}.public-header h1{font-size:26px;line-height:1.5;margin:10px 0 12px;letter-spacing:-.5px}.public-header p{font-size:13px;line-height:1.95;color:#67746f;white-space:pre-wrap;margin:0}.form-steps{display:flex;gap:12px;list-style:none;padding:0 0 22px;margin:0 0 28px;border-bottom:1px solid #e6ece7}.form-steps li{font-size:11px;color:#86928c;flex:1}.form-steps .current{font-weight:700;color:var(--form-accent)}.form-fields{display:grid;gap:var(--form-space)}.form-field[hidden]{display:none}.form-field>label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;margin-bottom:10px;line-height:1.6}.required,.optional{font-size:9px;font-weight:500;padding:2px 5px;border-radius:3px;flex-shrink:0}.required{background:#edf5ef;color:#296752}.optional{background:#f2f3f2;color:#7d8882}.form-field input:not([type=checkbox]),.form-field textarea,.form-field select{width:100%;font:inherit;font-size:14px;border:1px solid #d8e1da;border-radius:var(--form-radius);padding:12px 13px;background:#fff;color:#253b32;min-height:46px;resize:vertical}.form-field input::placeholder{color:#a5aea8}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{outline:2px solid var(--form-accent);outline-offset:2px}.field-hint{font-size:10px;color:#7b8981;display:block;margin-top:7px}.field-hint:empty{display:none}.check-label{font-weight:400!important;align-items:flex-start!important}.check-label input{margin-top:4px;accent-color:var(--form-accent);width:16px;height:16px;flex-shrink:0}.form-primary,.form-secondary{border-radius:var(--form-radius);padding:14px 20px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;line-height:1.5;min-height:48px}.form-primary{background:var(--form-accent);color:white;border:1px solid transparent;width:100%;margin-top:28px}.form-primary span{float:right}.form-primary:hover{filter:brightness(.94)}.form-primary:disabled{opacity:.55;cursor:wait}.form-secondary{background:white;color:#43594e;border:1px solid #dce4de}.public-actions{display:flex;gap:12px;margin-top:28px}.public-actions .form-primary{margin:0;flex:2}.public-actions .form-secondary{flex:1}.form-brand{text-align:center;font-size:10px;color:#9aa69f;margin-top:32px}.form-brand strong{font-size:12px;color:#64776c;letter-spacing:-.2px}.public-error{background:#fff1ed;color:#9a4230;padding:15px;border:1px solid #efcfc4;border-radius:8px;font-size:12px;line-height:1.9;white-space:pre-wrap;margin-top:20px}.public-error[hidden]{display:none}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.review-fields{margin:0}.review-fields dt{font-size:11px;color:#74847a;padding:14px 0 7px}.review-fields dd{font-size:14px;line-height:1.8;margin:0;padding:0 0 15px;border-bottom:1px solid #e6ece7;white-space:pre-wrap;overflow-wrap:anywhere}.completion-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;margin:24px 0;color:var(--form-accent);background:#edf5ef;font-size:24px}.local-receipt{font-size:12px;color:#3d6b50;background:#edf5ef;padding:15px;border-radius:8px;line-height:1.9}.receipt-id{font-size:10px;overflow-wrap:anywhere;color:#86958b;margin:24px 0}.public-card :focus-visible{outline:2px solid var(--form-accent);outline-offset:3px}@media(max-width:600px){body.public-page{padding:16px 10px}.public-card{padding:26px 22px;border-radius:12px}.public-header h1{font-size:23px}.public-actions{flex-direction:column-reverse}.form-primary,.form-secondary{width:100%}.demo-banner{font-size:10px;padding:8px}}

.form-brand .form-brand-symbol{width:24px;height:24px;vertical-align:middle;margin-right:8px}
