/* Shared customer UI tokens. Keep states readable and controls predictable. */
:root{--line:#e2e7ee;--muted:#627085;--bg:#f6f8fb;--control-radius:8px}
.btn,.chip,.checkbtn,.input,.text-btn,.inline-link{font-synthesis:none}
.btn{min-height:48px;padding:12px 20px;border-radius:var(--control-radius);font-size:14px;font-weight:600;line-height:1.4;letter-spacing:-.2px;box-shadow:none!important;transition:background-color .15s,border-color .15s,color .15s;transform:none!important}
.btn:hover{transform:none!important}.btn:active{filter:brightness(.96)}
.btn.primary{background:#2455eb;border:1px solid #2455eb;color:white}.btn.primary:hover{background:#1945c7;border-color:#1945c7}
.btn.outline{background:white;border:1px solid #d4dce7;color:#34435a}.btn.outline:hover{background:#f6f8fb;border-color:#a5b4c9}
.btn.small{min-height:42px;padding:10px 16px;font-size:13px}.btn:disabled,.btn[aria-disabled=true]{opacity:1;background:#edf0f4;color:#8993a2;border-color:#e2e6ed;cursor:not-allowed;filter:none}
.text-btn,.inline-link{color:#355682;font-size:13px;font-weight:500;text-underline-offset:4px}.text-btn:hover,.inline-link:hover{text-decoration:underline}
.chip{border:1px solid #dfe5ee;background:white;border-radius:7px;min-height:38px;padding:8px 14px;font-size:13px;color:#536278}.chip.active{background:#edf2ff;border-color:#adc0f4;color:#2455d8;font-weight:600}
.checkbtn{width:42px;height:42px;min-width:42px;border-radius:8px;border:1px solid #d4dce7;background:white;color:#516584}.checkbtn.selected{color:#2455eb;background:#edf2ff;border-color:#a3b9f1}
.input{height:48px;border-radius:8px;border-color:#cfd8e5;font-size:14px;background:#fff;padding:0 13px;transition:border-color .15s}.input::placeholder{color:#7b8799}.input:focus{border-color:#2455eb}textarea.input{height:120px;padding:12px;line-height:1.7}label{font-size:13px;font-weight:500}
:is(button,a,input,select,textarea):focus-visible{outline:3px solid #9bb9ff;outline-offset:3px}
header{gap:40px}header nav{gap:26px}header nav a{font-size:14px;font-weight:500;color:#48566b}header nav a.active{color:#2455eb;font-weight:650}.header-right{gap:14px}
.tag{font-size:11px;line-height:1.45;padding:5px 8px;border-radius:5px;font-weight:500;letter-spacing:0}.tag.green{background:#eaf6ef;color:#226d4b}.tag.orange{background:#fff3df;color:#875515}.tag.blue{background:#edf2ff;color:#3155a5}button.tag{min-height:32px;text-decoration:underline;text-underline-offset:3px}
.dash-bg{background:#f6f8fb;padding-top:32px}.dash-layout{grid-template-columns:192px minmax(0,1fr);gap:36px}.dash-layout>div{min-width:0}.sidebar a{font-size:14px;color:#56647a;padding:12px 14px;border-radius:8px}.sidebar a.active{background:#e9effd;color:#2455db}.sidebar .helpbox{background:#fff;border-color:#e0e6ef;border-radius:12px;line-height:1.6}.sidebar .helpbox a{padding:0;font-size:12px}
.dash-title h1{font-size:30px;font-weight:700;letter-spacing:-1px}.dash-title p{line-height:1.7}.panel,.account-card{border:1px solid #e0e6ee;border-radius:14px;box-shadow:none;padding:24px}.panel h3,.account-card h3{font-size:17px;font-weight:650}.panel>.row{gap:16px;flex-wrap:wrap}.panel .note{border-radius:8px;font-size:12px;line-height:1.7;background:#f4f7fc;color:#52647f}
.metrics{gap:14px}.metric{padding:24px;border-radius:14px;border-color:#dfe6ef}.metric .label{color:#5e6d83}.metric .num{font-variant-numeric:tabular-nums;font-size:32px;font-weight:650;letter-spacing:-1px;line-height:1.25;margin:15px 0 12px}.metric.primary{background:white;color:#172a46;border-color:#b7c9f3;border-top:3px solid #2455eb}.metric.primary .num{color:#2455d8}.metric.primary .label{color:#445b7e}.metric.primary small{color:#63748a}.metric .num span{font-size:12px;letter-spacing:0;color:#63748a}
.bp-data-meta{display:flex;flex-wrap:wrap;gap:8px 22px;padding:12px 0 20px;font-size:11px;color:#617189}.bp-data-meta b{font-weight:500;color:#3b4f6a;margin-right:5px}.bp-data-meta span{white-space:nowrap}
.account-card .details{gap:18px}.account-card .details strong{font-variant-numeric:tabular-nums;font-size:14px}.account-card .details span{font-size:12px;color:#6b778a}.account-card .broker-head p{font-size:12px;color:#64738a;letter-spacing:.2px}
table{font-size:13px}th{font-size:11px;font-weight:600;color:#68758a;background:#f7f9fc}td{padding-top:17px;padding-bottom:17px;font-variant-numeric:tabular-nums}tbody tr:hover{background:#fafcff}.table-wrap{border-radius:10px}.empty{border:1px dashed #d9e1ed;border-radius:14px;background:white;padding:44px 24px}.empty p{font-size:14px;line-height:1.8}.empty h3{font-size:18px}.faq{border-color:#e1e6ee}.faq summary{font-weight:500;font-size:15px}.faq p{font-size:14px;color:#5e6b7e}
.start-offer .btn{margin-top:4px}.start-offer>small{font-size:11px}.hub-card{box-shadow:none;border:1px solid #e1e6ed;border-radius:14px}.referral-banner .btn.primary{background:#e0ecff;color:#183d79;border-color:#e0ecff}.referral-banner h2{letter-spacing:-1px}.referral-banner .tag{font-size:11px}.flow-progress span{border-radius:8px;font-size:12px}.flow-list{line-height:2;font-size:14px}
.bp-nav-icon{width:20px;height:20px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.bottomnav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}.bottomnav a span{font-size:10px;font-weight:500}
.cs-launch{display:flex;align-items:center;gap:8px;border-radius:12px!important;min-height:48px;padding:12px 16px!important;font-size:13px;font-weight:600}.cs-panel{border-radius:16px;box-shadow:0 12px 40px #15264b26}.cs-head{background:#17345b;padding:18px}.cs-head strong{font-size:16px}.cs-log{background:#f6f8fb}.cs-log p{border-radius:12px}.cs-actions button{border-radius:7px;min-height:36px;font-size:11px}.cs-form button{border-radius:8px}.cs-close{min-width:40px;min-height:40px}.cs-notice{line-height:1.65}.comparebar{max-width:calc(100vw - 32px)}
body .local-banner{padding:7px 16px;font-size:11px;gap:12px;background:#233752}body .local-banner a{font-weight:500}.prototype{font-size:10px}.prototype span{font-size:9px}
@media(max-width:1050px){header{gap:22px}header nav{gap:16px}.dash-layout{grid-template-columns:170px minmax(0,1fr);gap:24px}}
@media(max-width:750px){.btn,.btn.small{min-height:44px;padding:11px 15px;font-size:13px}.chip{min-height:40px;padding:8px 12px}.input{height:48px;font-size:16px}textarea.input{height:120px}.dash-layout{display:block}.dash-title h1{font-size:25px}.panel,.account-card{padding:18px;border-radius:12px}.metric{padding:18px}.metric .num{font-size:25px}.metric.primary .num{font-size:34px}.metric .label{font-size:12px}.bp-data-meta{gap:7px 14px;font-size:10px;padding-bottom:14px}.account-card .details{grid-template-columns:1fr 1fr;gap:16px}.account-card .details>div:last-child{grid-column:1/-1}.panel>.row{align-items:flex-start}.bottomnav{min-height:66px;padding-bottom:env(safe-area-inset-bottom);z-index:70}.cs-launch{bottom:calc(82px + env(safe-area-inset-bottom))!important;right:14px!important}.comparebar{bottom:calc(148px + env(safe-area-inset-bottom))!important}.cs-panel{bottom:calc(76px + env(safe-area-inset-bottom));height:min(620px,calc(100dvh - 104px - env(safe-area-inset-bottom)))}.referral-banner>div{padding:24px}.referral-banner .btn{white-space:normal}.prototype{height:auto;min-height:30px;flex-wrap:wrap;padding:6px 12px;gap:7px}.prototype button{margin-left:0}.app-mode .local-banner{font-size:9px!important;padding:5px 10px!important}.app-mode .local-banner a{width:auto}.app-mode .cs-launch{min-height:44px;font-size:12px!important}.account-card .row{flex-wrap:wrap;gap:12px}}
@media(prefers-reduced-motion:reduce){.btn,.input{transition:none}}

#modal{border-radius:16px;border:1px solid #dfe5ee;box-shadow:0 20px 60px #12233b30}#modal::backdrop{background:#12233b55;backdrop-filter:blur(2px)}#modal .close{min-width:40px;min-height:40px;border-radius:8px}#modal h2{font-size:24px;line-height:1.45}#modal .stepdots{margin-bottom:22px}.dash-layout>div>.pill-note{font-size:11px;padding:10px 12px;margin-bottom:20px;border-radius:7px;background:#eef2f8}.app-mode .dash-title{margin-bottom:18px}

#main:focus{outline:none}.panel>h3+p{font-size:14px;color:#627085;margin-top:8px;margin-bottom:14px}.panel>h3+.table-wrap{margin-top:18px}
