:root{
  --np-bg:#020403;
  --np-bg-soft:#050806;
  --np-panel:rgba(9,14,11,.92);
  --np-panel-2:rgba(13,20,16,.94);
  --np-panel-3:#0b100d;
  --np-border:rgba(96,255,120,.15);
  --np-border-strong:rgba(96,255,120,.34);
  --np-neon:#5cff6f;
  --np-neon-2:#22e657;
  --np-neon-soft:rgba(92,255,111,.13);
  --np-neon-glow:rgba(59,255,91,.24);
  --np-text:#f3fff5;
  --np-muted:#8e9c91;
  --np-muted-2:#647269;
  --np-danger:#ff6c78;
  --np-warning:#ffd76a;
  --np-radius:18px;
  --np-radius-sm:12px;
  --np-shadow:0 24px 70px rgba(0,0,0,.42);
}
*{box-sizing:border-box}
html{color-scheme:dark;background:var(--np-bg)}
body{margin:0;background:var(--np-bg);color:var(--np-text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-2;background:radial-gradient(900px 520px at 82% -8%,rgba(60,255,88,.11),transparent 60%),radial-gradient(650px 450px at -8% 100%,rgba(33,175,69,.08),transparent 60%),linear-gradient(180deg,#020403 0%,#030604 100%)}
body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.18;background-image:linear-gradient(rgba(107,255,127,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(107,255,127,.035) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(to bottom,black,transparent 82%)}
a{color:inherit}
button,input,select,textarea{font:inherit}
button{appearance:none}
.shell{display:grid;grid-template-columns:278px minmax(0,1fr);min-height:100vh}
.sidebar{position:sticky;top:0;height:100vh;overflow-y:auto;padding:24px 18px 20px;background:linear-gradient(180deg,rgba(7,11,8,.985),rgba(4,7,5,.985));border-right:1px solid var(--np-border);box-shadow:20px 0 65px rgba(0,0,0,.24);z-index:50}
.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-thumb{background:rgba(92,255,111,.15);border-radius:999px}
.brand-wrap{display:flex;align-items:center;justify-content:center;min-height:74px;margin:0 2px 22px;padding:8px 6px 18px;border-bottom:1px solid rgba(92,255,111,.09)}
.brand-logo{display:block;width:min(215px,100%);height:62px;object-fit:contain;filter:drop-shadow(0 0 16px rgba(64,255,88,.22))}
.brand-fallback{font-size:25px;font-weight:900;letter-spacing:-.03em;color:var(--np-neon);text-shadow:0 0 24px var(--np-neon-glow)}
.tenant{margin:0 2px 20px;padding:14px 14px 13px;border:1px solid rgba(92,255,111,.11);border-radius:14px;background:linear-gradient(145deg,rgba(92,255,111,.055),rgba(255,255,255,.015));font-size:12px;color:var(--np-muted);line-height:1.6}
.tenant b{color:var(--np-text);font-size:13px}.tenant-xui{word-break:break-all;color:#b3c2b7}
.nav-section{margin:17px 11px 7px;font-size:10px;color:#5f7364;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.nav a,.nav button{display:flex;align-items:center;gap:10px;width:100%;min-height:43px;text-align:left;padding:11px 13px;margin:5px 0;border-radius:12px;text-decoration:none;background:transparent;border:1px solid transparent;color:#aeb9b1;font-size:13px;font-weight:760;cursor:pointer;transition:.18s ease}
.nav a:before,.nav button:before{content:"";width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:#314237;box-shadow:0 0 0 3px rgba(49,66,55,.12);transition:.18s ease}
.nav a:hover,.nav button:hover,.nav a.active{color:#effff2;background:linear-gradient(90deg,rgba(92,255,111,.105),rgba(92,255,111,.025));border-color:rgba(92,255,111,.15);transform:translateX(2px)}
.nav a:hover:before,.nav button:hover:before,.nav a.active:before{background:var(--np-neon);box-shadow:0 0 12px rgba(92,255,111,.7)}
.nav form{margin:0}.nav .logout-btn{margin-top:10px;color:#7e8d82}.nav .logout-btn:before{background:#4a292d}
.main-area{min-width:0;min-height:100vh}
.mobile-topbar{display:none;height:68px;position:sticky;top:0;z-index:40;align-items:center;justify-content:space-between;padding:10px 16px;background:rgba(4,8,5,.88);backdrop-filter:blur(18px);border-bottom:1px solid var(--np-border)}
.mobile-logo{height:42px;width:158px;object-fit:contain;object-position:left center}
.menu-toggle{width:42px;height:42px;padding:0!important;border-radius:12px!important;border:1px solid var(--np-border)!important;background:rgba(92,255,111,.06)!important;color:var(--np-text)!important;display:grid!important;place-items:center;box-shadow:none!important}
.menu-toggle span,.menu-toggle:before,.menu-toggle:after{content:"";display:block;width:18px;height:2px;background:var(--np-neon);border-radius:999px;box-shadow:0 0 8px rgba(92,255,111,.4)}
.menu-toggle span{margin:4px 0}
.sidebar-backdrop{display:none;position:fixed;inset:0;background:rgba(0,0,0,.68);backdrop-filter:blur(4px);z-index:45}
.content{padding:34px clamp(22px,3vw,46px) 70px;min-width:0;max-width:1700px;margin:0 auto;width:100%}
.title{font-size:clamp(27px,2.4vw,38px);font-weight:850;letter-spacing:-.035em;margin:0 0 25px;color:#f8fff9;text-wrap:balance}.title:after{content:"";display:block;width:54px;height:3px;margin-top:12px;border-radius:999px;background:linear-gradient(90deg,var(--np-neon),transparent);box-shadow:0 0 14px var(--np-neon-glow)}
.card{position:relative;background:linear-gradient(145deg,rgba(12,18,14,.96),rgba(6,10,8,.96));border:1px solid var(--np-border);border-radius:var(--np-radius);padding:22px;margin-bottom:20px;box-shadow:0 16px 48px rgba(0,0,0,.18);overflow:hidden}.card:before{content:"";position:absolute;left:0;top:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,rgba(92,255,111,.28),transparent);pointer-events:none}.card h2,.card h3{letter-spacing:-.02em}.card h3{margin-top:0}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
label{display:block;color:#95a299;margin-bottom:7px;font-size:13px;font-weight:650}
input,select,textarea{width:100%;min-height:45px;background:rgba(1,4,2,.76);color:#f5fff6;border:1px solid rgba(126,160,133,.22);border-radius:12px;padding:11px 13px;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
input::placeholder,textarea::placeholder{color:#526057}input:focus,select:focus,textarea:focus{border-color:rgba(92,255,111,.58);box-shadow:0 0 0 3px rgba(92,255,111,.085),0 0 22px rgba(92,255,111,.055);background:#030704}input:disabled,input[readonly]{opacity:.72;background:#060907}input[type=checkbox]{width:auto;min-height:0;accent-color:var(--np-neon)}
button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:1px solid transparent;border-radius:12px;padding:10px 17px;font-weight:850;letter-spacing:.015em;cursor:pointer;text-decoration:none;transition:transform .15s ease,filter .15s ease,box-shadow .15s ease,border-color .15s ease}button:hover,.btn:hover{transform:translateY(-1px);filter:brightness(1.05)}button:active,.btn:active{transform:translateY(0)}
.yellow{background:linear-gradient(135deg,#66ff76,#24dd52);color:#021405;border-color:rgba(135,255,149,.6);box-shadow:0 0 0 1px rgba(92,255,111,.04),0 8px 22px rgba(24,214,75,.16),inset 0 1px rgba(255,255,255,.32)}.yellow:hover{box-shadow:0 0 24px rgba(92,255,111,.2),0 10px 25px rgba(24,214,75,.16)}
.dark{background:#121914;color:#dce8df;border-color:rgba(140,168,146,.17)}.dark:hover{border-color:rgba(92,255,111,.25);background:#151f18}.red{background:rgba(117,28,38,.38);color:#ff9ba4;border-color:rgba(255,108,120,.22)}.blue{background:linear-gradient(135deg,#1daf66,#28e882);color:#001c0c;border-color:rgba(89,255,162,.32)}
.actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.table-wrap{overflow:auto;border-radius:14px}.table-wrap::-webkit-scrollbar{height:8px}.table-wrap::-webkit-scrollbar-thumb{background:rgba(92,255,111,.16);border-radius:999px}.table{width:100%;border-collapse:collapse;min-width:850px}.table th,.table td{padding:15px 12px;border-bottom:1px solid rgba(114,143,121,.13);text-align:left;vertical-align:middle}.table tbody tr{transition:background .15s ease}.table tbody tr:hover{background:rgba(92,255,111,.025)}.table th{color:#6f8174;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:850}
.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.05em;border:1px solid transparent}.ok{background:rgba(43,190,75,.12);color:#75ff8c;border-color:rgba(92,255,111,.16)}.warn{background:rgba(178,135,34,.12);color:#ffd76a;border-color:rgba(255,215,106,.15)}.bad{background:rgba(176,44,58,.12);color:#ff8e99;border-color:rgba(255,108,120,.15)}.muted{background:rgba(113,127,117,.1);color:#8d9c91;border-color:rgba(130,151,136,.1)}
.flash{padding:13px 15px;border-radius:13px;margin-bottom:18px;border:1px solid}.flash.okf{background:rgba(31,157,58,.11);border-color:rgba(92,255,111,.2);color:#8cff9d}.flash.err{background:rgba(158,31,44,.12);border-color:rgba(255,108,120,.2);color:#ff9aa3}
.stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px}.stat{position:relative;background:linear-gradient(145deg,rgba(13,20,16,.94),rgba(7,11,9,.94));border:1px solid var(--np-border);border-radius:16px;padding:19px;overflow:hidden}.stat:after{content:"";position:absolute;width:70px;height:70px;right:-28px;top:-28px;border-radius:50%;background:rgba(92,255,111,.07);filter:blur(2px)}.stat strong{display:block;font-size:30px;color:#f7fff8;letter-spacing:-.04em}.small{font-size:12px;color:#718077;line-height:1.55}
.floating-password{position:fixed;right:22px;bottom:22px;z-index:30;padding:10px 14px;font-size:11px;box-shadow:0 10px 30px rgba(0,0,0,.3),0 0 24px rgba(92,255,111,.11)}
.auth-body{min-height:100vh;display:grid;place-items:center;padding:28px 18px;background:#020403}.auth-wrap{width:min(100%,1080px);display:grid;grid-template-columns:minmax(290px,.9fr) minmax(360px,1.1fr);border:1px solid var(--np-border);border-radius:28px;overflow:hidden;background:rgba(6,10,8,.92);box-shadow:var(--np-shadow),0 0 80px rgba(56,255,86,.055);backdrop-filter:blur(18px)}.auth-brand-panel{position:relative;min-height:620px;padding:48px;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 50% 25%,rgba(92,255,111,.13),transparent 42%),linear-gradient(160deg,#070c08,#020403);border-right:1px solid var(--np-border);overflow:hidden}.auth-brand-panel:before{content:"";position:absolute;width:330px;height:330px;border:1px solid rgba(92,255,111,.1);border-radius:50%;left:-100px;bottom:-110px;box-shadow:0 0 70px rgba(92,255,111,.06)}.auth-brand-panel:after{content:"";position:absolute;inset:0;opacity:.28;background-image:linear-gradient(120deg,transparent 0 44%,rgba(92,255,111,.04) 45%,transparent 46%);background-size:38px 38px}.auth-brand-logo{position:relative;z-index:1;width:min(330px,100%);height:105px;object-fit:contain;object-position:left center;filter:drop-shadow(0 0 20px rgba(72,255,94,.23))}.auth-brand-copy{position:relative;z-index:1}.auth-kicker{color:var(--np-neon);font-size:11px;text-transform:uppercase;letter-spacing:.18em;font-weight:900}.auth-brand-copy h2{font-size:34px;line-height:1.04;letter-spacing:-.045em;margin:12px 0;color:#f5fff7}.auth-brand-copy p{max-width:420px;color:#7e8e82;line-height:1.65;margin:0}.auth-form-panel{padding:52px clamp(28px,5vw,66px);display:flex;align-items:center}.auth-card{width:100%;max-width:500px;margin:0 auto}.auth-title{font-size:30px;letter-spacing:-.035em;margin:0 0 8px}.auth-sub{color:#7d8c81;line-height:1.55;margin:0 0 27px}.auth-field{margin-bottom:15px}.auth-actions{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:12px 0 18px;color:#839186;font-size:13px}.auth-primary{width:100%;min-height:48px}.auth-link{color:#6fff82;text-decoration:none;font-weight:750}.auth-link:hover{text-decoration:underline;text-underline-offset:4px}.auth-note{font-size:12px;color:#68756c;line-height:1.6;margin:16px 0}.auth-divider{height:1px;background:rgba(115,145,121,.12);margin:20px 0}.auth-footer{text-align:center;color:#6f7d72;font-size:13px}.auth-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.auth-message{padding:12px 14px;border-radius:12px;margin-bottom:17px;border:1px solid}.auth-message.error{background:rgba(158,31,44,.12);border-color:rgba(255,108,120,.2);color:#ff9aa3}.auth-message.success{background:rgba(31,157,58,.11);border-color:rgba(92,255,111,.2);color:#8cff9d}
@media(max-width:1180px){.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:920px){.shell{display:block}.mobile-topbar{display:flex}.sidebar{position:fixed;left:0;top:0;width:min(304px,86vw);height:100dvh;transform:translateX(-102%);transition:transform .22s ease}.sidebar.is-open{transform:translateX(0)}.sidebar-backdrop.is-open{display:block}.content{padding:25px 17px 72px}.grid,.stats{grid-template-columns:1fr}.floating-password{right:13px;bottom:13px}.auth-wrap{grid-template-columns:1fr;max-width:620px}.auth-brand-panel{min-height:190px;padding:26px 28px;border-right:0;border-bottom:1px solid var(--np-border)}.auth-brand-logo{height:70px;width:250px}.auth-brand-copy{display:none}.auth-form-panel{padding:32px 28px 36px}}
@media(max-width:620px){.title{font-size:27px}.card{padding:17px;border-radius:15px}.content{padding-left:13px;padding-right:13px}.actions{align-items:stretch}.actions>form,.actions>form button,.actions>.btn{max-width:100%}.auth-body{padding:0}.auth-wrap{min-height:100dvh;border-radius:0;border-left:0;border-right:0}.auth-brand-panel{min-height:132px;padding:20px 22px}.auth-brand-logo{height:60px;width:215px}.auth-form-panel{padding:27px 20px 34px;align-items:flex-start}.auth-grid{grid-template-columns:1fr}.auth-title{font-size:27px}.table{min-width:720px}.floating-password{font-size:0;width:46px;height:46px;padding:0;border-radius:50%}.floating-password:after{content:"SENHA";font-size:8px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
