
/* O fechamento aparece uma vez por registro; títulos repetidos mantêm apenas o selo da área de status. */
.cli-card .cli-title [data-commercial-closure],
#clientes-list tbody td:first-child [data-commercial-closure]{display:none}
*{box-sizing:border-box;margin:0;padding:0}
:root{--bg:#070d17;--surface:#0e1623;--surface2:#141f30;--surface3:#1b283d;--border:#243348;--border-strong:#2e4260;--accent:#7c6fff;--accent-hover:#9389ff;--accent2:#22d3c8;--text:#eef2f8;--muted:#8898b0;--green:#2ec78a;--red:#f56b84;--warn:#f5a623;--purple:#a78bfa;--chart-grid:#1a2a40;--cad-grid:rgba(124,111,255,.09);--cad-line:#2e4260;--cad-dim:#22d3c8;--cad-cut:#f5a623;--cad-waste:#f56b84;--glass-bg:rgba(14,22,35,.76);--glass-border:rgba(124,111,255,.2);--glass-blur:16px;--font-mono:'SFMono-Regular',Consolas,'Liberation Mono',monospace;--font-sans:Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--shadow:0 16px 48px #00000060;--shadow-sm:0 4px 16px #00000040;--rail:68px;--sb:224px;--shell:292px;--radius:14px;--radius-sm:9px;--radius-xs:6px}
[data-theme=light]{--bg:#f3f6fb;--surface:#ffffff;--surface2:#f7f9fc;--surface3:#eef2f7;--border:#dbe3ee;--border-strong:#c7d2e2;--accent:#574fc7;--accent-hover:#463db8;--accent2:#087f73;--text:#172033;--muted:#526177;--green:#067451;--red:#c92f4d;--warn:#9a5700;--purple:#654db8;--chart-grid:#e1e7f0;--cad-grid:rgba(87,79,199,.075);--cad-line:#c7d2e2;--cad-dim:#087f73;--glass-bg:rgba(255,255,255,.92);--glass-border:rgba(87,79,199,.24);--shadow:0 12px 32px #1e293b14;--shadow-sm:0 3px 12px #1e293b12}
body{font-family:var(--font-sans);background:var(--bg);color:var(--text);min-height:100vh;display:flex;line-height:1.5;letter-spacing:-.01em;transition:background .2s,color .2s}
/* SIDEBAR */
#sidebar{width:var(--sb);min-height:100vh;background:var(--surface);border-right:1px solid var(--border);position:fixed;left:0;top:0;bottom:0;display:flex;flex-direction:column;z-index:200;transition:width .2s,transform .2s}
body.sb-collapsed #sidebar{width:60px}
.sb-logo{padding:20px 16px 16px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--border);overflow:hidden;white-space:nowrap}
.sb-logo-icon{width:62px;height:44px;object-fit:contain;border-radius:7px;background:#fff;flex-shrink:0}
.sb-logo-text{font-size:14px;font-weight:700;line-height:1.2}
.sb-logo-sub{font-size:11px;color:var(--muted)}
body.sb-collapsed .sb-logo-text,.sb-collapsed .sb-logo-sub{display:none}
.sb-nav{flex:1;overflow-y:auto;padding:8px 0}
.sb-section{padding:16px 12px 4px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--muted);white-space:nowrap;overflow:hidden}
body.sb-collapsed .sb-section{visibility:hidden}
/* Collapsible groups */
.sb-group-hdr{display:flex;align-items:center;gap:8px;padding:10px 14px 5px;cursor:pointer;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--muted);border-radius:8px;margin:2px 8px 0;user-select:none;transition:background .15s;border:none;background:none;width:calc(100% - 16px);text-align:left}
.sb-group-hdr:hover{background:var(--surface2);color:var(--text)}
.sb-group-items{overflow:hidden;transition:max-height .2s}
.sb-group-items.sb-grp-collapsed{display:none}
body.sb-collapsed .sb-group-hdr .sb-label{display:none}
body.sb-collapsed .sb-group-hdr{padding:6px 14px;justify-content:center}
.sb-item{display:flex;align-items:center;gap:10px;padding:9px 14px;cursor:pointer;color:var(--muted);font-size:13px;border-radius:8px;margin:1px 8px;transition:.15s;white-space:nowrap;overflow:hidden;border:none;background:none;width:calc(100% - 16px);text-align:left}
.sb-item:hover{background:var(--surface2);color:var(--text)}
.sb-icon{display:inline-flex;align-items:center;justify-content:center;line-height:1}.sb-item .sb-icon{font-size:16px;flex-shrink:0;width:20px;text-align:center}
body.sb-collapsed .sb-label{display:none}
.sb-badge{margin-left:auto;background:var(--red);color:#fff;font-size:10px;font-weight:700;padding:2px 6px;border-radius:99px;flex-shrink:0}
body.sb-collapsed .sb-badge{display:none}
/* MAIN */
#main{margin-left:var(--shell);width:calc(100% - var(--shell));min-height:100vh;display:flex;flex-direction:column;transition:margin .2s,width .2s}
body.sb-collapsed #sidebar{transform:translateX(-110%)}body.sb-collapsed #main{margin-left:var(--rail);width:calc(100% - var(--rail))}
/* TOPBAR */
#topbar{height:56px;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:12px;padding:0 20px;position:sticky;top:0;z-index:100}
#sb-toggle{border:none;background:none;color:var(--muted);cursor:pointer;font-size:18px;padding:6px;border-radius:6px;flex-shrink:0;transition:.15s}
#sb-toggle:hover{background:var(--surface2);color:var(--text)}
#search-wrap{position:relative;flex:1;max-width:340px}
#search-wrap input{width:100%;background:var(--surface2);border:1px solid var(--border);border-radius:24px;padding:7px 12px 7px 34px;color:var(--text);font-size:13px;outline:none;transition:.2s}
#search-wrap input:focus{border-color:var(--accent);background:var(--surface)}
#search-wrap>.ti-search{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:13px;color:var(--muted);pointer-events:none}
#search-results{position:absolute;top:38px;left:0;right:0;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);max-height:300px;overflow-y:auto;z-index:300;display:none}
.sr-item{padding:10px 14px;cursor:pointer;font-size:13px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--border)}
.sr-item:last-child{border:none}
.sr-item:hover{background:var(--surface2)}
.sr-tag{font-size:10px;color:var(--muted);background:var(--surface2);padding:2px 6px;border-radius:4px;flex-shrink:0}
.tb-spacer{flex:1}
.tb-tenant-info{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;line-height:1.3;margin-right:14px;text-align:right}
.tb-tenant-info[hidden]{display:none}
.tb-tenant-name{font-size:12.5px;font-weight:700;color:var(--text)}
.tb-tenant-branch{font-size:10.5px;color:var(--muted)}
@media(max-width:900px){.tb-tenant-info{display:none!important}}
.tb-actions{display:flex;align-items:center;gap:4px}
.tb-btn{border:none;background:none;color:var(--muted);cursor:pointer;padding:7px 9px;border-radius:8px;font-size:16px;transition:.15s}
.tb-btn:hover{background:var(--surface2);color:var(--text)}
.tb-user{font-size:12px;color:var(--muted);padding:0 8px;white-space:nowrap}
.tb-profile{display:flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--text);padding:4px 7px;border-radius:10px;cursor:pointer;max-width:230px}
.tb-profile:hover{background:var(--surface2)}
.tb-account{position:relative}
.tb-avatar-wrap{position:relative;display:grid;place-items:center;flex:0 0 auto}
.profile-presence-dot{position:absolute;right:-1px;bottom:-1px;width:10px;height:10px;border-radius:50%;border:2px solid var(--surface);background:var(--green)}
.profile-presence-dot.absent{background:var(--warn)}.profile-presence-dot.busy{background:var(--red)}
.account-menu{position:absolute;right:0;top:calc(100% + 10px);width:min(340px,calc(100vw - 24px));max-height:min(720px,calc(100vh - 78px));overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:0 24px 64px rgba(13,43,78,.18);padding:10px;display:none;color:var(--text);z-index:520}
.account-menu.open{display:block}.account-menu-head{width:100%;display:flex;align-items:center;gap:11px;text-align:left;border:0;background:transparent;color:var(--text);padding:10px;border-radius:12px;cursor:pointer}
.account-menu-head:hover,.account-menu-item:hover{background:var(--surface2)}.account-menu-head .user-avatar{width:44px;height:44px}
.account-menu-name,.account-menu-meta{display:block}.account-menu-name{font-size:14px;font-weight:800;line-height:1.3}.account-menu-meta{font-size:11px;color:var(--muted);margin-top:2px}
.account-presence{padding:10px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin:3px 0 6px}.account-presence-label{display:block;font-size:10.5px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.presence-options{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.presence-option{border:1px solid var(--border);background:var(--surface2);color:var(--text);border-radius:9px;padding:7px 5px;font-size:11px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px}
.presence-option::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--green)}.presence-option[data-status="absent"]::before{background:var(--warn)}.presence-option[data-status="busy"]::before{background:var(--red)}
.presence-option.active{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 13%,transparent)}
.account-plan-card{width:100%;border:1px solid transparent;background:linear-gradient(var(--surface),var(--surface)) padding-box,linear-gradient(135deg,var(--accent),var(--warn)) border-box;color:var(--text);border-radius:14px;padding:12px;margin:7px 0 9px;display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer;font:inherit}.account-plan-card:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(13,43,78,.12)}.account-plan-card i{font-size:19px;color:var(--accent);-webkit-text-fill-color:currentColor}.account-plan-card strong{display:block;font-size:12.5px}.account-plan-card small{display:block;color:var(--muted);font-size:10.5px;line-height:1.35;margin-top:2px}.account-plan-card .ti-chevron-right{margin-left:auto;font-size:14px;color:var(--muted)}
.account-menu-list{display:grid;gap:3px}.account-menu-divider{height:1px;background:var(--border);margin:5px 8px}.account-menu-item{width:100%;border:0;background:transparent;color:var(--text);border-radius:11px;padding:10px;display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer;font:inherit;font-size:12.5px;font-weight:650}
.account-menu-item i{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--surface2);font-size:15px}.account-menu-item small{margin-left:auto;color:var(--muted);font-size:10.5px}.account-menu-item.danger{color:var(--red)}
.account-menu-build{margin-top:6px;padding:8px 10px 4px;font-size:10px;color:var(--muted);text-align:center;letter-spacing:.04em;border-top:1px solid var(--border)}
.tb-theme{position:relative}
.theme-menu{position:absolute;right:0;top:calc(100% + 10px);width:min(260px,calc(100vw - 24px));background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 24px 64px rgba(13,43,78,.18);padding:8px;display:none;color:var(--text);z-index:520}
.theme-menu.open{display:block}
.theme-menu-label{padding:6px 10px 8px;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.theme-menu-item{width:100%;border:0;background:transparent;color:var(--text);border-radius:10px;padding:9px 10px;display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer;font:inherit;font-size:12.5px;font-weight:600}
.theme-menu-item:hover{background:var(--surface2)}
.theme-menu-item i:first-child{width:20px;text-align:center;flex-shrink:0}
.theme-menu-check{margin-left:auto;opacity:0;color:var(--brand-primary,var(--accent))}
html[data-theme='dark'] .theme-menu-check{color:var(--brand-gold,#E2C15A)}
.theme-menu-item[aria-checked="true"] .theme-menu-check{opacity:1}
.theme-menu-item[aria-checked="true"]{background:color-mix(in srgb,var(--brand-primary,var(--accent)) 10%,transparent);font-weight:700}
html[data-theme='dark'] .theme-menu-item[aria-checked="true"]{background:color-mix(in srgb,var(--brand-gold,#E2C15A) 10%,transparent)}
.usage-page-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-wrap:wrap;margin-bottom:18px}.usage-page-actions{display:flex;gap:8px;flex-wrap:wrap}.usage-eyebrow{display:block;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:5px}.usage-source-note{margin-bottom:14px}.usage-subscription-card,.usage-overall,.usage-recommendation,.usage-checkout-gate{border:1px solid var(--border);border-radius:18px;background:var(--surface);padding:20px;margin-bottom:16px;display:flex;align-items:center;justify-content:space-between;gap:24px}.usage-subscription-card h2,.usage-overall h2,.usage-recommendation h2,.usage-checkout-gate h2{margin:0 0 5px;font-size:22px}.usage-subscription-card p,.usage-overall p,.usage-recommendation p,.usage-checkout-gate p{margin:0;color:var(--muted);font-size:12.5px;line-height:1.55}.usage-subscription-meta{display:grid;gap:7px;min-width:220px;font-size:12px}.usage-overall{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 8%,var(--surface)),var(--surface))}.usage-overall-ring{--usage:0;width:118px;height:118px;border-radius:50%;flex:0 0 auto;display:grid;place-items:center;align-content:center;background:radial-gradient(circle closest-side,var(--surface) 78%,transparent 80% 99%),conic-gradient(var(--green) calc(var(--usage)*1%),var(--surface2) 0);text-align:center}.usage-overall.attention .usage-overall-ring,.usage-overall.near .usage-overall-ring{background:radial-gradient(circle closest-side,var(--surface) 78%,transparent 80% 99%),conic-gradient(var(--warn) calc(var(--usage)*1%),var(--surface2) 0)}.usage-overall.critical .usage-overall-ring,.usage-overall.limit .usage-overall-ring{background:radial-gradient(circle closest-side,var(--surface) 78%,transparent 80% 99%),conic-gradient(var(--red) calc(var(--usage)*1%),var(--surface2) 0)}.usage-overall-ring strong{font-size:24px}.usage-overall-ring small{font-size:9.5px;color:var(--muted);max-width:74px}.usage-section-head{display:flex;align-items:end;justify-content:space-between;margin:22px 0 12px}.usage-section-head h2{margin:0;font-size:18px}.usage-section-head p{margin:3px 0 0;color:var(--muted);font-size:11.5px}.usage-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:12px;margin-bottom:16px}.usage-metric-card{border:1px solid var(--border);border-top:3px solid var(--green);background:var(--surface);border-radius:14px;padding:15px;min-height:176px}.usage-metric-card.attention,.usage-metric-card.near{border-top-color:var(--warn)}.usage-metric-card.critical,.usage-metric-card.limit{border-top-color:var(--red)}.usage-metric-card.unmetered{border-top-color:var(--muted)}.usage-metric-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;font-size:11px;color:var(--muted)}.usage-status{font-size:9px;font-weight:800;text-transform:uppercase;text-align:right}.usage-metric-card>strong{display:block;font-size:20px;margin:13px 0 10px}.usage-meter{height:8px;border-radius:999px;background:var(--surface2);overflow:hidden}.usage-meter span{display:block;height:100%;border-radius:inherit;background:var(--green)}.usage-metric-card.attention .usage-meter span,.usage-metric-card.near .usage-meter span{background:var(--warn)}.usage-metric-card.critical .usage-meter span,.usage-metric-card.limit .usage-meter span{background:var(--red)}.usage-meter.unmetered span{width:35%;background:repeating-linear-gradient(135deg,var(--muted) 0 4px,transparent 4px 8px);opacity:.45}.usage-metric-foot{font-size:10.5px;color:var(--muted);line-height:1.45;margin-top:9px;min-height:30px}.usage-metric-card details{font-size:10px;color:var(--muted);margin-top:7px}.usage-metric-card summary{cursor:pointer;font-weight:700}.usage-recommendation{border-left:4px solid var(--green)}.usage-recommendation.attention,.usage-recommendation.near_limit{border-left-color:var(--warn)}.usage-recommendation.critical,.usage-recommendation.limit_reached{border-left-color:var(--red)}.usage-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.usage-plan-comparison{margin-bottom:16px}.usage-plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.usage-plan-option{border:1px solid var(--border);border-radius:12px;padding:14px;display:grid;gap:9px}.usage-plan-option.current{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 12%,transparent)}.usage-plan-option div{display:flex;justify-content:space-between;gap:8px}.usage-plan-option div span{font-size:9px;color:var(--green);font-weight:800}.usage-plan-option p,.usage-plan-option small{margin:0;color:var(--muted);font-size:11px}.usage-secondary-grid{margin-bottom:16px}.usage-history-bars{height:185px;display:flex;align-items:end;gap:12px;padding:12px 4px 0}.usage-history-col{flex:1;min-width:30px;text-align:center;font-size:9px;color:var(--muted)}.usage-history-col>div{height:120px;background:var(--surface2);border-radius:8px 8px 3px 3px;display:flex;align-items:end;overflow:hidden;margin:5px 0}.usage-history-col i{width:100%;display:block;background:linear-gradient(var(--accent),var(--green));border-radius:6px 6px 0 0}.usage-caption{font-size:10px}.usage-forecast strong{display:block;font-size:18px;margin:12px 0 7px}.usage-forecast p{color:var(--muted);font-size:11.5px;line-height:1.55}.usage-checkout-gate{margin-top:16px;background:color-mix(in srgb,var(--warn) 5%,var(--surface))}.usage-gate-list{display:grid;gap:8px;font-size:11px;min-width:300px}.usage-gate-list span{display:flex;gap:7px;align-items:center}.usage-gate-list i{color:var(--green);font-size:16px}@media(max-width:760px){.usage-subscription-card,.usage-overall,.usage-recommendation,.usage-checkout-gate{align-items:flex-start;flex-direction:column}.usage-overall-ring{align-self:center}.usage-subscription-meta,.usage-gate-list{min-width:0;width:100%}.usage-actions{justify-content:flex-start}.usage-page-actions .btn{flex:1}.usage-secondary-grid{grid-template-columns:1fr}}
#org-switcher,#logout-btn{display:none!important}
.user-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;border:1px solid var(--border);background:var(--accent);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800;flex:0 0 auto;overflow:hidden}
.user-avatar img{width:100%;height:100%;object-fit:cover}
.profile-photo-editor{width:112px;height:112px;border-radius:50%;overflow:hidden;border:3px solid var(--surface);box-shadow:0 0 0 1px var(--border);background:var(--surface2);display:grid;place-items:center;font-size:34px;font-weight:800;color:var(--accent);margin:auto}
.profile-photo-editor img{width:100%;height:100%;object-fit:cover}
.member-profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}
.member-profile-card{border:1px solid var(--border);border-radius:12px;padding:12px;display:flex;gap:11px;align-items:flex-start;background:var(--surface)}
.sync-pill{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--muted);padding:4px 10px;background:var(--surface2);border-radius:99px}
.sync-dot{width:6px;height:6px;border-radius:50%;background:var(--green)}
.sync-dot.syncing{background:var(--warn);animation:pulse 1s infinite}
@keyframes pulse{50%{opacity:.3}}
@keyframes shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
/* CONTENT */
#content{flex:1;padding:26px 30px;max-width:1680px;width:100%;margin:0 auto}
.page{display:none}
.page.active{display:block}
/* TYPOGRAPHY */
.page-title{font-size:32px;line-height:40px;font-weight:800;letter-spacing:-.03em;color:var(--text);margin-bottom:2px}
.page-sub{color:var(--muted);font-size:14px;margin-top:4px;margin-bottom:22px}
/* CARDS */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:14px;margin-bottom:20px}
.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:18px;box-shadow:var(--shadow)}
.card label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.8px;display:block}
.card .val{font-size:22px;font-weight:700;margin:5px 0 2px}
.card .sub{font-size:11px;color:var(--muted)}
.card.green .val{color:var(--green)}.card.red .val{color:var(--red)}.card.warn .val{color:var(--warn)}.card.accent .val{color:var(--accent)}.card.purple .val{color:var(--purple)}
/* GRID */
.g2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.g3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-bottom:16px}
@media(max-width:1100px){.g3{grid-template-columns:1fr 1fr}}
@media(max-width:768px){.g2,.g3{grid-template-columns:1fr}body{display:block}#sidebar{transform:translateX(-100%)}#main{margin-left:0;width:100%}body.sb-open #sidebar{transform:translateX(0)}}
/* PANEL */
.panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px;box-shadow:var(--shadow);margin-bottom:16px}
.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.panel-header h3{font-size:14px;font-weight:600}
/* TABLE */
table{width:100%;border-collapse:collapse;font-size:13px}
th{text-align:left;padding:8px 12px;color:var(--muted);font-weight:500;border-bottom:1px solid var(--border);white-space:nowrap}
td{padding:9px 12px;border-bottom:1px solid var(--border);vertical-align:middle}
tr:last-child td{border-bottom:none}
tr:hover td{background:var(--surface2)}
/* BADGE */
.badge{display:inline-block;padding:3px 8px;border-radius:20px;font-size:11px;font-weight:600}
.b-orcado{background:#9c96ff22;color:#9c96ff}.b-ag_aprovacao{background:#6c63ff22;color:#9c96ff}
.b-aprovado{background:#00d4aa22;color:var(--green)}.b-ag_medicao,.b-medido,.b-projeto{background:#00b8d422;color:#00d4e8}
.b-ag_material{background:#ffa94d22;color:var(--warn)}.b-em_corte,.b-em_acabamento,.b-em_montagem{background:#ff7b4d22;color:#ff9466}
.b-pronto,.b-instalado{background:#69db7c22;color:#69db7c}.b-entregue{background:#00d4aa22;color:var(--green)}
.b-pos_venda{background:#6c63ff22;color:#9c96ff}.b-pago{background:var(--surface2);color:var(--muted)}
.b-cancelado{background:#ff4d6d22;color:var(--red)}.b-perdido{background:#ff4d6d22;color:var(--red)}
.b-novo{background:#9c96ff22;color:#9c96ff}.b-contato{background:#6c63ff22;color:#9c96ff}
.b-orcamento{background:#ffa94d22;color:var(--warn)}.b-negociacao{background:#00d4aa22;color:var(--green)}
.b-fechado{background:#69db7c22;color:#69db7c}
.b-entrada{background:#00d4aa22;color:var(--green)}.b-saida{background:#ff4d6d22;color:var(--red)}
.b-pendente{background:#ffa94d22;color:var(--warn)}.b-recebido{background:#00d4aa22;color:var(--green)}
.b-vence{background:#ff4d6d22;color:var(--red)}.b-alta{background:#ff4d6d22;color:var(--red)}
.b-normal{background:#ffa94d22;color:var(--warn)}.b-baixa{background:#00d4aa22;color:var(--green)}
.b-urgente{background:#ff4d6d44;color:var(--red);animation:pulse 1.5s infinite}
/* BTNS */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 15px;border-radius:var(--radius-sm);border:none;cursor:pointer;font-size:13px;line-height:1.2;font-weight:700;min-height:40px;letter-spacing:-.01em;box-shadow:none;transition:transform .15s,box-shadow .15s,background .15s,opacity .15s;-webkit-text-fill-color:currentColor;position:relative;overflow:hidden}
.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{opacity:.88}
.btn-ghost{background:var(--surface2);color:var(--text);border:1px solid var(--border)}.btn-ghost:hover{background:var(--border)}
.btn-close{background:var(--surface3);color:var(--text);border:1.5px solid var(--border-strong);font-weight:600}.btn-close:hover{background:var(--border)}
.btn-danger{background:#ff4d6d18;color:var(--red);border:1px solid #ff4d6d33}
.btn-sm{min-height:34px;padding:6px 11px;font-size:12px}
.actions{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap;align-items:center}
/* FORMS */
.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));column-gap:12px;row-gap:14px;margin-bottom:14px}
.dash-tabs{display:flex;gap:7px;overflow-x:auto;padding-bottom:5px;margin-bottom:16px;scrollbar-width:thin}.dash-tab{white-space:nowrap}.dash-area{display:none}.dash-area.active{display:block}.dash-section-title{display:flex;align-items:center;gap:9px;font-size:15px;font-weight:800;margin:4px 0 12px}.dash-section-title:after{content:'';height:1px;background:var(--border);flex:1}
.macro-pipeline{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 10px;scrollbar-width:thin}.macro-stage{min-width:142px;flex:1;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);padding:10px;cursor:pointer}.macro-stage:hover{border-color:var(--accent);background:var(--surface2);transform:translateY(-1px)}.macro-stage small,.macro-stage .sub{color:var(--muted)}.macro-stage .n{font-size:22px;font-weight:800;margin:3px 0;color:var(--text)}.macro-order{display:grid;grid-template-columns:minmax(190px,1.4fr) minmax(120px,.8fr) minmax(110px,.7fr) minmax(100px,.6fr) auto;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--border)}.macro-order:last-child{border-bottom:0}.macro-order:hover{background:var(--surface2)}.macro-progress{display:flex;gap:2px}.macro-progress span{height:5px;flex:1;border-radius:3px;background:var(--border)}.macro-progress span.done{background:var(--accent)}.macro-progress span.current{background:var(--warn)}@media(max-width:800px){.macro-order{grid-template-columns:1fr auto}.macro-order .macro-hide-mobile{display:none}}
.detalhe-footer{display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);align-items:stretch!important;gap:10px!important;position:static!important;bottom:auto!important;margin:20px 0 0!important;padding:16px 0 0!important;border-radius:0!important;box-shadow:none!important}.detalhe-footer-top{margin:14px 0 22px!important}.detalhe-action-group{display:flex;gap:7px;align-items:center;flex-wrap:wrap;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface2);min-width:0}.detalhe-action-label{font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);min-width:74px}.detalhe-action-label-wide{width:118px}.detalhe-action-group .btn-primary{margin-left:0}.detalhe-action-group.is-primary{order:-1;grid-column:1/-1;border-color:color-mix(in srgb,var(--accent) 34%,var(--border));background:color-mix(in srgb,var(--accent) 7%,var(--surface2))}.detalhe-action-group.is-primary .btn-primary{margin-left:0!important}.detalhe-action-group .btn{white-space:nowrap}
.commercial-flow{display:grid;grid-template-columns:repeat(6,minmax(118px,1fr));gap:8px;margin:12px 0 14px}.commercial-step{border:1px solid var(--border);border-radius:10px;background:var(--surface2);padding:9px 10px;color:var(--muted);min-height:58px;cursor:pointer;transition:transform .15s,border-color .15s,box-shadow .15s}.commercial-step:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:var(--shadow-sm,0 2px 8px rgba(0,0,0,.08))}.commercial-step small{display:block;font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin-bottom:3px}.commercial-step strong{display:block;font-size:12px;color:var(--text)}.commercial-step.done{border-color:color-mix(in srgb,var(--green) 40%,var(--border));background:color-mix(in srgb,var(--green) 8%,var(--surface2))}.commercial-step.current{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 11%,var(--surface2));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 16%,transparent)}.commercial-step.blocked{border-color:color-mix(in srgb,var(--red) 45%,var(--border));background:color-mix(in srgb,var(--red) 7%,var(--surface2))}.commercial-step.next{border-color:color-mix(in srgb,var(--warn) 48%,var(--border));background:color-mix(in srgb,var(--warn) 9%,var(--surface2))}.commercial-step.future{border-color:color-mix(in srgb,var(--accent) 20%,var(--border));background:color-mix(in srgb,var(--accent) 4%,var(--surface2))}.commercial-next{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0 12px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface2);font-size:12px;color:var(--muted)}.commercial-next strong{color:var(--text)}.commercial-next i{color:var(--accent)}.lead-card-actions,.orc-card-actions{align-items:center}.action-spacer{flex:1 1 auto}.action-danger-zone{margin-left:auto}@media(max-width:860px){.commercial-flow{grid-template-columns:repeat(3,minmax(0,1fr))}.detalhe-footer{grid-template-columns:1fr!important}.action-danger-zone{margin-left:0}}@media(max-width:520px){.commercial-flow{grid-template-columns:1fr 1fr}.commercial-step{min-height:52px}.detalhe-action-label{width:100%;min-width:0}.detalhe-action-group .btn{flex:1;justify-content:center}}
.detail-context-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 14px}.detail-context{padding:11px 13px;border:1px solid var(--border);border-radius:10px;background:var(--surface2)}.detail-context small{display:block;color:var(--muted);font-size:9.5px;text-transform:uppercase;letter-spacing:.6px;font-weight:800;margin-bottom:5px}.detail-context strong{font-size:12.5px;line-height:1.45}.detail-fin-title{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.7px;font-weight:800;margin:0 0 7px}.detail-next-action{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border));border-left:4px solid var(--accent);border-radius:10px;background:color-mix(in srgb,var(--accent) 7%,var(--surface2));padding:12px 14px;margin:0 0 12px}.detail-next-action.blocked{border-color:color-mix(in srgb,var(--red) 38%,var(--border));border-left-color:var(--red);background:color-mix(in srgb,var(--red) 7%,var(--surface2))}.detail-next-action small{display:block;color:var(--muted);font-size:9.5px;text-transform:uppercase;letter-spacing:.7px;font-weight:800;margin-bottom:3px}.detail-next-action strong{display:block;font-size:13px}.detail-next-action p{font-size:11.5px;color:var(--muted);line-height:1.4;margin-top:3px}.detail-next-action-btn{white-space:nowrap;padding:10px 20px;font-size:13px;font-weight:800;border-radius:10px;background:var(--accent);box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 30%,transparent)}.detail-next-action.blocked .detail-next-action-btn{background:var(--red);box-shadow:0 4px 12px color-mix(in srgb,var(--red) 30%,transparent)}@media(max-width:640px){.detail-next-action{grid-template-columns:1fr}.detail-next-action-btn{width:100%}}.detail-system-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 16px}.detail-system-card{display:flex;flex-direction:column;border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:10px;background:var(--surface2);padding:12px;min-height:118px}.detail-system-card.ok{border-left-color:var(--green)}.detail-system-card.warn{border-left-color:var(--warn)}.detail-system-card.blocked{border-left-color:var(--red)}.detail-system-card small{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:9.5px;text-transform:uppercase;letter-spacing:.6px;font-weight:800;margin-bottom:6px}.detail-system-card strong{display:block;font-size:13px;line-height:1.35}.detail-system-card p{font-size:11.5px;color:var(--muted);line-height:1.45;margin-top:5px}.detail-system-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;padding-top:9px}.detail-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0 0}.detail-meta-item{border:1px solid var(--border);border-radius:10px;background:var(--surface2);padding:10px 12px;min-height:62px;min-width:0}.detail-meta-item small{display:block;color:var(--muted);font-size:9.5px;text-transform:uppercase;letter-spacing:.6px;font-weight:800;margin-bottom:6px}.detail-meta-item strong{display:block;font-size:12.5px;line-height:1.38;overflow-wrap:anywhere}.detail-meta-item.wide{grid-column:span 2}.detail-meta-item .badge{vertical-align:middle}@media(max-width:980px){.detail-system-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.detail-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.detail-context-grid,.detail-system-grid{grid-template-columns:1fr}.detail-meta-grid{grid-template-columns:1fr}.detail-meta-item.wide{grid-column:auto}}
#modal-detalhe{padding:10px 24px}#modal-detalhe .modal{width:min(1120px,calc(100vw - 48px));max-width:min(1120px,calc(100vw - 48px));padding-left:30px;padding-right:30px}#modal-detalhe .modal h2{margin-left:-30px;margin-right:-30px;padding-left:30px;padding-right:30px}.detail-fin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.detail-fin-grid .card{min-height:64px;padding:10px 12px;overflow:visible}.detail-fin-grid .card label{font-size:9.5px}.detail-fin-grid .card .val{font-size:clamp(14px,1.3vw,17px)!important;line-height:1.15;white-space:nowrap;overflow:visible;text-overflow:clip;overflow-wrap:normal}.detail-flow{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));overflow:visible}.detail-flow .commercial-step{min-height:66px}.detail-flow .commercial-step small{display:flex;align-items:center;justify-content:space-between;gap:6px}.detail-flow .commercial-step small em{font-style:normal;font-size:8.5px;letter-spacing:.04em;color:var(--muted)}.detail-flow .commercial-step.done small em{color:var(--green)}.detail-flow .commercial-step.current small em{color:var(--accent)}.detail-flow .commercial-step.next small em{color:var(--warn)}@media(max-width:760px){#modal-detalhe{padding:6px}#modal-detalhe .modal{width:calc(100vw - 12px);max-width:calc(100vw - 12px);padding-left:22px;padding-right:22px}#modal-detalhe .modal h2{margin-left:-22px;margin-right:-22px;padding-left:22px;padding-right:22px}.detail-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.detail-fin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-fin-grid .card .val{white-space:normal}.detail-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:420px){.detail-flow{grid-template-columns:1fr}}
.cal-jornada-row,.cal-jornada-head{display:grid;grid-template-columns:minmax(120px,1fr) repeat(4,100px) 78px;gap:8px;align-items:center}.cal-jornada-row{padding:8px;border:1px solid var(--border);border-radius:9px}.cal-jornada-head{padding:0 8px 6px;color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px}
/* ORÇAMENTO — abas / workspace de ambientes e peças */
.orc-workspace{display:grid;grid-template-columns:minmax(0,2.08fr) minmax(300px,.92fr);grid-template-areas:"context nav" "editor nav";gap:18px;min-height:520px;align-items:start}
.orc-context-sidebar{grid-area:context;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--border);border-radius:12px;background:var(--surface2);padding:0;font-size:12px;color:var(--text);overflow:hidden}
.orc-context-group{padding:11px 14px;min-width:0;border-right:1px solid var(--border)}
.orc-context-group:last-child{border-right:0}
.orc-context-sidebar h4{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 7px}
.orc-context-sidebar .orc-ctx-row{display:flex;justify-content:space-between;gap:8px;padding:2px 0;line-height:1.35;min-width:0}
.orc-context-sidebar .orc-ctx-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.orc-context-sidebar .orc-ctx-row span:first-child{color:var(--muted);flex:0 0 auto}
.orc-environments-sidebar{grid-area:nav;border:1px solid var(--border);border-radius:12px;background:var(--surface2);padding:14px;min-width:0;position:sticky;top:0}
.orc-view-switch{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--border);border-radius:8px;overflow:hidden;margin-bottom:12px}
.orc-view-switch .btn{justify-content:center;border-radius:0;border:0}
.orc-view-switch .btn:not(.btn-ghost){background:var(--accent);color:#fff}
.orc-view-switch .btn.btn-ghost{background:var(--surface);color:var(--muted)}
.orc-view-switch .btn.btn-ghost:hover{background:var(--surface2);color:var(--text)}
.orc-view-switch .btn+button{border-left:1px solid var(--border)}
.orc-sidebar-title{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800;margin:12px 0 8px}
.orc-environment-grid{display:grid;grid-template-columns:1fr;gap:7px;margin-bottom:12px}
.orc-chip{display:grid;grid-template-columns:18px minmax(0,1fr) 58px;align-items:center;gap:8px;min-width:0;min-height:58px;padding:9px 10px;border-radius:8px;border:1px solid var(--border);background:var(--surface);cursor:pointer;font-size:12px;transition:border-color .15s,background-color .15s,box-shadow .15s}
.orc-chip:hover{border-color:color-mix(in srgb,var(--accent) 72%,var(--border));background:color-mix(in srgb,var(--accent) 2.5%,var(--surface))}
.orc-chip:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 36%,transparent);outline-offset:2px;border-color:var(--accent)}
.orc-chip.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 5%,var(--surface));font-weight:700;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 12%,transparent)}
.orc-chip.orc-chip-add{display:flex;border-style:dashed;color:var(--muted);justify-content:center;text-align:center}
.orc-chip-drag-handle{justify-self:start;display:inline-flex;align-items:center;justify-content:center;width:18px;color:var(--muted);cursor:grab;opacity:.7}
.orc-chip:active .orc-chip-drag-handle{cursor:grabbing}
.orc-chip-content{min-width:0;overflow:hidden;text-overflow:ellipsis;text-align:left;line-height:1.35}
.orc-chip small{color:var(--muted);font-weight:400;line-height:1.45}
.orc-chip-actions{display:flex;gap:2px;align-items:center;justify-content:flex-end;justify-self:end;width:58px;min-height:24px}
.orc-chip-actions button{display:inline-flex;align-items:center;justify-content:center;width:18px;height:24px;border:0;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer;padding:0}
.orc-chip-actions button:hover,.orc-chip-actions button:focus-visible{background:color-mix(in srgb,var(--accent) 9%,var(--surface));color:var(--accent);outline:0}
.orc-chip-rename-btn{display:none}
.orc-chip:hover .orc-chip-rename-btn,.orc-chip:focus-within .orc-chip-rename-btn{display:inline-flex}
.orc-piece-card{border:1px solid var(--border);border-radius:9px;background:var(--surface);padding:10px;margin-bottom:8px;cursor:pointer;display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;align-items:center;transition:.15s;min-width:0}
.orc-piece-card:hover{border-color:var(--accent)}
.orc-piece-card.active{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 20%,transparent)}
.orc-piece-thumb,.orc-material-thumb{width:42px;height:42px;border-radius:8px;background:var(--surface2);display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;overflow:hidden}
.orc-piece-thumb img,.orc-material-thumb img{width:100%;height:100%;object-fit:cover}
.orc-piece-card .orc-piece-info{min-width:0}
.orc-piece-card .orc-piece-info>div:not(.orc-piece-actions){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.orc-piece-card .orc-piece-total{font-weight:700;color:var(--accent);white-space:nowrap;font-size:12px}
.orc-piece-actions{display:flex;align-items:center;gap:3px;justify-content:flex-end;margin-top:3px}
.orc-sidebar-actions{display:grid;gap:7px;margin-top:10px}
.orc-sidebar-actions .btn{justify-content:center;width:100%}
.orc-piece-panel{grid-area:editor;border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:18px;min-height:390px;min-width:0}
.orc-piece-panel .orc-panel-empty{color:var(--muted);font-size:12.5px;text-align:center;padding:72px 10px}
.orc-piece-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start;margin-bottom:14px}
.orc-piece-fields{grid-template-columns:repeat(2,minmax(0,1fr))!important;margin-bottom:10px!important}
.orc-piece-top-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(220px,.95fr);gap:18px;align-items:stretch;margin-bottom:16px}
.orc-piece-desenho-box{border:1px solid var(--border);border-radius:8px;padding:10px 12px;text-align:center}
.orc-piece-desenho-box svg{width:100%;height:auto}
#orc-autoria-avatar img{width:100%;height:100%;object-fit:cover}
.orc-material-row{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--border);border-radius:10px 10px 0 0;background:var(--surface);padding:10px;margin-bottom:0}
.orc-material-row .orc-material-thumb{width:58px;height:58px}
.orc-proposal-image-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;border:1px solid var(--border);border-top:0;border-radius:0 0 10px 10px;background:var(--surface);padding:10px;margin-bottom:18px}
.orc-proposal-image-row .field{margin:0}
.orc-section{border-top:1px solid var(--border);padding-top:14px;margin-top:16px}
.orc-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.orc-section-badge{background:var(--accent);color:#fff;border-radius:999px;padding:2px 8px;font-size:9.5px;letter-spacing:0;text-transform:uppercase}
.orc-quick-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:8px}
.orc-subpieces-table,.orc-benefits-table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--border);border-radius:8px;overflow:hidden;font-size:11.5px}
.orc-subpieces-table th,.orc-benefits-table th{padding:7px 8px;text-align:left;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.04em;background:var(--surface2);border-bottom:1px solid var(--border)}
.orc-subpieces-table td,.orc-benefits-table td{padding:7px 8px;border-bottom:1px solid var(--border);vertical-align:middle}
.orc-subpieces-table tr:last-child td,.orc-benefits-table tr:last-child td{border-bottom:0}
.orc-subpieces-table{table-layout:fixed;min-width:720px}
.orc-subpieces-table th{text-align:center}
.orc-subpiece-measures{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:5px;min-width:170px}
.orc-subpiece-measures .si{padding:5px 7px;text-align:center;font-size:11px}
.orc-benefit-shell{border:1px solid var(--border);border-radius:10px;padding:12px;margin-top:16px}
.orc-benefit-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 12px}
.orc-benefit-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.58fr);gap:12px;align-items:start}
.orc-benefit-entry-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(132px,.42fr) auto;gap:8px;align-items:end}
.orc-benefit-preview{border-left:1px solid var(--border);padding-left:12px;min-height:116px}
.orc-cost-shell{border:1px solid var(--border);border-radius:10px;padding:12px;margin-top:16px}
.orc-cost-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}
.orc-cost-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid var(--border);border-radius:8px;overflow:hidden;text-align:center}
.orc-cost-item{padding:10px 7px;border-right:1px solid var(--border);min-width:0}
.orc-cost-item:last-child{border-right:0;background:color-mix(in srgb,var(--accent) 5%,var(--surface))}
.orc-cost-note{display:flex;gap:9px;align-items:flex-start;margin-top:12px;padding:10px;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--accent) 4%,var(--surface2));font-size:10.5px;color:var(--muted)}
.orc-fill-panel{border:1px solid var(--border);border-radius:10px;padding:13px;margin-top:16px;background:var(--surface)}
.orc-fill-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.orc-fill-group{padding:10px 0;border-bottom:1px solid var(--border)}
.orc-fill-group:last-of-type{border-bottom:0}
.orc-fill-group-title{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:700;margin-bottom:5px}
.orc-fill-group ul{margin:0;padding-left:27px;color:var(--text)}
.orc-fill-guidance{font-size:10.5px;color:var(--muted);line-height:1.55;margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}
.orc-fill-links{display:flex;flex-direction:column;align-items:flex-start;gap:7px;margin-top:10px}
.orc-table-mode-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}
#modal-pedido .modal-footer.orc-modal-footer{display:grid;grid-template-columns:minmax(360px,1fr) auto;align-items:center;gap:18px;position:sticky;bottom:-24px;z-index:20;background:var(--surface);margin-left:-24px;margin-right:-24px;padding:14px 24px 0}
.orc-footer-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--border);border-radius:10px;padding:10px 12px;min-width:0;background:var(--surface)}
.orc-footer-actions{display:flex;justify-content:flex-end;gap:8px;align-items:center}
.orc-checklist-item{display:flex;gap:8px;align-items:flex-start;padding:8px 10px;border-radius:8px;margin-bottom:6px;font-size:12.5px;cursor:pointer}
.orc-checklist-item.impeditivo{background:color-mix(in srgb,var(--red) 10%,var(--surface2));border-left:3px solid var(--red)}
.orc-checklist-item.alerta{background:color-mix(in srgb,var(--warn) 10%,var(--surface2));border-left:3px solid var(--warn)}
.orc-checklist-item.concluido{background:color-mix(in srgb,var(--green) 10%,var(--surface2));border-left:3px solid var(--green)}
.fin-panel-intro{display:flex;justify-content:space-between;align-items:end;gap:16px;margin:2px 0 12px;padding-bottom:10px;border-bottom:1px solid var(--border)}
.fin-panel-intro h3{font-size:13px;margin:0 0 3px;text-transform:uppercase;letter-spacing:.055em;color:var(--text)}
.fin-panel-intro p{font-size:11px;line-height:1.45;color:var(--muted);margin:0;max-width:720px}
.fin-live-note{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:999px;background:color-mix(in srgb,var(--green) 8%,var(--surface));color:var(--green);font-size:10px;font-weight:700;white-space:nowrap}
.fin-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(180px,1.15fr);gap:9px;margin-bottom:14px}
.fin-kpi-card{min-height:92px;border:1px solid var(--border);border-radius:11px;background:var(--surface);padding:12px 13px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 1px 2px color-mix(in srgb,var(--text) 4%,transparent)}
.fin-kpi-head{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}
.fin-kpi-head i{font-size:14px;color:var(--accent)}
.fin-kpi-value{font-size:19px;line-height:1.1;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--text)}
.fin-kpi-meta{font-size:9.5px;color:var(--muted);margin-top:4px}
.fin-kpi-status{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:800;line-height:1.25}
.fin-status-dot{width:9px;height:9px;border-radius:50%;flex:0 0 9px;background:currentColor;box-shadow:0 0 0 4px color-mix(in srgb,currentColor 14%,transparent)}
.fin-layout-primary{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr);gap:12px;align-items:start;margin-bottom:12px}
.fin-layout-analysis{display:grid;grid-template-columns:minmax(240px,.82fr) minmax(300px,1.08fr) minmax(240px,.82fr);gap:12px;align-items:start;margin-bottom:12px}
.fin-card{border:1px solid var(--border);border-radius:11px;background:var(--surface);padding:16px;min-width:0;box-shadow:0 1px 2px color-mix(in srgb,var(--text) 3%,transparent)}
.fin-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}
.fin-card-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:800;color:var(--text);line-height:1.3}
.fin-card-title i{font-size:16px;color:var(--accent)}
.fin-card-subtitle{font-size:11px;color:var(--muted);line-height:1.45;margin-top:4px}
.fin-price-input .si-money input.si{font-size:17px;font-weight:800;font-variant-numeric:tabular-nums;padding-block:10px}
.fin-price-summary{display:flex;justify-content:flex-end;gap:6px;align-items:center;font-size:10px;color:var(--muted);margin:7px 0 12px}
.fin-price-summary strong{color:var(--accent);font-variant-numeric:tabular-nums}
.fin-discount-box{border-top:1px solid var(--border);padding-top:12px}
.fin-discount-grid{display:grid;grid-template-columns:82px minmax(0,1fr) auto;gap:7px;align-items:end}
.fin-discount-grid .field{width:auto!important}
.fin-card-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}
.fin-card-actions .btn{justify-content:center}
.fin-price-quick{margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}
.fin-price-quick-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;font-size:10.5px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.045em}
.fin-price-quick-title small{font-size:9.5px;text-align:right;letter-spacing:.025em}
.fin-price-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.fin-price-option{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label pct" "value value";align-items:center;gap:5px 8px;min-height:76px;padding:11px 12px;text-align:left;border:1px solid var(--border);border-radius:10px;background:var(--surface2);color:var(--text);cursor:pointer;transition:.15s}
.fin-price-option:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,var(--surface2));transform:translateY(-1px)}
.fin-price-option:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 24%,transparent);outline-offset:2px;border-color:var(--accent)}
.fin-price-option.is-current{border-color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent);background:color-mix(in srgb,var(--accent) 8%,var(--surface2))}
.fin-price-option:disabled{cursor:not-allowed;opacity:.55;transform:none}
.fin-price-option span{grid-area:label;min-width:0;font-size:10.5px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.035em;overflow-wrap:anywhere}
.fin-price-option em{grid-area:pct;font-size:10px;font-style:normal;font-weight:800;color:var(--accent);white-space:nowrap}
.fin-price-option strong{grid-area:value;font-size:15.5px;line-height:1.2;font-variant-numeric:tabular-nums}
.fin-cost-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.fin-cost-grid .field{margin:0;min-width:0}
.fin-field-help{display:block;font-size:9.5px;line-height:1.35;color:var(--muted);margin-top:4px}
.fin-composition-toggle{display:inline-flex;align-items:center;gap:5px;margin-top:10px;font-size:10.5px;font-weight:700;color:var(--accent)}
.fin-total-row{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid var(--border);padding-top:10px;margin-top:10px;font-size:11.5px;font-weight:800}
.fin-total-row strong{font-size:14px;font-variant-numeric:tabular-nums}
.fin-variable-grid{display:grid;gap:10px}
.fin-inline-percent{display:grid;grid-template-columns:minmax(0,1fr) 70px;gap:6px;align-items:end}
.fin-inline-percent .field{margin:0}
.fin-result-table{width:100%;border-collapse:collapse;font-size:11px}
.fin-result-table td{padding:7px 0;border-bottom:1px solid var(--border)}
.fin-result-table td:last-child{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.fin-result-table tr.fin-result-total td{padding-top:9px;font-weight:800;color:var(--text);border-top:1px solid var(--text)}
.fin-result-table tr.fin-result-metric td{font-weight:700}
.fin-policy-list{display:grid;gap:8px}
.fin-policy-row{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:11px}
.fin-policy-row strong{font-size:12px;font-variant-numeric:tabular-nums}
.fin-policy-scale{margin:16px 0 6px}
.fin-policy-track{height:8px;border-radius:999px;position:relative;background:linear-gradient(90deg,var(--red) 0 var(--fin-min),var(--warn) var(--fin-min) var(--fin-target),var(--green) var(--fin-target) 100%)}
.fin-policy-marker{position:absolute;left:var(--fin-actual);top:50%;width:14px;height:14px;border:3px solid var(--surface);border-radius:50%;background:var(--text);transform:translate(-50%,-50%);box-shadow:0 0 0 1px color-mix(in srgb,var(--text) 20%,transparent)}
.fin-policy-threshold{position:absolute;left:var(--threshold);top:-3px;height:14px;border-left:1px solid color-mix(in srgb,var(--text) 45%,transparent)}
.fin-policy-axis{display:flex;justify-content:space-between;font-size:8.5px;color:var(--muted);margin-top:5px}
.fin-policy-thresholds{display:flex;justify-content:space-between;gap:8px;font-size:9px;font-weight:700;color:var(--muted);margin-top:7px}
.fin-policy-caption{font-size:9.5px;line-height:1.45;color:var(--muted);margin-top:9px}
.fin-support-card{border:1px solid var(--border);border-radius:11px;background:var(--surface);padding:16px;margin-bottom:14px}
.fin-support-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}
.fin-support-head>.btn,.fin-payment-head>.btn{min-height:38px!important;padding:8px 13px!important}
.fin-support-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.fin-support-actions .btn{min-height:38px!important;padding:8px 12px!important}
.fin-reference-stack,.fin-support-grid{display:grid;gap:12px}
.fin-support-grid{grid-template-columns:minmax(0,1.35fr) minmax(340px,.85fr);align-items:start}
.fin-reference-group{padding:14px;border:1px solid color-mix(in srgb,var(--border) 90%,transparent);border-radius:10px;background:color-mix(in srgb,var(--surface2) 70%,var(--surface));min-width:0}
.fin-reference-group.is-cost{box-shadow:inset 3px 0 0 color-mix(in srgb,var(--accent) 70%,transparent)}
.fin-reference-group.is-sale{box-shadow:inset 3px 0 0 color-mix(in srgb,var(--green) 72%,transparent)}
.fin-reference-head{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:12px}
.fin-reference-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface))}
.fin-reference-group.is-sale .fin-reference-icon{color:var(--green);background:color-mix(in srgb,var(--green) 10%,var(--surface))}
.fin-reference-title{font-size:12px;font-weight:800;line-height:1.3;color:var(--text)}
.fin-reference-help{font-size:10.5px;line-height:1.4;color:var(--muted);margin-top:2px}
.fin-impact-badge{padding:4px 7px;border-radius:999px;font-size:9px;font-weight:800;white-space:nowrap;color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,var(--surface))}
.fin-reference-group.is-sale .fin-impact-badge{color:var(--green);background:color-mix(in srgb,var(--green) 9%,var(--surface))}
.fin-reference-label{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;margin-bottom:8px;font-size:11.5px;font-weight:800;color:var(--text)}
.fin-reference-label span{font-size:10.5px;font-weight:500;color:var(--muted)}
.fin-chip-list,.fin-reference-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.fin-reference-group.is-sale .fin-reference-actions{grid-template-columns:1fr}
.fin-add-chip.btn{display:grid!important;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;width:100%;min-height:52px!important;border-radius:9px;font-size:11.5px!important;padding:8px 10px!important;gap:7px;text-align:left;justify-content:stretch;background:var(--surface)}
.fin-add-chip i{font-size:14px;flex:0 0 auto;color:var(--accent)}
.fin-reference-group.is-sale .fin-add-chip i{color:var(--green)}
.fin-add-chip-copy{min-width:0;display:grid;gap:2px}
.fin-add-chip-copy span{font-weight:750;line-height:1.25;overflow-wrap:anywhere}
.fin-add-chip-copy small{font-size:9.5px;font-weight:500;line-height:1.3;color:var(--muted);overflow-wrap:anywhere}
.fin-add-chip strong{font-size:10.5px;color:var(--accent);white-space:nowrap;padding:3px 6px;border-radius:6px;background:color-mix(in srgb,var(--accent) 8%,var(--surface2))}
.fin-reference-group.is-sale .fin-add-chip strong{color:var(--green);background:color-mix(in srgb,var(--green) 8%,var(--surface2))}
.fin-editor-list{display:grid;gap:7px;margin-top:9px}
.fin-service-row,.fin-consumable-row{display:grid;gap:8px;align-items:center}
.fin-service-row{grid-template-columns:minmax(0,1fr) 130px 38px}
.fin-consumable-row{grid-template-columns:minmax(180px,1.6fr) 86px 120px 112px 38px}
.fin-row-total{font-size:12.5px;font-weight:800;text-align:right;font-variant-numeric:tabular-nums}
.fin-remove-btn.btn{width:38px;min-width:38px;height:40px;min-height:40px;padding:0;justify-content:center}
.fin-editor-total{display:flex;justify-content:flex-end;margin-top:3px;font-size:11.5px;font-weight:800;color:var(--green)}
.fin-empty-copy{padding:10px 2px 0;font-size:10.5px;line-height:1.45;color:var(--muted)}
.fin-support-summary{display:grid;grid-template-columns:repeat(2,minmax(170px,220px)) minmax(260px,1fr);gap:10px;align-items:stretch;margin-top:12px;padding:10px;border:1px solid var(--border);border-radius:9px;background:var(--surface2)}
.fin-support-metric{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;background:var(--surface)}
.fin-support-metric span{font-size:10px;color:var(--muted)}
.fin-support-metric strong{font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}
.fin-support-note{display:flex;align-items:center;gap:8px;font-size:10.5px;line-height:1.4;color:var(--muted);padding:5px 7px}
.fin-support-note i{font-size:16px;color:var(--accent);flex:0 0 auto}
.fin-payment-card{border:1px solid var(--border);border-radius:11px;background:var(--surface);padding:16px;margin-bottom:14px}
.fin-payment-head{display:flex;justify-content:space-between;align-items:start;gap:16px;margin-bottom:14px}
.fin-payment-grid-head,.fin-payment-row{display:grid;grid-template-columns:minmax(140px,1fr) minmax(150px,1fr) minmax(145px,.95fr) minmax(92px,.55fr) 78px 38px;column-gap:10px;align-items:center}
.fin-payment-grid-head.has-card-columns,.fin-payment-row.has-card-columns{grid-template-columns:minmax(130px,.9fr) minmax(140px,1fr) minmax(135px,.92fr) 96px 76px minmax(125px,.9fr) minmax(115px,.82fr) 38px}
.fin-payment-grid-head{padding:0 10px 7px;font-size:9px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.035em}
.fin-payment-row{padding:10px;border:1px solid var(--border);border-radius:9px;background:var(--surface2)}
.fin-payment-row+.fin-payment-row{margin-top:8px}
.fin-payment-row>.btn{width:38px;min-width:38px;height:40px;min-height:40px;padding:0;justify-content:center}
.fin-payment-na{display:flex;align-items:center;min-height:40px;padding:0 10px;border:1px dashed var(--border);border-radius:8px;color:var(--muted);font-size:10px;background:color-mix(in srgb,var(--surface) 55%,transparent)}
.fin-payment-summary{display:flex;justify-content:flex-end;margin-top:9px;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.fin-plan-status{display:inline-flex;align-items:center;gap:5px;margin-left:6px;padding:3px 7px;border-radius:999px;font-size:9.5px;font-weight:800}
.fin-plan-status.ok{color:var(--green);background:color-mix(in srgb,var(--green) 9%,var(--surface2))}
.fin-plan-status.pending{color:var(--red);background:color-mix(in srgb,var(--red) 8%,var(--surface2))}
.fin-empty-state{padding:24px 18px;border:1px dashed var(--border);border-radius:9px;text-align:center;color:var(--muted);font-size:11px;line-height:1.5;background:var(--surface2)}
@media (max-width:1050px){
  .orc-workspace{grid-template-columns:minmax(0,1fr);grid-template-areas:"context" "editor" "nav"}
  .orc-environments-sidebar{width:100%;position:static}
  #modal-pedido .modal-footer.orc-modal-footer{grid-template-columns:1fr}
  .fin-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .fin-layout-primary,.fin-layout-analysis{grid-template-columns:1fr}
  .fin-support-grid{grid-template-columns:1fr}
  .fin-chip-list{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:680px){
  .orc-context-sidebar{grid-template-columns:1fr}
  .orc-context-group{border-right:0;border-bottom:1px solid var(--border)}
  .orc-context-group:last-child{border-bottom:0}
  .orc-piece-panel{padding:12px}
  .orc-piece-top-grid{grid-template-columns:1fr}
  .orc-material-row{grid-template-columns:48px minmax(0,1fr)}
  .orc-material-row .orc-material-thumb{width:48px;height:48px}
  .orc-material-row .btn{grid-column:1/-1;justify-content:center}
  .orc-proposal-image-row{grid-template-columns:1fr}
  .orc-piece-fields{grid-template-columns:1fr!important}
  .orc-benefit-editor,.orc-benefit-entry-fields,.orc-cost-grid,.orc-footer-meta{grid-template-columns:1fr}
  .orc-benefit-preview{border-left:0;border-top:1px solid var(--border);padding-left:0;padding-top:10px}
  .orc-cost-item{border-right:0;border-bottom:1px solid var(--border)}
  .orc-cost-item:last-child{border-bottom:0}
  #modal-pedido .modal-footer.orc-modal-footer{flex-wrap:wrap}
  #modal-pedido .modal-footer.orc-modal-footer .btn,#modal-pedido .modal-footer.orc-modal-footer #p-save-btn-wrap,#modal-pedido .modal-footer.orc-modal-footer #p-save-btn-wrap .btn{flex:1;justify-content:center}
  .fin-panel-intro,.fin-support-head,.fin-payment-head{align-items:flex-start;flex-direction:column}
  .fin-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fin-kpi-card:last-child{grid-column:1/-1}
  .fin-discount-grid,.fin-cost-grid{grid-template-columns:1fr}
  .fin-payment-card{overflow-x:auto}
  .fin-payment-grid-head,.fin-payment-row{min-width:680px}
  .fin-payment-grid-head.has-card-columns,.fin-payment-row.has-card-columns{min-width:940px}
  .fin-price-options{grid-template-columns:1fr}
  .fin-price-quick-title{align-items:flex-start;flex-direction:column;gap:3px}
  .fin-price-quick-title small{text-align:left}
  .fin-service-row,.fin-consumable-row{grid-template-columns:1fr}
  .fin-row-total{text-align:left}
  .fin-remove-btn.btn{width:100%}
  .fin-support-head{align-items:flex-start;flex-direction:column}
  .fin-support-actions{width:100%;justify-content:flex-start}
  .fin-support-actions .btn{flex:1}
  .fin-chip-list{grid-template-columns:1fr}
  .fin-reference-head{grid-template-columns:34px minmax(0,1fr)}
  .fin-impact-badge{grid-column:2;justify-self:start}
  .fin-support-summary{grid-template-columns:1fr}
}
.field{min-width:0}
.field label{display:block;font-size:11px;line-height:1.3;color:var(--muted);margin-bottom:6px;font-weight:650}
.si{box-sizing:border-box;width:100%;min-width:0;min-height:40px;background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:9px 13px;color:var(--text);font-size:13px;line-height:1.35;outline:none;transition:.15s}
select.si{padding-right:34px}
.si:focus{border-color:var(--accent)}
.si.campo-invalido{border-color:var(--red)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--red) 18%,transparent)!important;animation:shake .25s ease}
.si option{background:var(--surface2)}
textarea.si{min-height:88px;resize:vertical}
.card-section-title{font-size:12.5px;font-weight:700;color:var(--text);margin-bottom:2px}
.card .field label{text-transform:none!important;letter-spacing:normal!important;font-size:11px!important;font-weight:600!important}
.si-money{box-sizing:border-box;display:flex;align-items:stretch;width:100%;min-width:0;min-height:40px;background:var(--surface2);border:1px solid var(--border);border-radius:8px;overflow:hidden;transition:.15s}
.si-money:focus-within{border-color:var(--accent)}
.si-money:has(.campo-invalido){border-color:var(--red)}
.si-money span{flex-shrink:0;display:flex;align-items:center;padding:0 10px;font-size:12px;color:var(--muted);border-right:1px solid var(--border);background:color-mix(in srgb,var(--surface2) 60%,var(--bg))}
.si-money input.si{flex:1;min-width:0;width:auto;min-height:38px;border:0;background:transparent;border-radius:0;padding:9px 12px;color:var(--text);font-size:13px;outline:none}
.si-money input.si:focus{border:0}
.si-money input[readonly]{color:var(--muted)}
/* MODAL */
.modal-bg{display:none;position:fixed;inset:0;background:#00000099;z-index:500;align-items:center;justify-content:center;padding:16px}
.modal-bg.open{display:flex}
.modal{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:28px;width:100%;max-width:640px;max-height:92vh;overflow-y:auto;box-shadow:var(--shadow)}
#modal-pedido{padding:8px}
#modal-pedido .modal{width:calc(100vw - 16px)!important;max-width:1500px!important;max-height:calc(100vh - 16px);padding:24px;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable}
#modal-pedido .modal>h2{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px}
#modal-pedido .modal>h2 #p-modal-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#modal-pedido .modal>h2 #p-status-badge{justify-self:center;margin-left:0!important}
#modal-pedido .modal>h2 .modal-close{justify-self:end}
#modal-pedido .ped-items-scroll{width:100%;max-width:100%;overflow-x:scroll;overflow-y:visible;overscroll-behavior-x:contain;scrollbar-gutter:stable;padding-bottom:8px;scrollbar-color:var(--accent) var(--surface3);scrollbar-width:auto}
#modal-pedido .ped-items-scroll::-webkit-scrollbar{height:14px}
#modal-pedido .ped-items-scroll::-webkit-scrollbar-track{background:var(--surface3);border-radius:8px}
#modal-pedido .ped-items-scroll::-webkit-scrollbar-thumb{background:var(--accent);border:3px solid var(--surface3);border-radius:8px}
#modal-pedido .ped-items-table{min-width:1210px;width:100%;border-collapse:collapse;font-size:12px}
#modal-pedido .ped-items-table th:last-child,#modal-pedido .ped-items-table tr:not(.ped-item-details) td:last-child{position:sticky;right:0;z-index:3;background:var(--surface)}
#modal-pedido .ped-scroll-controls{display:inline-flex;gap:3px}
#modal-pedido .ped-scroll-controls .btn{min-width:34px;padding:3px 8px}
/* MEDIÇÃO — mesma mecânica de rolagem horizontal do modal de pedido */
#modal-medicao .med-items-scroll{width:100%;max-width:100%;overflow-x:scroll;overflow-y:visible;overscroll-behavior-x:contain;scrollbar-gutter:stable;padding-bottom:8px;scrollbar-color:var(--accent) var(--surface3);scrollbar-width:auto}
#modal-medicao .med-items-scroll::-webkit-scrollbar{height:14px}
#modal-medicao .med-items-scroll::-webkit-scrollbar-track{background:var(--surface3);border-radius:8px}
#modal-medicao .med-items-scroll::-webkit-scrollbar-thumb{background:var(--accent);border:3px solid var(--surface3);border-radius:8px}
#modal-medicao .med-items-table{min-width:1180px;width:100%;border-collapse:collapse;font-size:12px}
#modal-medicao .med-items-table th{background:var(--surface);font-size:10px;text-transform:uppercase;letter-spacing:.05em;font-weight:800;color:var(--muted);padding:7px 6px;border-bottom:1px solid var(--border);white-space:nowrap}
#modal-medicao .med-items-table th:last-child,#modal-medicao .med-items-table tr:not(.med-sub-row) td:last-child{position:sticky;right:0;z-index:3;background:var(--surface)}
#modal-medicao .med-scroll-controls{display:inline-flex;gap:3px}
#modal-medicao .med-scroll-controls .btn{min-width:34px;padding:3px 8px}
#modal-medicao .med-amb-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px;margin-bottom:10px;transition:outline .15s}
#modal-medicao .med-amb-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}
/* Faixa de objetivo: conduz o usuário até o desenho técnico liberado */
#modal-medicao .med-objective{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 14px;margin-bottom:12px;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border));border-left:4px solid var(--accent);border-radius:11px;background:color-mix(in srgb,var(--accent) 7%,var(--surface2))}
#modal-medicao .med-objective i{font-size:22px;color:var(--accent)}
#modal-medicao .med-objective strong{display:block;font-size:13px;line-height:1.3}
#modal-medicao .med-objective small{display:block;color:var(--muted);font-size:11.5px;line-height:1.45;margin-top:2px}
#modal-medicao .med-objective.done{border-color:color-mix(in srgb,var(--green) 45%,var(--border));border-left-color:var(--green);background:color-mix(in srgb,var(--green) 8%,var(--surface2))}
#modal-medicao .med-objective.done i{color:var(--green)}
#modal-medicao .med-progress{display:flex;gap:3px;margin-top:7px}
#modal-medicao .med-progress span{height:5px;flex:1;border-radius:3px;background:var(--border)}
#modal-medicao .med-progress span.ok{background:var(--green)}
#modal-medicao .med-progress span.pend{background:var(--warn)}
#modal-medicao .med-pedido-card{margin:0 0 12px;padding:12px 14px;border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:11px;background:var(--surface2)}
#modal-medicao .med-pedido-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px 18px;font-size:12px;margin-top:8px}
#modal-medicao .med-pedido-grid small{display:block;color:var(--muted);font-size:9.5px;text-transform:uppercase;letter-spacing:.05em;font-weight:800;margin-bottom:2px}
#modal-medicao .med-chip{display:inline-block;background:var(--surface3);padding:2px 8px;border-radius:5px;font-size:11px;margin:2px 3px 0 0}
#modal-medicao .med-status-pill{display:inline-flex;padding:4px 7px;border-radius:999px;font-weight:800;white-space:nowrap;font-size:11px}
@media(max-width:900px){#modal-medicao .med-objective{grid-template-columns:1fr;text-align:left}#modal-medicao .med-objective .btn{width:100%;justify-content:center}}
.modal h2{font-size:18px;font-weight:700;display:flex;justify-content:space-between;align-items:center;position:sticky;top:-28px;z-index:30;background:var(--surface);padding:28px 28px 12px;margin:-28px -28px 16px;border-bottom:1px solid var(--border);border-radius:16px 16px 0 0}
.modal-footer{display:flex;gap:10px;justify-content:flex-end;margin-top:20px;padding-top:16px;border-top:1px solid var(--border)}
.modal-close{border:none;background:none;color:var(--text);cursor:pointer;font-size:22px;line-height:1;opacity:.55;padding:2px 4px;border-radius:6px;-webkit-text-fill-color:currentColor;transition:opacity .15s,background .15s}.modal-close:hover{opacity:1;background:var(--surface3)}
.ui-dialog-modal{max-width:560px;padding:0;overflow:hidden}.ui-dialog-modal h2{position:static;margin:0;padding:0;border:0;background:none}.ui-dialog-head{display:grid;grid-template-columns:44px 1fr auto;gap:14px;align-items:start;padding:24px 24px 18px;border-bottom:1px solid var(--border)}.ui-dialog-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--accent);font-size:21px}.ui-dialog-icon.warning{background:color-mix(in srgb,var(--warn) 15%,var(--surface));color:var(--warn)}.ui-dialog-icon.danger{background:color-mix(in srgb,var(--red) 14%,var(--surface));color:var(--red)}.ui-dialog-eyebrow{font-size:10px;line-height:1.2;text-transform:uppercase;letter-spacing:.11em;color:var(--muted);font-weight:800;margin:1px 0 5px}.ui-dialog-title{font-size:19px!important;line-height:1.25}.ui-dialog-body{padding:20px 24px 4px}.ui-dialog-message{color:var(--text);font-size:14px;line-height:1.55;margin:0 0 16px;white-space:pre-line}.ui-dialog-impact{border-left:3px solid var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface2));border-radius:0 10px 10px 0;padding:11px 13px;margin:0 0 16px;color:var(--muted);font-size:12px;line-height:1.5}.ui-dialog-impact.warning{border-color:var(--warn);background:color-mix(in srgb,var(--warn) 8%,var(--surface2))}.ui-dialog-impact.danger{border-color:var(--red);background:color-mix(in srgb,var(--red) 8%,var(--surface2))}.ui-dialog-details{display:grid;gap:7px;margin:0 0 16px}.ui-dialog-detail{display:flex;justify-content:space-between;gap:18px;padding:9px 11px;border:1px solid var(--border);border-radius:9px;background:var(--surface2);font-size:12px}.ui-dialog-detail span{color:var(--muted)}.ui-dialog-detail strong{text-align:right}.ui-dialog-fields{display:grid;gap:14px}.ui-dialog-fields .field{margin:0}.ui-dialog-fields label{display:block;font-size:12px;font-weight:700;margin-bottom:6px}.ui-dialog-help{display:block;color:var(--muted);font-size:10.5px;line-height:1.4;margin-top:5px}.ui-dialog-error{display:none;color:var(--red);font-size:11px;font-weight:700;margin:10px 0 0}.ui-dialog-error.show{display:block}.ui-dialog-modal .modal-footer{position:static;margin:18px 0 0;padding:15px 24px 20px;border-radius:0;background:var(--surface);box-shadow:none}.ui-dialog-modal .btn{min-width:110px;-webkit-text-fill-color:currentColor}.ui-dialog-modal[data-tone="danger"] #ui-dialog-confirm{background:var(--red);border-color:var(--red);color:#fff}.ui-dialog-modal[data-tone="warning"] #ui-dialog-confirm{background:var(--warn);border-color:var(--warn);color:#111}@media(max-width:520px){#ui-dialog{padding:10px;align-items:flex-end}.ui-dialog-modal{max-width:none;border-radius:18px 18px 12px 12px}.ui-dialog-head{grid-template-columns:40px 1fr auto;padding:20px 18px 15px}.ui-dialog-icon{width:40px;height:40px}.ui-dialog-body{padding:17px 18px 2px}.ui-dialog-modal .modal-footer{padding:14px 18px 18px}.ui-dialog-modal .btn{flex:1}}
.person-wizard{max-width:1040px!important;padding-bottom:0}.person-progress{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin:-4px 0 20px}.person-step-btn{border:1px solid var(--border);border-radius:10px;background:var(--surface2);color:var(--muted);padding:9px 8px;text-align:left;cursor:pointer;font-size:10px;font-weight:800;line-height:1.25;-webkit-text-fill-color:currentColor}.person-step-btn span{display:block;font-size:9px;margin-bottom:3px;opacity:.7}.person-step-btn.active{background:color-mix(in srgb,var(--accent) 13%,var(--surface));border-color:var(--accent);color:var(--accent)}.person-step-btn.done{border-color:color-mix(in srgb,var(--green) 55%,var(--border));color:var(--green)}.person-wizard-step{display:none}.person-wizard-step.active{display:block}.person-step-intro{display:flex;gap:12px;align-items:flex-start;padding:13px 15px;border:1px solid var(--border);border-radius:11px;background:var(--surface2);margin-bottom:16px}.person-step-intro i{font-size:22px;color:var(--accent)}.person-step-intro strong{display:block;font-size:14px}.person-step-intro small{display:block;color:var(--muted);margin-top:3px;line-height:1.45}.person-derived{background:color-mix(in srgb,var(--green) 8%,var(--surface2))!important;color:var(--muted)}.person-status-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}.person-status-item{border:1px solid var(--border);border-radius:10px;padding:10px;background:var(--surface2);font-size:11px}.person-status-item strong{display:block;margin-top:3px}.person-status-item.ok{border-color:color-mix(in srgb,var(--green) 55%,var(--border));color:var(--green)}.person-status-item.warn{border-color:color-mix(in srgb,var(--warn) 55%,var(--border));color:var(--warn)}.person-next-hint{padding:11px 13px;border-left:3px solid var(--accent);background:color-mix(in srgb,var(--accent) 7%,var(--surface2));border-radius:0 9px 9px 0;font-size:12px;margin-top:14px}.person-wizard .modal-footer{align-items:center}.person-wizard .modal-footer .person-footer-status{margin-right:auto;color:var(--muted);font-size:11px}.person-wizard .si[readonly]{background:var(--surface2);color:var(--muted)}@media(max-width:760px){.person-progress{grid-template-columns:repeat(3,1fr)}.person-status-grid{grid-template-columns:repeat(2,1fr)}.person-wizard{max-height:100vh!important;border-radius:0!important}.person-wizard .modal-footer .person-footer-status{width:100%;order:-1}}
/* KANBAN */
.kanban{display:grid;grid-template-columns:repeat(5,minmax(200px,1fr));gap:12px;overflow-x:auto;padding-bottom:8px}
#orc-kanban-board.kanban{grid-template-columns:repeat(6,minmax(190px,1fr))}
/* Os rótulos do funil comercial são longos ("Recusado / arquivado"): empilha o título
   e o contador para não espremer nem quebrar o cabeçalho em duas linhas coladas. */
