.client-auth-shell { min-height:100vh; background:#f2f8fa; color:#0a1724; font-family:Manrope,sans-serif; font-size:15px; line-height:1.6; }
.client-auth-masthead { background:#071722; border-bottom:1px solid #153441; }
.client-auth-header, .client-auth-main, .client-auth-footer { max-width:1180px; margin:auto; }
.client-auth-header { height:100px; display:flex; align-items:center; }
.client-auth-header img { width:240px; height:80px; object-fit:contain; }
.client-auth-main { min-height:calc(100vh - 170px); display:grid; grid-template-columns:minmax(0,1fr) minmax(0,440px); gap:60px; align-items:center; padding:70px 30px; }
.client-auth-eyebrow { color:#008852; font-size:10px; font-weight:700; letter-spacing:2px; margin-bottom:16px; }
.client-auth-copy h1 { font-size:clamp(38px,4.5vw,62px); font-weight:700; line-height:1.16; letter-spacing:-.04em; margin:16px 0 20px; }
.client-auth-lead { color:#607181; font-size:17px; max-width:470px; }
.client-auth-features { margin-top:45px; }
.client-auth-features p { display:flex; gap:22px; border-bottom:1px solid #dce6ec; padding:13px 0; color:#607181; font-size:12px; }
.client-auth-features strong { font-size:15px; font-weight:500; color:#0a1724; }
.client-auth-note { margin-top:16px; font-size:12px; color:#607181; }
.client-auth-form { min-width:0; padding:34px; border:1px solid #dce6ec; border-radius:12px; background:white; box-shadow:0 8px 28px #0a273808; }
.client-auth-footer { padding:25px 0; border-top:1px solid #dce6ec; color:#607181; font-size:12px; display:flex; justify-content:space-between; gap:16px; }
@media(max-width:1240px) { .client-auth-header,.client-auth-main,.client-auth-footer { margin-left:30px; margin-right:30px; } }
@media(max-width:850px) { .client-auth-main { gap:30px; padding:40px 0; grid-template-columns:minmax(0,1fr) minmax(0,1fr); } .client-auth-copy h1 { font-size:44px; } .client-auth-form { padding:26px; } }
@media(max-width:600px) { .client-auth-header { height:84px; } .client-auth-header img { width:175px; height:60px; } .client-auth-header,.client-auth-main,.client-auth-footer { margin-left:20px; margin-right:20px; } .client-auth-main { grid-template-columns:minmax(0,1fr); padding-top:30px; } .client-auth-copy h1 { font-size:42px; } .client-auth-features,.client-auth-footer span { display:none; } .client-auth-form { padding:24px; } }

.client-original-form h2 { font-size:29px; font-weight:700; line-height:1.16; letter-spacing:-.04em; margin:16px 0 20px; }
.client-original-form .client-form-description { color:#607181; font-size:14px; margin:14px 0 20px; }
.client-original-form .fi-fo-field-label-content { font-size:13px; font-weight:600; color:#0a1724; }
.client-original-form .fi-fo-field-label-required-mark { display:none; }
.client-original-form .fi-input-wrp { border:1px solid #ccdce4; border-radius:8px; background:#fbfdfe; box-shadow:none; }
.client-original-form .fi-input { padding:13px; font-size:15px; line-height:1.6; color:#0a1724; }
.client-original-form .fi-input-wrp:focus-within { outline:3px solid #00c878; outline-offset:3px; }
.client-original-form .fi-btn[type=submit] { display:flex; justify-content:space-between; width:100%; padding:12px 20px; min-height:48px; border-radius:6px; background:#00c878; color:#042c20; font-size:15px; line-height:1.6; font-weight:700; box-shadow:none; }
.client-original-form .fi-btn[type=submit]:hover { background:#00b76f; }
.client-original-form .fi-btn[type=submit]:disabled { opacity:.5; cursor:not-allowed; }
.client-paypal-consent { display:flex; align-items:flex-start; gap:12px; padding:14px; border:1px solid #ccdce4; border-radius:8px; cursor:pointer; font-size:14px; }
.client-paypal-consent .fi-checkbox-input { flex-shrink:0; width:20px; height:20px; margin-top:2px; }
.client-original-form .fi-btn[type=submit] .fi-icon { margin-left:auto; color:inherit; }
.client-form-switch { font-size:13px; text-align:center; margin-top:22px; color:#607181; }
.client-form-switch a { color:#008852; font-weight:600; text-decoration:underline; }

.client-account-header { justify-content:space-between; gap:20px; }
.client-account-header > a:last-child { color:#fff; font-size:13px; }
.client-account-main { max-width:720px; margin:auto; padding:40px 24px 56px; min-height:calc(100vh - 170px); }
.client-account-title { font-size:32px; font-weight:700; letter-spacing:-.04em; line-height:1.2; }
.client-account-main:has(.client-plans-panel:not([style*="display: none"])) { max-width:1120px; }
.client-plan-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:24px; }
.client-plan-option { border:1px solid #dce6ec; border-radius:16px; padding:24px; display:flex; flex-direction:column; gap:16px; background:#f8fbfc; }
.client-plan-option:has(.client-plan-badge:not(.client-plan-badge-muted)) { border-color:#00bd83; background:#effcf6; }
.client-plan-option h3 { font-size:21px; font-weight:700; margin:0; }
.client-plan-badge { align-self:flex-start; font-size:11px; font-weight:700; border-radius:20px; padding:5px 10px; color:#006b48; background:#d1f6e5; }
.client-plan-badge-muted { color:#607181; background:#eaf0f3; }
.client-plan-price { font-size:30px; font-weight:750; letter-spacing:-1px; line-height:1.2; margin:0; }
.client-plan-price span { display:block; color:#607181; font-size:12px; font-weight:400; letter-spacing:0; margin-top:6px; }
.client-plan-capacity { font-size:14px; color:#385263; margin:0 0 10px; }
.client-plan-option > .fi-modal { margin-top:auto; }
.client-plan-footnote { color:#607181; font-size:12px; margin:20px 0 0; text-align:center; }
.client-plan-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; padding:16px; background:#f2f8fa; border-radius:12px; }
.client-account-details.client-plan-summary > div { display:block; border:0; padding:0; }
.client-account-details.client-plan-summary dd { text-align:left; margin:6px 0 0; font-size:17px; }
.dark .client-plan-option { background:#112532; border-color:#304652; }
.dark .client-plan-option:has(.client-plan-badge:not(.client-plan-badge-muted)) { background:#0c3028; border-color:#00bd83; }
.dark .client-plan-summary { background:#112532; }
.dark .client-plan-price span,.dark .client-plan-capacity,.dark .client-plan-footnote { color:#abc0cc; }
@media(max-width:760px) { .client-plan-grid { grid-template-columns:1fr; } .client-plan-summary { grid-template-columns:1fr; gap:12px; } .client-account-details.client-plan-summary > div { display:flex; justify-content:space-between; } .client-plan-summary dd { margin:0; } }
.client-account-card { margin-top:20px; padding:26px; }
.client-account-card h2 { font-size:22px; margin:0 0 18px; }
.client-account-card form { display:grid; gap:22px; }
.client-account-card .fi-input { padding:10px 12px; }
.client-account-details > div { display:flex; justify-content:space-between; gap:20px; padding:12px 0; border-bottom:1px solid #dce6ec; }
.client-account-details dt { color:#607181; }
.client-account-details dd { font-weight:600; text-align:right; }
.client-account-verification { margin-top:24px; border-top:1px solid #dce6ec; padding-top:18px; }
.client-account-verification summary { color:#008852; cursor:pointer; font-weight:600; margin-bottom:18px; }
@media(max-width:600px) { .client-account-main { padding:28px 20px; } .client-account-card { padding:20px; } }
.client-original-form .client-billing-secondary .fi-btn[type=submit] { width:auto; justify-self:start; background:transparent; color:#00754d; border:1px solid #b9d8ce; box-shadow:none; }
.dark .client-original-form .client-billing-secondary .fi-btn[type=submit] { background:transparent; color:#83e4bd; border-color:#386958; }
.client-plan-option .fi-modal-trigger .fi-btn { width:100%; justify-content:center; }
