.cs-construction-menu{position:relative}.cs-construction-menu>.sub-menu{position:absolute;z-index:30;top:calc(100% - 2px);left:0;display:none;width:min(320px,90vw);margin:0;padding:8px;list-style:none;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:#071f2a;box-shadow:0 18px 36px rgba(0,0,0,.28)}.cs-construction-menu:hover>.sub-menu,.cs-construction-menu:focus-within>.sub-menu{display:grid}.cs-construction-menu>.sub-menu a{width:100%;min-height:40px;padding:7px 10px;border-radius:7px}.cs-construction-menu>.sub-menu a:hover,.cs-construction-menu>.sub-menu a:focus-visible{background:rgba(255,255,255,.08)}.cs-construction-page{--cs-construction-border:var(--cs-color-border,#dfe5ec);--cs-construction-surface:var(--cs-color-surface,#fff)}.cs-construction-intro{max-width:850px;margin-bottom:clamp(1.5rem,4vw,2.5rem)}.cs-construction-intro h1{margin:.25rem 0 .75rem}.cs-construction-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.cs-construction-tool-card,.cs-construction-placeholder{position:relative;border:1px solid var(--cs-construction-border);border-radius:var(--cs-cards-radius-global,18px);background:var(--cs-construction-surface);padding:clamp(1.25rem,3vw,2rem);box-shadow:0 14px 35px rgba(23,32,51,.08)}.cs-construction-tool-card{display:flex;align-items:flex-start;flex-direction:column}.cs-construction-tool-card h2{margin:.8rem 0 .5rem}.cs-construction-tool-card p{flex:1}.cs-construction-tool-card__icon{display:grid;place-items:center;width:54px;height:54px;border-radius:14px;background:color-mix(in srgb,var(--cs-color-primary,#0879b8) 12%,white);color:var(--cs-color-primary,#0879b8)}.cs-construction-status{display:inline-flex;margin-top:.75rem;padding:.3rem .65rem;border-radius:999px;background:var(--cs-color-background,#f5f7fa);color:var(--cs-color-muted,#5b6475);font-size:.78rem;font-weight:700}.cs-construction-placeholder{max-width:820px;margin-inline:auto;text-align:center}.cs-construction-placeholder .cs-construction-tool-card__icon{margin:0 auto}.cs-construction-mode,.cs-construction-modules{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.cs-construction-mode button,.cs-construction-modules button{min-height:42px;padding:.65rem 1rem;border:1px solid var(--cs-construction-border);border-radius:10px;background:#fff;color:var(--cs-color-text,#172033);font-weight:750;cursor:pointer}.cs-construction-mode button.is-active,.cs-construction-modules button.is-active{border-color:var(--cs-color-primary,#0879b8);background:var(--cs-color-primary,#0879b8);color:#fff}.cs-construction-workspace{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:1.5rem;align-items:start}.cs-construction-form,.cs-construction-results{border:1px solid var(--cs-construction-border);border-radius:var(--cs-cards-radius-global,18px);background:var(--cs-construction-surface);padding:clamp(1rem,3vw,1.75rem)}.cs-construction-form[hidden]{display:none}.cs-construction-quick-note{padding:.8rem 1rem;border-left:4px solid var(--cs-color-accent,#f4b400);background:var(--cs-color-background,#f5f7fa)}.cs-construction-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.cs-construction-fields>div>label,.cs-construction-fields>label{display:grid;gap:.4rem}.cs-construction-fields span{font-weight:700}.cs-construction-fields small{font-weight:500;color:var(--cs-color-muted,#5b6475)}.cs-construction-fields input,.cs-construction-fields select{width:100%;min-height:46px;border:1px solid var(--cs-form-field-border-color,#cbd5e1);border-radius:var(--cs-form-field-radius,10px);padding:.65rem .75rem;background:#fff}.cs-construction-form__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem}.cs-construction-results{position:sticky;top:1rem}.cs-construction-results dl{display:grid;gap:.25rem}.cs-construction-results dl>div{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--cs-construction-border)}.cs-construction-results dt{color:var(--cs-color-muted,#5b6475)}.cs-construction-results dd{margin:0;color:var(--cs-color-primary-dark,#075f90);font-size:1.2rem;font-weight:850;text-align:right}.cs-construction-results__note,.cs-construction-results__empty,.cs-construction-error{color:var(--cs-color-muted,#5b6475)}.cs-construction-error{color:#9f1d1d}.cs-construction-save-note,.cs-construction-disclaimer{margin-top:1.25rem;padding:1rem;border-radius:12px;background:var(--cs-color-background,#f5f7fa)}.cs-construction-disclaimer p{margin-bottom:0}@media(max-width:1080px){.cs-construction-menu>.sub-menu{position:static;display:grid;width:auto;margin:0 0 4px 14px;padding:0 0 0 10px;border:0;border-left:1px solid rgba(255,255,255,.2);border-radius:0;background:transparent;box-shadow:none}.cs-construction-menu>.sub-menu a{min-height:36px;font-size:.86rem}}@media(max-width:760px){.cs-construction-tool-grid,.cs-construction-workspace{grid-template-columns:1fr}.cs-construction-results{position:static}.cs-construction-fields{grid-template-columns:1fr}}@media(max-width:390px){.cs-construction-mode,.cs-construction-modules{display:grid;grid-template-columns:1fr 1fr}.cs-construction-modules button:last-child{grid-column:1/-1}.cs-construction-form__actions{display:grid}.cs-construction-form__actions .cs-button{width:100%}}

/* Fase 2: controles isolados da calculadora e collapses responsivos. */
.cs-construction-menu__top{display:flex;align-items:center}.cs-construction-menu-toggle{display:none;align-items:center;justify-content:center;width:42px;min-width:42px;height:42px;border:0;background:transparent;color:inherit;cursor:pointer}.cs-construction-menu-toggle span{transition:transform .2s ease}.cs-construction-menu.is-submenu-open .cs-construction-menu-toggle span{transform:rotate(180deg)}
.cs-material-calculator .cs-construction-modules{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.cs-material-calculator .cs-construction-modules button{padding:.55rem .65rem}.cs-construction-parameter-note{margin:.85rem 0 0;color:var(--cs-color-muted,#5b6475);font-size:.9rem}.cs-construction-check{display:flex!important;align-items:flex-start;gap:.65rem;padding:.7rem;border:1px solid var(--cs-construction-border);border-radius:10px}.cs-construction-check input{width:20px!important;min-height:20px!important;margin-top:.1rem}.cs-painting-stages{display:grid;gap:.8rem}.cs-painting-stage{margin:0;padding:1rem;border:1px solid var(--cs-construction-border);border-radius:12px}.cs-painting-stage legend{padding:0 .35rem}.cs-construction-result-group{margin-top:1rem}.cs-construction-result-group h3{margin:0;padding:.45rem .6rem;border-radius:7px;background:var(--cs-color-background,#f5f7fa);font-size:.82rem;letter-spacing:.04em;text-transform:uppercase}.cs-footer-collapse__heading{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.cs-footer-collapse__toggle{display:none;width:40px;height:40px;border:0;background:transparent;color:inherit;cursor:pointer}.cs-footer-collapse__toggle span[aria-hidden]{display:inline-block;transition:transform .2s ease}.cs-footer-collapse.is-open .cs-footer-collapse__toggle span[aria-hidden]{transform:rotate(180deg)}.construscript-footer__main{grid-template-columns:minmax(260px,1.25fr) repeat(3,minmax(150px,.62fr));gap:clamp(18px,2.8vw,38px)}
@media(max-width:1080px){.cs-construction-menu__top>a{flex:1}.cs-construction-menu-toggle{display:inline-flex}.cs-construction-menu>.sub-menu{display:none}.cs-construction-menu.is-submenu-open>.sub-menu{display:grid}.cs-material-calculator .cs-construction-modules{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.construscript-footer__main{grid-template-columns:minmax(240px,1.1fr) repeat(3,minmax(130px,1fr));gap:16px}}
@media(max-width:700px){.construscript-footer__main{grid-template-columns:1fr!important}.cs-footer-collapse{padding:0;border-bottom:1px solid rgba(32,56,76,.1)!important}.cs-footer-collapse__heading h2{margin:0!important}.cs-footer-collapse__toggle{display:inline-flex;align-items:center;justify-content:center}.cs-footer-collapse__panel{padding:0 0 .65rem}.cs-footer-collapse__panel[hidden]{display:none}.cs-material-calculator .cs-construction-modules{grid-template-columns:repeat(2,minmax(0,1fr))}.cs-construction-form,.cs-construction-results{padding:1rem}.cs-construction-results dl>div{padding:.55rem 0}.cs-construction-results dd{font-size:1.05rem}}
@media(max-width:430px){body.page-template-page-calculadora-de-materiais .construscript-page-hero{min-height:220px!important}.cs-material-calculator .cs-construction-intro{margin-bottom:1rem}.cs-material-calculator .cs-construction-intro h2{font-size:1.55rem}.cs-material-calculator .cs-construction-modules,.cs-construction-mode{gap:.4rem}.cs-material-calculator .cs-construction-modules button,.cs-construction-mode button{min-height:44px;padding:.5rem;font-size:.82rem}.cs-construction-form,.cs-construction-results{border-radius:13px;padding:.85rem}.cs-construction-quick-note,.cs-construction-disclaimer{padding:.75rem}.page-template-page-calculadora-de-materiais .construscript-back-to-top{right:10px;bottom:10px}}

/* Refinamento alpha.53: collapses sem View Transitions e sem promises de animacao. */
.cs-construction-transfer{width:100%;margin-top:1rem}.cs-construction-form,.cs-construction-results,.cs-construction-fields>*{min-width:0}.cs-construction-results dd{overflow-wrap:anywhere}
@media(max-width:1080px){.cs-construction-menu>.sub-menu,.cs-construction-menu:hover>.sub-menu,.cs-construction-menu:focus-within>.sub-menu{display:grid;max-height:0;overflow:hidden;opacity:0;visibility:hidden;transition:max-height .22s ease,opacity .18s ease,visibility 0s linear .22s}.cs-construction-menu.is-submenu-open>.sub-menu{max-height:420px;opacity:1;visibility:visible;transition:max-height .22s ease,opacity .18s ease}}
@media(max-width:700px){.cs-footer-collapse__panel{display:block!important;max-height:0;overflow:hidden;opacity:0;visibility:hidden;transition:max-height .22s ease,opacity .18s ease,visibility 0s linear .22s}.cs-footer-collapse.is-open .cs-footer-collapse__panel{opacity:1;visibility:visible;transition:max-height .22s ease,opacity .18s ease}.cs-construction-workspace,.cs-construction-forms,.cs-construction-form,.cs-construction-results{width:100%;max-width:100%}}
@media(prefers-reduced-motion:reduce){.cs-construction-menu>.sub-menu,.cs-footer-collapse__panel,.cs-construction-menu-toggle span,.cs-footer-collapse__toggle span[aria-hidden]{transition:none!important}}

/* Alpha.54: CRUD privado de Obras, isolado do motor da Calculadora. */
.cs-obras-intro,.cs-obra-overview__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1.25rem}.cs-obras-intro>div,.cs-obra-overview__header>div{min-width:0}.cs-obras-empty{padding:clamp(1.25rem,4vw,2.5rem);border:1px solid var(--cs-construction-border);border-radius:var(--cs-cards-radius-global,18px);background:var(--cs-construction-surface);text-align:center}.cs-obras-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.cs-obra-card,.cs-obra-form,.cs-obra-details,.cs-obra-context{min-width:0;border:1px solid var(--cs-construction-border);border-radius:var(--cs-cards-radius-global,18px);background:var(--cs-construction-surface);padding:clamp(1rem,3vw,1.6rem);box-shadow:0 12px 30px rgba(23,32,51,.06)}.cs-obra-card{display:flex;flex-direction:column}.cs-obra-card h2{overflow-wrap:anywhere;margin:.8rem 0}.cs-obra-card__top,.cs-obra-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem}.cs-obra-card__top{justify-content:space-between}.cs-obra-owner{color:var(--cs-color-muted,#5b6475);font-size:.8rem}.cs-obra-status{display:inline-flex;padding:.3rem .65rem;border-radius:999px;background:color-mix(in srgb,var(--cs-color-primary,#0879b8) 12%,white);color:var(--cs-color-primary-dark,#075f90);font-size:.8rem;font-weight:800}.cs-obra-status--concluida{background:#e4f6ea;color:#176b35}.cs-obra-status--cancelada{background:#fde9e7;color:#9f1d1d}.cs-obra-status--pausada{background:#fff2cf;color:#7a5200}.cs-obra-summary,.cs-obra-details dl{display:grid;gap:0;margin:0 0 1rem}.cs-obra-summary>div,.cs-obra-details dl>div{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(0,1.3fr);gap:.75rem;padding:.65rem 0;border-bottom:1px solid var(--cs-construction-border)}.cs-obra-summary dt,.cs-obra-details dt{color:var(--cs-color-muted,#5b6475)}.cs-obra-summary dd,.cs-obra-details dd{margin:0;font-weight:700;overflow-wrap:anywhere}.cs-obra-card .cs-obra-actions{margin-top:auto}.cs-obra-trash-form{margin:0}.cs-button--danger{border-color:#b42318!important;background:#b42318!important;color:#fff!important}.cs-obra-notice{margin-bottom:1rem;padding:.85rem 1rem;border-left:4px solid var(--cs-color-primary,#0879b8);border-radius:8px;background:var(--cs-color-background,#f5f7fa)}.cs-obra-notice p{margin:0}.cs-obra-notice--error{border-left-color:#b42318;background:#fff1f0;color:#842018}.cs-obra-notice--success{border-left-color:#238636;background:#edf8f0;color:#176b35}.cs-obra-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.cs-obra-field{display:grid;min-width:0;gap:.4rem}.cs-obra-field--wide{grid-column:1/-1}.cs-obra-field>span{font-weight:750}.cs-obra-field input,.cs-obra-field select,.cs-obra-field textarea{width:100%;max-width:100%;min-height:46px;border:1px solid var(--cs-form-field-border-color,#cbd5e1);border-radius:var(--cs-form-field-radius,10px);padding:.65rem .75rem;background:#fff;color:var(--cs-color-text,#172033)}.cs-obra-field textarea{min-height:130px;resize:vertical}.cs-obra-field input[readonly]{background:var(--cs-color-background,#f5f7fa);color:var(--cs-color-muted,#5b6475)}.cs-obra-form-note{margin-top:1rem;padding:.85rem;border-radius:10px;background:var(--cs-color-background,#f5f7fa)}.cs-obra-nav{display:flex;max-width:100%;gap:.35rem;margin:1rem 0 1.5rem;overflow-x:auto;padding-bottom:.3rem}.cs-obra-nav a{flex:0 0 auto;padding:.65rem .85rem;border:1px solid var(--cs-construction-border);border-radius:9px;background:#fff;color:var(--cs-color-text,#172033);font-weight:750;text-decoration:none}.cs-obra-nav a.is-active{border-color:var(--cs-color-primary,#0879b8);background:var(--cs-color-primary,#0879b8);color:#fff}.cs-obra-details{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);gap:1.25rem}.cs-obra-notes{min-width:0;padding:1rem;border-radius:12px;background:var(--cs-color-background,#f5f7fa)}.cs-obra-notes h2{margin-top:0}.cs-obra-notes p{overflow-wrap:anywhere}.cs-obra-future-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:1.25rem 0}.cs-obra-future-grid article{min-width:0;padding:1rem;border:1px solid var(--cs-construction-border);border-radius:12px;background:#fff}.cs-obra-future-grid h2{margin-top:0;font-size:1.05rem}.cs-obra-context{margin-bottom:1.25rem}.cs-obra-context h2{margin:.2rem 0}.cs-obra-overview__actions{justify-content:space-between}
.construscript-footer__main.cs-footer-no-construction{grid-template-columns:minmax(260px,1.25fr) repeat(2,minmax(150px,.8fr))}
@media(max-width:900px){.cs-obras-grid,.cs-obra-future-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cs-obra-details{grid-template-columns:1fr}}
@media(max-width:700px){.cs-obras-intro,.cs-obra-overview__header{display:grid}.cs-obra-form-grid,.cs-obras-grid,.cs-obra-future-grid{grid-template-columns:1fr}.cs-obra-summary>div,.cs-obra-details dl>div{grid-template-columns:1fr;gap:.2rem}.cs-obra-actions{display:grid;grid-template-columns:1fr}.cs-obra-actions .cs-button,.cs-obra-actions .cs-obra-trash-form,.cs-obra-actions .cs-obra-trash-form button{width:100%;text-align:center}.cs-obra-overview__actions{justify-content:stretch}}
@media(max-width:390px){.cs-obra-card,.cs-obra-form,.cs-obra-details,.cs-obra-context{padding:.85rem;border-radius:13px}.cs-obra-nav{flex-wrap:wrap;overflow-x:visible;margin-inline:0}.cs-obra-nav a{flex:1 1 calc(50% - .35rem);min-width:0;padding:.6rem .7rem;font-size:.85rem;text-align:center;white-space:normal}.cs-obra-nav a:last-child:nth-child(odd){flex-basis:100%}}

/* Alpha.55: Cronograma privado, sem tabela larga e autorizado pela Obra pai. */
.cs-cronograma-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1.25rem}.cs-cronograma-summary>div{display:grid;gap:.2rem;min-width:0;padding:1rem;border:1px solid var(--cs-construction-border);border-radius:12px;background:var(--cs-construction-surface);text-align:center}.cs-cronograma-summary strong{color:var(--cs-color-primary-dark,#075f90);font-size:clamp(1.35rem,3vw,2rem)}.cs-cronograma-summary span{color:var(--cs-color-muted,#5b6475);font-size:.88rem}.cs-cronograma-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1.5rem 0}.cs-cronograma-toolbar h2{margin:.15rem 0 0}.cs-cronograma-empty,.cs-cronograma-form-wrap,.cs-cronograma-card{min-width:0;padding:clamp(1rem,3vw,1.6rem);border:1px solid var(--cs-construction-border);border-radius:var(--cs-cards-radius-global,18px);background:var(--cs-construction-surface);box-shadow:0 12px 30px rgba(23,32,51,.06)}.cs-cronograma-empty{text-align:center}.cs-cronograma-list{display:grid;gap:1rem}.cs-cronograma-card__header,.cs-cronograma-card__header>div{display:flex;align-items:center;gap:.75rem}.cs-cronograma-card__header{justify-content:space-between}.cs-cronograma-card__header>div{min-width:0}.cs-cronograma-card h3{margin:0;overflow-wrap:anywhere}.cs-cronograma-order{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:11px;background:color-mix(in srgb,var(--cs-color-primary,#0879b8) 12%,white);color:var(--cs-color-primary-dark,#075f90);font-weight:850}.cs-cronograma-status{flex:0 0 auto;padding:.3rem .65rem;border-radius:999px;background:var(--cs-color-background,#f5f7fa);color:var(--cs-color-muted,#5b6475);font-size:.8rem;font-weight:800}.cs-cronograma-status--em_andamento{background:#e4f2fb;color:#075f90}.cs-cronograma-status--atrasada{background:#fff2cf;color:#7a5200}.cs-cronograma-status--concluida{background:#e4f6ea;color:#176b35}.cs-cronograma-progress{height:9px;margin:1rem 0;overflow:hidden;border-radius:999px;background:var(--cs-color-background,#edf1f5)}.cs-cronograma-progress span{display:block;height:100%;border-radius:inherit;background:var(--cs-color-primary,#0879b8)}.cs-cronograma-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:0}.cs-cronograma-meta>div{min-width:0;padding:.75rem;border-radius:10px;background:var(--cs-color-background,#f5f7fa)}.cs-cronograma-meta dt{color:var(--cs-color-muted,#5b6475);font-size:.78rem}.cs-cronograma-meta dd{margin:.2rem 0 0;font-weight:750;overflow-wrap:anywhere}.cs-cronograma-notes{margin:1rem 0 0;overflow-wrap:anywhere}.cs-cronograma-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;margin-top:1rem}.cs-cronograma-actions form{margin:0}.cs-cronograma-actions .cs-button{min-height:42px;padding:.55rem .8rem}.cs-cronograma-form-wrap{margin-bottom:1.5rem}.cs-cronograma-form-wrap h2{margin-top:0}.cs-cronograma-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.cs-cronograma-form{min-width:0}
@media(max-width:700px){.cs-cronograma-summary,.cs-cronograma-meta{grid-template-columns:1fr}.cs-cronograma-toolbar,.cs-cronograma-card__header{display:grid}.cs-cronograma-toolbar .cs-button{width:100%;text-align:center}.cs-cronograma-form-grid{grid-template-columns:1fr}.cs-cronograma-actions{display:grid;grid-template-columns:1fr}.cs-cronograma-actions form,.cs-cronograma-actions .cs-button,.cs-cronograma-actions button{width:100%;text-align:center}}
@media(max-width:390px){.cs-cronograma-summary{gap:.65rem}.cs-cronograma-summary>div,.cs-cronograma-empty,.cs-cronograma-form-wrap,.cs-cronograma-card{padding:.85rem;border-radius:13px}.cs-cronograma-card__header>div{align-items:flex-start}.cs-cronograma-order{flex-basis:38px;width:38px;height:38px}.cs-cronograma-status{justify-self:start}.cs-cronograma-meta{gap:.5rem}}

/* Alpha.56: Diario privado, server-side, paginado e autorizado pela Obra pai. */
.cs-diario-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1.5rem 0}.cs-diario-toolbar h2{margin:.15rem 0 0}.cs-diario-empty,.cs-diario-form-wrap,.cs-diario-card{min-width:0;padding:clamp(1rem,3vw,1.6rem);border:1px solid var(--cs-construction-border);border-radius:var(--cs-cards-radius-global,18px);background:var(--cs-construction-surface);box-shadow:0 12px 30px rgba(23,32,51,.06)}.cs-diario-empty{text-align:center}.cs-diario-form-wrap{margin-bottom:1.5rem}.cs-diario-form-wrap h2{margin-top:0}.cs-diario-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.cs-diario-form-grid small{color:var(--cs-color-muted,#5b6475)}.cs-diario-list{display:grid;gap:1rem}.cs-diario-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.cs-diario-card__header>div{min-width:0}.cs-diario-card__header time{color:var(--cs-color-primary-dark,#075f90);font-size:.86rem;font-weight:800}.cs-diario-card h3{margin:.25rem 0 0;overflow-wrap:anywhere}.cs-diario-weather{flex:0 0 auto;padding:.3rem .65rem;border-radius:999px;background:color-mix(in srgb,var(--cs-color-primary,#0879b8) 12%,white);color:var(--cs-color-primary-dark,#075f90);font-size:.8rem;font-weight:800}.cs-diario-description{margin-top:1rem;overflow-wrap:anywhere}.cs-diario-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1rem}.cs-diario-sections section{min-width:0;padding:.85rem;border-radius:10px;background:var(--cs-color-background,#f5f7fa)}.cs-diario-sections h4{margin:0 0 .35rem;font-size:.88rem}.cs-diario-sections p{margin:0;overflow-wrap:anywhere;white-space:normal}.cs-diario-timestamps{margin:1rem 0 0;color:var(--cs-color-muted,#5b6475);font-size:.78rem}.cs-diario-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;margin-top:1rem}.cs-diario-actions form{margin:0}.cs-diario-actions .cs-button{min-height:42px;padding:.55rem .8rem}.cs-diario-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem}.cs-diario-pagination span{color:var(--cs-color-muted,#5b6475);font-weight:700}
@media(max-width:700px){.cs-diario-toolbar,.cs-diario-card__header{display:grid}.cs-diario-toolbar .cs-button{width:100%;text-align:center}.cs-diario-form-grid,.cs-diario-sections{grid-template-columns:1fr}.cs-diario-weather{justify-self:start}.cs-diario-actions,.cs-diario-pagination{display:grid;grid-template-columns:1fr}.cs-diario-actions form,.cs-diario-actions .cs-button,.cs-diario-actions button,.cs-diario-pagination .cs-button{width:100%;text-align:center}.cs-diario-pagination span{text-align:center}}
@media(max-width:390px){.cs-diario-empty,.cs-diario-form-wrap,.cs-diario-card{padding:.85rem;border-radius:13px}.cs-diario-sections{gap:.5rem}.cs-diario-card__header{gap:.65rem}}

/* Alpha.57: Contratos privados, estruturados e vinculados a Obra pai. */
.cs-contrato-legal{margin:0 0 1.25rem;padding:1rem;border-left:4px solid var(--cs-color-accent,#f4b400);border-radius:10px;background:#fff8df}.cs-contrato-legal p{margin:.25rem 0 0}.cs-contrato-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1.5rem 0}.cs-contrato-toolbar h2{margin:.15rem 0 0}.cs-contrato-empty,.cs-contrato-form-wrap,.cs-contrato-card,.cs-contrato-view{min-width:0;padding:clamp(1rem,3vw,1.6rem);border:1px solid var(--cs-construction-border);border-radius:var(--cs-cards-radius-global,18px);background:var(--cs-construction-surface);box-shadow:0 12px 30px rgba(23,32,51,.06)}.cs-contrato-empty{text-align:center}.cs-contrato-form-wrap,.cs-contrato-view{margin-bottom:1.5rem}.cs-contrato-form-wrap>h2{margin-top:0}.cs-contrato-form-grid{display:grid;grid-template-columns:1fr;align-items:start;gap:1rem}
.cs-contrato-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1rem;min-width:0}
.cs-contrato-form-row>fieldset{height:100%}
.cs-contrato-form-row--header{grid-template-columns:minmax(0,1.6fr) minmax(220px,.65fr)}
.cs-contrato-form-row--financial{grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr)}
.cs-contrato-form-row--financial>.cs-obra-field:first-child{max-width:100%}
.cs-contrato-form-row--dates{grid-template-columns:repeat(2,minmax(0,1fr))}
.cs-contrato-form-grid>.cs-obra-field--wide{grid-column:auto}
.cs-contrato-form-grid>.cs-obra-field--wide textarea{min-height:130px}
.cs-contrato-form-row--financial textarea{min-height:96px}.cs-contrato-form-grid fieldset{display:grid;min-width:0;gap:.8rem;margin:0;padding:1rem;border:1px solid var(--cs-construction-border);border-radius:12px}.cs-contrato-form-grid legend{padding:0 .35rem;font-weight:850}.cs-contrato-list{display:grid;gap:1rem}.cs-contrato-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.cs-contrato-card header>div{min-width:0}.cs-contrato-card time{color:var(--cs-color-primary-dark,#075f90);font-size:.86rem;font-weight:800}.cs-contrato-card h3{margin:.25rem 0;overflow-wrap:anywhere}.cs-contrato-card header>strong{flex:0 0 auto;color:var(--cs-color-primary-dark,#075f90)}.cs-contrato-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:1rem 0}.cs-contrato-card dl>div{min-width:0;padding:.7rem;border-radius:9px;background:var(--cs-color-background,#f5f7fa)}.cs-contrato-card dt{color:var(--cs-color-muted,#5b6475);font-size:.78rem}.cs-contrato-card dd{margin:.15rem 0 0;font-weight:750;overflow-wrap:anywhere}.cs-contrato-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;margin-top:1rem}.cs-contrato-actions form{margin:0}.cs-contrato-actions .cs-button{min-height:42px;padding:.55rem .8rem}.cs-contrato-parties,.cs-contrato-view__sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.cs-contrato-parties section,.cs-contrato-view__sections section{min-width:0;padding:1rem;border-radius:11px;background:var(--cs-color-background,#f5f7fa)}.cs-contrato-parties h3,.cs-contrato-view__sections h3{margin-top:0}.cs-contrato-parties p,.cs-contrato-view__sections p{overflow-wrap:anywhere}.cs-contrato-view__sections{margin-top:1rem}.cs-contrato-timestamps{color:var(--cs-color-muted,#5b6475);font-size:.78rem}.cs-contrato-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem}.cs-contrato-pagination span{color:var(--cs-color-muted,#5b6475);font-weight:700}
@media(max-width:700px){.cs-contrato-toolbar,.cs-contrato-card header{display:grid}.cs-contrato-toolbar .cs-button{width:100%;text-align:center}.cs-contrato-form-grid,.cs-contrato-form-row,.cs-contrato-card dl,.cs-contrato-parties,.cs-contrato-view__sections{grid-template-columns:1fr}.cs-contrato-card header>strong{justify-self:start}.cs-contrato-actions,.cs-contrato-pagination{display:grid;grid-template-columns:1fr}.cs-contrato-actions form,.cs-contrato-actions .cs-button,.cs-contrato-actions button,.cs-contrato-pagination .cs-button{width:100%;text-align:center}.cs-contrato-pagination span{text-align:center}}
@media(max-width:390px){.cs-contrato-legal,.cs-contrato-empty,.cs-contrato-form-wrap,.cs-contrato-card,.cs-contrato-view{padding:.85rem;border-radius:13px}.cs-contrato-form-grid fieldset,.cs-contrato-parties section,.cs-contrato-view__sections section{padding:.8rem}}

/* Cronograma PDF toolbar */
.cs-cronograma-toolbar__actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
@media (max-width:390px){.cs-cronograma-toolbar__actions{width:100%;display:grid;grid-template-columns:1fr}.cs-cronograma-toolbar__actions .cs-button{width:100%;text-align:center}}


/* Alpha.62: resumo operacional somente leitura da Visao Geral da Obra. */
.cs-obra-dashboard{margin:1.35rem 0}.cs-obra-dashboard__header{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:.85rem}.cs-obra-dashboard__header h2{margin:.15rem 0 0}.cs-obra-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}.cs-obra-kpis article{min-width:0;padding:1rem;border:1px solid var(--cs-construction-border);border-radius:12px;background:var(--cs-construction-surface);box-shadow:0 8px 22px rgba(23,32,51,.05)}.cs-obra-kpis span{display:block;color:var(--cs-color-muted,#5b6475);font-size:.82rem}.cs-obra-kpis strong{display:block;margin:.25rem 0;color:var(--cs-color-primary-dark,#075f90);font-size:clamp(1.35rem,2.6vw,2rem);line-height:1.1}.cs-obra-kpis small{display:block;color:var(--cs-color-muted,#5b6475);overflow-wrap:anywhere}.cs-obra-module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;margin-top:.85rem}.cs-obra-module-grid article{min-width:0;padding:1rem;border:1px solid var(--cs-construction-border);border-radius:12px;background:#fff}.cs-obra-module-grid h3{margin:0 0 .45rem;font-size:1rem}.cs-obra-module-grid p{min-height:3.2em;margin:.35rem 0 .75rem;color:var(--cs-color-muted,#5b6475);overflow-wrap:anywhere}.cs-obra-module-grid a{font-weight:800}
@media(max-width:900px){.cs-obra-kpis,.cs-obra-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.cs-obra-dashboard__header{display:grid}.cs-obra-kpis,.cs-obra-module-grid{grid-template-columns:1fr}.cs-obra-module-grid p{min-height:0}}
@media(max-width:390px){.cs-obra-kpis article,.cs-obra-module-grid article{padding:.85rem;border-radius:10px}}

.cs-construction-add-materials{margin-top:1rem;width:100%}.cs-material-added{margin-top:1rem;padding:.85rem 1rem;border:1px solid #b9dfca;border-radius:10px;background:#eef9f2}.cs-materials-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem}.cs-materials-heading>div{min-width:0;flex:1 1 auto}.cs-materials-heading>.cs-button{flex:0 0 auto;min-width:170px;white-space:nowrap;text-align:center}.cs-materials-consolidated,.cs-material-sources{margin-top:1.25rem}.cs-materials-consolidated{padding:1.25rem;background:#fff;border:1px solid var(--cs-construction-border);border-radius:14px}.cs-materials-table-wrap{overflow-x:auto}.cs-materials-table{width:100%;border-collapse:collapse}.cs-materials-table th,.cs-materials-table td{text-align:left;padding:.8rem;border-bottom:1px solid var(--cs-construction-border)}.cs-material-source-grid{display:grid;gap:1rem}.cs-material-source{padding:1rem;background:#fff;border:1px solid var(--cs-construction-border);border-radius:14px}.cs-material-source h4{margin:0 0 .25rem}.cs-material-source ul{margin:.8rem 0;padding-left:1.2rem}.cs-material-source form{margin-top:.8rem}@media(max-width:700px){.cs-materials-heading{align-items:stretch;flex-direction:column}.cs-materials-heading>.cs-button{width:100%;min-width:0;text-align:center}.cs-materials-table{min-width:620px}}


/* Cotação da Obra — Lote 1 */
.cs-quotes,.cs-quote-form,.cs-quote-detail{margin-top:28px}.cs-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:16px}.cs-section-heading h3,.cs-quote-form h2,.cs-quote-detail h2{margin:4px 0 6px}.cs-section-heading p{max-width:760px}.cs-quote-grid{display:grid;gap:14px}.cs-quote-card,.cs-quote-form,.cs-quote-detail,.cs-quote-empty{background:#fff;border:1px solid var(--cs-construction-border,#d8e0e8);border-radius:14px;padding:20px}.cs-quote-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px}.cs-quote-card h4{margin:0 0 5px}.cs-quote-card p{margin:0}.cs-quote-card>strong{font-size:1.15rem}.cs-quote-actions{display:flex;gap:8px;flex-wrap:wrap;grid-column:1/-1}.cs-quote-actions form{margin:0}.cs-quote-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.cs-quote-fields label,.cs-quote-notes-field{display:grid;gap:7px;font-weight:700}.cs-quote-fields input,.cs-quote-notes-field textarea,.cs-quote-edit-table input{width:100%;border:1px solid #b9c7d5;border-radius:8px;padding:10px 11px;background:#fff;font:inherit}.cs-quote-notes-field textarea{min-height:110px;resize:vertical}.cs-quote-edit-table td strong,.cs-quote-edit-table td small{display:block}.cs-quote-edit-table td small{margin-top:4px;color:#667085}.cs-quote-summary{margin:20px 0 0 auto;max-width:430px}.cs-quote-summary p{display:flex;justify-content:space-between;gap:20px;padding:8px 0;margin:0;border-bottom:1px solid #e4e9ef}.cs-quote-summary .cs-quote-total{font-size:1.15rem;border-top:2px solid #cbd5df;border-bottom:0;margin-top:5px;padding-top:12px}.cs-quote-notes{margin-top:20px;padding:16px;background:#f5f7fa;border-radius:10px}.cs-obra-notice--warning{background:#fff7db;border-left:4px solid #e8a900;color:#5b4700}
@media(max-width:767px){.cs-section-heading{align-items:stretch;flex-direction:column}.cs-section-heading .cs-button{width:100%;text-align:center}.cs-quote-card{grid-template-columns:1fr}.cs-quote-card>strong{justify-self:start}.cs-quote-fields{grid-template-columns:1fr}.cs-quote-actions>*{flex:1 1 100%}.cs-quote-actions .cs-button,.cs-quote-actions button{width:100%;text-align:center}.cs-quote-edit-table{min-width:720px}}

/* Comparador de Cotações — Lote 1 */
.cs-section-heading__actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.cs-quote-card__title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cs-quote-card__title h2,.cs-quote-card__title h4{margin:0}.cs-quote-card--selected,.cs-quote-compare-card--selected{border-color:#86c8aa;box-shadow:0 0 0 2px rgba(34,139,94,.08)}.cs-quote-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.cs-quote-badge{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border-radius:999px;background:#e5f3fb;color:#075f90;font-size:.78rem;font-weight:800;white-space:nowrap}.cs-quote-badge--selected{background:#e8f7ee;color:#176c43}.cs-quote-compare{margin:28px 0;padding:20px;background:#fff;border:1px solid var(--cs-construction-border,#d8e0e8);border-radius:14px}.cs-quote-compare>header h2{margin:4px 0 6px}.cs-quote-compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.cs-quote-compare-card{min-width:0;padding:18px;border:1px solid var(--cs-construction-border,#d8e0e8);border-radius:12px;background:#fff}.cs-quote-compare-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.cs-quote-compare-card h3{margin:0 0 4px}.cs-quote-compare-card header p{margin:0;color:#667085;font-size:.85rem}.cs-quote-compare-total{margin:16px 0;color:var(--cs-color-primary-dark,#075f90);font-size:1.65rem;font-weight:900}.cs-quote-compare-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 14px}.cs-quote-compare-summary>div{padding:10px;border-radius:8px;background:#f5f7fa}.cs-quote-compare-summary dt{color:#667085;font-size:.75rem}.cs-quote-compare-summary dd{margin:3px 0 0;font-weight:800}.cs-quote-compare-table{min-width:560px}.cs-obra-notice--info{background:#eef7fc;border-left:4px solid #1184bf;color:#164c68}
@media(max-width:900px){.cs-quote-compare-grid{grid-template-columns:1fr}}
@media(max-width:767px){.cs-section-heading__actions{display:grid;grid-template-columns:1fr;width:100%}.cs-section-heading__actions .cs-button{width:100%;text-align:center}.cs-quote-compare{padding:14px}.cs-quote-compare-card>header{display:grid}.cs-quote-badges{justify-content:flex-start}.cs-quote-compare-summary{grid-template-columns:1fr 1fr}}
@media(max-width:390px){.cs-quote-compare{padding:12px;border-radius:12px}.cs-quote-compare-card{padding:12px}.cs-quote-compare-summary{grid-template-columns:1fr}.cs-quote-compare-total{font-size:1.4rem}}

/* Alpha.68.7.3: estabilidade visual dos botoes de acao em cabecalhos do Gerenciamento de Obras. */
.cs-obras-intro > .cs-button,
.cs-diario-toolbar > .cs-button,
.cs-cronograma-toolbar > .cs-button,
.cs-contrato-toolbar > .cs-button,
.cs-section-heading .cs-button {
	flex: 0 0 auto;
	white-space: nowrap;
}
@media (max-width: 700px) {
	.cs-obras-intro > .cs-button,
	.cs-diario-toolbar > .cs-button,
	.cs-cronograma-toolbar > .cs-button,
	.cs-contrato-toolbar > .cs-button,
	.cs-section-heading .cs-button {
		width: 100%;
		white-space: normal;
		text-align: center;
	}
}

/* Ajuda contextual da Calculadora de Materiais */
.cs-construction-form label>span:first-of-type{display:inline-flex;align-items:center;gap:.35rem;flex-wrap:wrap}.cs-field-help{position:relative;display:inline-grid;place-items:center;width:1.15rem;height:1.15rem;flex:0 0 1.15rem;border:1px solid var(--cs-color-primary,#0879b8);border-radius:50%;color:var(--cs-color-primary,#0879b8);background:#fff;font-size:.72rem;font-weight:800;line-height:1;cursor:help;outline:0}.cs-field-help:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--cs-color-primary,#0879b8) 22%,transparent)}.cs-field-help__bubble{position:absolute;z-index:80;left:50%;bottom:calc(100% + .55rem);width:min(280px,78vw);padding:.65rem .75rem;border:1px solid var(--cs-construction-border,#dfe5ec);border-radius:10px;background:#172033;color:#fff;font-size:.78rem;font-weight:500;line-height:1.4;text-align:left;box-shadow:0 10px 28px rgba(0,0,0,.22);opacity:0;visibility:hidden;transform:translate(-50%,5px);transition:opacity .15s ease,transform .15s ease,visibility .15s}.cs-field-help:hover .cs-field-help__bubble,.cs-field-help:focus .cs-field-help__bubble,.cs-field-help.is-open .cs-field-help__bubble{opacity:1;visibility:visible;transform:translate(-50%,0)}@media(max-width:700px){.cs-field-help__bubble{position:fixed;left:1rem;right:1rem;bottom:1rem;width:auto;transform:none}.cs-field-help:hover .cs-field-help__bubble,.cs-field-help:focus .cs-field-help__bubble,.cs-field-help.is-open .cs-field-help__bubble{transform:none}}

/* Guia de aditivos: ocupa as duas colunas do formulario e permanece compacto. */
.cs-construction-fields>.cs-construction-full{grid-column:1/-1!important;width:100%!important;max-width:none!important;min-width:0!important}
.cs-additive-guide{display:block;width:100%;margin:.25rem 0 .35rem;border:1px solid var(--cs-construction-border,#dfe5ec);border-radius:12px;background:#fff;overflow:hidden}
.cs-additive-guide>summary{display:flex;align-items:center;justify-content:space-between;gap:.75rem;cursor:pointer;padding:.72rem .9rem;font-weight:800;color:var(--cs-color-text,#172033);background:var(--cs-color-background,#f7f9fc);list-style:none}
.cs-additive-guide>summary::-webkit-details-marker{display:none}
.cs-additive-guide>summary::after{content:"+";flex:0 0 auto;font-size:1.1rem;line-height:1;color:var(--cs-color-primary,#0879b8)}
.cs-additive-guide[open]>summary::after{content:"−"}
.cs-additive-guide__body{padding:.85rem .9rem .95rem;color:var(--cs-color-muted,#5b6475);font-size:.84rem}
.cs-additive-guide__intro{margin:0 0 .7rem;line-height:1.45}
.cs-additive-guide__cards{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.65rem!important;width:100%}
.cs-additive-guide__cards>article{min-width:0;padding:.7rem .75rem;border:1px solid var(--cs-construction-border,#dfe5ec);border-radius:10px;background:var(--cs-color-background,#f8fafc)}
.cs-additive-guide__cards h4{margin:0 0 .35rem;color:var(--cs-color-text,#172033);font-size:.9rem;line-height:1.25}
.cs-additive-guide__cards p{margin:.22rem 0;line-height:1.42}
.cs-additive-guide__warning{grid-column:1/-1;border-left:4px solid #d97706!important}
.cs-additive-guide__formula{margin:.7rem 0 0;padding:.65rem .75rem;border-radius:9px;background:#f7fbff;border-left:3px solid var(--cs-color-primary,#0879b8);line-height:1.45}
@media(max-width:760px){.cs-additive-guide__cards{grid-template-columns:1fr!important}.cs-additive-guide__warning{grid-column:auto}.cs-additive-guide__body{padding:.75rem}.cs-additive-guide>summary{padding:.7rem .75rem}}

.cs-obras-pagination{display:flex;align-items:center;justify-content:center;gap:.75rem;flex-wrap:wrap;margin:1.25rem 0 0}.cs-obras-pagination span{font-size:.95rem;text-align:center}@media(max-width:520px){.cs-obras-pagination{flex-direction:column}.cs-obras-pagination .cs-button{width:100%;justify-content:center}}

.cs-materials-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.cs-materials-pagination span{color:var(--cs-color-muted,#5b6475);font-weight:700;text-align:center}@media(max-width:520px){.cs-materials-pagination{display:grid;grid-template-columns:1fr}.cs-materials-pagination .cs-button{width:100%;text-align:center;justify-content:center}}
/* Alpha.68.7.26 — exceção segura para rodapé em telas móveis na horizontal. */
@media (orientation:landscape) and (max-width:1100px) and (max-height:620px){
  .construscript-footer__main{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