#orc-kanban-board .k-head{flex-direction:column;align-items:flex-start;gap:3px;padding:11px 12px}
#orc-kanban-board .k-head>span:first-child{line-height:1.25;font-size:11px;letter-spacing:.4px}
#orc-kanban-board .k-head>span:last-child{text-transform:none;letter-spacing:0;font-weight:600}
/* A dica de arrastar é a mensagem de coluna vazia; com cartões dentro ela só
   reaparece durante o arraste, para não poluir a leitura da lista. */
#orc-kanban-board .k-body:has(.k-card) .k-drop-hint{display:none}
#orc-kanban-board .k-body.drag-over .k-drop-hint{display:block}
.k-col{background:var(--surface);border:1px solid var(--border);border-radius:12px;min-height:260px}
.k-head{padding:12px 14px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}
.k-body{padding:8px;display:flex;flex-direction:column;gap:7px}
.k-card{background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:12px;cursor:pointer;transition:.15s}
.k-card:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:var(--shadow)}
.k-card-name{font-size:13px;font-weight:600;margin-bottom:3px}
.k-card-desc{font-size:11px;color:var(--muted);margin-bottom:7px;line-height:1.4}
.k-card-val{font-size:14px;font-weight:700;color:var(--green)}
.k-card-meta{display:flex;justify-content:space-between;align-items:center;margin-top:6px}
.k-card-date{font-size:10px;color:var(--muted)}
.k-card-sub{font-size:10px;padding:2px 6px;border-radius:4px;background:var(--surface);color:var(--muted)}
.k-card[draggable="true"]{cursor:grab}.k-card[draggable="true"]:active{cursor:grabbing}.k-card.dragging{opacity:.38;transform:scale(.98)}
.k-body.drag-over{background:color-mix(in srgb,var(--accent) 12%,transparent);outline:2px dashed var(--accent);outline-offset:-4px;border-radius:0 0 11px 11px;min-height:210px}
.k-drop-hint{font-size:10px;color:var(--muted);text-align:center;padding:5px 2px;border:1px dashed var(--border);border-radius:6px}.k-body.drag-over .k-drop-hint{color:var(--accent);border-color:var(--accent)}
.k-card-move{margin-top:8px;font-size:10px;padding:5px 7px}
@media(max-width:700px){#ped-kpis{grid-template-columns:1fr!important}.k-card-move{font-size:12px;padding:8px}}
/* PIPELINE (leads) */
.pipeline{display:grid;grid-template-columns:repeat(6,minmax(195px,1fr));gap:10px;overflow-x:auto;padding-bottom:8px}
.pl-col{background:var(--surface);border:1px solid var(--border);border-radius:12px;min-height:200px}
.pl-head{padding:10px 12px;border-bottom:1px solid var(--border);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;display:flex;justify-content:space-between}
.pl-body{padding:7px;display:flex;flex-direction:column;gap:6px}
.pl-card{background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:10px;cursor:pointer;transition:.15s}
.pl-card:hover{border-color:var(--accent)}
.pl-card-name{font-size:12px;font-weight:600;margin-bottom:2px}
.pl-card-val{font-size:12px;color:var(--green);font-weight:600}
.pl-card-meta{font-size:10px;color:var(--muted);margin-top:4px}
/* AGENDA */
.agenda-day{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.agenda-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;flex-wrap:wrap}
.agenda-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.agenda-filters{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px}
.agenda-status-line{display:flex;gap:12px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:12px}
.agenda-card{cursor:pointer;position:relative;overflow:hidden}
.agenda-card:after{content:'Abrir lista filtrada';position:absolute;right:12px;bottom:10px;font-size:10px;color:var(--muted);opacity:.78}
.agenda-card:hover{border-color:var(--accent);transform:translateY(-1px)}
.agenda-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.85fr);gap:14px;margin-top:14px}
.agenda-panel{background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden;min-height:0}
.agenda-panel-head{padding:13px 16px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:12px}
.agenda-panel-title{font-weight:800;font-size:13px;letter-spacing:.45px;text-transform:uppercase;display:flex;align-items:center;gap:8px}
.agenda-panel-sub{font-size:11px;color:var(--muted);margin-top:3px;text-transform:none;letter-spacing:0;font-weight:500}
.agenda-priority-list,.agenda-timeline,.agenda-sector-grid{padding:12px}
.agenda-sector-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.agenda-sector{border:1px solid var(--border);border-radius:12px;background:var(--surface2);overflow:hidden}
.agenda-sector .agenda-panel-head{padding:10px 12px;background:color-mix(in srgb,var(--surface) 75%,transparent)}
.agenda-alert-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:flex-start;padding:11px 12px;border-bottom:1px solid var(--border);border-left:3px solid var(--border);background:var(--surface);color:var(--text)}
.agenda-alert-row:last-child{border-bottom:0}
.agenda-alert-row.critico{border-left-color:var(--red)}
.agenda-alert-row.alto{border-left-color:var(--warn)}
.agenda-alert-row.normal{border-left-color:var(--accent)}
.agenda-alert-row:hover{background:var(--surface2)}
.agenda-alert-icon{width:24px;height:24px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:var(--surface2);color:var(--accent);font-size:15px}
.agenda-alert-row.critico .agenda-alert-icon{color:var(--red);background:color-mix(in srgb,var(--red) 12%,var(--surface))}
.agenda-alert-row.alto .agenda-alert-icon{color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,var(--surface))}
.agenda-alert-title{font-weight:750;font-size:13px;line-height:1.35;color:var(--text)}
.agenda-alert-meta{margin-top:5px;display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:11px;line-height:1.35}
.agenda-alert-meta span{display:inline-flex;align-items:center;gap:4px}
.agenda-alert-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.agenda-mini-btn{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:6px 8px;font-size:11px;font-weight:700;cursor:pointer}
.agenda-mini-btn:hover{border-color:var(--accent);color:var(--accent)}
.agenda-empty{padding:24px 14px;text-align:center;color:var(--muted);font-size:12px;background:var(--surface);border:1px dashed var(--border);border-radius:10px}
.agenda-empty i{display:block;font-size:20px;margin-bottom:6px;color:var(--green)}
.agenda-timeline-row{display:grid;grid-template-columns:54px 28px minmax(0,1fr) auto;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--border)}
.agenda-timeline-row:last-child{border-bottom:0}
.agenda-time{font-family:var(--font-mono);font-weight:800;color:var(--text);font-size:12px}
.agenda-chip{font-size:10px;border:1px solid var(--border);border-radius:999px;padding:2px 7px;color:var(--muted);white-space:nowrap}
.agenda-loading,.agenda-error{padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--muted);font-size:13px}
.agenda-error{border-color:var(--red);color:var(--red)}
.agenda-internal-list{display:grid;gap:10px;padding:12px}
.agenda-internal-event{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:13px;border:1px solid var(--border);border-radius:12px;background:var(--surface2)}
.agenda-internal-event h4{margin:0 0 5px;font-size:14px}.agenda-internal-event p{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.45}
.agenda-internal-meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:11px}.agenda-internal-actions{display:flex;gap:6px;align-items:flex-start;flex-wrap:wrap;justify-content:flex-end}
.agenda-draft-box{border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border));background:color-mix(in srgb,var(--accent) 7%,var(--surface));border-radius:10px;padding:11px 12px;font-size:11px;color:var(--muted);line-height:1.45}
.ecosystem-hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(250px,.55fr);gap:16px;padding:17px 19px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 8%,var(--surface)),var(--surface));margin-bottom:14px}
.ecosystem-hero h1{margin:2px 0 6px;font-size:25px}.ecosystem-hero p{margin:0;color:var(--muted);line-height:1.5;max-width:720px}.ecosystem-promise{display:grid;gap:6px;align-content:center}.ecosystem-promise div{display:flex;gap:7px;align-items:flex-start;font-size:11.5px;color:var(--muted)}.ecosystem-promise i{color:var(--green);margin-top:2px}
.ecosystem-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}.ecosystem-summary .card{min-height:92px}
.ecosystem-tabs{display:flex;gap:6px;border-bottom:1px solid var(--border);margin-bottom:14px;overflow:auto}.ecosystem-tab{border:0;background:none;color:var(--muted);padding:10px 12px;border-bottom:2px solid transparent;white-space:nowrap;cursor:pointer;font-weight:600}.ecosystem-tab.active{color:var(--accent);border-bottom-color:var(--accent)}
.ecosystem-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.ecosystem-toolbar .si{max-width:280px}.ecosystem-toolbar input{flex:1}
.ecosystem-section-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-end;margin:4px 0 11px}.ecosystem-section-title h2{font-size:18px;margin:0}.ecosystem-section-title p{font-size:11.5px;color:var(--muted);margin:2px 0 0}
.ecosystem-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ecosystem-card{display:flex;flex-direction:column;gap:10px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface);min-height:235px}.ecosystem-card:hover{border-color:var(--accent);transform:translateY(-1px)}
.ecosystem-card-head{display:flex;justify-content:space-between;gap:10px}.ecosystem-card-icon{width:38px;height:38px;border-radius:11px;background:color-mix(in srgb,var(--accent) 12%,var(--surface));display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:19px}.ecosystem-card h3{font-size:15px;margin:0}.ecosystem-card p{font-size:12px;line-height:1.5;color:var(--muted);margin:0}.ecosystem-deliverables{display:grid;gap:5px;font-size:11px;color:var(--muted);margin-top:auto}.ecosystem-deliverables span{display:flex;gap:6px}.ecosystem-deliverables i{color:var(--green)}
.ecosystem-recommendation{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 6%,var(--surface)),var(--surface))}.ecosystem-reason{padding:9px 10px;border-radius:9px;background:var(--surface2);font-size:11px;line-height:1.45;color:var(--muted)}.ecosystem-reason strong{display:block;color:var(--text);margin-bottom:2px}
.ecosystem-requests{overflow:auto}.ecosystem-requests table{min-width:760px}.ecosystem-request-action{white-space:nowrap}.ecosystem-empty{grid-column:1/-1;padding:30px 18px;text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:12px}
@media(max-width:1050px){.agenda-layout{grid-template-columns:1fr}.agenda-sector-grid{grid-template-columns:1fr}.ecosystem-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.ecosystem-hero{grid-template-columns:1fr}.ecosystem-toolbar .si{max-width:none;flex:1 1 100%}.ecosystem-grid{grid-template-columns:1fr}}
@media(max-width:520px){.ecosystem-summary{grid-template-columns:1fr}.ecosystem-hero{padding:15px}.ecosystem-card{min-height:0}}
@media(max-width:640px){.agenda-toolbar{display:block}.agenda-actions,.agenda-filters{margin-top:10px}.agenda-alert-row{grid-template-columns:24px minmax(0,1fr)}.agenda-alert-actions{grid-column:1/-1;justify-content:flex-start}.agenda-card:after{display:none}.agenda-internal-event{grid-template-columns:1fr}.agenda-internal-actions{justify-content:flex-start}}
/* BIBLIOTECA VISUAL DE MATERIAIS */
.material-library-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px}.material-library-head .page-sub{max-width:760px}.material-library-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.material-library-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.material-library-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:12px;margin-bottom:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.material-library-toolbar .si{max-width:210px}.material-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.material-card{border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow:hidden;min-width:0;transition:.16s}.material-card:hover{border-color:var(--accent);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.material-card-media{position:relative;width:100%;border:0;padding:0;text-align:left;color:inherit;aspect-ratio:4/3;background:linear-gradient(135deg,var(--surface2),var(--surface3));overflow:hidden;cursor:zoom-in}.material-card-media:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.material-card-media img{width:100%;height:100%;object-fit:contain;background:#f4f1e9;display:block}.material-card-placeholder{height:100%;display:grid;place-items:center;text-align:center;color:var(--muted);padding:18px}.material-card-placeholder i{font-size:30px;display:block;margin-bottom:5px}.material-image-badge{position:absolute;left:9px;bottom:9px;padding:4px 8px;border-radius:999px;background:rgba(7,19,30,.82);color:#fff;font-size:9.5px;font-weight:800;letter-spacing:.03em}.material-availability{position:absolute;right:9px;top:9px;padding:4px 8px;border-radius:999px;background:rgba(255,255,255,.94);color:#172033;font-size:9.5px;font-weight:800}.material-card-body{padding:13px}.material-card-body h3{font-size:15px;margin:0 0 4px}.material-card-meta{font-size:11px;color:var(--muted);min-height:34px}.material-card-footer{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-top:10px}.material-readiness{font-size:10.5px;color:var(--muted)}.material-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.material-gallery-item{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface2)}.material-gallery-item button{width:100%;aspect-ratio:4/3;border:0;padding:0;background:transparent;cursor:zoom-in}.material-gallery-item img{width:100%;height:100%;object-fit:contain;background:#f4f1e9}.material-gallery-caption{padding:6px 7px;font-size:9.5px;color:var(--muted)}.material-view-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(270px,.6fr);gap:18px}.material-view-main{aspect-ratio:4/3;border-radius:14px;overflow:hidden;background:#f4f1e9;border:1px solid var(--border);display:grid;place-items:center}.material-view-main img{width:100%;height:100%;object-fit:contain;transform-origin:center;transition:transform .15s}.material-view-side{display:flex;flex-direction:column;gap:10px}.material-spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.material-spec{border:1px solid var(--border);border-radius:9px;padding:8px}.material-spec small{display:block;color:var(--muted);font-size:9.5px}.material-lot-table{width:100%;border-collapse:collapse;font-size:11px}.material-lot-table th,.material-lot-table td{padding:8px;border-bottom:1px solid var(--border);text-align:left}.material-upload-rule{padding:9px 11px;border-radius:9px;background:var(--surface2);font-size:10.5px;color:var(--muted)}.material-queue{margin-top:14px;padding:13px;border:1px dashed var(--border);border-radius:12px}.orc-material-thumb{width:54px;height:42px;border-radius:7px;overflow:hidden;background:var(--surface2);flex:0 0 auto;display:grid;place-items:center;color:var(--muted)}.orc-material-thumb img{width:100%;height:100%;object-fit:contain}.quote-material-image{display:flex;gap:10px;align-items:center;border:1px solid var(--border);border-radius:9px;padding:8px;margin-top:7px}.quote-material-image select{font-size:11px}.pp-material-visual{display:flex;gap:10px;align-items:flex-start;margin:10px 0;padding:10px;border:1px solid #dbe7f3;border-radius:10px;break-inside:avoid}.pp-material-visual img{width:118px;height:88px;object-fit:contain;background:#f4f1e9;border-radius:7px}.pp-material-visual small{font-size:9px;line-height:1.4;color:#5a7184}
@media(max-width:1050px){.material-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.material-view-layout{grid-template-columns:1fr}.material-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.material-library-head{display:block}.material-library-actions{justify-content:flex-start;margin-top:10px}.material-library-summary,.material-library-grid{grid-template-columns:1fr}.material-library-toolbar .si{max-width:none;flex:1 1 100%}.material-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.material-spec-grid{grid-template-columns:1fr}.material-view-main{border-radius:10px}}
/* ORÇAMENTOS */
.orc-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;margin-bottom:14px}
.orc-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.orc-filters{display:grid;grid-template-columns:repeat(6,minmax(140px,1fr));gap:8px;margin-bottom:14px}
.orc-viewchips{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:14px}
.orc-viewchip{display:inline-flex;align-items:center;gap:6px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));background:color-mix(in srgb,var(--accent) 9%,var(--surface));color:var(--accent);border-radius:999px;padding:7px 14px;font-size:11.5px;font-weight:800;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.05);transition:transform .15s,box-shadow .15s,border-color .15s,background .15s}
.orc-viewchip:hover{transform:translateY(-1px);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,var(--surface));box-shadow:0 4px 10px color-mix(in srgb,var(--accent) 22%,transparent)}
.orc-viewchip.active{border-color:var(--accent);color:#fff;background:var(--accent);box-shadow:0 3px 10px color-mix(in srgb,var(--accent) 35%,transparent)}
/* ── CHAT INTERNO ─────────────────────────────── */
.chat-ch-btn{display:flex;align-items:center;gap:8px;width:100%;padding:6px 12px;border:none;background:none;cursor:pointer;color:var(--text);text-align:left;border-radius:6px;margin:1px 6px;width:calc(100% - 12px);transition:background .12s}
.chat-ch-btn:hover{background:var(--surface2)}
.chat-ch-btn.active{background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent)}
.chat-ch-btn.active .chat-ch-nome{color:var(--accent);font-weight:700}
.chat-ch-icon{font-size:14px;flex-shrink:0;color:var(--muted);width:18px}
.chat-ch-btn.active .chat-ch-icon{color:var(--accent)}
.chat-ch-body{flex:1;min-width:0}
.chat-ch-row{display:flex;align-items:center;justify-content:space-between;gap:4px}
.chat-ch-nome{font-size:12.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-ch-preview{font-size:10.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}
.chat-badge{background:var(--red);color:#fff;font-size:10px;font-weight:700;padding:1px 5px;border-radius:99px;flex-shrink:0;min-width:16px;text-align:center}
.chat-msg-wrap{display:flex;gap:8px;padding:2px 0;align-items:flex-start}
.chat-msg-wrap:hover .chat-msg-actions{opacity:1}
.chat-msg-wrap.mine{flex-direction:row-reverse}
.chat-avatar{width:30px;height:30px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0;margin-top:2px}
.chat-avatar.mine{background:color-mix(in srgb,var(--accent) 60%,var(--surface2))}
.chat-msg-body{display:flex;flex-direction:column;max-width:75%;gap:2px}
.chat-msg-meta{font-size:10.5px;color:var(--muted);padding:0 4px}
.chat-bubble{background:var(--surface2);border:1px solid var(--border);border-radius:12px;padding:8px 12px;font-size:13px;line-height:1.5;word-break:break-word}
.chat-bubble.mine{background:var(--accent);color:#fff;border-color:transparent}
.chat-msg-actions{display:flex;gap:3px;padding:2px 0;opacity:0;transition:opacity .15s}
.chat-action-btn{border:1px solid var(--border);background:var(--surface);border-radius:6px;padding:3px 6px;cursor:pointer;font-size:11px;color:var(--muted);line-height:1}
.chat-action-btn:hover{background:var(--surface2);color:var(--text)}
.chat-demanda-card{background:var(--surface2);border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin:4px 0}
.chat-section-hdr{padding:6px 12px 2px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.orc-kpi{cursor:pointer;position:relative;overflow:hidden}
.orc-kpi:hover{border-color:var(--accent);transform:translateY(-1px)}
.orc-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px 16px;cursor:pointer;transition:.15s}
.orc-card:hover{border-color:var(--accent);box-shadow:var(--shadow-sm)}
.orc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap}
.orc-title{font-weight:850;font-size:15px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.orc-meta{font-size:11px;color:var(--muted);display:flex;gap:8px;flex-wrap:wrap;margin-top:5px}
.orc-meta span{display:inline-flex;gap:4px;align-items:center}
.orc-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.orc-tag{font-size:10.5px;border:1px solid var(--border);border-radius:999px;padding:2px 7px;color:var(--muted);background:var(--surface2);max-width:240px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.orc-data-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:12px}
.orc-data{background:var(--surface2);border:1px solid var(--border);border-radius:10px;padding:8px 10px;min-width:0}
.orc-data small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.45px;margin-bottom:2px}
.orc-data strong{font-size:12px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.orc-card-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;margin-top:10px}
.orc-status{border-radius:999px;padding:3px 8px;font-size:10px;font-weight:800;border:1px solid var(--border);background:var(--surface2)}
.orc-status.draft{color:var(--muted)}
.orc-status.info{color:var(--accent)}
.orc-status.warn{color:var(--warn)}
.orc-status.green{color:var(--green)}
.orc-status.red{color:var(--red)}
.orc-alert{font-size:11px;margin-top:8px;padding:7px 9px;border-radius:8px;border-left:3px solid var(--warn);background:color-mix(in srgb,var(--warn) 8%,var(--surface))}
.orc-alert.red{border-left-color:var(--red);background:color-mix(in srgb,var(--red) 8%,var(--surface))}
@media(max-width:1150px){.orc-filters{grid-template-columns:repeat(3,minmax(140px,1fr))}.orc-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.orc-filters{grid-template-columns:1fr}.orc-data-grid{grid-template-columns:1fr}.orc-card-actions{justify-content:flex-start}}
/* CLIENTES 360 */
.cli-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;margin-bottom:14px}
.cli-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.cli-filters{display:grid;grid-template-columns:repeat(6,minmax(135px,1fr));gap:8px;margin-bottom:12px}
.cli-viewchips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.cli-viewchip{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;padding:6px 10px;font-size:11px;font-weight:750;cursor:pointer}
.cli-viewchip.active,.cli-viewchip:hover{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,var(--surface))}
.cli-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:15px 16px;cursor:pointer;transition:.15s;min-height:245px;display:flex;flex-direction:column}
.cli-card:hover{border-color:var(--accent);box-shadow:var(--shadow-sm);transform:translateY(-1px)}
.cli-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.cli-title{font-size:15px;font-weight:850;line-height:1.3}
.cli-sub{font-size:11px;color:var(--muted);margin-top:3px;display:flex;gap:7px;flex-wrap:wrap}
.cli-badges{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}
.cli-badge{font-size:10px;border:1px solid var(--border);border-radius:999px;padding:2px 7px;color:var(--muted);background:var(--surface2);white-space:nowrap}
.cli-badge.green{color:var(--green);border-color:color-mix(in srgb,var(--green) 36%,var(--border))}
.cli-badge.red{color:var(--red);border-color:color-mix(in srgb,var(--red) 36%,var(--border))}
.cli-badge.warn{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 36%,var(--border))}
.cli-data-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
.cli-data{border:1px solid var(--border);background:var(--surface2);border-radius:10px;padding:8px;min-width:0}
.cli-data small{display:block;color:var(--muted);font-size:9.5px;text-transform:uppercase;letter-spacing:.45px}
.cli-data strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cli-card-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;padding-top:12px}
.cli-alert{font-size:11px;margin-top:8px;padding:7px 9px;border-radius:8px;border-left:3px solid var(--warn);background:color-mix(in srgb,var(--warn) 8%,var(--surface))}
.cli-alert.red{border-left-color:var(--red);background:color-mix(in srgb,var(--red) 8%,var(--surface))}
.cli-integridade{border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:12px;margin-bottom:14px}
.cli-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}
.cli-profile-block{border:1px solid var(--border);border-radius:10px;background:var(--surface2);padding:10px}
.cli-profile-block small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.45px;margin-bottom:3px}
.cli-profile-block strong{font-size:13px}
@media(max-width:1100px){.cli-filters{grid-template-columns:repeat(3,minmax(135px,1fr))}.cli-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.cli-filters{grid-template-columns:1fr}.cli-data-grid,.cli-profile-grid{grid-template-columns:1fr}.cli-card-actions{justify-content:flex-start}}
.alert-item{display:flex;align-items:flex-start;gap:10px;padding:11px 14px;background:var(--surface2);color:var(--text);border-radius:8px;margin-bottom:7px;border:1px solid var(--border);border-left:3px solid var(--warn)}
.alert-item.crit{border-left-color:var(--red);background:color-mix(in srgb,var(--red) 9%,var(--surface))}
.alert-item.warn{border-left-color:var(--warn);background:color-mix(in srgb,var(--warn) 8%,var(--surface))}
.alert-item.ok{border-left-color:var(--green);background:color-mix(in srgb,var(--green) 8%,var(--surface))}
.alert-icon{font-size:16px;flex-shrink:0;margin-top:1px}
.alert-body{flex:1;font-size:13px;line-height:1.4;color:var(--text)}
.alert-body strong{color:var(--text)}
.alert-body small{color:var(--muted);font-size:11px}
.alert-item>span:last-child{color:var(--text);opacity:.8}
/* VISUAL WORKSPACES — cada setor usa a densidade e a linguagem adequadas ao trabalho */
body[data-workspace="dashboard"] #page-dashboard .cards{grid-auto-flow:dense;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px}
body[data-workspace="dashboard"] #page-dashboard .cards>.card{grid-column:span 3;min-height:104px;box-shadow:none;position:relative;overflow:hidden}
body[data-workspace="dashboard"] #page-dashboard .cards>.card:first-child{grid-column:span 6}
body[data-workspace="dashboard"] #page-dashboard .panel{box-shadow:none;border-radius:var(--radius)}
body[data-workspace="dashboard"] #page-dashboard .val{font-family:var(--font-mono);letter-spacing:-.045em}
body[data-workspace="commercial"] .page.active table{font-size:12px;font-variant-numeric:tabular-nums}
body[data-workspace="commercial"] .page.active th{height:34px;padding:6px 10px;text-transform:uppercase;letter-spacing:.55px;font-size:9.5px;background:var(--surface2)}
body[data-workspace="commercial"] .page.active td{height:42px;padding:7px 10px}
body[data-workspace="commercial"] .page.active .panel,body[data-workspace="commercial"] .page.active .card{box-shadow:none}
body[data-workspace="commercial"] .page.active .badge{border-radius:5px;padding:2px 7px}
body[data-workspace="production"] .kanban,body[data-workspace="production"] .pipeline{gap:10px}
body[data-workspace="production"] .k-col,body[data-workspace="production"] .pl-col{background:color-mix(in srgb,var(--surface) 88%,#000);box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
body[data-workspace="production"] .k-card,body[data-workspace="production"] .pl-card{box-shadow:none;border-left:2px solid var(--accent2)}
body[data-workspace="technical"] #page-medicao .panel,body[data-workspace="technical"] #page-medicao .card{box-shadow:none;border-color:var(--cad-line)}
body[data-workspace="technical"] #page-medicao{background-color:var(--bg);background-image:linear-gradient(var(--cad-grid) 1px,transparent 1px),linear-gradient(90deg,var(--cad-grid) 1px,transparent 1px);background-size:24px 24px;background-position:-1px -1px;padding:18px;border-radius:var(--radius)}
body[data-workspace="technical"] #page-medicao input[type="number"],body[data-workspace="technical"] #page-medicao input[inputmode="decimal"]{font-family:var(--font-mono);color:var(--cad-dim)}
#modal-geometria-peca .modal,#modal-nesting .modal{background-color:#08111d;background-image:linear-gradient(#122238 1px,transparent 1px),linear-gradient(90deg,#122238 1px,transparent 1px);background-size:20px 20px;border-color:var(--cad-line)}
#modal-geometria-peca .si,#modal-nesting .si{font-family:var(--font-mono);border-color:var(--cad-line)}
#modal-nesting .modal{max-width:1180px}#modal-nesting .modal h2{background:var(--surface)}
body[data-workspace="document"] .page.active .panel,#modal-contrato .modal{background:color-mix(in srgb,var(--surface) 94%,#fff);box-shadow:0 18px 55px #0005}
body[data-workspace="document"] .page.active table{line-height:1.65}
body[data-workspace="ai"] .page.active .panel,body[data-workspace="dashboard"] .alert-item:not(.crit):not(.warn):not(.ok){background:var(--glass-bg);color:var(--text);border:1px solid var(--glass-border);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));box-shadow:0 10px 36px rgba(4,8,18,.22)}
body[data-workspace="ai"] .page.active .panel{position:relative;overflow:hidden}
body[data-workspace="ai"] .page.active .panel:before{content:'';position:absolute;inset:0 auto auto 0;width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.65}
@media(max-width:900px){body[data-workspace="dashboard"] #page-dashboard .cards>.card,body[data-workspace="dashboard"] #page-dashboard .cards>.card:first-child{grid-column:span 6}}
@media(max-width:560px){body[data-workspace="dashboard"] #page-dashboard .cards{grid-template-columns:1fr}body[data-workspace="dashboard"] #page-dashboard .cards>.card,body[data-workspace="dashboard"] #page-dashboard .cards>.card:first-child{grid-column:1}}
/* FAB */
#fab{position:fixed;bottom:28px;right:28px;z-index:400}
#fab[hidden]{display:none}
#fab-btn{width:52px;height:52px;border-radius:50%;background:var(--accent);border:none;color:#fff;font-size:24px;cursor:pointer;box-shadow:0 4px 20px var(--accent)66;transition:.2s;display:flex;align-items:center;justify-content:center}
#fab-btn:hover{transform:scale(1.08)}
#fab-menu{position:absolute;bottom:64px;right:0;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:7px;display:none;min-width:238px;max-width:min(310px,calc(100vw - 24px))}
#fab-menu.open{display:block}
.fab-head{padding:9px 10px 7px;border-bottom:1px solid var(--border);margin-bottom:4px}
.fab-head strong{display:block;font-size:12px;color:var(--text)}
.fab-head small{display:block;font-size:10.5px;color:var(--muted);margin-top:2px}
.fab-area{width:100%;margin-top:8px;padding:6px 8px;border:1px solid var(--border);border-radius:7px;background:var(--surface2);color:var(--text);font:inherit;font-size:11px}
.fab-opt{display:flex;align-items:center;gap:9px;padding:9px 11px;font-size:12.5px;color:var(--text);cursor:pointer;border-radius:8px;border:none;background:none;width:100%;text-align:left}
.fab-opt i{font-size:16px;color:var(--accent);width:18px;text-align:center}
.fab-opt:hover{background:var(--surface2)}
.fab-opt:focus-visible,#fab-btn:focus-visible{outline:2px solid var(--accent2);outline-offset:2px}
/* TOAST */
#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--surface);border:1px solid var(--accent);border-radius:10px;padding:11px 22px;font-size:13px;z-index:600;display:none;box-shadow:var(--shadow);white-space:nowrap}
/* LOADING */
#loading{position:fixed;inset:0;background:var(--bg);z-index:999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}
/* Tela de bloqueio durante limpeza segura de cache local (logout com dado sensível) */
#security-lock-screen{position:fixed;inset:0;background:var(--bg);z-index:1200;display:none;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:24px}
#security-lock-screen strong{font-size:16px}
#security-lock-screen p{color:var(--muted);font-size:13px;max-width:420px}
.spinner{width:38px;height:38px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
/* SETUP */
#setup-box{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:32px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto}
/* ===== TELA DE LOGIN (composição única: fotografia + institucional + card) ===== */
#auth-modal.modal-bg{background:#08110d;padding:0;align-items:stretch;justify-content:stretch}
#auth-modal{
  --auth-marble-950:#040f0d;--auth-marble-900:#0a211a;--auth-marble-800:#10372b;
  --auth-gold-600:#a77831;--auth-gold-500:#bd8e42;--auth-gold-400:#d0aa67;
  --auth-ivory:#fcfaf6;--auth-ink:#151b19;--auth-stone:#817b73;
  --auth-line:#e7e0d5;--auth-cta:#062f26;
  --auth-font-display:'Cormorant Garamond',Georgia,serif;
}
/* Sem asset de fotografia real disponível ainda: fundo em gradiente até que
   assets/brand-gaturamo/auth-login-background.webp seja fornecido — nesse
   momento, adicionar como primeira camada de background-image abaixo. */
.auth-split{position:relative;display:flex;width:100%;height:100dvh;overflow:hidden;
  background-image:
    radial-gradient(1100px 760px at 12% -8%,rgba(208,170,103,.14),transparent 58%),
    radial-gradient(900px 620px at 100% 100%,rgba(208,170,103,.08),transparent 55%),
    linear-gradient(155deg,var(--auth-marble-950) 0%,var(--auth-marble-900) 55%,var(--auth-marble-800) 100%);
  background-size:cover,cover,cover;background-position:center,center,center;background-repeat:no-repeat}
.auth-split::before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(90deg,rgba(4,10,8,.66) 0%,rgba(4,10,8,.56) 42%,rgba(4,10,8,.30) 64%,rgba(4,10,8,.08) 82%,rgba(4,10,8,0) 95%)}
.auth-brand-panel{position:relative;z-index:2;flex:1 1 480px;min-width:0;height:100%;display:flex;overflow:hidden}
.auth-brand-scene{position:absolute;z-index:0;inset:0;display:flex;align-items:flex-end;justify-content:flex-end;gap:clamp(10px,1.6vw,22px);padding:0 clamp(40px,5vw,90px) 0 0;pointer-events:none}
.auth-slab{display:block;border-radius:4px 4px 0 0;box-shadow:inset 1px 0 0 rgba(255,255,255,.05),inset -1px 0 0 rgba(0,0,0,.25)}
.auth-slab-1{width:7.5%;height:58%;background:linear-gradient(180deg,#28483b 0%,#0a1a14 82%,#040f0d 100%)}
.auth-slab-2{width:6%;height:74%;background:linear-gradient(180deg,#3a5c4c 0%,#0d211a 78%,#040f0d 100%)}
.auth-slab-3{width:9%;height:48%;background:linear-gradient(180deg,#4a4231 0%,#17130f 80%,#040f0d 100%)}
.auth-slab-4{width:5.5%;height:86%;background:linear-gradient(180deg,#2e5142 0%,#0a1a14 78%,#040f0d 100%)}
.auth-slab-5{width:8%;height:64%;background:linear-gradient(180deg,#6b5636 0%,#1c160e 80%,#040f0d 100%);opacity:.92}
.auth-brand-scene::after{content:'';position:absolute;left:0;right:0;bottom:0;height:6%;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.4))}
.auth-brand-inner{position:relative;z-index:1;width:100%;max-width:620px;margin-left:clamp(64px,7vw,130px);height:100%;display:grid;grid-template-rows:auto 1fr auto;padding:40px 24px 32px 0;box-sizing:border-box;color:var(--auth-ivory)}
.auth-brand-logo{align-self:start}
.auth-brand-logo-top{display:flex;align-items:center;gap:12px}
.auth-brand-name{font-family:var(--auth-font-display);font-weight:700;font-size:19px;letter-spacing:.1em;line-height:1.25;color:var(--auth-ivory);-webkit-text-fill-color:currentColor}
.auth-brand-name small{display:block;font-family:Inter,system-ui,sans-serif;font-size:10px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:rgba(252,250,246,.62);margin-top:3px}
.auth-rule{display:block;width:46px;height:2px;background:linear-gradient(90deg,var(--auth-gold-500),var(--auth-gold-400));border-radius:2px;margin:0 0 18px}
.auth-rule-center{margin:10px auto 14px}
.auth-brand-mid{align-self:center;padding:32px 0}
.auth-eyebrow{font-size:11.5px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--auth-gold-400);margin:0 0 14px}
.auth-headline{font-family:var(--auth-font-display);font-weight:600;font-size:clamp(38px,4.6vw,72px);line-height:1.03;letter-spacing:-.01em;margin:0 0 20px;color:var(--auth-ivory);-webkit-text-fill-color:currentColor}
.auth-headline em{font-style:normal;color:var(--auth-gold-400);-webkit-text-fill-color:currentColor}
.auth-sub{font-family:Inter,system-ui,sans-serif;font-size:18px;line-height:1.6;color:rgba(255,255,255,.85);max-width:460px;margin:0 0 34px}
.auth-features{display:flex;gap:clamp(18px,3vw,40px);flex-wrap:wrap}
.auth-feature{display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:13px;line-height:1.35;color:rgba(255,255,255,.9);font-weight:600}
.auth-feature i{font-size:19px;color:var(--auth-gold-400)}
.auth-brand-foot{align-self:end}
.auth-brand-foot p{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.55);margin:0}
.auth-bird{display:inline-block;background-color:currentColor;flex-shrink:0;
  -webkit-mask:url('/assets/brand-gaturamo/simbolo-oficial.png') center/contain no-repeat;
  -webkit-mask-mode:alpha;mask-mode:alpha;
  mask:url('/assets/brand-gaturamo/simbolo-oficial.png') center/contain no-repeat}
.auth-bird-light{color:var(--auth-ivory)}
.auth-bird-dark{color:var(--auth-marble-900)}
.auth-brand-logo-top .auth-bird{width:34px;height:34px}
.auth-form-panel{position:relative;z-index:2;flex:0 0 auto;width:clamp(520px,38vw,580px);height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow-y:auto;padding:28px clamp(40px,5vw,96px) 28px 32px;box-sizing:border-box}
.auth-card{position:relative;width:100%;max-width:456px;background:rgba(248,246,240,.92);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.4);border-radius:24px;padding:34px 36px 28px;box-shadow:0 24px 60px rgba(10,20,15,.22);text-align:center}
.auth-card-bird{width:52px;height:52px;display:block;margin:0 auto 10px}
.auth-welcome{font-family:var(--auth-font-display);font-weight:600;font-size:clamp(30px,2.6vw,38px);line-height:1.15;color:var(--auth-ink);margin:0 0 8px;-webkit-text-fill-color:currentColor}
.auth-welcome-sub{font-family:Inter,system-ui,sans-serif;font-size:15px;color:var(--auth-stone);margin:0 0 22px;line-height:1.5}
.auth-card .field{text-align:left;margin-top:14px}
.auth-card .field label{display:block;font-size:12px;font-weight:700;color:var(--auth-ink);margin-bottom:6px}
.auth-field-icon-wrap{position:relative}
.auth-field-icon-wrap>i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--auth-stone);font-size:16px;pointer-events:none}
#auth-modal .auth-field-icon-wrap input.si{padding-left:40px}
#auth-modal .auth-pass-wrap input.si{padding-right:42px}
.auth-pass-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--auth-stone);cursor:pointer;font-size:17px;padding:8px;border-radius:8px;-webkit-text-fill-color:currentColor}
.auth-pass-toggle:hover{background:rgba(0,0,0,.05)}
.auth-pass-toggle:focus-visible{outline:2px solid var(--auth-gold-500);outline-offset:1px}
#auth-modal .si{min-height:50px;background:#fff;border:1px solid var(--auth-line);border-radius:9px;font-size:14px;color:var(--auth-ink);padding:12px 14px;transition:border-color .15s,box-shadow .15s,background .15s}
#auth-modal .si::placeholder{color:#b7ae9f}
#auth-modal .si:hover{border-color:#d8cdbb}
#auth-modal .si:focus{border-color:var(--auth-gold-500);box-shadow:0 0 0 3px rgba(189,142,66,.18);background:#fffdf9;outline:none}
#auth-modal .si.invalid{border-color:#c0433f;background:#fdf4f3}
#auth-modal .si.invalid:focus{box-shadow:0 0 0 3px rgba(192,67,63,.16)}
#auth-modal .si:disabled{opacity:.6;cursor:not-allowed;background:#f3f1ec}
.auth-row-between{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;font-size:12.5px}
.auth-row-between a{color:var(--auth-marble-800);font-weight:700;text-decoration:none}
.auth-row-between a:hover{text-decoration:underline}
.auth-row-between a:focus-visible{outline:2px solid var(--auth-gold-500);outline-offset:2px;border-radius:4px}
.auth-check{display:flex;align-items:center;gap:7px;color:var(--auth-stone);cursor:pointer;font-size:12.5px}
.auth-check input{accent-color:var(--auth-marble-800);width:15px;height:15px}
.auth-check input:focus-visible{outline:2px solid var(--auth-gold-500);outline-offset:2px}
#auth-error{color:#c0433f;font-size:12px;margin-top:12px;min-height:16px;text-align:left;line-height:1.4}
#auth-error.is-success{color:#1f7a52}
#auth-modal .auth-submit{width:100%;min-height:48px;margin-top:16px;background:var(--auth-cta);color:var(--auth-gold-400);border:1px solid var(--auth-cta);border-radius:11px;font-family:Inter,system-ui,sans-serif;font-weight:700;font-size:14.5px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:filter .15s,transform .05s;-webkit-text-fill-color:var(--auth-gold-400)}
#auth-modal .auth-submit::after{content:'\2192';font-size:16px;transition:transform .15s}
#auth-modal .auth-submit:hover{filter:brightness(1.14)}
#auth-modal .auth-submit:hover::after{transform:translateX(2px)}
#auth-modal .auth-submit:active{filter:brightness(.94);transform:translateY(1px)}
#auth-modal .auth-submit:focus-visible{outline:2px solid var(--auth-gold-400);outline-offset:2px}
#auth-modal .auth-submit:disabled{opacity:.75;cursor:wait}
#auth-modal .auth-submit:disabled::after{content:'';width:15px;height:15px;border-radius:50%;border:2px solid rgba(208,170,103,.35);border-top-color:var(--auth-gold-400);animation:spin .7s linear infinite;display:inline-block}
.auth-or{display:flex;align-items:center;gap:12px;margin:16px 0;color:var(--auth-stone);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.auth-or span{flex:1;height:1px;background:var(--auth-line)}
#auth-modal .auth-social{width:100%;min-height:48px;margin-top:8px;background:rgba(255,255,255,.55);border:1px solid var(--auth-line);border-radius:11px;color:var(--auth-ink);font-family:Inter,system-ui,sans-serif;font-weight:600;font-size:13.5px;display:flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;transition:background .15s,border-color .15s;-webkit-text-fill-color:currentColor}
#auth-modal .auth-social:first-of-type{margin-top:0}
#auth-modal .auth-social:hover{background:#fff;border-color:#d8cdbb}
#auth-modal .auth-social:focus-visible{outline:2px solid var(--auth-gold-500);outline-offset:2px}
#auth-modal .auth-social i{font-size:16px}
.auth-footnote{font-size:11.5px;color:var(--auth-stone);margin-top:16px;line-height:1.6}
.auth-footnote a{color:var(--auth-gold-600);font-weight:700;text-decoration:none}
.auth-footnote a:hover{text-decoration:underline}
.auth-footnote a:focus-visible{outline:2px solid var(--auth-gold-500);outline-offset:2px;border-radius:3px}
.auth-card-foot{margin-top:16px;display:flex;flex-direction:column;align-items:center;gap:5px}
.auth-card-foot .auth-rule{margin:0 auto 12px}
.auth-support-line,.auth-meta-line{margin:0;font-size:11px;color:var(--auth-stone);line-height:1.5}
.auth-support-line i,.auth-meta-line i{font-size:12.5px;margin-right:2px;color:var(--auth-stone);vertical-align:-1px}
.auth-meta-line{opacity:.8;font-size:10.5px}
.auth-support-line a{color:var(--auth-gold-600);font-weight:700;text-decoration:none}
.auth-support-line a:hover{text-decoration:underline}
.auth-support-line a:focus-visible{outline:2px solid var(--auth-gold-500);outline-offset:2px;border-radius:3px}
@media(max-width:1180px){
  .auth-sub{display:none}
  .auth-features{display:none}
  .auth-headline{font-size:clamp(34px,5vw,52px);margin-bottom:16px}
  .auth-brand-mid{padding:20px 0}
  .auth-brand-inner{margin-left:clamp(40px,5vw,64px)}
}
@media(max-width:900px){
  .auth-split{flex-direction:column}
  .auth-split::before{background:linear-gradient(180deg,rgba(4,10,8,.72) 0%,rgba(4,10,8,.5) 35%,rgba(4,10,8,.82) 100%)}
  .auth-brand-panel{display:none}
  .auth-form-panel{flex:1 1 auto;width:100%;height:100%;justify-content:flex-start;padding:0;padding-top:max(28px,calc(env(safe-area-inset-top) + 12px));padding-bottom:max(20px,env(safe-area-inset-bottom))}
  .auth-card{width:calc(100% - 32px);max-width:460px;margin:16px}
}
@media(max-width:400px){
  .auth-card{padding:32px 22px 26px}
  .auth-welcome{font-size:28px}
}
.steps{background:var(--surface2);border-radius:8px;padding:14px;margin-bottom:14px;font-size:12px;line-height:2}
.steps a{color:var(--accent)}
/* MISC */
.empty{text-align:center;padding:40px 20px;color:var(--muted);font-size:13px}
.progress-bar{background:var(--surface2);border-radius:99px;height:7px;overflow:hidden;margin-top:5px}
.progress-fill{height:100%;border-radius:99px;background:var(--accent);transition:.3s}
.view-toggle{display:flex;gap:3px;background:var(--surface2);border-radius:8px;padding:3px}
.view-toggle button{padding:5px 12px;border:none;background:none;color:var(--muted);border-radius:6px;cursor:pointer;font-size:12px;transition:.15s}
.view-toggle button.active{background:var(--accent);color:#fff}
.cost-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border);font-size:13px}
.cost-row:last-child{border:none;font-weight:700}
.section-divider{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--muted);margin:18px 0 10px;padding-bottom:4px;border-bottom:1px solid var(--border)}

/* PROFESSIONAL VISUAL SYSTEM */
::selection{background:var(--accent);color:#fff}
*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}
*::-webkit-scrollbar{width:8px;height:8px}
*::-webkit-scrollbar-track{background:transparent}
*::-webkit-scrollbar-thumb{background:var(--border-strong);border:2px solid transparent;background-clip:padding-box;border-radius:999px}
*:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 38%,transparent);outline-offset:2px}
#sidebar{background:linear-gradient(180deg,var(--surface) 0%,color-mix(in srgb,var(--surface) 90%,var(--bg)) 100%);box-shadow:6px 0 30px #0206171f}
.sb-logo{padding:18px 16px;min-height:68px}
.sb-logo-icon{width:62px;height:44px;border-radius:7px;background:#fff;box-shadow:var(--shadow-sm)}
.sb-logo-text{font-size:14px;font-weight:750;letter-spacing:-.02em}
.sb-logo-sub{font-size:10.5px;margin-top:1px}
.sb-nav{padding:10px 4px 18px}
.sb-group-hdr{min-height:40px;padding:10px 11px;margin:8px 7px 3px;width:calc(100% - 14px);border:1px solid transparent;border-radius:10px;letter-spacing:.075em;color:var(--text);font-size:10px;font-weight:750;background:color-mix(in srgb,var(--surface2) 48%,transparent)}
.sb-group-hdr:hover{border-color:var(--border);background:var(--surface2)}
.sb-group-hdr:not(.sb-grp-collapsed){color:var(--text);border-color:var(--border);background:var(--surface2)}
.sb-group-hdr .sb-icon{width:20px;text-align:center;font-size:15px;flex-shrink:0}
.sb-group-items{position:relative;margin:0 7px 7px;padding:3px 0 4px 13px}
.sb-group-items:not(.sb-grp-collapsed)::before{content:'';position:absolute;left:9px;top:3px;bottom:5px;width:1px;background:var(--border-strong)}
.sb-item{position:relative;min-height:37px;padding:8px 10px 8px 16px;border-radius:8px;margin:1px 0 1px 8px;width:calc(100% - 8px);font-size:12.5px}
.sb-group-items .sb-item::before{content:'';position:absolute;left:-12px;top:50%;width:9px;height:1px;background:var(--border-strong)}
.sb-item:hover{background:color-mix(in srgb,var(--surface3) 82%,transparent);color:var(--text)}
.sb-item .sb-icon{font-size:15px;width:20px;flex-shrink:0;transition:opacity .15s;opacity:.8}
.sb-item:hover .sb-icon,.sb-item.active .sb-icon{opacity:1}
.sb-item.sb-direct{min-height:40px;margin:8px 7px 3px;width:calc(100% - 14px);padding:10px 11px;border:1px solid transparent;border-radius:10px;color:var(--text);font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.075em;background:color-mix(in srgb,var(--surface2) 48%,transparent)}
.sb-item.sb-direct:hover{border-color:var(--border);background:var(--surface2)}
.sb-item.sb-direct.active{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 24%,transparent),color-mix(in srgb,var(--accent) 8%,transparent))}
/* SIDEBAR FOOTER — Suporte */
.sb-footer{flex-shrink:0;padding:8px 8px 12px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:8px}
.sb-support-btn{display:flex;align-items:center;gap:10px;padding:9px 12px;width:100%;border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);background:color-mix(in srgb,var(--accent) 9%,transparent);color:var(--accent);font-size:12.5px;font-weight:650;border-radius:10px;cursor:pointer;transition:.15s;text-align:left}
.sb-support-btn:hover{background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:color-mix(in srgb,var(--accent) 42%,transparent)}
.sb-support-btn.active{background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:color-mix(in srgb,var(--accent) 48%,transparent);box-shadow:inset 3px 0 0 var(--accent)}
.sb-support-btn .sb-icon{font-size:16px;flex-shrink:0;width:20px;text-align:center;opacity:.9}
body.sb-collapsed .sb-footer{padding:8px 3px 12px}
body.sb-collapsed .sb-support-btn{justify-content:center;padding:9px 0}
/* MODAL SUPORTE */
.suporte-link{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--border);border-radius:12px;text-decoration:none;color:var(--text);background:var(--surface2);transition:.15s;cursor:pointer}
.suporte-link:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface2))}
.suporte-link-icon{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.suporte-link-body{flex:1;min-width:0}
.suporte-link-title{font-size:13.5px;font-weight:650;margin-bottom:2px}
.suporte-link-sub{font-size:11.5px;color:var(--muted)}
.suporte-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin:14px 0}
.suporte-card{border:1px solid var(--border);border-radius:14px;background:var(--surface2);padding:14px;text-align:left;color:var(--text);cursor:pointer;transition:.15s}
.suporte-card:hover,.suporte-card.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,var(--surface2))}
.suporte-card h3{margin:0 0 6px;font-size:15px}.suporte-card p{margin:0;color:var(--muted);font-size:12px}
.suporte-split{display:grid;grid-template-columns:minmax(280px,1fr) minmax(280px,1fr);gap:14px}
.suporte-mini{display:flex;justify-content:space-between;gap:8px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--border)}
.suporte-scope-badge{font-size:10px;text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:3px 7px;background:var(--surface3);color:var(--muted)}
.suporte-evidence-box{border:1px solid var(--border);border-radius:12px;background:var(--surface2);padding:12px;margin:10px 0}
.suporte-evidence-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.suporte-evidence-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:8px;margin-top:10px}
.suporte-evidence-item{border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:8px;min-width:0}
.suporte-evidence-item img,.suporte-evidence-item video{width:100%;height:78px;object-fit:cover;border-radius:7px;background:#000}
.suporte-evidence-item strong{display:block;font-size:11.5px;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.suporte-evidence-item small{display:block;font-size:10.5px;color:var(--muted);margin-top:2px}
@media(max-width:780px){.suporte-split{grid-template-columns:1fr}}
body.sb-collapsed .sb-group-items{padding-left:0;margin-left:4px;margin-right:4px}
body.sb-collapsed .sb-group-items::before,body.sb-collapsed .sb-group-items .sb-item::before{display:none}
body.sb-collapsed .sb-item{margin-left:3px;width:calc(100% - 6px);padding-left:10px;justify-content:center}
#topbar{height:62px;padding:0 24px;background:rgba(14,22,35,.88);backdrop-filter:blur(20px) saturate(1.3);box-shadow:0 1px 0 var(--border),0 2px 8px rgba(0,0,0,.3)}
#sb-toggle,.tb-btn{width:36px;height:36px;display:grid;place-items:center;border-radius:9px}
#search-wrap{max-width:420px}
#search-wrap input{height:38px;border-radius:10px;padding-left:36px;background:var(--surface2);box-shadow:inset 0 1px 0 #ffffff08}
#search-wrap input::placeholder,.si::placeholder{color:color-mix(in srgb,var(--muted) 78%,transparent);opacity:1}
.sync-pill{padding:5px 10px;border:1px solid var(--border);background:var(--surface2)}
.install-app-btn{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:6px 10px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:9px;background:color-mix(in srgb,var(--accent) 10%,var(--surface2));color:var(--accent);font:inherit;font-size:11px;font-weight:700;cursor:pointer}
.install-app-btn:hover{background:color-mix(in srgb,var(--accent) 17%,var(--surface2));border-color:var(--accent)}
.tb-user{color:var(--text);font-weight:550}
#content{padding:28px 30px 40px;max-width:1500px}
.cards{gap:12px;margin-bottom:18px}
.card{position:relative;overflow:hidden;min-height:112px;padding:18px 20px;background:linear-gradient(135deg,var(--surface) 0%,color-mix(in srgb,var(--surface2) 55%,var(--surface)) 100%);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm),inset 0 1px 0 rgba(255,255,255,.04);transition:transform .2s cubic-bezier(.25,.8,.25,1),border-color .2s,box-shadow .2s}
.card::before{content:'';position:absolute;inset:0 auto 0 0;width:3px;background:var(--border-strong)}
.card.green::before{background:var(--green)}.card.red::before{background:var(--red)}.card.warn::before{background:var(--warn)}.card.accent::before{background:var(--accent)}.card.purple::before{background:var(--purple)}
.card:hover{transform:translateY(-1px);border-color:var(--border-strong);box-shadow:var(--shadow)}
.card label{font-size:10.5px;font-weight:700;color:var(--muted);letter-spacing:.075em}
.card .val{font-size:23px;font-weight:750;letter-spacing:-.035em;margin-top:7px}
.card .sub{font-size:11.5px;margin-top:2px}
.g2,.g3{gap:16px}
.panel{background:linear-gradient(160deg,var(--surface) 0%,color-mix(in srgb,var(--surface2) 40%,var(--surface)) 100%);border:1px solid var(--border);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow-sm),inset 0 1px 0 rgba(255,255,255,.04)}
.panel-header{margin-bottom:16px}
.panel-header h3{font-size:14px;font-weight:700;letter-spacing:-.01em}
.panel canvas{max-width:100%}
#chart-fluxo{height:250px!important}
#chart-status,#chart-retrabalho{height:250px!important;max-height:250px!important;display:block}
#page-dashboard .dash-area[data-dash-area="producao"] .panel:has(#chart-status),
#page-dashboard .dash-area[data-dash-area="producao"] .panel:has(#chart-retrabalho){min-height:330px;max-height:360px;overflow:hidden}
#chart-cresc{height:270px!important}
table{font-size:12.5px}
th{padding:10px 12px;background:color-mix(in srgb,var(--surface2) 78%,transparent);color:var(--muted);font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.055em}
td{padding:11px 12px;border-color:var(--border)}
tr:hover td{background:color-mix(in srgb,var(--surface3) 58%,transparent)}
.btn:hover{transform:translateY(-1px)}
.btn:active{transform:translateY(0);opacity:.9}
.btn-primary{background:linear-gradient(135deg,var(--accent) 0%,color-mix(in srgb,var(--accent) 76%,var(--accent2)) 100%);color:#fff;box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 28%,transparent),inset 0 1px 0 rgba(255,255,255,.12)}
.btn-primary:hover{opacity:1;background:linear-gradient(135deg,var(--accent-hover),var(--accent));box-shadow:0 6px 20px color-mix(in srgb,var(--accent) 38%,transparent)}
.btn-ghost{background:color-mix(in srgb,var(--surface3) 70%,transparent);border:1px solid var(--border);color:var(--text)}
.btn-ghost:hover{background:var(--surface3);border-color:var(--border-strong);color:var(--text)}
.btn-close{background:var(--surface3);border:1.5px solid var(--border-strong);color:var(--text);font-weight:650;-webkit-text-fill-color:currentColor}
.btn-close:hover{background:color-mix(in srgb,var(--surface3) 85%,var(--text) 15%);border-color:var(--muted);color:var(--text)}
.btn-danger{background:color-mix(in srgb,var(--red) 8%,transparent);border:1px solid color-mix(in srgb,var(--red) 28%,var(--border));color:var(--red)}
.btn-danger:hover{background:color-mix(in srgb,var(--red) 14%,transparent);border-color:color-mix(in srgb,var(--red) 55%,transparent)}
.btn-success{background:linear-gradient(135deg,var(--green),color-mix(in srgb,var(--green) 72%,var(--accent2)));color:#fff;box-shadow:0 4px 14px color-mix(in srgb,var(--green) 24%,transparent)}
.si{min-height:40px;background:color-mix(in srgb,var(--surface2) 85%,var(--bg));border:1px solid var(--border);border-radius:var(--radius-sm);padding:9px 13px;box-shadow:inset 0 1px 2px rgba(0,0,0,.15),inset 0 1px 0 rgba(255,255,255,.04);transition:border-color .15s,box-shadow .15s,background .15s}
.si:hover{border-color:var(--border-strong);background:var(--surface2)}
.si:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent),inset 0 1px 2px rgba(0,0,0,.1);background:var(--surface);outline:none}
.field label{color:var(--muted);font-weight:650;margin-bottom:6px}
.modal-bg{background:rgba(2,6,18,.75);backdrop-filter:blur(8px) saturate(1.2)}
.modal{border:1px solid var(--border-strong);border-radius:18px;box-shadow:0 32px 80px #00000070,0 0 0 1px rgba(255,255,255,.04)}
.modal h2{background:linear-gradient(180deg,var(--surface) 0%,color-mix(in srgb,var(--surface) 98%,transparent) 100%);border-bottom-color:var(--border)}
.k-col,.pl-col{background:color-mix(in srgb,var(--surface) 90%,var(--bg));border-radius:13px;box-shadow:var(--shadow-sm)}
.k-card,.pl-card{background:var(--surface2);border-radius:9px}
.alert-item{background:var(--surface2);border:1px solid var(--border);border-left:3px solid var(--warn);border-radius:9px}
.empty{color:var(--muted)}
#fab-btn{background:linear-gradient(145deg,var(--accent-hover),var(--accent));box-shadow:0 12px 28px color-mix(in srgb,var(--accent) 36%,transparent)}
#fab-menu,#search-results{border-color:var(--border-strong);box-shadow:var(--shadow)}
#toast{border-color:var(--border-strong);box-shadow:var(--shadow);font-weight:600}
.entity-card{background:var(--surface);border:1px solid var(--border);border-radius:13px;padding:17px 18px;cursor:pointer;box-shadow:var(--shadow-sm);transition:border-color .15s,transform .15s,box-shadow .15s}
.entity-card:hover{border-color:var(--border-strong);transform:translateY(-1px);box-shadow:var(--shadow)}
.entity-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap}
.entity-title{font-size:15px;font-weight:750;color:var(--text);letter-spacing:-.015em}
.entity-legal{font-size:11px;color:var(--muted);margin-top:2px}
.entity-tags{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.entity-details{display:flex;gap:8px 18px;align-items:center;flex-wrap:wrap;margin-top:11px;color:var(--muted);font-size:11.5px}
.entity-contact-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:13px;padding-top:12px;border-top:1px solid var(--border)}
.entity-responsible{display:flex;align-items:center;gap:8px;color:var(--text);font-size:12.5px;font-weight:600}
.entity-responsible-icon{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--surface3);color:var(--accent)}
.checkline{display:flex;align-items:center;gap:8px;min-height:36px;padding:8px 10px;border:1px solid var(--border);border-radius:9px;background:var(--surface2);color:var(--text);font-size:12px;font-weight:650;cursor:pointer}
.checkline input{accent-color:var(--accent);width:15px;height:15px}
.checkline:has(input:checked){border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--surface2))}
.quick-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.quick-link{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface2);color:var(--text);font-size:11.5px;font-weight:650;text-decoration:none;transition:.15s}
.quick-link:hover{border-color:var(--border-strong);background:var(--surface3);transform:translateY(-1px)}
.quick-link.whatsapp{color:var(--green);border-color:color-mix(in srgb,var(--green) 28%,var(--border))}
.quick-link.email{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 28%,var(--border))}
.quick-actions.compact .quick-link{min-height:27px;padding:4px 7px;font-size:10.5px}
@media(max-width:900px){#content{padding:22px 18px 34px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card{min-height:104px}}
@media(max-width:520px){#topbar{height:58px;padding:0 10px;gap:7px}.sync-pill,.tb-user,.install-app-btn .install-label{display:none}.install-app-btn{width:34px;padding:6px;justify-content:center}#search-wrap input{height:36px}#content{padding:18px 12px 86px}.page-title{font-size:21px}.cards{grid-template-columns:1fr 1fr;gap:9px}.card{padding:14px;min-height:98px}.card .val{font-size:19px}.panel{padding:15px;border-radius:12px}.g2,.g3{gap:12px}.modal{padding:20px 16px}.actions{gap:6px}}
@media(max-width:680px){#modal-user-profile .g2{grid-template-columns:1fr!important}}
.access-member-row{display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(220px,1fr) 120px;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--border)}
.access-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.access-step{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:12px;text-align:left;color:var(--text);display:grid;grid-template-columns:28px 1fr auto;gap:9px;align-items:center;cursor:pointer}.access-step b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--surface2);color:var(--muted)}.access-step.done b{background:var(--green);color:#fff}.access-step span{display:grid;gap:3px}.access-step small{color:var(--muted);font-size:10.5px;line-height:1.35}.role-guide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.role-guide>div{border:1px solid var(--border);border-radius:10px;padding:11px}.role-guide p{font-size:11px;color:var(--muted);line-height:1.45;margin:7px 0 0}.notice-soft{padding:11px 13px;background:var(--surface2);border:1px solid var(--border);border-radius:10px;color:var(--muted);font-size:11px;line-height:1.5;margin:10px 0}.perm-roles-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.perm-role-card{border:1px solid var(--border);border-radius:10px;padding:12px}.perm-role-card h4{margin:0 0 8px;font-size:13px}.perm-role-items{display:grid;gap:7px}.perm-item{display:flex;align-items:flex-start;gap:8px;font-size:12px;cursor:pointer}.perm-item input{margin-top:2px}
@media(max-width:900px){.access-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.access-member-row{grid-template-columns:1fr 1fr}.access-member-row>div:last-child{grid-column:1/-1}.role-guide{grid-template-columns:1fr}}
@media(max-width:600px){.access-steps,.access-member-row{grid-template-columns:1fr}.access-member-row>div:last-child{grid-column:auto}}
.platform-portfolio-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 180px 180px auto;gap:10px;align-items:end}.platform-portfolio-layout{display:grid;grid-template-columns:minmax(310px,.72fr) minmax(0,1.5fr);gap:14px;align-items:start}.platform-tenant-list-panel{position:sticky;top:76px;max-height:calc(100vh - 96px);overflow:hidden}.platform-tenant-list{display:grid;gap:8px;max-height:calc(100vh - 180px);overflow:auto;padding-right:3px}.platform-tenant-card{width:100%;border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:12px;text-align:left;color:var(--text);cursor:pointer;display:grid;gap:8px}.platform-tenant-card:hover,.platform-tenant-card.active{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 15%,transparent)}.platform-tenant-card-head{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.platform-tenant-meta{display:flex;gap:5px;flex-wrap:wrap}.platform-health{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;font-size:12px;font-weight:800;background:var(--surface2);border:3px solid var(--border)}.platform-health.healthy{border-color:var(--green);color:var(--green)}.platform-health.attention{border-color:var(--warn);color:var(--warn)}.platform-health.critical{border-color:var(--red);color:var(--red)}.platform-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.platform-module-card{border:1px solid var(--border);border-radius:10px;padding:10px;background:var(--surface)}.platform-module-card strong{display:block;font-size:18px;margin-top:6px}.platform-crm-field{display:grid;grid-template-columns:minmax(140px,1fr) minmax(100px,1.5fr) 45px;gap:8px;align-items:center;padding:7px 0;border-bottom:1px solid var(--border)}.platform-progress{height:7px;background:var(--surface2);border-radius:99px;overflow:hidden}.platform-progress span{display:block;height:100%;background:var(--green)}.platform-insight-list{display:grid;gap:7px}.platform-insight{display:flex;gap:8px;align-items:flex-start;padding:9px 10px;border-radius:9px;background:var(--surface2);font-size:11.5px;line-height:1.4}.platform-tenant-actions{display:flex;gap:8px;flex-wrap:wrap}.platform-privacy-note{font-size:10.5px;color:var(--muted);line-height:1.5;margin-top:10px}.platform-empty-detail{padding:32px;text-align:center;color:var(--muted)}
@media(max-width:1100px){.platform-portfolio-toolbar{grid-template-columns:1fr 1fr}.platform-portfolio-layout{grid-template-columns:1fr}.platform-tenant-list-panel{position:static;max-height:none}.platform-tenant-list{max-height:420px}.platform-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.platform-portfolio-toolbar,.platform-module-grid{grid-template-columns:1fr}.platform-crm-field{grid-template-columns:1fr 45px}.platform-crm-field .platform-progress{grid-column:1/-1;grid-row:2}}
@media(max-width:700px){#modal-pedido{padding:0}#modal-pedido .modal{width:100vw!important;max-height:100vh;border-radius:0;padding:16px 12px;scrollbar-gutter:auto}#modal-pedido .modal-footer{margin-left:-12px;margin-right:-12px;padding-left:12px;padding-right:12px}}
@media(max-width:520px){#chart-fluxo,#chart-status,#chart-cresc{height:220px!important}}
@media(max-width:680px){.cal-jornada-head{display:none}.cal-jornada-row{grid-template-columns:1fr 1fr}.cal-jornada-row>label{grid-column:1/-1}.cal-jornada-row>strong{text-align:left!important}}
@media(max-width:1050px){#modal-geometria-peca .g2{grid-template-columns:1fr!important}#modal-geometria-peca .g2>div:last-child{position:static!important}#geo-preview{padding:12px!important}}
@media print{#sidebar,#topbar,#fab,#toast{display:none!important}#main{margin:0!important;width:100%!important}button{display:none!important}}

/* Presentation shell v161 */
.sb-logo{height:72px;padding:13px 15px}.sb-logo-icon{width:48px;height:38px}.sb-logo-text{font-size:13px}.sb-nav{padding:10px 5px}.sb-group-hdr{padding:11px 10px;margin:2px 5px;width:calc(100% - 10px);font-size:9px}.sb-item{margin:1px 5px;width:calc(100% - 10px);padding:9px 11px}
#topbar{height:64px;padding:0 28px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(14px)}#search-wrap{max-width:430px}#search-wrap input{border-radius:10px;padding-top:9px;padding-bottom:9px}
.director-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px}.director-kicker{font-size:10px;color:var(--accent2);font-weight:800;letter-spacing:1.4px;text-transform:uppercase;margin-bottom:4px}.director-actions{display:flex;gap:8px;flex-wrap:wrap}.dash-area[data-dash-area="operacional"].active{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:0 18px;align-items:start}.dash-area[data-dash-area="operacional"]> :not(.director-side){grid-column:1}.director-side{grid-column:2;grid-row:1/5;position:sticky;top:82px;display:grid;gap:14px}.director-side .panel{padding:16px;margin:0}.director-side h3{font-size:13px}.director-insight{padding:11px 0;border-bottom:1px solid var(--border);display:flex;gap:9px;align-items:flex-start;font-size:12px}.director-insight:last-child{border:0}.director-insight i{width:8px;height:8px;border-radius:50%;margin-top:5px;flex:0 0 auto}.director-insight small{display:block;color:var(--muted);margin-top:2px}.director-footer-note{font-size:10px;color:var(--muted);padding-top:9px;border-top:1px solid var(--border)}
.smart-summary{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);gap:14px;margin-bottom:16px}.smart-hero{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 14%,var(--surface)),var(--surface));border:1px solid color-mix(in srgb,var(--accent) 45%,var(--border));border-radius:14px;padding:18px}.smart-hero strong{display:block;font-size:24px;margin:5px 0}.smart-mini-list{display:grid;gap:7px}.smart-mini{display:flex;gap:9px;align-items:flex-start;padding:9px 10px;border:1px solid var(--border);border-radius:9px;background:var(--surface2);font-size:11.5px}.smart-dot{width:8px;height:8px;border-radius:50%;margin-top:4px;flex:none}.smart-dot.critical{background:var(--red)}.smart-dot.high{background:var(--warn)}.smart-dot.medium{background:var(--accent2)}.smart-dot.low{background:var(--green)}
.master-flow{margin:0 0 18px;padding:16px;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border));border-radius:16px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 8%,var(--surface)),var(--surface))}.master-flow-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:13px}.master-flow-head strong{display:block;font-size:15px}.master-flow-head small{display:block;color:var(--muted);font-size:11px;line-height:1.45;margin-top:3px}.master-flow-badge{white-space:nowrap;border:1px solid color-mix(in srgb,var(--green) 45%,var(--border));color:var(--green);background:color-mix(in srgb,var(--green) 8%,var(--surface));padding:5px 9px;border-radius:999px;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.master-flow-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.master-stage{position:relative;text-align:left;border:1px solid var(--border);border-radius:12px;background:var(--surface2);color:var(--text);padding:12px;cursor:pointer;min-height:116px;transition:transform .15s,border-color .15s,box-shadow .15s}.master-stage:not(:last-child)::after{content:'→';position:absolute;right:-8px;top:45%;z-index:2;width:15px;height:15px;border-radius:50%;display:grid;place-items:center;background:var(--surface);color:var(--accent);font-size:11px;font-weight:900}.master-stage:hover{transform:translateY(-2px);border-color:var(--accent);box-shadow:0 9px 24px rgba(15,23,42,.12)}.master-stage-kicker{display:flex;justify-content:space-between;gap:7px;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.master-stage-kicker i{font-size:15px;color:var(--accent)}.master-stage strong{display:block;font-size:13px;margin-top:7px}.master-stage-count{font-size:24px;font-weight:850;line-height:1;color:var(--accent);margin:8px 0 4px}.master-stage small{display:block;color:var(--muted);font-size:10.5px;line-height:1.35}.master-stage-source{margin-top:8px;padding-top:7px;border-top:1px solid var(--border);font-size:9px;color:var(--muted)}@media(max-width:1050px){.master-flow-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.master-stage::after{display:none}}@media(max-width:680px){.master-flow-head{display:block}.master-flow-badge{display:inline-block;margin-top:9px}.master-flow-grid{grid-template-columns:1fr 1fr}.master-stage{min-height:108px}}@media(max-width:440px){.master-flow-grid{grid-template-columns:1fr}}
.smart-toolbar{display:grid;grid-template-columns:minmax(190px,1fr) 180px 180px auto;gap:10px;align-items:end;margin-bottom:14px}.smart-grid{display:grid;gap:12px}.smart-card{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:17px;display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:14px;align-items:start}.smart-severity{width:8px;height:100%;min-height:110px;border-radius:99px;background:var(--accent2)}.smart-severity.critical{background:var(--red)}.smart-severity.high{background:var(--warn)}.smart-severity.low{background:var(--green)}.smart-card-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:7px}.smart-chip{font-size:9.5px;text-transform:uppercase;letter-spacing:.05em;padding:4px 7px;border-radius:99px;background:var(--surface2);color:var(--muted);font-weight:800}.smart-card h3{font-size:15px;margin:0}.smart-card p{font-size:11.5px;color:var(--muted);line-height:1.5;margin:5px 0}.smart-facts{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.smart-fact{font-size:10.5px;padding:5px 7px;border-radius:7px;background:var(--surface2);color:var(--muted)}.smart-actions{display:grid;gap:7px;min-width:150px}.smart-approval{color:var(--warn);font-size:10.5px;font-weight:700;margin-top:8px}.smart-safe{color:var(--green);font-size:10.5px;font-weight:700;margin-top:8px}
@media(max-width:850px){.smart-summary,.smart-toolbar{grid-template-columns:1fr 1fr}.smart-card{grid-template-columns:6px minmax(0,1fr)}.smart-actions{grid-column:2;display:flex;flex-wrap:wrap}}
@media(max-width:560px){.smart-summary,.smart-toolbar{grid-template-columns:1fr}.smart-card{grid-template-columns:5px minmax(0,1fr)}.smart-actions{grid-column:2}}
.overview-shell{display:grid;gap:16px}.overview-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.overview-kpi{padding:17px;border:1px solid var(--border);border-radius:14px;background:var(--surface);min-width:0}.overview-kpi label{display:block;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.overview-kpi strong{display:block;font-size:25px;line-height:1.1;margin-top:9px}.overview-kpi span{display:block;color:var(--muted);font-size:11px;line-height:1.45;margin-top:5px}.overview-kpi.risk strong{color:var(--red)}.overview-primary{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:14px;align-items:stretch}.overview-panel{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:16px;min-width:0}.overview-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.overview-panel-head h2,.overview-panel-head h3{margin:0}.overview-panel-head h2{font-size:17px}.overview-panel-head h3{font-size:15px}.overview-panel-head small{display:block;color:var(--muted);font-size:10.5px;margin-top:3px}.overview-actions{display:grid;gap:7px}.overview-action{display:grid;grid-template-columns:72px minmax(135px,.75fr) minmax(190px,1.5fr) 100px 82px auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--border);font-size:11px}.overview-action:first-child{border-top:0}.overview-priority{display:inline-flex;align-items:center;justify-content:center;width:max-content;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.overview-priority.critical{color:var(--red);background:color-mix(in srgb,var(--red) 12%,transparent)}.overview-priority.high{color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,transparent)}.overview-priority.medium{color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.overview-action small{display:block;color:var(--muted);font-size:9.5px;margin-top:2px;line-height:1.35}.overview-action-buttons{display:flex;justify-content:flex-end;gap:5px}.overview-action-buttons .btn{-webkit-text-fill-color:currentColor}.overview-finance{display:grid;gap:11px}.overview-finance-row{display:flex;justify-content:space-between;gap:12px;padding-bottom:9px;border-bottom:1px solid var(--border);font-size:11px}.overview-finance-row:last-of-type{border-bottom:0}.overview-flow{display:grid;grid-template-columns:repeat(8,minmax(108px,1fr));gap:7px;overflow-x:auto;padding:2px 2px 6px}.overview-stage{position:relative;text-align:left;border:1px solid var(--border);border-radius:11px;background:var(--surface2);color:var(--text);padding:11px;cursor:pointer;min-height:112px;-webkit-text-fill-color:currentColor}.overview-stage:hover,.overview-stage.active{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 12%,transparent)}.overview-stage:not(:last-child)::after{content:'→';position:absolute;right:-7px;top:17px;color:var(--accent);z-index:2}.overview-stage span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase}.overview-stage strong{display:block;font-size:12px;margin-top:5px}.overview-stage b{display:block;font-size:21px;color:var(--accent);margin-top:7px}.overview-stage small{display:block;color:var(--muted);font-size:9.5px;margin-top:4px;line-height:1.35}.overview-table-wrap{overflow:auto}.overview-table{width:100%;min-width:770px}.overview-table th{font-size:9.5px;text-transform:uppercase;letter-spacing:.04em}.overview-table td{font-size:11px;vertical-align:middle}.overview-duo{display:grid;grid-template-columns:1fr 1fr;gap:14px}.overview-summary-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.overview-summary-list li{display:flex;justify-content:space-between;gap:12px;padding-bottom:7px;border-bottom:1px solid var(--border);font-size:11px}.overview-summary-list li:last-child{border-bottom:0}.overview-activities{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.overview-activity{padding:11px;border:1px solid var(--border);border-radius:10px;background:var(--surface2);font-size:10.5px;line-height:1.45}.overview-activity small{display:block;color:var(--muted);font-size:9px;margin-top:5px}.overview-empty{padding:18px;color:var(--muted);text-align:center;font-size:11px}.overview-filter{min-width:145px}.overview-filter label{display:block;color:var(--muted);font-size:9px;font-weight:800;margin-bottom:3px;text-transform:uppercase}.overview-filter .si{height:34px;font-size:11px;padding:6px 9px}.overview-resolved-note{color:var(--muted);font-size:9.5px;line-height:1.4;margin-top:8px}@media(max-width:1400px){.overview-primary{grid-template-columns:1fr}.overview-action{grid-template-columns:70px minmax(120px,.8fr) minmax(170px,1.5fr) 90px 75px auto}}@media(max-width:1180px){.overview-kpis{grid-template-columns:repeat(2,1fr)}.overview-activities{grid-template-columns:1fr 1fr}}@media(max-width:760px){.overview-kpis,.overview-duo{grid-template-columns:1fr}.overview-action{grid-template-columns:auto 1fr auto}.overview-action>div:nth-child(3),.overview-action>div:nth-child(4),.overview-action>div:nth-child(5){grid-column:2}.overview-action-buttons{grid-column:3;grid-row:1/4;flex-direction:column}.overview-activities{grid-template-columns:1fr}.overview-filter{width:100%}.director-actions .overview-filter{flex:1}.overview-stage:not(:last-child)::after{display:none}}
#page-dashboard .cards{grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px}#page-dashboard [data-dash-area="operacional"]>.cards{grid-template-columns:repeat(5,minmax(0,1fr))}#page-dashboard .card{box-shadow:none;padding:16px;border-radius:12px;position:relative;overflow:hidden}#page-dashboard .card:before{content:'';position:absolute;inset:0 auto 0 0;width:3px;background:var(--accent)}#page-dashboard .card.green:before{background:var(--green)}#page-dashboard .card.red:before{background:var(--red)}#page-dashboard .card.warn:before{background:var(--warn)}#page-dashboard .card .val{font-size:25px}.macro-stage{min-width:126px;background:var(--surface2);text-align:left}.macro-stage strong{font-size:11px}.macro-order{background:var(--surface);transition:.15s}.macro-order:hover{transform:translateX(2px)}
body[data-workspace="dashboard"] #page-dashboard [data-dash-area="operacional"]>#dash-macro-kpis{grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-flow:row}body[data-workspace="dashboard"] #page-dashboard [data-dash-area="operacional"]>#dash-macro-kpis>.card,body[data-workspace="dashboard"] #page-dashboard [data-dash-area="operacional"]>#dash-macro-kpis>.card:first-child{grid-column:span 1}
#modal-geometria-peca{padding:8px}#modal-geometria-peca .modal{width:calc(100vw - 16px)!important;max-width:1680px!important;max-height:calc(100vh - 16px);padding:20px}#modal-geometria-peca .modal h2{top:-20px;margin:-20px -20px 12px;padding:20px 20px 12px}#modal-geometria-peca .geo-editor-shell{grid-template-columns:minmax(640px,1fr) minmax(340px,410px)!important;gap:18px!important}#modal-geometria-peca .geo-properties-panel{order:2;max-height:calc(100vh - 190px);overflow:auto;padding-right:9px;scrollbar-width:thin}#modal-geometria-peca .geo-canvas-panel{order:1;border:1px solid var(--cad-line);border-radius:12px;padding:14px;background:#08111ddd;box-shadow:0 18px 48px #0007;min-width:0}#modal-geometria-peca #geo-preview{min-height:520px;display:block}#modal-geometria-peca .modal-footer{position:sticky;bottom:-20px;background:var(--surface);border-top:1px solid var(--border);margin:12px -20px -20px;padding:12px 20px;z-index:35}
.geo-viewer-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid #253246;background:#0b1624;color:#eef4fb}.geo-viewer-title{min-width:180px;text-align:center}.geo-viewer-title strong{display:block;font-size:12px}.geo-viewer-title small{display:block;color:#9fb0c7;font-size:10px;margin-top:2px}.geo-viewer-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.geo-viewer-header .btn{color:#eef4fb!important;border-color:#3d5578!important;background:#1c3049!important;-webkit-text-fill-color:currentColor}.geo-viewer-header .btn:hover{background:#24405e!important;border-color:#4d698f!important}.geo-viewer-header .btn:disabled,.geo-viewer-header .btn[disabled]{opacity:.55!important}.geo-viewer-main{display:grid;grid-template-columns:minmax(0,1fr) 250px;min-height:500px;background:#e9edf2}.geo-sheet-stage{min-width:0;overflow:hidden;padding:14px;display:grid;place-items:center}.geo-sheet-stage #geo-preview{width:100%;transform-origin:0 0;will-change:transform}.geo-sheet-stage #geo-preview>.technical-sheet-page,.geo-sheet-stage #geo-preview>.geo-standalone-sheet{margin:0!important;width:100%;max-width:1120px;background:#fff;box-shadow:0 6px 24px #0b132033}.geo-sheet-stage #geo-preview>svg{width:100%;height:auto;background:#fff;box-shadow:0 6px 24px #0b132033}.geo-import-panel{border-left:1px solid #253246;background:#0b1624;color:#eef4fb;padding:18px 14px;overflow:auto}.geo-import-panel h3{font-size:12px;margin:0 0 6px}.geo-import-panel>p{font-size:10.5px;line-height:1.5;color:#9fb0c7;margin:0 0 14px}.geo-import-card{display:grid;grid-template-columns:26px 1fr 18px;gap:8px;align-items:center;border:1px solid #29384c;border-radius:9px;padding:10px;margin-bottom:8px;background:#111f30;font-size:10px}.geo-import-card i{font-style:normal;font-size:18px;color:#6ea8fe}.geo-import-card strong{display:block;font-size:10.5px}.geo-import-card small{display:block;color:#a8b6c8;margin-top:2px}.geo-import-ok{color:#69db7c}.geo-sheet-tabs{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #253246;background:#0b1624;padding:8px;gap:6px}.geo-sheet-tab{border:0;border-radius:7px;background:transparent;color:#9fb0c7;padding:8px 6px;font-size:10px;cursor:pointer}.geo-sheet-tab.active{background:#33276f;color:#fff}.geo-sheet-summary{display:grid;grid-template-columns:repeat(7,minmax(90px,1fr));gap:1px;background:#253246;border-top:1px solid #253246}.geo-sheet-metric{background:#0b1624;color:#9fb0c7;padding:9px 10px;font-size:9px}.geo-sheet-metric strong{display:block;color:#eef4fb;font-size:12px;margin-top:3px}.geo-preview-drawer-btn{display:none}
.geo-canvas-guidance{display:flex;align-items:center;gap:8px;min-height:34px;padding:7px 12px;border-bottom:1px solid #253246;background:#102033;color:#a8b6c8;font-size:10px;line-height:1.35}.geo-canvas-guidance i{color:#69dbd0;font-size:15px}.geo-canvas-guidance strong{color:#eef4fb}.geo-vertex-handle{filter:drop-shadow(0 1px 2px rgba(15,23,42,.45))}.geo-vertex-handle:focus{outline:none;stroke:#f59e0b!important;stroke-width:4!important}.geo-vertex-guide{pointer-events:none}.geo-vertex-label{pointer-events:none;paint-order:stroke;stroke:#fff;stroke-width:4px;stroke-linejoin:round}
#modal-geometria-peca .geo-canvas-panel .section-divider{color:#9fb0c7}#modal-geometria-peca .geo-canvas-panel{color:#9fb0c7}
.geo-draft-bar{display:flex;align-items:center;gap:10px;min-height:44px;margin:10px 0 2px;padding:8px 10px;border:1px solid var(--border);border-radius:11px;background:var(--surface2)}.geo-draft-state{display:flex;align-items:center;gap:8px;min-width:0;margin-right:auto}.geo-draft-state i{font-size:18px;color:var(--accent)}.geo-draft-copy{min-width:0}.geo-draft-copy strong{display:block;font-size:11px}.geo-draft-copy small{display:block;color:var(--muted);font-size:9.5px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.geo-draft-actions{display:flex;align-items:center;gap:5px}.geo-draft-actions .btn{min-width:34px;justify-content:center}.geo-draft-status-saving i{animation:geoDraftPulse .8s ease-in-out infinite alternate}.geo-draft-status-recovered i{color:var(--green)}@keyframes geoDraftPulse{to{opacity:.35}}@media(max-width:760px){.geo-draft-bar{align-items:stretch;flex-direction:column}.geo-draft-actions{width:100%;overflow-x:auto}.geo-draft-actions .btn:last-child{margin-left:auto}}
.geo-context-card{border:1px solid var(--border);border-radius:12px;padding:12px;background:var(--surface);margin-bottom:10px}.geo-context-card h3{font-size:12px;margin:0 0 7px}.geo-context-chips{display:flex;flex-wrap:wrap;gap:5px}.geo-context-chip{font-size:9.5px;padding:4px 7px;border-radius:999px;border:1px solid var(--border);background:var(--surface2);color:var(--muted)}.geo-context-chip strong{color:var(--text)}.geo-quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:9px}.geo-selection-panel{border-left:4px solid var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--surface))}.geo-selection-panel .field{margin:7px 0}.geo-face-toggles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:9px 0}.geo-face-toggle{display:flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:8px;padding:7px;background:var(--surface);font-size:10px;font-weight:700}.geo-face-toggle input{margin:0}.geo-exception-list{display:grid;gap:5px}.geo-exception{font-size:10.5px;line-height:1.35;border-radius:7px;padding:6px 8px;background:var(--surface2);color:var(--muted)}.geo-exception.error{border-left:3px solid var(--red);color:var(--red)}.geo-exception.warning{border-left:3px solid var(--warn);color:var(--warn)}.geo-mode-toggle{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;margin-left:auto}.geo-mode-toggle button{border:0;border-right:1px solid var(--border);border-radius:0!important}.geo-mode-toggle button:last-child{border-right:0}.geo-mode-toggle button[aria-pressed="true"]{background:var(--accent)!important;color:#fff!important}.geo-mode-technical .geo-quick-actions{display:none}#geo-preview [data-cutout-index],#geo-preview [data-surface-relief-index]{cursor:pointer;transition:filter .12s,stroke-width .12s}#geo-preview [data-piece-face]{cursor:pointer;pointer-events:stroke;transition:stroke .12s,stroke-opacity .12s}#geo-preview [data-piece-face]:hover,#geo-preview [data-piece-face]:focus{stroke:#14b8a6;stroke-opacity:.55;outline:none}#geo-preview [data-piece-face][data-geo-selected="true"]{stroke:#f59e0b;stroke-opacity:.8;filter:drop-shadow(0 0 4px #f59e0b)}#geo-preview [data-panel-index],#geo-preview [data-support-index]{cursor:pointer;outline:none;transition:filter .12s}#geo-preview [data-panel-movable="true"],#geo-preview [data-support-manual="true"]{cursor:ew-resize}#geo-preview [data-panel-index]:hover,#geo-preview [data-panel-index]:focus,#geo-preview [data-support-index]:hover,#geo-preview [data-support-index]:focus{filter:drop-shadow(0 0 4px #14b8a6)}#geo-preview [data-panel-index][data-geo-selected="true"],#geo-preview [data-support-index][data-geo-selected="true"]{filter:drop-shadow(0 0 6px #f59e0b)}#geo-preview [data-panel-index][data-geo-selected="true"]>rect:not(:first-of-type),#geo-preview [data-support-index][data-geo-selected="true"] path{stroke:#f59e0b!important;stroke-width:4!important}#geo-preview [data-geo-selected="true"]{filter:drop-shadow(0 0 5px #22d3c8);stroke-width:4!important}
.geo-work-nav{display:flex;gap:6px;align-items:center;overflow-x:auto;padding:8px 0 10px;border-bottom:1px solid var(--border);position:sticky;top:43px;z-index:32;background:var(--surface);scrollbar-width:thin}.geo-work-nav .btn{white-space:nowrap;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.4px}
#geo-preview [data-piece-face][data-geo-selected="true"]{stroke-opacity:.42;stroke-width:18!important}
#geo-preview [data-seam-index]{cursor:pointer;outline:none;transition:filter .12s}#geo-preview [data-seam-index]:hover,#geo-preview [data-seam-index]:focus{filter:drop-shadow(0 0 4px #f59e0b)}#geo-preview [data-seam-index][data-geo-selected="true"]{filter:drop-shadow(0 0 6px #f59e0b)}#geo-preview [data-seam-index][data-geo-selected="true"] line:nth-of-type(2){stroke:#f59e0b!important;stroke-width:4!important}.geo-seam-handle{filter:drop-shadow(0 1px 2px rgba(15,23,42,.45))}.geo-seam-handle:focus{outline:none;stroke:#f59e0b!important;stroke-width:4!important}
#geo-preview [data-dimension-id]{cursor:grab;outline:none;transition:filter .12s}#geo-preview [data-dimension-id]:hover,#geo-preview [data-dimension-id]:focus{filter:drop-shadow(0 0 4px #2563eb)}#geo-preview [data-dimension-id][data-geo-selected="true"]{filter:drop-shadow(0 0 6px #2563eb)}#geo-preview [data-dimension-id][data-geo-selected="true"] text{fill:#1d4ed8!important}#geo-preview [data-dimension-id][data-geo-selected="true"] line{stroke:#2563eb!important}
/* Uma etapa por vez: o formulário inteiro de uma vez era ilegível. */
.geo-step{display:none}
.geo-step.is-active{display:block;animation:geoStepIn .16s ease-out}
@keyframes geoStepIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.geo-work-nav .btn[aria-current="step"]{background:var(--accent);color:#fff;border-color:var(--accent)}
.geo-work-nav .btn[data-geo-step]{position:relative}
.geo-work-nav .btn[data-geo-step].geo-step-pendente::after{content:'';position:absolute;top:2px;right:3px;width:6px;height:6px;border-radius:50%;background:var(--red);box-shadow:0 0 0 2px var(--surface)}
.geo-work-nav .btn[data-geo-step].geo-step-pendente[aria-current="step"]::after{box-shadow:0 0 0 2px var(--accent)}
.geo-step-hint{font-size:11px;color:var(--muted);margin:2px 0 10px}
@media(max-width:1250px){.dash-area[data-dash-area="operacional"].active{grid-template-columns:1fr}.dash-area[data-dash-area="operacional"]> :not(.director-side),.director-side{grid-column:1}.director-side{grid-row:auto;position:static;grid-template-columns:1fr 1fr}#page-dashboard .cards,#page-dashboard [data-dash-area="operacional"]>.cards,body[data-workspace="dashboard"] #page-dashboard [data-dash-area="operacional"]>#dash-macro-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){:root{--rail:58px}.director-side{grid-template-columns:1fr}#page-dashboard .cards,#page-dashboard [data-dash-area="operacional"]>.cards,body[data-workspace="dashboard"] #page-dashboard [data-dash-area="operacional"]>#dash-macro-kpis{grid-template-columns:repeat(2,1fr)}#content{padding:20px}#modal-geometria-peca .geo-editor-shell{grid-template-columns:1fr!important}#modal-geometria-peca .geo-properties-panel{order:2;max-height:none}#modal-geometria-peca .geo-canvas-panel{order:1}.geo-viewer-main{grid-template-columns:1fr}.geo-import-panel{display:none;border-left:0;border-top:1px solid #253246;max-height:260px}.geo-import-panel.open{display:block}.geo-preview-drawer-btn{display:inline-flex}.geo-sheet-summary{grid-template-columns:repeat(4,1fr)}}
@media(max-width:600px){.geo-viewer-header{align-items:stretch;flex-direction:column}.geo-viewer-title{text-align:left}.geo-viewer-actions{overflow-x:auto;flex-wrap:nowrap}.geo-viewer-actions .btn{white-space:nowrap}.geo-sheet-stage{padding:7px}.geo-sheet-tabs{grid-template-columns:repeat(2,1fr)}.geo-sheet-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){#sidebar{left:0;width:min(86vw,280px)}#main,body.sb-collapsed #main{margin-left:0;width:100%}#content{padding:16px}.director-head{align-items:flex-start;flex-direction:column}#page-dashboard .cards{grid-template-columns:1fr 1fr}#topbar{padding:0 12px}.sync-pill,.install-app-btn .install-label{display:none}}
@media(max-width:480px){#page-dashboard .cards,body[data-workspace="dashboard"] #page-dashboard [data-dash-area="operacional"]>#dash-macro-kpis{grid-template-columns:1fr}.director-actions{width:100%}.director-actions .btn{flex:1;justify-content:center}}
/* PROJETO TÉCNICO PREMIUM — referência Opção 3 */
.tech-premium{--tp-bg:var(--bg);--tp-panel:var(--surface);--tp-elev:var(--surface2);--tp-ink:var(--text);--tp-muted:var(--muted);--tp-line:var(--border);--tp-blue:var(--accent);--tp-ok:var(--green);--tp-warn:var(--warn);--tp-bad:var(--red);color:var(--tp-ink);background:var(--tp-bg);border:1px solid var(--tp-line);border-radius:18px;overflow:hidden;box-shadow:0 18px 60px rgba(15,23,42,.18)}
.tech-top{min-height:58px;display:grid;grid-template-columns:minmax(260px,1fr) minmax(260px,420px) auto;gap:12px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--tp-line);background:var(--tp-panel);backdrop-filter:blur(10px);position:relative;z-index:4}
.tech-searchbox{position:relative;min-width:0}
.tech-search,.tech-select{height:36px;border:1px solid var(--tp-line);border-radius:10px;background:var(--tp-elev);color:var(--tp-ink);padding:0 12px;font-size:12px;width:100%}
.tech-search-popover{display:none;position:absolute;z-index:20;left:0;right:0;top:42px;max-height:280px;overflow:auto;background:var(--tp-panel);border:1px solid var(--tp-line);border-radius:12px;box-shadow:0 18px 48px rgba(0,0,0,.22);padding:6px}
.tech-search-popover.open{display:block}.tech-search-result{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:9px 10px;border-radius:9px;color:var(--tp-ink);font-size:12px;cursor:pointer}.tech-search-result:hover{background:var(--tp-elev)}.tech-search-result small{color:var(--tp-muted)}
.tech-shell{display:grid;grid-template-columns:minmax(240px,280px) minmax(520px,1fr) minmax(280px,330px);height:calc(100vh - 188px);min-height:640px}
.tech-tree{background:#20262b;color:#eef2f3;border-right:1px solid #111820;padding:14px 12px;overflow:auto}
.tech-tree h4{font-size:10px;letter-spacing:1.8px;text-transform:uppercase;color:#aeb7bd;margin:12px 6px}
.tech-tree .tree-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:7px 8px;border-radius:8px;font-size:12px;cursor:pointer;color:#dce3e6}
.tech-tree .tree-row:hover,.tech-tree .tree-row.active{background:rgba(255,255,255,.09)}
.tech-tree .tree-folder{font-weight:800;color:#fff}
.tech-count{font-size:10px;background:#e8f1df;color:#2b4d2e;border-radius:6px;padding:2px 6px;font-weight:800}
.tech-canvas-wrap{display:grid;grid-template-rows:auto auto minmax(300px,1fr) auto;background:var(--tp-bg);min-width:0;overflow:hidden}
.tech-titlebar{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:14px 18px;border-bottom:1px solid var(--tp-line)}
.tech-titlebar h2{margin:0;font-size:24px;color:var(--tp-ink)}
.tech-canvas{margin:18px;min-height:380px;border:1px solid var(--tp-line);border-radius:14px;background:radial-gradient(circle at 1px 1px,rgba(31,95,191,.12) 1px,transparent 0) 0 0/22px 22px,var(--tp-panel);display:grid;place-items:center;padding:18px;overflow:auto}
.tech-canvas svg{max-width:100%;height:auto}
.tech-bottom{border-top:1px solid var(--tp-line);background:var(--tp-panel);padding:10px 14px;max-height:260px;overflow:auto}
.tech-tabs{display:flex;gap:4px;border-bottom:1px solid var(--tp-line);margin-bottom:10px;overflow:auto}
.tech-tabs button{border:0;background:transparent;padding:9px 14px;color:var(--tp-muted);font-size:12px;border-bottom:2px solid transparent;cursor:pointer}
.tech-tabs button.active{color:#1b5638;border-bottom-color:#1b5638;font-weight:800}
.tech-side{border-left:1px solid var(--tp-line);background:var(--tp-panel);padding:14px;overflow:auto}
.tech-score{display:flex;align-items:center;gap:10px;margin-bottom:12px}.tech-score strong{font-size:22px;margin-left:auto}
.tech-score-bar{height:7px;background:#e7dfd3;border-radius:8px;overflow:hidden;flex:1}.tech-score-bar i{display:block;height:100%;background:#2f7d4b}
.tech-check-group{border-top:1px solid var(--tp-line);padding:10px 0}.tech-check-group h4{font-size:12px;margin-bottom:7px;color:var(--tp-ink)}
.tech-check{display:flex;align-items:center;gap:8px;font-size:12px;padding:5px 0;color:#3d4656}.tech-check .ok{color:var(--tp-ok)}.tech-check .warn{color:var(--tp-warn)}.tech-check .bad{color:var(--tp-bad)}
.tech-info-grid{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:12px}.tech-info-grid small{display:block;color:var(--tp-muted);font-size:10px;text-transform:uppercase;letter-spacing:.6px}.tech-info-grid strong{display:block;margin-top:2px;font-size:13px;color:var(--tp-ink)}
.tech-timeline{display:flex;align-items:center;gap:5px;padding:9px 14px 12px;background:var(--tp-panel);border-top:1px solid var(--tp-line);overflow:auto;scrollbar-gutter:stable}.tech-step{display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:10.5px;color:var(--tp-muted)}.tech-step i{width:19px;height:19px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--tp-line);font-style:normal;font-size:10px;flex-shrink:0}.tech-step.done i{background:#2f7d4b;color:#fff;border-color:#2f7d4b}.tech-step.current i{background:#1f5fbf;color:#fff;border-color:#1f5fbf}.tech-timeline .tech-step-link{height:1px;min-width:14px;flex:0 1 26px;background:#d8d2c8}
.tech-status-strip{display:flex;gap:8px;flex-wrap:wrap;padding:9px 18px;border-bottom:1px solid var(--tp-line);background:var(--tp-elev);font-size:11px;color:var(--tp-muted)}.tech-status-strip strong{color:var(--tp-ink)}
.tech-empty-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:14px}.tech-blocker{border-left:3px solid var(--tp-bad);background:color-mix(in srgb,var(--tp-bad) 10%,transparent);padding:8px 10px;border-radius:8px;font-size:12px;margin:6px 0}
@media(max-width:1180px){.tech-shell{grid-template-columns:220px 1fr;height:auto}.tech-side{grid-column:1/3;border-left:0;border-top:1px solid var(--tp-line)}.tech-top{grid-template-columns:1fr}}
@media(max-width:820px){.tech-premium{border-radius:12px}.tech-shell{grid-template-columns:1fr}.tech-tree,.tech-side{grid-column:1;border-right:0;border-left:0}.tech-info-grid{grid-template-columns:1fr 1fr}.tech-top{height:auto}}

/* Mobile sidebar overlay */
@media(max-width:768px){
  #sidebar{position:fixed;left:-100%;z-index:500;transition:left .25s;height:100vh}
  body.sb-open #sidebar{left:0}
  body.sb-open::after{content:'';position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:499}
  #main{margin-left:0!important;width:100%!important}
  #content{max-width:100%;overflow-x:hidden}
  .page .panel{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}
  .page .panel table{min-width:max-content}
}


/* ===== Identidade GATURAMO ===== */
:root{--accent:#0F3D2E;--gold:#E2C15A;--navy:#0D3554;--bg:#F5F5F2}
html[data-theme='dark']{--accent:#2f7a5f;--gold:#E2C15A;--navy:#9db8d6}
.sb-logo-text{color:var(--accent)}
.sb-logo-sub{color:var(--gold);letter-spacing:.14em;text-transform:uppercase;font-weight:700}
.btn-primary{background:var(--accent)}
.btn-primary:hover{background:color-mix(in srgb,var(--accent) 88%,#000)}
#alertas-tab{background:var(--accent)}
#alertas-tab{position:fixed;right:0;top:45%;z-index:650;background:var(--accent);color:#fff;border:none;border-radius:10px 0 0 10px;padding:10px 7px;cursor:pointer;font-size:16px;box-shadow:0 4px 14px rgb(2 6 23/.3)}
#alertas-tab .badge-n{position:absolute;top:-6px;left:-6px;background:var(--red);color:#fff;border-radius:50%;min-width:18px;height:18px;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center}
#alertas-drawer{position:fixed;right:0;top:0;bottom:0;width:min(330px,92vw);background:var(--surface);border-left:1px solid var(--border);z-index:600;transform:translateX(100%);transition:transform .22s;box-shadow:-8px 0 32px rgb(2 6 23/.25);display:flex;flex-direction:column}
#alertas-drawer.open{transform:none}
/* ===== Polimento visual: barra lateral, botões e modais ===== */
.sb-item{border-radius:10px;margin:1px 6px;transition:background .15s}
.sb-item:hover{background:var(--surface2)}
.sb-group-label,.sb-group>button:first-child{letter-spacing:.08em;font-size:10px;text-transform:uppercase}
:root{--sb:270px}
.sb-logo{white-space:normal}
.sb-logo>div{min-width:0}
.sb-logo-text{white-space:normal;line-height:1.25;overflow-wrap:anywhere;font-size:14.5px}
body.sb-collapsed .sb-logo{white-space:nowrap}
.btn-sm{min-height:34px;padding:6px 11px}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}
.btn-primary{box-shadow:0 1px 3px rgb(2 6 23/.25)}
.modal-footer{position:sticky;bottom:-28px;z-index:25;background:var(--surface);margin:20px -28px -28px;padding:14px 28px 18px;border-radius:0 0 16px 16px;flex-wrap:wrap;box-shadow:0 -6px 16px -12px rgb(2 6 23/.35)}
.panel{box-shadow:0 1px 2px rgb(2 6 23/.06)}
.modal{box-shadow:0 24px 64px rgb(2 6 23/.38)}

/* ── PREMIUM ENHANCEMENTS ── */
.card .val{background:inherit;-webkit-text-fill-color:inherit}
.card.green .val{color:var(--green);-webkit-text-fill-color:var(--green)}
.card.accent .val{color:var(--accent);-webkit-text-fill-color:var(--accent)}
.card.purple .val{color:var(--purple);-webkit-text-fill-color:var(--purple)}
.card.warn .val{color:var(--warn);-webkit-text-fill-color:var(--warn)}
.card.red .val{color:var(--red);-webkit-text-fill-color:var(--red)}
/* Glow effect on primary button */
.btn-primary::after{content:'';position:absolute;inset:0;border-radius:inherit;opacity:0;background:radial-gradient(ellipse at 50% -20%,rgba(255,255,255,.18),transparent 70%);transition:opacity .2s}
.btn-primary:hover::after{opacity:1}
/* Table improvements */
table{border-collapse:separate;border-spacing:0}
tbody tr:first-child td:first-child{border-radius:0}
tbody tr:last-child td{border-bottom:none}
/* Badge refinements */
.badge{font-size:10.5px;letter-spacing:.01em;font-weight:700;padding:3px 9px}
/* Kanban & pipeline */
.k-card:hover,.pl-card:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:0 4px 12px rgba(0,0,0,.3),0 0 0 1px color-mix(in srgb,var(--accent) 25%,transparent)}
/* Toast */
#toast{border-radius:12px;font-size:13px;padding:12px 22px;border:1px solid var(--border-strong);background:color-mix(in srgb,var(--surface) 96%,var(--bg));backdrop-filter:blur(12px)}
/* Modal footer */
.modal-footer{flex-wrap:wrap;gap:8px}
/* Entity cards */
.entity-card{border-radius:var(--radius);background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface2) 55%,var(--surface)));box-shadow:var(--shadow-sm),inset 0 1px 0 rgba(255,255,255,.04)}
/* Search */
#search-wrap input{border-radius:20px;letter-spacing:-.01em}
/* Scrollbar */
::-webkit-scrollbar{width:5px;height:5px}
::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:99px}
/* FAB */
#fab-btn{box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 44%,transparent),0 2px 6px rgba(0,0,0,.4);transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s}
#fab-btn:hover{transform:scale(1.1) translateY(-2px);box-shadow:0 12px 32px color-mix(in srgb,var(--accent) 55%,transparent)}
/* Sidebar connector line color */
.sb-group-items:not(.sb-grp-collapsed)::before{background:linear-gradient(180deg,var(--border-strong),transparent)}
/* Section divider */
.section-divider{font-size:10.5px;font-weight:700;letter-spacing:.08em;color:var(--muted)}
/* Progress bar */
.progress-fill{background:linear-gradient(90deg,var(--accent),var(--accent2));box-shadow:0 0 8px color-mix(in srgb,var(--accent) 40%,transparent)}
/* Alert items */
.alert-item{border-radius:10px;background:color-mix(in srgb,var(--surface2) 80%,transparent)}
/* Light theme overrides */
[data-theme=light] .card{box-shadow:0 2px 8px rgba(0,0,0,.06),inset 0 1px 0 rgba(255,255,255,.9)}
[data-theme=light] .panel{box-shadow:0 2px 8px rgba(0,0,0,.05)}
[data-theme=light] .modal{box-shadow:0 24px 64px rgba(0,0,0,.14)}
[data-theme=light] .btn-primary{box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 28%,transparent)}
[data-theme=light] #topbar{background:rgba(255,255,255,.92);box-shadow:0 1px 0 var(--border),0 2px 12px rgba(30,41,59,.08)}
[data-theme=light] #sb-toggle,[data-theme=light] .tb-btn{color:var(--text)}
[data-theme=light] .tb-btn:hover{background:var(--surface2);color:var(--text)}
[data-theme=light] .tb-user{color:var(--text);font-weight:600}
[data-theme=light] .sync-pill{background:var(--surface2);border:1px solid var(--border);color:var(--muted)}
[data-theme=light] #search-wrap input{background:var(--surface2);border-color:var(--border);color:var(--text)}
[data-theme=light] #sidebar{background:var(--surface);border-right:1px solid var(--border)}
[data-theme=light] .sb-group-hdr{background:color-mix(in srgb,var(--surface2) 70%,transparent)}
[data-theme=light] .sb-group-hdr:not(.sb-grp-collapsed){background:var(--surface2);border-color:var(--border)}
[data-theme=light] .sb-item:hover{background:var(--surface2)}
[data-theme=light] .sb-logo{border-bottom:1px solid var(--border)}
/* ===== ROTINAS & CHAT ===== */
.rot-kanban{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;align-items:start}
.rot-col{background:var(--surface2);border:1px solid var(--border);border-radius:12px;overflow:hidden}
.rot-col-hdr{padding:11px 14px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}
.rot-card{background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:11px 12px;cursor:pointer;transition:border-color .15s,transform .15s;margin-bottom:8px}
.rot-card:hover{border-color:var(--border-strong);transform:translateY(-1px)}
.rot-card:last-child{margin-bottom:0}
.chat-ch-btn{display:flex;align-items:center;gap:8px;width:calc(100% - 8px);padding:8px 12px;border:none;background:none;cursor:pointer;font-size:12.5px;color:var(--muted);transition:.15s;border-radius:8px;margin:1px 4px;text-align:left;-webkit-text-fill-color:currentColor}
.chat-ch-btn:hover{background:var(--surface2);color:var(--text);-webkit-text-fill-color:currentColor}
.chat-ch-btn.active{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);font-weight:650;-webkit-text-fill-color:currentColor}
.chat-bubble-mine{background:var(--accent);color:#fff;padding:8px 12px;border-radius:12px 12px 4px 12px;font-size:13px;line-height:1.4;word-break:break-word;-webkit-text-fill-color:#fff}
.chat-bubble-other{background:var(--surface3);color:var(--text);padding:8px 12px;border-radius:12px 12px 12px 4px;font-size:13px;line-height:1.4;word-break:break-word;-webkit-text-fill-color:currentColor}
@media(max-width:1050px){.rot-kanban{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.rot-kanban{grid-template-columns:1fr}}

/* ===== CORREÇÃO FINAL DE DESIGN OPERACIONAL v171 ===== */
:root{--brand-primary:#0F3D2E;--brand-gold:#C99A2E;--brand-ink:#142033}
html[data-theme='dark']{--bg:#07111d;--surface:#101a28;--surface2:#162235;--surface3:#20304a;--border:#2c3e58;--border-strong:#415772;--text:#f3f7fb;--muted:#a7b4c7;--accent:#44a27e;--accent-hover:#55b88f;--accent2:#7ccbd1;--glass-bg:rgba(16,26,40,.92)}
html[data-theme='light']{--bg:#f4f6f2;--surface:#fff;--surface2:#f6f8fb;--surface3:#ecf1f6;--text:#172033;--muted:#536278;--accent:#0F3D2E;--accent-hover:#15523f;--accent2:#0d6b66}
body{background:var(--bg);color:var(--text)}
#topbar{background:color-mix(in srgb,var(--surface) 94%,transparent)!important;border-bottom:1px solid var(--border)!important;color:var(--text)}
html[data-theme='dark'] #topbar{background:rgba(16,26,40,.94)!important;box-shadow:0 1px 0 var(--border),0 12px 32px rgba(0,0,0,.18)!important}
#sidebar{background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--surface) 88%,var(--bg)))!important}
.sb-logo-text{color:var(--text)!important;font-weight:800!important}
.sb-logo-sub{color:var(--brand-gold)!important;letter-spacing:.08em!important}
.sb-logo-icon,.auth-logo{object-fit:contain;background:#fff}
.director-kicker{color:var(--accent)!important}
.card,.panel{background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface2) 58%,var(--surface)))!important;color:var(--text)!important;border-color:var(--border)!important}
.card label,.panel .muted,.page-sub,.sub{color:var(--muted)!important}
.card .val{color:var(--text);-webkit-text-fill-color:currentColor}
.alert-item,.director-insight{color:var(--text)}
.btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent-hover))!important;color:#fff!important}
.btn-ghost{background:color-mix(in srgb,var(--surface2) 78%,transparent)!important;color:var(--text)!important;border-color:var(--border)!important}
.btn-ghost:hover{border-color:var(--accent)!important;color:var(--accent)!important}
.btn-ghost.btn-danger{color:var(--red)!important;-webkit-text-fill-color:var(--red)!important;border-color:var(--red)!important}
.btn-ghost.btn-danger:hover{background:color-mix(in srgb,var(--red) 12%,transparent)!important;color:var(--red)!important;-webkit-text-fill-color:var(--red)!important;border-color:var(--red)!important}
.tech-tree .btn-ghost{color:#eef2f3!important;-webkit-text-fill-color:#eef2f3!important;border-color:#3b4650!important}
.tech-tree .btn-ghost:hover{color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:var(--accent)!important}
body[data-workspace="technical"] #page-medicao{background-color:var(--bg)!important;background-image:linear-gradient(color-mix(in srgb,var(--cad-grid) 45%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--cad-grid) 45%,transparent) 1px,transparent 1px)!important;background-size:32px 32px!important;border:1px solid var(--border);border-radius:18px;padding:24px!important;overflow:hidden}
body[data-workspace="technical"] #page-medicao .page-title,body[data-workspace="technical"] #page-medicao .page-sub,body[data-workspace="technical"] #page-medicao .actions,body[data-workspace="technical"] #page-medicao #medicao-list{position:relative;z-index:1}
body[data-workspace="technical"] #page-medicao .actions{background:color-mix(in srgb,var(--surface) 86%,transparent);border:1px solid var(--border);border-radius:14px;padding:12px;backdrop-filter:blur(8px)}
body[data-workspace="technical"] #page-medicao #medicao-list>div{box-shadow:0 18px 44px rgba(2,6,23,.10)}
.tech-premium{box-shadow:0 24px 70px rgba(15,23,42,.16)!important}
html[data-theme='dark'] .tech-premium{--tp-bg:#0d1724;--tp-panel:#121f30;--tp-ink:#f3f7fb;--tp-muted:#a8b5c8;--tp-line:#2d405c;color:var(--tp-ink);background:var(--tp-bg)}
html[data-theme='dark'] .tech-top,html[data-theme='dark'] .tech-side,html[data-theme='dark'] .tech-bottom,html[data-theme='dark'] .tech-timeline{background:var(--tp-panel)!important;color:var(--tp-ink)!important}
html[data-theme='dark'] .tech-canvas-wrap{background:#0a1320!important}
html[data-theme='dark'] .tech-canvas{background:radial-gradient(circle at 1px 1px,rgba(124,203,209,.13) 1px,transparent 0) 0 0/22px 22px,#0f1a28!important;border-color:var(--tp-line)!important}
:root{--shell:292px!important}
#sidebar{left:0!important;width:292px!important}
#main{margin-left:292px!important;width:calc(100% - 292px)!important}
body.sb-collapsed #sidebar{width:60px!important;transform:none!important;overflow:hidden!important}
body.sb-collapsed .sb-item{justify-content:center!important;padding-left:0!important;padding-right:0!important}
body.sb-collapsed .sb-group-items{display:none!important}
body.sb-collapsed #main{margin-left:60px!important;width:calc(100% - 60px)!important}
@media(max-width:768px){body.sb-collapsed #sidebar{transform:translateX(-110%)!important}body.sb-open #sidebar{left:0!important;transform:none!important}#topbar{padding:0 12px!important}#search-wrap{max-width:none}.tb-actions{gap:2px}body[data-workspace="technical"] #page-medicao{padding:16px!important;border-radius:14px}}

/* ===== DESIGN SYSTEM GATURAMO v175 — V6 claro + V5 escuro ===== */
:root{
  --brand-green:#0F3D2E;
  --brand-gold:#E2C15A;
  --brand-gold-dark:#C9A94A;
  --brand-blue:#0D3554;
  --brand-blue-dark:#09293F;
  --brand-graphite:#2B2E31;
  --brand-offwhite:#F5F5F2;
  --brand-warm:#FAF9F5;
  --brand-danger:#B42318;
  --sb:260px!important;
  --shell:260px!important;
  --radius:18px;
  --radius-sm:12px;
  --radius-xs:8px;
}
html[data-theme='light']{
  --bg:#FAF9F5!important;
  --surface:#FFFFFF!important;
  --surface2:#F5F5F2!important;
  --surface3:#EEF2F7!important;
  --border:#E5E1D8!important;
  --border-strong:#D9D5CA!important;
  --accent:#0D3554!important;
  --accent-hover:#09293F!important;
  --accent2:#0F3D2E!important;
  --text:#111827!important;
  --muted:#667085!important;
  --green:#16845B!important;
  --red:#B42318!important;
  --warn:#C9A94A!important;
  --purple:#0D3554!important;
  --chart-grid:#E5E1D8!important;
  --glass-bg:rgba(255,255,255,.88)!important;
  --glass-border:rgba(13,53,84,.14)!important;
  --shadow:0 1px 2px rgba(16,24,40,.04),0 12px 32px rgba(13,53,84,.06)!important;
  --shadow-sm:0 1px 2px rgba(16,24,40,.04),0 8px 18px rgba(13,53,84,.05)!important;
}
html[data-theme='dark']{
  --bg:#0B0F0E!important;
  --surface:#121816!important;
  --surface2:#161D1A!important;
  --surface3:#1B2320!important;
  --border:#29322E!important;
  --border-strong:#39443F!important;
  --accent:#E2C15A!important;
  --accent-hover:#F0D16B!important;
  --accent2:#6CA6C8!important;
  --text:#F2F4F2!important;
  --muted:#AAB2AD!important;
  --green:#4FA77D!important;
  --red:#DF5C55!important;
  --warn:#D6A74D!important;
  --purple:#E2C15A!important;
  --chart-grid:rgba(226,193,90,.14)!important;
  --glass-bg:rgba(11,15,14,.88)!important;
  --glass-border:rgba(226,193,90,.2)!important;
  --shadow:0 1px 2px rgba(0,0,0,.25),0 18px 42px rgba(0,0,0,.35)!important;
  --shadow-sm:0 8px 22px rgba(0,0,0,.28)!important;
}
body{
  background:radial-gradient(circle at top left,rgba(226,193,90,.08),transparent 32%),linear-gradient(180deg,var(--bg) 0%,var(--surface2) 100%)!important;
  color:var(--text)!important;
}
html[data-theme='dark'] body{
  background:radial-gradient(circle at top left,rgba(226,193,90,.06),transparent 30%),linear-gradient(180deg,#0B0F0E 0%,#121816 100%)!important;
}
/* ── SIDEBAR PREMIUM ── */
#sidebar{left:0!important;width:280px!important;background:#FFFFFF!important;border-right:1px solid #DDE3EE!important;color:#0D2B4E!important;box-shadow:2px 0 12px rgba(13,43,78,.06)!important}
html[data-theme='dark'] #sidebar{background:#0D1210!important;border-right:1px solid #202824!important;color:#AAB2AD!important;box-shadow:2px 0 20px rgba(0,0,0,.30)!important}
#sidebar{overflow-x:hidden!important;max-width:100%!important;scrollbar-gutter:stable;min-width:0!important}
#sidebar::-webkit-scrollbar:horizontal{display:none!important;height:0!important}
#main{margin-left:280px!important;width:calc(100% - 280px)!important}
body.sb-collapsed #sidebar{transform:translateX(-224px)!important;width:280px!important}
body.sb-collapsed #main{margin-left:56px!important;width:calc(100% - 56px)!important}
/* Logo */
.sb-logo{height:76px!important;padding:14px 16px!important;border-bottom:1px solid #DDE3EE!important;background:transparent!important}
html[data-theme='dark'] .sb-logo{border-bottom-color:#202824!important}
.sb-logo-icon{width:52px!important;height:40px!important;background:transparent!important;border-radius:0!important;padding:0!important;box-shadow:none!important;border:none!important;filter:none!important}
html[data-theme='dark'] .sb-logo-icon{filter:invert(1)!important;opacity:.9!important}
.sb-logo-text{color:#0D2B4E!important;font-weight:800!important;font-size:14px!important;line-height:1.2!important;letter-spacing:-.02em!important}
html[data-theme='dark'] .sb-logo-text{color:#F4F1E8!important}
.sb-logo-sub{color:#4A6FA5!important;font-size:9.5px!important;letter-spacing:.12em!important;text-transform:uppercase!important;font-weight:700!important}
html[data-theme='dark'] .sb-logo-sub{color:rgba(226,193,90,.75)!important}
/* Itens — light mode */
.sb-group-hdr,.sb-item{color:#4A6285!important;border-radius:10px!important}
html[data-theme='dark'] .sb-group-hdr,html[data-theme='dark'] .sb-item{color:#AAB2AD!important}
.sb-group-hdr{margin:10px 8px 2px!important;padding:8px 12px!important;background:transparent!important;font-size:9.5px!important;letter-spacing:.10em!important}
.sb-group-hdr:hover{background:#EEF3FF!important;color:#0D2B4E!important}
html[data-theme='dark'] .sb-group-hdr:hover{background:#171E1B!important;color:#F2F4F2!important}
.sb-item{margin:1px 8px!important;padding:8px 12px!important;font-size:12.5px!important;font-weight:500!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.sb-item .sb-label{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;min-width:0!important;flex:1!important}
.sb-item:hover{background:#EEF3FF!important;color:#0D2B4E!important}
html[data-theme='dark'] .sb-item:hover{background:#171E1B!important;color:#F2F4F2!important}
.sb-item.active i.ti{color:var(--brand-primary,#0F3D2E)!important;-webkit-text-fill-color:var(--brand-primary,#0F3D2E)!important}
html[data-theme='dark'] .sb-item.active i.ti{color:var(--brand-gold,#E2C15A)!important;-webkit-text-fill-color:var(--brand-gold,#E2C15A)!important}
.sb-badge{background:#C0392B!important;color:#fff!important}
.sb-group-hdr i.ti{font-size:14px!important;line-height:1!important;-webkit-text-fill-color:currentColor!important}
.sb-badge{background:#B42318!important;color:#fff!important}
#topbar{height:72px!important;background:rgba(255,255,255,.88)!important;backdrop-filter:blur(16px)!important;border-bottom:1px solid #E5E1D8!important;box-shadow:none!important;padding:0 28px!important}
html[data-theme='dark'] #topbar{background:rgba(14,19,18,.88)!important;border-bottom:1px solid var(--border)!important;box-shadow:none!important}
#sb-toggle{color:var(--text)!important;font-size:20px!important}
#search-wrap{max-width:420px!important}
#search-wrap input,.search-input{height:42px!important;border-radius:999px!important;background:var(--surface)!important;border:1px solid var(--border)!important;color:var(--text)!important;box-shadow:0 1px 2px rgba(16,24,40,.03)!important}
html[data-theme='dark'] #search-wrap input{background:#111715!important;border-color:#303934!important}
html[data-theme='dark'] #search-wrap input:focus{border-color:var(--accent,#E2C15A)!important;box-shadow:0 0 0 3px rgba(226,193,90,.10)!important}
.sync-pill,.install-app-btn,.tb-btn{border:1px solid var(--border)!important;background:var(--surface)!important;color:var(--text)!important;border-radius:999px!important}
.tb-user{color:var(--text)!important;font-weight:700!important}
#content{padding:32px!important;max-width:1480px!important}
.director-kicker,.page-kicker{font-size:11px!important;font-weight:800!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:var(--brand-green)!important}
html[data-theme='dark'] .director-kicker,html[data-theme='dark'] .page-kicker{color:var(--brand-gold)!important}
.card,.panel,.k-col,.pl-col,.macro-stage,.entity-card,.modal,.detail-context,.rot-col{
  background:var(--surface)!important;
  border:1px solid var(--border)!important;
  border-radius:18px!important;
  box-shadow:var(--shadow)!important;
  color:var(--text)!important;
}
html[data-theme='dark'] .card,html[data-theme='dark'] .panel,html[data-theme='dark'] .k-col,html[data-theme='dark'] .pl-col,html[data-theme='dark'] .macro-stage,html[data-theme='dark'] .entity-card,html[data-theme='dark'] .modal{background:rgba(18,24,22,.92)!important}
.card{min-height:112px!important;padding:20px!important}
.card label,.card-label{font-size:11px!important;font-weight:800!important;letter-spacing:.10em!important;text-transform:uppercase!important;color:var(--muted)!important}
.card .val,.kpi-value{font-size:clamp(16px,1.55vw,22px)!important;line-height:1.28!important;font-weight:800!important;letter-spacing:-.02em!important;color:var(--text)!important;-webkit-text-fill-color:currentColor!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:break-word!important;word-break:break-word!important}
.detail-fin-grid .card{overflow:visible!important}.detail-fin-grid .card::before{display:none!important}
.detail-fin-grid .card .val{font-size:clamp(14px,1.3vw,17px)!important;line-height:1.15!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:normal!important;word-break:normal!important}
@media(max-width:620px){.detail-fin-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.detail-fin-grid .card .val{white-space:normal!important}}
.card.green .val{color:var(--green)!important}.card.red .val{color:var(--red)!important}.card.warn .val{color:var(--warn)!important}.card.accent .val{color:var(--accent)!important}
.card.green{border-left:4px solid var(--green)!important}.card.red{border-left:4px solid var(--red)!important}.card.warn{border-left:4px solid var(--brand-gold)!important}.card.accent{border-left:4px solid var(--accent)!important}.card.purple{border-left:4px solid var(--purple)!important}
/* ── PREMIUM BUTTON SYSTEM ── */
.btn:hover{transform:translateY(-1px)!important}
.btn:active{transform:translateY(0)!important;opacity:.88!important}
.btn:disabled,.btn[disabled]{opacity:.38!important;pointer-events:none!important;transform:none!important;box-shadow:none!important}
/* Primary */
html[data-theme='light'] .btn-primary{background:linear-gradient(150deg,#0D3554 0%,#09293F 100%)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border:none!important;box-shadow:0 4px 14px rgba(13,53,84,.25),inset 0 1px 0 rgba(255,255,255,.12)!important}
html[data-theme='light'] .btn-primary:hover{background:linear-gradient(150deg,#09293F 0%,#071F30 100%)!important;box-shadow:0 6px 22px rgba(13,53,84,.38),inset 0 1px 0 rgba(255,255,255,.12)!important}
html[data-theme='dark'] .btn-primary{background:linear-gradient(150deg,#E2C15A 0%,#C9A83D 100%)!important;color:#081311!important;-webkit-text-fill-color:#081311!important;border:none!important;box-shadow:0 4px 14px rgba(226,193,90,.22),inset 0 1px 0 rgba(255,255,255,.20)!important}
html[data-theme='dark'] .btn-primary:hover{background:linear-gradient(150deg,#F0D16B 0%,#E2C15A 100%)!important;box-shadow:0 6px 22px rgba(226,193,90,.36)!important}
/* Ghost / Secondary */
.btn-ghost,.btn-secondary{background:transparent!important;color:var(--text)!important;-webkit-text-fill-color:var(--text)!important;border:1.5px solid var(--border-strong)!important;box-shadow:none!important}
.btn-ghost:hover,.btn-secondary:hover{background:color-mix(in srgb,var(--text) 6%,transparent)!important;border-color:var(--muted)!important}
html[data-theme='dark'] .btn-ghost,html[data-theme='dark'] .btn-secondary{border-color:var(--border-strong)!important}
html[data-theme='dark'] .btn-ghost:hover,html[data-theme='dark'] .btn-secondary:hover{background:#202925!important;border-color:var(--border-strong)!important}
/* Close / Neutral */
.btn-close{background:color-mix(in srgb,var(--border-strong) 60%,transparent)!important;color:var(--text)!important;-webkit-text-fill-color:var(--text)!important;border:1.5px solid var(--border)!important;box-shadow:none!important}
.btn-close:hover{background:color-mix(in srgb,var(--muted) 16%,transparent)!important;border-color:var(--muted)!important}
/* Danger */
.btn-danger{background:rgba(255,107,95,.10)!important;color:#FF6B5F!important;-webkit-text-fill-color:#FF6B5F!important;border:1.5px solid rgba(255,107,95,.28)!important;box-shadow:none!important}
.btn-danger:hover{background:rgba(255,107,95,.18)!important;border-color:rgba(255,107,95,.55)!important;box-shadow:0 4px 12px rgba(255,107,95,.18)!important}
/* Success */
.btn-success{background:linear-gradient(150deg,#2ec78a,#1aae73)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border:none!important;box-shadow:0 4px 14px rgba(46,199,138,.22)!important}
.btn-success:hover{box-shadow:0 6px 20px rgba(46,199,138,.36)!important}
/* Warn */
.btn-warn{background:rgba(226,193,90,.12)!important;color:#C9A83D!important;-webkit-text-fill-color:#C9A83D!important;border:1.5px solid rgba(226,193,90,.30)!important;box-shadow:none!important}
html[data-theme='dark'] .btn-warn{color:#D6A74D!important;-webkit-text-fill-color:#D6A74D!important}
.btn-warn:hover{background:rgba(226,193,90,.20)!important;border-color:rgba(226,193,90,.55)!important}
/* Accent2 (teal) */
.btn-accent2{background:linear-gradient(150deg,#22d3c8,#17b5ab)!important;color:#081311!important;-webkit-text-fill-color:#081311!important;border:none!important;box-shadow:0 4px 14px rgba(34,211,200,.22)!important}
.btn-accent2:hover{box-shadow:0 6px 20px rgba(34,211,200,.36)!important}
/* Sizes */
.btn-sm{min-height:34px!important;padding:6px 11px!important;font-size:12px!important;border-radius:8px!important}
.btn-lg{min-height:48px!important;padding:12px 26px!important;font-size:15px!important;border-radius:14px!important}
.btn-icon{min-width:38px!important;width:38px!important;padding:0!important;justify-content:center!important}
.btn-icon.btn-sm{min-width:34px!important;width:34px!important}
.btn-icon.btn-lg{min-width:48px!important;width:48px!important}
table{border-collapse:separate!important;border-spacing:0!important;font-size:14px!important}
thead,table thead{background:rgba(245,245,242,.8)!important}
html[data-theme='dark'] thead,html[data-theme='dark'] table thead{background:rgba(226,193,90,.06)!important}
th{color:var(--muted)!important;font-size:11px!important;font-weight:800!important;letter-spacing:.08em!important;text-transform:uppercase!important;border-bottom:1px solid var(--border)!important}
html[data-theme='dark'] th{color:var(--brand-gold)!important}
td{color:var(--text)!important;border-bottom:1px solid var(--border)!important}
tr:hover td{background:rgba(226,193,90,.04)!important}
.badge{display:inline-flex!important;align-items:center!important;gap:6px!important;border-radius:999px!important;padding:4px 10px!important;font-size:12px!important;font-weight:800!important}
.b-ag_aprovacao,.b-orcado{background:#F7EFD2!important;color:#7A5A00!important}.b-ag_material{background:#E8F0F4!important;color:#0D3554!important}.b-em_corte,.b-em_acabamento{background:#E7F3EE!important;color:#0F3D2E!important}.b-cancelado,.b-perdido,.b-vence,.b-urgente{background:#FDECEC!important;color:#B42318!important}.b-entregue,.b-pronto,.b-instalado,.b-aprovado,.b-fechado{background:#E7F3EE!important;color:#16845B!important}
html[data-theme='dark'] .b-ag_aprovacao,html[data-theme='dark'] .b-orcado{background:rgba(226,193,90,.14)!important;color:#E2C15A!important}
html[data-theme='dark'] .b-ag_material{background:rgba(108,166,200,.14)!important;color:#6CA6C8!important}
html[data-theme='dark'] .b-em_corte,html[data-theme='dark'] .b-em_acabamento,html[data-theme='dark'] .b-aprovado,html[data-theme='dark'] .b-fechado,html[data-theme='dark'] .b-entregue{background:rgba(79,167,125,.14)!important;color:#4FA77D!important}
html[data-theme='dark'] .b-cancelado,html[data-theme='dark'] .b-perdido,html[data-theme='dark'] .b-vence,html[data-theme='dark'] .b-urgente{background:rgba(223,92,85,.12)!important;color:#DF5C55!important}
.macro-pipeline,.pipeline{gap:16px!important}
.macro-stage:hover,.pl-card:hover,.k-card:hover{border-color:var(--accent)!important;box-shadow:var(--shadow-sm)!important}
.macro-stage .n{color:var(--text)!important}
.alert-item{background:var(--surface)!important;color:var(--text)!important;border:1px solid var(--border)!important;border-left:4px solid var(--warn)!important;box-shadow:var(--shadow-sm)!important}
.alert-item.crit{border-left-color:var(--red)!important;background:color-mix(in srgb,var(--red) 7%,var(--surface))!important}
.alert-item.ok{border-left-color:var(--green)!important;background:color-mix(in srgb,var(--green) 7%,var(--surface))!important}
#alertas-tab{background:var(--brand-gold)!important;color:#0D3554!important;box-shadow:0 10px 24px rgba(226,193,90,.28)!important}
html[data-theme='dark'] #alertas-tab{color:#081311!important}
.sb-item.sb-direct{display:none!important}
.top-alert-btn{position:relative!important;width:38px!important;height:38px!important;padding:0!important;display:inline-grid!important;place-items:center!important}
.top-alert-btn .badge-n{position:absolute;top:-6px;right:-6px;background:var(--red);color:#fff;border-radius:50%;min-width:18px;height:18px;font-size:10px;font-weight:800;display:none;align-items:center;justify-content:center}
#alertas-tab{display:none!important}
body[data-workspace="technical"] #page-medicao{background-color:var(--bg)!important;background-image:linear-gradient(color-mix(in srgb,var(--accent) 10%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--accent) 10%,transparent) 1px,transparent 1px)!important}
@media(max-width:768px){
  #sidebar{width:260px!important;transform:translateX(-100%)!important}
  body.sb-open #sidebar{transform:none!important}
  #main,body.sb-collapsed #main{margin-left:0!important;width:100%!important}
  #content{padding:18px!important}
}

/* ══════════════════════════════════════
   EFEITOS VISUAIS PREMIUM v2
   ══════════════════════════════════════ */

/* ── 1. RIPPLE ── */
.ripple-fx{
  position:absolute;border-radius:50%;pointer-events:none;
  background:rgba(255,255,255,.22);transform:scale(0);
  animation:ripple-anim .55s ease-out forwards;
  z-index:9;
}
html[data-theme='dark'] .btn-primary .ripple-fx,html[data-theme='dark'] .btn-accent2 .ripple-fx,html[data-theme='dark'] .btn-success .ripple-fx{background:rgba(0,0,0,.15)}
@keyframes ripple-anim{0%{transform:scale(0);opacity:1}100%{transform:scale(4);opacity:0}}

/* ── 4. PAGE SLIDE ── */
@keyframes page-slide-in{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:translateX(0)}}
.page.active{animation:page-slide-in .2s ease-out!important;animation-fill-mode:both!important}

/* ── 5. MICRO-BOUNCE em cards/kanban ── */
.card,.entity-card{transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease!important}
.k-card,.pl-card,.macro-stage{transition:transform .15s ease-out,box-shadow .15s ease!important}
.card:hover,.entity-card:hover{
  transform:translateY(-3px) scale(1.011)!important;
  box-shadow:0 10px 30px rgba(0,0,0,.10)!important;
}
html[data-theme='dark'] .card:hover,html[data-theme='dark'] .entity-card:hover{box-shadow:0 10px 30px rgba(0,0,0,.32)!important}
.card:active,.entity-card:active{transform:scale(.98)!important;transition-duration:.1s!important}
.k-card:hover,.pl-card:hover{transform:translateY(-2px)!important;box-shadow:0 6px 18px rgba(0,0,0,.09)!important}
html[data-theme='dark'] .k-card:hover,html[data-theme='dark'] .pl-card:hover{box-shadow:0 6px 18px rgba(0,0,0,.26)!important}
.k-card:active,.pl-card:active{transform:scale(.98)!important;transition-duration:.08s!important}
/* Garantir que modais e alertas não bouncem */
.modal,.alert-item{transition:none!important;transform:none!important}

/* ── 3. SKELETON LOADING ── */
@keyframes sk-shimmer{0%{background-position:-600px 0}100%{background-position:600px 0}}
.sk-wrap{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;width:100%;padding:2px}
.sk-card{
  min-height:112px;border-radius:18px;padding:20px;
  background:linear-gradient(90deg,var(--border,#e5e7eb) 25%,var(--surface,#fff) 50%,var(--border,#e5e7eb) 75%);
  background-size:1200px 100%;
  animation:sk-shimmer 1.6s infinite linear;
  border:none!important;box-shadow:none!important;
}
.sk-line{height:11px;border-radius:5px;margin-bottom:8px;background:rgba(128,128,128,.15);animation:sk-shimmer 1.6s infinite linear}
.sk-line.w30{width:30%}.sk-line.w60{width:60%}.sk-line.w80{width:80%}.sk-line.w45{width:45%}

/* ── 6. STATUS PULSE ── */
@keyframes pulse-ring{0%{transform:scale(1);opacity:.7}70%{transform:scale(2.2);opacity:0}100%{transform:scale(2.2);opacity:0}}
.sync-dot{
  display:inline-block!important;width:7px!important;height:7px!important;border-radius:50%!important;
  background:var(--green,#2ec78a)!important;transition:background .35s!important;flex-shrink:0!important;
  position:relative!important;
}
.sync-dot.synced{background:#2ec78a!important;animation:none!important}
.sync-dot.synced::after{content:'';position:absolute;inset:0;border-radius:50%;background:#2ec78a;animation:pulse-ring 2s ease-out infinite;pointer-events:none}
.sync-dot.pending{background:#f5a623!important;animation:none!important}
.sync-dot.pending::after{content:'';position:absolute;inset:0;border-radius:50%;background:#f5a623;animation:pulse-ring .9s ease-out infinite;pointer-events:none}
.sync-dot.offline{background:#f56b84!important;animation:none!important}
.sync-dot.offline::after{display:none}
.sync-pill[data-state='synced']{border-color:rgba(46,199,138,.40)!important}
.sync-pill[data-state='pending']{border-color:rgba(245,166,35,.40)!important}
.sync-pill[data-state='offline']{border-color:rgba(245,107,132,.40)!important}
/* ===== FASE 1 — sidebar única (substitui o antigo par #sb-rail + #sb-sub) =====
   272px expandida / 72px recolhida. No modo recolhido, clicar em qualquer
   ícone reabre a sidebar inteira (ver abrirSidebarAoInteragir). */
:root{--sb-expanded:272px;--sb-collapsed:72px}
#sidebar{width:var(--sb-expanded)!important;left:0!important;overflow-x:hidden!important;max-width:100%!important;scrollbar-gutter:stable;min-width:0!important;transition:width .2s ease}
#sidebar::-webkit-scrollbar:horizontal{display:none!important;height:0!important}
#main{margin-left:var(--sb-expanded)!important;width:calc(100% - var(--sb-expanded))!important;transition:margin .2s ease,width .2s ease}
body.sb-collapsed #sidebar{width:var(--sb-collapsed)!important;transform:none!important;overflow:visible!important}
body.sb-collapsed #main{margin-left:var(--sb-collapsed)!important;width:calc(100% - var(--sb-collapsed))!important}
@media(prefers-reduced-motion:reduce){#sidebar,#main{transition:none!important}}
body.sb-collapsed .sb-logo-text,body.sb-collapsed .sb-logo-sub,body.sb-collapsed .sb-label,body.sb-collapsed .sb-badge{display:none!important}
body.sb-collapsed .sb-item{justify-content:center!important;padding-left:0!important;padding-right:0!important}
body.sb-collapsed .sb-group-items{display:none!important}
/* Modo recolhido (72px): centraliza a logo de verdade (não tinha
   justify-content, e o ícone de 52px não cabia nos 72px com padding, então
   ficava desalinhado à esquerda) e aumenta só o tamanho dos símbolos — sem
   mexer no espaço/padding ao redor deles (feedback visual do usuário). */
body.sb-collapsed .sb-logo{justify-content:center!important;padding-left:0!important;padding-right:0!important;gap:0!important}
body.sb-collapsed .sb-logo-icon{width:34px!important;height:34px!important}
body.sb-collapsed .sb-item .sb-icon,body.sb-collapsed .sb-group-hdr .sb-icon,body.sb-collapsed .sb-footer-action .sb-icon,body.sb-collapsed .sb-subgroup-hdr .sb-icon{font-size:20px!important}
/* Estado ativo consolidado — uma única regra, azul/lavanda (feedback visual do usuário) */
.sb-item.active{background:color-mix(in srgb,var(--brand-blue,#0D3554) 10%,transparent)!important;color:var(--brand-blue,#0D3554)!important;font-weight:700!important;box-shadow:inset 3px 0 0 var(--brand-blue,#0D3554)!important}
html[data-theme='dark'] .sb-item.active{background:color-mix(in srgb,var(--accent,#E2C15A) 10%,transparent)!important;color:#F2F4F2!important;box-shadow:inset 3px 0 0 var(--accent,#E2C15A)!important}
.sb-group-hdr.active{color:var(--brand-blue,#0D3554)!important;background:color-mix(in srgb,var(--brand-blue,#0D3554) 8%,transparent)!important}
html[data-theme='dark'] .sb-group-hdr.active{color:#F2F4F2!important;background:color-mix(in srgb,var(--accent,#E2C15A) 10%,transparent)!important}
/* Feedback do usuário: a logo (76px) e o topbar (72px) tinham alturas
   diferentes, então as bordas inferiores de cada um não se alinhavam,
   criando uma "quebra" visível bem onde a sidebar encontra o topbar.
   Também alinha o ícone da logo (estava em 16px da borda) com a coluna de
   ícones dos itens do menu abaixo (27px) — ficavam desalinhados. */
.sb-logo{height:72px!important;padding-left:27px!important}
/* Feedback do usuário: a tagline "Gestão para Marmorarias" quebrava em duas
   linhas grudadas na altura de 72px da logo, ficando "junta"/apertada.
   Reduz o letter-spacing só o suficiente para caber numa única linha e dá
   uma respiração vertical entre o nome "Gaturamo" e a tagline abaixo. */
.sb-logo-text{margin:0!important}
.sb-logo-sub{white-space:nowrap!important;letter-spacing:.04em!important;margin-top:3px!important;line-height:1.3!important}
/* Chevron de expandir/recolher por grupo — lista plana, sem cartão/borda por item
   (feedback visual do usuário: a versão anterior ficou "botão com borda e sombra",
   o mockup de referência é uma lista limpa, ícone solto, sem caixa colorida). */
.sb-group-hdr{justify-content:space-between!important;border:none!important;background:transparent!important;border-radius:8px!important;padding:9px 14px!important;margin:1px 8px!important;width:calc(100% - 16px)!important;min-height:auto!important;font-size:13px!important}
.sb-pay-entry{margin-top:8px!important;border:1px solid color-mix(in srgb,#2563eb 32%,var(--border))!important;background:color-mix(in srgb,#2563eb 8%,var(--surface))!important;color:#1d4ed8!important;font-weight:700!important}
.sb-pay-entry:hover,.sb-pay-entry.active{background:color-mix(in srgb,#2563eb 15%,var(--surface))!important;color:#1e40af!important}
html[data-theme='dark'] .sb-pay-entry{color:#93c5fd!important;background:rgba(37,99,235,.12)!important;border-color:rgba(147,197,253,.22)!important}
.sb-group-hdr:hover{background:var(--surface2)!important}
.sb-group-hdr:not(.sb-grp-collapsed){background:transparent!important;border-color:transparent!important}
.sb-group-hdr .sb-label{text-transform:none!important;letter-spacing:normal!important;font-size:13px!important;font-weight:650!important}
.sb-group-chevron{display:inline-flex!important;font-size:14px;color:var(--muted);flex-shrink:0;transition:transform .18s ease;margin-left:auto}
.sb-group-hdr:not(.sb-grp-collapsed) .sb-group-chevron{transform:rotate(180deg)}
body.sb-collapsed .sb-group-chevron{display:none!important}
/* Ícones soltos, sem caixa de fundo — igual aos itens comuns */
.sb-group-hdr .sb-icon,.sb-footer-action .sb-icon{width:20px!important;height:auto!important;background:none!important;border-radius:0!important;color:inherit;font-size:15px!important}
/* Rodapé: mesma aparência plana dos itens do menu, sem pílula com borda/sombra */
.sb-support-btn{border:none!important;background:transparent!important;color:var(--text)!important;border-radius:8px!important;padding:9px 14px!important;font-weight:500!important}
.sb-support-btn:hover{background:var(--surface2)!important}
.sb-support-btn.active{background:color-mix(in srgb,var(--brand-blue,#0D3554) 10%,transparent)!important;color:var(--brand-blue,#0D3554)!important;box-shadow:inset 3px 0 0 var(--brand-blue,#0D3554)!important;font-weight:700!important}
html[data-theme='dark'] .sb-support-btn.active{background:color-mix(in srgb,var(--accent,#E2C15A) 10%,transparent)!important;color:#F2F4F2!important;box-shadow:inset 3px 0 0 var(--accent,#E2C15A)!important}
/* Sub-grupo recolhível dentro de um grupo (ex.: "Relatórios" dentro de Gestão) —
   agrupa itens muito parecidos para reduzir a lista visível sem tirar acesso
   a nada (feedback do usuário: grupo Gestão "acumulado" com 5 relatórios soltos). */
.sb-subgroup-hdr{display:flex;align-items:center;gap:10px;min-height:38px;padding:8px 14px;cursor:pointer;color:var(--muted);font-size:13px;font-weight:600;border:none;background:none;width:calc(100% - 16px);margin:1px 8px;border-radius:8px;text-align:left;justify-content:space-between}
.sb-subgroup-hdr:hover{background:var(--surface2);color:var(--text)}
.sb-subgroup-hdr .sb-group-chevron{font-size:13px}
.sb-subgroup-hdr:not(.sb-grp-collapsed) .sb-group-chevron{transform:rotate(180deg)}
.sb-subgroup-items{overflow:hidden}
.sb-subgroup-items.sb-grp-collapsed{display:none}
.sb-subgroup-items .sb-item{padding-left:34px}
/* Subgrupos: os itens internos (Relatórios, Configurações) somem por
   completo no modo recolhido — sem flyout (feedback do usuário: o flyout
   confundia e tinha barra de rolagem indesejada). O cabeçalho de
   "Relatórios" já some junto (é filho de .sb-group-items, oculto acima),
   mas "Configurações" fica solto no rodapé — deve continuar visível como
   ícone, igual a "Ajuda e suporte" (feedback do usuário: "some" no modo
   recolhido). Clicar nele reabre a sidebar inteira (abrirSidebarAoInteragir). */
body.sb-collapsed .sb-subgroup-items{display:none!important}
body.sb-collapsed .sb-footer .sb-subgroup-hdr{justify-content:center!important;padding:9px 0!important}
/* .sb-nav só declara overflow-y:auto, mas pela spec de CSS Overflow isso
   força o overflow-x computado a virar "auto" também (não fica "visible")
   — se algum conteúdo interno passasse do limite, uma barra de rolagem
   horizontal nativa (não estilizada) apareceria no rodapé do menu (feedback
   do usuário: "barra de movimentação lateral"). Trava explicitamente. */
.sb-nav,.sb-footer{overflow-x:hidden!important}
/* Tooltip dos ícones no modo recolhido */
body.sb-collapsed .sb-item,body.sb-collapsed .sb-group-hdr{position:relative}
body.sb-collapsed .sb-item:hover::after,body.sb-collapsed .sb-group-hdr:hover::after{
  content:attr(data-tooltip);position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);
  background:var(--surface3);color:var(--text);border:1px solid var(--border);border-radius:8px;
  padding:5px 10px;font-size:12px;white-space:nowrap;box-shadow:var(--shadow-sm);z-index:400;pointer-events:none;
}
@media(max-width:768px){
  #sidebar{width:min(90vw,292px)!important}
  body.sb-collapsed #sidebar{width:min(90vw,292px)!important;transform:translateX(-110%)!important}
  body.sb-collapsed #main{margin-left:0!important;width:100%!important}
}
/* Barra de busca ampliada (feedback do usuário: "achando ela um pouco
   pequena") — mais larga, um pouco mais alta e com mais respiro para o
   texto, mantendo o formato de pílula já usado no resto do app. */
#search-wrap{max-width:560px!important}
#search-wrap input{height:44px!important;font-size:14px!important;padding-left:40px!important}
#search-wrap>.ti-search{font-size:16px!important;left:14px!important}
@media(max-width:1050px){#search-wrap{max-width:380px!important}}
/* "Fluxo da operação" (visão geral): a setinha entre etapas era só um
   caractere "→" sem fundo, quase invisível (feedback do usuário). Reusa o
   mesmo selo circular já usado no "Fluxo mestre" logo acima na mesma
   página, deixando os dois indicadores de fluxo consistentes entre si. */
.overview-stage:not(:last-child)::after{top:45%!important;transform:translateY(-50%)!important;width:16px!important;height:16px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:var(--surface)!important;border:1px solid var(--border)!important;font-size:11px!important;font-weight:900!important;box-shadow:var(--shadow-sm)!important}
.overview-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}.overview-kpi[role="button"]{cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.overview-kpi[role="button"]:hover,.overview-kpi[role="button"]:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 11%,transparent);outline:0;transform:translateY(-1px)}
@media(max-width:1180px){.overview-kpis{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.overview-kpis{grid-template-columns:1fr}}
