/* Simply Bid visual system. Estimating state and arithmetic stay in existing modules. */
:root{--navy:#14243c;--teal:#14243c;--lime:#d5b778;--paper:#fff;--line:#e2e5ea;--muted:#697383;--warn:#805c20;--gold:#b39454;--silver:#f5f6f8;--ink:#1b2739;--shadow:0 4px 22px rgba(20,36,60,.045)}
body{background:#fff;color:var(--ink);font:14px/1.55 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}
button,input,textarea,select{font:inherit}button{border-radius:10px;min-height:42px;padding:10px 17px;background:var(--navy);font-size:12px;font-weight:600;box-shadow:0 1px 2px #14243c12;transition:background .15s,box-shadow .15s}button:hover{filter:none;background:#253c5b;box-shadow:0 3px 8px #14243c15}button.secondary{background:#fff;color:var(--navy);border-color:#dfe3e8}button.secondary:hover{background:#f3f5f8;border-color:#c3cad4}button.danger{background:#fff4f2;color:#a13a32;box-shadow:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #b3945499;outline-offset:3px}button:disabled{opacity:.5;cursor:default}
aside{width:238px;padding:32px 20px 18px;background:linear-gradient(165deg,#172a45,#101e33);border-right:1px solid #23354e;overflow-y:auto;scrollbar-width:thin}
.product-wordmark{font:650 23px/1.2 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:-.8px;color:#fff;margin:0 10px 28px}.product-wordmark span{font:500 9px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:1.8px;color:#c6ad7e;margin-top:8px}
.brand{margin:0 10px;padding:0 0 24px;border-bottom:1px solid #ffffff16;letter-spacing:0;color:#e0e6ef}.sidebar-company{font-size:12px;font-weight:500;line-height:1.45}.sidebar-company strong{font-weight:550}.sidebar-company img{max-width:150px;max-height:55px;border-radius:6px;padding:5px}
.aside-label{display:none}nav{margin-top:18px}nav .nav-group{font-size:9px;letter-spacing:1.6px;text-transform:uppercase;color:#93a1b6;margin:23px 12px 9px}nav button{display:flex;align-items:center;gap:11px;width:100%;min-height:39px;margin:3px 0;padding:9px 12px;background:transparent;border:1px solid transparent;border-radius:9px;color:#9dabc0;font-size:10px;box-shadow:none;white-space:nowrap}nav button span{font-size:12px;font-weight:500;color:#c4cedd}nav button:hover{background:#ffffff09;box-shadow:none}nav button.active{background:#ffffff0d;border-color:#ffffff12;box-shadow:inset 3px 0 var(--gold);color:#e5c991}nav button.active span{color:white}.aside-bottom{padding:18px 10px 0;font-size:11px;color:#c6ad7e}.aside-bottom p{font-size:10px;line-height:1.6;color:#98a8be;margin:7px 0 0}
.workspace{margin-left:238px;min-width:0}header{height:68px;padding:0 42px;background:#ffffffed;border-color:#edf0f3;font-size:10px;letter-spacing:.5px;color:#77808d}header b{color:#c3c9d1;margin:0 11px}.pill{background:#f6f3ed;color:#806333;border:1px solid #eae2d3;border-radius:20px;font-size:8px;padding:5px 10px;letter-spacing:1px}
main{max-width:1500px;padding:42px 42px 28px}.heading{align-items:center;margin-bottom:32px;gap:24px}h1{font:620 34px/1.15 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:-1.3px;margin:0 0 12px;color:#172438}h2{font:620 19px/1.3 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:-.45px;margin:0 0 9px}h3{font-size:13px;letter-spacing:-.1px}.heading p{font-size:13px;max-width:650px;line-height:1.65;margin:0;color:#77808c}.heading #demo{white-space:nowrap;font-size:11px;background:#f7f8fa;box-shadow:none}p{color:var(--muted)}.eyebrow{font-size:9px;letter-spacing:1.6px;color:#806333}
.grid{grid-template-columns:minmax(0,1.55fr) minmax(285px,1fr);gap:26px}.grid>section{min-width:0}.card{border:1px solid #e4e7ec;border-radius:16px;background:#fff;padding:28px;margin-bottom:24px;box-shadow:var(--shadow);min-width:0}.card-head{align-items:start;margin-bottom:25px;gap:25px}.card-head p{margin-bottom:0;max-width:630px}.tag{color:#725928;background:#f7f3e9;border:1px solid #ede4cf;border-radius:6px;letter-spacing:.45px;font-size:9px;padding:5px 8px;white-space:nowrap}.small{font-size:11px;line-height:1.7;color:#76808d}
label{font-size:11px;color:#576271;font-weight:550;margin-bottom:20px}input,textarea,select,.rich-editor{background:#fafbfc;border:1px solid #e0e4e9;border-radius:9px;padding:11px 12px;color:#202e43;min-height:42px;font-size:12px;box-shadow:inset 0 1px 2px #14243c02}input:hover,textarea:hover,select:hover{border-color:#c8d0db}input:focus,textarea:focus,select:focus,.rich-editor:focus{background:#fff;border-color:#a68a50;outline:3px solid #b394541c;outline-offset:1px}input::placeholder,textarea::placeholder{color:#9ba3af}input[type=checkbox]{min-height:0;width:15px;height:15px;accent-color:var(--navy);vertical-align:middle;margin-right:7px;box-shadow:none}input[type=file]{font-size:11px;max-width:100%;background:white}input::file-selector-button{border:1px solid #d8dde5;border-radius:6px;padding:7px 9px;margin-right:9px;background:#f2f4f7;color:#34445c;font:inherit;cursor:pointer}input[type=color]{padding:6px}.fields{gap:0 22px}.geometry-fields{gap:0 20px}.actions{gap:9px;margin-top:20px}.actions button{font-size:11px}.upload{border-color:#c5cedb;background:#f8f9fb;border-radius:12px;padding:28px}.upload .icon{color:#b39454}.upload p{max-width:520px;margin-left:auto;margin-right:auto}.logo-editor{background:#f7f8fa;border:1px solid #e6e9ee;border-radius:10px;padding:20px}.rich-editor{padding:18px;line-height:1.7}#headerPreview{border-color:#e4e7ec;background:#fff;border-radius:10px;padding:24px}.license-row{gap:12px}#companyForm h3{padding-top:18px;margin:14px 0 20px;border-top:1px solid #edf0f3}
.summary{background:linear-gradient(150deg,#fff,#fafbfd);border:1px solid #dfe4ec;border-top:3px solid var(--gold);color:#172438;padding:30px}.summary .eyebrow{color:#807252;font-size:9px;letter-spacing:1.4px}.amount{font:600 clamp(32px,3.5vw,51px)/1.12 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:-2px;margin:23px 0 10px;font-variant-numeric:tabular-nums;white-space:nowrap}.summary p{color:#8a929e;font-size:11px;margin-bottom:24px}.statline{border-color:#e6e9ee;font-size:11px;padding:12px 0;gap:12px;color:#7a8492}.statline strong{font-weight:600;color:#29394e;white-space:nowrap}.summary .statline:last-child strong{color:#846629}
.warning,.success,.error{border-radius:9px;font-size:11px;line-height:1.65;padding:13px 17px}.warning{background:#fbf8f0;border-left:3px solid #c5a66a;color:#80683e}.success{background:#f0f5f3;color:#42685a;border:1px solid #dfeae4}.error{background:#fff4f2;color:#a13a32;border:1px solid #efd5d0}#notice:empty{display:none}.field-error{font-size:11px;color:#a13a32}[aria-invalid=true]{background:#fff7f5!important;outline-color:#a13a3222!important}.formula{background:#f5f7fa;border:1px solid #e8ebf0;border-radius:10px;color:#637083;padding:20px;line-height:1.95;font-size:11px}code{background:#f1f3f7;color:#647083;border-radius:4px;font-size:10px;padding:3px 5px}.steps{font-size:12px;line-height:1.7}.steps li{padding:7px 0}
.table-wrap{border-radius:9px;scrollbar-width:thin;scrollbar-color:#c8d0da #f6f7f9}table{font-size:12px}th{font-size:9px;text-transform:uppercase;font-weight:600;letter-spacing:.7px;background:#f7f8fa;color:#7e8895;padding:13px 12px;border-color:#e3e7ed}td{padding:17px 12px;border-color:#edf0f3;line-height:1.6}tbody tr:last-child td{border-bottom:0}td input,td select{padding:9px;min-height:38px;font-size:11px}td .item{font-size:12px;color:#354459;font-weight:600}td .source{font-size:10px;line-height:1.55;margin:6px 0;color:#8c95a0}td .small{font-size:10px}.inactive{opacity:.6}.num{font-variant-numeric:tabular-nums}details{padding:17px 0;border-color:#edf0f3}details summary{font-size:12px;color:#47566b}details[open]>summary{color:#263b57}.body-tabs{display:inline-flex;background:#f0f2f5;border:1px solid #e5e8ed;border-radius:10px;padding:4px;margin-bottom:26px;gap:3px}.body-tabs button{border:0;border-radius:7px;background:#fff;color:#1f324e;box-shadow:0 1px 4px #15243d1a;min-height:32px;padding:6px 18px;text-transform:capitalize;font-size:11px}.body-tabs button.secondary{background:transparent;color:#7a8596;box-shadow:none}
.scope-item{border-color:#edf0f3;padding:22px 0;gap:12px 22px}.scope-item p{line-height:1.7}.scope-item h3{font-weight:600}.rev{border-color:#edf0f3;padding:13px 0}.review,.missing{color:#92713d}a{color:#51688c}footer{padding:20px 42px 26px;gap:18px;font-size:10px;color:#98a0ab;border-top:1px solid #f0f2f5}
.proposal{max-width:930px;padding:44px;box-shadow:0 6px 30px #14243c07;color:#202c3d}.proposal .brand-line{border-color:var(--company-accent,#14243c);gap:20px;padding-bottom:26px}.proposal h2{font-family:inherit;letter-spacing:-.6px}.proposal h3{font-size:14px;font-weight:650;color:var(--company-accent,#14243c)}.proposal .company-name{font-family:inherit;font-weight:650;letter-spacing:-.6px}.proposal .company-contact{color:#6d7581;font-size:11px;line-height:1.7}.proposal p{color:#566170;font-size:12px;line-height:1.8}.proposal .proposal-total{font:600 32px/1.2 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:-1px;color:var(--company-accent,#14243c);padding-top:17px;border-top:1px solid #e0e5eb}.proposal .editable{background:#fafbfc;border:1px solid #eceff3;border-radius:8px;padding:14px}.proposal th{color:#6d7785;background:#f7f8fa}.proposal td{padding:14px 10px}.proposal .tag{color:var(--company-accent,#14243c);background:#f7f8fa;border-color:#e1e5ea}.proposal .company-logo{max-width:160px;max-height:85px;object-fit:contain}.product-credit{color:#939ca7!important}.proposal-validity{font-size:10px!important}.proposal-tools{margin-bottom:24px}
@media(min-width:1500px){main{padding-top:48px}.grid{gap:30px}}
@media(max-height:850px) and (min-width:761px){aside{padding-top:23px}.product-wordmark{margin-bottom:21px}nav .nav-group{margin-top:17px}nav button{min-height:35px;padding:7px 12px}nav button span{font-size:11px}.brand{padding-bottom:18px}.aside-bottom{padding-top:14px}}
@media(max-width:1100px){aside{width:210px;padding-left:15px;padding-right:15px}.workspace{margin-left:210px}header{padding:0 28px}main{padding:32px 28px}.grid{grid-template-columns:1fr}.grid>section:has(>.summary){grid-row:1}.summary .amount{font-size:46px}.heading{align-items:start}h1{font-size:30px}.card{padding:25px}.geometry-fields{grid-template-columns:repeat(2,minmax(0,1fr))}footer{padding-left:28px;padding-right:28px}}
@media(max-width:760px){aside{position:static;width:100%;padding:22px 20px 12px;overflow:visible;background:#14243c;display:block}.product-wordmark{font-size:23px;margin:0 0 14px}.product-wordmark span{display:none}.brand{position:absolute;top:25px;right:20px;max-width:45%;margin:0;border:0;padding:0;justify-content:flex-end;text-align:right}.sidebar-company{font-size:10px;display:block}.sidebar-company img{display:none}.aside-bottom{display:none}nav{display:flex;gap:5px;overflow-x:auto;scrollbar-width:none;margin:0 -20px -2px;padding:7px 20px 5px;scroll-padding:20px}nav::-webkit-scrollbar{display:none}nav .nav-group{display:none}nav button{display:flex;flex:0 0 auto;min-width:0;width:auto;gap:0;min-height:38px;margin:0;padding:8px 12px;font-size:0;border-radius:8px;scroll-margin:20px}nav button span{font-size:11px;white-space:nowrap}nav button.active{box-shadow:inset 0 -2px var(--gold)}.workspace{margin:0}header{height:48px;padding:0 21px;font-size:9px}.pill{font-size:7px}main{padding:28px 20px 24px}.heading{display:flex;flex-wrap:wrap;gap:18px;margin-bottom:26px}h1{font-size:29px;letter-spacing:-1px}.heading p{font-size:12px;line-height:1.7}.heading #demo{margin:0;min-height:36px;font-size:10px;padding:8px 12px}.card{padding:22px;border-radius:13px;margin-bottom:20px}.card-head{gap:18px}.card-head button{flex-shrink:0}.grid{gap:0}.fields,.geometry-fields{grid-template-columns:1fr}.amount,.summary .amount{font-size:45px;letter-spacing:-1.8px}.summary{padding:26px}.summary .statline{padding:10px 0}.actions{gap:8px}.actions button{min-height:40px}.body-tabs{display:flex;width:100%;justify-content:stretch}.body-tabs button{flex:1}.scope-item{grid-template-columns:1fr}.scope-item textarea{grid-column:auto}.license-row{grid-template-columns:1fr 1fr}.proposal{padding:23px}.proposal .brand-line{flex-wrap:wrap}.proposal .company-name{font-size:25px!important}.proposal p{font-size:11px}.proposal .proposal-total{font-size:28px}.proposal .company-logo{max-width:135px;max-height:65px}footer{display:flex;flex-wrap:wrap;gap:7px;padding:16px 20px;font-size:9px}footer span{display:block}th,td{padding-left:10px;padding-right:10px}
body[data-view=projects] #app>.card{padding:0;border:none;box-shadow:none;background:transparent}body[data-view=projects] .card-head{display:block;margin-bottom:25px}body[data-view=projects] .card-head button{margin-top:18px}body[data-view=projects] .card-head p{max-width:100%}body[data-view=projects] .table-wrap{overflow:visible}body[data-view=projects] table,body[data-view=projects] tbody{display:block;width:100%}body[data-view=projects] thead{display:none}body[data-view=projects] tbody tr{display:grid;grid-template-columns:1fr 1fr;gap:18px 15px;border:1px solid #e1e5eb;border-radius:14px;background:#fff;padding:22px;margin:0 0 17px;box-shadow:var(--shadow)}body[data-view=projects] td{display:block;min-width:0;border:0;padding:0;font-size:11px;overflow-wrap:anywhere}body[data-view=projects] td:first-child{grid-column:1/-1;font-size:12px}body[data-view=projects] td:first-child strong{font-size:16px;letter-spacing:-.3px;color:#26374e}body[data-view=projects] td:nth-child(2){grid-column:1/-1}body[data-view=projects] td:nth-child(2):before{content:'SITE';display:block;font-size:8px;letter-spacing:1px;color:#8a94a1;margin-bottom:5px}body[data-view=projects] td:nth-child(4):before{content:'REVISION / TOTAL';display:block;font-size:8px;letter-spacing:1px;color:#8a94a1;margin-bottom:5px}body[data-view=projects] td:nth-child(5){grid-column:1/-1;color:#8a94a1;font-size:10px}body[data-view=projects] td:nth-child(6){grid-column:1/-1;border-top:1px solid #edf0f3;padding-top:15px}body[data-view=projects] td .actions{display:grid;grid-template-columns:1fr 1fr;margin:0;gap:8px}body[data-view=projects] td .actions button{width:100%;font-size:10px}body[data-view=projects] td[colspan]{grid-column:1/-1;padding:30px 0;color:#8892a0}body[data-view=projects] td select{max-width:140px;min-width:0;width:100%}
}
@media(max-width:760px){body[data-view=geometry] .card>table{display:block;overflow-x:auto;max-width:100%;scrollbar-width:thin}.grid>section{display:contents}.grid>section:has(>.summary){grid-row:auto}.grid .summary{grid-row:1}}
@media(prefers-reduced-motion:no-preference){button{transition:background .15s,box-shadow .15s,transform .1s,border-color .15s}button:active{transform:scale(.985)}nav button:active{transform:translateX(1px)}details[open]>.geometry-fields{animation:reveal-fields .14s ease-out}@keyframes reveal-fields{from{opacity:.4;transform:translateY(3px)}to{opacity:1;transform:none}}}
@media(prefers-reduced-motion:reduce){button,input,textarea,select{transition:none!important}*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}}
@media print{body{background:#fff;color:#111;font-size:11pt}.workspace{margin:0}main{max-width:none;padding:0}.proposal{border:0;border-radius:0;box-shadow:none;padding:0;margin:0;max-width:none}.proposal .editable{border:0;border-radius:0;padding:0;background:transparent}.proposal p{color:#333;font-size:10pt;line-height:1.65}.proposal .brand-line{border-color:var(--company-accent,#14243c)}.proposal .company-name{font-size:24pt!important}.proposal .company-logo{max-width:140px;max-height:75px}.proposal .proposal-total{font-size:23pt}.proposal th{background:#f4f5f7;font-size:8pt}.proposal td{font-size:9pt;padding:10px 8px}.proposal .tag{background:#fff;color:var(--company-accent,#14243c)}.proposal-validity{font-size:8pt!important}.proposal .warning{background:#faf6ec;color:#775c2c}.product-credit{font-size:8pt!important}h3{break-after:avoid}tr,.scope-print,.proposal-total{break-inside:avoid}@page{size:letter;margin:18mm}}
