/* =========================================================
   base.css — tokens de design (tema claro/escuro), reset e corpo
   ========================================================= */
:root{
  --bg:#e9f0f4;--surf:#fff;--card:#fff;--bd:#dde6ec;--tx:#0f2230;--mut:#5f7384;
  --soft:#e3f7ec;--in:#f5f8fa;--trk:#e2e8f0;
  --pri:#16a34a;--pri2:#15803d;--navy:#02263a;--side:#031f2e;
  --rod:#4ade80;--par:#ef4444;--man:#8b5cf6;--des:#facc15;
  --sh:0 8px 30px rgba(3,31,46,.07);
  --panel:var(--surf);--line:var(--bd);--txt:var(--tx);
  color-scheme:light;
}
:root[data-theme="dark"]{
  --bg:#06121b;--surf:#0d1c28;--card:#0d1c28;--bd:#1b2e3d;--tx:#e8f0f6;--mut:#8aa1b3;
  --soft:#0f3a2a;--in:#0a1824;--trk:#233646;--pri:#22c55e;--pri2:#4ade80;--navy:#02263a;--side:#031a26;
  --sh:0 8px 30px rgba(0,0,0,.4);
  color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;min-width:320px;min-height:100vh;background:var(--bg);color:var(--tx);font-family:'DM Sans',system-ui,Arial,sans-serif;font-size:14px;text-rendering:optimizeLegibility}
button,select,input{font:inherit;color:inherit}
button,select{cursor:pointer}
a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid var(--pri);outline-offset:2px}
.i{width:19px;height:19px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Login e auditoria */
[hidden]{display:none !important}
.login{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,var(--bg),var(--panel));}
.login-card{width:min(430px,100%);background:var(--panel);border:1px solid var(--line);border-radius:24px;padding:34px;box-shadow:0 24px 70px rgba(0,0,0,.12)}
.login-card>img{height:42px;max-width:180px;object-fit:contain;margin-bottom:28px}
.login-card h1{margin:6px 0 8px}.login-sub{color:var(--mut);margin:0 0 24px}.login-card form>div{margin:14px 0}.login-card label{display:block;margin-bottom:6px;font-weight:600}.login-card input{width:100%;box-sizing:border-box;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--txt)}
.login-card form .btn{width:100%;margin-top:8px;justify-content:center}.login-msg{min-height:22px;color:var(--mut);font-size:13px}.login-link{border:0;background:none;color:var(--pri);cursor:pointer;font-weight:600;padding:8px 0}
.history-dialog{width:min(760px,calc(100% - 32px));max-height:80vh;border:0;border-radius:20px;padding:0;background:var(--panel);color:var(--txt);box-shadow:0 30px 90px rgba(0,0,0,.25)}
.history-dialog::backdrop{background:rgba(0,0,0,.45)}.history-head{display:flex;justify-content:space-between;align-items:flex-start;padding:22px;border-bottom:1px solid var(--line)}.history-head h2{margin:0}.history-head p{margin:5px 0 0;color:var(--mut)}.history-list{padding:8px 22px 22px}.history-item{display:flex;justify-content:space-between;gap:18px;padding:15px 0;border-bottom:1px solid var(--line)}.history-item small{display:block;color:var(--mut);margin-top:4px}.history-item>span{font-weight:600}.history-dialog .ibtn{border:0;background:none;font-size:24px;cursor:pointer;color:var(--txt)}
/* Login claro com foto da usina, logo grande e banner */
.login{position:relative;background:#dbeafe url("../assets/fundo-login.jpg") center/cover no-repeat}
.login::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.35))}
.login-wrap{position:relative;z-index:1;width:min(460px,100%);display:flex;flex-direction:column;gap:16px;align-items:stretch}
.login-card{width:100%;box-sizing:border-box;background:rgba(255,255,255,.94);backdrop-filter:blur(6px)}
.login-card>img{height:auto;width:240px;max-width:70%;display:block;margin:0 auto 24px}
.login-card .eyebrow,.login-card h1{text-align:center}
.login-card h1{margin-bottom:22px}
.login-banner{width:100%;display:block;border-radius:16px;box-shadow:0 14px 40px rgba(0,0,0,.22)}
