/* InfinityDoor — preto, dourado e prata da logo fornecida. */
:root{--pri:#8A671D;--pri2:#6B4D12;--acc:#CBA64B;--bg:#F4F4F3;--tx:#202020;--mut:#666666;--ln:#DDDDDA;--accbg:#F5EBCF;--r:16px}
body{background:var(--bg)}
.login{grid-template-columns:1.05fr 1fr}
.login-side{background:radial-gradient(ellipse at 0 100%,#33270B,transparent 65%),#050505;padding:64px}
.login-side:before{width:260px;height:490px;border-radius:140px 140px 0 0;right:-80px;top:15%;border:1px solid #CBA64B44;transform:rotate(0)}
.login-side:after{width:260px;height:490px;border-radius:140px 140px 0 0;right:-30px;bottom:-100px;border:1px solid #CBA64B44}
.login-side h1{font-size:clamp(34px,4vw,58px);letter-spacing:-2px;line-height:1.12}
.login-side p{color:#D5D5D5;font-size:16px;line-height:1.8}.feat{gap:18px;margin-top:36px}.feat b{color:#E8CC80;background:#ffffff12}
.login-form{background:#F7F7F5;padding:48px}.lf{max-width:400px}.lf h2{font-size:25px;letter-spacing:-.8px}.lf .sub{margin:12px 0 32px;line-height:1.6}
.lf input{padding:14px}.lf .btn.full{margin-top:14px;padding:15px}.lf .f{margin-bottom:20px}
.side{background:#0B0B0B;color:#D5D5D5;padding:30px 16px 20px}.side .brand{margin-bottom:32px}.nav{padding:12px;margin-bottom:3px}.nav.on{background:#E4C76F;color:#171717}.nav:hover{background:#ffffff15}.nav.on:hover{background:#D4B453}.side .who{background:#ffffff08;border:1px solid #ffffff12}
.main{padding:34px 32px 60px}.top{margin-bottom:26px}.top h1{font-size:27px;letter-spacing:-1px}.top p{line-height:1.6}.card,.kpi,.tw{box-shadow:0 3px 15px #00000004}.card{padding:22px}.kpi{padding:22px 18px}.kpi:before{top:20px;bottom:20px;width:3px;border-radius:3px}.kpi strong{font-size:24px;margin-top:12px;font-variant-numeric:tabular-nums}th{background:#F4F4F2;padding:14px 12px}td{padding:14px 12px}tbody tr:hover{background:#FBF8EF}.chip.on,.perfil.on,.tot{background:#F5EBCF}.btn{transition:background .15s,box-shadow .15s}.btn:focus-visible,.nav:focus-visible,a:focus-visible{outline:3px solid #CBA64B;outline-offset:3px}.f input:focus,.f select:focus,.f textarea:focus{box-shadow:0 0 0 3px #8A671D18}.mode{background:#F5EBCF;color:#73581D}.num{font-variant-numeric:tabular-nums}
#connection-status{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);z-index:100;background:#fff4d6;color:#6d4e12;padding:12px 18px;border:1px solid #e3ca8f;border-radius:12px;box-shadow:0 5px 25px #0002;max-width:90vw;font-size:13px}
@media(max-width:860px){.login{grid-template-columns:1fr}.login-side{padding:32px}.login-side .feat{display:none}.login-side h1{font-size:34px;margin-top:36px}.login-form{padding:32px 24px}.side{padding:10px;position:sticky;z-index:20;height:auto}.main{padding:24px 16px}.nav{margin:0}.card{padding:16px}}
@media(max-width:520px){.kpi{padding:16px 12px}.kpi strong{font-size:20px}.top h1{font-size:24px}.login-side p{font-size:14px}}
@media print{.side,#connection-status{display:none!important}.app{display:block}.main{padding:0}.card,.kpi{box-shadow:none}}

/* A imagem original é exibida integralmente, com sua proporção 3:1. */
.login-side img{width:min(100%,420px)!important;height:auto;display:block;background:#000;border-radius:10px;padding:8px}
.lf>img{width:100%!important;max-width:400px;height:auto;background:#000;padding:16px;border-radius:12px;margin-bottom:30px!important}
.side .brand{margin-left:0;margin-right:0;align-items:center!important;padding-bottom:18px;border-bottom:1px solid #CBA64B33}
.side .brand img{width:100%!important;max-width:204px;height:auto;background:#000;padding:5px;border-radius:6px}
.side .brand>span{color:#D9BC69;letter-spacing:.14em!important}
.nav.on{box-shadow:inset 3px 0 #F2DE9A}
.btn.acc{color:#171717}.note{background:#F5EBCF;color:#73581D}
.sl.azul{background:#090909;color:#fff}.sl.azul h2{color:#E4C76F}
.sl img{object-fit:contain;background:#000;border-radius:4px}
.sl .ft img{width:120px;height:40px;object-fit:contain}
@media(max-width:860px){.login-side img{max-width:330px}.side .brand{display:none}}
