:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#203740;background:#f4f7f8;font-synthesis:none;--ink:#102c36;--muted:#677c85;--line:#e1e9ed;--green:#087f68;--nav:#102c36}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer}a{color:var(--green)}button,.button{min-height:44px;border:1px solid var(--line);border-radius:9px;padding:10px 15px;background:white;color:var(--ink);font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}button:hover,.button:hover{background:#edf6f2}button.primary{background:var(--green);color:white;border-color:var(--green)}button:disabled{opacity:.6;cursor:wait}input,select{min-height:44px;max-width:100%;width:100%;border:1px solid #cbd9de;background:#fff;color:var(--ink);border-radius:8px;padding:10px 12px}label{font-size:13px;font-weight:600;display:grid;gap:7px}small,.muted{color:var(--muted)}h1,h2,h3,p{margin-top:0}h1{font-size:30px;letter-spacing:-1px;margin-bottom:8px}h2{font-size:18px;letter-spacing:-.35px}h3{font-size:15px}p{line-height:1.6}svg{max-width:100%}.login{display:grid;grid-template-columns:1.1fr 1fr;min-height:100vh}.login-story{background:var(--ink);padding:10vh 9%;color:white;display:flex;flex-direction:column;justify-content:space-between;gap:60px}.brand{display:flex;align-items:center;gap:11px;font-size:19px;font-weight:700;letter-spacing:-.4px}.brand img{width:36px;height:36px}.brand span em{font-style:normal;font-weight:400;color:#abd5cd}.login-story h1{font-size:clamp(38px,4vw,62px);max-width:570px;letter-spacing:-2px;line-height:1.12}.login-story p{color:#bad2d7;max-width:430px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.7px;text-transform:uppercase;color:var(--green);margin-bottom:14px}.login-story .eyebrow{color:#75dfbd}.login-form{display:flex;align-items:center;justify-content:center;padding:50px 8%}.login-form form{width:100%;max-width:360px}.login-form h2{font-size:29px}.login-form label{margin:20px 0}.login-form button{width:100%;margin-top:8px}.login-footer{font-size:12px;margin-top:25px}.signal{display:flex;gap:12px;align-items:flex-end;height:90px}.signal i{display:block;width:28px;border-radius:5px 5px 0 0;background:#3d8b7e;height:35%}.signal i:nth-child(2){height:55%}.signal i:nth-child(3){height:44%}.signal i:nth-child(4){height:75%}.signal i:nth-child(5){height:95%;background:#75dfbd}.shell{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--nav);color:white;display:flex;flex-direction:column;padding:28px 18px;position:sticky;top:0;height:100vh}.sidebar .brand{padding:0 9px 30px}.nav-label{font-size:10px;letter-spacing:1.4px;color:#8caab4;padding:12px;margin-top:10px;text-transform:uppercase}.sidebar nav{display:grid;gap:5px}.sidebar nav button{justify-content:flex-start;background:none;border:0;color:#bfd0d7;font-size:13px;font-weight:500}.sidebar nav button.active{background:#23464e;color:#88e8c9}.sidebar nav button:hover{background:#1e3d46}.nav-icon{font-size:18px;width:23px;text-align:center}.side-bottom{margin-top:auto;padding:25px 10px 0;border-top:1px solid #31505b;font-size:12px;line-height:1.8;color:#a8c0c8}.side-bottom strong{display:block;color:#fff}.side-bottom button{background:transparent;border:0;color:#b5d0d7;padding:8px 0}.workspace{min-width:0}.topbar{background:#fff;border-bottom:1px solid var(--line);min-height:82px;padding:18px 34px;display:flex;align-items:center;justify-content:space-between;gap:18px}.company-picker{display:flex;align-items:center;gap:12px;min-width:0}.company-picker label{color:var(--muted);font-size:11px}.company-picker select{border:0;padding:0;min-height:28px;font-weight:650;background:none;max-width:300px}.avatar{width:38px;height:38px;border-radius:10px;background:#e9f4f0;color:var(--green);display:grid;place-items:center;font-size:14px;font-weight:700;flex-shrink:0}.top-user{display:flex;align-items:center;gap:10px;font-size:12px}.top-user strong{display:block}.content{padding:32px 34px 28px;max-width:1600px;margin:auto}.heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}.heading p{color:var(--muted);font-size:13px;margin:0}.filters{display:flex;gap:9px;align-items:flex-end;flex-wrap:wrap;background:#fff;border:1px solid var(--line);padding:14px 18px;border-radius:12px;margin-bottom:22px}.filters label{font-size:11px;flex:1;min-width:130px}.filters label:first-child{flex:1.3}.filters .range-note{font-size:11px;width:100%;color:var(--muted)}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:22px}.kpi{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;min-width:0;border-top:3px solid #42ab91}.kpi.orange{border-top-color:#efb04d}.kpi.blue{border-top-color:#679be6}.kpi.purple{border-top-color:#a38bd6}.kpi-label{font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:8px}.kpi-value{font-size:clamp(23px,2.3vw,34px);letter-spacing:-1px;font-weight:680;margin:12px 0 10px;overflow-wrap:anywhere}.kpi small{font-size:11px}.delta{font-size:11px;margin-right:7px;color:#426972}.grid-2{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:20px;margin-bottom:20px}.grid-equal{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px;min-width:0;margin-bottom:20px}.grid-2>.panel{margin-bottom:0}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:12px}.panel-head h2{margin-bottom:5px}.panel-head p{font-size:12px;color:var(--muted);margin-bottom:0}.badge{border-radius:6px;background:#eef6f2;color:var(--green);font-size:10px;font-weight:650;padding:6px 8px;white-space:nowrap}.badge.warn{color:#92601a;background:#fff4df}.badge.gray{background:#edf1f4;color:#697b86}.chart{width:100%;height:230px;display:block}.chart text{font-size:11px;fill:#778b93}.chart line{stroke:#e9eef0}.chart polyline{fill:none;stroke:#139b82;stroke-width:2.6;stroke-linejoin:round;stroke-linecap:round}.chart .area{fill:#e9f6f1;stroke:none}.empty{padding:38px 15px;text-align:center;color:var(--muted);font-size:13px;line-height:1.7}.note{background:#edf5f6;color:#45616d;border-radius:9px;padding:12px 16px;font-size:12px;line-height:1.65;margin-bottom:20px}.note.warning{background:#fff5e4;color:#896323}.table-wrap{max-width:100%;overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;color:var(--muted);font-weight:500;font-size:11px;background:#f8fafb;padding:12px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:14px 12px;border-bottom:1px solid #eef2f4;max-width:360px;overflow-wrap:anywhere}tr:last-child td{border:0}td:not(:first-child){white-space:nowrap}tbody tr:hover{background:#f9fbfc}.channel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:18px;font-size:12px}.channel progress{grid-column:1/-1;height:6px;width:100%;border:0;border-radius:4px;overflow:hidden;accent-color:#2caa91}.channel progress::-webkit-progress-bar{background:#edf3f5}.channel progress::-webkit-progress-value{background:#2caa91}.source-row{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid var(--line);font-size:12px}.source-row:last-child{border:0}.source-row .source-name{flex:1}.source-row strong{display:block;margin-bottom:4px}.source-dot{height:10px;width:10px;border-radius:50%;background:#47b795;flex-shrink:0}.source-dot.off{background:#daa64d}.footer{font-size:11px;color:var(--muted);display:flex;justify-content:space-between;gap:15px;padding-top:6px;line-height:1.7}.admin-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-form .wide{grid-column:1/-1}.admin-form .check{display:flex;align-items:center;gap:8px}.check input{width:18px;min-height:18px}.stack{display:grid;gap:15px}.admin-actions{display:flex;gap:8px;flex-wrap:wrap}.error{color:#a73333;font-size:13px;line-height:1.6}.mobile-menu{display:none}.loading{padding:50px;text-align:center;color:var(--muted)}#notice:not(:empty){position:fixed;bottom:24px;right:24px;max-width:calc(100vw - 48px);background:#173c45;color:white;border-radius:10px;padding:15px 20px;box-shadow:0 5px 30px #1233;z-index:10}.future-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.future-grid h2{margin-top:15px}.future-icon{font-size:25px;color:#76959f}.text-button{padding:4px 10px;font-size:12px}.company-card{display:flex;align-items:center;gap:15px}.company-card .info{flex:1;min-width:0}.company-card h2{margin:0 0 6px}.company-card p{margin:0;font-size:12px;color:var(--muted)}
@media(min-width:1600px){.content{padding-top:40px}.chart{height:260px}}@media(max-width:1100px){.shell{grid-template-columns:195px minmax(0,1fr)}.content{padding:25px 22px}.topbar{padding:18px 22px}.sidebar{padding:25px 12px}.kpis{gap:10px}.kpi{padding:16px}.grid-2{grid-template-columns:minmax(0,1fr)}.grid-equal{grid-template-columns:repeat(2,minmax(0,1fr))}.future-grid{grid-template-columns:1fr}.brand{font-size:17px}}@media(max-width:760px){.shell{display:block}.sidebar{position:relative;height:auto;padding:13px 16px}.sidebar .brand{padding:0}.sidebar nav,.sidebar .nav-label,.sidebar .side-bottom{display:none}.sidebar.open nav{display:grid;grid-template-columns:1fr 1fr;margin-top:15px}.sidebar.open .nav-label{display:block}.sidebar.open .side-bottom{display:block;margin-top:15px}.mobile-menu{display:block;position:absolute;right:16px;top:12px;padding:7px 12px;min-height:36px;background:#23464e;border:0;color:#d4f3e8}.topbar{padding:14px 18px;min-height:73px}.top-user span{display:none}.content{padding:24px 16px}.heading{gap:10px}.heading h1{font-size:25px}.heading .button{font-size:12px;padding:9px 10px}.kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kpi{padding:15px 13px}.kpi-value{font-size:27px}.grid-equal{grid-template-columns:1fr}.panel{padding:18px 14px}.filters{padding:13px;gap:10px}.filters label{min-width:110px}.filters label:first-child{flex-basis:100%}.filters button{flex:1}.footer{display:block}.login{grid-template-columns:1fr}.login-story{padding:32px 26px;gap:28px}.login-story h1{font-size:34px;letter-spacing:-1px;margin-bottom:12px}.login-story p,.signal,.login-story>small{display:none}.login-form{padding:36px 25px}.admin-form{grid-template-columns:1fr}.admin-form .wide{grid-column:auto}.company-picker select{max-width:210px}.chart{height:205px}.company-card{flex-wrap:wrap}.source-row .badge{white-space:normal;text-align:center}.panel-head{flex-wrap:wrap}}@media(max-width:360px){.kpi-value{font-size:23px}.company-picker select{max-width:175px}.heading{flex-wrap:wrap}.top-user{display:none}}
/* Conteúdo longo e controles móveis permanecem dentro da área disponível. */
.heading>div,.company-picker label,.source-name{min-width:0}h1,h2,p,.side-bottom,.source-name{overflow-wrap:anywhere}
@media(max-width:760px){input,select{font-size:16px}.mobile-menu{min-height:44px;top:8px}.sidebar{min-height:60px}}
@media(max-width:760px){.filters label:not(:first-child){min-width:0;flex:1 1 110px}.filters input[type=date]{min-width:0;width:100%;font-size:14px;padding-inline:7px}}

.realtime-metrics{display:flex;flex-wrap:wrap;gap:24px 60px;margin:20px 0}.realtime-metrics>div{display:grid;gap:5px;min-width:0}.realtime-metrics strong{color:var(--green);font-size:32px;line-height:1.2}.realtime-metrics span{font-size:12px;color:var(--muted)}
