/* miusa_regen — rgf/onboarding.html (FRAPPE-APP-BUILD-STANDARD-001 rule 13) */
.rgf-on { color:var(--ink); line-height:1.55; max-width:64rem; margin:0 auto; padding:3rem 1.25rem 4rem; }
.rgf-on h1 { font-size:clamp(1.9rem,4.5vw,2.6rem); line-height:1.1; margin:0 0 .75rem; font-weight:700; letter-spacing:0; }
.rgf-on .lead { max-width:42rem; font-size:1.08rem; margin:0; }
.rgf-on .account-prefill { margin-top:1.15rem; padding:.9rem 1rem; border:1px solid #C8D8CF; border-left:5px solid var(--field); border-radius:8px; background:#F7FBF8; }
.rgf-on .account-prefill b { display:block; color:var(--ink); }
.rgf-on .account-prefill span { display:block; color:var(--muted); font-size:.92rem; margin-top:.15rem; }
.rgf-on .layout { display:grid; grid-template-columns:minmax(0,19rem) minmax(0,1fr); gap:2.5rem; margin-top:2.25rem; align-items:start; }
.rgf-on .path { list-style:none; margin:0; padding:0; border-left:4px solid var(--loam); }
.rgf-on .path li { padding:0 0 1.25rem 1.1rem; position:relative; }
.rgf-on .path li::before { content:""; position:absolute; left:-10px; top:.3rem; width:16px; height:16px; border-radius:50%; background:#fff; border:3px solid var(--loam); }
.rgf-on .path li.here::before { background:var(--field); border-color:var(--field); }
.rgf-on .path b { display:block; }
.rgf-on .path span { color:var(--muted); font-size:.95rem; }
.rgf-on a { color:var(--ink); text-underline-offset:3px; }
.rgf-on form { background:var(--surface); border-radius:8px; padding:1.5rem; }
.rgf-on fieldset { border:0; margin:0 0 1.25rem; padding:0; }
.rgf-on legend { font-weight:700; font-size:1.1rem; margin-bottom:.6rem; padding:0; }
.rgf-on .grid, .rgf-on .phone-row { display:grid; grid-template-columns:1fr 1fr; gap:.85rem 1rem; align-items:end; }
.rgf-on .phone-row { grid-template-columns:minmax(0,1.1fr) minmax(9rem,.7fr) minmax(12rem,.8fr); margin-top:.85rem; }
.rgf-on label { display:block; font-weight:500; font-size:.95rem; }
.rgf-on .hint { font-weight:400; color:var(--muted); font-size:.85rem; margin-left:.3rem; }
.rgf-on input[type=text], .rgf-on input[type=email], .rgf-on input[type=tel], .rgf-on input[type=number], .rgf-on select, .rgf-on textarea {
  width:100%; margin-top:.3rem; font:inherit; color:var(--ink); background:#fff; border:1px solid #BFCAC4; border-radius:8px; padding:.6rem .7rem; min-height:44px; box-sizing:border-box; }
.rgf-on textarea { min-height:5.5rem; }
.rgf-on input:focus-visible, .rgf-on select:focus-visible, .rgf-on textarea:focus-visible, .rgf-on button:focus-visible, .rgf-on a:focus-visible { outline:3px solid var(--field); outline-offset:2px; }
.rgf-on .lookup-line { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:.5rem; align-items:end; }
.rgf-on .lookup-line input { margin-top:.3rem; }
.rgf-on .lookup-status { margin:.45rem 0 .65rem; color:var(--muted); font-size:.9rem; }
.rgf-on .lookup-status.good { color:#166534; }
.rgf-on .lookup-status.bad { color:var(--danger); }
.rgf-on .suggestions { display:grid; gap:.45rem; margin:.35rem 0 .85rem; }
.rgf-on .suggestion { text-align:left; background:#fff; color:var(--ink); border:1px solid #BFCAC4; border-radius:8px; padding:.65rem .75rem; min-height:0; font-weight:500; }
.rgf-on .suggestion b, .rgf-on .suggestion span { display:block; }
.rgf-on .suggestion span { color:var(--muted); font-size:.85rem; font-weight:400; }
.rgf-on .checks { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.35rem 1rem; }
.rgf-on .checks label, .rgf-on .consent, .rgf-on .sms-check { font-weight:400; display:flex; gap:.5rem; align-items:flex-start; }
.rgf-on .checks input, .rgf-on .consent input, .rgf-on .sms-check input { margin-top:.3rem; }
.rgf-on .consent.compact { margin-top:.85rem; }
.rgf-on .hp { position:absolute; left:-9999px; }
.rgf-on button { background:var(--field); color:#fff; border:0; border-radius:8px; font:inherit; font-weight:700; padding:.8rem 1.3rem; min-height:48px; cursor:pointer; }
.rgf-on button.secondary { background:#fff; color:var(--ink); border:1px solid #93A39B; white-space:nowrap; }
.rgf-on button[disabled] { opacity:.6; cursor:progress; }
.rgf-on .error { color:var(--danger); font-weight:500; margin:.75rem 0 0; }
.rgf-on .done { background:#fff; border:1px solid var(--line); border-left:6px solid var(--field); border-radius:8px; padding:1.25rem 1.4rem; }
.rgf-on .done h2 { margin:0 0 .4rem; font-size:1.3rem; }
.rgf-on .privacy { font-size:.88rem; color:var(--muted); margin:.9rem 0 1.1rem; }
.rgf-on .boundary { margin-top:2.5rem; padding-top:1.25rem; border-top:1px solid var(--line); font-size:.9rem; color:var(--muted); }
.rgf-on label.spaced { margin-top:.85rem; }
.rgf-on .submit-row { margin-top:1.1rem; }
.rgf-on .rgf-samples { margin-top:24px; padding:18px; border:1px solid #d5e2dc; border-top:4px solid #166534; border-radius:8px; background:#fff; }
.rgf-on .rgf-samples h2 { margin:0 0 6px; color:#142c45; font-size:1.2rem; }
.rgf-on .rgf-samples p { margin:0 0 10px; color:#435b71; }
.rgf-on .rgf-sample-link { display:inline-flex; align-items:center; min-height:40px; margin:6px 8px 0 0; padding:8px 12px; border:1px solid #166534; border-radius:8px; color:#166534; font-weight:700; text-decoration:none; }
@media (max-width:820px) {
  .rgf-on .layout, .rgf-on .grid, .rgf-on .phone-row, .rgf-on .checks, .rgf-on .lookup-line { grid-template-columns:1fr; }
}

.rgf-on .practice-picker { border:1px solid #BFCAC4; border-radius:8px; background:#fff; }
.rgf-on .practice-picker summary { list-style:none; min-height:46px; padding:.7rem .8rem; cursor:pointer; font-weight:600; display:flex; justify-content:space-between; gap:.75rem; align-items:center; }
.rgf-on .practice-picker summary::-webkit-details-marker { display:none; }
.rgf-on .practice-picker summary::after { content:""; width:.55rem; height:.55rem; border-right:2px solid var(--ink); border-bottom:2px solid var(--ink); transform:rotate(45deg); margin-right:.2rem; }
.rgf-on .practice-picker[open] summary::after { transform:rotate(225deg); margin-top:.35rem; }
.rgf-on .practice-picker .practice-list { border-top:1px solid #D7E0DB; padding:.75rem .85rem .9rem; max-height:18rem; overflow:auto; }
.rgf-on .practice-intro { margin:.1rem 0 .65rem; color:var(--muted); font-size:.92rem; }
.rgf-on .practice-field { margin-bottom:1rem; }
.rgf-on .practice-label { display:block; font-weight:500; font-size:.95rem; margin-bottom:.3rem; }
.rgf-on .practice-combobox { position:relative; }
.rgf-on .practice-toggle { width:100% !important; min-height:46px; padding:.65rem 2.4rem .65rem .75rem !important; border:1px solid #BFCAC4 !important; border-radius:8px !important; background:#fff !important; color:var(--ink) !important; text-align:left; font-weight:500; display:block; position:relative; box-shadow:none !important; }
.rgf-on .practice-toggle::after { content:""; position:absolute; right:.9rem; top:50%; width:.55rem; height:.55rem; border-right:2px solid var(--ink); border-bottom:2px solid var(--ink); transform:translateY(-65%) rotate(45deg); }
.rgf-on .practice-toggle[aria-expanded=true]::after { transform:translateY(-20%) rotate(225deg); }
.rgf-on .practice-menu { position:absolute; z-index:20; left:0; right:0; top:calc(100% + .35rem); max-height:20rem; overflow:auto; padding:.55rem; border:1px solid #AEBDB5; border-radius:8px; background:#fff; box-shadow:0 14px 32px rgba(20,44,69,.18); }
.rgf-on .practice-option { display:flex; gap:.75rem; align-items:flex-start; padding:.72rem .65rem; border-radius:6px; font-weight:500; line-height:1.4; }
.rgf-on .practice-option + .practice-option { margin-top:.25rem; }
.rgf-on .practice-option:hover, .rgf-on .practice-option:focus-within { background:#EDF7F1; }
.rgf-on .practice-option input { margin-top:.15rem; accent-color:var(--field); }
.rgf-on .selected-practices { margin-top:.85rem; margin-bottom:1.25rem; padding:.75rem .85rem; border:1px solid #C8D8CF; border-radius:8px; background:#F7FBF8; }
.rgf-on .practice-info { margin-top:1.65rem; border:1px solid #D7E0DB; border-top:3px solid #8CB59A; border-radius:8px; background:#fff; }
.rgf-on .practice-info summary { cursor:pointer; padding:.75rem .9rem; font-weight:700; display:flex; gap:.6rem; align-items:center; list-style:none; }
.rgf-on .practice-info summary::-webkit-details-marker { display:none; }
.rgf-on .practice-info summary::before { content:""; width:.55rem; height:.55rem; border-right:2px solid var(--ink); border-bottom:2px solid var(--ink); transform:rotate(-45deg); transition:transform .15s ease; flex:0 0 auto; margin-left:.05rem; }
.rgf-on .practice-info[open] summary::before { transform:rotate(45deg); }
.rgf-on .practice-info div { border-top:1px solid #D7E0DB; padding:.75rem .85rem .85rem; color:var(--muted); font-size:.92rem; }
.rgf-on .practice-info p { margin:.35rem 0; }
