:root{--blue:#1687f8;--blue-dark:#0f2d5b;--ice:#eaf6ff;--bg:#f7fafc;--text:#0f2d5b;--muted:#6c7f9e;--line:#dce8f4;--green:#15b978;--red:#ef476f;--orange:#f59e0b;--card:#fff;--shadow:0 10px 35px rgba(15,45,91,.08)}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body{min-height:100vh}button,input{font:inherit}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:22px}.brand-mark{width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,#1687f8,#19bad0);color:#fff;display:grid;place-items:center;font-size:22px}.brand span{color:var(--blue)}.login-shell{min-height:100vh;display:grid;place-items:center;padding:22px}.login-card{width:min(100%,430px);background:#fff;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:var(--shadow)}.login-card h1{font-size:32px;margin:24px 0 6px}.muted{color:var(--muted)}.field{display:grid;gap:7px;margin:18px 0}.field label{font-size:14px;font-weight:700}.field input{width:100%;height:52px;border:1px solid var(--line);border-radius:14px;padding:0 15px;outline:none;background:#fff}.field input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(22,135,248,.12)}.btn{border:0;border-radius:14px;min-height:50px;padding:0 18px;font-weight:800;cursor:pointer}.btn-primary{background:linear-gradient(90deg,#1687f8,#0875de);color:#fff;width:100%}.btn:disabled{opacity:.6;cursor:not-allowed}.link{color:var(--blue);text-decoration:none;font-weight:700}.login-links{display:flex;flex-direction:column;align-items:center;gap:18px;margin-top:16px}.message{min-height:24px;margin:10px 0;color:var(--red);font-size:14px}.app-layout{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{background:#0f2d5b;color:#fff;padding:24px 18px}.sidebar .brand{color:#fff}.sidebar nav{display:grid;gap:8px;margin-top:34px}.sidebar a{color:#dbeafe;text-decoration:none;padding:12px 14px;border-radius:12px}.sidebar a.active,.sidebar a:hover{background:rgba(255,255,255,.1);color:#fff}.content{padding:28px;min-width:0}.topbar{display:flex;justify-content:space-between;gap:20px;align-items:center}.topbar h1{margin:0;font-size:28px}.actions{display:flex;gap:10px}.btn-secondary{background:var(--ice);color:var(--blue-dark)}.quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0}.quick{padding:18px;border-radius:18px;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow);font-weight:800;color:var(--text);text-align:left}.quick.primary{background:linear-gradient(135deg,#1687f8,#11a7e7);color:#fff;border:0}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:var(--shadow)}.kpi-label{color:var(--muted);font-size:13px}.kpi-value{font-size:30px;font-weight:900;margin-top:8px}.finance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.section-title{font-size:18px;font-weight:850;margin:28px 0 12px}.empty{padding:28px;text-align:center;color:var(--muted);background:#fff;border:1px dashed var(--line);border-radius:16px}.mobile-nav{display:none}.money{font-weight:900;font-size:24px}.money.green{color:var(--green)}.money.red{color:var(--red)}@media(max-width:900px){.app-layout{display:block;padding-bottom:72px}.sidebar{display:none}.content{padding:18px}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.finance{grid-template-columns:1fr}.quick-actions{grid-template-columns:1fr 1fr}.mobile-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);padding:8px 6px;z-index:20}.mobile-nav a{text-align:center;color:var(--muted);text-decoration:none;font-size:12px}.mobile-nav a.active{color:var(--blue);font-weight:800}.topbar h1{font-size:24px}.kpi-value{font-size:26px}}@media(max-width:420px){.quick-actions{grid-template-columns:1fr}.login-card{padding:22px;border-radius:22px}.content{padding:14px}.kpis{gap:10px}.card{padding:14px}}

/* Módulo Clientes */
.btn-linkish{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:linear-gradient(90deg,#1687f8,#0875de);color:#fff;border-radius:14px;min-height:48px;padding:0 18px;font-weight:800}.btn.auto{width:auto}.toolbar-card{display:flex;justify-content:space-between;gap:14px;align-items:center;margin:22px 0;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:var(--shadow)}.searchbox{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:14px;padding:0 14px;min-width:min(100%,420px);background:#fbfdff}.searchbox input{border:0;outline:0;background:transparent;height:46px;width:100%;font-size:16px}.segmented{display:flex;gap:6px;padding:5px;background:#eef5fb;border-radius:13px}.segmented button{border:0;background:transparent;color:var(--muted);font-weight:800;border-radius:10px;padding:10px 13px;cursor:pointer}.segmented button.is-active{background:#fff;color:var(--blue);box-shadow:0 2px 10px rgba(15,45,91,.08)}.segmented.stretch button{flex:1}.client-list{display:grid;gap:10px}.client-row{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:17px;padding:15px 16px;text-decoration:none;color:var(--text);box-shadow:0 7px 24px rgba(15,45,91,.05);transition:.18s ease}.client-row:hover{transform:translateY(-1px);border-color:#b9d8f5}.avatar{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#e8f4ff,#d6ecff);color:#146dca;font-weight:900;flex:0 0 auto}.avatar.xl{width:66px;height:66px;font-size:20px}.client-row-main{display:grid;gap:3px;min-width:0;flex:1}.client-row-main strong{font-size:16px}.client-row-main span,.client-row-main small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-row-main small{font-size:12px}.chevron{font-size:28px;color:#9bb0c7}.narrow{max-width:900px}.page-back{display:flex;align-items:center;gap:14px;margin-bottom:20px}.page-back>a{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);text-decoration:none;color:var(--text);font-size:22px}.page-back>div{flex:1}.page-back h1{margin:2px 0 0;font-size:28px}.form-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.field.span-2{grid-column:span 2}.field textarea,.field select{width:100%;border:1px solid var(--line);border-radius:14px;padding:13px 15px;outline:none;background:#fff;font:inherit;color:var(--text)}.field textarea:focus,.field select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(22,135,248,.12)}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.form-actions .btn-secondary{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.client-profile-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:16px}.profile-card{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center}.profile-card h2{margin:6px 0 3px}.status-pill{display:inline-flex;width:max-content;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800}.status-pill.success{background:#dcfce7;color:#15803d}.profile-actions{grid-column:1/-1;display:flex;gap:10px}.round-action{flex:1;min-height:62px;border-radius:14px;background:#f5faff;border:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;align-items:center;text-decoration:none;color:var(--blue);font-weight:900;gap:4px}.round-action span{font-size:11px;color:var(--muted)}.round-action.disabled{opacity:.45;pointer-events:none}.info-list{grid-column:1/-1;display:grid;gap:10px;padding-top:8px}.info-list>div{display:grid;grid-template-columns:110px 1fr;gap:10px;padding:10px 0;border-top:1px solid #edf3f8}.info-list b{font-size:13px}.info-list span{color:var(--muted);overflow-wrap:anywhere}.section-head{display:flex;justify-content:space-between;align-items:center}.section-head h2{margin:4px 0}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--blue);font-weight:900}.mini-kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:14px}.mini-kpis>div{padding:14px;background:#f7fbff;border-radius:14px}.mini-kpis strong{display:block;font-size:24px}.mini-kpis span{font-size:12px;color:var(--muted)}.tabs-card{margin-top:16px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);overflow:hidden}.tabs{display:flex;gap:6px;overflow:auto;padding:12px;border-bottom:1px solid var(--line);scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tabs button{border:0;background:transparent;border-radius:10px;padding:10px 12px;white-space:nowrap;color:var(--muted);font-weight:800;cursor:pointer}.tabs button.active{background:var(--ice);color:var(--blue)}#tabContent{padding:16px}.tab-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.tab-head h3{margin:0}.tab-head p{margin:4px 0 0}.equipment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.equipment-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;border:1px solid var(--line);border-radius:15px;padding:14px}.equipment-card>div:nth-child(2){display:grid;gap:4px;min-width:0}.equipment-card strong{font-size:14px}.equipment-card span{color:var(--muted);font-size:12px}.equipment-icon{width:42px;height:42px;border-radius:12px;background:var(--ice);display:grid;place-items:center}.icon-btn{border:0;background:#f3f8fd;color:var(--text);width:38px;height:38px;border-radius:10px;cursor:pointer;font-size:18px}.history-list{display:grid;gap:8px}.history-row{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:13px}.history-row>div{display:grid;gap:3px}.history-row span,.history-row small{color:var(--muted)}.modal{border:0;padding:0;background:transparent;width:min(92vw,700px);max-width:none}.modal::backdrop{background:rgba(8,29,55,.48);backdrop-filter:blur(2px)}.modal-card{background:#fff;border-radius:22px;padding:20px;box-shadow:0 24px 70px rgba(6,31,60,.25);max-height:85vh;overflow:auto}.modal-head{display:flex;align-items:center;justify-content:space-between}.modal-head h2{margin:0}
@media(max-width:900px){.toolbar-card{align-items:stretch;flex-direction:column}.searchbox{min-width:0;width:100%}.client-profile-grid{grid-template-columns:1fr}.equipment-grid{grid-template-columns:1fr}.page-back{align-items:flex-start}.page-back .btn{min-height:42px}.form-card{padding:16px}}@media(max-width:560px){.form-grid{grid-template-columns:1fr}.field.span-2{grid-column:span 1}.segmented{overflow:auto}.segmented button{white-space:nowrap}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%}.profile-actions{gap:6px}.info-list>div{grid-template-columns:1fr}.mini-kpis{grid-template-columns:repeat(2,1fr)}.tabs-card{border-radius:16px}.tab-head{align-items:flex-start;flex-direction:column}.tab-head .btn-linkish{width:100%}}


/* Catálogo de serviços e materiais */
.page-subtitle{margin:6px 0 0}.kpi-value.compact{font-size:26px}.catalog-summary{display:grid;grid-template-columns:180px 220px minmax(0,1fr);gap:14px;margin:22px 0}.catalog-tip{display:flex;flex-direction:column;justify-content:center;gap:6px;background:linear-gradient(135deg,#f6fbff,#eef8ff)}.catalog-tip span{color:var(--muted);font-size:13px}.catalog-toolbar{margin-top:0}.catalog-toolbar .segmented{min-width:300px}.catalog-list{display:grid;gap:10px}.catalog-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:15px 16px;box-shadow:0 7px 24px rgba(15,45,91,.05);transition:.18s ease}.catalog-row.is-disabled{opacity:.58;background:#f8fafc}.catalog-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#eaf6ff,#d9efff);color:var(--blue);font-size:22px}.catalog-icon.material{background:#eef7f5;color:#138f82}.catalog-main{min-width:0}.catalog-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.catalog-main p{margin:6px 0;color:var(--muted);font-size:13px}.category-pill{font-size:11px;font-weight:800;padding:5px 8px;border-radius:999px;background:#eef6ff;color:#2e6ea9}.catalog-meta{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:6px}.catalog-meta b{font-size:17px;color:var(--blue-dark)}.catalog-meta span{font-size:12px;color:var(--muted)}.catalog-actions{display:flex;align-items:center;gap:9px}.switch{position:relative;display:inline-flex;width:46px;height:26px;flex:0 0 auto}.switch input{position:absolute;opacity:0;pointer-events:none}.switch span{position:absolute;inset:0;border-radius:999px;background:#cbd5e1;transition:.2s;cursor:pointer}.switch span:after{content:'';position:absolute;width:20px;height:20px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 1px 5px rgba(0,0,0,.18);transition:.2s}.switch input:checked+span{background:var(--blue)}.switch input:checked+span:after{transform:translateX(20px)}.switch input:focus-visible+span{outline:3px solid rgba(22,135,248,.18);outline-offset:2px}.catalog-form{width:min(92vw,650px)}
@media(max-width:900px){.catalog-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-tip{grid-column:1/-1}.catalog-toolbar .segmented{min-width:0}.catalog-toolbar{gap:10px}}
@media(max-width:560px){.catalog-summary{grid-template-columns:1fr 1fr;gap:10px}.catalog-summary .card{padding:14px}.catalog-tip{grid-column:1/-1}.catalog-toolbar .segmented{width:100%}.catalog-row{grid-template-columns:auto minmax(0,1fr);padding:13px}.catalog-actions{grid-column:2;justify-content:flex-end}.catalog-icon{width:42px;height:42px}.catalog-meta{gap:8px}.topbar .page-subtitle{max-width:250px}.topbar{align-items:flex-start}.topbar>.btn{padding:0 12px;font-size:13px}}

/* Orçamentos */
.quote-toolbar{align-items:flex-start}.quote-toolbar .segmented{overflow:auto;max-width:100%;scrollbar-width:none}.quote-toolbar .segmented::-webkit-scrollbar{display:none}.quote-list{display:grid;gap:10px}.quote-row{display:grid;grid-template-columns:150px minmax(0,1fr) 130px auto 24px;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:15px 16px;color:var(--text);text-decoration:none;box-shadow:0 7px 24px rgba(15,45,91,.05);transition:.18s ease}.quote-row:hover{transform:translateY(-1px);border-color:#b9d8f5}.quote-row-id,.quote-row-client{display:grid;gap:4px;min-width:0}.quote-row-id span,.quote-row-client span{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quote-row-client strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quote-row-total{text-align:right}.status-badge{display:inline-flex;align-items:center;justify-content:center;width:max-content;border-radius:999px;padding:6px 9px;font-size:11px;font-style:normal;font-weight:900}.status-badge.success{background:#dcfce7;color:#15803d}.status-badge.danger{background:#ffe4e6;color:#be123c}.status-badge.info{background:#e0f2fe;color:#0369a1}.status-badge.warning{background:#fef3c7;color:#a16207}.quote-editor{max-width:1040px}.quote-section{margin-bottom:16px}.quote-section h2{font-size:19px;margin:4px 0 0}.quote-picker-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.picker-label{display:block;font-weight:850;margin:0 0 8px}.picker-list{display:grid;gap:8px;max-height:340px;overflow:auto;padding-right:3px}.picker-item{width:100%;border:1px solid var(--line);border-radius:14px;padding:12px;background:#fff;color:var(--text);display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;text-align:left;cursor:pointer}.picker-item:hover{border-color:#aed4f7;background:#f8fcff}.picker-item.material:hover{border-color:#b6e3dc;background:#f7fcfb}.picker-item>span{display:grid;gap:3px;min-width:0}.picker-item strong,.picker-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-item small{color:var(--muted)}.picker-item b{font-size:13px}.picker-item i{width:30px;height:30px;border-radius:9px;background:var(--ice);display:grid;place-items:center;color:var(--blue);font-style:normal;font-weight:900}.quote-items-title{margin:22px 0 10px}.quote-items{display:grid;gap:8px}.quote-item-row{display:grid;grid-template-columns:72px minmax(180px,1fr) 82px 120px 110px 38px;gap:9px;align-items:end;border:1px solid var(--line);border-radius:15px;padding:12px;background:#fbfdff}.quote-item-kind{align-self:center;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:var(--blue)}.quote-item-row input{height:42px;border:1px solid var(--line);border-radius:11px;padding:0 10px;outline:none;min-width:0}.quote-item-row input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(22,135,248,.09)}.item-number{display:grid;gap:4px}.item-number label{font-size:10px;color:var(--muted);font-weight:800}.item-total{align-self:center;text-align:right}.quote-total-card{margin-left:auto;width:min(100%,420px);margin-top:20px;border:1px solid var(--line);border-radius:16px;padding:14px;background:#f8fbfe}.quote-total-card>div{display:flex;justify-content:space-between;gap:16px;padding:7px 0}.quote-total-card span{color:var(--muted)}.quote-total-card .grand{margin-top:6px;padding-top:13px;border-top:1px solid var(--line)}.quote-total-card .grand span,.quote-total-card .grand strong{font-size:20px;color:var(--text);font-weight:900}.quote-document{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px;box-shadow:var(--shadow)}.quote-doc-head{display:flex;justify-content:space-between;gap:24px;padding-bottom:20px;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}.quote-company-name{font-size:23px;color:var(--text);font-weight:900;margin-bottom:7px}.quote-doc-number{display:grid;justify-items:end;gap:5px;text-align:right}.quote-doc-number>span{font-size:11px;letter-spacing:.12em;color:var(--blue);font-weight:900}.quote-doc-number>strong{font-size:19px;color:var(--text)}.quote-doc-client{display:grid;gap:5px;padding:20px 0;color:var(--muted);font-size:13px}.quote-doc-client>span{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:var(--blue);font-weight:900}.quote-doc-client>strong{font-size:18px;color:var(--text)}.quote-doc-client small{margin-top:5px}.quote-doc-table{border:1px solid var(--line);border-radius:15px;overflow:hidden}.quote-doc-tr{display:grid;grid-template-columns:minmax(0,1fr) 70px 115px 115px;gap:10px;padding:12px 14px;border-top:1px solid #edf3f8;align-items:center;font-size:13px}.quote-doc-tr:first-child{border-top:0}.quote-doc-tr.head{background:var(--ice);font-weight:900;color:var(--text);font-size:11px}.quote-doc-tr span:nth-child(n+2),.quote-doc-tr strong{text-align:right}.quote-doc-summary{width:min(100%,360px);margin:18px 0 0 auto}.quote-doc-summary>div{display:flex;justify-content:space-between;padding:8px 0}.quote-doc-summary span{color:var(--muted)}.quote-doc-summary .total{background:var(--blue-dark);color:#fff;border-radius:13px;padding:13px 14px;margin-top:5px}.quote-doc-summary .total span,.quote-doc-summary .total strong{color:#fff;font-size:18px}.quote-doc-notes{display:grid;gap:12px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.quote-doc-notes>div{display:grid;gap:4px}.quote-doc-notes b{font-size:12px;color:var(--blue)}.quote-doc-notes span{white-space:pre-wrap;color:var(--muted)}.quote-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.quote-actions .btn-secondary{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.public-quote-body{background:linear-gradient(180deg,#eef8ff,#f8fbfd 280px)}.public-quote-shell{width:min(100% - 28px,850px);margin:0 auto;padding:28px 0 48px}.quote-document.public{box-shadow:0 20px 55px rgba(15,45,91,.10)}.public-decision{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;margin-top:14px;box-shadow:var(--shadow)}.public-decision p{margin:0 0 14px;color:var(--muted)}.public-decision>div{display:flex;gap:10px;flex-wrap:wrap}.btn.approve{background:#16a66a;color:#fff}.btn.reject{background:#fff0f2;color:#bd2043;border:1px solid #ffd0d8}.public-footer{text-align:center;color:#94a3b8;font-size:12px;padding:22px}.success-message{color:#15803d}.quote-document .empty{box-shadow:none}
@media(max-width:900px){.quote-row{grid-template-columns:120px minmax(0,1fr) auto 24px}.quote-row-total{grid-column:2}.quote-row .status-badge{grid-column:3;grid-row:1/3}.quote-row .chevron{grid-column:4;grid-row:1/3}.quote-picker-grid{grid-template-columns:1fr}.quote-item-row{grid-template-columns:68px minmax(150px,1fr) 70px 104px}.item-total{grid-column:2/4}.quote-item-row .remove-item{grid-column:4}.quote-doc-tr{grid-template-columns:minmax(0,1fr) 55px 96px 96px}}
@media(max-width:620px){.quote-row{grid-template-columns:minmax(0,1fr) auto 20px}.quote-row-id{grid-column:1}.quote-row-client{grid-column:1}.quote-row-total{grid-column:1;text-align:left}.quote-row .status-badge{grid-column:2;grid-row:1/4}.quote-row .chevron{grid-column:3;grid-row:1/4}.quote-item-row{grid-template-columns:1fr 70px 92px 36px;align-items:end}.quote-item-kind{grid-column:1/5}.item-desc{grid-column:1/5}.item-total{grid-column:1/4;text-align:left}.quote-doc-head{flex-direction:column}.quote-doc-number{justify-items:start;text-align:left}.quote-doc-table{overflow-x:auto}.quote-doc-tr{min-width:600px}.quote-document{padding:18px}.public-quote-shell{width:min(100% - 18px,850px);padding-top:14px}.public-decision>div .btn{width:100%}.quote-actions .btn{width:100%}}
.quick-link{text-decoration:none;display:flex;align-items:center}.quick-link:hover{filter:brightness(.99)}

/* FacilitaClima MVP consolidado */
.page-subtitle{margin:6px 0 0;color:var(--muted);font-size:14px}.btn.auto,.btn-primary.auto{width:auto}.btn.approve{background:#16a66a;color:#fff}.kpi-link{text-decoration:none;color:inherit;transition:.18s ease}.kpi-link:hover{transform:translateY(-2px);border-color:#bddbf6}.finance.four{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-section{margin-top:22px}.dashboard-section .section-title{margin:0}.dashboard-head .notification-button{width:48px;height:48px;border:1px solid var(--line);background:#fff;border-radius:15px;display:grid;place-items:center;text-decoration:none;position:relative;box-shadow:var(--shadow);font-size:20px}.notification-button b{position:absolute;right:-4px;top:-5px;background:var(--red);color:#fff;border-radius:999px;min-width:21px;height:21px;padding:0 5px;display:grid;place-items:center;font-size:10px;border:2px solid #fff}.upcoming-row{display:grid;grid-template-columns:135px minmax(0,1fr) 24px;gap:14px;align-items:center;padding:13px 4px;border-top:1px solid #edf3f8;text-decoration:none;color:var(--text)}.upcoming-row:first-child{border-top:0}.upcoming-row time{font-weight:850;color:var(--blue)}.upcoming-row div{display:grid;gap:3px;min-width:0}.upcoming-row span{color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.detail-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:14px;margin:14px 0}.os-hero{display:flex;justify-content:space-between;gap:16px;align-items:center}.os-hero h2{margin:4px 0}.os-hero p{margin:4px 0;color:var(--muted)}.os-actions,.ticket-actions,.row-actions{display:flex;gap:8px;flex-wrap:wrap}.info-list.compact>div{grid-template-columns:125px 1fr}.big-money{font-size:30px;font-weight:950;color:var(--blue-dark);margin:8px 0 10px}.simple-row{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-top:1px solid #edf3f8}.simple-row:first-of-type{border-top:0}.simple-row small{color:var(--muted)}.preline{white-space:pre-wrap}.os-footer-actions{display:flex;gap:10px;justify-content:flex-end;margin:16px 0 34px}.wide-modal{width:min(94vw,780px)}.finish-costs{margin-top:8px;padding-top:14px;border-top:1px solid var(--line)}.finish-costs h3{margin:3px 0}.finish-costs p{margin:4px 0}.cost-row{display:grid;grid-template-columns:160px minmax(150px,1fr) 130px 42px;gap:8px;align-items:center;margin-top:8px}.cost-row select,.cost-row input{height:44px;border:1px solid var(--line);border-radius:11px;padding:0 10px;min-width:0}.photo-upload{display:grid;grid-template-columns:minmax(170px,1fr) minmax(140px,1fr) auto;gap:9px;align-items:center;margin:12px 0}.photo-upload input{min-width:0}.photo-upload input:not([type=file]){height:44px;border:1px solid var(--line);border-radius:11px;padding:0 10px}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.os-photo{position:relative;margin:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#f8fafc}.os-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.os-photo figcaption{padding:8px 10px;color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.os-photo button{position:absolute;right:7px;top:7px;border:0;border-radius:999px;width:30px;height:30px;background:rgba(15,45,91,.82);color:#fff;font-size:18px;cursor:pointer}

.agenda-controls{display:flex;align-items:center;gap:10px;margin:18px 0}.agenda-controls strong{font-size:18px;text-transform:capitalize;min-width:190px}.agenda-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:14px}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.calendar-week{margin-bottom:8px}.calendar-week b{text-align:center;font-size:11px;color:var(--muted)}.calendar-empty{min-height:54px}.calendar-day{border:1px solid transparent;background:#f8fbfe;border-radius:12px;min-height:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text);cursor:pointer;position:relative}.calendar-day:hover{border-color:#bddbf6}.calendar-day.selected{background:var(--blue);color:#fff}.calendar-day.today:not(.selected){border-color:var(--blue);color:var(--blue)}.calendar-day i{font-style:normal;font-size:10px;font-weight:900;margin-top:3px}.calendar-day.selected i{color:#fff}.agenda-item{display:grid;grid-template-columns:66px minmax(0,1fr) 38px;gap:10px;align-items:center;padding:12px 0;border-top:1px solid #edf3f8}.agenda-item:first-child{border-top:0}.agenda-item time{font-weight:900;color:var(--blue)}.agenda-item div{display:grid;gap:3px}.agenda-item span,.agenda-item small{color:var(--muted);font-size:12px}.maintenance-panel{margin-top:14px}.maintenance-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 0;border-top:1px solid #edf3f8}.maintenance-row:first-child{border-top:0}.maintenance-row>div:first-child{display:grid;gap:3px}.maintenance-row span{color:var(--muted);font-size:12px}

.finance-toolbar{display:flex;gap:10px;align-items:end;margin:18px 0}.finance-toolbar label{display:grid;gap:5px;font-size:12px;font-weight:800}.finance-toolbar input,.finance-toolbar select{height:44px;border:1px solid var(--line);border-radius:11px;padding:0 11px;background:#fff;color:var(--text)}.finance-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.finance-kpis .card{display:grid;gap:7px}.finance-row{display:grid;grid-template-columns:42px minmax(0,1fr) 145px auto;gap:12px;align-items:center;padding:13px 0;border-top:1px solid #edf3f8}.finance-row:first-child{border-top:0}.finance-row>div:nth-child(2){display:grid;gap:2px}.finance-row span,.finance-row small{color:var(--muted);font-size:12px}.finance-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#eafbf3;color:var(--green);font-weight:900}.finance-row.expense .finance-icon{background:#fff1f3;color:var(--red)}.green{color:var(--green)}.red{color:var(--red)}

.ticket-list{display:grid;gap:10px}.ticket-row{display:grid;grid-template-columns:46px minmax(0,1fr) auto 24px;gap:12px;align-items:center;text-decoration:none;color:var(--text);background:#fff;border:1px solid var(--line);border-radius:17px;padding:14px;box-shadow:0 7px 24px rgba(15,45,91,.05)}.ticket-icon{width:42px;height:42px;border-radius:13px;background:var(--ice);color:var(--blue);display:grid;place-items:center;font-weight:900}.ticket-row>div:nth-child(2){display:grid;gap:3px;min-width:0}.ticket-row span,.ticket-row small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ticket-detail-card h2{margin:4px 0}.ticket-detail-card select{height:42px;border:1px solid var(--line);border-radius:11px;padding:0 10px;background:#fff}.ticket-photo{width:100%;max-height:420px;object-fit:cover;border-radius:15px;border:1px solid var(--line);margin-top:12px}.ticket-actions{margin-top:14px}

.public-service-body{background:linear-gradient(180deg,#eaf6ff 0,#f8fbfd 330px)}.public-service-shell{width:min(100% - 24px,760px);margin:0 auto;padding:24px 0 45px}.public-company{display:flex;align-items:center;gap:14px;padding:12px 2px}.public-company h1{margin:3px 0;font-size:24px}.public-company p{margin:0;color:var(--muted)}.public-logo{width:64px;height:64px;border-radius:18px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;overflow:hidden;font-size:28px;color:var(--blue);box-shadow:var(--shadow)}.public-logo img{width:100%;height:100%;object-fit:contain}.public-hero{padding:30px 0 18px}.public-hero>span{color:var(--blue);font-weight:900}.public-hero h2{font-size:34px;margin:7px 0}.public-hero p{color:var(--muted);font-size:16px;line-height:1.55;max-width:620px}.public-ticket-form{background:#fff;border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:var(--shadow)}.public-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:13px}.public-benefits>div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px;font-size:12px;color:var(--muted)}.public-success{text-align:center;padding:40px 15px}.success-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#dcfce7;color:#15803d;font-size:28px;font-weight:900;margin:0 auto 14px}.hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important}

.notification-list{display:grid;gap:9px;margin-top:18px}.notification-row{display:grid;grid-template-columns:14px minmax(0,1fr) 20px;gap:10px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;text-decoration:none;color:var(--text)}.notification-row.unread{border-color:#b7daf9;background:#f8fcff}.notification-dot{width:8px;height:8px;border-radius:50%;background:#cbd5e1}.notification-row.unread .notification-dot{background:var(--blue)}.notification-row>div:nth-child(2){display:grid;gap:3px}.notification-row span,.notification-row small{color:var(--muted);font-size:12px}

.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.settings-grid h2{margin:4px 0}.company-logo-preview{width:72px;height:72px;border-radius:18px;border:1px solid var(--line);background:#f8fbfe;display:grid;place-items:center;color:var(--blue);font-size:30px;overflow:hidden}.company-logo-preview img{width:100%;height:100%;object-fit:contain}.inline-upload{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}.inline-upload input{max-width:100%}.slug-input{display:flex;align-items:center;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.slug-input span{padding:0 0 0 12px;font-size:12px;color:var(--muted);white-space:nowrap}.slug-input input{border:0!important;box-shadow:none!important;min-width:0}.danger-zone{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:16px 0 30px}.danger-zone p{margin:5px 0 0}

.onboarding-body{background:linear-gradient(180deg,#eaf6ff,#f8fbfd 420px)}.onboarding-shell{width:min(100% - 24px,720px);margin:0 auto;padding:30px 0}.onboarding-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:24px 0 14px}.onboarding-progress i{height:6px;border-radius:999px;background:#dbe7f2}.onboarding-progress i.active{background:var(--blue)}.onboarding-card{background:#fff;border:1px solid var(--line);border-radius:26px;padding:26px;box-shadow:var(--shadow)}.onboarding-card h1{font-size:34px;margin:8px 0}.service-choice{background:#f7fbff;border:1px solid var(--line);border-radius:16px;padding:15px;margin:10px 0 18px}.choice-chips{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.choice-chips span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 10px;font-size:12px;font-weight:800}

.form-check{display:flex;align-items:center;gap:9px;margin:10px 0;color:var(--text);font-size:14px}.form-check input{width:18px;height:18px}.row-actions{justify-content:flex-end}

@media(max-width:900px){.finance.four,.finance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid,.agenda-grid{grid-template-columns:1fr}.settings-grid{grid-template-columns:1fr}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-benefits{grid-template-columns:1fr}.finance-toolbar{flex-wrap:wrap}.finance-row{grid-template-columns:38px minmax(0,1fr) auto}.finance-row .btn,.finance-row .status-badge{grid-column:2/4;width:max-content}.maintenance-row{align-items:flex-start;flex-direction:column}.row-actions{justify-content:flex-start}.upcoming-row{grid-template-columns:112px minmax(0,1fr) 20px}}
@media(max-width:600px){.os-hero{align-items:flex-start;flex-direction:column}.os-actions{width:100%}.os-actions .btn{flex:1}.cost-row{grid-template-columns:1fr 95px 38px}.cost-row select{grid-column:1/4}.cost-desc{grid-column:1}.photo-upload{grid-template-columns:1fr}.photo-grid{grid-template-columns:1fr 1fr}.agenda-controls{flex-wrap:wrap}.agenda-controls strong{min-width:150px}.calendar-day,.calendar-empty{min-height:46px}.finance-kpis{grid-template-columns:1fr 1fr}.ticket-row{grid-template-columns:42px minmax(0,1fr) 20px}.ticket-row .status-badge{grid-column:2}.ticket-row .chevron{grid-column:3;grid-row:1/3}.public-hero h2{font-size:29px}.public-ticket-form{padding:15px}.onboarding-card{padding:19px}.onboarding-card h1{font-size:29px}.slug-input{display:block}.slug-input span{display:block;padding:10px 12px 0}.upcoming-row{grid-template-columns:1fr 20px}.upcoming-row time{grid-column:1}.upcoming-row div{grid-column:1}.upcoming-row .chevron{grid-column:2;grid-row:1/3}.finance-row{grid-template-columns:34px minmax(0,1fr)}.finance-row>strong{grid-column:2}.finance-row .btn,.finance-row .status-badge{grid-column:2}.finance.four{grid-template-columns:1fr 1fr}}
.public-company{justify-content:flex-start}.public-company>div:nth-child(2){flex:1}.public-wa{margin-left:auto;text-decoration:none}.public-how{margin-top:14px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:var(--shadow)}.public-how>div{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}.public-how article{display:grid;gap:7px}.public-how article b{width:32px;height:32px;border-radius:10px;background:var(--ice);color:var(--blue);display:grid;place-items:center}.public-how p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}@media(max-width:600px){.public-company{align-items:flex-start;flex-wrap:wrap}.public-wa{width:100%;margin:0}.public-how>div{grid-template-columns:1fr}}
