:root{--sidebar:#0f172a;--sidebar-2:#1e293b;--border:#e2e8f0;--muted:#64748b;--accent:#38bdf8;--accent-2:#10b981}
body{background:linear-gradient(135deg,#f8fafc 0%,#e2e8f0 100%);color:#0f172a}
.app-shell{min-height:100vh;display:flex}
.sidebar{width:288px;background:var(--sidebar);color:#fff;position:sticky;top:0;height:100vh;padding:1.45rem;box-shadow:18px 0 42px rgba(15,23,42,.16)}
.sidebar-brand{color:#fff;text-decoration:none;display:flex;align-items:center;gap:.8rem;margin-bottom:.35rem}
.sidebar-brand img{width:44px;height:44px;border-radius:14px;box-shadow:0 10px 28px rgba(2,6,23,.28)}
.sidebar-brand span{font-size:1.5rem;font-weight:900;letter-spacing:-.03em}
.sidebar-subtitle{color:#94a3b8;font-size:.78rem;margin:0 0 1.8rem .1rem}
.sidebar a{color:#dbe7ff;text-decoration:none;display:flex;align-items:center;gap:.65rem;padding:.72rem .8rem;border-radius:.65rem;font-weight:650}
.sidebar a i{width:1.1rem;color:#93c5fd}
.sidebar a:hover,.sidebar a.active{background:#1e293b;color:#fff}
.sidebar a.active{box-shadow:inset 3px 0 0 var(--accent)}
.logout-link{color:#fecaca!important}
.main{flex:1;min-width:0}
.topbar{background:rgba(255,255,255,.82);backdrop-filter:blur(18px);border-bottom:1px solid var(--border);padding:1rem 1.5rem}
.content{padding:1.5rem}
.card-stat{border:1px solid var(--border);border-radius:.75rem;background:#fff;padding:1rem;box-shadow:0 16px 34px rgba(15,23,42,.06)}
.table-card{background:#fff;border:1px solid var(--border);border-radius:.75rem;padding:1rem;box-shadow:0 16px 34px rgba(15,23,42,.06)}
.text-muted-small{color:var(--muted);font-size:.875rem}
.machine-id{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem}
.btn-primary{--bs-btn-bg:#2563eb;--bs-btn-border-color:#2563eb;--bs-btn-hover-bg:#1d4ed8;--bs-btn-hover-border-color:#1d4ed8;font-weight:800}
.auth-body{min-height:100vh;margin:0;display:grid;place-items:center;padding:24px;background:linear-gradient(rgba(8,18,38,.64),rgba(8,18,38,.72)),url("../img/login-wallpaper.jpg") center/cover fixed;color:#f8fafc}
.auth-card{width:min(460px,94vw);border:1px solid rgba(148,163,184,.24);border-radius:28px;background:linear-gradient(180deg,rgba(7,14,28,.92),rgba(15,23,42,.9));box-shadow:0 24px 80px rgba(2,6,23,.42);backdrop-filter:blur(20px)}
.auth-card-body{padding:28px}
.auth-brand{display:flex;gap:16px;align-items:center;margin-bottom:26px}
.auth-brand img{width:64px;height:64px;border-radius:20px;box-shadow:0 12px 28px rgba(15,23,42,.32)}
.auth-brand h1{font-size:2rem;line-height:1;margin:0;font-weight:900;letter-spacing:-.04em}
.auth-brand p{margin:.35rem 0 0;color:#a8bbd9;font-weight:650}
.auth-body .form-label{color:#dbe7ff;font-weight:750}
.auth-body .form-control{background:rgba(15,23,42,.74);border-color:rgba(151,185,240,.22);color:#f8fafc;padding-left:2.5rem;border-radius:.8rem}
.auth-body .form-control:focus{background:rgba(15,23,42,.9);border-color:rgba(96,165,250,.7);box-shadow:0 0 0 .2rem rgba(96,165,250,.14);color:#fff}
.input-icon{position:relative}
.input-icon i{position:absolute;left:.9rem;top:50%;transform:translateY(-50%);z-index:2;color:#8ca2c7}
@media (max-width: 900px){.app-shell{display:block}.sidebar{width:100%;height:auto;position:relative}.content{padding:1rem}}
