:root{
  --cream:#f6f6f3;--paper:#ffffff;--ink:#222522;--navy:#34495e;--navy2:#263746;--blue:#5b7086;--green:#46675d;--sage:#edf2ee;--gold:#b78e55;--gold2:#d6ba86;--muted:#747a74;--line:#e5e6e2;--danger:#a44848;--ok:#3f6f5b;--shadow:0 1px 2px rgba(18,24,20,.03),0 8px 24px rgba(18,24,20,.035);--r:14px
}
html{background:#f6f6f3}body{background:#f6f6f3;color:var(--ink);letter-spacing:-.005em}
body,button,input,select,textarea{font-family:'DM Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
.card{border:1px solid var(--line);border-radius:14px;box-shadow:none;background:#fff}.panel{padding:22px}.btn{border-radius:9px;padding:10px 14px;font-size:12px;box-shadow:none;background:#2f5148}.btn:hover{transform:none;filter:brightness(.97)}.btn.secondary{background:#f1f2ef;color:#343a36;border:1px solid #e2e4df}.btn.gold{background:#364b46;color:#fff}.btn.outline{border:1px solid #d5d9d4;background:#fff;color:#364b46}.btn.small{padding:8px 11px}.tag{border-radius:7px;background:#edf2ee;color:#426457}.tag.gold{background:#f5efe4;color:#80643c}.eyebrow,.v12-eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:9px;font-weight:800;color:#768078}.notice{background:#f5f6f3;color:#59615c;border:1px solid #e5e7e3;border-radius:10px}.msg{border-radius:10px}.msg.ok{background:#eef5f0;color:#35634f}.msg.err{background:#f8eeee;color:#8a3e3e}
/* Public shell: lighter, quieter, more premium */
.public-header{background:rgba(250,250,247,.92);border-bottom:1px solid #e8e8e4;box-shadow:none}.public-nav{height:70px}.brand img{width:190px}.public-links{gap:20px}.public-links button{font-size:12px;color:#5a625d}.public-main{padding-top:22px}.hero{border-radius:20px;border:1px solid #e5e4dd;background:linear-gradient(135deg,#fff 0%,#faf9f4 62%,#f0f3ee 100%);box-shadow:none;min-height:420px}.hero-copy{padding:58px 54px}.display{font-size:52px;color:#263b36}.hero p{color:#6a726d}.hero-art{background:linear-gradient(150deg,#eff3ef,#f3eee4)}.trust-strip{border-radius:12px}.trust-item{background:#fff}.section-head h2,.public-text h2{color:#2d3833}.path-card,.info-card,.price-card,.resource{box-shadow:none}.path-card{min-height:220px}.iconbox{background:#f0f3ef;border:1px solid #e5e7e2;border-radius:11px}.footer{background:#2e443e}
/* Main shell */
.app-shell{background:#f6f6f3}.sidebar{width:228px;padding:13px 10px;background:#f8f8f5;border-right:1px solid #e6e7e3}.sidebar-brand{padding:8px 8px 15px;border-bottom:0}.sidebar-brand img{width:174px}.side-nav{padding:8px 0;gap:1px}.side-nav button{padding:8px 10px;border-radius:8px;font-size:12px;font-weight:570;color:#656c67;gap:9px;min-height:36px;transition:background .12s ease,color .12s ease}.side-nav button.active,.side-nav button:hover{background:#eceeea;color:#252a27}.side-section-label{margin:13px 10px 5px;color:#989d98;letter-spacing:.12em;font-size:8px}.side-icon{width:18px;height:18px;display:grid;place-items:center}.v12-svg-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.sidebar-bottom{border-top:1px solid #e5e6e2;padding-top:10px}.user-chip{padding:8px}.avatar{background:#435e55;width:32px;height:32px;font-size:12px}.app-main{margin-left:228px;background:#fafaf8}.app-top{height:58px;padding:0 24px;background:rgba(250,250,248,.92);backdrop-filter:blur(14px);border-bottom:1px solid #e7e8e4}.app-search{max-width:480px}.app-search input{border:1px solid #e1e3df;background:#fff;border-radius:8px;padding:9px 12px 9px 34px;font-size:12px}.app-search:before{font-size:18px;left:12px;top:5px}.app-content{padding:28px 34px 72px;max-width:1320px}.page-title{margin-bottom:20px;align-items:flex-end}.page-title h1{font-family:'DM Sans',sans-serif;font-size:27px;letter-spacing:-.035em;font-weight:680;color:#252a27}.page-title p{font-size:12px;color:#7c827e}.app-page.active.v12-enter{animation:v12In .18s cubic-bezier(.2,.75,.35,1)}@keyframes v12In{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
/* Dashboard */
.focus-card{padding:22px 24px;border-radius:13px;background:#fff;border:1px solid #e4e6e1}.focus-card h2{font-family:'DM Sans',sans-serif;font-size:22px;letter-spacing:-.025em;color:#29332f;margin:5px 0}.focus-card p{font-size:12px}.stat-grid.dashboard-stats{gap:8px}.stat{border-radius:11px;padding:14px;background:#fff}.stat span{font-size:10px}.stat strong{font-size:22px}.progress-shell{height:5px;background:#eceeeb}.progress{background:#537469}.dashboard-toolkit{padding:20px}.toolkit-head h2{font-family:'DM Sans',sans-serif;font-size:21px;letter-spacing:-.025em}.tool-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.tool-tile{border-radius:11px;min-height:116px;padding:14px;box-shadow:none}.tool-tile:hover{transform:none;background:#fafbf9;border-color:#daddd7;box-shadow:none}.tool-tile>span{width:30px;height:30px;padding:0;border-radius:8px;background:#f1f3f0;color:#4d665e}.v12-tool-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.tool-tile b{font-size:12px;margin:11px 0 4px}.tool-tile small{font-size:10px}.dashboard-lower{gap:10px}.dash-card{padding:18px}.shortcut-list button{border:0;border-bottom:1px solid #eceeea;border-radius:0;padding:10px 3px;background:transparent;font-size:11px}.shortcut-list button:last-child{border-bottom:0}.v12-next-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid #eceeea}.v12-next-row:last-child{border-bottom:0}.v12-next-row>span{font-size:9px;color:#989e99;font-weight:800}.v12-next-row b{font-size:11px}.v12-next-row p{font-size:10px;color:var(--muted);margin:3px 0 0;line-height:1.4}.v12-inline-action{border:0;background:transparent;color:#47665d;font-size:10px;font-weight:800;padding:6px;white-space:nowrap}
/* AI / chat */
.ai-layout{gap:10px}.ai-side{border:1px solid var(--line);border-radius:12px;background:#fff;padding:10px}.ai-side button{border-radius:8px;background:transparent;border:0;border-bottom:1px solid #eff0ed;text-align:left}.chat{border-radius:13px;border:1px solid var(--line);box-shadow:none}.chat-head{background:#fff;border-bottom:1px solid #eceeea}.chat-body{background:#fafaf8}.bubble{border-radius:12px;box-shadow:none}.bubble.ai{background:#fff;border:1px solid #e5e7e3}.bubble.user{background:#3f5e54}.chat-input{background:#fff;border-top:1px solid #e9ebe7}
/* Roadmap */
.roadmap-head{grid-template-columns:1fr 220px;gap:10px}.roadmap-head .panel{border-radius:12px}.roadmap-head .display{font-family:'DM Sans',sans-serif!important;font-size:28px!important;letter-spacing:-.035em!important}.v12-road-choice{margin:10px 0 12px;padding:18px;background:#fff;border:1px solid #e5e7e2;border-radius:12px;display:grid;grid-template-columns:.75fr 1.25fr;gap:18px;align-items:center}.v12-road-choice h3{font-size:15px;margin:4px 0}.v12-road-choice p{font-size:10px;color:var(--muted);margin:0}.v12-path-switch{display:grid;grid-template-columns:1fr 1fr;gap:7px}.v12-path-switch button{border:1px solid #e1e4df;background:#fbfbf9;border-radius:9px;text-align:left;padding:11px;color:#555e58}.v12-path-switch button.active{border-color:#789087;background:#f0f4f1;color:#2d4d43}.v12-path-switch b{display:block;font-size:11px}.v12-path-switch span{display:block;font-size:9px;line-height:1.35;margin-top:3px;color:#7c837e}.v12-road-section{background:#fff;border:1px solid #e5e7e2;border-radius:12px;margin:9px 0;overflow:hidden}.v12-road-section>header{display:flex;gap:11px;padding:16px 18px;border-bottom:1px solid #eceeea;align-items:center}.v12-road-index{width:30px;height:30px;border:1px solid #dfe3de;border-radius:8px;display:grid;place-items:center;font-size:9px;font-weight:800;color:#52615b;background:#f6f7f4}.v12-road-section h3{font-size:13px;margin:0}.v12-road-section header p{font-size:9px;margin:3px 0 0;color:#939993}.v12-road-task{display:grid;grid-template-columns:30px 1fr;padding:15px 18px;border-bottom:1px solid #eff0ed}.v12-road-task:last-child{border-bottom:0}.v12-road-task.done{background:#fbfcfa}.v12-check{padding-top:1px}.v12-check input{position:absolute;opacity:0}.v12-check span{width:18px;height:18px;border:1.5px solid #cdd2cd;border-radius:5px;display:grid;place-items:center;background:#fff}.v12-check input:checked+span{background:#506f64;border-color:#506f64}.v12-check input:checked+span:after{content:'✓';font-size:11px;color:#fff;font-weight:900}.v12-task-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}.v12-task-main b{font-size:12px}.v12-task-main p{font-size:10px;color:#747b76;line-height:1.45;margin:4px 0 0}.v12-source{border:0;background:#f2f4f1;color:#566961;text-decoration:none;padding:6px 8px;border-radius:7px;font-size:9px;font-weight:800;white-space:nowrap}.v12-tool-hint{margin-top:9px;border:1px solid #e1e8e3;background:#f6f9f6;border-radius:9px;padding:9px 10px;display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:8px;align-items:center}.v12-tool-hint>span{width:20px;color:#537066}.v12-tool-hint svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6}.v12-tool-hint small{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#89918c}.v12-tool-hint b{font-size:10px}.training-list{grid-template-columns:repeat(3,1fr);gap:6px}.training-provider{border-radius:8px;background:#fafbf9}
/* General app grids/cards */
.resource-grid,.pricing-grid,.vacancy-grid,.coming-grid{gap:9px}.resource,.price-card,.vacancy-card,.coming-card{border-radius:12px!important;box-shadow:none!important}.two-col{gap:10px}.status-chip,.billing-status{border-radius:9px}.price-card.featured{border-color:#cdd9d3;background:#fff}.price{letter-spacing:-.04em}
/* V12 Money planner */
.v12-money-shell{background:#fff;border:1px solid #e4e6e1;border-radius:13px;overflow:hidden}.v12-money-tabs{display:flex;gap:2px;padding:7px;border-bottom:1px solid #e9ebe7;background:#fafaf8}.v12-money-tabs button{border:0;background:transparent;border-radius:7px;padding:9px 13px;font-size:11px;font-weight:750;color:#767d78}.v12-money-tabs button.active{background:#fff;color:#29332f;border:1px solid #e1e4df;box-shadow:0 1px 2px rgba(20,25,22,.03)}.v12-money-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px}.v12-money-layout>main{min-width:0}.v12-money-step{padding:22px;border-bottom:1px solid #eceee9}.v12-money-step:last-of-type{border-bottom:0}.v12-money-step>header{display:flex;gap:11px;margin-bottom:15px}.v12-money-step>header>span{width:27px;height:27px;border-radius:7px;border:1px solid #dfe2dd;background:#f6f7f4;display:grid;place-items:center;font-size:8px;font-weight:850;color:#7b817c}.v12-money-step h3{font-size:13px;margin:1px 0 2px}.v12-money-step header p{font-size:10px;color:#7d837f;margin:0}.v12-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.v12-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:9px}.v12-field{display:block;min-width:0}.v12-field>span,.v12-range>span{display:block;font-size:9px;font-weight:800;color:#555e58;margin-bottom:6px}.v12-field input,.v12-field select,.v12-affix{width:100%;border:1px solid #dfe2dd;background:#fff;border-radius:8px;color:#2c312e}.v12-field input,.v12-field select{padding:10px 11px;font-size:11px;min-height:39px}.v12-affix{display:flex;align-items:center;padding-left:9px;color:#8c918d;font-size:11px}.v12-affix input{border:0;outline:0;padding:9px 5px;width:100%;font-size:11px;background:transparent;min-width:0}.v12-affix i{font-style:normal;padding-right:8px}.v12-range>div{display:grid;grid-template-columns:1fr 1fr;gap:7px}.v12-range small{font-size:8px;color:#8c928e}.v12-note{margin-top:9px;padding:9px 10px;background:#f7f8f5;border:1px solid #e7e9e4;border-radius:8px;font-size:9px;color:#727974}.v12-note b{display:block;color:#49534e;font-size:10px}.v12-note span{display:block;margin-top:2px}.v12-choice-3{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.v12-choice-3>button{border:1px solid #e0e3de;background:#fbfbf9;border-radius:10px;padding:14px;text-align:left;color:#5f6762;min-height:112px}.v12-choice-3>button.active{background:#f0f4f1;border-color:#789087;color:#304e45}.v12-choice-3>button>span{width:29px;height:29px;border-radius:7px;background:#f0f2ef;display:grid;place-items:center;margin-bottom:10px}.v12-choice-3 svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.v12-choice-3 b{display:block;font-size:11px}.v12-choice-3 small{display:block;font-size:9px;line-height:1.4;margin-top:4px;color:#808681}.v12-housing-result{margin-top:10px;border:1px solid #e3e6e1;border-radius:10px;padding:14px;background:#fff}.v12-housing-result.own{background:#f6f8f5}.v12-housing-result>div{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #eff0ed}.v12-housing-result>div:last-of-type{border-bottom:0}.v12-housing-result span{font-size:10px;color:#6e756f}.v12-housing-result b{font-size:12px}.v12-housing-result p{font-size:9px;line-height:1.45;color:#7c837e}.v12-housing-result details,.v12-details{margin-top:9px;border-top:1px solid #eceeea;padding-top:9px}.v12-housing-result summary,.v12-details summary{font-size:9px;font-weight:800;color:#61706a;cursor:pointer}.v12-assumption-grid{display:grid;gap:5px;margin-top:9px}.v12-assumption-grid span{display:flex;justify-content:space-between;padding:7px;background:#f7f8f5;border-radius:7px}.v12-mini{margin-bottom:0}.v12-estimate-box{margin-top:10px;border:1px solid #e6e8e3;border-radius:9px;padding:12px;background:#fafbf9}.v12-estimate-box b{display:block;font-size:13px}.v12-estimate-box span{font-size:9px;color:#7a817c;line-height:1.45}.v12-reno-list{display:grid;gap:5px}.v12-reno-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 11px;border:1px solid #e8eae6;border-radius:8px}.v12-reno-row b{display:block;font-size:10px}.v12-reno-row small{font-size:8px;color:#8b918c}.v12-reno-row>div:last-child{display:flex;gap:4px}.v12-reno-row button{border:1px solid #e0e3de;background:#fff;border-radius:7px;padding:6px 8px;font-size:9px;color:#737a75}.v12-reno-row button.active.need{background:#f8f0ed;border-color:#e7cec6;color:#8c4f3d}.v12-reno-row button.active.done{background:#eef5f0;border-color:#cfe0d5;color:#416b58}.v12-actions{display:flex;align-items:center;gap:10px;padding:18px 22px}.v12-live{border-left:1px solid #e9ebe7;background:#fafaf8;padding:22px;position:sticky;top:58px;align-self:start;min-height:340px}.v12-total{padding:15px 0;border-bottom:1px solid #e6e8e4}.v12-total small{display:block;font-size:9px;color:#838a85}.v12-total>b{display:block;font-size:21px;letter-spacing:-.04em;margin-top:4px;color:#30423c}.v12-total>span{font-size:9px;color:#808681}.v12-live>div[id$="Details"]>div,.v12-live #v12ProfitDetails>div{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #e7e9e5;font-size:9px}.v12-live p{font-size:8px;line-height:1.5;color:#909691}.v12-payroll{margin-top:10px;padding:13px;border:1px solid #dfe5e0;background:#f5f8f5;border-radius:9px}.v12-payroll span{font-size:9px;color:#6c756f}.v12-payroll b{display:block;font-size:16px;margin-top:3px}.v12-payroll small{display:block;font-size:8px;color:#818883;margin-top:4px;line-height:1.4}.v12-inherited{display:flex;justify-content:space-between;gap:12px;padding:11px;border:1px solid #e4e7e2;background:#f8f9f6;border-radius:9px;margin-bottom:10px;font-size:9px}.v12-scenarios{margin-top:13px}.v12-scenarios>b{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#818883}.v12-scenarios>div{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid #e7e9e5;font-size:9px}.v12-saved{font-size:10px;color:#47705f}.v12-error{font-size:10px;color:#a44848}
/* Property tool visual polish while retaining deep V10 logic */
.v10-shell{border-radius:13px!important;box-shadow:none!important}.v10-progress{border-radius:9px!important;background:#fafbf9!important}.v10-step-title>span,.v10-question-num,.v10-media-num{background:#f0f2ef!important;color:#55655e!important;border:1px solid #e0e3de!important;border-radius:7px!important}.v10-question,.v10-media-card,.v10-measure-card,.v10-issue,.v10-unverified{border-radius:10px!important;box-shadow:none!important}.v10-media-card{background:#fff!important}.v10-upload{border-radius:8px!important}.v11-media-item{border-radius:8px!important}.v10-score{border-radius:10px!important}.v10-source-strip{border-radius:9px!important;background:#f7f8f5!important}.v10-source-strip a{color:#4d6b61!important}
/* Daily planner */
.v11-check-layout{gap:10px}.v11-check-card,.v11-calendar{border-radius:12px!important;box-shadow:none!important;border-color:#e4e6e1!important}.v11-moods button{border-radius:10px!important}.v11-moods button.selected{background:#edf3ef!important;border-color:#92a99f!important}.v11-celebrate{border-radius:10px!important;background:#eff6f1!important}.v11-cal-grid button{border-radius:7px!important}.v11-event{border-radius:8px!important}
/* Modal + forms */
.modal-backdrop{background:rgba(28,32,29,.28);backdrop-filter:blur(4px)}.modal{border-radius:14px;box-shadow:0 22px 60px rgba(24,30,26,.12);border:1px solid #e2e4df}.field input,.field select,.field textarea{border-radius:8px;border-color:#dfe2dd;box-shadow:none}.field input:focus,.field select:focus,.field textarea:focus,.v12-field input:focus,.v12-field select:focus{outline:2px solid rgba(70,103,93,.13);border-color:#80978e}.auth-card{border-radius:14px;box-shadow:none}.choice{border-radius:9px!important}
@media(max-width:1100px){.tool-grid{grid-template-columns:repeat(3,1fr)}.v12-grid-4{grid-template-columns:1fr 1fr}.v12-money-layout{grid-template-columns:1fr}.v12-live{position:static;border-left:0;border-top:1px solid #e9ebe7}.v12-road-choice{grid-template-columns:1fr}}
@media(max-width:980px){.sidebar{width:215px}.app-main{margin-left:215px}.tool-grid{grid-template-columns:1fr 1fr}.training-list{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.sidebar{width:238px;transform:translateX(-100%);transition:transform .18s ease}.sidebar.open{transform:translateX(0)}.app-main{margin-left:0}.app-content{padding:20px 14px 54px}.app-top{padding:0 13px}.app-search{display:none}.page-title h1{font-size:24px}.focus-card{display:block}.focus-card .btn{margin-top:13px;width:100%}.stat-grid.dashboard-stats{grid-template-columns:1fr 1fr}.tool-grid{grid-template-columns:1fr 1fr}.dashboard-lower{grid-template-columns:1fr}.v12-path-switch,.v12-choice-3{grid-template-columns:1fr}.v12-road-task{padding:13px 12px;grid-template-columns:27px 1fr}.v12-task-main{grid-template-columns:1fr}.v12-source{justify-self:start}.v12-tool-hint{grid-template-columns:20px 1fr}.v12-tool-hint .v12-inline-action{grid-column:2}.v12-grid-4,.v12-grid-2{grid-template-columns:1fr}.v12-money-step{padding:18px 14px}.v12-actions{padding:15px 14px;flex-wrap:wrap}.v12-reno-row{align-items:flex-start;flex-direction:column}.v12-reno-row>div:last-child{width:100%}.v12-reno-row button{flex:1}.v12-next-row{grid-template-columns:24px 1fr}.v12-next-row .v12-inline-action{grid-column:2}.training-list{grid-template-columns:1fr}}
@media(max-width:460px){.tool-grid{grid-template-columns:1fr}.stat-grid.dashboard-stats{grid-template-columns:1fr 1fr}.v12-range>div{grid-template-columns:1fr}.v12-road-choice{padding:14px}.v12-road-section>header{padding:13px}.v12-money-tabs button{flex:1}.public-main{padding-left:12px;padding-right:12px}.hero-copy{padding:38px 24px}.display{font-size:42px}}

/* V12.2 mobile navigation/accessibility audit */
.sidebar-scrim{position:fixed;inset:0;background:rgba(20,27,24,.28);backdrop-filter:blur(2px);z-index:79}
.mobile-dash-home{display:none}
.assessment-actions{margin-left:auto}
@media(max-width:760px){
  .public-header{padding-top:env(safe-area-inset-top)}
  .assessment-nav{align-items:center}
  .assessment-nav .brand img{width:142px}
  .assessment-actions{gap:5px}
  .assessment-actions .btn{padding:9px 10px;font-size:10.5px}
  .question-card{padding:22px 18px!important;border-radius:18px!important}
  .question-card h2{font-size:30px!important;line-height:1.12!important}
  .choice{min-height:56px;padding:13px 14px!important}
  .actions .btn{min-height:46px}
  .mobile-menu,.mobile-dash-home{display:inline-flex!important;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0!important}
  .app-top{min-height:64px;height:auto;padding-top:calc(7px + env(safe-area-inset-top));padding-bottom:7px}
  .app-top-actions .btn{min-height:40px}
  .sidebar{padding-top:calc(18px + env(safe-area-inset-top));padding-bottom:calc(14px + env(safe-area-inset-bottom))}
  .app-content{padding-bottom:calc(72px + env(safe-area-inset-bottom))!important}
  .modal-backdrop{padding:12px 10px calc(18px + env(safe-area-inset-bottom))!important}
  .modal{max-height:calc(100dvh - 28px);overflow:auto;padding:20px 16px!important}
}
@media(max-width:390px){
  .public-nav{padding-left:9px!important;padding-right:9px!important}
  .brand img{width:136px!important}
  .public-actions .btn{padding:8px 9px!important;font-size:10px!important}
  .assessment-nav .brand img{width:128px!important}
}
