/* SIGHH — base visual corporativa. Complementa sighh-v2.css. */
:root{
  --bg:#f3f5f8;--surface:#fff;--surface-2:#f8fafc;--text:#17191d;--muted:#667085;
  --line:#e4e7ec;--dark:#17191d;--dark-2:#24272d;--accent:#e32929;--accent-dark:#b71919;
  --success:#0f7b4b;--warning:#a15c00;--danger:#b42318;--radius:18px;--shadow:0 18px 50px rgba(16,24,40,.10);
  --font:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:var(--font);background:var(--bg);color:var(--text)}
body{min-height:100vh;font-size:15px;line-height:1.5}
a{color:inherit} img{max-width:100%}
button,input,select,textarea{font:inherit}

/* base */
.page{width:min(1500px,calc(100% - 40px));margin:0 auto;padding:28px 0 44px}
.desktop-page{width:min(1540px,calc(100% - 48px))}
.page-login{width:100%;margin:0;padding:0;min-height:100vh}
.muted{color:var(--muted)}
.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.11em;font-size:12px;font-weight:800;color:var(--muted)}
.eyebrow.light{color:rgba(255,255,255,.68)}

/* login */
body.mode-login{background:#eef1f5}
.login-premium-shell{min-height:100vh;display:grid;place-items:center;padding:32px;background:radial-gradient(circle at 10% 10%,rgba(227,41,41,.08),transparent 30%),linear-gradient(135deg,#eef1f5,#f8fafc)}
.login-premium-card{width:min(1080px,100%);display:grid;grid-template-columns:1.08fr .92fr;background:#fff;border:1px solid #e6e9ee;border-radius:28px;overflow:hidden;box-shadow:0 28px 80px rgba(16,24,40,.16)}
.login-premium-brand{position:relative;padding:56px;background:linear-gradient(145deg,#191b20 0%,#272a31 60%,#111216 100%);color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:620px;overflow:hidden}
.login-premium-brand::after{content:"";position:absolute;width:320px;height:320px;border-radius:50%;right:-150px;bottom:-130px;background:radial-gradient(circle,rgba(227,41,41,.40),rgba(227,41,41,0) 68%)}
.fe-mark{width:60px;height:60px;border-radius:18px;display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:950;font-size:20px;letter-spacing:.04em;box-shadow:0 12px 30px rgba(227,41,41,.28);margin-bottom:28px}
.login-premium-brand h1{font-size:clamp(36px,4vw,58px);line-height:1.03;letter-spacing:-.045em;margin:0 0 22px;max-width:650px}
.login-copy{margin:0;color:rgba(255,255,255,.74);font-size:17px;line-height:1.7;max-width:620px}
.login-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:38px}
.login-kpis>div{padding:15px 14px;border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.06);border-radius:16px;backdrop-filter:blur(8px)}
.login-kpis strong,.login-kpis span{display:block}.login-kpis strong{font-size:14px}.login-kpis span{margin-top:3px;font-size:12px;color:rgba(255,255,255,.64)}
.login-premium-form{padding:56px;display:flex;flex-direction:column;justify-content:center;background:#fff}
.login-form-heading{margin-bottom:26px}.login-form-heading h2{font-size:34px;letter-spacing:-.035em;margin:10px 0 8px}.login-form-heading p{margin:0;color:var(--muted);line-height:1.6}
.mini-chip{display:inline-flex;align-items:center;border-radius:999px;padding:7px 11px;background:#fff1f1;color:#a31414;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.login-premium-form label{display:grid;gap:8px;margin:0 0 17px;font-size:13px;font-weight:800;color:#353a43}
.login-premium-form input{width:100%;min-height:50px;padding:12px 14px;border:1.5px solid #cfd4dc;border-radius:13px;background:#fff;color:#111827;outline:none;transition:.18s ease}
.login-premium-form input:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(227,41,41,.10)}
.login-main-button{width:100%;margin-top:5px}
.login-security-note{display:grid;gap:3px;margin-top:22px;padding:15px 16px;border:1px solid #e8eaee;background:#f8fafc;border-radius:14px}
.login-security-note strong{font-size:13px}.login-security-note span{font-size:12px;color:var(--muted);line-height:1.5}
.login-devtech-signature{margin-top:20px;color:#98a2b3;font-size:11px;text-align:center;font-weight:700;letter-spacing:.02em}

/* buttons */
.btn{appearance:none;border:0;border-radius:12px;padding:10px 15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-weight:850;cursor:pointer;transition:transform .15s ease,filter .15s ease,background .15s ease;min-height:40px}
.btn:hover{filter:brightness(.97);transform:translateY(-1px)}
.btn.primary{background:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent-dark)}
.btn.ghost{background:#f2f4f7;color:#344054;border:1px solid #e4e7ec}
.btn.small{padding:7px 11px;min-height:34px;font-size:12px;border-radius:10px}.btn.tall{min-height:52px}

/* flash */
.flash-stack{position:fixed;right:22px;top:22px;z-index:10000;display:grid;gap:10px;width:min(420px,calc(100vw - 44px))}
.flash{padding:14px 16px;border-radius:14px;background:#fff;border:1px solid #e4e7ec;box-shadow:0 18px 50px rgba(16,24,40,.16);font-weight:750;transition:.3s ease}
.flash.error,.flash.danger{border-color:#f5b7b1;background:#fff4f3;color:#912018}.flash.success,.flash.ok{border-color:#a6e3c5;background:#f0fff7;color:#05603a}.flash.warning{border-color:#f1c98d;background:#fffaf0;color:#7a4900}.flash-hiding{opacity:0;transform:translateY(-8px)}

/* cabeçalhos / navegação */
.ops-topbar,.admin-top-v3{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 26px;background:#191b20;color:#fff;border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 8px 24px rgba(0,0,0,.12)}
.brand,.admin-brand-v3,.ops-userbox,.admin-user-v3{display:flex;align-items:center;gap:14px}.brand>div:last-child,.admin-brand-v3>div:last-child,.ops-userbox>div,.admin-user-v3>div{display:grid}.brand span,.admin-brand-v3 span,.ops-userbox span,.admin-user-v3 span{font-size:12px;color:rgba(255,255,255,.64)}
.brand-mark{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:950}.brand-mark.xl{width:48px;height:48px;border-radius:14px}
.ops-topbar .btn.ghost,.admin-top-v3 .btn.ghost{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12);color:#fff}
.ops-nav,.admin-nav-v3{display:flex;gap:6px;align-items:center;padding:10px 22px;background:#fff;border-bottom:1px solid var(--line);overflow-x:auto;position:sticky;top:0;z-index:50;box-shadow:0 6px 20px rgba(16,24,40,.04)}
.ops-nav a,.admin-nav-v3 a{white-space:nowrap;padding:10px 13px;border-radius:10px;text-decoration:none;font-weight:800;color:#475467;font-size:13px}.ops-nav a:hover,.admin-nav-v3 a:hover,.admin-nav-v3 a.active{background:#fff0f0;color:#a31414}
.admin-shell-v3{min-height:100vh;background:var(--bg)}
.devtech-footer{text-align:center;color:#98a2b3;font-size:11px;font-weight:700;padding:28px 10px 10px}

/* generic cards / forms */
.page-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:20px}.page-hero h1{font-size:32px;line-height:1.15;margin:0 0 7px;letter-spacing:-.035em}.page-hero p{margin:0;color:var(--muted)}
.panel{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 10px 28px rgba(16,24,40,.06);padding:22px}.panel+.panel{margin-top:16px}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.panel-header h2,.panel-header h3{margin:0}
.content-grid,.form-grid{display:grid;gap:16px}.content-grid.two,.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.single{grid-template-columns:1fr}
label{font-weight:750}input,select,textarea{max-width:100%}.panel input:not([type=checkbox]):not([type=radio]),.panel select,.panel textarea,.form-grid input:not([type=checkbox]):not([type=radio]),.form-grid select,.form-grid textarea{width:100%;padding:11px 12px;border:1.5px solid #cfd4dc;border-radius:11px;background:#fff;color:#111827;outline:none}.panel input:focus,.panel select:focus,.panel textarea:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(227,41,41,.10)}
.table-wrap{overflow:auto;border-radius:14px;border:1px solid var(--line)}.table-wrap table{width:100%;border-collapse:collapse;background:#fff}.table-wrap th{background:#f8fafc;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#667085;padding:12px}.table-wrap td{padding:12px;border-top:1px solid var(--line);vertical-align:middle}.empty{padding:28px;text-align:center;color:var(--muted)}
.badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef2f6;font-size:11px;font-weight:850}.badge.ok{background:#e8f8ef;color:#087443}.badge.warn{background:#fff3df;color:#925400}.badge.err{background:#fff0ef;color:#b42318}
.inline-form,.inline-editor,.inline-delete{display:inline-flex;align-items:center;gap:8px}

/* dark theme */
[data-theme="dark"]{--bg:#121418;--surface:#1b1e24;--surface-2:#23272f;--text:#f4f6f8;--muted:#a6adbb;--line:#313640}
[data-theme="dark"] body{background:var(--bg);color:var(--text)}
[data-theme="dark"] .panel,[data-theme="dark"] .ops-nav,[data-theme="dark"] .admin-nav-v3{background:#1b1e24;border-color:#313640}
[data-theme="dark"] .table-wrap table,[data-theme="dark"] .table-wrap th{background:#1b1e24;color:#f4f6f8}
[data-theme="dark"] .panel input,[data-theme="dark"] .panel select,[data-theme="dark"] .panel textarea{background:#23272f;color:#fff;border-color:#444b57}

@media(max-width:900px){
  .login-premium-shell{padding:16px}.login-premium-card{grid-template-columns:1fr}.login-premium-brand{min-height:auto;padding:34px}.login-premium-brand h1{font-size:36px}.login-kpis{grid-template-columns:1fr}.login-premium-form{padding:34px}
  .ops-topbar,.admin-top-v3{align-items:flex-start;flex-direction:column}.ops-userbox,.admin-user-v3{width:100%;flex-wrap:wrap}.content-grid.two,.form-grid.two{grid-template-columns:1fr}.page{width:min(100% - 24px,1500px)}
}
@media(max-width:520px){.login-premium-shell{padding:0}.login-premium-card{border-radius:0;min-height:100vh}.login-premium-brand{padding:28px 22px}.login-premium-form{padding:30px 22px}.login-premium-brand h1{font-size:30px}.flash-stack{right:12px;top:12px;width:calc(100vw - 24px)}}
