:root{--green:#153a2d;--green2:#214f3e;--gold:#c4a84e;--ice:#f3f4f1;--ink:#1d2622;--line:#dfe3df;--muted:#6e756f}*{box-sizing:border-box}body{margin:0;background:var(--ice);color:var(--ink);font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}.top{background:var(--green);color:#fff;padding:13px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:3px solid var(--gold)}.brand{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:800;letter-spacing:3px}.brand img{width:46px;height:46px;object-fit:contain}.top a{color:#e5eee8;text-decoration:none;margin-left:16px;font-size:13px;font-weight:650}.top a:hover{color:var(--gold)}.shell{max-width:1160px;margin:30px auto;padding:0 20px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid.two{grid-template-columns:1.4fr .8fr}.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:0 8px 28px #16382b0a}.metric{font-size:28px;font-weight:800;margin:8px 0}.label,.small{font-size:13px;color:var(--muted)}h1,h2,h3{margin:0 0 7px}h1{font:500 34px/1.08 Georgia,serif;color:var(--green)}h2{font-size:19px;color:var(--green)}table{width:100%;border-collapse:collapse;margin-top:14px}th,td{text-align:left;padding:13px 8px;border-bottom:1px solid var(--line);font-size:14px}th{font-size:12px;text-transform:uppercase;color:var(--muted)}.badge{display:inline-block;border-radius:99px;padding:5px 9px;font-size:12px;font-weight:800;background:#f4efe0;color:#715d1d}.badge.signed{background:#e5f2ea;color:#17612f}.badge.pending{background:#f8ece9;color:#9b3c2e}.button,button{display:inline-block;border:0;border-radius:10px;background:var(--green);color:#fff;padding:11px 14px;font-weight:700;text-decoration:none;cursor:pointer;font-size:14px}.button.gold{background:var(--gold);color:var(--green)}.button.line{background:#fff;border:1px solid var(--green);color:var(--green)}input,select,textarea{width:100%;margin-top:5px;border:1px solid #d6dbd7;border-radius:9px;padding:11px;font:inherit}textarea{min-height:88px;resize:vertical}label{display:block;font-size:14px;font-weight:700;margin-top:14px}.notice{background:#e5f2ea;border:1px solid #b5d9c0;color:#17612f;padding:12px 14px;border-radius:9px;margin:0 0 18px}.danger{background:#fff0f0;border-color:#ffcaca;color:#9b1c1c}.actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}.bar{height:9px;border-radius:99px;background:#e8ece9;overflow:hidden}.bar span{display:block;height:100%;background:var(--gold)}.timeline{padding-left:6px}.event{position:relative;padding:0 0 20px 28px;border-left:2px solid var(--line)}.event:before{content:"";position:absolute;left:-7px;top:3px;width:12px;height:12px;border-radius:50%;background:var(--gold)}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:20px 0}.step{border:1px solid var(--line);border-radius:10px;padding:12px;background:#fff}.step b{display:block;font-size:12px;color:var(--green)}.step small{color:var(--muted)}.step.done{background:#e5f2ea;border-color:#b5d9c0}.step.current{background:#f8f3e3;border-color:#e0cb88}.login{max-width:480px;margin:70px auto}.print{max-width:800px;margin:30px auto;background:#fff;padding:50px}.print:before{content:"Evolution Systems LLC\A Urb Las Palmas, Hatillo, PR\A Tel. 787-925-3420  |  info@evomodulars.com";white-space:pre-line;display:block;min-height:72px;padding:8px 0 14px 104px;border-bottom:3px solid var(--gold);margin-bottom:30px;background:url('evo-logo.png') left top/82px auto no-repeat;color:var(--green);font-size:12px;font-weight:750;letter-spacing:.3px}.print:after{content:"Evolution Systems LLC  |  Documento del expediente EVO  |  Conserve este récord";display:block;margin-top:38px;padding-top:12px;border-top:1px solid var(--line);font-size:10px;color:var(--muted);letter-spacing:.4px}.print .notice{position:relative;padding:18px 18px 18px 84px;border:2px solid #17612f;background:#f0f8f2}.print .notice:before{content:"FIRMA\A ELECTRÓNICA\A VERIFICADA";white-space:pre-line;position:absolute;left:12px;top:12px;width:57px;height:57px;border:2px solid #17612f;border-radius:50%;display:grid;place-items:center;text-align:center;font-size:8px;line-height:1.05;font-weight:900;color:#17612f;transform:rotate(-10deg)}@media print{body{background:#fff}.top,.shell>a,.actions,.print button{display:none!important}.shell{max-width:none;margin:0;padding:0}.print{box-shadow:none;border:0;margin:0;max-width:none;padding:0}.print:before{print-color-adjust:exact;-webkit-print-color-adjust:exact}.print .notice{print-color-adjust:exact;-webkit-print-color-adjust:exact}}@media(max-width:760px){.grid,.grid.two,.steps{grid-template-columns:1fr}.top{padding:12px 20px}.top nav{display:none}.shell{margin:20px auto}table{display:block;overflow:auto}.print{padding:24px}.print:before{padding-left:75px;background-size:58px auto;font-size:10px}}
/* Membrete institucional de alto contraste para vista e impresión. */
.print:before{background-color:#0b0d0e!important;background-image:url('evo-logo.png')!important;background-position:22px center!important;background-size:76px auto!important;background-repeat:no-repeat!important;color:#fff!important;min-height:104px!important;padding:25px 28px 22px 124px!important;margin:-50px -50px 32px!important;border-bottom:4px solid #c4a84e!important;font-size:12px!important;line-height:1.65!important}
.print:after{margin:38px -50px -50px!important;padding:14px 50px!important;background:#0b0d0e!important;color:#fff!important;border-top:3px solid #c4a84e!important}
@media print{.print:before{margin:0 0 30px!important;padding:22px 28px 20px 118px!important;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}.print:after{margin:36px 0 0!important;padding:12px 20px!important;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}}
/* Plantilla documental EVO Habitat: no es una página web impresa. */
.print{max-width:760px!important;margin:34px auto 60px!important;padding:58px 62px 66px!important;border:0!important;border-radius:0!important;box-shadow:0 18px 55px #10271c16!important;font-family:Arial,Helvetica,sans-serif!important;line-height:1.62!important}.print:before{content:"EVOLUTION SYSTEMS LLC\A URB LAS PALMAS · HATILLO, PUERTO RICO\A 787-925-3420 · INFO@EVOMODULARS.COM"!important;white-space:pre-line!important;display:block!important;min-height:116px!important;margin:-58px -62px 42px!important;padding:29px 38px 23px 150px!important;background-color:#0b0d0e!important;background-image:url('evo-logo.png')!important;background-position:40px center!important;background-size:88px auto!important;background-repeat:no-repeat!important;border-bottom:5px solid #c4a84e!important;color:#fff!important;font-size:11px!important;font-weight:800!important;letter-spacing:1.05px!important;line-height:1.8!important}.print:after{content:"EVOLUTION SYSTEMS LLC  ·  EXPEDIENTE EVO  ·  RÉCORD CONFIDENCIAL DE TRANSACCIÓN"!important;display:block!important;margin:46px -62px -66px!important;padding:15px 62px!important;background:#0b0d0e!important;border-top:3px solid #c4a84e!important;color:#fff!important;font-size:9px!important;font-weight:700!important;letter-spacing:1px!important}.print h1{font:500 34px/1.12 Georgia,serif!important;color:#123d31!important;letter-spacing:-.5px!important;margin:0 0 12px!important;padding-bottom:16px!important;border-bottom:1px solid #dfe3df!important}.print .meta{font-size:10px!important;font-weight:800!important;letter-spacing:.55px!important;text-transform:uppercase!important;color:#6e756f!important;margin:0 0 30px!important}.print h2{font:800 14px/1.25 Arial,Helvetica,sans-serif!important;letter-spacing:.3px!important;text-transform:uppercase!important;color:#153a2d!important;margin:28px 0 10px!important;padding-left:13px!important;border-left:4px solid #c4a84e!important}.print p{font-size:13.3px!important;margin:0 0 14px!important}.print strong{color:#153a2d!important}.print .notice{margin:32px 0 0!important;border:1.5px solid #17612f!important;border-radius:4px!important;box-shadow:none!important}.print .notice:before{border-width:2px!important}.print .notice strong{font-size:14px!important}@media print{@page{size:letter;margin:1.33in .58in .72in .58in}.top,.shell>a,.actions,.print button{display:none!important}.shell{max-width:none!important;margin:0!important;padding:0!important}.print{max-width:none!important;margin:0!important;padding:0!important;box-shadow:none!important;background:#fff!important}.print:before{position:fixed!important;z-index:10!important;top:-1.12in!important;left:0!important;width:100%!important;height:1.02in!important;min-height:1.02in!important;margin:0!important;padding:22px 38px 18px 138px!important;background-position:34px center!important;background-size:80px auto!important;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}.print:after{position:fixed!important;z-index:10!important;bottom:-.59in!important;left:0!important;width:100%!important;height:.43in!important;margin:0!important;padding:11px .58in!important;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}.print h1{font-size:29px!important;break-after:avoid!important}.print h2{break-after:avoid!important}.print p{orphans:3!important;widows:3!important}.print .notice{break-inside:avoid!important;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}}
.print .notice.in-person{border-color:#8a681a!important;background:#fbf7e9!important;color:#5b4610!important}.print .notice.in-person:before{content:"FIRMA\A PRESENCIAL\A DIGITALIZADA"!important;border-color:#8a681a!important;color:#8a681a!important}.print .notice.in-person strong{color:#5b4610!important}@media print{.print form{display:none!important}}
.project-hero{background:#082f49!important;color:#fff!important;border:0!important;padding:28px!important}.project-hero h1{color:#fff!important}.project-hero .label{color:#f4b41a!important;font-weight:800;letter-spacing:.7px}.project-hero .small{color:#c9d8d4!important}.project-hero .bar{background:#e8eee9!important}.project-hero .bar span{background:#d4af37!important}.button.light{background:transparent;border:1px solid #dceae4;color:#fff}.quick-actions{margin-top:20px}.quick-actions .button{padding:10px 13px}
.audit-row{display:flex;gap:16px;justify-content:space-between;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.audit-remove{display:flex;gap:8px;align-items:center}.audit-remove input{margin:0;min-width:210px;padding:8px}.danger-button{background:#8d2922!important}@media(max-width:760px){.audit-row,.audit-remove{display:block}.audit-remove input{margin:10px 0}.audit-remove button{width:100%}}

/* EVO Roadtrip: control panel first, with direct visual routes to the work. */
.roadtrip-hero{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:34px 38px;border-radius:20px;background:linear-gradient(115deg,#092c43 0%,#124e48 100%);color:#fff;box-shadow:0 18px 44px #082f491f}
.roadtrip-hero .label{color:#e0bd58;font-weight:800;letter-spacing:1.5px}
.roadtrip-hero h1{color:#fff;font-size:42px;margin:5px 0 9px}
.roadtrip-hero p:not(.label){color:#d3e2dd;margin:0}
.roadtrip-metrics{margin-top:18px}
.roadtrip-metrics .card{position:relative;min-height:132px;padding:22px 25px}
.roadtrip-metrics .metric{font-size:26px;margin:0}
.metric-icon{position:absolute;right:22px;top:19px;color:#c4a84e;font-size:26px;font-weight:800}
.roadtrip-launchpad{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0}
.roadtrip-tile{display:flex;min-height:182px;flex-direction:column;align-items:flex-start;padding:22px;border:1px solid #dfe3df;border-radius:16px;background:#fff;color:var(--ink);text-decoration:none;box-shadow:0 8px 28px #16382b0a;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.roadtrip-tile:hover{transform:translateY(-3px);border-color:#c4a84e;box-shadow:0 14px 30px #16382b16}
.tile-icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:17px;border-radius:13px;background:#f6f0dd;color:#725e20;font-size:22px;font-weight:800}
.roadtrip-tile strong{font-size:16px;color:var(--green)}
.roadtrip-tile small{margin-top:6px;color:var(--muted);font-size:12px}
.tile-arrow{margin-top:auto;padding-top:14px;color:#80691e;font-size:13px;font-weight:800}
.roadtrip-sales .section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}
.brand-home{margin:0!important;color:inherit!important;text-decoration:none!important}
.brand-home .brand{margin:0}
.client-nav .home-link{color:#fff}
.client-welcome{padding:30px 34px;border-radius:18px;background:linear-gradient(115deg,#092c43 0%,#124e48 100%);color:#fff}
.client-welcome .label{color:#e0bd58;font-weight:800;letter-spacing:1.4px}
.client-welcome h1{color:#fff;font-size:38px;margin:5px 0 9px}
.client-welcome p:last-child{margin-bottom:0;color:#d3e2dd}
.client-project .metric{color:var(--green)}
@media(max-width:900px){.roadtrip-launchpad{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
  .top nav.staff-nav{display:none}
  .top nav.client-nav{position:fixed;z-index:100;left:0;right:0;bottom:0;display:flex;justify-content:space-around;align-items:center;gap:2px;margin:0;padding:9px 4px calc(9px + env(safe-area-inset-bottom));background:#153a2d;border-top:2px solid #c4a84e;box-shadow:0 -6px 22px #10271c20}
  .top nav.client-nav a{margin:0;padding:5px 8px;font-size:11px;white-space:nowrap}
  .roadtrip-hero{align-items:flex-start;flex-direction:column;padding:26px}
  .roadtrip-hero h1{font-size:34px}
  .client-welcome{padding:24px}
  .client-welcome h1{font-size:32px}
  .roadtrip-launchpad{grid-template-columns:1fr 1fr}
  .roadtrip-tile{min-height:166px;padding:16px}
  .roadtrip-sales .section-heading{align-items:flex-start;flex-direction:column}
}

/* Hoja Letter EVO: retícula de documento, no impresión de la interfaz web. */
@media print{
  @page{size:Letter;margin:0}
  html,body{width:8.5in!important;min-height:11in!important;background:#fff!important}
  body{font:10.4pt/1.56 Arial,Helvetica,sans-serif!important}
  .top,.shell>a,.shell>h1,.shell>p,.actions,.print form,.print .language-toggle{display:none!important}
  .shell{width:auto!important;max-width:none!important;margin:0!important;padding:0!important}
  .print{position:relative!important;width:auto!important;max-width:none!important;min-height:11in!important;margin:0!important;padding:1.34in .66in .72in!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;color:#152019!important}
  .print:before{position:fixed!important;display:block!important;box-sizing:border-box!important;z-index:20!important;top:0!important;left:0!important;width:100%!important;height:1.04in!important;min-height:1.04in!important;margin:0!important;padding:.19in .56in .12in 1.62in!important;background-color:#0b0d0e!important;background-image:url('evo-logo.png')!important;background-position:.55in center!important;background-size:.78in auto!important;background-repeat:no-repeat!important;border-bottom:4px solid #c4a84e!important;color:#fff!important;font:800 8.1pt/1.72 Arial,Helvetica,sans-serif!important;letter-spacing:.8pt!important;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}
  .print:after{position:fixed!important;display:block!important;box-sizing:border-box!important;z-index:20!important;bottom:0!important;left:0!important;width:100%!important;height:.38in!important;margin:0!important;padding:.11in .66in!important;background:#0b0d0e!important;border-top:2px solid #c4a84e!important;color:#fff!important;font:700 6.8pt/1 Arial,Helvetica,sans-serif!important;letter-spacing:.72pt!important;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}
  .print h1{margin:0 0 13pt!important;padding:0 0 14pt!important;border-bottom:1px solid #cdd6d1!important;font:500 25pt/1.08 Georgia,serif!important;color:#123d31!important;letter-spacing:-.35pt!important;break-after:avoid!important}
  .print .meta{margin:0 0 24pt!important;font:800 7.3pt/1.4 Arial,Helvetica,sans-serif!important;letter-spacing:.65pt!important;text-transform:uppercase!important;color:#667069!important}
  .print h2{margin:21pt 0 8pt!important;padding:0 0 0 10pt!important;border:0!important;border-left:3px solid #c4a84e!important;font:800 10.2pt/1.2 Arial,Helvetica,sans-serif!important;letter-spacing:.25pt!important;text-transform:uppercase!important;color:#153a2d!important;break-after:avoid!important}
  .print p{margin:0 0 11pt!important;font-size:10.4pt!important;orphans:3!important;widows:3!important}
  .print .notice{margin:26pt 0 0!important;padding:14pt 16pt 14pt 72pt!important;border:1.25pt solid #17612f!important;border-radius:3pt!important;background:#f0f8f2!important;break-inside:avoid!important;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}
  .print .notice:before{left:11pt!important;top:11pt!important;width:50pt!important;height:50pt!important;font-size:7pt!important;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}
}
.client-production-notice{margin:0 0 18px;padding:16px 18px;border:1px solid #d8bb57;background:#fff9e7;color:#3f3721;border-radius:12px;line-height:1.55}.client-production-notice strong{color:#153a2d}
.quote-preview-actions{margin:18px 0}.quote-screen{max-width:960px;margin:0 auto 24px;padding:clamp(24px,5vw,58px);background:#fff;border:1px solid #dce2dd;border-radius:16px;box-shadow:0 18px 50px rgba(15,41,31,.09);color:#18221e}.quote-screen h1{font:700 clamp(28px,4vw,42px)/1.08 Georgia,serif;color:#153a2d;margin:0 0 10px}.quote-screen h2{margin:30px 0 12px;padding:0 0 9px;border-bottom:1px solid #dce2dd;color:#153a2d;font-size:16px;letter-spacing:.04em;text-transform:uppercase}.quote-screen p{line-height:1.6}.quote-screen .meta{color:#6d7771;font-size:12px;font-weight:700;letter-spacing:.08em}.quote-screen table{width:100%;border-collapse:collapse;margin:10px 0 18px;font-size:14px}.quote-screen th{padding:12px 14px;background:#153a2d;color:#fff;text-align:left;font-size:11px;letter-spacing:.07em;text-transform:uppercase}.quote-screen td{padding:12px 14px;border-bottom:1px solid #e3e7e4}.quote-screen td:last-child,.quote-screen th:last-child{text-align:right;white-space:nowrap}.quote-screen tr:last-child td{font-weight:700;color:#153a2d}.quote-screen .pdf-grand-total{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:16px 0;padding:20px 22px;background:#0b1110;border-left:5px solid #c4a84e;border-radius:8px;color:#fff;font-weight:700}.quote-screen .pdf-grand-total strong{font-size:26px;white-space:nowrap;color:#e6c96e}.quote-screen h2~p{max-width:850px}.quote-accept-panel{max-width:960px;margin:0 auto 30px;border-top:4px solid #c4a84e}.quote-pdf-toolbar{display:flex;align-items:center;justify-content:space-between;gap:22px}.quote-accepted-banner{max-width:960px;margin:0 auto 30px;padding:18px}.quote-builder-card>h2{margin-top:30px}.quote-item-row{padding:15px;margin:12px 0;border:1px solid #dce2dd;border-radius:12px;background:#fff}.quote-builder-card label small{display:block;margin-top:6px;color:#68736c;font-weight:400;line-height:1.45}.quote-pdf-toolbar .actions{flex-wrap:wrap}.quote-version-card{padding:16px 0;border-bottom:1px solid #e2e7e3}.quote-version-card h3{margin:5px 0 12px;color:#153a2d}.quote-version-card .actions{flex-wrap:wrap}@media(max-width:720px){.quote-screen{padding:22px 16px}.quote-screen table{font-size:12px}.quote-screen td,.quote-screen th{padding:9px 7px}.quote-pdf-toolbar{align-items:flex-start;flex-direction:column}.quote-screen .pdf-grand-total{align-items:flex-start;flex-direction:column}}

/* Navegación EVO Control: panel lateral en escritorio, menú táctil en móvil. */
.top{position:relative;z-index:120;min-height:76px;padding:10px clamp(18px,3vw,42px)}
.top .brand{margin:0}.top .brand img{width:48px;height:48px}
.nav-toggle{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:9px 15px;border:1px solid #ffffff40;border-radius:12px;background:#ffffff12;color:#fff;font-size:13px;font-weight:800;letter-spacing:.02em;transition:background .18s,border-color .18s,transform .18s}
.nav-toggle:hover{background:#ffffff22;border-color:#d8bd62;transform:translateY(-1px)}.toggle-glyph{font-size:18px;line-height:1}.toggle-label{display:inline}
.app-layout{display:flex;align-items:stretch;min-height:calc(100vh - 76px)}
.app-sidebar{position:sticky;top:0;display:flex;flex:0 0 256px;flex-direction:column;width:256px;height:calc(100vh - 0px);min-height:500px;padding:20px 13px 14px;background:#fff;border-right:1px solid #dfe3df;transition:flex-basis .22s,width .22s,transform .22s;overflow-x:hidden;overflow-y:auto;z-index:105}
.sidebar-kicker{margin:4px 12px 13px;color:#8a928d;font-size:10px;font-weight:850;letter-spacing:1.5px}
.app-sidebar nav{display:grid;gap:5px;margin:0}.app-sidebar nav a{display:flex;align-items:center;gap:12px;min-height:46px;margin:0;padding:8px 11px;border:1px solid transparent;border-radius:12px;color:#405049;text-decoration:none;font-size:13px;font-weight:700;line-height:1.25;transition:background .16s,color .16s,border-color .16s,transform .16s}
.app-sidebar nav a:hover,.app-sidebar nav a:focus-visible{border-color:#e5d8aa;background:#fbf8ed;color:#153a2d;transform:translateX(2px);outline:none}
.app-sidebar nav a.home-link{background:#153a2d;color:#fff}.app-sidebar nav a.home-link:hover{background:#214f3e;color:#fff}
.app-sidebar nav a[aria-current="page"]:not(.home-link){border-color:#e5d8aa;background:#fbf8ed;color:#153a2d}
.nav-icon{display:grid;flex:0 0 32px;place-items:center;width:32px;height:32px;border-radius:10px;background:#f2f4f1;color:#153a2d;font-size:18px;font-weight:750}
.home-link .nav-icon{background:#ffffff1a;color:#f0d779}.nav-exit{margin-top:12px!important;border-top:1px solid #e7ebe7!important;padding-top:12px!important}.sidebar-footer{margin-top:auto;padding:18px 12px 2px;color:#a3aaa5;font-size:9px;font-weight:800;letter-spacing:1.3px;white-space:nowrap}
.shell{flex:1;width:100%;max-width:1450px;min-width:0;margin:28px auto;padding:0 clamp(18px,2.4vw,36px)}.shell-no-nav{max-width:1160px}
.nav-scrim{display:none}
body.nav-collapsed .app-sidebar{flex-basis:78px;width:78px;padding-right:10px;padding-left:10px}
body.nav-collapsed .sidebar-kicker,body.nav-collapsed .sidebar-footer,body.nav-collapsed .nav-label{display:none}
body.nav-collapsed .app-sidebar nav a{justify-content:center;padding:7px 4px}
body.nav-collapsed .nav-icon{flex-basis:42px;width:42px;height:42px;border-radius:13px;font-size:20px}
@media(max-width:760px){
  .top{position:sticky;top:0;min-height:68px;padding:8px 16px;border-bottom-width:2px}
  .top .brand{gap:8px;font-size:11px;letter-spacing:2px}.top .brand img{width:42px;height:42px}
  .nav-toggle{min-height:42px;padding:8px 12px;border-radius:12px}
  .app-layout{display:block;min-height:calc(100dvh - 68px)}
  .shell{margin:20px auto 34px;padding:0 16px}
  .app-sidebar{position:fixed;top:calc(68px + env(safe-area-inset-top));bottom:0;left:0;width:min(88vw,360px);height:auto;min-height:0;padding:18px 15px calc(20px + env(safe-area-inset-bottom));border-right:1px solid #dfe3df;border-top:1px solid #dfe3df;border-radius:0 18px 0 0;box-shadow:18px 14px 44px #0b201733;transform:translateX(-110%);transition:transform .24s cubic-bezier(.2,.8,.2,1);overflow-y:auto}
  body.nav-open{overflow:hidden}body.nav-open .app-sidebar{transform:translateX(0)}
  .sidebar-kicker{margin:2px 3px 14px;padding:0 3px}
  .app-sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .app-sidebar nav a,.app-sidebar nav a.home-link{min-height:104px;align-items:flex-start;justify-content:space-between;flex-direction:column;gap:12px;padding:14px;border:1px solid #e1e6e2;border-radius:15px;background:#fff;color:#35473e;box-shadow:0 5px 15px #153a2d0c;font-size:12px}
  .app-sidebar nav a.home-link{border-color:#153a2d;background:linear-gradient(145deg,#153a2d,#214f3e);color:#fff}
  .app-sidebar nav a[aria-current="page"]:not(.home-link){border-color:#c4a84e;background:#fff9e7;color:#153a2d;box-shadow:0 7px 18px #c4a84e20}
  .app-sidebar nav a:hover,.app-sidebar nav a:focus-visible{transform:translateY(-2px);border-color:#c4a84e}
  .app-sidebar nav a.nav-exit{margin-top:0!important;border-top:1px solid #e1e6e2!important;padding-top:14px!important}
  .nav-icon,.home-link .nav-icon{flex-basis:38px;width:38px;height:38px;border-radius:12px;background:#f2f4f1;color:#153a2d;font-size:20px}
  .home-link .nav-icon{background:#ffffff20;color:#f0d779}
  .nav-label{display:block;max-width:100%;font-size:12px;line-height:1.25}
  .sidebar-footer{padding:19px 4px 2px}
  .nav-scrim{position:fixed;z-index:100;inset:68px 0 0;display:block;width:100%;height:calc(100dvh - 68px);padding:0;border:0;border-radius:0;background:#07140db0;opacity:0;pointer-events:none;transition:opacity .2s}
  body.nav-open .nav-scrim{opacity:1;pointer-events:auto}
  body.nav-collapsed .app-sidebar{flex-basis:auto;width:min(88vw,360px);padding:18px 15px calc(20px + env(safe-area-inset-bottom))}
  body.nav-collapsed .sidebar-kicker,body.nav-collapsed .sidebar-footer,body.nav-collapsed .nav-label{display:block}
  body.nav-collapsed .app-sidebar nav a{justify-content:space-between;padding:14px}
  body.nav-collapsed .nav-icon{flex-basis:38px;width:38px;height:38px}
}
@media print{.app-sidebar,.nav-toggle,.nav-scrim{display:none!important}.app-layout{display:block!important}.shell{margin:0!important;padding:0!important}}
.quote-edit-action{border-color:#c4a84e!important;color:#153a2d!important;font-weight:800!important}.quote-lock-note{margin:12px 0 0;padding:11px 13px;border-left:3px solid #c4a84e;border-radius:5px;background:#f7f6f0;color:#536057;font-size:13px}.quote-lock-note strong{color:#153a2d}.quote-office-actions{margin-top:15px;padding:13px;border:1px solid #efd3cf;border-radius:12px;background:#fffaf8}.quote-office-actions>.label{margin:0;color:#78504a;font-size:11px;font-weight:800;letter-spacing:.06em}
.quote-live-total{margin:22px 0;padding:20px 22px;border:1px solid #d9e2dc;border-top:4px solid #c4a84e;border-radius:14px;background:#f7f8f5}.quote-live-total>div{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid #e3e8e4}.quote-live-total>div strong{white-space:nowrap}.quote-live-total .grand{margin-top:8px;padding:14px 0 0;border:0;color:#153a2d;font-size:18px}.quote-live-total .grand strong{font-size:24px}.site-pricing-mode{display:grid;gap:8px;margin:18px 0;padding:16px;border:1px solid #d9e2dc;border-radius:12px}.site-pricing-mode legend{padding:0 6px;color:#153a2d;font-weight:800}.site-pricing-mode label{display:flex;align-items:center;gap:9px}.quote-retire-form{display:grid;grid-template-columns:minmax(240px,1fr) auto;align-items:end;gap:12px;margin-top:14px;padding:14px;border:1px solid #efd3cf;border-radius:12px;background:#fff8f7}.quote-retire-form label{margin:0}.quote-retire-form button{white-space:nowrap}@media(max-width:700px){.quote-live-total{padding:16px}.quote-live-total .grand{align-items:flex-start;flex-direction:column}.quote-retire-form{grid-template-columns:1fr}.quote-retire-form button{width:100%}}
.project-milestones .milestone-item{border-top:1px solid #dfe5e0;padding:18px 0}.milestone-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.milestone-heading h3{margin:0}.milestone-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;padding:14px;background:#f6f8f5;border-radius:12px}.milestone-form label{display:flex;flex-direction:column;gap:6px}.milestone-form textarea{min-height:70px}.milestone-form .milestone-publish{flex-direction:row;align-items:center;grid-column:1/-1}.milestone-form button{justify-self:start}.milestone-add{margin-top:18px;padding-top:16px;border-top:1px solid #dfe5e0}.milestone-add summary{cursor:pointer;font-weight:700;color:#153c30}.badge.success{background:#e4f2e8;color:#1b653b}@media(max-width:700px){.milestone-form{grid-template-columns:1fr}.milestone-form .milestone-publish{grid-column:auto}.milestone-heading{align-items:flex-start;flex-direction:column}}
