:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#243e48;background:#f4f6f4;font-synthesis:none;--navy:#132c3b;--mint:#b9ead5;--muted:#72848b;--line:#e3eae6;--accent:#257b62}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}a{color:var(--accent)}h1,h2,h3,p{margin-top:0}h1{font-size:30px;letter-spacing:-1px;margin-bottom:8px}h2{font-size:19px;letter-spacing:-.3px}h3{font-size:15px}p{line-height:1.6}.muted,.subtle{color:var(--muted)}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:1.8px;font-weight:700}.shell{display:grid;grid-template-columns:242px 1fr;min-height:100vh}.sidebar{background:var(--navy);color:#dce6e9;padding:35px 23px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;width:242px;z-index:5}.brand{display:flex;align-items:center;gap:11px;color:white;font-weight:700;font-size:21px;letter-spacing:-.6px;margin-bottom:7px}.brand-icon{background:var(--mint);color:var(--navy);width:36px;height:36px;border-radius:11px;display:grid;place-items:center;font-size:20px}.brand-icon:has(img){width:44px;height:44px;border-radius:13px}.brand-icon img{width:33px;height:auto;max-height:38px;object-fit:contain;display:block}.sidebar .eyebrow{color:#8da5b2;margin:0 0 43px 47px;font-size:9px;letter-spacing:1.2px}.nav-label{font-size:10px;letter-spacing:1.8px;color:#829ba8;margin:0 12px 13px}.navigation{display:grid;gap:6px}.nav-button{display:flex;gap:13px;align-items:center;background:none;border:0;padding:13px 14px;text-align:left;color:#adc0c9;border-radius:8px;font-size:13px;font-weight:550}.nav-button:hover{background:#1e3b4b;color:white}.nav-button.active{background:var(--mint);color:#183d35}.nav-icon{width:19px;font-size:18px;text-align:center}.sidebar-foot{margin-top:auto;padding-top:32px}.private-label{border:1px solid #2c4653;border-radius:10px;padding:13px;font-size:11px;line-height:1.7;color:#94adb9;margin-bottom:23px}.private-label strong{display:block;color:#c4d8df}.account{display:flex;gap:10px;align-items:center;padding-top:18px;border-top:1px solid #2b4350}.avatar{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:#2a4d5c;color:var(--mint);font-weight:650;flex-shrink:0}.account-name{font-size:12px;font-weight:600;overflow-wrap:anywhere}.account-role{font-size:10px;color:#96b0be;margin-top:4px}.logout{margin-left:auto;background:none;border:0;color:#c7d8df;padding:8px}.workspace{grid-column:2;min-width:0}.topbar{height:87px;background:#fafcf9;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:25px;padding:0 40px}.breadcrumb{font-size:12px;color:#7d8d93;white-space:nowrap}.search-form{display:flex;align-items:center;gap:9px;margin-left:auto;width:min(100%,410px);background:#f0f4f0;border:1px solid #e4ebe5;border-radius:9px;padding:0 13px}.search-form input{min-width:0;width:100%;background:none;border:0;padding:11px 0;font-size:12px;color:#2c464d}.search-form button{border:0;background:none;color:#627c77;padding:7px}.top-badge{font-size:10px;color:#3c7b65;border:1px solid #cfe7da;background:#edf8f0;padding:6px 10px;border-radius:20px;white-space:nowrap}.mobile-menu{display:none}.content{padding:36px 40px 50px;max-width:1700px;margin:auto}.page-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px}.page-header p{font-size:13px;margin:0;color:var(--muted)}.header-actions{display:flex;gap:9px;flex-wrap:wrap}.button{border:1px solid #dce5df;background:white;color:#31574d;border-radius:8px;padding:11px 16px;font-size:12px;font-weight:650;display:inline-flex;gap:7px;align-items:center;justify-content:center;text-decoration:none}.button.primary{background:#245849;border-color:#245849;color:white}.button.primary:hover{background:#173f34}.button.small{padding:7px 11px;font-size:11px}.button.danger{color:#a74444;border-color:#f0d5d2;background:#fff8f7}.button.ghost{background:none;border-color:transparent}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:28px}.metric{padding:23px;background:white;border:1px solid var(--line);border-radius:12px;min-width:0;container-type:inline-size}.metric.accent{background:#dcefe4;border-color:#cce4d6}.metric-label{display:flex;justify-content:space-between;font-size:12px;color:#6d807f;gap:10px}.metric-icon{color:#75a28c}.metric-value{font-size:clamp(13px,13cqi,27px);letter-spacing:-.5px;font-weight:650;margin:17px 0 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}.metric-value.mid{font-size:clamp(13px,11cqi,27px)}.metric-value.long{font-size:clamp(12px,9cqi,27px)}.metric-note{font-size:10px;color:#80938a}.panel{background:white;border:1px solid var(--line);border-radius:12px;margin-bottom:23px;overflow:hidden}.panel-heading{padding:23px 24px 18px;display:flex;align-items:center;justify-content:space-between;gap:15px}.panel-heading h2{margin:0}.panel-heading p{margin:7px 0 0;font-size:11px;color:var(--muted)}.panel-body{padding:0 24px 23px}.dashboard-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:23px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{font-size:10px;letter-spacing:.45px;font-weight:650;color:#81928c;background:#f9fbf8;padding:13px 23px;white-space:nowrap}td{border-top:1px solid #edf1ed;padding:17px 23px;vertical-align:middle;line-height:1.6}.table-primary{color:#244940;font-weight:600}.table-secondary{color:#83918e;font-size:10px;margin-top:3px}td.money{font-weight:650;white-space:nowrap}.badge{display:inline-flex;padding:4px 9px;border-radius:5px;font-size:10px;font-weight:600;white-space:nowrap;background:#ecf2ee;color:#5c7569}.badge.success{background:#e4f4eb;color:#287b50}.badge.warning{background:#fff3dc;color:#9d7424}.badge.error{background:#fbe9e7;color:#b85547}.project-link{border:0;background:none;padding:0;text-align:left;color:#244940;font-weight:650;font-size:12px}.project-link:hover{text-decoration:underline}.row-actions{display:flex;gap:5px;flex-wrap:wrap}.empty{padding:48px 24px;text-align:center;color:#7c8d85;font-size:13px}.empty strong{display:block;font-size:15px;color:#35584c;margin-bottom:8px}.schedule-list{list-style:none;margin:0;padding:0}.schedule-list li{display:flex;align-items:center;gap:13px;border-top:1px solid #edf1ed;padding:17px 24px}.date-square{background:#f0f5ef;border-radius:8px;width:42px;height:43px;display:grid;place-items:center;flex-shrink:0;font-size:14px;font-weight:700;color:#3f6855}.schedule-text{flex:1;font-size:12px}.schedule-text small{display:block;color:#8a978d;font-size:10px;margin-top:3px}.schedule-amount{font-size:12px;font-weight:600;white-space:nowrap}.demo-banner{margin-bottom:25px;background:#fff5df;color:#856a2b;border:1px solid #eeddb3;border-radius:8px;padding:12px 17px;font-size:12px;line-height:1.6}.detail-back{display:inline-block;margin-bottom:18px;border:0;background:none;color:#597d6e;padding:0;font-size:12px}.tabs{display:flex;gap:25px;border-bottom:1px solid var(--line);margin-bottom:25px;overflow:auto}.tab{border:0;background:none;padding:15px 2px;color:#7f8f85;font-size:12px;white-space:nowrap;border-bottom:2px solid transparent}.tab.active{color:#25634d;border-bottom-color:#25634d;font-weight:650}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:10px}.info-grid dt{color:#8b9991;font-size:10px;margin-bottom:7px}.info-grid dd{margin:0;font-size:13px;color:#335649;overflow-wrap:anywhere}.info-description{white-space:pre-wrap;font-size:13px;color:#61796d}.inline-note{background:#f1f6f0;padding:15px;border-radius:8px;font-size:12px;line-height:1.65;color:#617b6d;margin-bottom:22px}.loading{padding:70px;text-align:center;color:#718d7e;font-size:13px}.error-box{background:#fff0ed;border:1px solid #edcfc9;color:#a64e40;padding:15px;border-radius:8px;font-size:13px;line-height:1.6}.initial-loading{display:grid;place-items:center;height:100vh;color:#3b6b56}.login-page{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr}.login-hero{background:var(--navy);color:white;padding:65px 12%;display:flex;flex-direction:column;justify-content:center}.login-hero .brand{margin-bottom:70px}.login-hero h1{font-size:43px;line-height:1.2;letter-spacing:-1.8px;max-width:460px}.login-hero h1 span{color:var(--mint)}.login-hero p{color:#9db4bd;font-size:14px;max-width:390px}.hero-lines{border-top:1px solid #34515e;margin-top:50px;padding-top:25px;display:flex;gap:35px}.hero-lines strong{font-size:24px;color:var(--mint);display:block}.hero-lines small{font-size:11px;color:#9db4bd}.login-side{display:flex;justify-content:center;align-items:center;padding:40px}.login-card{width:100%;max-width:390px}.login-card h2{font-size:26px;margin-bottom:10px}.login-card p{font-size:13px;color:#809387;margin-bottom:30px}.login-card .button{width:100%;margin-top:8px}.login-note{font-size:11px;color:#8b9b91;text-align:center;margin-top:26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:17px;font-size:12px;font-weight:600;color:#456351}.form-grid .field{margin-bottom:0}.field.wide{grid-column:1/-1}.field input,.field select,.field textarea{border:1px solid #dce6dd;border-radius:7px;background:#fcfdfb;padding:12px;color:#294637;min-width:0;width:100%;font-size:13px}.field textarea{resize:vertical;min-height:85px}.field small{font-weight:400;color:#83928a;line-height:1.5}.form-error{color:#a0463c;background:#fff0ed;padding:11px;border-radius:6px;font-size:12px;margin:16px 0}.form-error:empty{display:none}dialog{border:1px solid #dce8dc;border-radius:15px;width:min(570px,calc(100vw - 32px));padding:0;box-shadow:0 30px 100px #102c3938;color:#284d3a;max-height:90vh}dialog::backdrop{background:#10273588;backdrop-filter:blur(3px)}.modal-header{padding:25px 26px 20px;border-bottom:1px solid #edf1eb;display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;font-size:21px}.modal-close{border:0;background:#f2f5ef;color:#7d9384;width:30px;height:30px;border-radius:50%;font-size:18px}.modal-body{padding:23px 26px}.modal-footer{display:flex;justify-content:flex-end;gap:9px;margin-top:22px;padding-top:18px;border-top:1px solid #edf1eb}#toast{position:fixed;bottom:25px;right:25px;z-index:100;background:#214f3e;color:white;border-radius:10px;padding:15px 23px;font-size:13px;box-shadow:0 8px 30px #193d3024;display:none;max-width:calc(100vw - 50px)}#toast.visible{display:block}.drawer-overlay{display:none}.mini-total{display:flex;gap:15px;align-items:center;font-size:12px;color:#6c8777}.mini-total strong{color:#305c43;font-size:20px}.spacer{margin-top:25px}.file-label{overflow-wrap:anywhere;max-width:250px}.footer-caption{font-size:10px;color:#8a9a90;margin-top:25px;text-align:right}.filter-row{display:flex;gap:10px;padding:0 24px 20px}.filter-row input{padding:10px 12px;border:1px solid #e1e9e0;background:#f8faf5;border-radius:7px;width:100%;font-size:12px}
@media(min-width:1600px){.metric-value{font-size:clamp(13px,13cqi,32px)}.metric-value.mid{font-size:clamp(13px,11cqi,32px)}.metric-value.long{font-size:clamp(12px,9cqi,32px)}}@media(max-width:1200px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.topbar{padding:0 25px;gap:15px}.content{padding:30px 25px}.top-badge{display:none}.breadcrumb{display:none}.detail-grid{grid-template-columns:1fr}}@media(max-width:760px){.shell{grid-template-columns:1fr}.workspace{grid-column:1}.sidebar{transform:translateX(-100%);transition:transform .2s}.sidebar.open{transform:translateX(0)}.drawer-overlay.visible{display:block;position:fixed;inset:0;background:#132c3b88;z-index:4}.mobile-menu{display:block;background:none;border:0;font-size:22px;color:#466f5d}.topbar{height:70px;padding:0 17px;gap:13px}.search-form{width:100%;margin:0}.search-form input{font-size:11px}.content{padding:25px 17px}.page-header{align-items:flex-start;flex-direction:column;gap:17px;margin-bottom:23px}h1{font-size:26px}.cards{gap:10px}.metric{padding:17px 14px}.metric-value{font-size:clamp(13px,13cqi,22px);margin-top:13px}.metric-value.mid{font-size:clamp(12px,11cqi,22px)}.metric-value.long{font-size:clamp(12px,9cqi,22px)}.metric-label{font-size:11px}.metric-note{font-size:9px}.panel-heading{padding:19px 17px}td,th{padding:13px 17px}.form-grid{grid-template-columns:1fr}.field.wide{grid-column:1}.login-page{grid-template-columns:1fr}.login-hero{padding:30px;min-height:auto}.login-hero .brand{margin-bottom:25px}.login-hero h1{font-size:30px;margin-bottom:7px}.login-hero p,.hero-lines{display:none}.login-side{padding:30px 25px}.tabs{gap:18px}.info-grid{gap:20px 15px}.panel-body{padding:0 17px 20px}.schedule-list li{padding:15px 17px}.footer-caption{text-align:left}.filter-row{padding:0 17px 17px}}
.text-small{font-size:12px}.text-caption{font-size:11px}.actions-space{margin-bottom:20px}.field input.checkbox{width:auto}.full-height{min-height:100vh}
:root{color-scheme:light}.theme-toggle{position:fixed;right:20px;bottom:20px;z-index:20;box-shadow:0 4px 20px #102c3926}#toast{bottom:80px}
:root[data-theme="dark"]{color-scheme:dark;color:#dce9e5;background:#101c22;--navy:#0c1820;--mint:#b9ead5;--muted:#a2b7b1;--line:#32464c;--accent:#88d8b6}
[data-theme="dark"] .topbar,[data-theme="dark"] .panel,[data-theme="dark"] .metric,[data-theme="dark"] dialog{background:#192a31;color:#dce9e5;border-color:var(--line)}
[data-theme="dark"] .search-form,[data-theme="dark"] th,[data-theme="dark"] .field input,[data-theme="dark"] .field select,[data-theme="dark"] .field textarea,[data-theme="dark"] .filter-row input,[data-theme="dark"] .modal-close{background:#122229;color:#e0ebe7;border-color:var(--line)}
[data-theme="dark"] .search-form input,[data-theme="dark"] .search-form button,[data-theme="dark"] .field,[data-theme="dark"] .table-primary,[data-theme="dark"] .project-link,[data-theme="dark"] .info-grid dd,[data-theme="dark"] .empty strong,[data-theme="dark"] .mobile-menu,[data-theme="dark"] .mini-total strong{color:#dce9e5}
[data-theme="dark"] .button{background:#22393e;color:#c6eddf;border-color:#48625f}[data-theme="dark"] .button.primary{background:#306c57;color:white;border-color:#438168}[data-theme="dark"] .button.primary:hover{background:#397f66}[data-theme="dark"] .button.ghost{background:transparent}
[data-theme="dark"] .metric.accent,[data-theme="dark"] .inline-note,[data-theme="dark"] .date-square,[data-theme="dark"] .top-badge{background:#203f36;color:#c6eddf;border-color:#426a59}
[data-theme="dark"] td,[data-theme="dark"] .schedule-list li,[data-theme="dark"] .modal-header,[data-theme="dark"] .modal-footer{border-color:var(--line)}
[data-theme="dark"] .table-secondary,[data-theme="dark"] th,[data-theme="dark"] .metric-label,[data-theme="dark"] .metric-note,[data-theme="dark"] .breadcrumb,[data-theme="dark"] .schedule-text small,[data-theme="dark"] .info-grid dt,[data-theme="dark"] .info-description,[data-theme="dark"] .field small,[data-theme="dark"] .login-card p,[data-theme="dark"] .login-note,[data-theme="dark"] .footer-caption,[data-theme="dark"] .empty,[data-theme="dark"] .tab,[data-theme="dark"] .detail-back{color:#a9beb6}
[data-theme="dark"] .tab.active{color:#9ce3c3;border-color:#9ce3c3}[data-theme="dark"] .badge{background:#30463d;color:#d2e6db}[data-theme="dark"] .badge.success{background:#234f3a;color:#b1efca}[data-theme="dark"] .badge.warning,[data-theme="dark"] .demo-banner{background:#443922;color:#f0d698;border-color:#72603b}[data-theme="dark"] .badge.error,[data-theme="dark"] .error-box,[data-theme="dark"] .form-error,[data-theme="dark"] .button.danger{background:#492d30;color:#ffc3b9;border-color:#80504e}
.content{padding-bottom:95px}.login-side{padding-bottom:95px}@media(max-width:760px){.theme-toggle{right:12px;bottom:12px;padding:9px 12px}}
.person-project-group+.person-project-group{margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}.person-project-link{margin-top:7px}.field .project-notes-input{min-height:230px}
dialog.summary-modal{width:min(1000px,calc(100vw - 32px))}.summary-modal td{white-space:pre-wrap;overflow-wrap:anywhere}.summary-excerpt{font-size:11px;color:var(--muted)}.summary-modal li{font-size:13px;line-height:1.7}
.seal{display:inline-flex;align-items:center;padding:3px 8px;border-radius:5px;font-size:9px;font-weight:800;letter-spacing:.8px;white-space:nowrap;vertical-align:middle;border:1px solid}.seal.urgent{background:#c62f2a;color:#fff;border-color:#a8231f}.seal.review{background:#fff1cc;color:#7a5200;border-color:#e2b54d}h1 .seal{font-size:11px;padding:5px 10px}.review-box{border:1px solid;border-left-width:5px;border-radius:8px;padding:13px 16px;margin:-12px 0 22px;font-size:12px;line-height:1.6;overflow-wrap:anywhere}.review-box strong{display:block;font-size:11px;letter-spacing:.8px;margin-bottom:3px}.review-box.urgent{background:#fdecea;color:#8f211c;border-color:#c62f2a}.review-box.review{background:#fff7e0;color:#6e4b00;border-color:#d9a43a}.live-total{display:block;font-size:20px;font-weight:700;color:#245849;padding:6px 0}.live-total.invalid{color:#b85547}.project-filters{flex-wrap:wrap}.project-filters .field{flex:1 1 160px;margin:0}.project-filters select{width:100%}
[data-theme="dark"] .seal.urgent{background:#d9443d;color:#fff;border-color:#ff8a80}[data-theme="dark"] .seal.review{background:#5a4512;color:#ffd978;border-color:#a8822c}[data-theme="dark"] .review-box.urgent{background:#4a2222;color:#ffc9c3;border-color:#e0574f}[data-theme="dark"] .review-box.review{background:#443718;color:#f6dc9a;border-color:#c49a3d}[data-theme="dark"] .live-total{color:#9ce3c3}[data-theme="dark"] .live-total.invalid{color:#ffc3b9}
[hidden]{display:none!important}.seal.payee{background:#e8ecff;color:#2f3f9e;border-color:#9aa8ea}.review-box.payee{background:#eef1ff;color:#2f3f9e;border-color:#5f72d6}.person-seal{margin-top:7px}.person-holder-actions{margin:6px 0 2px}
[data-theme="dark"] .seal.payee{background:#2a3266;color:#c9d2ff;border-color:#6f7fe0}[data-theme="dark"] .review-box.payee{background:#232a52;color:#d3daff;border-color:#7d8ce6}
/* Story 008: plataforma (fonte de recursos), saldo e diferenças declarado × CRM. */
.seal.platform{background:#e3f1ff;color:#17507f;border-color:#7fb0dc}.badge.platform{background:#e3f1ff;color:#17507f}.platform-block{border-color:#bcd8ee}.platform-block .cards{margin-bottom:20px}.metric.balance{background:#eaf3ff;border-color:#bcd8ee}.metric.negative{background:#fdecea;border-color:#efc2bc}.metric.negative .metric-value{color:#a8231f}.platform-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px;margin-bottom:18px}.platform-columns h3{font-size:12px;letter-spacing:.6px;text-transform:uppercase;color:var(--muted);margin:0 0 8px}.platform-list{margin:0;border:1px solid var(--line);border-radius:9px;overflow:hidden}.platform-list div{display:flex;justify-content:space-between;gap:12px;padding:10px 14px;font-size:12px;border-top:1px solid var(--line)}.platform-list div:first-child{border-top:0}.platform-list dt{color:var(--muted);min-width:0}.platform-list dd{margin:0;font-weight:650;white-space:nowrap;font-variant-numeric:tabular-nums}.platform-list .total{background:#f1f6f0}.platform-diffs{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:8px}.platform-diffs li{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;border:1px solid var(--line);border-left-width:5px;border-radius:8px;padding:10px 14px;font-size:12px}.platform-diffs .diff-label{font-weight:700;min-width:150px}.platform-diffs strong{margin-left:auto;white-space:nowrap}.platform-diffs li.match{border-left-color:#3c9a6e}.platform-diffs li.match strong{color:#287b50}.platform-diffs li.divergent{background:#fff7e0;border-color:#e2b54d;border-left-color:#c27c00;color:#6e4b00}.platform-alerts{margin:0}.platform-alerts ul{margin:4px 0 0;padding-left:18px}
@media(max-width:900px){.platform-cards{grid-template-columns:minmax(0,1fr)}}@media(max-width:760px){.platform-columns{grid-template-columns:1fr}.platform-diffs .diff-label{min-width:0;width:100%}.platform-diffs strong{margin-left:0;white-space:normal}}
[data-theme="dark"] .seal.platform,[data-theme="dark"] .badge.platform{background:#1d3a55;color:#bfe0ff;border-color:#4f86b8}[data-theme="dark"] .platform-block{border-color:#36597a}[data-theme="dark"] .metric.balance{background:#1d3347;border-color:#36597a}[data-theme="dark"] .metric.negative{background:#4a2222;border-color:#80504e}[data-theme="dark"] .metric.negative .metric-value{color:#ffc3b9}[data-theme="dark"] .platform-list,[data-theme="dark"] .platform-list div,[data-theme="dark"] .platform-diffs li{border-color:var(--line)}[data-theme="dark"] .platform-list dt,[data-theme="dark"] .platform-columns h3{color:#a9beb6}[data-theme="dark"] .platform-list dd{color:#dce9e5}[data-theme="dark"] .platform-list .total{background:#203f36}[data-theme="dark"] .platform-diffs li.match{border-left-color:#5fc495}[data-theme="dark"] .platform-diffs li.match strong{color:#b1efca}[data-theme="dark"] .platform-diffs li.divergent{background:#443718;color:#f6dc9a;border-color:#a8822c;border-left-color:#e0a83a}
/* Story 009: lista de projetos numa linha, menu ⋯, pendências, ficha por pessoa e cartões no celular. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.projects-table th,.projects-table td,.people-table th,.people-table td.money{white-space:nowrap}.people-table .row-actions{max-width:150px}.people-table th{white-space:nowrap}.projects-table td,.projects-table th{padding:12px 14px}.projects-table .cell-title .project-link{display:inline-block;max-width:250px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.project-link.plain{font-weight:550;max-width:170px;overflow:hidden;text-overflow:ellipsis;display:inline-block;vertical-align:middle}.projects-table td.money{text-align:right}.projects-table th:nth-child(4),.projects-table th:nth-child(5),.projects-table th:nth-child(6){text-align:right}.cell-menu{width:1%;text-align:right}
.situation{display:flex;gap:5px;align-items:center;flex-wrap:nowrap}.seal.waiting{background:#eef1f4;color:#4b5a63;border-color:#b8c3cb}
.menu-button{border:1px solid var(--line);background:transparent;color:inherit;border-radius:7px;width:34px;height:30px;font-size:18px;line-height:1}.menu-button:hover,.menu-button[aria-expanded="true"]{background:#ecf2ee}
.row-menu{position:fixed;left:0;top:0;z-index:60;min-width:210px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 40px #102c3933;padding:6px;display:grid;gap:2px}.row-menu button{border:0;background:none;text-align:left;padding:9px 12px;border-radius:6px;font-size:12px;color:#244940;font-weight:600}.row-menu button:hover,.row-menu button:focus-visible{background:#eef4ef}.row-menu button.danger{color:#a74444}
.pending-list{list-style:none;margin:0;padding:0}.pending-list li{display:flex;align-items:center;gap:12px;border-top:1px solid #edf1ed;padding:14px 24px;font-size:12px}.pending-count{min-width:34px;height:30px;border-radius:8px;background:#fff3dc;color:#9d7424;display:grid;place-items:center;font-weight:700;flex-shrink:0}.pending-list li.clear .pending-count{background:#e4f4eb;color:#287b50}.pending-text{flex:1;font-weight:600;color:#244940}.pending-text small{display:block;color:#8a978d;font-size:10px;font-weight:400;margin-top:2px}
.person-count{font-weight:500;color:var(--muted)}.person-note+.person-note{margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}.person-note .info-description{margin-top:6px}
[data-theme="dark"] .seal.waiting{background:#2a3a42;color:#cfdce3;border-color:#5a7380}[data-theme="dark"] .menu-button:hover,[data-theme="dark"] .menu-button[aria-expanded="true"]{background:#22393e}[data-theme="dark"] .row-menu{background:#192a31;border-color:var(--line)}[data-theme="dark"] .row-menu button{color:#dce9e5}[data-theme="dark"] .row-menu button:hover,[data-theme="dark"] .row-menu button:focus-visible{background:#22393e}[data-theme="dark"] .row-menu button.danger{color:#ffc3b9}[data-theme="dark"] .pending-list li{border-color:var(--line)}[data-theme="dark"] .pending-count{background:#443922;color:#f0d698}[data-theme="dark"] .pending-list li.clear .pending-count{background:#234f3a;color:#b1efca}[data-theme="dark"] .pending-text{color:#dce9e5}[data-theme="dark"] .pending-text small{color:#a9beb6}[data-theme="dark"] .project-link.plain{color:#dce9e5}
@media(max-width:900px){.rows-table,.rows-table tbody{display:block}.rows-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.rows-table tr{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;padding:14px 16px;border-top:1px solid #edf1ed;position:relative}.rows-table td{display:block;border:0;padding:0;white-space:normal!important;min-width:0}.rows-table td::before{content:attr(data-label);display:block;font-size:9px;letter-spacing:.5px;text-transform:uppercase;color:#81928c;margin-bottom:2px}.rows-table td.cell-title,.rows-table td[data-label="Situação"],.rows-table td[data-label="Ações"],.rows-table td[data-label="Pessoa"]{grid-column:1/-1}.rows-table td.cell-title{padding-right:44px}.rows-table td.cell-title::before,.rows-table td.cell-menu::before{display:none}.rows-table td.cell-menu{position:absolute;top:10px;right:10px;width:auto}.projects-table td.money{text-align:left}.projects-table .cell-title .project-link{max-width:100%;white-space:normal}.situation{flex-wrap:wrap}.pending-list li{padding:14px 17px;flex-wrap:wrap}[data-theme="dark"] .rows-table tr{border-color:var(--line)}}
.rows-table th{position:relative}.projects-table td,.projects-table th{padding:12px 10px}.projects-table .cell-title .project-link{max-width:210px}.project-link.plain{max-width:130px}.projects-table .situation{flex-wrap:wrap;max-width:220px;gap:4px}.projects-table td[data-label="Situação"]{white-space:normal}
.projects-table td,.projects-table th{padding:12px 8px}.projects-table td:first-child,.projects-table th:first-child{padding-left:16px}.projects-table .cell-title .project-link{max-width:180px}.project-link.plain{max-width:115px}
@media(max-width:760px){.project-filters .field{flex:1 1 calc(50% - 5px);min-width:0}.project-filters .field select{padding:10px 8px;font-size:12px}}
/* Story 010: dados cadastrais da pessoa, selo "do contrato — conferir" e conta bancária mascarada. */
.cadastral-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 32px;margin:0}.cadastral-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.cadastral-item dt{grid-column:1;font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--muted)}.cadastral-item dd{grid-column:1;margin:0;font-size:13px;overflow-wrap:anywhere}.cadastral-item .button{grid-column:2;grid-row:1 / span 2}
.seal.contract{background:#fff3d6;color:#7a4b00;border-color:#e0b55a;white-space:normal}.seal.checked{background:#e3f6ea;color:#1d6b3c;border-color:#8fd0a8}.check-line{display:flex;gap:8px;align-items:center;font-size:13px;margin-top:14px}.check-line .checkbox{width:auto}[data-cnpj-only]{display:contents}
[data-theme="dark"] .seal.contract{background:#4a3a12;color:#ffd978;border-color:#a8822c}[data-theme="dark"] .seal.checked{background:#1f4a33;color:#b1efca;border-color:#4d9a6e}
@media(max-width:760px){.cadastral-grid{grid-template-columns:minmax(0,1fr)}}
/* Story 012: página pública de aceite LGPD (aceite.html) e bloco "Aceite LGPD" da ficha. Mobile-first. */
.aceite-page{max-width:780px;margin:0 auto;padding:24px 16px 110px}.aceite-brand{display:flex;align-items:center;gap:12px;margin-bottom:20px;font-weight:700;font-size:17px;color:var(--navy)}.aceite-brand img{width:44px;height:auto;flex-shrink:0}
.aceite-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px 18px;margin-bottom:16px;color:#243e48}.aceite-card h1{font-size:26px;line-height:1.2;margin-bottom:12px}.aceite-card h1:focus{outline:none}.aceite-title{font-size:20px;line-height:1.3;margin-bottom:6px}.aceite-lead{font-size:16px;margin-bottom:8px}.aceite-meta{font-size:13px;color:#4b6068;line-height:1.55;margin-bottom:6px}.aceite-card .eyebrow{margin-bottom:8px}
.aceite-notice p,.aceite-notice li{font-size:15px;line-height:1.65}.aceite-notice ul{padding-left:20px;margin:0 0 12px}.aceite-notice li{margin-bottom:6px}.aceite-notice p{margin-bottom:10px}.aceite-section h3{font-size:17px;margin:24px 0 8px;color:var(--navy);padding-top:16px;border-top:1px solid var(--line)}
.aceite-check{display:flex;gap:12px;align-items:flex-start;padding:14px;border:2px solid #9db7aa;border-radius:10px;font-size:16px;line-height:1.5;font-weight:600;cursor:pointer;color:#1d3a30}.aceite-checkbox{width:24px;height:24px;flex-shrink:0;margin:0;accent-color:#245849}.aceite-check:has(:checked){border-color:#245849;background:#eaf6ef}.aceite-submit{width:100%;margin-top:14px;padding:15px 18px;font-size:16px}.aceite-submit:disabled{cursor:not-allowed}
.aceite-state.is-ok{border-left:6px solid #2e8b62}.aceite-state.is-warn{border-left:6px solid #c58a1f}.aceite-state.is-error{border-left:6px solid #b8463d}.aceite-details summary{cursor:pointer;font-weight:650;font-size:15px}.aceite-details[open] summary{margin-bottom:12px}
[data-theme="dark"] .aceite-card{background:#192a31;color:#dce9e5;border-color:var(--line)}[data-theme="dark"] .aceite-brand,[data-theme="dark"] .aceite-section h3{color:#dce9e5}[data-theme="dark"] .aceite-meta{color:#b3c6bf}[data-theme="dark"] .aceite-check{color:#e2eeea;border-color:#6e8c83}[data-theme="dark"] .aceite-check:has(:checked){background:#203f36;border-color:#88d8b6}[data-theme="dark"] .aceite-checkbox{accent-color:#88d8b6}[data-theme="dark"] .aceite-state.is-ok{border-left-color:#5fcf9c}[data-theme="dark"] .aceite-state.is-warn{border-left-color:#e0b04a}[data-theme="dark"] .aceite-state.is-error{border-left-color:#e07a70}
@media(min-width:700px){.aceite-page{padding-top:40px}.aceite-card{padding:28px 30px}.aceite-submit{width:auto;min-width:220px}}
.consent-block .consent-status{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}.consent-block .consent-fresh{border:1px solid var(--line);border-radius:8px;padding:12px 14px;margin:12px 0;background:#fffaf0;overflow-wrap:anywhere;font-size:12px;line-height:1.6}.consent-fresh textarea,.consent-fresh input{width:100%;font-size:12px;margin-top:6px;border:1px solid #dce6dd;border-radius:6px;padding:8px;background:#fcfdfb;color:#294637}.consent-fresh textarea{min-height:92px;resize:vertical}.consent-batch-table td{overflow-wrap:anywhere;font-size:12px;vertical-align:top}.consent-batch-table .consent-link{max-width:260px;word-break:break-all}
[data-theme="dark"] .consent-block .consent-fresh{background:#2b2c22;border-color:#72603b;color:#f0d698}[data-theme="dark"] .consent-fresh textarea,[data-theme="dark"] .consent-fresh input{background:#122229;color:#e0ebe7;border-color:var(--line)}
/* Story 013: 2º fator, assistente em tela cheia, Minha conta. */
.gate-page{background:var(--navy-soft,#eef3ef)}.gate-card{width:100%;max-width:520px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px 26px;color:#243e48;box-shadow:0 10px 40px #102c3914}.gate-brand{display:flex;align-items:center;gap:11px;font-weight:700;font-size:19px;color:var(--navy);margin-bottom:18px}.gate-title{font-size:24px;line-height:1.25;margin:6px 0 8px}.gate-title:focus{outline:none}.gate-lead{font-size:14px;line-height:1.6;color:#4b6068;margin:0 0 20px}.gate-small{font-size:12px;line-height:1.6;color:#5d7077;margin:14px 0 8px}
.gate-links{display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:space-between;margin-top:18px}.link-button{background:none;border:0;padding:6px 0;color:#245849;font-size:12px;font-weight:650;text-decoration:underline;text-underline-offset:3px}.gate-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0}.gate-actions.end{justify-content:flex-end}.gate-actions .button{width:auto;margin-top:0}
.code-input{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:22px!important;letter-spacing:5px;text-align:center}
.wiz-steps{list-style:none;display:flex;gap:6px;padding:0;margin:0 0 20px;font-size:11px;font-weight:650;color:#72848b}.wiz-steps li{flex:1;display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center;padding-top:4px;border-top:3px solid var(--line)}.wiz-steps li span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#ecf2ee;color:#5c7569;font-size:11px}.wiz-steps li.current{border-top-color:#245849;color:#245849}.wiz-steps li.current span{background:#245849;color:#fff}.wiz-steps li.done{border-top-color:#8fc4ad;color:#4a7b69}.wiz-steps li.done span{background:#cfe9dc;color:#245849}
.wiz-list{font-size:14px;line-height:1.7;padding-left:20px;margin:0 0 18px}.wiz-list li{margin-bottom:8px}
.qr-box{display:flex;justify-content:center;margin:4px 0}.qr-box svg{width:min(260px,100%);height:auto;border:1px solid var(--line);border-radius:10px}
.manual-key{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:17px;letter-spacing:2px;word-break:break-word;text-align:center;background:#f1f6f0;border:1px dashed #9db7aa;border-radius:8px;padding:12px;color:#1d3a30;user-select:all}
.recovery-grid{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0;margin:0 0 4px}.recovery-grid li{background:#f1f6f0;border:1px solid var(--line);border-radius:8px;padding:10px;text-align:center}.recovery-grid code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:15px;letter-spacing:1.5px;color:#1d3a30}.recovery-box{margin-bottom:14px}
.account-block{padding:20px 24px}.account-line{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:10px}.account-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.account-actions .button{width:auto;margin-top:0}.warn-text{color:#9a5a00}.fresh-codes{border-color:#e0b55a}.fresh-codes .panel-body{padding:16px 24px 20px}
[data-theme="dark"] .gate-page{background:#101c22}[data-theme="dark"] .gate-card{background:#192a31;color:#dce9e5;border-color:var(--line);box-shadow:none}[data-theme="dark"] .gate-brand{color:#dce9e5}[data-theme="dark"] .gate-lead,[data-theme="dark"] .gate-small,[data-theme="dark"] .wiz-steps{color:#b3c6bf}[data-theme="dark"] .link-button{color:#9ce3c3}
[data-theme="dark"] .wiz-steps li span{background:#22393e;color:#c6eddf}[data-theme="dark"] .wiz-steps li.current{border-top-color:#88d8b6;color:#9ce3c3}[data-theme="dark"] .wiz-steps li.current span{background:#306c57;color:#fff}[data-theme="dark"] .wiz-steps li.done{border-top-color:#4d9a6e;color:#8fd7b2}[data-theme="dark"] .wiz-steps li.done span{background:#1f4a33;color:#b1efca}
[data-theme="dark"] .manual-key,[data-theme="dark"] .recovery-grid li{background:#122229;color:#e0ebe7;border-color:#48625f}[data-theme="dark"] .recovery-grid code{color:#e0ebe7}[data-theme="dark"] .warn-text{color:#f0d698}[data-theme="dark"] .fresh-codes{border-color:#72603b}[data-theme="dark"] .qr-box svg{border-color:#48625f}
@media(max-width:560px){.gate-card{padding:22px 18px}.gate-title{font-size:21px}.recovery-grid{grid-template-columns:1fr 1fr}.wiz-steps{font-size:10px}.code-input{font-size:20px!important;letter-spacing:3px}.account-block{padding:16px}}

.sidebar{overflow-y:auto;scrollbar-width:thin}.top-actions{display:flex;gap:8px;margin-left:auto;align-items:center}.top-action{padding:8px 12px;margin-top:0;width:auto;white-space:nowrap}@media(max-height:760px){.sidebar{padding:18px 16px}.sidebar .account{padding-top:10px}.sidebar .brand{margin-bottom:12px}.navigation button{padding-top:9px;padding-bottom:9px}}@media(max-width:560px){.top-action[data-page]{display:none}}
.bp-compare{margin:0 0 18px}.bp-compare h3{font-size:12px;letter-spacing:.6px;text-transform:uppercase;color:var(--muted);margin:0 0 6px}.bp-summary{margin:0 0 10px;font-weight:650;font-size:13px}.bp-exceed{margin:0 0 12px}.bp-filter{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}.bp-none{padding:12px 4px}.bp-none[hidden]{display:none}.bp-rows td.money{white-space:nowrap}.bp-rows .badge.urgent{background:#fdecea;color:#a8231f}.bp-compare[data-filter="diverge"] tbody tr:not(.bp-diverge),.bp-compare[data-filter="so_no_bp"] tbody tr:not(.bp-so_no_bp),.bp-compare[data-filter="so_no_crm"] tbody tr:not(.bp-so_no_crm){display:none}.bp-header{margin:0 0 16px;border:1px solid var(--line);border-radius:9px;padding:10px 14px}.bp-header summary{cursor:pointer;font-weight:650;font-size:13px}.bp-header[open] summary{margin-bottom:12px}.bp-dash{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}
[data-theme="dark"] .bp-rows .badge.urgent{background:#4a2222;color:#ffc9c3}[data-theme="dark"] .bp-header{border-color:var(--line)}

/* Story 015: cessão de direitos, produtos e contratos na ficha da pessoa. */
.cards.two{grid-template-columns:repeat(2,minmax(0,1fr))}.cessao-box{display:grid;gap:12px}.cessao-head{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.cessao-head .seal{font-size:13px;padding:6px 12px;letter-spacing:.3px}
.cessao-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px 24px;margin:0}.cessao-grid dt{font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--muted)}.cessao-grid dd{margin:2px 0 0;font-size:13px}
.prod-header{margin:26px 0 12px}.prod-header h2{font-size:20px;margin:0}.prod-sub{font-size:13px;margin:18px 0 6px}
.prod-table td{vertical-align:top}.prod-table .seal{white-space:normal}.prod-table .row-actions{flex-wrap:wrap}.prod-off{opacity:.75}.falta-list{margin:0;padding-left:16px;font-size:12px;line-height:1.5}.falta-list li{margin-bottom:2px}
.prod-history{padding:0}.prod-history summary{cursor:pointer;padding:16px 22px;font-weight:700;font-size:14px}.prod-history[open] summary{border-bottom:1px solid var(--line)}
.seal.waiting{white-space:nowrap}
@media(max-width:900px){.prod-table td[data-label="Produto"],.prod-table td[data-label="O que falta"],.prod-table td[data-label="Ações"]{grid-column:1/-1}.prod-table td.cell-title{padding-right:0}}
@media(max-width:560px){.cards.two .metric{padding:14px 12px}}
[data-theme="dark"] .prod-history summary{color:#dce9e5}[data-theme="dark"] .cessao-grid dt{color:#a2b7b1}[data-theme="dark"] .cessao-grid dd{color:#dce9e5}[data-theme="dark"] .falta-list{color:#dce9e5}[data-theme="dark"] .prod-sub{color:#dce9e5}
.cessao-box .button{justify-self:start;width:auto}.prod-table .table-secondary{white-space:normal}.prod-table td[data-label="Contrato"] .table-secondary{white-space:nowrap;margin-left:4px}.prod-table td[data-label="Contrato"] .seal{margin-top:3px}
