:root {
  color-scheme: light;
  --bg:#eef2f6;--panel:#fff;--panel-2:#f7f9fc;--text:#172033;--muted:#667085;--line:#dfe5ec;
  --accent:#0b5cab;--accent-2:#084985;--good:#16815d;--warn:#b36a00;--bad:#bf2c36;--shadow:0 12px 32px rgba(20,35,55,.08);
}
[data-theme="dark"] {
  color-scheme:dark;--bg:#0d131c;--panel:#151d29;--panel-2:#1b2533;--text:#edf3fa;--muted:#9ba9ba;--line:#293749;
  --accent:#4b9deb;--accent-2:#70b4f4;--good:#4ed0a0;--warn:#f2b24f;--bad:#ff7078;--shadow:0 16px 36px rgba(0,0,0,.24);
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}.hidden{display:none!important}.muted{color:var(--muted)}.eyebrow{margin:0 0 4px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;font-size:.68rem;color:var(--accent)}
.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 10%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 34%),var(--bg)}.login-card{width:min(440px,100%);display:grid;gap:24px;background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:36px;box-shadow:var(--shadow)}.login-card h1{font-size:2rem;margin:.15rem 0}.brand-mark{width:54px;height:54px;display:grid;place-items:center;background:linear-gradient(145deg,var(--accent),#102d52);color:#fff;border-radius:15px;font-size:1.45rem;font-weight:850;box-shadow:0 10px 20px color-mix(in srgb,var(--accent) 26%,transparent)}.brand-mark.small{width:40px;height:40px;border-radius:12px;font-size:1.1rem}.stack{display:grid;gap:15px}label{display:grid;gap:7px;font-size:.82rem;font-weight:700}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:11px 12px;background:var(--panel-2);color:var(--text);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}textarea{min-height:92px;resize:vertical}.primary,.secondary,.danger{border:0;border-radius:10px;padding:11px 16px;font-weight:750;cursor:pointer}.primary{background:var(--accent);color:#fff}.primary:hover{background:var(--accent-2)}.secondary{background:var(--panel-2);border:1px solid var(--line);color:var(--text)}.danger{background:color-mix(in srgb,var(--bad) 14%,var(--panel));color:var(--bad)}.form-error{min-height:1.2em;color:var(--bad);margin:0;font-size:.82rem}
.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:22px 16px;background:#101b2a;color:#dce7f3;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;padding:0 8px 28px}.brand strong{display:block;font-size:1.02rem}.brand span{display:block;color:#8ea2b8;font-size:.72rem;margin-top:2px}.sidebar nav{display:grid;gap:6px}.sidebar nav button,.quiet{display:flex;align-items:center;gap:12px;width:100%;border:0;border-radius:10px;padding:11px 12px;background:transparent;color:#aebed0;text-align:left;cursor:pointer}.sidebar nav button:hover,.sidebar nav button.active{background:#1b2b3e;color:#fff}.sidebar nav button.active{box-shadow:inset 3px 0 0 #4b9deb}.sidebar nav span{width:19px;text-align:center}.sidebar nav b{margin-left:auto;background:var(--bad);color:#fff;border-radius:20px;padding:1px 7px;font-size:.68rem}.sidebar-footer{margin-top:auto;display:grid;gap:5px}.quiet:hover{color:#fff;background:#1b2b3e}
.workspace{min-width:0}.topbar{height:86px;padding:0 30px;display:flex;align-items:center;gap:16px;background:color-mix(in srgb,var(--panel) 94%,transparent);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5;backdrop-filter:blur(14px)}.topbar h2{margin:0;font-size:1.35rem}.top-actions{margin-left:auto;display:flex;align-items:center;gap:14px}.sync-pill{font-size:.72rem;color:var(--good);border:1px solid color-mix(in srgb,var(--good) 30%,var(--line));padding:6px 9px;border-radius:99px;background:color-mix(in srgb,var(--good) 8%,var(--panel))}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--panel-2);border:1px solid var(--line);font-size:.75rem;font-weight:800}.icon-button{display:none;background:transparent;border:0;color:var(--text);font-size:1.3rem}.content{padding:28px 30px 60px;max-width:1500px}.loading{padding:60px;text-align:center;color:var(--muted)}
.page-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.search{max-width:420px}.button-row{display:flex;gap:9px;flex-wrap:wrap}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px;margin-bottom:20px}.metric{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:var(--shadow)}.metric span{display:block;color:var(--muted);font-size:.76rem;font-weight:700}.metric strong{display:block;font-size:1.8rem;margin-top:8px}.metric.bad strong{color:var(--bad)}.metric.warn strong{color:var(--warn)}.grid-2{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.9fr);gap:18px}.card{background:var(--panel);border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);overflow:hidden}.card-header{display:flex;align-items:center;justify-content:space-between;padding:17px 19px;border-bottom:1px solid var(--line)}.card-header h3{margin:0;font-size:.98rem}.card-body{padding:18px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.82rem}th{text-align:left;color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;padding:11px 12px;border-bottom:1px solid var(--line)}td{padding:12px;border-bottom:1px solid var(--line);vertical-align:middle}tbody tr{cursor:pointer}tbody tr:hover{background:var(--panel-2)}.badge{display:inline-flex;align-items:center;border-radius:99px;padding:4px 8px;font-size:.68rem;font-weight:800;text-transform:capitalize;background:var(--panel-2);border:1px solid var(--line)}.badge.high,.badge.urgent,.badge.overdue,.badge.fail{color:var(--bad);background:color-mix(in srgb,var(--bad) 8%,var(--panel))}.badge.normal,.badge.assigned,.badge.in_progress{color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--panel))}.badge.completed,.badge.pass,.badge.active{color:var(--good);background:color-mix(in srgb,var(--good) 8%,var(--panel))}.badge.open,.badge.medium{color:var(--warn);background:color-mix(in srgb,var(--warn) 8%,var(--panel))}.list{display:grid}.list-item{display:grid;grid-template-columns:1fr auto;gap:8px;padding:13px 0;border-bottom:1px solid var(--line)}.list-item:last-child{border:0}.list-item strong{font-size:.83rem}.list-item small{display:block;color:var(--muted);margin-top:4px}.empty{padding:34px;text-align:center;color:var(--muted)}
.machine-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(275px,1fr));gap:14px}.machine-card{padding:17px;background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);cursor:pointer}.machine-card:hover{border-color:var(--accent);transform:translateY(-1px)}.machine-card h3{margin:7px 0 5px;font-size:1rem}.machine-card .asset{font-size:.72rem;font-weight:850;color:var(--accent);letter-spacing:.05em}.machine-card footer{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:12px;border-top:1px solid var(--line);font-size:.72rem;color:var(--muted)}.detail-hero{display:grid;grid-template-columns:1fr auto;gap:20px;margin-bottom:18px}.detail-hero h3{font-size:1.45rem;margin:4px 0}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.detail-field{padding:13px;background:var(--panel-2);border-radius:10px}.detail-field span{display:block;color:var(--muted);font-size:.68rem;text-transform:uppercase}.detail-field strong{display:block;margin-top:5px;font-size:.84rem}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:18px 0}.tabs button{border:0;background:transparent;color:var(--muted);padding:11px 14px;font-weight:700;cursor:pointer}.tabs button.active{color:var(--accent);border-bottom:2px solid var(--accent)}
dialog{border:0;padding:0;background:transparent;color:var(--text);width:min(680px,calc(100% - 24px));max-height:90vh}dialog::backdrop{background:rgba(3,8,15,.62);backdrop-filter:blur(3px)}.modal-card{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:25px;box-shadow:var(--shadow);max-height:90vh;overflow:auto}.modal-close{position:absolute;right:13px;top:12px;border:0;background:transparent;color:var(--muted);font-size:1.5rem;cursor:pointer}.modal-card h3{margin:0 0 20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .wide{grid-column:1/-1}.toast{position:fixed;right:22px;bottom:22px;z-index:100;transform:translateY(120px);transition:.2s;background:#172033;color:#fff;padding:12px 16px;border-radius:10px;box-shadow:var(--shadow);font-size:.82rem}.toast.show{transform:translateY(0)}
@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;z-index:20;width:260px;transform:translateX(-102%);transition:.2s}.sidebar.open{transform:translateX(0)}.icon-button{display:block}.metric-grid{grid-template-columns:1fr 1fr}.grid-2{grid-template-columns:1fr}.content{padding:20px}.topbar{padding:0 18px}.detail-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.metric-grid,.form-grid,.detail-grid{grid-template-columns:1fr}.page-actions{align-items:stretch;flex-direction:column}.content{padding:15px}.topbar{height:76px}.topbar .sync-pill{display:none}.login-card{padding:26px}.machine-grid{grid-template-columns:1fr}}
