
:root{
 --dark:#153F2A;--dark2:#0F2F20;--green:#2F6B3B;--green2:#6F8F58;--light:#E8F1E8;--pale:#F3F8F3;
 --gold:#C99A35;--goldLight:#F7F0DD;--bg:#F5F7F4;--white:#fff;--text:#1D2B22;--muted:#69736C;
 --line:#DFE7E1;--danger:#B42318;--dangerBg:#FDE9E7;--warning:#A15C00;--warningBg:#FFF2CC;
 --shadow:0 10px 30px rgba(15,47,32,.08)
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--text)}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.shell{display:grid;grid-template-columns:266px 1fr;min-height:100vh}
.sidebar{background:var(--dark2);color:#fff;padding:22px 16px;position:sticky;top:0;height:100vh}
.brand{display:flex;gap:12px;align-items:center;margin-bottom:28px}
.mark{width:46px;height:46px;border-radius:14px;background:var(--gold);display:grid;place-items:center;color:var(--dark2);font-weight:900}
.brand strong{display:block}.brand small{display:block;color:#b9c8bf;margin-top:3px}
.demo-badge{display:inline-block;margin:3px 0 22px;background:rgba(201,154,53,.18);color:#f4d98e;border:1px solid rgba(201,154,53,.35);padding:6px 9px;border-radius:999px;font-size:10px;font-weight:800}
.nav{display:grid;gap:7px}.nav button{border:0;background:transparent;color:#dbe6df;padding:12px 14px;text-align:left;border-radius:11px}
.nav button:hover,.nav button.active{background:rgba(255,255,255,.1);color:#fff}
.sidebar-footer{position:absolute;left:24px;right:24px;bottom:22px;color:#9fb0a5;font-size:11px;line-height:1.5}
.main{min-width:0}.top{height:84px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 28px;position:sticky;top:0;z-index:10}
.top h1{font-size:21px;color:var(--dark);margin:0}.top p{margin:4px 0 0;color:var(--muted);font-size:12px}
.content{max-width:1550px;margin:auto;padding:24px}
.hero{background:linear-gradient(120deg,var(--dark),var(--green));color:#fff;border-radius:22px;padding:28px;display:flex;justify-content:space-between;align-items:center;gap:18px;box-shadow:var(--shadow)}
.hero h2{margin:0 0 8px;font-size:29px}.hero p{margin:0;color:#d9e6dd;max-width:780px}.hero-actions{display:flex;gap:9px;flex-wrap:wrap}
.btn{border:0;border-radius:10px;padding:10px 14px;font-weight:800}.primary{background:var(--gold);color:var(--dark2)}.secondary{background:#fff;color:var(--dark)}.outline{background:#fff;border:1px solid var(--line);color:var(--dark)}
.kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin:18px 0}.kpi{background:#fff;border:1px solid var(--line);border-radius:15px;padding:15px;box-shadow:var(--shadow)}
.kpi small{color:var(--muted);font-weight:700}.kpi b{display:block;font-size:23px;color:var(--dark);margin-top:6px}.kpi .hint{font-size:10px;color:var(--muted);margin-top:5px}
.section-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:24px 0 12px}.section-head h3{margin:0;color:var(--dark)}
.filters{display:flex;gap:8px;flex-wrap:wrap}.control{border:1px solid var(--line);background:#fff;border-radius:9px;padding:9px 11px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;box-shadow:var(--shadow);transition:.18s}
.card:hover{transform:translateY(-2px)}.card-top{display:flex;justify-content:space-between;gap:10px}.card h4{margin:0;color:var(--dark);font-size:15px}
.badge{font-size:10px;font-weight:800;padding:5px 8px;border-radius:999px;background:var(--goldLight);color:#755517}.badge.run{background:var(--light);color:var(--green)}.badge.done{background:#D9EAD3;color:var(--dark)}.badge.block{background:var(--dangerBg);color:var(--danger)}
.meta{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;margin:12px 0 8px}.progress{height:9px;background:#edf2ee;border-radius:99px;overflow:hidden}.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--gold))}
.card-actions{display:flex;justify-content:space-between;align-items:center;margin-top:12px;font-size:11px;color:var(--muted)}.card-actions button{border:0;background:var(--pale);color:var(--dark);font-weight:800;border-radius:8px;padding:8px 10px}
.panel{background:#fff;border:1px solid var(--line);border-radius:17px;padding:19px;box-shadow:var(--shadow)}.panel h3{margin-top:0;color:var(--dark)}
.module-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}.module-head h2{margin:8px 0 3px;color:var(--dark)}.module-head p{margin:0;color:var(--muted)}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.tab{border:1px solid var(--line);background:#fff;border-radius:9px;padding:9px 11px;font-size:12px;font-weight:800;color:var(--dark)}.tab.active{background:var(--dark);color:#fff}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.field{display:grid;gap:5px}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:800;color:var(--dark)}
.field input,.field select,.field textarea{border:1px solid #d5ded7;border-radius:10px;padding:10px 11px;outline:none;background:#fff}.field textarea{min-height:90px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(47,107,59,.1)}
.summary{display:flex;gap:10px;flex-wrap:wrap}.summary .box{background:var(--pale);border-radius:11px;padding:11px;min-width:145px}.summary small{color:var(--muted)}.summary b{display:block;color:var(--dark);font-size:17px;margin-top:3px}
.kanban{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.kan-col{background:#edf2ee;border-radius:14px;padding:12px;min-height:180px}.kan-col h4{margin:0 0 10px;font-size:12px;color:var(--dark)}
.kan-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px;margin-bottom:8px;font-size:11px}.kan-card b{display:block;margin-bottom:4px;color:var(--dark)}
.timeline-row{display:grid;grid-template-columns:260px 110px 110px 110px 1fr;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}
.timeline-bar{height:10px;background:#e7eee9;border-radius:99px;overflow:hidden}.timeline-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--gold))}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:13px}table{width:100%;border-collapse:collapse;font-size:12px;background:#fff}th{background:var(--dark2);color:#fff;text-align:left;padding:10px;white-space:nowrap}td{padding:9px 10px;border-bottom:1px solid #eef2ef}
.toast{position:fixed;right:18px;bottom:18px;background:var(--dark2);color:#fff;padding:12px 14px;border-radius:10px;opacity:0;transform:translateY(70px);transition:.25s;z-index:99}.toast.show{opacity:1;transform:none}
.note{background:var(--warningBg);border:1px solid #efd98b;color:#755517;padding:11px 13px;border-radius:11px;font-size:12px;margin-bottom:14px}
@media(max-width:1100px){.kpis{grid-template-columns:repeat(3,1fr)}.cards{grid-template-columns:repeat(2,1fr)}.kanban{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.sidebar-footer{display:none}.nav{grid-template-columns:repeat(2,1fr)}.top{position:relative}.content{padding:14px}.hero{display:block}.hero-actions{margin-top:15px}.kpis{grid-template-columns:repeat(2,1fr)}.cards,.grid2,.grid3,.form-grid,.kanban{grid-template-columns:1fr}.timeline-row{grid-template-columns:1fr 1fr}.timeline-bar{grid-column:1/-1}}

/* ===== EXECUÇÃO & CRONOGRAMA v2 ===== */
.exec-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0}
.exec-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:15px;box-shadow:var(--shadow)}
.exec-card .label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}
.exec-card .big{font-size:24px;font-weight:900;color:var(--dark);margin-top:7px}
.exec-card .mini{font-size:10px;color:var(--muted);margin-top:4px}

.dashboard-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:14px;margin-top:14px}
.dashboard-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}

.status-bars{display:grid;gap:10px}
.status-row{display:grid;grid-template-columns:130px 1fr 32px;gap:9px;align-items:center;font-size:11px}
.status-track{height:12px;background:#edf2ee;border-radius:99px;overflow:hidden}
.status-track span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--green),var(--gold))}
.status-count{text-align:right;font-weight:900;color:var(--dark)}

.donut-wrap{display:flex;gap:20px;align-items:center;flex-wrap:wrap}
.donut{
  --p:50;
  width:132px;height:132px;border-radius:50%;
  background:conic-gradient(var(--green) calc(var(--p)*1%), #e8eee9 0);
  display:grid;place-items:center;position:relative
}
.donut:after{content:"";width:88px;height:88px;border-radius:50%;background:#fff;position:absolute}
.donut span{position:relative;z-index:2;font-size:22px;font-weight:900;color:var(--dark)}
.legend{display:grid;gap:7px;font-size:11px;color:var(--muted)}
.legend i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px}
.legend .green{background:var(--green)}.legend .gold{background:var(--gold)}.legend .red{background:var(--danger)}.legend .gray{background:#aeb9b2}

.gantt-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px;background:#fff}
.gantt-table{min-width:1180px;width:100%;border-collapse:collapse;font-size:11px}
.gantt-table th{position:sticky;top:0;z-index:2;background:var(--dark2);color:#fff;padding:8px;border-right:1px solid rgba(255,255,255,.12)}
.gantt-table td{padding:7px 8px;border-bottom:1px solid #eef2ef;border-right:1px solid #f1f4f2}
.gantt-table .front-cell{min-width:230px;font-weight:800;color:var(--dark)}
.gantt-table .date-cell{min-width:86px;color:var(--muted)}
.gantt-week{min-width:54px;text-align:center}
.gantt-block{height:18px;border-radius:5px;background:linear-gradient(90deg,var(--green),var(--gold));position:relative}
.gantt-block .gantt-progress{height:100%;background:rgba(255,255,255,.35);border-radius:5px 0 0 5px}
.gantt-empty{height:18px}
.week-event{background:var(--gold)!important;color:var(--dark2)!important}
.gantt-label{font-size:9px;font-weight:800;color:#fff;position:absolute;left:5px;top:2px;white-space:nowrap}

.exec-table .late{color:var(--danger);font-weight:900}
.exec-table .ok{color:var(--green);font-weight:900}
.exec-table .warning{color:var(--warning);font-weight:900}

.quick-form{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.quick-form .full{grid-column:1/-1}
.quick-actions{display:flex;gap:8px;justify-content:flex-end;align-items:end}

.milestone-list{display:grid;gap:9px}
.milestone-item{display:grid;grid-template-columns:84px 1fr auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:10px;background:#fff}
.milestone-date{font-weight:900;color:var(--dark);font-size:11px}
.milestone-title{font-size:11px;color:var(--text)}
.milestone-status{font-size:9px;font-weight:900;padding:5px 7px;border-radius:999px;background:var(--goldLight);color:#755517}

.alert-list{display:grid;gap:8px}
.alert-item{padding:10px 11px;border-radius:10px;font-size:11px;border-left:4px solid var(--danger);background:var(--dangerBg)}
.alert-item.warning{border-left-color:var(--gold);background:var(--goldLight)}
.alert-item b{display:block;color:var(--dark);margin-bottom:3px}

.section-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}
.section-tabs button{border:1px solid var(--line);background:#fff;padding:8px 11px;border-radius:9px;font-weight:800;color:var(--dark);font-size:11px}
.section-tabs button.active{background:var(--dark);color:#fff}

@media(max-width:1100px){
  .exec-grid{grid-template-columns:repeat(2,1fr)}
  .dashboard-grid,.dashboard-grid-3{grid-template-columns:1fr}
  .quick-form{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .exec-grid{grid-template-columns:1fr 1fr}
  .quick-form{grid-template-columns:1fr}
}

/* ===== GOVERNANÇA / FINANCEIRO ROBUSTO v4 ===== */
.finance-toolbar{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.finance-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:11px;margin:14px 0}
.finance-kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px;box-shadow:var(--shadow)}
.finance-kpi .label{font-size:9px;text-transform:uppercase;letter-spacing:.45px;color:var(--muted);font-weight:900}.finance-kpi .value{font-size:20px;font-weight:900;color:var(--dark);margin-top:6px}.finance-kpi .sub{font-size:9px;color:var(--muted);margin-top:4px}
.finance-form-section{grid-column:1/-1;background:var(--pale);border:1px solid var(--line);border-radius:12px;padding:12px;margin-top:4px}
.finance-form-section h4{margin:0 0 10px;color:var(--dark);font-size:12px}
.help-text{font-size:10px;color:var(--muted);line-height:1.4}.required-hint{font-size:10px;color:var(--danger);font-weight:700}
.readonly{background:#f2f4f2!important;color:#536057}.derived{background:#eef6ef!important;font-weight:800;color:var(--dark)}
.inline-money{display:flex;gap:8px;align-items:center}.inline-money span{font-size:11px;color:var(--muted)}
.integrity-ok{background:#e9f5ea;border-left:4px solid var(--green);padding:10px 12px;border-radius:9px;font-size:11px}.integrity-warn{background:var(--warningBg);border-left:4px solid var(--gold);padding:10px 12px;border-radius:9px;font-size:11px}.integrity-error{background:var(--dangerBg);border-left:4px solid var(--danger);padding:10px 12px;border-radius:9px;font-size:11px}
.bar-list{display:grid;gap:9px}.bar-line{display:grid;grid-template-columns:minmax(150px,220px) 1fr 105px;gap:8px;align-items:center;font-size:10px}.bar-track{height:11px;background:#edf2ee;border-radius:99px;overflow:hidden}.bar-track span{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--gold))}
.table-actions{display:flex;gap:5px;white-space:nowrap}.mini-btn{border:1px solid var(--line);background:#fff;border-radius:7px;padding:5px 7px;font-size:9px;font-weight:800;color:var(--dark)}
.code-pill{font-size:9px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#eef2ef;padding:3px 6px;border-radius:5px;color:#355140}.value-positive{color:var(--green);font-weight:900}.value-negative{color:var(--danger);font-weight:900}.value-warning{color:var(--warning);font-weight:900}
.governance-list{display:grid;gap:8px}.governance-row{display:grid;grid-template-columns:32px 1fr auto;gap:9px;align-items:center;padding:9px;border-bottom:1px solid var(--line);font-size:11px}.governance-icon{width:28px;height:28px;border-radius:8px;background:var(--light);display:grid;place-items:center;color:var(--dark);font-weight:900}
@media(max-width:1100px){.finance-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.finance-kpis{grid-template-columns:repeat(2,1fr)}.bar-line{grid-template-columns:1fr 80px}.bar-track{grid-column:1/-1}}
.prod-badge{margin:10px 16px;padding:8px 10px;border:1px solid rgba(255,255,255,.2);border-radius:9px;font-size:11px;font-weight:700;letter-spacing:.04em;text-align:center;color:#fff;background:rgba(201,154,53,.16)}
.save-indicator{padding:7px 10px;border-radius:999px;font-size:12px;font-weight:700;background:#eef2ef;color:#365247}.save-indicator.ok{background:#e7f4ea;color:#1e6335}.save-indicator.warn{background:#fff4d8;color:#8b6510}.save-indicator.error{background:#fde8e6;color:#a52a21}.save-indicator.saving{background:#eef2ff;color:#3e4f9c}
.login-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#102f22,#1f5c3b);padding:20px}.login-card{width:min(430px,100%);background:#fff;border-radius:18px;padding:30px;box-shadow:0 24px 70px rgba(0,0,0,.28)}.brand-login{display:flex;align-items:center;gap:12px;margin-bottom:22px}.brand-login h1{margin:0;color:#153f2a;font-size:23px}.brand-login p{margin:3px 0 0;color:#69736c}.login-card form{display:grid;gap:8px}.login-card label{font-size:12px;font-weight:700;color:#365247;margin-top:8px}.login-card input{padding:12px;border:1px solid #cfd7d1;border-radius:9px;font-size:14px}.login-card button{margin-top:12px}.login-card small{display:block;margin-top:18px;color:#7a827d;text-align:center}.login-msg{background:#fff4d8;border:1px solid #ead59d;color:#6c5416;padding:10px;border-radius:8px;margin-bottom:15px}

/* v5.3 — permissões e leitura */
.access-note{margin-bottom:12px}
.readonly-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}
.readonly-grid .box{background:#f6f8f5;border:1px solid #e1e8df;border-radius:10px;padding:12px;min-height:70px}
.readonly-grid .box small{display:block;color:#69736c;margin-bottom:5px}.readonly-grid .box b{font-weight:650;word-break:break-word}

/* =========================================================
   EXPOALTA 2026 v5.4 — dashboard dinâmico e design executivo
   ========================================================= */
:root{--navy:#0c2c1e;--green2:#21623d;--green3:#2d7c4d;--gold2:#d6a334;--cream:#fbf7eb;--surface:#f5f8f5;--ink:#143026;--soft:#eef4ef;--blue:#3b6ea8}
body{background:var(--surface)}
.sidebar{background:linear-gradient(180deg,#0c3525 0%,#0a2c1f 100%)}
.brand{padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.08)}
.prod-badge{display:flex;align-items:center;justify-content:center;gap:7px;background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.1);font-size:10px;letter-spacing:.12em}
.nav-title{font-size:9px;letter-spacing:.16em;color:rgba(255,255,255,.42);font-weight:900;margin:18px 18px 7px}
.nav button{display:flex;align-items:center;gap:10px;padding:10px 16px;border-radius:10px;margin:2px 9px;width:calc(100% - 18px);transition:.18s ease}.nav button:hover{background:rgba(255,255,255,.09);transform:translateX(2px)}.nav button span{width:22px;text-align:center;font-weight:900;color:#e9c25b}
.sidebar-profile{margin:18px 14px 8px;padding:12px;border-radius:14px;background:rgba(255,255,255,.065);display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:center}.sidebar-profile .avatar{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--gold),#f2c756);display:grid;place-items:center;font-weight:900;color:#153f2a}.sidebar-profile b,.sidebar-profile span,.sidebar-profile small{display:block}.sidebar-profile b{color:#fff;font-size:11px}.sidebar-profile span{color:#e6cf8a;font-size:9px;margin:2px 0}.sidebar-profile small{color:rgba(255,255,255,.56);font-size:9px}.logout-btn{width:100%;background:rgba(255,255,255,.08)!important;color:#fff!important;border-color:rgba(255,255,255,.12)!important}.event-mini{margin-top:12px;font-size:9px;line-height:1.6;color:rgba(255,255,255,.45);text-align:center}
.top{background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid #e4ebe5}.top h1{letter-spacing:-.02em}.top-actions{display:flex;align-items:center;gap:8px}.save-indicator{box-shadow:inset 0 0 0 1px rgba(0,0,0,.03)}
.command-hero{background:linear-gradient(135deg,#154d31,#287347);color:#fff;border-radius:22px;padding:26px 28px;display:grid;grid-template-columns:1fr 180px;gap:24px;align-items:center;box-shadow:0 16px 38px rgba(21,63,42,.16);position:relative;overflow:hidden}.command-hero:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-90px;top:-100px;background:rgba(255,255,255,.06)}.command-copy{position:relative;z-index:2}.eyebrow,.panel-kicker{font-size:9px;letter-spacing:.15em;font-weight:900;text-transform:uppercase}.eyebrow{color:#f0ce72}.command-hero h2{font-size:27px;line-height:1.08;margin:7px 0 9px;color:#fff;letter-spacing:-.025em}.command-hero p{max-width:760px;color:rgba(255,255,255,.82);line-height:1.55;font-size:12px}.event-countdown{position:relative;z-index:2;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:16px;text-align:center}.event-countdown small,.event-countdown span,.event-countdown em{display:block}.event-countdown small{font-size:8px;letter-spacing:.12em;color:#f8dfa0}.event-countdown b{font-size:44px;line-height:1;color:#fff}.event-countdown span{font-size:11px;font-weight:800}.event-countdown em{font-style:normal;font-size:9px;color:rgba(255,255,255,.65);margin-top:6px}
.dashboard-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:14px 0}.metric-card{background:#fff;border:1px solid #e2eae3;border-radius:15px;padding:13px;display:grid;grid-template-columns:34px 1fr;gap:9px;align-items:center;box-shadow:0 4px 15px rgba(21,63,42,.045)}.metric-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;font-weight:900;background:#eef6f0;color:#276943}.metric-card.gold .metric-icon{background:#fff4d8;color:#996e11}.metric-card.red .metric-icon{background:#fde9e7;color:#aa332b}.metric-card small,.metric-card b,.metric-card span{display:block}.metric-card small{font-size:8px;text-transform:uppercase;letter-spacing:.06em;color:#78827c;font-weight:800}.metric-card b{font-size:16px;color:#173e2b;margin:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric-card span{font-size:8px;color:#89928c}
.dashboard-layout{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;margin-top:14px}.visual-panel{background:#fff;border:1px solid #e0e9e2;border-radius:17px;padding:17px;box-shadow:0 7px 22px rgba(22,57,39,.055)}.visual-panel.span-2{grid-column:span 2}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.panel-head h3{margin:2px 0 0;color:#173e2b;font-size:15px}.panel-kicker{color:#8a9a90}.text-link{border:0;background:transparent;color:#2a6d45;font-weight:800;font-size:10px;cursor:pointer}.panel-copy{font-size:11px;line-height:1.55;color:#66746b}.full-btn{width:100%;margin-top:12px}.button-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.health-grid{display:grid;grid-template-columns:180px 1fr;gap:20px;align-items:center}.ring-card{text-align:center}.ring-card p{font-size:9px;color:#7d8981}.ring{--p:0;width:144px;height:144px;margin:auto;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#2b7047 calc(var(--p)*1%),#edf2ee 0);position:relative}.ring:after{content:"";position:absolute;width:104px;height:104px;background:#fff;border-radius:50%}.ring div{z-index:2}.ring b,.ring small{display:block}.ring b{font-size:25px;color:#153f2a}.ring small{font-size:8px;color:#7c887f;text-transform:uppercase;letter-spacing:.07em}
.status-visual{display:grid;gap:10px}.status-v-head{display:flex;justify-content:space-between;font-size:10px;color:#526159}.status-v-head span{display:flex;align-items:center;gap:6px}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.dot.notstarted{background:#aeb7b1}.dot.planning{background:#d5a437}.dot.running{background:#397b50}.dot.blocked{background:#b53b30}.dot.done{background:#1d6f3d}.status-v-track{height:8px;background:#eff3f0;border-radius:99px;overflow:hidden}.status-v-track span{display:block;height:100%;border-radius:99px}.status-v-track .notstarted{background:#aeb7b1}.status-v-track .planning{background:#d5a437}.status-v-track .running{background:#397b50}.status-v-track .blocked{background:#b53b30}.status-v-track .done{background:#1d6f3d}
.risk-matrix{position:relative;padding-top:5px}.risk-row{display:grid;grid-template-columns:28px repeat(5,1fr);gap:4px;margin-bottom:4px}.axis-tick{font-size:8px;color:#859188;display:grid;place-items:center}.risk-cell{aspect-ratio:1.35;border-radius:6px;display:grid;place-items:center;font-size:10px;font-weight:900}.risk-cell.low{background:#e7f3ea;color:#27633e}.risk-cell.medium{background:#fff3cf;color:#8b6714}.risk-cell.high{background:#fde4c4;color:#9b5817}.risk-cell.critical{background:#f8d7d4;color:#9b2c25}.risk-x{display:grid;grid-template-columns:28px repeat(5,1fr);gap:4px;font-size:8px;color:#859188;text-align:center}.risk-legend{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}.risk-legend span{font-size:8px;padding:4px 7px;border-radius:999px}.risk-legend .low{background:#e7f3ea}.risk-legend .medium{background:#fff3cf}.risk-legend .high{background:#fde4c4}.risk-legend .critical{background:#f8d7d4}
.action-feed{display:grid;gap:7px}.action-item{display:grid;grid-template-columns:52px 1fr auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid #edf1ee}.action-item:last-child{border-bottom:0}.action-date{font-size:9px;font-weight:900;color:#8a681f;background:#fff5db;padding:6px;border-radius:8px;text-align:center}.action-body b,.action-body span{display:block}.action-body b{font-size:10px;color:#254532}.action-body span{font-size:8px;color:#8a948e;margin-top:2px}.priority-chip{font-size:8px;padding:4px 7px;border-radius:999px;background:#eef2ef;color:#526159}.priority-chip.alta{background:#fde9e7;color:#9b3028}.priority-chip.média{background:#fff4d8;color:#876313}.empty-state{padding:20px;text-align:center;color:#849087;font-size:10px;border:1px dashed #dfe7e1;border-radius:12px;background:#fafcfb}
.system-card{display:grid;gap:12px}.system-status{display:grid;grid-template-columns:12px 1fr;gap:9px;align-items:start}.system-status b,.system-status small{display:block}.system-status b{font-size:11px;color:#274735}.system-status small{font-size:9px;color:#7b8780;line-height:1.4;margin-top:2px}.pulse{width:9px;height:9px;border-radius:50%;display:inline-block;background:#aaa;box-shadow:0 0 0 0 rgba(0,0,0,.1)}.pulse.ok{background:#39a45d;box-shadow:0 0 0 5px rgba(57,164,93,.12)}.pulse.pending{background:#d5a437;box-shadow:0 0 0 5px rgba(213,164,55,.12)}.pulse.error{background:#c94d43;box-shadow:0 0 0 5px rgba(201,77,67,.12)}.system-meta{display:flex;gap:8px;flex-wrap:wrap}.system-meta span{font-size:8px;color:#6f7d74;background:#f3f6f4;padding:6px 8px;border-radius:8px}.system-meta b{color:#254532}
.finance-panel{margin-top:14px}.finance-visual{display:grid;gap:14px}.fin-row{display:grid;grid-template-columns:220px 1fr 48px;gap:12px;align-items:center}.fin-row div:first-child span,.fin-row div:first-child b,.fin-row div:first-child small{display:block}.fin-row div:first-child span{font-size:9px;text-transform:uppercase;color:#819087;font-weight:800}.fin-row div:first-child b{font-size:15px;color:#1d5034}.fin-row div:first-child small{font-size:8px;color:#89938d}.fin-track{height:10px;background:#edf2ee;border-radius:99px;overflow:hidden}.fin-track span{display:block;height:100%;background:linear-gradient(90deg,#2c7248,#58a86e);border-radius:99px}.fin-row.expense .fin-track span{background:linear-gradient(90deg,#c8932b,#e2ba62)}.fin-row>strong{font-size:10px;color:#546259}.fin-balance{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.fin-balance div{background:#f7f9f7;border-radius:11px;padding:10px}.fin-balance small,.fin-balance b{display:block}.fin-balance small{font-size:8px;color:#829087}.fin-balance b{font-size:13px;color:#264a35;margin-top:3px}
.attention-list{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.attention-card{border:1px solid #e3eae4;background:#fbfcfb;border-radius:13px;padding:11px;text-align:left;display:flex;justify-content:space-between;gap:10px;cursor:pointer;transition:.16s}.attention-card:hover{border-color:#b9d2c0;box-shadow:0 6px 18px rgba(22,57,39,.07);transform:translateY(-1px)}.attention-card b,.attention-card small{display:block}.attention-card b{font-size:10px;color:#244630;margin:5px 0}.attention-card small{font-size:8px;color:#879188}.front-code{font-size:8px;font-weight:900;color:#8e6d1e;background:#fff1cc;padding:3px 5px;border-radius:6px}.attention-stats{text-align:right;min-width:70px}.attention-stats span,.attention-stats em{display:block}.attention-stats span{font-size:15px;font-weight:900;color:#2a6b44}.attention-stats em{font-size:7px;font-style:normal;color:#8c958f;margin-top:4px}.search-mini input{border:1px solid #dbe4dd;border-radius:9px;padding:7px 9px;font-size:9px;width:150px}
.command-strip{display:grid;grid-template-columns:1fr 170px;gap:18px;align-items:center;background:#fff;border:1px solid #e2eae3;border-radius:17px;padding:18px}.command-strip .eyebrow{color:#9a741d}.command-strip h2{margin:4px 0;color:#173e2b}.command-strip p{font-size:10px;color:#748078;max-width:700px}.command-strip .ring{width:116px;height:116px}.command-strip .ring:after{width:82px;height:82px}.command-strip .ring b{font-size:20px}
.sync-pill{font-size:8px;font-weight:900;text-transform:uppercase;padding:5px 8px;border-radius:999px}.sync-pill.ok{background:#e7f4ea;color:#23613a}.sync-pill.pending{background:#fff4d8;color:#84600f}.sync-pill.error{background:#fde9e7;color:#9f3029}.sync-box{margin-top:12px;padding:12px;background:#f7f9f7;border-radius:12px}.readiness-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.readiness-grid>div{background:#f7f9f7;border-radius:12px;padding:13px}.readiness-grid span{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:8px;background:#e7f2e9;color:#2c6d45;font-size:9px;font-weight:900}.readiness-grid b,.readiness-grid small{display:block}.readiness-grid b{font-size:10px;color:#294a35;margin:8px 0 4px}.readiness-grid small{font-size:8px;line-height:1.45;color:#7c8880}
@media(max-width:1250px){.dashboard-metrics{grid-template-columns:repeat(3,1fr)}.attention-list{grid-template-columns:repeat(3,1fr)}}
@media(max-width:980px){.command-hero,.command-strip{grid-template-columns:1fr}.event-countdown{display:none}.dashboard-layout{grid-template-columns:1fr}.visual-panel.span-2{grid-column:auto}.health-grid{grid-template-columns:1fr}.attention-list{grid-template-columns:repeat(2,1fr)}.readiness-grid{grid-template-columns:repeat(2,1fr)}.fin-row{grid-template-columns:1fr}.fin-balance{grid-template-columns:1fr}}
@media(max-width:760px){.dashboard-metrics{grid-template-columns:repeat(2,1fr)}.attention-list{grid-template-columns:1fr}.command-hero{padding:20px}.command-hero h2{font-size:22px}.readiness-grid{grid-template-columns:1fr}.metric-card b{font-size:13px}}


/* v5.5 — motor de avanço e cronograma */
.progress-engine{margin:14px 0 20px;padding:16px;border:1px solid #dbe7df;border-radius:14px;background:#f8fbf8}
.progress-engine-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:12px}
.progress-engine-head h4{margin:2px 0 0;color:#103d2b}
.progress-dual{display:flex;gap:18px}.progress-dual div{min-width:92px;text-align:right}.progress-dual small{display:block;color:#6b786f}.progress-dual b{font-size:20px;color:#123f2d}
.progress-component{display:grid;grid-template-columns:minmax(155px,1.2fr) 3fr 58px;align-items:center;gap:10px;margin:9px 0}.progress-component>div:first-child{display:flex;flex-direction:column}.progress-component small{color:#79857e;font-size:11px}.progress-component-track{height:8px;background:#e4ebe6;border-radius:999px;overflow:hidden}.progress-component-track span{display:block;height:100%;background:linear-gradient(90deg,#1f633b,#d2a532);border-radius:999px}.progress-component b{text-align:right;color:#16492f}.gantt-note{font-size:12px;color:#647369;margin:0 0 9px}.gantt-block.done{filter:saturate(.65);box-shadow:inset 0 0 0 1px rgba(15,75,44,.28)}
@media(max-width:800px){.progress-engine-head{align-items:flex-start;flex-direction:column}.progress-dual{width:100%;justify-content:space-between}.progress-component{grid-template-columns:1fr 2fr 52px}}

/* EXPOALTA v5.7 — métricas de progresso físico */
.tri-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.measurement-note{margin-top:12px;padding:11px 13px;border:1px solid #d7e0da;border-radius:10px;background:#f7faf8;font-size:12px;color:#4d6257}.progress-engine-v57 .progress-dual{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-stack-v57{display:grid;gap:10px}.exec-table-v57 th,.exec-table-v57 td{white-space:nowrap}.exec-table-v57 td:nth-child(2){white-space:normal;min-width:210px}.table-sub{display:block;color:#7a8a81;font-weight:400;margin-top:3px}.gantt-v57 .metric-mini{text-align:center;font-weight:700;white-space:nowrap}.metric-card.red{border-color:#efc4bf}.metric-card.red .metric-icon,.metric-card.red b{color:#a7382d}.late{color:#a7382d!important;font-weight:700}.ok{color:#17643f!important;font-weight:700}@media(max-width:900px){.tri-metrics{grid-template-columns:1fr}.progress-engine-v57 .progress-dual{grid-template-columns:1fr}.exec-table-v57{font-size:11px}}

/* ============================================================
   EXPOALTA 2026 — v5.8 UX responsiva e uso em campo
   ============================================================ */
:root{--sidebar-w:244px}
html,body{min-width:0}
.shell-v58{grid-template-columns:var(--sidebar-w) minmax(0,1fr)}
.shell-v58 .sidebar{display:flex;flex-direction:column;gap:0;padding:18px 14px;height:100dvh;overflow:hidden;position:sticky;top:0}
.brand-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.brand-row .brand{margin-bottom:12px}.sidebar-close{display:none;border:0;background:transparent;color:#fff;font-size:26px;line-height:1}
.nav-v58{display:flex;flex-direction:column;gap:5px;overflow-y:auto;min-height:0;padding:2px 0 12px;scrollbar-width:thin}.nav-v58 button{padding:10px 12px;font-size:13px;flex:0 0 auto}
.sidebar-footer-v58{position:static!important;left:auto!important;right:auto!important;bottom:auto!important;margin-top:auto;border-top:1px solid rgba(255,255,255,.10);padding:12px 2px 0;color:#afbeb5}
.user-mini{display:grid;gap:2px;margin-bottom:9px}.user-mini b{color:#fff;font-size:12px}.user-mini span{font-size:10px;color:#d7e2db}.user-mini small{font-size:9px;color:#9fafA5}
.logout-btn{width:100%;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.07);color:#fff;border-radius:9px;padding:8px 10px;font-size:11px;font-weight:800}.logout-btn:hover{background:rgba(255,255,255,.13)}
.event-mini{margin-top:9px;font-size:9px;line-height:1.45;color:#84988c}.sidebar-backdrop{display:none}
.top-v58{height:74px;padding:0 24px;gap:12px}.top-v58 h1{font-size:20px}.menu-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:9px;width:39px;height:39px;color:var(--dark);font-size:19px}.save-indicator{margin-left:auto}
.content{max-width:1680px;padding:22px clamp(18px,2vw,30px)}
.command-hero-v58{padding:24px}.command-hero-v58 h2{font-size:27px}.command-hero-v58 p{font-size:12px;line-height:1.55}
.dashboard-metrics-v58{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.metric-card{min-width:0}.metric-card small{font-size:9px}.metric-card b{font-size:18px}.metric-card span{font-size:8px;line-height:1.35}
.panel-sub{margin:3px 0 0;font-size:10px;color:#7b8880}
.attention-list-v58{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.attention-card-v58{min-height:112px;padding:14px}.attention-card-v58 b{font-size:12px;line-height:1.35}.attention-card-v58 small{font-size:9px;line-height:1.4}.attention-title{display:flex;align-items:center;gap:7px;margin-bottom:6px}.attention-stats span{font-size:20px}.attention-stats em{font-size:8px}.attention-stats small{display:block;margin-top:7px!important;white-space:nowrap}
.signal{display:inline-flex;align-items:center;border-radius:999px;padding:4px 7px;font-size:8px;font-weight:900;white-space:nowrap}.signal.green{background:#e5f3e9;color:#22643d}.signal.yellow{background:#fff1c9;color:#795b0d}.signal.red{background:#fde5e2;color:#9a322a}.signal.gray{background:#edf0ee;color:#68736d}
.quad-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.quad-metrics.compact{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}
.front-metric{border:1px solid var(--line);border-radius:13px;padding:12px;background:#fbfcfb;min-width:0}.front-metric>div:first-child{display:flex;justify-content:space-between;gap:8px;align-items:center}.front-metric span{font-size:10px;font-weight:800;color:#53635a}.front-metric b{font-size:15px;color:#173f2b}.front-metric-track{height:7px;background:#edf2ee;border-radius:999px;margin:8px 0;overflow:hidden}.front-metric-track span{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--gold));border-radius:999px}.front-metric small{display:block;font-size:8px;line-height:1.35;color:#7f8b84}
.command-strip-v58{grid-template-columns:1fr 180px}.exec-highlight{display:grid;text-align:center;background:#f7faf8;border:1px solid var(--line);border-radius:14px;padding:13px}.exec-highlight b{font-size:27px;color:#1d623c}.exec-highlight span{font-size:10px;font-weight:900;color:#365244}.exec-highlight small{font-size:8px;color:#829088;margin-top:3px}
.executive-table-wrap{max-width:100%}.exec-table-v58{min-width:1040px;font-size:11px}.exec-table-v58 th,.exec-table-v58 td{white-space:nowrap}.exec-table-v58 td:first-child{white-space:normal;min-width:230px}.table-sub{font-size:8px}
.gantt-v58 .gantt-table{min-width:1320px;font-size:11px}.gantt-v58 .front-cell{min-width:245px}.gantt-v58 .date-cell{min-width:86px}.gantt-v58 .metric-mini{min-width:55px}.gantt-v58 .gantt-week{min-width:58px}.gantt-label{font-size:9px!important}
.front-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:14px}.front-header h2{margin:9px 0 3px;color:var(--dark);font-size:24px}.front-header p{margin:0;color:var(--muted);font-size:11px}.front-code-lg{display:inline-block;margin-left:8px;font-size:10px}.front-header-actions{display:flex;gap:8px}
.tabs-v58{position:sticky;top:74px;z-index:8;background:var(--bg);padding:8px 0;margin:0 0 14px;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:thin}.tabs-v58 .tab{flex:0 0 auto;padding:9px 12px;font-size:11px}
.front-central{display:grid;gap:14px}.front-status-card{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow)}.front-status-card h3{margin:3px 0;color:var(--dark);font-size:20px}.front-status-card p{margin:0;color:var(--muted);font-size:11px}.front-status-card.red{border-left:5px solid #c54a40}.front-status-card.yellow{border-left:5px solid #d2a22f}.front-status-card.green{border-left:5px solid #2f7a4d}.front-status-card.gray{border-left:5px solid #9aa49e}.front-exec-number{text-align:right;min-width:125px}.front-exec-number b{display:block;font-size:31px;color:#174a31}.front-exec-number span{font-size:9px;color:#758179;font-weight:800}
.front-metrics-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.front-central-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.next-step-card{background:linear-gradient(130deg,#153f2a,#2f6b3b);color:#fff}.next-step-card h3{color:#fff;font-size:20px}.next-step-card p{color:#dce9df;font-size:11px;line-height:1.55}.next-step-card .panel-kicker{color:#efd18b}
.checklist58{display:grid;gap:7px}.checklist58 button{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid var(--line);background:#fff;border-radius:11px;padding:10px;cursor:pointer}.checklist58 button:hover{background:#f8faf8}.checklist58 b,.checklist58 small{display:block}.checklist58 b{font-size:10px;color:#274834}.checklist58 small{font-size:8px;color:#7d8982;margin-top:2px}.check-icon{width:25px;height:25px;border-radius:8px;display:grid;place-items:center;font-weight:900;flex:0 0 auto}.check-icon.ok{background:#e4f2e7;color:#256340}.check-icon.pending{background:#fff0c8;color:#88630c}
.control-counters{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.control-counters button{border:0;background:#f4f7f5;border-radius:11px;padding:12px;cursor:pointer}.control-counters b,.control-counters span{display:block}.control-counters b{font-size:20px;color:#1d5b39}.control-counters span{font-size:8px;color:#77847c;margin-top:3px}.next-action-text{font-size:13px;line-height:1.5;color:#294637}.alert58{padding:10px 12px;border-radius:10px;margin-top:10px;font-size:10px}.alert58.red{background:#fde9e7;color:#91372f}
.form-panel-v58{padding:20px}.form-intro{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px}.form-intro h3{margin:3px 0 4px;font-size:19px}.form-intro p{margin:0;font-size:10px;color:#77847c;line-height:1.45}.required-note{font-size:9px;color:#856318;background:#fff3d2;padding:5px 8px;border-radius:999px}.form-grid-v58{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.field-help{font-size:8px;color:#839087;margin-top:1px;line-height:1.35}.form-details{grid-column:1/-1;border:1px solid var(--line);border-radius:12px;background:#fafcfb;overflow:hidden}.form-details summary{cursor:pointer;padding:11px 13px;font-size:10px;font-weight:900;color:#365744}.form-details-body{padding:0 13px 13px}.form-details-body .form-grid{margin-top:4px}.form-actions-v58{display:flex;justify-content:flex-end;padding-top:2px}.panel-gap{margin-top:14px}
.quick-form-v58{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.quick-form-v58 .full{grid-column:1/-1}.quick-form-v58 textarea{min-height:70px}.quick-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.progress-engine-v58 .progress-dual{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.progress-engine-v58 .progress-dual>div{min-width:0;background:#fff;border:1px solid var(--line);border-radius:10px;padding:9px;text-align:left}.progress-engine-v58 .progress-dual b{font-size:17px}.progress-engine-v58 .measurement-note{font-size:10px;line-height:1.5}

@media(max-width:1450px){
  :root{--sidebar-w:230px}.content{padding:20px 20px}.dashboard-metrics-v58{grid-template-columns:repeat(3,minmax(0,1fr))}.attention-list-v58{grid-template-columns:repeat(3,minmax(0,1fr))}.front-metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.quad-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card b{font-size:17px}
}
@media(max-width:1180px){
  .attention-list-v58{grid-template-columns:repeat(2,minmax(0,1fr))}.front-central-grid{grid-template-columns:1fr}.front-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.control-counters{grid-template-columns:repeat(2,1fr)}.quick-form-v58{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:980px){
  body{overflow-x:hidden}.shell-v58{display:block}.shell-v58 .sidebar{position:fixed;z-index:60;left:0;top:0;width:min(86vw,290px);transform:translateX(-102%);transition:transform .2s ease;box-shadow:20px 0 45px rgba(0,0,0,.18)}body.sidebar-open .shell-v58 .sidebar{transform:translateX(0)}.sidebar-close,.menu-toggle{display:grid;place-items:center}.sidebar-backdrop{display:block;position:fixed;inset:0;z-index:55;background:rgba(8,26,17,.38);opacity:0;pointer-events:none;transition:.2s}body.sidebar-open .sidebar-backdrop{opacity:1;pointer-events:auto}.top-v58{position:sticky;top:0;height:68px;padding:0 14px}.tabs-v58{top:68px}.content{padding:14px}.command-hero-v58{padding:18px}.command-hero-v58 h2{font-size:22px}.dashboard-layout{grid-template-columns:1fr}.dashboard-metrics-v58{grid-template-columns:repeat(2,minmax(0,1fr))}.attention-list-v58{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid-v58,.quick-form-v58{grid-template-columns:1fr}.front-header{display:block}.front-header-actions{margin-top:10px}.front-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.front-status-card{align-items:flex-start}.front-exec-number b{font-size:27px}
}
@media(max-width:640px){
  .dashboard-metrics-v58,.attention-list-v58,.front-metrics-grid,.quad-metrics,.quad-metrics.compact{grid-template-columns:1fr}.command-hero-v58 .event-countdown{display:none}.front-status-card{display:block}.front-exec-number{text-align:left;margin-top:12px}.control-counters{grid-template-columns:repeat(2,1fr)}.form-intro{display:block}.required-note{display:inline-block;margin-top:8px}.top-v58 h1{font-size:17px}.top-v58 p{display:none}.tabs-v58 .tab{font-size:10px;padding:8px 10px}.content{padding:11px}.panel,.visual-panel{padding:14px}.gantt-wrap,.table-wrap{border-radius:10px}
}
.cards-v58{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.card-v58{padding:15px;display:grid;gap:12px}.card-v58 .card-top{align-items:flex-start}.card-v58 h4{font-size:13px;line-height:1.35;margin-top:7px}.card-progress-line>div:first-child{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.card-progress-line small{font-size:8px;color:#78867e;font-weight:800}.card-progress-line b{font-size:17px;color:#1e603c}.card-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.card-mini-grid div{background:#f5f8f6;border-radius:9px;padding:8px}.card-mini-grid small,.card-mini-grid b{display:block}.card-mini-grid small{font-size:7px;color:#809087}.card-mini-grid b{font-size:11px;color:#244b34;margin-top:2px}.card-v58 .card-actions{margin-top:0}.card-v58 .card-actions span{font-size:8px}.card-v58 .card-actions button{font-size:9px}
@media(max-width:1450px){.cards-v58{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.cards-v58{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.cards-v58{grid-template-columns:1fr}}

/* ============================================================
   EXPOALTA v5.10 — Design System Didático / Campo
   ============================================================ */
:root{--font-ui:Inter,"Segoe UI",Roboto,Arial,sans-serif;--fs-xs:12px;--fs-sm:13px;--fs-md:15px;--fs-base:16px;--fs-lg:18px;--fs-xl:22px;--focus:0 0 0 4px rgba(47,107,59,.13)}
body{font-family:var(--font-ui);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}
.top h1{font-size:24px;letter-spacing:-.02em}.top p{font-size:13px}.content{padding:28px}
.nav-v510{gap:8px}.nav-v510 button{display:flex;align-items:center;gap:12px;min-height:46px;padding:11px 12px;font-size:14px;font-weight:650;line-height:1.25}.nav-icon510{width:30px;height:30px;flex:0 0 30px;border-radius:9px;display:grid;place-items:center;background:rgba(255,255,255,.075);font-size:15px;font-weight:900;color:#f3d88d}.nav-v510 button:hover .nav-icon510{background:rgba(201,154,53,.2)}
.prod-badge{font-size:10px;letter-spacing:.05em}.brand strong{font-size:15px}.brand small{font-size:11px}
.command-hero h2,.hero h2{font-size:30px;line-height:1.15}.command-hero p,.hero p{font-size:14px;line-height:1.55}
.dashboard-metrics{gap:12px}.metric-card{min-height:96px;padding:16px;grid-template-columns:42px 1fr;gap:12px}.metric-icon{width:42px;height:42px;border-radius:12px;font-size:16px}.metric-card small{font-size:10px}.metric-card b{font-size:20px}.metric-card span{font-size:10px;line-height:1.35}
.panel,.visual-panel{padding:21px}.panel h3,.panel-head h3{font-size:18px;line-height:1.25}.panel-copy,.panel-sub{font-size:13px;line-height:1.55}.panel-kicker{font-size:10px;letter-spacing:.08em;font-weight:850}
.card{padding:19px}.card h4{font-size:16px;line-height:1.3}.meta,.card-actions{font-size:12px}.badge{font-size:11px}
.tabs{gap:8px;margin:16px 0}.tab{min-height:42px;padding:10px 13px;font-size:13px;border-radius:10px}.tab.active{box-shadow:0 4px 12px rgba(15,47,32,.12)}
.field{gap:7px}.field label{font-size:13px;line-height:1.3}.field input,.field select,.field textarea,.control{min-height:44px;padding:11px 12px;font-size:15px;border-radius:10px}.field textarea{min-height:108px;line-height:1.5}.field input:focus,.field select:focus,.field textarea:focus{box-shadow:var(--focus)}.help-text,.field-guide510{font-size:12px;line-height:1.45;color:#68766d}.field-guide510{padding:10px 12px;background:#f5f8f6;border-left:3px solid #6f8f58;border-radius:7px;margin-bottom:10px}
.btn{min-height:42px;padding:10px 15px;font-size:13px}.mini-btn{font-size:12px!important;min-height:34px;padding:7px 10px!important}
table{font-size:13px}th{font-size:12px;padding:11px 12px}td{padding:11px 12px;line-height:1.4}
.context-help510{background:#f8fbf9;border:1px solid #d9e6dd;border-radius:14px;margin:0 0 16px;overflow:hidden}.context-help510 summary{list-style:none;display:grid;grid-template-columns:36px 1fr 24px;gap:11px;align-items:center;padding:14px 16px;cursor:pointer}.context-help510 summary::-webkit-details-marker{display:none}.context-help510 summary b{display:block;font-size:14px;color:#173e2b}.context-help510 summary small{display:block;font-size:12px;color:#708078;margin-top:2px;line-height:1.4}.help-icon510{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e5f0e8;color:#245f3c;font-weight:900;font-family:Georgia,serif;font-size:16px;flex:0 0 auto}.help-chevron510{font-size:18px;color:#718078;transition:.2s}.context-help510[open] .help-chevron510{transform:rotate(180deg)}.help-body510{padding:2px 16px 16px;border-top:1px solid #e4ece6}.help-grid510{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.help-grid510>div,.help-steps510{background:#fff;border:1px solid #e5ece7;border-radius:11px;padding:12px}.help-body510 b{font-size:12px;color:#244b34}.help-body510 p,.help-body510 li{font-size:12px;color:#5f6e65;line-height:1.5}.help-body510 p{margin:5px 0 0}.help-steps510{margin-top:10px}.help-steps510 ol{margin:7px 0 0;padding-left:20px}.help-example510{margin-top:10px;padding:11px 12px;background:#fff7df;border-left:3px solid #c99a35;border-radius:8px}.help-example510 b,.help-example510 span{font-size:12px}.help-example510 span{color:#65552d;margin-left:5px}
.dashboard-guide510{display:flex;gap:12px;align-items:flex-start;background:#f7faf8;border:1px solid #dce7df;border-radius:14px;padding:14px 16px;margin:14px 0}.dashboard-guide510.global{margin-top:0}.dashboard-guide510 b{font-size:14px;color:#1f4c32}.dashboard-guide510 p{font-size:12px;line-height:1.55;color:#65736a;margin:3px 0 0}.dashboard-guide510 strong{color:#315d42}
.raci-legend510{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.raci-legend510>div{display:flex;align-items:center;gap:10px;background:#f8faf8;border:1px solid #e1e9e3;border-radius:12px;padding:11px}.raci-legend510 p{margin:0}.raci-legend510 b,.raci-legend510 small{display:block}.raci-legend510 b{font-size:12px;color:#254632}.raci-legend510 small{font-size:10px;line-height:1.35;color:#718078;margin-top:2px}.raci-letter510{width:34px;height:34px;flex:0 0 34px;border-radius:10px;display:grid;place-items:center;font-size:15px;font-weight:900}.raci-letter510.r{background:#e6f2e9;color:#28623e}.raci-letter510.a{background:#fff0c9;color:#835f0c}.raci-letter510.c{background:#e8eef7;color:#315d8c}.raci-letter510.i{background:#f0ebf6;color:#654b80}.inline-tip510{font-size:12px;line-height:1.5;padding:10px 12px;background:#fff9e9;border-left:3px solid #c99a35;border-radius:8px;margin-bottom:16px}.raci-form510{padding-top:4px}
.front-status-card h3{font-size:20px}.front-status-card p,.next-step-card p,.next-action-text{font-size:13px;line-height:1.55}.front-exec-number b{font-size:30px}.checklist58 button b{font-size:12px}.checklist58 button small{font-size:10px}.control-counters button b{font-size:20px}.control-counters button span{font-size:10px}
.attention-card b{font-size:12px;line-height:1.35}.attention-card small{font-size:10px;line-height:1.4}.attention-stats span{font-size:18px}.attention-stats em,.attention-stats small{font-size:9px}
@media(max-width:1250px){.content{padding:22px}.raci-legend510{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){body{font-size:15px}.content{padding:14px}.top{padding:0 14px}.top h1{font-size:20px}.command-hero h2,.hero h2{font-size:24px}.dashboard-metrics{grid-template-columns:1fr 1fr}.metric-card{min-height:90px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.help-grid510,.raci-legend510{grid-template-columns:1fr}.context-help510 summary{grid-template-columns:32px 1fr 20px;padding:12px}.tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.tab{white-space:nowrap}.raci-legend510>div{padding:10px}.panel,.visual-panel{padding:16px}}
@media(max-width:430px){.dashboard-metrics{grid-template-columns:1fr}.metric-card{grid-template-columns:38px 1fr;min-height:auto}.metric-icon{width:38px;height:38px}.metric-card b{font-size:19px}.dashboard-guide510{padding:12px}.nav-v510 button{font-size:15px}}
