/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.hidden{display:none}.table{display:table}.capitalize{text-transform:capitalize}}:root{--ink:#18253d;--muted:#647187;--primary:#1649dc;--border:#e0e6ef;--canvas:#f5f7fb;--white:#fff;--green:#126947;--bluewash:#edf2ff}*{box-sizing:border-box}body{background:var(--canvas);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,input,select,summary,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}h1,h2,h3,p{margin:0}h1{letter-spacing:-.035em;font-size:clamp(1.9rem,3.8vw,2.6rem);line-height:1.2}h1,h2{font-weight:700}h2{letter-spacing:-.02em;font-size:1.2rem}h3{font-size:1rem;font-weight:700}p{margin-top:.6rem}.small,small{font-size:.875rem}small{display:block}strong{font-weight:700}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #c9d2e1;border-radius:7px;min-width:0;padding:.7rem .8rem}textarea{resize:vertical}input:read-only{background:#f4f6fa}input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary);flex-shrink:0}:focus-visible{outline-offset:3px;outline:3px solid #678bff}.button{border:1px solid var(--primary);background:var(--primary);color:#fff;text-align:center;border-radius:7px;justify-content:center;align-items:center;gap:.4rem;min-height:44px;padding:.7rem 1.1rem;font-size:.9375rem;font-weight:600;line-height:1.4;display:inline-flex}.button:hover{background:#123db9}.secondary{color:var(--ink);background:#fff;border-color:#cbd4e4}.secondary:hover,.subtle:hover{background:#eff3fa}.subtle{color:var(--muted);border-color:var(--border);background:0 0}.danger{color:#a93029;background:#fff4f3;border-color:#f2c3bf}.danger:hover{background:#ffe3df}.back-link,.text-link{color:var(--primary);font-size:.9375rem;font-weight:600}.back-link:hover,.text-link:hover{text-decoration:underline}.back-link{margin-bottom:1rem;display:block}.eyebrow,.muted{color:var(--muted)}.eyebrow{letter-spacing:.12em;margin-bottom:.65rem;font-size:.75rem;font-weight:700;display:block}.topbar{border-bottom:1px solid var(--border);background:#fff}.top-inner{justify-content:space-between;align-items:center;gap:2rem;max-width:1248px;margin:auto;padding:1.15rem 2rem;display:flex}.brand{grid-template-columns:36px auto;column-gap:.65rem;font-size:1.15rem;line-height:1.15;display:grid}.brand,.brand-mark{align-items:center;font-weight:700}.brand-mark{color:#fff;background:var(--primary);border-radius:10px;grid-row:span 2;justify-content:center;width:36px;height:36px;font-size:1.4rem;display:inline-flex}.brand-small{letter-spacing:.13em;color:var(--muted);margin-top:.3rem;font-size:.6rem;font-weight:500}.topbar nav{align-items:center;gap:2rem;font-size:.9375rem;display:flex}.topbar nav>a{color:var(--muted);padding:.3rem 0}.topbar nav>a.active{color:var(--primary);font-weight:700}.logout{color:var(--muted);background:0 0;border:0;min-height:44px;font-size:.875rem}.workspace{max-width:1248px;margin:auto;padding:3rem 2rem}.page-heading{justify-content:space-between;align-items:center;gap:2rem;margin-bottom:2rem;display:flex}.page-heading p{color:var(--muted)}.stats{background:#eaf0ff;border:1px solid #dbe4fc;border-radius:10px;grid-template-columns:repeat(3,1fr);margin-bottom:2rem;padding:1.6rem 0;display:grid}.stats>div{border-right:1px solid #d0dcf6;padding:0 2rem}.stats>div:last-child{border:0}.stats span{color:#435675;font-size:.875rem;display:block}.stats strong{letter-spacing:-.05em;font-size:2.25rem;line-height:1.4;display:block}.card{border:1px solid var(--border);background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 3px #16253d03}.padded{padding:1.6rem}.section-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:1.4rem 1.6rem;display:flex}.section-heading .eyebrow{margin-bottom:.25rem}.section-heading>.muted{font-size:.875rem}.table-scroll{overflow-x:auto}table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%}th{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:#fafbfe;padding:.9rem 1.5rem;font-size:.75rem;font-weight:600}td{border-top:1px solid var(--border);padding:1.25rem 1.5rem;font-size:.9375rem}td small{color:var(--muted);margin-top:.2rem}tr:hover td{background:#fbfcff}.project-name{font-weight:700}.project-name:hover{color:var(--primary)}.tabular{font-variant-numeric:tabular-nums}.badge{white-space:nowrap;text-transform:capitalize;color:#59657a;background:#f0f2f6;border-radius:5px;padding:.25rem .6rem;font-size:.75rem;font-weight:700;line-height:1.5;display:inline-flex}.badge-pending,.badge-pending_approval{color:#83570a;background:#fff4d9}.badge-approved,.badge-completed{color:#146746;background:#e7f5ed}.badge-in_progress,.badge-quoted{color:#204fc0;background:#eaf0ff}.badge-cancelled,.badge-rejected{color:#a4423d;background:#ffedeb}.empty{text-align:center;padding:4rem 1.5rem}.empty p{color:var(--muted);max-width:420px;margin:.5rem auto 1.5rem}.empty-icon{background:var(--bluewash);color:var(--primary);border-radius:12px;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:1rem;font-size:2rem;display:inline-flex}.compact{padding:2rem 1.5rem}.compact p{margin-bottom:0}.footer{text-align:center;color:var(--muted);padding:0 1rem 2rem;font-size:.75rem}.field{flex-direction:column;gap:.4rem;font-size:.875rem;font-weight:600;display:flex}.field input,.field select,.field textarea{font-size:1rem;font-weight:400}.stack{gap:1.2rem}.stack,.stack-large{flex-direction:column;display:flex}.stack-large{gap:1.5rem;min-width:0}.form-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:.5rem;padding-top:1.5rem;display:flex}.editor-layout{grid-template-columns:minmax(0,2fr) minmax(230px,1fr);gap:3rem;display:grid}.guidance{color:var(--muted);padding:1.5rem 0;font-size:.9375rem}.guidance ol{margin:1rem 0 2rem;padding-left:1.3rem}.guidance li{margin:1rem 0}.narrow{max-width:650px}.notice{border-radius:6px;margin-top:.6rem;padding:.7rem .9rem;font-size:.875rem}.error{color:#9d2c25;background:#fff0ee;border:1px solid #f5c6bf}.success{color:#1a6747;background:#eaf7ef;border:1px solid #c4e9d3}.copy-box{flex-direction:column;gap:.7rem;display:flex}.copy-box,.copy-box input{font-size:.875rem}.title-row{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.divider{color:#c5cfde;margin:0 .65rem}.project-metrics{border:1px solid var(--border);background:#fff;border-radius:10px;grid-template-columns:1fr 1fr 1.2fr;margin-bottom:1.6rem;padding:1.4rem 0;display:grid}.project-metrics>div{border-right:1px solid var(--border);padding:0 1.6rem}.project-metrics>div:last-child{border:0}.client-totals span,.project-metrics span,.quote-summary span{color:var(--muted);margin-bottom:.3rem;font-size:.875rem;display:block}.project-metrics strong{font-size:1.35rem}.project-metrics strong small{color:var(--muted);margin-left:.6rem;font-weight:400;display:inline-block}.project-description{max-width:800px;color:var(--muted);margin-bottom:2rem}.project-layout{grid-template-columns:minmax(0,1fr) 340px;gap:1.6rem;display:grid}.scope-list{margin:0;padding:0;list-style:none}.scope-list>li{border-bottom:1px solid var(--border);gap:1rem;padding:1.4rem 1.6rem;display:flex}.scope-list>li:last-child{border-bottom:0}.scope-number{color:var(--primary);background:var(--bluewash);text-align:center;border-radius:6px;flex-shrink:0;width:30px;height:30px;font-size:.875rem;font-weight:700;line-height:1.8rem}.scope-content{flex:1;min-width:0}.scope-content p{color:var(--muted);margin-top:.3rem;font-size:.9375rem}.preserve{white-space:pre-wrap;overflow-wrap:anywhere}.edit-details{margin-top:.8rem}summary{cursor:pointer;color:var(--primary);font-size:.875rem;font-weight:600}details[open]>summary{margin-bottom:1rem}.item-actions{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.item-actions .button{font-size:.875rem}.add-scope{border-top:1px solid var(--border);background:#fcfdff;padding:1.6rem}.add-scope h3,.add-scope p{margin-bottom:1rem}.lock-note{color:#405980;background:#f2f6ff;padding:1rem 1.6rem;font-size:.875rem}.compact-action{margin-top:.8rem}.padded>h2{margin-bottom:.7rem}.padded>p{margin-bottom:1.2rem}.timeline{margin:1.5rem 0 0;padding:0;list-style:none}.timeline li{gap:.8rem;padding-bottom:1.3rem;font-size:.875rem;display:flex;position:relative}.timeline li:before{content:"";background:var(--border);width:1px;height:calc(100% - 15px);position:absolute;top:15px;left:4px}.timeline li:last-child:before{display:none}.timeline-dot{border:2px solid #a9bce8;border-radius:50%;flex-shrink:0;width:9px;height:9px;margin-top:6px}.timeline small{color:var(--muted);margin-top:.2rem;font-size:.75rem}.capitalize{text-transform:capitalize}.change-card{border-bottom:1px solid var(--border);padding:1.6rem}.change-card:last-child{border-bottom:0}.change-card>p{color:var(--muted);font-size:.9375rem}.split{justify-content:space-between;align-items:center;gap:1rem;display:flex}.quote-summary{background:#f6f8fc;border-radius:7px;gap:3rem;margin-top:1rem;padding:1rem 1.2rem;display:flex}.quote-summary strong{font-size:1.2rem}.quote-form{margin-top:1.2rem}.quote-form .button{margin-top:.8rem}.decision-actions{flex-wrap:wrap;gap:.7rem;margin-top:1rem;display:flex}.decision-record{color:var(--green)!important}.auth-layout{background:#fff;grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.auth-story{color:#fff;background:#102957;flex-direction:column;justify-content:space-between;gap:4rem;padding:3rem clamp(2rem,5vw,5rem);display:flex}.auth-story .brand-small,.auth-story small{color:#b5c5e2}.auth-story .eyebrow{color:#8badf6}.auth-story h1{margin:1rem 0 1.5rem;font-size:clamp(2rem,4vw,3.5rem);line-height:1.1}.auth-story p{color:#c4d1e8;max-width:440px}.flow{margin:2.5rem 0 0;padding:0;list-style:none}.flow li{margin-top:1rem;font-size:.9375rem}.flow span{color:#94b4f9;margin-right:1rem;font-size:.8rem;display:inline-flex}.auth-panel{justify-content:center;align-items:center;padding:3rem 2rem;display:flex}.auth-form{width:100%;max-width:390px}.auth-form h2{font-size:2rem}.auth-form .stack{margin-top:2rem}.auth-switch{text-align:center;color:var(--muted);margin-top:1.5rem;font-size:.875rem}.auth-switch a{color:var(--primary);font-weight:700}.auth-wrap{max-width:700px;margin:5rem auto;padding:0 1.5rem}.auth-card{margin-top:2rem;padding:2rem}.setup-steps{padding-left:1.2rem}.setup-steps li{margin:1rem 0}code{overflow-wrap:anywhere;font-size:.8rem}.client-top{border-bottom:1px solid var(--border);background:#fff;justify-content:space-between;gap:1rem;padding:1.2rem max(1.5rem,50vw - 440px)}.client-brand,.client-top{align-items:center;display:flex}.client-brand{gap:.7rem;font-weight:700}.private-label{color:var(--muted);font-size:.75rem}.client-wrap{max-width:880px;margin:auto;padding:3rem 1.5rem}.client-wrap>.card{margin-bottom:1.5rem}.client-heading h1{margin-bottom:1rem}.client-heading p{color:var(--muted);margin-top:1.2rem}.client-steps{border-top:1px solid var(--border);border-bottom:1px solid var(--border);color:var(--muted);justify-content:space-between;gap:1.5rem;margin:2rem 0;padding:1rem 0;font-size:.875rem;display:flex}.client-steps .done{color:var(--primary);font-weight:700}.client-totals{border-top:1px solid var(--border);background:#fafbfe;grid-template-columns:1fr 1fr;gap:1rem;padding:1.6rem;display:grid}.client-totals strong{font-size:1.5rem}.approval-box{border-top:1px solid var(--border);padding:1.6rem}.approval-box>p{color:var(--muted);margin-bottom:1rem}.checkbox-field{align-items:flex-start;gap:.7rem;margin-bottom:1.3rem;font-size:.875rem;display:flex}.checkbox-field input{margin-top:4px}.approval-record{color:var(--green);background:#edf8f1;gap:1rem;padding:1.6rem;display:flex}.approval-record p{margin-top:.2rem;font-size:.875rem}.approval-record small{margin-top:.4rem}.check-circle{border:1px solid #b0d6c0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.history-details{padding:1.4rem 1.6rem}.client-footnote{text-align:center;color:var(--muted);margin:2rem 0;font-size:.75rem}.skeleton{background:#e5eaf2;border-radius:10px;height:130px;margin-top:2rem}.skip-link{z-index:20;background:#fff;padding:1rem;position:absolute;top:-100px;left:1rem}.skip-link:focus{top:1rem}@media (max-width:900px){.project-layout{grid-template-columns:1fr}.project-layout>aside{grid-template-columns:1fr 1fr;align-items:start;display:grid}.project-layout>aside>section:last-child{grid-column:1/-1}.editor-layout{grid-template-columns:1fr;gap:1rem}.guidance{max-width:600px}.auth-story{padding:2rem}.topbar nav{gap:1rem}}@media (max-width:600px){.workspace{padding:1.8rem 1rem}.top-inner{align-items:flex-start;gap:1rem;padding:1rem}.brand{grid-template-columns:30px auto;gap:.4rem;font-size:.9375rem}.brand-mark{border-radius:7px;width:30px;height:30px;font-size:1.1rem}.brand-small{font-size:.5rem}.topbar nav{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;font-size:.875rem}.logout{min-height:30px;font-size:.75rem}.page-heading{flex-direction:column;align-items:flex-start;gap:1.3rem}.stats{padding:1rem 0}.stats>div{padding:0 .8rem}.stats span{font-size:.75rem}.stats strong{font-size:1.8rem}.project-metrics{grid-template-columns:1fr;padding:0}.project-metrics>div{border-right:0;border-bottom:1px solid var(--border);padding:1rem 1.3rem}.project-layout>aside{display:flex}.form-grid{grid-template-columns:1fr}.add-scope,.change-card,.padded,.scope-list>li,.section-heading{padding:1.25rem}.section-heading .eyebrow{font-size:.65rem}.quote-summary{gap:1.5rem}.split{align-items:flex-start}.title-row{gap:.6rem}.auth-layout{grid-template-columns:1fr}.auth-story{gap:2rem;min-height:auto;padding:1.5rem}.auth-story>div:not(.brand),.auth-story>small{display:none}.auth-panel{padding:2.5rem 1.5rem}.auth-story>a{width:max-content}.client-wrap{padding:2rem 1rem}.client-steps{gap:.8rem;font-size:.75rem}.client-top{padding:1rem}.client-totals strong{font-size:1.2rem}.private-label{text-align:right;max-width:80px}.client-brand{font-size:.875rem}.approval-box,.approval-record,.client-totals{padding:1.3rem}.auth-wrap{margin-top:2rem}.auth-card{padding:1.5rem}}