:root{--bg:#eef1f5;--surface:#fff;--surface-2:#f6f8fb;--line:#dde3ec;--line-strong:#c7d0dd;--ink:#161b22;--ink-2:#465065;--ink-3:#7b8798;--accent:#9a6b1f;--accent-soft:#f3e7cf;--accent-ink:#7a5312;--ok:#15803d;--ok-soft:#dcf3e4;--warn:#b45309;--warn-soft:#fbecd3;--crit:#c0392b;--crit-soft:#fadedb;--info:#1d4ed8;--info-soft:#dde6fb;--shadow:0 1px 2px rgba(20,30,50,.06),0 4px 16px rgba(20,30,50,.05);--sans:"Segoe UI Variable","Segoe UI",system-ui,-apple-system,Roboto,sans-serif;--mono:ui-monospace,"Cascadia Code",Consolas,monospace}@media (prefers-color-scheme:dark){:root{--bg:#0d1015;--surface:#161b22;--surface-2:#1c222b;--line:#28303b;--line-strong:#38424f;--ink:#e9edf3;--ink-2:#aeb9c7;--ink-3:#6f7c8c;--accent:#d9ab55;--accent-soft:#3a2f18;--accent-ink:#e6c079;--ok:#3ec27a;--ok-soft:#123021;--warn:#e0973a;--warn-soft:#3a2a12;--crit:#ef6b5c;--crit-soft:#3a1c18;--info:#5b8cf5;--info-soft:#16233f;--shadow:0 1px 2px rgba(0,0,0,.4),0 6px 20px rgba(0,0,0,.35)}}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.45}button{font-family:inherit;cursor:pointer}.num{font-variant-numeric:tabular-nums}.login{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(1200px 600px at 70% -10%,color-mix(in srgb,var(--accent) 14%,transparent),transparent)}.login-card{width:100%;max-width:390px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:30px;box-shadow:var(--shadow)}.login-card .logo{width:48px;height:48px;border-radius:13px;background:linear-gradient(150deg,var(--accent),var(--accent-ink));display:grid;place-items:center;color:#fff;font-weight:800;font-size:18px;margin-bottom:16px}.login-card h1{font-size:20px;font-weight:800;margin:0 0 4px}.login-card p{color:var(--ink-3);font-size:13px;margin:0 0 22px}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:13px}.field label{font-size:11px;font-weight:700;color:var(--ink-3);text-transform:uppercase;letter-spacing:.4px}.field input{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:9px;padding:10px 12px;font-size:14px;color:var(--ink)}.field input:focus{outline:2px solid var(--accent);outline-offset:0}.btn{border:none;border-radius:9px;padding:11px 14px;font-weight:700;font-size:14px;width:100%;transition:.13s}.btn.primary{background:linear-gradient(150deg,var(--accent),var(--accent-ink));color:#fff}.btn.primary:hover{filter:brightness(1.06)}.btn.google{background:var(--surface);border:1px solid var(--line-strong);color:var(--ink);display:flex;align-items:center;justify-content:center;gap:9px}.btn.google:hover{border-color:var(--accent)}.sep{display:flex;align-items:center;gap:10px;color:var(--ink-3);font-size:12px;margin:16px 0}.sep:before,.sep:after{content:"";height:1px;background:var(--line);flex:1}.err{background:var(--crit-soft);color:var(--crit);border-radius:8px;padding:9px 12px;font-size:13px;font-weight:600;margin-bottom:13px}.shell{display:grid;grid-template-columns:230px 1fr;min-height:100vh}.side{background:var(--surface);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:16px 12px}.side .brand{display:flex;flex-direction:column;gap:8px;padding:2px 2px 14px;border-bottom:1px solid var(--line);margin-bottom:12px}.brand-plate{background:#fff;border-radius:10px;padding:10px 12px;display:flex;justify-content:center;align-items:center;box-shadow:0 1px 2px #00000026}.brand-plate img{width:100%;max-width:196px;height:auto;display:block}.brand-sub{font-size:11.5px;font-weight:800;color:var(--ink);text-transform:uppercase;letter-spacing:.7px;text-align:center}.side .brand .logo{width:36px;height:36px;border-radius:10px;background:linear-gradient(150deg,var(--accent),var(--accent-ink));display:grid;place-items:center;color:#fff;font-weight:800}.side .brand b{font-size:14px;font-weight:800}.side .brand span{display:block;font-size:10px;color:var(--ink-3);font-weight:700;text-transform:uppercase;letter-spacing:.4px}.nav{display:flex;flex-direction:column;gap:2px}.nav a,.nav button{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:9px;border:none;background:none;color:var(--ink-2);font-weight:640;font-size:13.5px;text-decoration:none;text-align:left;width:100%}.nav a:hover,.nav button:hover{background:var(--surface-2);color:var(--ink)}.nav .active{background:var(--accent-soft);color:var(--accent-ink)}.side .foot{margin-top:auto;border-top:1px solid var(--line);padding-top:12px;font-size:12px;color:var(--ink-3)}.side .foot b{color:var(--ink);display:block;font-size:13px}.main{min-width:0;display:flex;flex-direction:column}.topbar{height:54px;border-bottom:1px solid var(--line);background:var(--surface);display:flex;align-items:center;gap:12px;padding:0 20px}.topbar .title{font-weight:750}.topbar .sp{margin-left:auto}.chip{padding:4px 10px;border-radius:20px;font-size:11.5px;font-weight:700;background:var(--accent-soft);color:var(--accent-ink)}.content{padding:22px;overflow:auto}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:18px}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:13px 15px;box-shadow:var(--shadow)}.kpi .l{font-size:11px;font-weight:700;color:var(--ink-3);text-transform:uppercase;letter-spacing:.4px}.kpi .v{font-size:23px;font-weight:800;margin-top:4px}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.filters select,.filters input{background:var(--surface);border:1px solid var(--line-strong);border-radius:8px;padding:7px 10px;font-size:13px;color:var(--ink);font-weight:600}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);overflow:hidden}.tbl-scroll{overflow:auto;max-height:60vh}table{border-collapse:collapse;width:100%;font-size:12.5px}thead th{position:sticky;top:0;background:var(--surface-2);text-align:left;padding:9px 11px;font-size:10.5px;font-weight:750;text-transform:uppercase;letter-spacing:.3px;color:var(--ink-2);white-space:nowrap;border-bottom:1px solid var(--line-strong)}thead th.n,tbody td.n{text-align:right;font-variant-numeric:tabular-nums}tbody td{padding:7px 11px;border-bottom:1px solid var(--line);white-space:nowrap}tbody tr:hover{background:var(--surface-2)}.pill{padding:2px 9px;border-radius:20px;font-size:11px;font-weight:700}.pill.Aberto{background:var(--info-soft);color:var(--info)}.pill.Pendente{background:var(--warn-soft);color:var(--warn)}.pill.Recusado{background:var(--crit-soft);color:var(--crit)}.center{min-height:100vh;display:grid;place-items:center;text-align:center;padding:30px}.center .box{max-width:440px}.spinner{width:34px;height:34px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 16px}@keyframes spin{to{transform:rotate(360deg)}}.watermark{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;pointer-events:none;opacity:.06;overflow:hidden}.watermark .row{white-space:nowrap;font-size:13px;font-weight:700;color:var(--ink);transform:rotate(-28deg);letter-spacing:.5px;line-height:3.2}@media (prefers-reduced-motion:reduce){.spinner{animation:none}}.kpi .meter{height:5px;border-radius:3px;background:var(--surface-2);margin-top:8px;overflow:hidden}.kpi .meter>span{display:block;height:100%;border-radius:3px}.kpi .foot{font-size:11.5px;color:var(--ink-2);margin-top:6px;font-weight:600}.alerts{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:16px}.alert{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;font-size:12.5px;font-weight:600;border:1px solid;line-height:1.3}.alert.crit{background:var(--crit-soft);border-color:color-mix(in srgb,var(--crit) 40%,transparent);color:var(--crit)}.alert.warn{background:var(--warn-soft);border-color:color-mix(in srgb,var(--warn) 40%,transparent);color:var(--warn)}.alert.info{background:var(--info-soft);border-color:color-mix(in srgb,var(--info) 40%,transparent);color:var(--info)}.cgrid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px;margin-bottom:16px}.cc{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:15px;box-shadow:var(--shadow);min-width:0}.cc h3{font-size:13.5px;font-weight:750;margin:0 0 3px}.cc .sub{font-size:11px;color:var(--ink-3);font-weight:600;margin-bottom:12px}.col4{grid-column:span 4}.col5{grid-column:span 5}.col6{grid-column:span 6}.col7{grid-column:span 7}.col8{grid-column:span 8}@media (max-width:900px){.cgrid>[class*=col]{grid-column:1/-1}}.hbars{display:flex;flex-direction:column;gap:8px}.hbar .top{display:flex;justify-content:space-between;gap:8px;font-size:12px;margin-bottom:3px}.hbar .nm{font-weight:640;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hbar .vl{font-weight:750;color:var(--ink-2);flex:0 0 auto;font-variant-numeric:tabular-nums}.hbar .trk{height:8px;background:var(--surface-2);border-radius:5px;overflow:hidden}.hbar .trk>span{display:block;height:100%;border-radius:5px;background:var(--accent)}.stack{display:flex;height:32px;border-radius:8px;overflow:hidden;border:1px solid var(--line)}.stack>div{display:flex;align-items:center;justify-content:center;color:#fff;font-size:11.5px;font-weight:750;min-width:2px}.legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:10px;font-size:11.5px;font-weight:600;color:var(--ink-2)}.legend .lg{display:flex;align-items:center;gap:6px}.legend .sw{width:10px;height:10px;border-radius:3px}.donutwrap{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.donut{width:130px;height:130px;flex:0 0 auto}.dleg{display:flex;flex-direction:column;gap:7px;flex:1;min-width:120px}.dl{display:flex;align-items:center;gap:8px;font-size:12.5px}.dl .sw{width:11px;height:11px;border-radius:3px;flex:0 0 auto}.dl .nm{font-weight:640;flex:1}.dl .vl{font-weight:800;font-variant-numeric:tabular-nums}.win{display:flex;flex-direction:column;gap:12px;max-height:360px;overflow-y:auto;padding-right:4px}.win .it .hd{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.win .dt{font-weight:750;font-size:13px}.win .dd{font-size:11px;color:var(--ink-3);font-weight:650}.win .qt{font-weight:800;font-variant-numeric:tabular-nums}.win .bar{height:11px;border-radius:6px;background:var(--surface-2);overflow:hidden;margin-top:5px}.win .bar>span{display:block;height:100%;border-radius:6px;background:var(--info)}.brand-logo{width:38px;height:38px;border-radius:9px;background:#fff;display:grid;place-items:center;overflow:hidden;flex:0 0 auto}.brand-logo img{max-width:82%;max-height:82%;width:auto;height:auto;object-fit:contain;display:block}@media print{.side,.topbar,.filters,button,.kpi .meter{display:none!important}.shell{display:block!important}.content{padding:0!important}body,.main{background:#fff!important}.watermark{display:block!important;opacity:.16!important}.card,.cc,.kpi{break-inside:avoid;box-shadow:none!important}}.drp-btn{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);border-radius:8px;padding:7px 10px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}.drp-btn:hover{border-color:var(--accent)}.drp-pop{position:absolute;top:112%;left:0;z-index:60;background:var(--surface);border:1px solid var(--line-strong);border-radius:12px;box-shadow:var(--shadow);padding:12px;width:256px}.drp-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-weight:750;font-size:13.5px;text-transform:capitalize}.drp-head button{border:none;background:var(--surface-2);color:var(--ink);width:26px;height:26px;border-radius:7px;cursor:pointer;font-size:15px}.drp-head button:hover{background:var(--accent-soft);color:var(--accent-ink)}.drp-dow{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px}.drp-dow span{text-align:center;font-size:10.5px;font-weight:700;color:var(--ink-3)}.drp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.drp-day{border:none;background:none;color:var(--ink);height:30px;border-radius:7px;cursor:pointer;font-size:12.5px;font-weight:600;font-variant-numeric:tabular-nums}.drp-day:hover{background:var(--surface-2)}.drp-day.rng{background:var(--accent-soft);color:var(--accent-ink);border-radius:0}.drp-day.sel{background:var(--accent);color:#fff;border-radius:7px}.drp-hint{font-size:11px;color:var(--ink-3);font-weight:600;text-align:center;margin-top:8px}.drp-foot{display:flex;justify-content:space-between;margin-top:8px}.drp-foot button{border:1px solid var(--line-strong);background:var(--surface-2);color:var(--ink-2);border-radius:7px;padding:5px 10px;font-size:12px;font-weight:600;cursor:pointer}.drp-foot button:hover{color:var(--ink)}
