:root{font-family:Inter,Segoe UI,system-ui,sans-serif;color:#102b27;background:#edf4f2;--green:#075c4c;--green2:#0b7963;--line:#d4e2de;--muted:#627a75;--danger:#a43131;--warn:#9a6500}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}.login{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(430px,100%);background:#fff;padding:34px;border:1px solid var(--line);border-radius:22px;box-shadow:0 24px 70px #103d3420}.brand{display:flex;gap:14px;align-items:center}.logo{width:48px;height:48px;border-radius:14px;background:#d8efe8;display:grid;place-items:center;font-weight:900;color:var(--green)}h1,h2,h3{margin:0}.muted{color:var(--muted)}label{display:block;font-size:13px;font-weight:700;margin:18px 0 7px}input,select,textarea{width:100%;padding:12px 13px;border:1px solid #bfcfca;border-radius:10px;background:#fff}textarea{min-height:90px;resize:vertical}button{border:0;border-radius:10px;padding:11px 16px;font-weight:800;cursor:pointer;background:var(--green);color:#fff}button.secondary{background:#e7f1ee;color:#17483f}button.danger{background:#fee8e7;color:#8a2929}button:disabled{opacity:.55;cursor:not-allowed}.error{background:#fde8e7;color:#8b2929;border:1px solid #f6cac7;padding:12px;border-radius:10px;margin-top:14px}.success{background:#e5f6ef;color:#0b684f;border:1px solid #bce7d8;padding:12px;border-radius:10px;margin-top:14px}.shell{display:grid;grid-template-columns:245px 1fr;min-height:100vh}.side{background:#073f36;color:white;padding:23px 16px;position:sticky;top:0;height:100vh}.side .brand{padding:0 8px 24px}.nav button{display:block;width:100%;text-align:left;background:transparent;color:#cce1dc;margin:3px 0}.nav button.active,.nav button:hover{background:#146052;color:#fff}.main{min-width:0}.topbar{height:72px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:5}.content{padding:28px;max-width:1500px;margin:auto}.grid{display:grid;gap:16px}.cards{grid-template-columns:repeat(6,minmax(130px,1fr));margin:22px 0}.card,.panel{background:white;border:1px solid var(--line);border-radius:16px;padding:18px}.metric strong{display:block;font-size:28px;margin-top:9px}.toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;margin:20px 0}.toolbar input{max-width:380px}.table-wrap{overflow:auto;background:white;border:1px solid var(--line);border-radius:16px}table{width:100%;border-collapse:collapse;min-width:850px}th,td{text-align:left;padding:13px 14px;border-bottom:1px solid #e6efec;vertical-align:top}th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#647b76;background:#f8fbfa;position:sticky;top:0}tr:hover td{background:#fbfdfc}.badge{display:inline-block;padding:5px 9px;border-radius:999px;background:#e3f2ed;color:#17604f;font-size:12px;font-weight:800}.badge.bad{background:#fee7e6;color:#942d2d}.badge.warn{background:#fff0cf;color:#7a5400}.actions{display:flex;gap:8px;flex-wrap:wrap}.actions button{padding:7px 10px;font-size:12px}.modal-backdrop{position:fixed;inset:0;background:#062d2790;display:grid;place-items:center;padding:20px;z-index:20}.modal{width:min(760px,100%);max-height:90vh;overflow:auto;background:white;border-radius:18px;padding:22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.full{grid-column:1/-1}.activation{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:26px;letter-spacing:.12em;background:#edf6f3;padding:18px;border-radius:12px;text-align:center;margin:16px 0;word-break:break-all}.small{font-size:12px}.right{text-align:right}@media(max-width:1100px){.cards{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.shell{grid-template-columns:1fr}.side{height:auto;position:static}.nav{display:flex;overflow:auto}.nav button{width:auto;white-space:nowrap}.topbar{position:static;padding:0 16px}.content{padding:16px}.cards{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}}

.login-submit{width:100%;margin-top:20px}.side-subtitle{color:#b9d3cd}.modal-toolbar{margin-top:0}.form-submit{margin-top:18px}
