:root{--bg:#080b10;--panel:#111a27;--panel-2:#162235;--line:#2b3d56;--text:#f0f5fb;--muted:#9bacbf;--gold:#ffd700;--blue:#5da8ff;--green:#31d98c;--red:#ff6c7b;--violet:#ad96ff;--shadow:0 18px 50px #0008}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:radial-gradient(circle at 0 0,#211b083d,transparent 32%),var(--bg);color:var(--text);font:15px/1.55 Inter,"Segoe UI",Arial,sans-serif;font-weight:400;min-height:100vh}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer;transition:transform .16s ease,filter .16s ease,box-shadow .16s ease}button:active,.primary:active{transform:scale(.95)}button:hover,.primary:hover{filter:brightness(1.07);box-shadow:0 9px 24px #0006}.primary,.login-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--gold)!important;color:#080808!important;font-weight:600;border-radius:11px;min-height:42px;padding:10px 16px}.danger{background:#651d31;color:#fff;border-radius:10px;padding:10px 15px}.green{color:var(--green)!important}.red{color:var(--red)!important}

/* Login */.login-page{display:grid;place-items:center;padding:34px 22px}.login-shell{width:min(1120px,100%);min-height:660px;display:grid;grid-template-columns:1.05fr .95fr;background:#0e131c;border:1px solid #765d14;border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}.login-brand{padding:62px 64px 34px;position:relative;background:radial-gradient(circle at 22% 5%,#503b0c44,transparent 40%),linear-gradient(130deg,#12110c,#0c121b 68%);display:flex;flex-wrap:wrap;align-content:flex-start;gap:17px}.brand-mark{width:78px;height:78px;display:grid;place-items:center;border-radius:24px;background:linear-gradient(135deg,#ffe88a,var(--gold));color:#121212;font-size:31px;box-shadow:0 12px 30px #d4a3003d}.brand-copy{padding-top:5px}.brand-copy span,.form-kicker,.page-kicker{display:block;color:var(--gold);font-size:12px;letter-spacing:1.25px;font-weight:600}.brand-copy strong{display:block;font-size:24px;line-height:1.23;font-weight:500}.brand-content{width:100%;margin-top:117px}.secure-tag{display:inline-flex;gap:9px;align-items:center;color:var(--gold);border:1px solid #846a13;border-radius:999px;padding:7px 14px;font-size:13px}.brand-content h1{font-size:44px;line-height:1.13;font-weight:400;margin:42px 0 16px}.brand-content h1 em{font-style:normal;color:#ffe36a}.brand-content>p{color:#b7c5d8;font-size:17px;max-width:500px}.brand-content ul{margin:38px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,max-content);gap:13px 44px;list-style:none}.brand-content li{font-size:14px}.brand-content li i{color:var(--green);margin-right:10px}.brand-foot{position:absolute;bottom:28px;color:#8ba0bc}.login-form-side{background:linear-gradient(160deg,#121c2b,#0e151f);display:flex;align-items:center;padding:55px}.login-form{width:min(100%,455px);margin:auto}.login-form h2{font-size:33px;font-weight:400;margin:16px 0 5px}.login-form>p{color:var(--muted);margin:0 0 29px}.login-form label,.modal-form>label,.report-filter label{display:block;margin:16px 0 7px;color:#d5dfeb;font-size:14px}.input-wrap{height:58px;border:1px solid #344862;background:#243249;border-radius:12px;display:flex;align-items:center;overflow:hidden}.input-wrap>i{width:54px;text-align:center;color:#a9c8f0;font-size:17px}.input-wrap input{flex:1;height:100%;border:0;outline:0;background:#e9f1ff;color:#0a1420;padding:0 15px}.password-eye{width:52px;height:100%;color:#aac7ed;background:#243249}.login-submit{width:100%;margin-top:28px;height:60px;font-size:16px}.alert{color:#ffd7dc;background:#4c1d2a;border:1px solid #a3435b;padding:10px 13px;border-radius:10px;margin-bottom:16px}.alert i{margin-right:8px}

/* App shell */#shade{display:none}#sidebar{position:fixed;z-index:20;inset:0 auto 0 0;width:324px;background:#0d141e;border-right:1px solid #25364c;padding:35px 18px 31px;display:flex;flex-direction:column;transition:transform .25s ease}.sidebar-brand{display:flex;align-items:center;gap:14px;margin:5px 16px 56px}.sidebar-brand img{width:46px;height:46px}.sidebar-brand span{color:var(--gold);font-size:24px;font-weight:600;line-height:1}.sidebar-brand small{color:#a9bed6;font-size:14px;font-weight:400;display:block;margin-top:9px}nav{display:grid;gap:12px}nav a,.logout{min-height:60px;border-radius:14px;display:flex;align-items:center;gap:15px;padding:0 18px;background:var(--gold);color:#080808;font-size:17px;font-weight:500;box-shadow:inset 0 -4px #ba9300;transition:transform .16s ease,filter .16s ease}nav a:hover,nav a.active{filter:brightness(.87);transform:translateX(3px)}nav i,.logout i{width:20px;text-align:center}.logout{margin-top:auto;background:#223a5d;color:#edf5ff;box-shadow:none}.app{margin-left:324px;min-height:100vh;padding:48px 58px;transition:margin .25s ease}#sidebar.open{transform:translateX(-100%)}#sidebar.open~.app{margin-left:0}.topbar{min-height:120px;display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:18px;margin-bottom:32px}.topbar h1{font-size:40px;line-height:1.15;font-weight:400;margin:13px 0 0}.menu-toggle{width:54px;height:54px;display:grid;place-items:center;background:var(--gold);color:#090909;border-radius:14px;font-size:21px;box-shadow:inset 0 -4px #b28d00}.status{justify-self:end;display:inline-flex;align-items:center;gap:8px;color:#6ef0b0;background:#073c2b;border-radius:999px;padding:11px 16px}.status i{font-size:9px}.stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.stats article,.quick a,.summary,.table,.card{border:1px solid var(--line);background:linear-gradient(145deg,#121c29,#101927);border-radius:18px}.stats article{padding:22px;min-height:112px}.stats small{color:#a6c4e8;display:block}.stats strong{font-size:28px;font-weight:400;display:block;margin-top:7px}.quick{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}.quick a{display:inline-flex;gap:10px;align-items:center;padding:12px 16px;color:#e8f0fa}.quick i{color:var(--violet)}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}.toolbar .search{margin:0}.search{display:flex;gap:10px;align-items:center}.search input{width:min(410px,55vw)}input,select,textarea{width:100%;background:#0b131e;color:var(--text);border:1px solid #354a65;border-radius:10px;outline:none;padding:12px 14px;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px #ffd7001f}textarea{min-height:120px;resize:vertical}.search button,.controls button,.controls>a,.table td button{min-height:42px;background:#284263;color:white;border-radius:10px;padding:9px 14px}.summary{padding:17px 21px;color:#b6d1ef;margin-bottom:20px}

/* Software cards */.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{height:342px;min-width:0;padding:25px 25px 20px;display:flex;flex-direction:column}.card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.card-top>i{display:grid;place-items:center;width:64px;height:64px;border-radius:18px;background:#173b69;color:#b9d8ff;font-style:normal;font-size:18px}.pill{padding:8px 12px;border-radius:999px;font-size:13px}.pill.ok{color:#7cf5b8;background:#0a4b36}.pill.bad{color:#ffb3bd;background:#5c1d2d}.card h2{font-size:22px;line-height:1.25;font-weight:500;margin:22px 0 3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card small{color:#a8c7ec}.card p{color:#c2d2e4;margin:18px 0 15px;padding-right:8px;min-height:0;height:78px;overflow-y:auto;overflow-wrap:anywhere}.card p::-webkit-scrollbar,.checks::-webkit-scrollbar{width:7px}.card p::-webkit-scrollbar-thumb,.checks::-webkit-scrollbar-thumb{background:#52657d;border-radius:10px}.card-actions{display:flex;align-items:center;gap:9px;margin-top:auto}.card-actions form{margin:0}.card-actions .primary,.card-actions .danger{min-height:40px;padding:8px 14px}

/* Tables and forms */.table{width:100%;overflow:auto}.table table{width:100%;border-collapse:collapse;min-width:980px}.table th{color:#a8c7ec;font-size:12px;font-weight:500;letter-spacing:.3px;text-align:left;padding:17px 21px;border-bottom:1px solid #293a50}.table td{padding:18px 21px;border-bottom:1px solid #26364b;vertical-align:middle}.table tbody tr:last-child td{border-bottom:0}.table td small{display:block;color:#a7bbd1;margin-top:3px}.controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;white-space:nowrap}.controls form{margin:0;display:inline-flex}.controls>a,.controls button{height:42px;min-width:70px;display:inline-flex;align-items:center;justify-content:center}.controls>a{background:var(--gold);color:#060606;font-weight:500}.controls .danger{background:#681f33;color:white}.pagination{display:flex;gap:8px;margin-top:18px}.pagination a{background:#213653;border-radius:9px;padding:8px 13px}.pagination .active{background:var(--gold);color:#111}.report-filter{display:flex;align-items:end;gap:14px;flex-wrap:wrap;background:#111b28;border:1px solid var(--line);border-radius:16px;padding:18px;margin-bottom:20px}.report-filter div{min-width:170px}.report-filter label{margin-top:0}.report-filter .primary{margin-bottom:0}.report-stats{margin-bottom:20px}

/* Modals */dialog{position:fixed;inset:0;margin:auto;width:min(680px,calc(100% - 28px));height:max-content;max-height:calc(100dvh - 30px);padding:0;border:1px solid #36516f;border-radius:19px;background:#111c2a;color:var(--text);box-shadow:var(--shadow);overflow:auto}dialog::backdrop{background:#02060acc}.modal-form{padding:26px 30px 30px}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.modal-head h2{font-size:28px;line-height:1.15;font-weight:400;margin:0}.modal-head>a,.modal-head>button{font-size:28px;line-height:1;background:transparent;color:#b6cbe5;padding:0}.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.checks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-height:205px;overflow-y:auto;padding:2px}.check{height:72px;min-width:0;margin:0!important;padding:10px 11px!important;display:flex!important;align-items:center;gap:10px;background:#172a43;border:1px solid #355174;border-radius:11px;color:#edf5ff!important;overflow-wrap:anywhere;cursor:pointer}.check input{width:19px;height:19px;flex:0 0 auto;accent-color:var(--gold);padding:0}.modal-form>.primary{margin-top:19px}

@media(max-width:1250px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.app{padding:42px 36px}}@media(max-width:900px){.login-shell{grid-template-columns:1fr}.login-brand{min-height:360px}.brand-content{margin-top:45px}.login-form-side{padding:42px 28px}#sidebar{transform:translateX(-100%);width:min(324px,84vw);box-shadow:var(--shadow)}#sidebar.open{transform:translateX(0)}#sidebar.open~.app{margin-left:0}#shade.show{display:block;position:fixed;z-index:10;inset:0;background:#02060a99}.app{margin-left:0;padding:28px 20px}.topbar{min-height:86px;margin-bottom:22px}.status{font-size:13px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.login-page{padding:0}.login-shell{border:0;border-radius:0}.login-brand{padding:38px 28px}.brand-content h1{font-size:35px;margin-top:28px}.brand-content ul{grid-template-columns:1fr;gap:9px}.brand-foot{display:none}.login-form-side{padding:37px 24px}.topbar{grid-template-columns:auto 1fr}.topbar h1{font-size:32px}.status{grid-column:1/-1;justify-self:start;margin-top:-7px}.toolbar{align-items:stretch;flex-direction:column}.toolbar .primary{align-self:flex-end}.search input{width:100%}.grid{grid-template-columns:1fr}.card{height:330px}.stats{grid-template-columns:1fr 1fr}.two{grid-template-columns:1fr}.checks{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-form{padding:23px 20px 25px}.report-filter{align-items:stretch}.report-filter div{min-width:0;flex:1}}@media(max-width:420px){.stats{grid-template-columns:1fr}.checks{grid-template-columns:1fr}.search{flex-direction:column;align-items:stretch}.toolbar .primary{align-self:stretch}.login-form h2{font-size:30px}}
