/* VEST identity: owner-approved palette and self-hosted typography. */
@font-face{font-family:Inter;src:url('/brand/fonts/inter.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:Montserrat;src:url('/brand/fonts/montserrat.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
:root{--vest-silver:#BFC2C6;--vest-highlight:#F1F2F4;--vest-shadow:#777C83;--vest-navy:#00233F;--vest-red:#C8102E;--vest-white:#FFFFFF;--vest-charcoal:#242830;--vest-metal:linear-gradient(115deg,#777C83 0%,#F1F2F4 32%,#BFC2C6 67%,#777C83 100%);--navy:#00233F;--ink:#242830;--blue:#C8102E;--green:#C8102E;--sky:#F1F2F4;--lime:#BFC2C6;--silver:#BFC2C6;--bg:#FFFFFF;--line:#BFC2C6;--muted:#5C626A;--omni-cyan:#BFC2C6;color-scheme:light}
body{background:#FFFFFF;color:#242830;font-family:Inter,system-ui,sans-serif!important;font-weight:400}h1,h2,h3,h4,h5,h6{font-family:Montserrat,system-ui,sans-serif!important;font-weight:700;color:#00233F}button,.btn,nav,.nav-btn,.portal-nav,.tabs,.tab{font-family:Montserrat,system-ui,sans-serif!important;font-weight:600}input,textarea,select{font-family:Inter,system-ui,sans-serif}label,small,.eyebrow,.ca-kicker{font-family:Inter,system-ui,sans-serif;font-weight:500}
.vest-logo,.omni-mark{display:block;object-fit:contain!important;width:180px!important;height:auto!important;max-width:100%;aspect-ratio:2048/682;flex:0 1 180px!important}
.brand,.portal-brand{display:flex;align-items:center;gap:0!important;text-decoration:none}.brand-name,.brand>span,.portal-brand>span{display:none!important}.sidebar .brand,.phone-side .brand{background:#FFFFFF;border:1px solid #BFC2C6;border-radius:12px;padding:12px;margin:0 0 24px;justify-content:center;min-width:0}.sidebar .vest-logo,.sidebar .omni-mark,.phone-side .vest-logo,.phone-side .omni-mark{width:100%!important;max-width:190px}.portal-brand{min-width:150px;max-width:220px}.portal-brand .vest-logo{width:200px!important}.portal-top{border-bottom:1px solid #BFC2C6}.sidebar,.phone-side{background:#00233F!important}.sidebar-footer{border-color:#777C83}.nav-label,.sidebar small{color:#BFC2C6}.nav-btn{color:#F1F2F4}.nav-btn.active,.phone-side button.active{color:#FFFFFF!important;background:#173D5A!important;box-shadow:inset 3px 0 #C8102E}.nav-btn:hover{color:#FFFFFF;background:#173D5A}.portal-nav a.active{background:#F1F2F4;color:#00233F;box-shadow:inset 0 -3px #C8102E}.portal-nav a:hover{background:#F1F2F4}.topbar{background:#FFFFFF;border-color:#BFC2C6}.omni-brand-link{color:#BFC2C6}
.btn.primary,.portal .btn.primary,.hero .btn.primary,.omni-hero .btn.primary,.signup-card>button:not(.signup-secondary),.signup-card form>button,.vest-auth form>button{background:#C8102E!important;border-color:#C8102E!important;color:#FFFFFF!important;box-shadow:0 3px 10px #00233F12}.btn.primary:hover,.portal .btn.primary:hover,.vest-auth form>button:hover,.signup-card form>button:hover{background:#A30D26!important;border-color:#A30D26!important}.btn:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #00233F;outline-offset:3px}.btn:disabled,button:disabled{opacity:.55;cursor:not-allowed}
.card,.ca-panel,.connection-card,.signup-card{background:#FFFFFF;border-color:#BFC2C6;box-shadow:0 4px 18px #00233F08}.stat-value,.ca-metric>strong,.phone-main .money{color:#00233F}.stat-icon{background:#F1F2F4;color:#00233F}.chart-group i,.dot{background:#C8102E}.chart-group i:nth-child(2),.dot.light{background:#BFC2C6}.avatar,.mode,.ca-metric{background:#F1F2F4;color:#00233F}.column{background:#F1F2F4}.heading .eyebrow,.ca-kicker{color:#00233F}.tabs .tab.active{border-color:#C8102E;color:#00233F}.ca-panel{color:#242830}.ca-progress{background:#F1F2F4;border:1px solid #BFC2C6}.ca-progress span{background:#C8102E}.ca-tree ul{border-color:#BFC2C6}.ca-node{background:#F1F2F4;border-color:#BFC2C6}.ca-checklist li{border-color:#F1F2F4}
/* Operational health remains green/orange/red, independent of the brand accent. */
.ca-health.green{background:#def7e8;color:#146b3a}.ca-health.orange{background:#ffebcc;color:#965600}.ca-health.red{background:#ffe2e2;color:#ac2020}.ca-health.pending{background:#F1F2F4;color:#5C626A}
.omni-hero,.hero-panel,.signup-intro{background:#00233F!important;color:#FFFFFF}.omni-hero h2,.hero-panel h1,.hero-panel h2,.signup-intro h1{color:#FFFFFF}.omni-hero .eyebrow,.hero-panel .eyebrow,.signup-eyebrow{color:#BFC2C6}.omni-hero p,.signup-intro p{color:#F1F2F4}.orbit-core{background:#FFFFFF;border-color:#BFC2C6}.orbit-core span{color:#00233F}.orbit-chip{background:#00233F;border-color:#777C83;color:#FFFFFF}.orbit-chip svg,.omni-launch svg{color:#BFC2C6}.omni-secondary{border-color:#BFC2C6;color:#FFFFFF}.omni-launch>a,.omni-launch>button{border-color:#BFC2C6;color:#00233F}.omni-launch>a:hover,.omni-launch>button:hover{border-color:#777C83}.vest-auth{max-width:440px!important;margin:8vh auto!important;padding:32px!important;border:1px solid #BFC2C6}.vest-auth>.vest-logo{width:260px!important;margin:0 auto 24px}.vest-auth h1{text-align:center}.signup-intro>a{display:inline-block;background:white;border-radius:12px;padding:16px}.signup-intro .vest-logo{width:230px!important}.vest-metal{background:var(--vest-metal)}
/* Approved nine-badge artwork: CSS windows preserve the original supplied design. */
.ca-badge.vest-rank{position:relative;display:block;overflow:hidden;height:auto!important;aspect-ratio:var(--badge-ratio);isolation:isolate;border-radius:12px;background:#F1F2F4;max-width:100%;flex-shrink:0}
.ca-badge.vest-rank img{position:absolute;display:block;width:var(--badge-width)!important;max-width:none!important;height:auto!important;left:var(--badge-left);top:var(--badge-top);margin:0!important;pointer-events:none}
@media(max-width:760px){.vest-auth{margin:24px 16px!important;padding:24px!important}.portal-top{gap:16px}.portal-brand .vest-logo{width:170px!important}.ca-summary{gap:20px}.sidebar .brand{max-width:225px}.vest-logo{max-width:100%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Preserve VEST tokens when a workspace lazily loads its page stylesheet. */
body .ca-panel{color:#242830;border-color:#BFC2C6}body .ca-metric{background:#F1F2F4;color:#242830}body .ca-kicker{color:#00233F}body .ca-progress{background:var(--vest-metal);border-color:#BFC2C6}body .ca-progress span{background:#C8102E}body .ca-node{background:#F1F2F4;border-color:#BFC2C6}body .ca-tree ul{border-color:#BFC2C6}body .ca-checklist li{border-color:#F1F2F4}body .lead-pack-card{border-color:#BFC2C6;background:#FFFFFF}body .lead-pack-icon{background:#F1F2F4;color:#00233F;border-color:#BFC2C6}body .lead-pack-content .eyebrow{color:#00233F}body .lead-meta,body .lead-pack-content p{color:#5C626A}body .sidebar .nav-btn{text-decoration:none}form[action="/api/auth/logout"] button{padding:10px 16px;border:1px solid #BFC2C6;border-radius:9px;background:#FFFFFF;color:#00233F;cursor:pointer}.sidebar .brand{border:1px solid transparent;background:linear-gradient(#FFFFFF,#FFFFFF) padding-box,var(--vest-metal) border-box}
body .growth-kicker{color:#00233F}body .lead-milestones span.complete{background:#00233F;color:#FFFFFF;border-color:#00233F}body .lead-pack-card progress{accent-color:#C8102E}body .lead-pack-card progress::-webkit-progress-value{background:#C8102E}body .lead-pack-card progress::-moz-progress-bar{background:#C8102E}
