:root{font-family:Arial,Helvetica,sans-serif;color:#273b32;background:#f7f6f2;font-synthesis:none;font-size:14px;line-height:1.5;--green: #315544;--muted: #7a8178;--line: #e2e4da;--paper: #fffefa;--serif: Georgia, "Times New Roman", serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{border:1px solid #d7dcd0;background:#fffefa;padding:9px 13px;border-radius:7px;color:#33473a;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px;line-height:1.3}button:hover{background:#edf0e8;border-color:#a8b5a3}button:disabled{opacity:.5;cursor:not-allowed}button.primary,.button-save{background:#365a46;color:#fff;border-color:#365a46}button.primary:hover,.button-save:hover{background:#254732}button.subtle{border:0;background:transparent;padding:7px 3px;color:#707c6f}button.icon-button{padding:7px;border:0;background:transparent}input,select,textarea{min-width:0;background:#fffefa;color:#263c2f;border:1px solid #d9dfd1;border-radius:6px;padding:9px 10px;outline:none}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid #839e68;outline-offset:2px}input[type=checkbox]{accent-color:#365b48;width:15px;height:15px;flex-shrink:0}textarea{min-height:90px;resize:vertical}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.04em}h1{font-size:39px;margin-bottom:8px;line-height:1.2}h2{font-size:24px;margin-bottom:5px}h3{font-size:15px;font-weight:600;letter-spacing:-.02em;margin-bottom:8px}p{color:#747c72;line-height:1.65}small{font-size:11px;color:var(--muted);display:block;line-height:1.6}a{color:inherit}.muted{color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:10px;font-weight:600;color:#7d8476}.app-shell{display:flex;min-height:100vh}.sidebar{width:230px;min-width:230px;padding:34px 21px 23px;border-right:1px solid var(--line);background:#f2f3ed;position:fixed;inset:0 auto 0 0;overflow-y:auto;display:flex;flex-direction:column}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;font-size:20px;font-family:var(--serif);letter-spacing:-.04em}.brand small{font-family:Arial,sans-serif;font-size:10px;letter-spacing:0}.brand-mark{font-size:35px;line-height:1;font-style:italic;letter-spacing:-.09em;color:#33533c}.project-label{display:flex;gap:10px;align-items:center;margin:35px 0 20px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.project-label strong{font-size:12px;font-weight:600}.project-label span{display:block;color:var(--muted);font-size:10px}.house-graphic{background:#e4e9dd;border:1px solid #d3dbc9;border-radius:6px;padding:7px;line-height:0}nav{display:flex;flex-direction:column;gap:4px}nav button{border:0;background:transparent;text-align:left;justify-content:flex-start;padding:11px 9px;font-size:12px;border-radius:6px;gap:10px;color:#6a7669}nav button.active{background:#e2e9db;color:#31533b;font-weight:600}nav button:nth-last-child(1){margin-top:18px}.tiny-lock{font-size:8px;color:#8b967f;margin-left:auto;text-transform:uppercase;letter-spacing:.06em}.sidebar-bottom{margin-top:auto;padding:40px 8px 0}.member-avatars{display:flex;padding-left:4px}.member-avatars span{height:29px;width:29px;border-radius:50%;border:2px solid #f2f3ed;display:grid;place-items:center;font-size:10px;font-weight:600;margin-left:-4px;color:#4f5849}.sidebar-bottom p{font-family:var(--serif);font-size:15px;margin-top:12px}.sidebar-bottom .subtle{font-size:11px}.account-label{display:block;color:#839078;font-size:10px;margin-top:17px}.main{margin-left:230px;flex:1;min-width:0}.topbar{height:72px;border-bottom:1px solid var(--line);padding:0 42px;display:flex;align-items:center;justify-content:space-between;font-size:11px;background:#ffffff4d}.topbar>div{display:flex;gap:15px}.topbar>span{display:flex;align-items:center;gap:9px;color:#76816f}.topbar button{font-size:11px}.dot{width:6px;height:6px;border-radius:50%;background:#6e9561}.page{padding:38px 42px 25px;max-width:1560px;margin:0 auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.page-heading .eyebrow{margin-bottom:8px}.page-heading p{font-size:12px;margin-bottom:0}.page-heading>button{font-size:11px;max-width:300px}.overview-hero{background:#e9edde;border:1px solid #d9e0cc;border-radius:11px;display:flex;justify-content:space-between;min-height:260px;margin-bottom:22px;position:relative;overflow:hidden;padding:30px 36px}.overview-hero>div:first-child{max-width:430px;position:relative;z-index:1}.overview-hero h2{font-size:37px;line-height:1.12;margin:18px 0 12px}.overview-hero p{font-size:12px;max-width:335px;color:#6c7b63}.overview-hero button{background:transparent;font-size:11px;border-color:#bac7aa}.building-art{width:260px;position:relative;align-self:stretch;display:flex;align-items:center;flex-direction:column;margin-right:24px;opacity:.75}.roofline{margin-top:9px;width:188px;height:12px;border:1px solid #8c987f;background:#d2d9c7;box-shadow:0 4px #b5c0a6}.facade{width:177px;border:1px solid #8c987f;display:grid;grid-template-columns:repeat(3,1fr);gap:13px 15px;padding:15px 17px 0;background:repeating-linear-gradient(0deg,transparent,transparent 12px,#b5bfa9 12px,#b5bfa9 13px);height:197px;position:relative}.facade i{border:1px solid #7f8c72;width:32px;height:28px;background:linear-gradient(90deg,transparent 47%,#8c987f 49%,#8c987f 51%,transparent 53%),linear-gradient(0deg,#c1cbb4 47%,#8c987f 49% 51%,#dce2d1 53%);box-shadow:0 3px #a5b296}.door{position:absolute;bottom:0;left:71px;width:32px;height:35px;background:#a1b193;border:1px solid #7f8c72;border-radius:12px 12px 0 0}.building-step{width:196px;height:7px;border:1px solid #8c987f;background:#b9c5aa}.art-caption{font-size:10px;color:#8b947f;position:absolute;left:216px;top:175px;white-space:nowrap;transform:rotate(-7deg);font-family:var(--serif);font-style:italic;line-height:1.6}.badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:4px;background:#efeee8;color:#7b8274;font-size:9px;letter-spacing:.02em;line-height:1.4}.badge.light{background:#f5f6ed;color:#687a57;border:1px solid #d7dfca}.badge.green{background:#e5eedf;color:#557346}.badge.amber{background:#f5eddb;color:#9c783d}.badge.red{background:#f6e4dc;color:#a4553a}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:24px}.metrics.two{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:20px 19px;min-width:0}.metric strong{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;display:block;font-size:31px;line-height:1.2;margin:11px 0 7px;font-variant-numeric:tabular-nums}.metric .eyebrow{font-size:9px;letter-spacing:.08em}.metric small{font-size:10px}.metric.accent{background:#f1eee3;border-color:#e4dfcb}.grid-two{display:grid;grid-template-columns:1.05fr 1fr;gap:20px}.panel{border:1px solid var(--line);border-radius:9px;background:var(--paper);margin-bottom:22px;overflow:hidden}.panel-header{padding:23px 24px 17px;display:flex;justify-content:space-between;align-items:center;gap:15px}.panel-header h2{font-size:23px}.panel-header p{font-size:11px;margin-bottom:0;margin-top:6px}.panel-header button{font-size:10px}.panel-foot{padding:14px 24px;background:#f8f9f3;border-top:1px solid var(--line);font-size:10px;color:#818b76;display:flex;gap:15px;align-items:center;line-height:1.65}.budget-stack{display:flex;height:24px;margin:5px 24px 18px;border-radius:4px;overflow:hidden;gap:2px}.cost-list{padding:0 24px 17px}.cost-list>div{display:flex;justify-content:space-between;gap:10px;padding:7px 0;color:#7b8374;font-size:11px;align-items:center}.cost-list strong{color:#43583e;font-size:12px;font-weight:500;font-variant-numeric:tabular-nums}.decision-card{display:flex;align-items:center;width:calc(100% - 48px);border:0;border-top:1px solid #eef0e8;border-radius:0;margin:0 24px;padding:16px 0;justify-content:initial;text-align:left;background:transparent;gap:14px}.decision-card:first-of-type{border-top:0}.decision-number{font-family:var(--serif);font-size:20px;color:#abb69e}.decision-card>div{flex:1}.decision-card strong{font-size:12px;font-weight:500}.decision-card p{font-size:10px;margin:4px 0 0}.decision-card svg{color:#8b967c}.chart{height:270px;padding:5px 20px 20px}.chart.tall{height:350px}.assumption-list{padding:0 25px 15px}.assumption-list>div{display:flex;gap:10px;align-items:baseline;border-top:1px solid #f1f1e9}.assumption-list p{font-size:11px;padding:9px 0;margin:0}.warning-dot{width:5px;height:5px;border-radius:50%;background:#bb9662;flex-shrink:0}.page-footer{display:flex;justify-content:space-between;color:#6e7b60;padding-top:18px;margin-top:10px;font-size:10px}.page-footer>span:first-child{font-family:var(--serif);font-size:14px}.page-footer .muted{font-family:Arial;font-size:10px;margin-left:8px}.demo-banner{font-size:10px;text-align:center;padding:7px 15px;background:#ede7d7;color:#877449;border-bottom:1px solid #e4dcc9}.error-banner{margin:15px 40px;background:#f9e8e2;color:#974e38;padding:12px 16px;border-radius:6px;display:flex;align-items:center;gap:12px;font-size:12px}.error-banner span{flex:1}.toast{position:fixed;right:30px;bottom:24px;background:#315440;color:#fff;padding:13px 20px;border-radius:7px;z-index:20;box-shadow:0 5px 20px #0002;display:flex;gap:15px;align-items:center;font-size:12px}.toast button{padding:0;background:transparent;border:0;color:#fff}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:17px;font-size:11px;color:#75806c}.field>span{font-weight:500}.field input,.field select,.field textarea{width:100%;font-size:12px}.input-wrap{display:flex;align-items:center;border:1px solid #d9dfd1;background:#fffefa;border-radius:6px;padding:0 10px;color:#91a087}.input-wrap input{border:0;background:transparent;padding:9px 4px;text-align:right;font-variant-numeric:tabular-nums}.input-wrap span{font-size:11px}.form-grid{padding:0 24px;display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.form-grid.three{grid-template-columns:repeat(3,1fr)}dialog .form-grid{padding:0}.footnote{font-size:10px;margin:0 24px 20px;color:#8d9683}.budget-controls{display:flex;justify-content:space-between;align-items:center;padding:5px 24px 18px;gap:20px}.budget-controls>.field{width:130px;margin:0}.segmented{display:inline-flex;border:1px solid #dce1d1;border-radius:6px;background:#f2f5eb;overflow:hidden}.segmented button{border:0;background:transparent;border-radius:0;font-size:11px;padding:10px}.segmented button+button{border-left:1px solid #dce1d1}.toggle{display:flex;gap:9px;align-items:center;font-size:11px;color:#66765b}.group-header{display:flex;justify-content:space-between;align-items:center;padding:15px 24px;background:#f6f7ef;border-top:1px solid var(--line)}.group-header h3{font-family:var(--serif);font-weight:400;font-size:18px;margin:0}.group-header span{font-size:10px;color:#8b947e}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:11px;text-align:left;font-variant-numeric:tabular-nums}th{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#8a927f;font-weight:500;white-space:nowrap;padding:12px 14px;border-bottom:1px solid var(--line)}td{padding:13px 14px;border-bottom:1px solid #eef0e7;vertical-align:middle;color:#5f7155}th:first-child,td:first-child{padding-left:24px}th:last-child,td:last-child{padding-right:24px}td button{font-size:10px;white-space:nowrap}td strong{font-weight:500;color:#394f32}td small{font-size:9px}td input{max-width:150px;font-size:11px;padding:6px 7px}.table-money{text-align:right;width:100px}.line-check{display:flex;gap:9px;align-items:center;min-width:190px}.line-check span{font-size:11px}.disabled-row{opacity:.5}.nowrap{white-space:nowrap}.negative{color:#a36243!important}.inner{padding:5px 24px 24px}.inner p{font-size:12px}.inner .cost-list{padding:0}.notice{background:#f1eddf;border:1px solid #e3dcca;padding:16px 20px;border-radius:8px;font-size:12px;margin-bottom:20px;color:#8d794e}.notice p{font-size:11px;margin:6px 0 0;color:#8b805f}.context-strip{display:flex;gap:30px;align-items:center;padding:20px 25px;border:1px solid #dce1d1;background:#eef1e7;border-radius:8px;margin-bottom:24px}.context-strip strong{display:block;font-family:var(--serif);font-size:30px;font-weight:400;white-space:nowrap}.context-strip p{font-size:11px;max-width:500px;margin:0;flex:1}.context-strip .field{margin:0;min-width:160px}.architect-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:25px}.architect-card{background:var(--paper);border:1px solid var(--line);border-radius:9px;padding:24px;display:flex;flex-direction:column}.architect-card.selected{border:1px solid #63845d;background:#f3f6ed;box-shadow:0 0 0 2px #e1e8d9}.architect-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.firm-symbol{font-family:var(--serif);font-size:22px;font-style:italic;color:#8f9c81}.architect-card h2{font-size:28px}.architect-card>p{font-size:11px;margin-bottom:24px}.architect-price{font-family:var(--serif);font-size:33px;letter-spacing:-.025em;margin-bottom:18px}.architect-price small{font:10px Arial;margin-top:5px}.architect-total{padding:12px 0;border-top:1px solid #e5e8dc;border-bottom:1px solid #e5e8dc;display:flex;justify-content:space-between;font-size:11px;color:#7a866d}.architect-total strong{font-weight:500;color:#4d6740}.architect-card ul{padding-left:14px;color:#79856e;font-size:11px;line-height:1.75;margin:16px 0 22px;flex:1}.card-actions{display:flex;justify-content:space-between;margin-top:15px}.card-actions button{font-size:11px}.mini-warning{background:#f2edde;color:#9a814d;padding:9px 12px;border-radius:4px;font-size:10px}.button-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.risk-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:0 24px 24px}.risk-card{border:1px solid #e5e8dc;border-radius:7px;padding:20px}.risk-card h3{font-family:var(--serif);font-size:21px;font-weight:400;margin-top:10px}.risk-card p{font-size:11px}.risk-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #e6e8dd;padding-top:14px;font-size:10px;color:#8a947d}.risk-meta select{font-size:10px;padding:5px}.risk-card .cost-list{padding:0 0 14px}.assumption-row{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;padding:20px 24px;border-top:1px solid #eceee3}.assumption-row p{font-size:11px;margin-bottom:8px}.private-banner{display:flex;gap:14px;align-items:center;padding:18px 24px;border:1px solid #dce2d0;background:#ebf0e2;border-radius:8px;margin-bottom:24px;font-size:12px}.private-banner>div{flex:1}.private-banner span{display:block;font-size:10px;color:#7c8a6c;margin-top:4px}.private-banner button{font-size:11px}.panel>.field{margin:0 24px 20px}.panel>.button-row{padding:0 24px 20px}.empty{padding:35px 24px;text-align:center;font-size:12px;margin:0}.error{background:#f8e7df;padding:12px;border-radius:5px;font-size:12px;color:#a35437}dialog{border:1px solid #d5dec7;border-radius:11px;padding:25px;width:520px;max-width:92vw;max-height:90vh;color:#2d452d;background:#fffefa;box-shadow:0 20px 70px #0003}dialog.wide{width:850px}dialog::backdrop{background:#1a2d2380;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.modal-header h2{font-size:27px}dialog p{font-size:12px}dialog table{margin-bottom:20px}dialog .code-editor{width:100%;height:350px;white-space:pre;font:11px/1.6 monospace;margin-bottom:15px;background:#f6f7f1}hr{border:0;border-top:1px solid #e2e7d9;margin:24px 0}.version-list{max-height:420px;overflow:auto}.version-list>button{width:100%;display:flex;justify-content:space-between;text-align:left;margin:8px 0}.version-list article{border-top:1px solid #e4e8d9;padding:20px 0}.version-list article h3{margin-top:10px}blockquote{border-left:3px solid #c6d2b5;padding:10px 18px;font-size:12px;margin-left:0;background:#f2f5eb}.auth-shell{min-height:100vh;background:#edf0e4;padding:35px 45px}.auth-card{max-width:520px;margin:70px auto;padding:40px;background:#fffefa;border:1px solid #dbe0ce;border-radius:12px}.auth-card h1{font-size:42px;margin:20px 0}.auth-card p{font-size:13px}.auth-card form{margin-top:30px}.auth-card form button{width:100%}@media(min-width:1550px){.page{padding-left:55px;padding-right:55px}.overview-hero{min-height:280px}.building-art{margin-right:90px}.metrics .metric{padding:23px}.sidebar{width:250px;min-width:250px}.main{margin-left:250px}}@media(max-width:1150px){.sidebar{width:205px;min-width:205px;padding-left:15px;padding-right:15px}.main{margin-left:205px}.page{padding:28px 25px}.topbar{padding:0 25px}.metrics{gap:10px}.metric{padding:17px 13px}.metric strong{font-size:27px}.art-caption{display:none}.building-art{margin:0;min-width:195px}.grid-two{grid-template-columns:1fr}.panel-header{flex-wrap:wrap}.form-grid.three{grid-template-columns:1fr 1fr}.budget-controls{flex-wrap:wrap}.overview-hero{padding:25px}.private-banner{flex-wrap:wrap}}@media(max-width:760px){.app-shell{display:block}.sidebar{position:relative;inset:auto;width:100%;padding:15px 18px;border-right:0;border-bottom:1px solid var(--line);display:block}.brand{font-size:18px}.brand-mark{font-size:29px}.brand small,.project-label,.sidebar-bottom .member-avatars,.sidebar-bottom p{display:none}.sidebar-bottom{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 0 0}.sidebar-bottom .account-label{margin:0 auto 0 0}nav{display:flex;flex-direction:row;overflow:auto;margin-top:15px;gap:5px}nav button{white-space:nowrap;padding:8px 10px;font-size:10px}nav button:nth-last-child(1){margin-top:0}nav button svg{width:14px;height:14px}.tiny-lock{display:none}.main{margin:0}.topbar{height:58px;padding:0 18px}.topbar>span{font-size:9px}.topbar .muted{display:none}.topbar>div{gap:8px}.topbar button{font-size:10px}.page{padding:24px 18px}.page-heading{align-items:flex-start;flex-direction:column;gap:14px}.page-heading h1{font-size:33px}.page-heading p{font-size:11px}.overview-hero{padding:25px;min-height:265px}.overview-hero h2{font-size:32px}.overview-hero p{max-width:230px}.building-art{display:none}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric strong{font-size:27px}.metric .eyebrow{font-size:8px;letter-spacing:.05em}.metric small{font-size:9px}.panel-header{padding:19px}.panel-header h2{font-size:22px}.panel-header p{font-size:10px}.architect-grid{grid-template-columns:1fr}.context-strip{flex-wrap:wrap;gap:15px}.context-strip p{min-width:150px}.context-strip .field{width:100%}.budget-controls{padding:5px 18px 15px;gap:15px}.group-header{padding:13px 18px;gap:15px}.group-header h3{font-size:16px}.group-header span{font-size:9px;text-align:right}.form-grid,.form-grid.three{padding:0 18px;gap:0 12px}.risk-grid{grid-template-columns:1fr;padding:0 18px 18px}.private-banner{padding:16px}.private-banner button{width:100%}.chart{padding-left:0;padding-right:10px}.page-footer{gap:20px;flex-direction:column;font-size:9px}.page-footer .muted{display:none}.error-banner{margin:10px 18px;flex-wrap:wrap}.auth-shell{padding:25px 18px}.auth-card{padding:27px;margin-top:45px}.auth-card h1{font-size:35px}dialog .form-grid{grid-template-columns:1fr}.panel-foot{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media(max-width:760px){nav{flex-wrap:wrap;overflow:visible}nav button{flex:0 0 auto;min-height:40px;padding:10px}nav button.active{box-shadow:inset 0 -2px #6e8a5a}}[hidden]{display:none!important}
