:root { --ink:#181818; --muted:#6b6b6b; --line:#e7e4e1; --paper:#f8f7f5; --card:#fff; --red:#ca2427; }
* { box-sizing:border-box; }
body { margin:0; overflow-x:hidden; background:var(--paper); color:var(--ink); font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; }
.access-portal{position:relative;isolation:isolate;min-height:100vh;overflow:hidden;padding:32px clamp(26px,6vw,100px);color:#fff;background:radial-gradient(circle at 18% 12%,#51151a 0,transparent 27%),linear-gradient(122deg,#120d0e 0%,#201114 47%,#771719 150%);display:flex;flex-direction:column}.access-portal:before{content:"";position:absolute;z-index:-1;inset:0;opacity:.3;background-image:linear-gradient(90deg,#ffffff08 1px,transparent 1px),linear-gradient(#ffffff08 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to bottom,#000,transparent 84%)}.portal-orb{position:absolute;z-index:-1;border-radius:50%;filter:blur(1px)}.portal-orb-one{width:520px;height:520px;right:-140px;top:-180px;background:#cf252a55}.portal-orb-two{width:410px;height:410px;left:35%;bottom:-260px;background:#a61d2488}.portal-header,.portal-footer{display:flex;align-items:center;justify-content:space-between}.portal-logo{display:flex;align-items:center;gap:12px;font-size:25px;font-weight:300;letter-spacing:.17em}.portal-logo b{font-weight:800}.portal-logo-mark{display:grid;place-items:center;width:43px;height:43px;border-radius:11px;background:linear-gradient(135deg,#ef393b,#9b171c);font-size:27px;font-weight:850;letter-spacing:0;box-shadow:0 12px 28px #0006}.portal-tag,.portal-footer{font-size:10px;letter-spacing:.18em;color:#ffffff9e}.portal-main{flex:1;display:grid;align-items:center;grid-template-columns:1.12fr .88fr;gap:clamp(50px,10vw,180px);max-width:1240px;width:100%;margin:0 auto}.portal-eyebrow{margin:0 0 18px;color:#ef4b4c;font-size:11px;font-weight:800;letter-spacing:.19em}.portal-copy h1{max-width:640px;margin:0;font-size:clamp(48px,6vw,86px);font-weight:720;line-height:.96;letter-spacing:-.075em}.portal-copy h1 em{font-family:Georgia,serif;font-weight:400;color:#f14a4d}.portal-copy>p:not(.portal-eyebrow){max-width:530px;margin:28px 0;color:#ffffffa6;font-size:16px;line-height:1.7}.portal-pillars{display:flex;flex-wrap:wrap;gap:9px}.portal-pillars span{padding:9px 12px;border:1px solid #ffffff28;border-radius:999px;color:#ffffffcc;font-size:11px;font-weight:700;letter-spacing:.05em}.portal-card{width:min(100%,410px);justify-self:end;padding:33px;background:#fff;border:1px solid #fff6;border-radius:20px;box-shadow:0 35px 90px #0007;color:#181818}.portal-card-head{display:flex;gap:15px;align-items:center;margin-bottom:28px}.portal-card-head p{margin:0;color:#a22023;font-size:10px;font-weight:850;letter-spacing:.14em}.portal-card-head h2{margin:5px 0 0;font-size:24px;letter-spacing:-.04em}.portal-card-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:#fbeaea;color:#c92428;font-size:23px;font-weight:800}#portal-access-form{display:grid;gap:16px}#portal-access-form label{display:grid;gap:7px;color:#625f5d;font-size:12px;font-weight:700}#portal-access-form input{width:100%;border:1px solid #e6e1de;border-radius:8px;padding:13px 14px;color:#181818;background:#faf9f8;font:inherit;outline:none}#portal-access-form input:focus{border-color:#ca2427;box-shadow:0 0 0 3px #ca24271c}.portal-submit{display:flex;align-items:center;justify-content:space-between;margin-top:6px;border:0;border-radius:8px;padding:14px 16px;color:#fff;background:linear-gradient(110deg,#b31e22,#df3436);font:inherit;font-size:14px;font-weight:800;cursor:pointer;box-shadow:0 12px 24px #c9242838}.portal-submit span{font-size:21px}.portal-security{margin:20px 0 0;text-align:center;color:#8b8784;font-size:11px}.portal-message{margin:14px 0 0;color:#a22023;font-size:12px;text-align:center}.portal-footer{padding-top:25px}.portal-footer span:last-child{letter-spacing:.08em}@media(max-width:800px){.access-portal{padding:26px 24px}.portal-tag{display:none}.portal-main{grid-template-columns:1fr;gap:46px;padding:66px 0}.portal-card{justify-self:start}.portal-copy h1{font-size:52px}}@media(max-width:480px){.portal-copy h1{font-size:43px}.portal-card{padding:25px}.portal-footer{font-size:8px}}
.app-shell { min-height:100vh; display:grid; grid-template-columns:242px 1fr; }
.sidebar { position:sticky; top:0; align-self:start; display:flex; flex-direction:column; height:100vh; overflow-y:auto; padding:28px 18px; color:#f5f4f2; background:#181818; }
.brand { display:flex; align-items:center; gap:10px; color:inherit; font-size:20px; font-weight:700; text-decoration:none; }
.brand-mark { display:grid; place-items:center; width:30px; height:30px; color:#fff; background:var(--red); border-radius:7px; }
nav { display:grid; gap:5px; margin-top:42px; }
nav a { padding:11px 12px; border-radius:7px; color:#c7c4c1; font-size:14px; text-decoration:none; }
nav a:hover, nav a.active { color:#fff; background:#303030; }
.sidebar-search { display:flex; align-items:center; gap:8px; width:100%; margin:28px 0 -27px; padding:10px 12px; border:1px solid #474442; border-radius:7px; color:#f5f4f2; background:#242322; font:inherit; font-size:13px; font-weight:700; text-align:left; cursor:pointer; }
.sidebar-search:hover { border-color:#d94749; background:#302123; }.sidebar-search span { font-size:22px; line-height:.5; }
.sidebar-footer { margin-top:auto; padding:11px 12px; color:#aaa5a0; font-size:14px; }
.commercial-app-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 0}.commercial-app-grid button{display:grid;gap:5px;padding:17px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:#fff;text-align:left;cursor:pointer;font:inherit}.commercial-app-grid button:hover{border-color:var(--red);box-shadow:0 5px 16px #ca24271a}.commercial-app-grid strong{font-size:15px}.commercial-app-grid span{color:var(--muted);font-size:12px}
.sidebar-logout { width:100%; margin-top:8px; padding:11px 12px; border:1px solid #55504d; border-radius:7px; color:#f5f4f2; background:transparent; font:inherit; font-size:14px; font-weight:700; text-align:left; cursor:pointer; }.sidebar-logout:hover { border-color:#d94749; color:#fff; background:#342022; }
main { min-width:0; padding:42px clamp(24px,5vw,72px); }
.topbar,.section-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; }
.section-submenu { display:flex; flex-wrap:wrap; gap:8px; margin:23px 0 28px; padding-bottom:17px; border-bottom:1px solid var(--line); }
.section-submenu button { border:1px solid var(--line); border-radius:999px; padding:8px 12px; color:#494644; background:#fff; font:inherit; font-size:12px; font-weight:700; cursor:pointer; }.section-submenu button:hover { border-color:#d46a6c; color:#a61f22; background:#fff7f7; }
h1,h2,h3,p { margin:0; }
h1 { font-size:clamp(28px,3vw,40px); letter-spacing:-.04em; }
h2 { margin-top:4px; font-size:22px; letter-spacing:-.025em; }
h3 { font-size:20px; letter-spacing:-.02em; }
.eyebrow { color:var(--red); font-size:11px; font-weight:800; letter-spacing:.12em; }
.primary-action,.secondary-action { border:0; border-radius:7px; padding:12px 16px; font:inherit; font-size:14px; font-weight:700; cursor:pointer; }
.primary-action { color:#fff; background:var(--red); }
.secondary-action { color:var(--ink); background:transparent; border:1px solid var(--line); }
.summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:38px 0 48px; }
.summary-grid article,.panel,.empty-state { background:var(--card); border:1px solid var(--line); border-radius:10px; }
.summary-grid article { padding:20px; }
.summary-grid p,.panel p:not(.eyebrow),.empty-state p { color:var(--muted); font-size:14px; line-height:1.55; }
.summary-grid strong { display:block; margin:11px 0 4px; font-size:30px; letter-spacing:-.04em; }
.summary-grid span { color:#8a8783; font-size:12px; }
.workspace { margin-bottom:20px; }
.empty-state { display:grid; gap:13px; margin-top:18px; padding:34px; max-width:760px; }
.empty-state .primary-action { width:max-content; margin-top:6px; }
.two-column { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.crm-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-top:18px; }.crm-grid .panel { min-height:190px; }.panel h3 { margin-bottom:14px; }.panel-copy { color:var(--muted); font-size:14px; line-height:1.55; }
.task-list { display:grid; gap:10px; margin:0; padding:0; list-style:none; color:var(--muted); font-size:14px; }.task-list li { padding-bottom:10px; border-bottom:1px solid var(--line); }.task-list li:last-child { border:0; }.cvm-list { display:grid; gap:11px; margin-top:18px; color:var(--muted); font-size:14px; }.cvm-list div { display:flex; justify-content:space-between; gap:12px; }.cvm-list strong { color:var(--ink); }
.client-heading { margin-top:28px; align-items:end; }.client-list { display:grid; margin-top:14px; background:var(--card); border:1px solid var(--line); border-radius:10px; }.client-list > p { padding:20px; color:var(--muted); }.client-row { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:16px 20px; border-bottom:1px solid var(--line); color:var(--muted); font-size:14px; }.client-row:last-child { border:0; }.client-row > div { min-width:0; }.client-row div:first-child { display:grid; gap:3px; }.client-row strong,.client-row span { overflow-wrap:anywhere; }.client-row strong { color:var(--ink); }.client-row span { font-size:12px; }.client-row-button { width:100%; border:0; background:var(--card); text-align:left; font:inherit; cursor:pointer; }.client-row-button:hover,.client-row-button:focus-visible { background:#fff7f7; outline:none; }.client-row-button:focus-visible { box-shadow:inset 0 0 0 2px #ca2427; }.client-row-details{display:flex;align-items:center;gap:18px}.client-row-action{display:inline-block;min-width:94px;opacity:0;color:var(--red);font-size:12px;font-weight:800;transform:translateX(-5px);transition:opacity .16s ease,transform .16s ease}.client-row-button:hover .client-row-action,.client-row-button:focus-visible .client-row-action{opacity:1;transform:translateX(0)}
.commercial-row{display:grid;grid-template-columns:80px minmax(180px,2fr) minmax(115px,1fr) minmax(130px,1fr) minmax(115px,1fr) minmax(140px,auto);gap:14px;align-items:center;padding:14px 20px;border-bottom:1px solid var(--line);text-align:left;font:inherit}.commercial-row-header{padding-block:10px;background:#f7f4f2;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.commercial-row-button{width:100%;border:0;background:var(--card);cursor:pointer;color:var(--ink)}.commercial-row-button:hover,.commercial-row-button:focus-visible{background:#fff7f7;outline:none}.commercial-row-button:focus-visible{box-shadow:inset 0 0 0 2px #ca2427}.commercial-code{font-variant-numeric:tabular-nums;color:var(--red);font-weight:850}.commercial-name{font-weight:800}.commercial-tag{justify-self:start;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap}.tag-orcamento_enviado{background:#fff1cc;color:#8a5b00}.tag-agendado{background:#e2efff;color:#165aa8}.tag-instalando{background:#ffeadb;color:#a74700}.tag-nao_negociado{background:#eeeef0;color:#5f6268}.tag-pedido_fechado{background:#dcf6e5;color:#14753a}
.catalog-summary { margin:18px 0 0; }.action-row,.inline-actions { display:flex; flex-wrap:wrap; gap:8px; }.catalog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:18px; }.inova-grid { grid-template-columns:minmax(0,1fr) minmax(0,2fr); }.inova-copy { margin-top:12px; }.catalog-grid > article { min-width:0; padding:20px; background:var(--card); border:1px solid var(--line); border-radius:10px; }.catalog-grid h3 { margin-bottom:8px; font-size:17px; }.catalog-grid .client-list { margin-top:14px; }.catalog-grid .client-row { display:grid; align-items:start; gap:4px; padding:13px 0; font-size:13px; }.catalog-grid .client-row div:last-child { text-align:left; overflow-wrap:anywhere; }.inline-actions { margin-top:14px; }.text-action { padding:0; border:0; background:transparent; color:var(--red); font:inherit; font-size:13px; font-weight:700; cursor:pointer; }.checks { display:block; margin-top:8px; color:var(--muted); font-size:13px; }.checks input { width:auto; margin:0 5px 0 0; padding:0; }
.section-page > .panel { margin-top:18px; }.installation-grid { grid-template-columns:minmax(0,480px); }
dialog { width:min(680px,calc(100vw - 32px)); border:0; border-radius:12px; padding:0; box-shadow:0 20px 60px #0004; } dialog::backdrop { background:#111a; } #client-dialog{width:min(900px,calc(100vw - 32px))}#client-form { padding:28px; }.dialog-head,.dialog-actions { display:flex; justify-content:space-between; align-items:center; gap:16px; }.dialog-actions { justify-content:end; margin-top:24px; }.icon-button { border:0; background:transparent; color:var(--muted); font-size:28px; cursor:pointer; }.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:22px; }.form-grid label { display:grid; gap:6px; color:var(--muted); font-size:13px; }.form-grid input,.form-grid select,.form-grid textarea { width:100%; border:1px solid var(--line); border-radius:7px; padding:10px; font:inherit; color:var(--ink); background:#fff; }.form-grid .wide { grid-column:1 / -1; }.form-error { margin-top:14px; color:#a31c1e; font-size:14px; }.client-address-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(100px,.55fr) minmax(0,1fr);gap:14px}.client-location-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(90px,.35fr);gap:14px}.client-address-row label,.client-location-row label{display:grid;gap:6px;color:var(--muted);font-size:13px}
.panel { min-height:210px; padding:28px; }
.panel > p:not(.eyebrow) { margin-top:14px; max-width:46ch; }
.status { display:inline-block; margin-top:22px; padding:6px 9px; border-radius:99px; color:#8e2628; background:#fff0f0; font-size:12px; font-weight:700; }
.proposal-presentation { margin:16px 0 0; padding:20px; border:1px solid #eed8d8; border-left:4px solid var(--red); border-radius:8px; background:#fffafa; }
.proposal-presentation h3 { margin:4px 0 12px; font-size:18px; }
.proposal-presentation ul { display:grid; gap:7px; margin:0; padding-left:19px; color:var(--ink); font-size:14px; line-height:1.45; }
.proposal-institutional { margin:16px 0 0; padding-top:13px; border-top:1px solid #eadfdd; color:var(--muted); font-size:12px; line-height:1.55; }
.proposal-actions { display:flex; flex-wrap:wrap; gap:10px; margin:16px 0 0; }
.quote-workspace{max-width:none}.quote-heading{align-items:flex-end;margin-bottom:22px}.quote-date{display:grid;gap:3px;min-width:150px;padding:12px 15px;border:1px solid var(--line);border-radius:9px;background:#fff}.quote-date span,.quote-date small{color:var(--muted);font-size:11px}.quote-date strong{font-size:16px}.quote-client-panel{padding:25px;margin-bottom:22px}.quote-client-panel h3,.quote-items-section h3{margin-top:3px}.quote-items-section{margin-bottom:20px}.quote-items{display:grid;gap:14px;margin-top:14px}.quote-item{padding:20px 22px;border:1px solid var(--line);border-radius:10px;background:#fff}.quote-item-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.quote-item .form-grid{margin-top:15px}.quote-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:22px 0}.quote-footer>div{display:flex;gap:9px}.quote-result-panel{max-width:none;margin-top:24px}.quote-total{font-size:26px;color:var(--red);white-space:nowrap}.quote-summary-lines{display:grid;gap:0;margin-top:18px;border:1px solid var(--line);border-radius:8px;overflow:hidden}.quote-summary-lines>div{display:grid;grid-template-columns:1fr auto;gap:4px 18px;padding:14px 16px;border-bottom:1px solid var(--line)}.quote-summary-lines>div:last-child{border:0}.quote-summary-lines span{color:var(--muted);font-size:13px}.quote-summary-lines b{grid-area:1 / 2 / span 2;color:var(--red);align-self:center}.quote-issued{margin-top:18px!important;color:#237537!important;font-weight:700}
.quote-client-heading{margin-top:5px;margin-bottom:14px}.quote-client-panel{margin-top:0}.quote-client-grid{grid-template-columns:minmax(0,2fr) minmax(180px,1fr)}.quote-client-grid .address-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(90px,.55fr) minmax(0,1fr);gap:14px}.quote-client-grid .address-row label{display:grid;gap:6px;color:var(--muted);font-size:13px}.required-note{display:inline;color:var(--red);font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;vertical-align:middle}
.search-dialog { width:min(760px,calc(100vw - 32px)); color:var(--ink); }.search-dialog form { padding:28px; }.search-field { display:grid; gap:7px; margin-top:20px; color:var(--muted); font-size:13px; }.search-field input { width:100%; border:1px solid var(--line); border-radius:8px; padding:13px 14px; font:inherit; color:var(--ink); outline:none; }.search-field input:focus { border-color:var(--red); box-shadow:0 0 0 3px #ca24271c; }.search-filters { display:flex; flex-wrap:wrap; gap:7px; margin:16px 0; }.search-filters button { border:1px solid var(--line); border-radius:999px; padding:7px 10px; color:#595553; background:#fff; font:inherit; font-size:12px; cursor:pointer; }.search-filters button.active { border-color:var(--red); color:#fff; background:var(--red); }.search-results { display:grid; overflow:auto; max-height:360px; border:1px solid var(--line); border-radius:9px; }.search-results > p { margin:0; padding:19px; color:var(--muted); font-size:14px; }.search-result { display:grid; grid-template-columns:1fr auto; gap:3px 16px; width:100%; padding:14px 16px; border:0; border-bottom:1px solid var(--line); color:var(--ink); background:#fff; text-align:left; cursor:pointer; }.search-result:last-child { border-bottom:0; }.search-result:hover { background:#fff7f7; }.search-result strong { font-size:14px; }.search-result span { color:var(--muted); font-size:12px; }.search-result em { grid-row:1 / span 2; grid-column:2; align-self:center; color:#9b2325; font-size:11px; font-style:normal; font-weight:800; }
@media (max-width:820px) { .app-shell { grid-template-columns:1fr; }.sidebar { display:none; } main { padding:28px 20px; }.summary-grid,.two-column,.crm-grid,.catalog-grid,.commercial-app-grid { grid-template-columns:1fr 1fr; } }
@media (max-width:820px){.commercial-row{grid-template-columns:72px minmax(150px,1.8fr) minmax(105px,1fr) minmax(110px,1fr) minmax(105px,1fr) minmax(125px,auto);gap:9px;padding-inline:13px;font-size:13px}}
@media (max-width:620px){.commercial-row{grid-template-columns:1fr 1fr;gap:7px 13px}.commercial-row-header{display:none}.commercial-row-button{padding:14px}.commercial-code:before{content:'Código: ';font-size:11px;color:var(--muted)}.commercial-district:before{content:'Bairro: ';font-size:11px;color:var(--muted)}.commercial-phone:before{content:'Telefone: ';font-size:11px;color:var(--muted)}.commercial-city:before{content:'Cidade: ';font-size:11px;color:var(--muted)}.commercial-name{grid-column:1/-1}.commercial-tag{grid-column:1/-1}.commercial-row:not(.commercial-row-button)>span:first-child{display:none}}
@media (max-width:520px) { .topbar,.section-heading,.quote-footer { align-items:flex-start; flex-direction:column; }.summary-grid,.two-column,.crm-grid,.catalog-grid,.form-grid { grid-template-columns:1fr; }.client-row { align-items:flex-start; flex-direction:column; }.catalog-grid .client-row div:last-child { text-align:left; }.form-grid .wide { grid-column:auto; }.quote-summary-lines>div{grid-template-columns:1fr}.quote-summary-lines b{grid-area:auto}.quote-footer>div{width:100%;flex-wrap:wrap} }
.portal-logo-image{width:min(270px,50vw);height:auto;object-fit:contain;padding:7px 14px;border-radius:12px;background:#fff;filter:drop-shadow(0 12px 22px #0007)}
[hidden]{display:none!important}
.portal-first-access{display:block;margin:13px auto 0;border:0;background:transparent;color:#8b8784;font:inherit;font-size:11px;text-decoration:underline;cursor:pointer}.activation-dialog{color:#181818}.activation-dialog form{padding:28px}.activation-dialog .panel-copy{margin-top:14px}.activation-dialog .form-grid{margin-top:18px}
@media(max-width:480px){.portal-logo-image{width:205px}}
/* Mantém o portal inteiro visível em telas horizontais com pouca altura útil. */
@media (min-width:801px) and (max-height:950px){
  .access-portal{height:100dvh;min-height:0;padding:18px clamp(34px,5vw,86px)}
  .portal-logo-image{width:210px;padding:5px 10px}
  .portal-main{gap:clamp(42px,7vw,120px)}
  .portal-eyebrow{margin-bottom:10px}
  .portal-copy h1{font-size:clamp(48px,6.4vh,72px)}
  .portal-copy>p:not(.portal-eyebrow){margin:16px 0;font-size:14px;line-height:1.45}
  .portal-pillars span{padding:6px 10px}
  .portal-card{width:min(100%,380px);padding:22px 24px;border-radius:17px}
  .portal-card-head{margin-bottom:17px}
  .portal-card-head h2{font-size:21px}
  #portal-access-form{gap:11px}
  #portal-access-form input{padding:10px 12px}
  .portal-submit{margin-top:2px;padding:11px 14px}
  .portal-security{margin-top:12px}
  .portal-first-access{margin-top:9px}
  .portal-footer{padding-top:12px}
}

/* Pedido completo: painel comercial legível, sem corte horizontal. */
#order-operations-dialog{width:min(1040px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;overflow:hidden}
#order-operations-dialog .operations-dialog{box-sizing:border-box;width:100%;max-height:calc(100dvh - 32px);overflow:auto;padding:30px}
#order-operations-dialog .dialog-head>div{min-width:0}
#order-operations-dialog h2{overflow-wrap:anywhere}
#installation-order-document-dialog{width:min(1040px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;overflow:hidden}
#installation-order-document-dialog .operations-dialog{box-sizing:border-box;width:100%;max-height:calc(100dvh - 32px);overflow:auto;padding:30px}
#installation-order-document-dialog .dialog-head>div,#installation-order-document-dialog .operation-document{min-width:0}
#installation-order-document-dialog h2,#installation-order-document-dialog h3,#installation-order-document-dialog p,#installation-order-document-dialog li{overflow-wrap:anywhere}
.order-commercial-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;padding:18px;border:1px solid #f0d8d9;border-radius:14px;background:linear-gradient(135deg,#fff9f9,#fff)}
.order-commercial-actions .eyebrow{margin:0}.order-commercial-actions h3{margin:4px 0 6px;font-size:16px}.order-commercial-actions p:not(.eyebrow){margin:0;color:var(--dashboard-muted);font-size:13px;line-height:1.5}.order-commercial-buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.order-commercial-buttons button{white-space:nowrap}
@media(max-width:620px){#order-operations-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}#order-operations-dialog .operations-dialog{max-height:calc(100dvh - 20px);padding:20px 16px}.order-commercial-actions{align-items:stretch;flex-direction:column;padding:16px}.order-commercial-buttons,.order-commercial-buttons button{width:100%}}

/* Cadeia comercial e operacional exibida no pedido completo. */
.order-trace{margin-top:18px;padding:16px 18px;border:1px solid var(--dashboard-line);border-radius:14px;background:#fff}.order-trace>.eyebrow{margin:0 0 11px}.order-trace>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.order-trace span{display:grid;gap:4px;padding:10px;border-radius:10px;background:var(--dashboard-soft);color:var(--dashboard-muted);font-size:11px}.order-trace strong{color:var(--dashboard-ink);font-size:13px;overflow-wrap:anywhere}@media(max-width:720px){.order-trace>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:420px){.order-trace>div{grid-template-columns:1fr}}

/* Ficha comercial individual do cliente. */
.client-history-detail{margin-top:24px}.client-history-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:24px;border:1px solid var(--dashboard-line);border-radius:18px 18px 0 0;background:linear-gradient(135deg,#fff,#fff8f7)}.client-history-head h3{margin:4px 0 9px}.client-history-head p:not(.eyebrow){margin:4px 0;color:var(--dashboard-muted);font-size:14px;line-height:1.45}.client-history-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border:1px solid var(--dashboard-line);border-top:0;background:var(--dashboard-line)}.client-history-summary article{padding:18px 22px;background:#fff}.client-history-summary p{margin:0;color:var(--dashboard-muted);font-size:12px}.client-history-summary strong{display:block;margin-top:7px;color:var(--dashboard-ink);font-size:22px}.client-history-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.client-history-sections>section{overflow:hidden;border:1px solid var(--dashboard-line);border-radius:16px;background:#fff}.client-history-section-head{padding:18px 20px;border-bottom:1px solid var(--dashboard-line);background:#fffaf8}.client-history-section-head .eyebrow{margin:0}.client-history-section-head h3{margin:5px 0 0;font-size:17px}.client-history-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid var(--dashboard-line)}.client-history-row:last-child{border-bottom:0}.client-history-row>div:first-child{display:grid;gap:4px;min-width:0}.client-history-row strong{color:var(--dashboard-ink)}.client-history-row span{color:var(--dashboard-muted);font-size:13px}.client-history-row>div:last-child{display:flex;align-items:center;justify-content:flex-end;gap:12px}.client-history-row b{color:var(--dashboard-red);font-size:14px;white-space:nowrap}.client-history-empty{margin:0;padding:20px;color:var(--dashboard-muted);font-size:14px}@media(max-width:760px){.client-history-sections{grid-template-columns:1fr}.client-history-head{align-items:stretch;flex-direction:column}.client-history-head .secondary-action{width:100%}}@media(max-width:520px){.client-history-summary{grid-template-columns:1fr}.client-history-row{align-items:stretch;flex-direction:column}.client-history-row>div:last-child,.client-history-row .secondary-action{width:100%}.client-history-row>div:last-child{align-items:stretch;flex-direction:column}.client-history-row .secondary-action{margin-top:3px}}
.password-visibility-toggle{justify-self:end;margin-top:-2px;padding:0;border:0;background:transparent;color:#a22023;font:inherit;font-size:11px;font-weight:700;cursor:pointer}.password-visibility-toggle:hover{text-decoration:underline}
.lead-section,.opportunity-section{margin-top:26px}.lead-heading{margin:0}.lead-heading h3{margin:4px 0;font-size:22px}@media (max-width:520px){.client-address-row,.client-location-row{grid-template-columns:1fr}}

/* Painel comercial — linguagem visual unificada */
:root{--dashboard-bg:#f6f3f0;--dashboard-surface:#fff;--dashboard-soft:#fbf8f6;--dashboard-ink:#211e1d;--dashboard-muted:#766f6a;--dashboard-line:#e9e1dc;--dashboard-red:#d9272e;--dashboard-red-dark:#ad1f25}
body{background:var(--dashboard-bg);color:var(--dashboard-ink)}
.app-shell{grid-template-columns:300px minmax(0,1fr);background:var(--dashboard-bg)}
.sidebar{padding:26px 18px;background:linear-gradient(180deg,#171616 0%,#211d1c 100%);box-shadow:10px 0 28px #211b170d}
.brand{gap:12px;font-size:22px;letter-spacing:-.03em}.brand-mark{width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,#e33a42,#bd1d25);box-shadow:0 9px 20px #dc252a33}
.sidebar-search{margin:30px 0 -24px;padding:13px 14px;border-radius:12px;background:#272525}.sidebar-search:hover{border-color:#f05b60;background:#322325}
nav{gap:6px;margin-top:41px}nav a{position:relative;padding:12px 13px;border-radius:10px;font-size:14px;transition:background .18s ease,color .18s ease,transform .18s ease}nav a:hover{transform:translateX(2px);background:#2a2827}nav a.active{background:linear-gradient(90deg,#3b3736,#302d2c);box-shadow:inset 3px 0 0 var(--dashboard-red)}
.finance-submenu{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.finance-submenu button{border:1px solid #e8dfdb;border-radius:999px;padding:10px 14px;background:#fff;color:#5f5753;font:inherit;font-size:13px;font-weight:750;cursor:pointer}.finance-submenu button.active,.finance-submenu button:hover{border-color:#d7252a;background:#fff2f1;color:#bf2025}.financial-summary-grid{margin:0 0 30px}.financial-summary-grid article{min-height:126px}.financial-row>div:last-child{display:grid;align-content:center;text-align:right;color:#bd2024}.financial-row strong{font-variant-numeric:tabular-nums}.financial-report-card{display:grid;gap:9px;min-height:130px;padding:23px;border:1px solid #e8dfdb;border-radius:14px;background:#fff}.financial-report-card span{font-size:26px;font-weight:850;color:#c92328}.financial-report-card small{color:#716866;line-height:1.5}
.financial-home{padding:30px;border:1px solid var(--dashboard-line);border-radius:22px;background:linear-gradient(135deg,#fff 0%,#fff9f7 58%,#f8ebe7 100%);box-shadow:0 16px 38px #241c1710}.financial-home .section-heading{padding-bottom:18px;border-bottom:1px solid var(--dashboard-line)}.financial-home .section-submenu{margin:22px 0 18px;padding:0;border:0;background:transparent}.financial-home .section-submenu button{display:grid;min-width:176px;min-height:74px;place-items:center;border:1px solid var(--dashboard-line);border-radius:14px;background:#fff;color:var(--dashboard-ink);font-weight:800;box-shadow:0 6px 16px #241c1708}.financial-home .section-submenu button:hover{border-color:#e08c90;background:#fff5f5;transform:translateY(-2px)}.financial-home .financial-summary-grid{margin:18px 0 0}.financial-section-back{display:flex;justify-content:flex-start;margin:0 0 20px}.financial-section-back button{border-radius:999px}.financial-row-actions{display:flex!important;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.financial-row-actions .secondary-action{min-height:34px;padding:7px 10px;font-size:12px}.pricing-row{gap:18px}.pricing-row>div:last-child{display:flex;align-items:center}.pricing-row .secondary-action{min-height:36px;padding:7px 13px;white-space:nowrap}
.sidebar-logout{padding:12px 13px;border-radius:10px}.sidebar-footer{font-size:12px}
main{max-width:1720px;margin:0 auto;padding:42px clamp(30px,5vw,76px)}
.topbar{padding-bottom:25px;border-bottom:1px solid var(--dashboard-line)}.workspace{margin-top:28px}.section-heading{align-items:flex-end}.section-heading h1{color:var(--dashboard-ink)}
.eyebrow{color:var(--dashboard-red);letter-spacing:.14em}.section-submenu{gap:7px;margin:22px 0 30px;padding:8px;border:1px solid var(--dashboard-line);border-radius:14px;background:var(--dashboard-surface)}.section-submenu button{padding:9px 13px;border-color:transparent;background:transparent;transition:background .16s ease,color .16s ease}.section-submenu button:hover{border-color:transparent;background:#fff0f0;color:var(--dashboard-red-dark)}
.primary-action,.secondary-action{min-height:42px;border-radius:11px;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.primary-action{background:linear-gradient(135deg,#df3339,#c51f27);box-shadow:0 9px 18px #cd252b2e}.primary-action:hover{transform:translateY(-1px);box-shadow:0 12px 22px #cd252b40}.secondary-action{background:#fff;border-color:var(--dashboard-line)}.secondary-action:hover{border-color:#dca1a4;background:#fff8f8}
.summary-grid{gap:16px;margin:28px 0 34px}.summary-grid article,.panel,.empty-state,.catalog-grid>article{border-color:var(--dashboard-line);border-radius:18px;box-shadow:0 8px 25px #1c14100a}.summary-grid article{padding:22px;background:linear-gradient(145deg,#fff,#fcf8f6)}.summary-grid article:hover{transform:translateY(-2px);box-shadow:0 13px 28px #1c141012}.panel{padding:28px;background:var(--dashboard-surface)}
.commercial-app-grid{gap:14px}.commercial-app-grid button{min-height:118px;padding:19px;border-radius:16px;border-color:var(--dashboard-line);background:linear-gradient(145deg,#fff,#fcf9f7);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.commercial-app-grid button:hover{border-color:#e3a6a9;transform:translateY(-2px);box-shadow:0 13px 24px #a4252a16}
.client-heading{margin-top:30px}.client-list{overflow:hidden;border-color:var(--dashboard-line);border-radius:18px;box-shadow:0 8px 25px #1c14100a}.client-row{padding:17px 22px}.client-row-button{transition:background .16s ease}.client-row-button:hover,.client-row-button:focus-visible{background:#fff7f7}
.commercial-row{grid-template-columns:80px minmax(210px,2fr) minmax(135px,1fr) minmax(145px,1fr) minmax(130px,1fr) minmax(150px,.9fr);gap:16px;padding:16px 22px;border-color:var(--dashboard-line);transition:background .16s ease}.commercial-row-lead{grid-template-columns:minmax(210px,2fr) minmax(135px,1fr) minmax(145px,1fr) minmax(130px,1fr) minmax(150px,.9fr)}.commercial-row-header{padding-block:12px;background:linear-gradient(90deg,#f5f0ed,#fbf9f7);color:#857c77;font-size:10px;letter-spacing:.09em}.commercial-row-button{background:var(--dashboard-surface)}.commercial-row-button:hover,.commercial-row-button:focus-visible{background:#fff6f6}.commercial-code{font-size:13px}.commercial-name{font-size:14px}.commercial-tag{padding:6px 10px;box-shadow:inset 0 0 0 1px #0000000a}
.catalog-grid{gap:18px}.catalog-grid>article{padding:23px}.quote-item,.quote-client-panel{border-color:var(--dashboard-line);border-radius:18px;box-shadow:0 7px 20px #1c141009}.quote-item{padding:22px}.quote-date{border-color:var(--dashboard-line);border-radius:13px;box-shadow:0 5px 15px #1c141008}.quote-summary-lines{border-color:var(--dashboard-line);border-radius:13px}
.pricing-groups{display:grid;gap:18px;margin-top:22px}.pricing-groups>article{padding:24px;border:1px solid var(--dashboard-line);border-radius:18px;background:#fff;box-shadow:0 10px 24px #241c1708}.pricing-groups>article h3{margin:0 0 16px}.pricing-groups .client-list{box-shadow:none}
dialog{border-radius:20px;box-shadow:0 28px 70px #160c0c4d}#client-form{padding:32px}.form-grid input,.form-grid select,.form-grid textarea{border-color:var(--dashboard-line);border-radius:10px;padding:11px 12px}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:none;border-color:#dc7277;box-shadow:0 0 0 3px #d9272e14}.dialog-head{padding-bottom:18px;border-bottom:1px solid var(--dashboard-line)}
@media(max-width:900px){.app-shell{grid-template-columns:260px minmax(0,1fr)}main{padding:32px 26px}.commercial-row{grid-template-columns:70px minmax(165px,1.8fr) minmax(105px,1fr) minmax(115px,1fr) minmax(105px,1fr) minmax(125px,.9fr);gap:10px}.commercial-row-lead{grid-template-columns:minmax(165px,1.8fr) minmax(105px,1fr) minmax(115px,1fr) minmax(105px,1fr) minmax(125px,.9fr)}}
@media(max-width:820px){.app-shell{grid-template-columns:1fr}.sidebar{display:none}main{padding:28px 20px}}
@media(max-width:620px){.commercial-row,.commercial-row-lead{grid-template-columns:1fr 1fr;gap:8px 13px;padding:15px}.commercial-row-header{display:none}.commercial-name{grid-column:1/-1}.commercial-tag{grid-column:1/-1}.commercial-code:before{content:'Código: ';font-size:11px;color:var(--dashboard-muted)}.commercial-district:before{content:'Bairro: ';font-size:11px;color:var(--dashboard-muted)}.commercial-phone:before{content:'Telefone: ';font-size:11px;color:var(--dashboard-muted)}.commercial-city:before{content:'Cidade: ';font-size:11px;color:var(--dashboard-muted)}.section-submenu{overflow:auto;flex-wrap:nowrap}.section-submenu button{white-space:nowrap}}

/* Vendas e documentos operacionais */
.sales-submenu{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 26px;padding:8px;border:1px solid var(--dashboard-line);border-radius:14px;background:#fff}.sales-submenu button{min-height:42px;padding:9px 13px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--dashboard-ink);font:800 13px/1.2 Inter,ui-sans-serif,system-ui,sans-serif;cursor:pointer}.sales-submenu button:hover,.sales-submenu button.active{border-color:#efc8ca;background:#fff1f1;color:var(--dashboard-red-dark)}.sales-panel{padding:26px;border:1px solid var(--dashboard-line);border-radius:18px;background:#fff;box-shadow:0 10px 26px #21191308}.sales-panel .section-heading{margin-bottom:18px}.sales-panel .summary-grid{margin:0}.sales-panel .panel{margin-top:22px}.sales-explainer{display:grid;gap:18px;max-width:680px;padding:22px;border:1px solid #f0d8d9;border-radius:14px;background:#fff9f9}.sales-explainer p{margin:0;color:var(--dashboard-muted);line-height:1.55}.sales-explainer .primary-action{justify-self:start}

/* Produção: medição técnica, romaneio e plano de corte */
.production-queue{margin:22px 0;padding:22px;border:1px solid var(--dashboard-line);border-radius:16px;background:var(--dashboard-surface);box-shadow:0 10px 28px #241c1708}.production-queue-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.production-queue-head h3{margin:2px 0 0}.production-access{padding:7px 10px;border-radius:999px;color:#17633c;background:#e8f6ed;font-size:12px;font-weight:800}.production-list{display:grid;gap:12px}.production-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;border:1px solid #e8e1dc;border-radius:13px;background:#fff}.production-card h3{margin:2px 0 6px}.production-card p{margin:4px 0;color:var(--dashboard-muted)}.production-card .eyebrow{margin:0}.production-card-actions{flex:0 0 auto}.production-status{display:inline-block;margin-top:8px;padding:6px 9px;border-radius:999px;font-size:12px;font-weight:800}.production-status.pending{color:#8d5205;background:#fff1d8}.production-status.ready{color:#17633c;background:#e8f6ed}.production-measures{font-weight:700;color:#3d3936!important}.production-document .operation-document{min-height:190px}@media(max-width:620px){.production-card,.production-queue-head{align-items:flex-start;flex-direction:column}.production-card-actions,.production-card-actions button{width:100%}}
.installation-status-groups{display:grid;gap:16px}.installation-status-group{padding:16px;border:1px solid var(--dashboard-line);border-radius:13px;background:var(--dashboard-soft)}.installation-status-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.installation-status-heading h3{margin:0;font-size:17px}.installation-status-heading span{min-width:29px;padding:5px 9px;border-radius:999px;background:#fff;color:var(--dashboard-ink);font-size:12px;font-weight:800;text-align:center}.installation-status-group.on-route{border-color:#bad7f6}.installation-status-group.started{border-color:#d6c6f2}.installation-status-group.pending{border-color:#f0d19d}.installation-status-group.finished{border-color:#b9e4d0}.installation-status-group.received{border-color:#9ed6b7}.installation-status-empty{margin:0;color:var(--dashboard-muted);font-size:14px}
#sales-installation-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px;background:transparent;border:0;box-shadow:none;overflow:visible}#sales-installation-list .installation-status-group{display:flex;min-width:0;min-height:176px;flex-direction:column;padding:20px;border-radius:18px;background:linear-gradient(145deg,#fff,#fdf9f7);box-shadow:0 10px 25px #2119130a}#sales-installation-list .installation-status-heading{padding-bottom:12px;border-bottom:1px solid var(--dashboard-line)}#sales-installation-list .installation-status-heading h3{font-size:19px}#sales-installation-list .installation-status-heading span{background:#f9e4e5;color:var(--dashboard-red-dark)}#sales-installation-list .client-list{margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}#sales-installation-list .client-row{padding:14px 0;border-bottom:1px solid var(--dashboard-line)}#sales-installation-list .client-row:last-child{border-bottom:0}#sales-installation-list .client-row .secondary-action{white-space:nowrap}@media(max-width:820px){#sales-installation-list{grid-template-columns:1fr}}@media(max-width:520px){#sales-installation-list .installation-status-group{padding:16px}#sales-installation-list .client-row .secondary-action{width:100%}}
#sales-installation-list{display:block}.sales-installation-dashboard-intro{margin:0 0 18px}.sales-installation-dashboard-intro .eyebrow{margin:0 0 5px}.sales-installation-dashboard-intro h3{margin:0;font-size:26px}.sales-installation-dashboard-intro p:last-child{margin:6px 0 0;color:var(--dashboard-muted)}.installation-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.installation-status-card{display:grid;min-height:162px;grid-template-columns:1fr auto;align-content:start;gap:10px;padding:20px;border:1px solid var(--dashboard-line);border-radius:18px;background:linear-gradient(145deg,#fff,#fdf9f7);color:var(--dashboard-ink);text-align:left;cursor:pointer;box-shadow:0 10px 25px #2119130a;transition:transform .16s ease,border-color .16s ease}.installation-status-card:hover{transform:translateY(-2px);border-color:#d7a2a4}.installation-status-card span{font-size:17px;font-weight:800}.installation-status-card strong{font-size:34px;line-height:1;color:var(--dashboard-red)}.installation-status-card small{grid-column:1/-1;color:var(--dashboard-muted);font-size:13px;line-height:1.45}.installation-status-card.on-route{border-color:#bad7f6}.installation-status-card.started{border-color:#d6c6f2}.installation-status-card.pending{border-color:#f0d19d}.installation-status-card.finished{border-color:#b9e4d0}.installation-status-card.received{border-color:#9ed6b7}.sales-installation-list-heading{margin:0 0 18px}.sales-installation-detail-list{margin:0!important}@media(max-width:820px){.installation-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.installation-status-grid{grid-template-columns:1fr}.sales-installation-list-heading{align-items:flex-start;flex-direction:column}.sales-installation-list-heading .secondary-action{width:100%}}

.receipt-search-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 22px;padding:25px;border:1px solid var(--dashboard-line);border-radius:18px;background:linear-gradient(145deg,#fff,#fdf9f7);box-shadow:0 10px 25px #2119130a}.receipt-search-card .eyebrow{margin:0 0 5px}.receipt-search-card h3{margin:0;font-size:24px}.receipt-search-card p{margin:7px 0 0;color:var(--dashboard-muted)}.receipt-search-card>strong{align-self:end;color:var(--dashboard-red);font-size:34px;line-height:1}.receipt-search-card>span{grid-column:2;align-self:start;color:var(--dashboard-muted);font-size:12px;text-align:right}.receipt-search-card label{display:grid;grid-column:1/-1;gap:7px;margin-top:10px;color:var(--dashboard-ink);font-size:13px;font-weight:800}.receipt-search-card input{width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--dashboard-line);border-radius:10px;background:#fff;font:inherit;font-weight:500}.receipt-search-card input:focus{outline:2px solid #e9b1b3;border-color:var(--dashboard-red)}.receipt-search-results{margin-top:16px!important}@media(max-width:520px){.receipt-search-card{grid-template-columns:1fr;padding:19px}.receipt-search-card>strong{grid-column:1;align-self:auto;margin-top:8px}.receipt-search-card>span{grid-column:1;text-align:left}.receipt-search-card h3{font-size:21px}}
.sales-order-card{padding:20px 22px;border-bottom:1px solid var(--dashboard-line);background:linear-gradient(135deg,#fff,#fcf9f7)}.sales-order-card:last-child{border-bottom:0}.sales-order-main{display:flex;align-items:center;justify-content:space-between;gap:22px}.sales-order-main>div:first-child{display:grid;gap:4px}.sales-order-main .eyebrow{font-size:10px;margin:0}.sales-order-main strong{font-size:17px;color:var(--dashboard-ink)}.sales-order-main span{font-size:13px;color:var(--dashboard-muted)}.sales-order-status{font-weight:750;color:#9c4f12!important}.sales-order-value{display:grid;gap:4px;text-align:right}.sales-order-value strong{color:var(--dashboard-red)}.sales-order-actions{display:flex;justify-content:flex-end;margin-top:14px}.operations-dialog{padding:30px;width:min(980px,calc(100vw - 32px))}.operations-dialog .dialog-head{align-items:flex-start}.operations-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px}.operation-document,.empty-operation{padding:18px;border:1px solid var(--dashboard-line);border-radius:14px;background:var(--dashboard-soft)}.operation-document h3{font-size:16px;margin:4px 0 10px}.operation-document p,.operation-document li,.empty-operation{color:var(--dashboard-muted);font-size:13px;line-height:1.5}.operation-document ul{margin:12px 0 0;padding-left:19px;display:grid;gap:3px}
.purchase-parties{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px}.purchase-order-lines{margin-top:14px;overflow:auto}.purchase-order-lines table{width:100%;border-collapse:collapse;font-size:12px}.purchase-order-lines th,.purchase-order-lines td{padding:10px 8px;border-bottom:1px solid var(--dashboard-line);vertical-align:top;text-align:left}.purchase-order-lines th{font-size:10px;color:var(--dashboard-muted);text-transform:uppercase;letter-spacing:.04em}.purchase-order-lines tfoot th{color:var(--dashboard-ink);font-size:12px}.purchase-order-lines small{color:var(--dashboard-muted)}.production-card-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.production-card-actions .primary-action,.production-card-actions .secondary-action{white-space:nowrap}
.transport-plan-summary{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0 14px}.transport-plan-summary>*{padding:8px 11px;border-radius:999px;background:#f5efeb;color:var(--dashboard-muted);font-size:12px}.transport-plan-summary strong{background:#f9e4e5;color:#a51e25}.transport-plan-list{display:grid;gap:13px}.transport-plan-group{background:#fff}.transport-plan-group dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:15px 0}.transport-plan-group dl div{padding:10px;border:1px solid var(--dashboard-line);border-radius:10px}.transport-plan-group dt{color:var(--dashboard-muted);font-size:11px}.transport-plan-group dd{margin:5px 0 0;color:var(--dashboard-ink);font-weight:750;font-size:13px}.transport-plan-group summary{cursor:pointer;color:var(--dashboard-red-dark);font-weight:750;font-size:13px}.transport-plan-group details ul{margin-top:10px}
@media(max-width:620px){.sales-order-main{align-items:flex-start;flex-direction:column}.sales-order-value{text-align:left}.sales-order-actions{justify-content:stretch}.sales-order-actions button{width:100%}.operations-dialog{padding:24px 20px}.operations-grid,.purchase-parties,.transport-plan-group dl{grid-template-columns:1fr}}
@media(max-width:620px){.sales-submenu{display:grid;grid-template-columns:1fr 1fr;padding:0;border:0;background:transparent}.sales-submenu button{min-height:54px;border-color:var(--dashboard-line);background:#fff}.sales-panel{padding:20px 16px}.sales-panel .section-heading{align-items:flex-start;flex-direction:column}.sales-explainer .primary-action{width:100%}}
.proposal-row{align-items:center}.proposal-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.proposal-row .client-row-details{align-items:center}@media(max-width:620px){.proposal-row-actions{justify-content:flex-start}.proposal-row .client-row-details{align-items:flex-start}}
.proposal-dashboard-head{margin:18px 0}.proposal-search-controls{display:grid;gap:12px;margin:0 0 20px;padding:18px;border:1px solid var(--dashboard-line);border-radius:16px;background:#fff}.proposal-search-controls label{display:grid;gap:7px;font-weight:700;color:var(--dashboard-ink)}.proposal-search-controls input{min-height:44px;padding:10px 12px;border:1px solid var(--dashboard-line);border-radius:10px;font:inherit}.proposal-status-filters{display:flex;flex-wrap:wrap;gap:8px}.proposal-status-filters button{border:1px solid var(--dashboard-line);border-radius:999px;padding:8px 12px;background:#fff;color:var(--dashboard-ink);font:700 13px/1.2 Inter,ui-sans-serif,system-ui,sans-serif;cursor:pointer}.proposal-status-filters button.active,.proposal-status-filters button:hover{border-color:#e6aeb1;background:#fff0f0;color:var(--dashboard-red-dark)}.proposal-status-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.proposal-status-card{display:grid;grid-template-columns:auto 1fr;gap:6px 9px;min-height:160px;padding:18px;border:1px solid var(--dashboard-line);border-radius:16px;background:#fff;text-align:left;color:var(--dashboard-ink);cursor:pointer;box-shadow:0 8px 22px #21191308;transition:transform .16s ease,border-color .16s ease}.proposal-status-card:hover{transform:translateY(-2px);border-color:#d7a2a4}.proposal-status-card strong{grid-column:2;font-size:30px;line-height:1}.proposal-status-card small{grid-column:1/-1;color:var(--dashboard-muted);font-size:12px;line-height:1.42}.proposal-status-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font-weight:900}.proposal-status-card.sent .proposal-status-icon,.proposal-status-badge.sent{background:#e5f1ff;color:#1769b0}.proposal-status-card.not-sent .proposal-status-icon,.proposal-status-badge.not-sent{background:#fff3d7;color:#996500}.proposal-status-card.in-progress .proposal-status-icon,.proposal-status-badge.in-progress{background:#eceef1;color:#59636d}.proposal-status-card.concluded .proposal-status-icon,.proposal-status-badge.concluded{background:#e3f7e9;color:#15733a}.proposal-status-card.not-negotiated .proposal-status-icon,.proposal-status-badge.not-negotiated{background:#fde7e7;color:#b0262a}.proposal-status-badge{display:inline-flex;align-items:center;width:max-content;margin-top:5px;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:800}.proposal-list-page{padding:26px;border:1px solid var(--dashboard-line);border-radius:18px;background:#fff;box-shadow:0 10px 26px #21191308}
@media(max-width:980px){.proposal-status-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:620px){.proposal-status-grid{grid-template-columns:1fr}.proposal-status-card{min-height:124px}.proposal-list-page{padding:20px 16px}.proposal-list-page .section-heading{align-items:flex-start;flex-direction:column}.proposal-list-page .secondary-action{width:100%}}
.field-pending-section{margin:0 0 24px;padding:20px;border:1px solid #f0c8c9;border-radius:16px;background:linear-gradient(135deg,#fff7f7,#fff)}.field-pending-section .section-heading{margin-bottom:14px}.field-pending-list{display:grid;gap:10px}.field-pending-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px;border:1px solid var(--dashboard-line);border-left:4px solid var(--dashboard-red);border-radius:12px;background:#fff}.field-pending-card>div:first-child{display:grid;gap:4px}.field-pending-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.field-pending-card strong{color:var(--dashboard-ink)}.field-pending-card span,.field-pending-card p{font-size:13px;color:var(--dashboard-muted)}.field-pending-card p{margin:3px 0 0}.nav-alert-badge{display:inline-grid;place-items:center;min-width:19px;height:19px;margin-left:auto;border-radius:999px;background:var(--dashboard-red);color:#fff;font-size:11px;font-weight:850}@media(max-width:620px){.field-pending-card{align-items:stretch;flex-direction:column}.field-pending-actions,.field-pending-actions button{width:100%}}
/* Catálogo dentro do Financeiro: estoque, custos e histórico por período. */
.financial-home [data-finance-view="catalogo"]{border-color:#e7b5b7;background:#fff9f8}
[data-finance-panel="catalogo"]>.workspace{margin-top:20px}.catalog-submenu{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 6px}.catalog-submenu button{padding:10px 14px;border:1px solid var(--dashboard-line);border-radius:999px;background:#fff;color:var(--dashboard-ink);font:inherit;font-size:13px;font-weight:800;cursor:pointer}.catalog-submenu button:hover{border-color:var(--dashboard-red);background:#fff1f1;color:var(--dashboard-red-dark)}.financial-catalog-linear .catalog-group{margin-top:26px}.financial-catalog-linear .catalog-grid,.financial-catalog-linear .summary-grid{grid-template-columns:1fr}.financial-catalog-linear .catalog-grid>article,.financial-catalog-linear .summary-grid>article{width:100%}.component-inventory-section{margin-top:28px;padding-top:28px;border-top:1px solid var(--dashboard-line)}.inventory-period{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.inventory-period button{min-width:86px;padding:9px 14px;border:1px solid var(--dashboard-line);border-radius:999px;background:#fff;color:var(--dashboard-muted);font:inherit;font-size:13px;font-weight:800;cursor:pointer}.inventory-period button.active,.inventory-period button:hover{border-color:var(--dashboard-red);background:#fff1f1;color:var(--dashboard-red-dark)}.inventory-summary{margin:16px 0 22px}.inventory-entry-card{padding:22px;border:1px solid var(--dashboard-line);border-radius:16px;background:linear-gradient(145deg,#fff,#fdf9f7);box-shadow:0 8px 22px #21191308}.inventory-entry-card .section-heading{margin-bottom:17px}.inventory-grid{margin-top:20px}.inventory-history-row span{display:block;margin-top:4px}.inventory-history-row>div:last-child{display:grid;gap:4px;text-align:right}.inventory-history-row>div:last-child span{color:var(--dashboard-muted);font-size:12px}.catalog-grid .text-action{margin-left:8px}
@media(max-width:620px){.inventory-history-row>div:last-child{text-align:left}.inventory-period{overflow:auto;flex-wrap:nowrap}.inventory-period button{white-space:nowrap}}
/* Catálogo em subseções: mantém o painel compacto em vez de uma página longa. */
.catalog-submenu{margin-bottom:24px}.catalog-submenu button.active{border-color:var(--dashboard-red);background:#fff1f1;color:var(--dashboard-red-dark)}.financial-catalog-linear .catalog-group{margin-top:0}.catalog-product-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 0;border-bottom:1px solid var(--dashboard-line)}.catalog-product-row:last-child{border-bottom:0}.catalog-product-row>div{display:grid;gap:5px}.catalog-product-row span{color:var(--dashboard-muted);font-size:13px}.catalog-product-row>div:last-child{justify-items:end;text-align:right}@media(max-width:640px){.catalog-product-row{align-items:flex-start;flex-direction:column}.catalog-product-row>div:last-child{justify-items:start;text-align:left}}
/* Navegação acessível em celulares: o menu fica recolhido, mas nunca some. */
.sidebar nav{display:grid;gap:18px}.sidebar-nav-group{display:grid;gap:4px}.sidebar-nav-group>p{margin:0;padding:0 12px 5px;color:#a9a19d;font-size:10px;font-weight:850;letter-spacing:.13em}.sidebar-nav-overview{padding-bottom:12px;border-bottom:1px solid #3b3533}.sidebar-nav-overview a{font-weight:800}.sidebar-nav-group a{display:flex;align-items:center;min-height:38px}.sidebar-nav-group a[data-finance-view]{position:relative}.sidebar-nav-group a[data-finance-view]::after{content:'↗';margin-left:auto;color:#a9a19d;font-size:12px}.sidebar-nav-group a.active[data-finance-view]::after{color:#fff}
.mobile-nav-toggle,.mobile-nav-backdrop{display:none}
@media(max-width:820px){
  .mobile-nav-toggle{position:fixed;z-index:120;top:14px;left:14px;display:inline-flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid #4b4543;border-radius:10px;color:#fff;background:#211b1a;font:800 13px/1 Inter,ui-sans-serif,system-ui,sans-serif;box-shadow:0 8px 22px #0003;cursor:pointer}
  .mobile-nav-toggle span{font-size:18px;line-height:1}
  .mobile-nav-backdrop{position:fixed;z-index:109;inset:0;border:0;background:#0008;opacity:0;pointer-events:none;transition:opacity .2s ease}
  .sidebar{display:flex;position:fixed;z-index:110;top:0;bottom:0;left:0;width:min(286px,82vw);height:100dvh;transform:translateX(-105%);transition:transform .22s ease;box-shadow:18px 0 42px #0005}
  .app-shell.mobile-nav-open .sidebar{transform:translateX(0)}
  .app-shell.mobile-nav-open .mobile-nav-backdrop{display:block;opacity:1;pointer-events:auto}
  .app-shell.mobile-nav-open .mobile-nav-toggle{left:min(242px,calc(82vw - 44px));background:var(--red);border-color:#ef7375}
  main{padding-top:76px}
}
@media(max-width:620px){
  .financial-home .section-submenu{display:grid;grid-template-columns:1fr 1fr;overflow:visible;flex-wrap:wrap;padding:0;background:transparent}
  .financial-home .section-submenu button{min-width:0;min-height:62px;white-space:normal}
}
/* Conforto de leitura e toque em smartphones, sem reduzir o conteúdo. */
@media(max-width:620px){
  html{font-size:16px}
  body,.app-shell,main,.workspace,.financial-home,.quote-workspace,.quote-client-panel,.quote-item{max-width:100%;min-width:0}
  main{padding:82px 16px 28px}
  .mobile-nav-toggle{top:12px;left:12px;min-height:48px;padding:11px 15px;border-radius:12px;font-size:15px}
  .mobile-nav-toggle span{font-size:21px}
  .sidebar{width:min(330px,90vw);padding:25px 20px}
  .sidebar .brand{font-size:24px;gap:12px}
  .sidebar .brand-mark{width:38px;height:38px;border-radius:10px;font-size:20px}
  .sidebar nav{gap:18px;margin-top:30px}
  .sidebar-nav-group{gap:7px}.sidebar-nav-group>p{padding:0 14px 4px;font-size:11px}
  .sidebar nav a,.sidebar-search,.sidebar-logout{min-height:48px;padding:13px 14px;font-size:16px}
  .sidebar-footer{padding:14px;font-size:14px}
  .app-shell.mobile-nav-open .mobile-nav-toggle{left:min(278px,calc(90vw - 50px))}
  .topbar h1,.section-heading h2{font-size:clamp(24px,7vw,30px);line-height:1.12}
  .section-heading h3{font-size:21px;line-height:1.2}
  .panel-copy,.client-row span,.commercial-row span{font-size:14px;line-height:1.5}
  .primary-action,.secondary-action,.section-submenu button{min-height:46px;font-size:15px}
  .form-grid input,.form-grid select,.form-grid textarea,.quote-client-panel input,.quote-client-panel select,.quote-item input,.quote-item select{width:100%;min-width:0;min-height:48px;font-size:16px}
  .form-grid textarea{min-height:92px}
  .quote-client-grid .address-row{grid-template-columns:1fr}
  .quote-item{padding:18px 16px}
  .quote-client-panel,.financial-home{padding:20px 16px}
  .summary-grid article,.catalog-grid>article,.panel{padding:18px 16px}
  .client-row{gap:9px;padding:16px}
  dialog{width:calc(100vw - 24px);max-width:none;max-height:90dvh;padding:0}
  .section-submenu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;flex-wrap:wrap;padding:0;border:0;background:transparent}
  .section-submenu button{min-width:0;min-height:52px;white-space:normal;line-height:1.2}
}
