/* Scoped styles: original public pages keep their existing design. */
.tool-page{background:var(--paper);min-height:100vh}.tool-header{padding:22px 0;border-bottom:1px solid var(--line)}.tool-header .shell{display:flex;justify-content:space-between;align-items:center;gap:20px}.tool-header a{min-height:44px;display:inline-flex;align-items:center}.tool-main{padding:48px 0 64px}.tool-main h1{font-size:clamp(32px,4vw,44px);margin:0 0 16px;line-height:1.4}.tool-lead{color:var(--muted);max-width:680px}.tool-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:start}.tool-panel{background:var(--white);border:1px solid var(--line);border-radius:6px;padding:32px}.tool-panel h2{font:600 22px/1.5 var(--sans);margin-bottom:20px}.tool-form label,.tool-label{display:block;font-weight:600;margin-bottom:8px}.tool-form input:not([type=radio]):not([type=checkbox]),.tool-form textarea{width:100%;min-height:48px;border:1px solid #978883;border-radius:4px;padding:11px 12px;font:inherit;background:#fff;color:var(--ink)}.tool-form textarea{resize:vertical}.tool-form input:focus-visible,.tool-form textarea:focus-visible{outline:3px solid var(--brand);outline-offset:3px}.tool-field{margin-bottom:20px;min-width:0}.tool-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.tool-help,.tool-privacy{font-size:14px;color:var(--muted);line-height:1.8;margin-top:8px}.tool-form fieldset{border:0;padding:0;margin:0 0 24px;min-width:0}.tool-form legend{font-weight:600;margin-bottom:10px}.tool-choice{display:flex;gap:20px;flex-wrap:wrap}.tool-choice label{display:flex;align-items:center;gap:8px;min-height:44px;margin:0}.tool-choice input,.tool-consent input{width:20px;height:20px;accent-color:var(--brand);flex-shrink:0}.tool-form .tool-consent{display:flex;align-items:flex-start;gap:10px;font-weight:400;line-height:1.7;min-height:44px}.tool-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.tool-actions>*{min-height:48px}.tool-status{min-height:30px;line-height:1.8;margin:16px 0 0;color:var(--brand)}.tool-page .button:disabled{opacity:.6;cursor:wait}.tool-preview{text-align:center}.tool-preview canvas{display:block;width:min(100%,360px);height:auto;margin:0 auto;background:#fff}.tool-preview input{font-size:14px!important}.tool-preview .tool-actions{justify-content:center}.tool-empty{min-height:260px;display:grid;place-content:center;color:var(--muted)}.tool-note{border-top:1px solid var(--line);padding-top:20px;margin-top:24px}.tool-errors{border-left:3px solid var(--brand);padding:12px 16px;margin:16px 0;background:var(--soft)}.tool-errors a{display:block;text-decoration:underline;margin:8px 0}.field-error{display:block;color:var(--brand);font-size:14px;line-height:1.6;margin-top:5px}.tool-success{background:var(--soft);padding:20px;border-left:3px solid var(--brand);margin-bottom:24px}.tool-success h2{font-size:22px}.tool-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.tool-page [hidden]{display:none!important}.tool-summary li{margin-bottom:16px}.consult-form-entry{margin:24px 0}.tool-form [aria-invalid=true]{border-color:var(--brand)}
@media(max-width:760px){.tool-grid{grid-template-columns:1fr;gap:24px}.tool-panel{padding:24px}.tool-main{padding:32px 0}.tool-fields{grid-template-columns:1fr}.tool-header .shell{gap:12px}.tool-header .brand small{display:none}.tool-actions .button{flex:1 1 auto;text-align:center}.tool-choice{gap:12px}.tool-header .brand{font-size:18px}}
@media(prefers-reduced-motion:reduce){.tool-page *{scroll-behavior:auto!important;transition:none!important}}

/* Direct contact is the first option after entering the consultation page. */
.consult-direct{display:grid;grid-template-columns:minmax(0,1fr) 300px;align-items:center;gap:40px;padding:32px 40px;margin:26px 0 32px;background:var(--white);border:1px solid var(--line);border-top:3px solid var(--brand);border-radius:var(--radius)}
.consult-direct h2{font:500 30px/1.4 var(--serif);margin:0 0 24px}
.consult-direct-copy>p{margin-bottom:8px;color:var(--muted)}
.consult-phone{display:inline-flex;align-items:center;min-height:48px;font-size:clamp(28px,3vw,40px);font-weight:650;color:var(--brand);font-variant-numeric:tabular-nums;line-height:1.4;letter-spacing:.02em}
.consult-phone:hover{text-decoration:underline;text-underline-offset:6px}
.consult-direct-copy .consult-phone-hint{font-size:13px;margin:6px 0 24px}
.consult-wechat-hint{max-width:420px;font-size:16px;line-height:1.9}
.consult-wechat{margin:0;text-align:center}
.consult-wechat a{display:block;color:var(--brand)}
.consult-wechat img{width:260px;max-width:100%;height:auto;margin:0 auto}
.consult-wechat a>span{display:flex;align-items:center;justify-content:center;min-height:44px;font-size:14px;text-decoration:underline;text-underline-offset:4px}
.consult-wechat figcaption{font-size:13px;line-height:1.8;color:var(--muted);margin-top:2px}
.consult-form-intro{font-size:17px;color:var(--ink);margin:0 0 20px}
@media(max-width:700px){.consult-direct{grid-template-columns:minmax(0,1fr);gap:18px;padding:22px 20px;margin-top:22px}.consult-direct h2{font-size:25px;margin-bottom:14px}.consult-phone{font-size:30px}.consult-direct-copy .consult-phone-hint{margin-bottom:12px}.consult-wechat-hint{font-size:14px;line-height:1.7}.consult-wechat figcaption{max-width:300px;margin-inline:auto}.consult-direct-copy>p:last-child{margin-bottom:0}}
