:root{--dark:#101820;--dark2:#1d2933;--gold:#d9b66f;--bg:#f3f5f7;--text:#26313b;--muted:#6b7885;--line:#e5e9ed;--white:#fff}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,'Segoe UI',Arial,sans-serif;color:var(--text);background:var(--bg)}a{color:inherit}.app{display:flex;min-height:100vh}.sidebar{width:260px;background:var(--dark);color:white;flex-shrink:0;display:flex;flex-direction:column;padding:28px 16px;min-height:100vh}.brand{display:flex;align-items:center;gap:12px;padding:4px 8px 35px}.brand-icon{height:42px;width:42px;display:grid;place-items:center;background:#fff;color:var(--dark);font-weight:900;border-radius:10px}.brand strong{font-size:15px;letter-spacing:.5px}.brand small{display:block;color:#9faab4;font-size:10px;letter-spacing:1.1px;margin-top:5px}.nav-caption,.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.3px;color:#82909c}.nav-caption{padding:0 14px;margin-bottom:12px}.sidebar nav{display:grid;gap:4px}.sidebar nav a{display:flex;align-items:center;gap:13px;text-decoration:none;padding:13px 14px;border-radius:9px;color:#c9d1d8;font-size:14px}.sidebar nav a:hover,.sidebar nav a.active{background:#303d48;color:#fff}.sidebar nav a.active{box-shadow:inset 3px 0 var(--gold)}.nav-icon{font-size:19px;width:22px;text-align:center}.sidebar-bottom{margin-top:auto;border-top:1px solid #34404b;padding:20px 9px 0;color:#b6c0c8;font-size:11px}.sidebar-bottom small{display:block;margin:8px 0 0 15px;color:#7e8b97}.dot{display:inline-block;background:#83b99c;width:7px;height:7px;border-radius:50%;margin-right:5px}.workspace{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{background:#fff;border-bottom:1px solid var(--line);min-height:91px;padding:20px 34px;display:flex;align-items:center;justify-content:space-between;gap:15px}.top-left,.top-right{display:flex;align-items:center;gap:18px}.topbar h1{font-size:22px;margin:4px 0 0}.demo-badge{font-size:10px;font-weight:800;letter-spacing:.5px;color:#795c23;background:#fff3da;padding:10px 12px;border-radius:7px;white-space:nowrap}.avatar{height:38px;width:38px;border-radius:50%;background:#e8ecef;display:grid;place-items:center;font-size:12px;font-weight:800}.icon-button{display:none;border:1px solid var(--line);border-radius:8px;background:#fff;padding:9px 12px;cursor:pointer}.content{padding:32px 34px;flex:1}.welcome{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:25px}.welcome h2{font-size:28px;letter-spacing:-.6px;margin:7px 0}.welcome p,.panel-head p{color:var(--muted);margin:0;font-size:13px}.demo-note{font-size:11px;color:var(--muted);white-space:nowrap}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:22px}.metric-card,.panel{background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 3px 13px #16253406}.metric-card{padding:22px}.metric-head{display:flex;justify-content:space-between;gap:8px;align-items:center;color:var(--muted);font-size:12px}.metric-icon{font-size:22px;background:#f0f2f4;border-radius:9px;width:38px;height:38px;display:grid;place-items:center;color:#445563}.metric-card strong{display:block;font-size:34px;margin:13px 0 6px;line-height:1}.metric-card small{color:#8b959f;font-size:11px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);gap:20px;margin-bottom:22px}.panel{padding:22px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.panel h3{font-size:16px;margin:0 0 6px}.text-link{font-size:12px;color:#415566;text-decoration:none;font-weight:700;white-space:nowrap}.text-link:hover{text-decoration:underline}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;min-width:540px}th{font-size:10px;letter-spacing:.5px;color:#7c8995;background:#f8f9fa;padding:13px 10px}td{padding:15px 10px;border-bottom:1px solid #edf0f2;font-size:12px}td strong{display:block;font-size:12px}td small{display:block;color:#8d98a2;margin-top:4px}.status{display:inline-block;border-radius:30px;padding:6px 9px;font-size:10px;font-weight:700;white-space:nowrap}.status.info{background:#e7f1ff;color:#326aa1}.status.warning{background:#fff1d8;color:#916017}.status.success{background:#e2f4e8;color:#297746}.status.neutral{background:#edf0f3;color:#596c7c}.quick-links{display:grid;gap:8px}.quick-links a{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:9px;padding:12px;text-decoration:none}.quick-links a:hover{background:#f7f8f9}.quick-links a>span{font-size:21px;width:35px;text-align:center}.quick-links a div{flex:1}.quick-links strong{display:block;font-size:12px}.quick-links small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.quick-links b{color:#83909a}.flow-steps{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.flow-step{display:flex;align-items:center;gap:8px;background:#f5f7f8;border-radius:8px;padding:12px 14px;font-size:12px}.step-number{display:grid;place-items:center;background:var(--dark);color:#fff;border-radius:50%;width:22px;height:22px;font-size:11px}.flow-arrow{color:#8a96a0}.placeholder{max-width:750px;min-height:250px}.placeholder h2{margin-top:14px}.placeholder p{color:var(--muted);line-height:1.7}.footer{font-size:11px;color:#8995a0;padding:20px 34px;border-top:1px solid var(--line)}.mobile-overlay{position:fixed;inset:0;background:#0008;z-index:5}.mobile-overlay[hidden]{display:none}

/* Sprint 003 — Central de Gestão */
.filter-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:17px;padding:15px 20px}.filter-bar label{font-size:12px;font-weight:700}.filter-bar select{min-width:155px;max-width:100%;border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px 12px;color:var(--text);font:inherit;font-size:12px}.filter-reset{margin-left:auto;border:1px solid var(--line);border-radius:8px;padding:10px 13px;background:#f7f8f9;color:var(--text);font-weight:700;cursor:pointer}.filter-reset:hover{background:#e9eef2}.results-note{font-size:12px;color:var(--muted);margin:0 0 12px}.side-panels{display:grid;gap:18px;align-content:start}.bar-row{margin:13px 0}.bar-label{display:flex;justify-content:space-between;gap:12px;font-size:12px;margin-bottom:7px}.bar-track{height:9px;background:#edf0f3;border-radius:12px;overflow:hidden}.bar-fill{height:100%;background:#7a8d9c;border-radius:12px}.bar-fill.info{background:#5c95d0}.bar-fill.warning{background:#d4a64d}.bar-fill.success{background:#66ac84}.bar-fill.neutral{background:#8b9aa6}.empty-results{text-align:center;color:var(--muted);padding:30px 10px}.activities table{min-width:650px}

/* Sprint 004 — Solicitações */
.primary-btn{border:0;border-radius:9px;background:var(--dark);color:#fff;padding:12px 18px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.primary-btn:hover{background:#30404e}.subtle-btn{border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px 13px;cursor:pointer;color:var(--text);font-weight:650}.request-toolbar{display:flex;gap:14px;align-items:end;flex-wrap:wrap;margin-bottom:18px}.request-toolbar label,.request-form label{display:grid;gap:7px;font-size:12px;font-weight:700}.request-toolbar input,.request-toolbar select,.request-form input,.request-form select,.request-form textarea{font:inherit;color:var(--text);background:#fff;border:1px solid #d5dce2;border-radius:8px;padding:11px;min-width:0}.request-toolbar input{min-width:260px}.request-toolbar .subtle-btn{margin-left:auto}.text-button{border:0;background:transparent;color:#365a75;font-size:12px;font-weight:700;cursor:pointer}.text-button:hover{text-decoration:underline}.detail-panel{margin-top:18px}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;background:#f8f9fa;padding:17px;border-radius:9px}.detail-grid small,.detail-grid strong{display:block}.detail-grid small{color:var(--muted);font-size:11px;margin-bottom:5px}.detail-grid strong{font-size:13px}.description-text{white-space:pre-wrap;line-height:1.6}.history{padding-left:22px}.history li{margin:12px 0}.history small{display:block;color:var(--muted);margin-top:5px}.helper-text{font-size:12px;color:var(--muted)}.request-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.request-form .wide{grid-column:1/-1}.form-actions{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}#request-notice:not(:empty){margin-bottom:14px;padding:13px;border:1px solid #b9d8c4;background:#edf8f0;color:#24643d;border-radius:9px;font-size:13px}

/* Sprint 005 */
.inline-action{display:inline-block;text-decoration:none}.history-note{white-space:pre-wrap;margin:8px 0;font-size:13px;line-height:1.5}.request-form [hidden]{display:none!important}#process-notice:not(:empty){margin-bottom:14px;padding:13px;border:1px solid #b9d8c4;background:#edf8f0;color:#24643d;border-radius:9px;font-size:13px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #d9b66f;outline-offset:2px}

/* Sprint 006 */
.status.danger{background:#fde8e8;color:#a12e2e}#approval-notice:not(:empty){margin-bottom:14px;padding:13px;border:1px solid #b9d8c4;background:#edf8f0;color:#24643d;border-radius:9px;font-size:13px}

/* Sprint 007 */
#execution-notice:not(:empty){margin-bottom:14px;padding:13px;border:1px solid #b9d8c4;background:#edf8f0;color:#24643d;border-radius:9px;font-size:13px}

/* Sprint 008 */
.executive-toolbar{display:flex;align-items:end;gap:14px;flex-wrap:wrap;margin-bottom:18px}.executive-toolbar label{display:grid;gap:7px;font-size:12px;font-weight:700}.executive-toolbar select{font:inherit;font-size:12px;min-width:150px;padding:10px;border:1px solid #d5dce2;border-radius:8px;background:#fff}.executive-summary{display:flex;gap:12px 25px;align-items:center;flex-wrap:wrap;margin-bottom:20px}.executive-summary span{font-size:13px}.executive-summary small{color:var(--muted);width:100%;line-height:1.5}.executive-charts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:20px}.executive-charts .panel{min-width:0}.executive-charts .bar-label span{overflow-wrap:anywhere}.status.danger{background:#fde8e8;color:#a12e2e}@media(max-width:1100px){.executive-charts{grid-template-columns:1fr 1fr}}@media(max-width:720px){.executive-charts{grid-template-columns:1fr}.executive-toolbar label,.executive-toolbar select{width:100%}.executive-toolbar button{flex:1}}

/* Sprint 009 — Diagnóstico */
.diag-intro{margin-bottom:20px}.diag-intro p{font-size:13px;line-height:1.6;color:var(--muted)}.diag-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.diag-questions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.diag-questions>div,.diag-detail{border:1px solid var(--line);border-radius:9px;padding:15px;background:#fafbfc}.diag-questions strong{font-size:13px}.diag-questions p,.diag-detail p{font-size:12px;line-height:1.6;color:var(--muted)}#diag-form-panel{margin-bottom:20px}#diag-form-panel[hidden]{display:none}.diag-detail{margin-top:18px}@media(max-width:720px){.diag-questions{grid-template-columns:1fr}.diag-actions button{flex:1}}

/* Sprint 010 — Roadmap */
.road-banner{margin-bottom:20px}.road-banner p{font-size:13px;color:var(--muted);line-height:1.6}.road-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.road-link{text-decoration:none;display:inline-flex;align-items:center}.road-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.road-column{border:1px solid var(--line);border-radius:10px;background:#f8fafb;padding:15px;min-width:0}.road-column h4{display:flex;justify-content:space-between;gap:10px;margin:0 0 14px}.road-column h4 span{background:#e5eaf0;border-radius:30px;padding:2px 8px}.road-column button{width:100%;text-align:left;background:white;border:1px solid var(--line);border-radius:8px;padding:12px;margin:0 0 9px;cursor:pointer}.road-column button strong,.road-column button small{display:block;overflow-wrap:anywhere}.road-column button small{color:var(--muted);margin-top:6px}.road-column p{font-size:12px;color:var(--muted)}#road-editor{margin:20px 0}#road-editor[hidden]{display:none}@media(max-width:900px){.road-columns{grid-template-columns:1fr}}@media(max-width:720px){.road-actions>*{width:100%;justify-content:center}.road-filters label,.road-filters select{width:100%}}

/* Sprint 011 — Apresentação executiva */
.presentation-page{max-width:1100px;margin:0 auto;background:#fff;border:1px solid var(--line);box-shadow:0 8px 30px #17222d12;color:#1b2832}.exec-topline{display:flex;justify-content:space-between;gap:14px;padding:18px 32px;font-size:10px;letter-spacing:1.3px;font-weight:800}.exec-topline b{color:#bd9b59}.exec-hero{background:#101820;color:#fff;padding:60px 50px 26px}.exec-kicker,.exec-small-heading,.exec-section-title>span,.exec-closing>span{font-size:11px;font-weight:800;letter-spacing:1.7px;color:#c8a968}.exec-hero h2{font-size:clamp(32px,4.2vw,54px);line-height:1.12;letter-spacing:-1.5px;margin:22px 0}.exec-hero h2 em{font-style:normal;color:#d9b66f}.exec-hero p{max-width:690px;color:#d0d6dc;font-size:16px;line-height:1.65}.exec-hero-footer{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #43505a;padding-top:23px;margin-top:42px;color:#bac5cc;font-size:10px;letter-spacing:1px}.exec-section-title{padding:42px 48px 0}.exec-section-title h3{font-size:28px;letter-spacing:-.5px;margin:12px 0}.exec-lead{font-size:15px;line-height:1.7;margin:0;padding:0 48px 25px;color:#4d5b67}.exec-method{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0 48px 40px}.exec-method article{border:1px solid #e4e8eb;border-radius:10px;padding:17px;display:grid;gap:9px}.exec-method article span{font-size:12px;color:#ae8b49;font-weight:800}.exec-method article strong{font-size:13px}.exec-method article small{font-size:12px;line-height:1.45;color:#667681}.exec-two-cols{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid #e6e9ed;border-bottom:1px solid #e6e9ed}.exec-info{padding:40px 48px}.exec-info+.exec-info{border-left:1px solid #e6e9ed}.exec-info h3{font-size:24px;margin:12px 0}.exec-info p,.exec-info li{font-size:13px;line-height:1.7;color:#4f5d68}.exec-info ul{padding-left:18px}.exec-inline-link{font-size:13px;font-weight:750;color:#263f53}.exec-closing{padding:42px 48px;background:#f4f6f7}.exec-closing h3{font-size:27px;margin:12px 0}.exec-closing p{font-size:14px;line-height:1.65;color:#52616d;max-width:760px}.exec-signature{margin-top:30px;display:flex;justify-content:space-between;gap:15px;border-top:1px solid #d9dee2;padding-top:18px;font-size:12px}.exec-signature span{color:#6e7d87}.exec-disclaimer{padding:14px 48px;font-size:10px;color:#74818c}.exec-actions{max-width:1100px;margin:18px auto;display:flex;gap:10px;flex-wrap:wrap}.exec-action-link{text-decoration:none;font-size:13px;display:inline-flex;align-items:center}
@media(max-width:850px){.exec-method{grid-template-columns:repeat(2,1fr)}.exec-two-cols{grid-template-columns:1fr}.exec-info+.exec-info{border-left:0;border-top:1px solid #e6e9ed}}
@media(max-width:550px){.exec-topline{flex-direction:column}.exec-hero{padding:38px 24px 22px}.exec-hero-footer{flex-direction:column}.exec-section-title{padding:30px 24px 0}.exec-lead{padding:0 24px 22px}.exec-method{padding:0 24px 30px;grid-template-columns:1fr}.exec-info,.exec-closing{padding:30px 24px}.exec-disclaimer{padding:15px 24px}.exec-signature{flex-direction:column}}
@media print{@page{size:A4;margin:10mm}body{background:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.sidebar,.topbar,.footer,.mobile-overlay,.exec-actions{display:none!important}.app,.workspace,.content{display:block!important;min-height:0!important;padding:0!important;margin:0!important}.presentation-page{box-shadow:none!important;border:0!important;max-width:none!important}.exec-hero{padding:30px 32px 20px!important}.exec-hero h2{font-size:33px!important}.exec-hero p{font-size:12px!important}.exec-hero-footer{margin-top:16px!important}.exec-section-title{padding:20px 28px 0!important}.exec-section-title h3{font-size:21px!important}.exec-lead{font-size:11px!important;padding:0 28px 14px!important}.exec-method{padding:0 28px 16px!important;gap:7px!important}.exec-method article{padding:9px!important;gap:4px!important}.exec-method article small{font-size:9px!important}.exec-two-cols{grid-template-columns:1fr 1fr!important}.exec-info{padding:18px 28px!important}.exec-info h3{font-size:19px!important}.exec-info p,.exec-info li{font-size:10px!important}.exec-closing{padding:20px 28px!important}.exec-closing h3{font-size:19px!important}.exec-closing p{font-size:10px!important}.exec-signature{margin-top:12px!important}.exec-disclaimer{padding:8px 28px!important;font-size:8px!important}.exec-method article,.exec-info,.exec-closing{break-inside:avoid}}

/* Sprint 012: roteiro guiado */
.demo-prep{padding:0 20px 18px;color:#45515d;line-height:1.6}.demo-step-list{padding:0 20px 20px}.demo-step{display:grid;grid-template-columns:32px 1fr;gap:14px;padding:19px 0;border-top:1px solid #e8ebef}.demo-step h3{margin:4px 0}.demo-step p{margin:6px 0 13px}.demo-step-check input{width:20px;height:20px;accent-color:#101820}.demo-script{font-style:italic;color:#52606c}.demo-step .inline-action{margin-top:4px}@media print{.sidebar,.topbar,.footer,.mobile-overlay,.demo-step .primary-btn,.demo-step .text-link,#demo-print,#demo-reset-progress{display:none!important}.workspace,.content{width:100%!important;margin:0!important;padding:0!important}.demo-step{break-inside:avoid}.panel{box-shadow:none!important;border:1px solid #ddd!important}}
