@layer base,layout,components;
@layer base{
 :root{color-scheme:light;--ink:#29231f;--muted:#69615b;--orange:#bf3e10;--orange-dark:#99300b;--tint:#fff0e6;--line:#e4ded8;--paper:#fff;--bg:#f7f6f3;--green:#22613f;font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;line-height:1.55;color:var(--ink);background:var(--bg)}
 *{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}a{color:var(--orange)}h1,h2,h3,p{margin:0}h1{font-size:clamp(1.85rem,4vw,2.65rem);letter-spacing:-.045em;line-height:1.12;font-weight:750}h2{font-size:1.25rem;line-height:1.3;letter-spacing:-.025em}h3{font-size:1rem}p+p{margin-top:.75rem}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #126788;outline-offset:4px}input,select{min-width:0;width:100%;padding:.8rem 1rem;border:1px solid #978b82;border-radius:12px;background:white;color:var(--ink);min-height:50px}input[aria-invalid=true]{border-color:#a51b21}label{display:block;font-weight:650;margin-bottom:.4rem}small{font-size:.875rem}button{touch-action:manipulation}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:.65rem .25rem;border-bottom:1px solid var(--line);vertical-align:top}th{font-weight:650}strong{font-weight:700}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip{position:absolute;top:-100px;left:10px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}[hidden]{display:none!important}
}
@layer layout{
 .app-shell{max-width:1180px;margin:auto;padding:0 36px}.topbar{display:flex;justify-content:space-between;align-items:center;height:104px;border-bottom:1px solid var(--line)}.brand{display:flex;gap:10px;align-items:center;font-size:1.3rem;font-weight:800;letter-spacing:-.04em;text-decoration:none;color:var(--ink)}.brand-mark{display:grid;grid-auto-flow:column;place-items:center;background:var(--orange);color:white;border-radius:11px;width:37px;height:37px;font-size:1.55rem;line-height:1;letter-spacing:-.14em;padding-right:7px}.brand-mark span{opacity:.8}.year-tag{font-size:.8rem;letter-spacing:.08em;font-weight:700;border:1px solid #d5ccc3;border-radius:99px;padding:6px 13px}.workspace{display:grid;grid-template-columns:260px minmax(0,1fr);gap:64px;padding:52px 0 60px;min-height:calc(100dvh - 163px)}.journey h2{margin:10px 0 32px;font-size:1.5rem}.eyebrow{font-size:.75rem;letter-spacing:.14em;font-weight:800;color:var(--orange)}.journey ol{list-style:none;margin:0;padding:0;display:grid;gap:16px}.journey li{display:flex;align-items:center;gap:12px;font-size:.9rem;color:var(--muted)}.step-num{width:30px;height:30px;border:1px solid #bcb0a6;border-radius:50%;display:grid;place-items:center;font-size:.8rem}.journey li.active{color:var(--orange);font-weight:700}.journey li.active .step-num{background:var(--orange);border-color:var(--orange);color:white}.journey li.done .step-num{background:#e4eee7;color:var(--green);border-color:#b4c7ba}.aside-note{margin-top:36px;padding-top:24px;border-top:1px solid var(--line);font-size:.875rem;color:var(--muted);max-width:220px}main{min-width:0;max-width:640px;outline:none}#progress{margin:0 0 24px}.progress-copy{display:flex;justify-content:space-between;gap:8px;font-size:.8rem;color:var(--muted);margin-bottom:10px}.progress-track{height:4px;background:#e6e0d9;border-radius:10px;overflow:hidden}.progress-track span{height:100%;display:block;background:var(--orange);transition:width 180ms ease}.screen{animation:arrive 180ms ease-out}.intro{margin:16px 0 24px;color:var(--muted);max-width:49ch}.content{margin-top:26px}.actions{display:flex;gap:12px;align-items:center;margin-top:30px;flex-wrap:wrap}.actions .primary{flex:1}.footnote{font-size:.875rem;color:var(--muted);margin-top:18px}.field{margin-bottom:20px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field .help{font-size:.875rem;color:var(--muted);margin-top:7px}.stack{display:grid;gap:12px}footer{display:flex;justify-content:space-between;gap:15px;font-size:.75rem;color:var(--muted);padding:20px 0;border-top:1px solid var(--line)}
 @media(max-width:850px){.app-shell{max-width:650px;padding:0 24px}.topbar{height:80px}.workspace{display:block;padding:26px 0 36px;min-height:calc(100dvh - 151px)}.journey{display:none}main{max-width:none}.intro{margin-top:14px}footer{flex-wrap:wrap}.actions{margin-top:24px}}
 @media(max-width:400px){.app-shell{padding:0 18px}.field-row{grid-template-columns:1fr}.year-tag{font-size:.75rem}.topbar{height:72px}}
 @keyframes arrive{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
 @media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
}
@layer components{
 .brand-wordmark{display:block;width:128px;height:72px;max-width:100%;object-fit:cover}
 .complete-button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;padding:10px;border:1px solid #e8bea5;border-radius:10px;color:var(--orange);background:white;vertical-align:middle}.complete-button:hover{background:var(--tint)}.complete-button svg{width:20px;height:20px}.result-value{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.metric-value{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.issue-list{list-style:none;padding:0;margin:12px 0 0}.issue-list li{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:6px 0}.issue-list li>span{min-width:0}.line-item>span:first-child{min-width:0}.line-item>span{overflow-wrap:anywhere}
 .secondary.summary-return{display:inline-flex;align-items:center;justify-content:center;gap:10px;margin-top:16px;color:var(--orange);border-color:var(--orange)}
 .summary-return:hover{background:var(--tint)}
 .training-disclosure{margin-top:0}.training-disclosure summary{min-height:44px;align-content:center}
 .extra-line small{display:block;margin-top:5px}
 .line-item.extra-line>span:first-child{min-width:0;flex:1 1 12rem}
 .line-item.extra-line>span:last-child{flex:0 0 auto}
 .change-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;align-items:center}
 .change-actions>.primary,.change-actions>.secondary{flex:1 1 12rem}
 .remove-change{display:inline-flex;align-items:center;justify-content:center;gap:8px}
 .trash-icon{width:20px;height:20px;flex-shrink:0}
 .saved-label{color:var(--green);font-size:.875rem;font-weight:650;margin-bottom:10px}
 .saved-change .line-item strong{white-space:normal;overflow-wrap:anywhere}
 .saved-change .help{font-size:.875rem;color:var(--muted);margin-top:10px}
 .training-guide{margin-bottom:20px}
 .training-scale{list-style:none;padding:0;margin:16px 0 12px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,max(8rem,calc((100% - 24px)/3))),1fr));gap:12px}
 .training-scale li{display:flex;flex-direction:column;justify-content:space-between;text-align:center;background:white;border:1px solid #e8bea5;border-radius:14px;overflow:hidden}
 .training-scale li>span{padding:8px;background:var(--tint);color:var(--orange);font-weight:700;line-height:1.3}
 .training-scale strong{font-size:1.25rem;padding:10px;line-height:1.3}
 .training-scale .training-threshold>span{color:white;background:var(--orange)}
 .training-guide>.help{font-size:.875rem;color:var(--muted)}
 .result-notice{font-size:.875rem;line-height:1.6;color:var(--ink);background:var(--tint);border-left:3px solid var(--orange);border-radius:0 10px 10px 0;padding:12px 14px;margin-top:20px}
 .brand-icon{width:3.5rem;height:3.5rem;flex-shrink:0;border-radius:.65rem;object-fit:contain}
 .topbar{height:auto;min-height:104px;padding:24px 0;gap:12px;flex-wrap:wrap}
 @media(max-width:850px){.topbar{min-height:80px;padding:18px 0}}
 @media(max-width:400px){.topbar{min-height:72px;padding:16px 0}}
 .callout+.summary-card{margin-top:16px}
 .inline-check{min-height:44px;padding:8px 0}
 .primary,.secondary,.quiet{min-height:48px;padding:12px 20px;border-radius:12px;font-weight:700}.primary{background:var(--orange);border:1px solid var(--orange);color:white;display:flex;align-items:center;justify-content:center;gap:16px;text-decoration:none}.primary:hover{background:var(--orange-dark)}.secondary{background:white;border:1px solid #b9aaa0;color:var(--ink)}.quiet{background:none;border:0;color:var(--muted);padding:10px}.choices{display:grid;gap:10px}.choices.two{grid-template-columns:1fr 1fr}.choice{border:1px solid #c9beb5;background:white;min-height:64px;padding:15px 18px;text-align:left;border-radius:14px;color:var(--ink);display:flex;gap:14px;align-items:center;transition:background 140ms,border-color 140ms}.choice:hover{border-color:var(--orange);background:#fff9f5}.choice[aria-pressed=true],.choice[aria-checked=true]{border:2px solid var(--orange);padding:14px 17px;background:var(--tint)}.choice .radio{border:1px solid #89776b;flex-shrink:0;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;color:transparent;font-size:12px}.choice[aria-pressed=true] .radio{background:var(--orange);border-color:var(--orange);color:white}.choice small{display:block;color:var(--muted);margin-top:3px;font-weight:400}.choice-icon{background:var(--tint);color:var(--orange);width:36px;height:36px;display:grid;place-items:center;border-radius:10px;flex-shrink:0}.category-list{grid-template-columns:1fr 1fr}.category-list .choice{min-height:76px;font-size:.925rem}.callout{padding:16px 18px;border-radius:14px;background:var(--tint);border:1px solid #e8bea5;font-size:.925rem}.callout.neutral{background:#f1f1ee;border-color:var(--line);color:var(--muted)}.callout.success{background:#eaf3ed;border-color:#bad1c2;color:#194b30}.callout.error{background:#fff0f0;border-color:#dba0a3;color:#912028}.callout+.callout{margin-top:12px}.welcome-mark{display:inline-flex;gap:8px;align-items:center;border:1px solid #e2b79c;border-radius:99px;padding:5px 11px;background:var(--tint);color:var(--orange);font-size:.8rem;margin-bottom:22px}.welcome h1{font-size:clamp(2.25rem,6vw,3.55rem);max-width:19ch}.welcome h1 em{font-style:normal;color:var(--orange)}.welcome .intro{max-width:39ch;margin-bottom:28px}.welcome-art{display:flex;align-items:flex-end;gap:10px;margin:24px 0 30px;max-width:330px;height:115px}.welcome-art span{background:#f5d5bd;border-radius:10px 10px 4px 4px;flex:1;position:relative}.welcome-art span:nth-child(2){background:#eda16f}.welcome-art span:nth-child(3){background:#dc6a32}.welcome-art span:nth-child(4){background:var(--orange)}.welcome-art small{position:absolute;top:100%;left:0;right:0;text-align:center;color:var(--muted);font-size:.75rem;margin-top:5px}.welcome-art b{position:absolute;top:12px;left:0;right:0;text-align:center;color:white;font-size:.8rem}.metric{background:var(--orange);color:white;padding:26px;border-radius:20px;margin:24px 0}.metric .amount{font-size:clamp(2rem,8vw,3.6rem);font-weight:800;letter-spacing:-.04em;overflow-wrap:anywhere}.metric small{color:#fff1e8}.line-item{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--line)}.line-item span:last-child{text-align:right}.line-item strong{white-space:nowrap}.muted{color:var(--muted)}.tag{font-size:.75rem;background:#f0ebe5;color:#5d5148;border-radius:99px;padding:3px 9px;display:inline-block}.summary-card{background:white;border:1px solid var(--line);border-radius:16px;padding:18px;margin-bottom:12px}.summary-card header{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-bottom:12px}.summary-card .quiet{min-height:44px;padding:8px;color:var(--orange)}details{border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin:14px 0;background:white}summary{cursor:pointer;font-weight:650}details[open] summary{margin-bottom:12px}.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.chip{background:white;border:1px solid #ac9c90;border-radius:99px;min-height:44px;padding:8px 16px}.chip[aria-pressed=true]{background:var(--tint);border-color:var(--orange);color:var(--orange);font-weight:700}.month-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.big-input{font-size:1.65rem;font-weight:650}.error-text{color:#9e1b22;margin-top:8px;font-size:.9rem}.pill-note{font-size:.8rem;color:var(--muted)}.review-grid{display:grid;gap:12px}.reveal{margin-top:18px}.inline-check{display:flex;gap:10px;align-items:flex-start;font-weight:400}.inline-check input{width:20px;min-height:20px;flex-shrink:0;margin-top:3px}.contract-card{padding:18px;border:1px solid var(--line);border-radius:14px;background:white;margin-bottom:16px}.contract-card h3{margin-bottom:14px}.fraction-bar{height:9px;background:#ebe6df;border-radius:99px;overflow:hidden;margin:14px 0}.fraction-bar span{height:100%;display:block;background:var(--orange)}
 @media(max-width:500px){.category-list{grid-template-columns:1fr}.category-list .choice{min-height:60px}.choices.two{grid-template-columns:1fr}.metric{padding:22px}.line-item{flex-wrap:wrap}}
}
