/*! =========================================================================
 *  MCOM SCADA — css/login.css
 *  GENERATED FILE. DO NOT EDIT.
 *  Edit the sources in ui/ and run:  php tools/build-ui.php
 *  Sources: ui/tokens.css, ui/login.css
 *  Built:   2026-09-08 12:32
 * ========================================================================= */

/*! ===== ui/tokens.css ===== */
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:400 800;font-display:swap;src:url("../fonts/plus-jakarta-sans/plus-jakarta-sans-latin.woff2") format('woff2')}
:root{--mc-red:#E10600;--mc-red-600:#C40410;--mc-red-700:#9C030D;--mc-red-soft:rgba(225,6,0,.12);--mc-red-rgb:225,6,0;--mc-black:#101319;--mc-charcoal:#1B1F27;--mc-slate:#2C323D;--mc-blue:#1CA3DE;--mc-blue-600:#1387BC;--mc-blue-700:#0F6D99;--mc-blue-050:#EAF6FC;--mc-blue-soft:rgba(28,163,222,.14);--mc-blue-rgb:28,163,222;--mc-purple:#7A5AF8;--mc-purple-soft:rgba(122,90,248,.14);--mc-purple-rgb:122,90,248;--mc-teal:#12A395;--mc-teal-600:#0E8377;--mc-teal-soft:rgba(18,163,149,.14);--mc-teal-rgb:18,163,149;--mc-ref-blue:#148cf7;--mc-ref-blue-soft:rgba(20,140,247,.18);--mc-ref-blue-soft-2:rgba(20,140,247,.12);--mc-ref-navy:#0a2540;--mc-ref-navy-rgb:10,37,64;--mc-ref-navy-text:#0e294b;--mc-ref-sub:#12436d;--mc-ref-text-muted:#5e738d;--mc-ref-border:#d8eaf5;--mc-ref-red:#e61e25;--mc-ref-sky-1:#78caf8;--mc-ref-sky-2:#9ddbfc;--mc-ref-sky-3:#c5ecff;--mc-ref-sky-4:#9ed9fc;--mc-ref-sky-5:#76c5f7;--mc-ref-sidebar:#d6eefb;--mc-ref-sidebar-g1:#dff2fc;--mc-ref-sidebar-g2:#cbe9fa;--mc-ref-sidebar-g3:#b5e1f8;--mc-bg:#F1F4F8;--mc-bg-sunken:#E7ECF3;--mc-surface:#FFFFFF;--mc-surface-2:#F7F9FC;--mc-surface-3:#EEF2F7;--mc-text:#171C26;--mc-text-2:#4A5567;--mc-text-3:#7A8699;--mc-text-invert:#FFFFFF;--mc-border:#DDE3EC;--mc-border-strong:#C3CCDA;--mc-chrome:#101017;--mc-chrome-2:#16161F;--mc-chrome-text:#FFFFFF;--mc-chrome-text-2:rgba(255,255,255,.62);--mc-chrome-line:rgba(255,255,255,.10);--mc-chrome-fill:rgba(255,255,255,.08);--mc-on-accent:#FFFFFF;--mc-plate:#FFFFFF;--mc-ok:#12A150;--mc-ok-strong:#0A7C3C;--mc-ok-soft:rgba(18,161,80,.13);--mc-ok-rgb:18,161,80;--mc-bad:#C0202B;--mc-bad-strong:#96151E;--mc-bad-soft:rgba(192,32,43,.12);--mc-bad-rgb:192,32,43;--mc-warn:#C77700;--mc-warn-strong:#9A5C00;--mc-warn-soft:rgba(199,119,0,.14);--mc-warn-rgb:199,119,0;--mc-info:var(--mc-blue-700);--mc-info-soft:var(--mc-blue-soft);--mc-neutral:#66738A;--mc-neutral-soft:rgba(102,115,138,.12);--mc-series-1:#1387BC;--mc-series-2:#7A5AF8;--mc-series-3:#0A7C3C;--mc-series-4:#C77700;--mc-series-5:#C0202B;--mc-series-6:#0E7490;--mc-series-7:#B4529E;--mc-series-8:#4A5567;--mc-font:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;--mc-font-num:ui-monospace,"SF Mono","Segoe UI Mono","Cascadia Mono",Consolas,"Roboto Mono",monospace;--mc-fs-xs:11.5px;--mc-fs-sm:12.5px;--mc-fs-base:14px;--mc-fs-md:15px;--mc-fs-lg:17px;--mc-fs-xl:20px;--mc-fs-2xl:24px;--mc-fs-3xl:30px;--mc-lh-tight:1.25;--mc-lh:1.5;--mc-s1:4px;--mc-s2:8px;--mc-s3:12px;--mc-s4:16px;--mc-s5:20px;--mc-s6:24px;--mc-s8:32px;--mc-s10:40px;--mc-r-sm:6px;--mc-r:10px;--mc-r-lg:14px;--mc-r-pill:999px;--mc-shadow-1:0 1px 2px rgba(16,19,25,.06),0 1px 3px rgba(16,19,25,.05);--mc-shadow-2:0 2px 4px rgba(16,19,25,.05),0 6px 16px -6px rgba(16,19,25,.14);--mc-shadow-3:0 8px 28px -8px rgba(16,19,25,.28),0 2px 6px rgba(16,19,25,.08);--mc-ring:0 0 0 3px var(--mc-blue-soft);--mc-nav-h:74px;--mc-nav-h-sm:52px;--mc-page-max:1680px;--mc-gutter:16px;--mc-sidebar-w:250px;--mc-speed:.18s;--mc-ease:cubic-bezier(.4,0,.2,1)}
[data-theme="dark"]{--mc-bg:#0C0F14;--mc-bg-sunken:#070910;--mc-surface:#161A22;--mc-surface-2:#1C212B;--mc-surface-3:#232935;--mc-text:#E7EBF2;--mc-text-2:#A8B3C4;--mc-text-3:#7C8798;--mc-text-invert:#0C0F14;--mc-border:#2A313D;--mc-border-strong:#3A4351;--mc-chrome:#161A22;--mc-chrome-2:#1C212B;--mc-chrome-line:rgba(255,255,255,.08);--mc-chrome-fill:rgba(255,255,255,.06);--mc-ok:#35D07F;--mc-ok-strong:#6EE7A8;--mc-ok-soft:rgba(53,208,127,.16);--mc-ok-rgb:53,208,127;--mc-bad:#FF6B6B;--mc-bad-strong:#FF9B9B;--mc-bad-soft:rgba(255,107,107,.16);--mc-bad-rgb:255,107,107;--mc-warn:#F5B93B;--mc-warn-strong:#FFD37A;--mc-warn-soft:rgba(245,185,59,.16);--mc-warn-rgb:245,185,59;--mc-neutral:#8B96A8;--mc-neutral-soft:rgba(139,150,168,.16);--mc-blue:#45B8ED;--mc-blue-600:#63C6F2;--mc-blue-700:#8AD5F6;--mc-blue-050:rgba(69,184,237,.10);--mc-blue-soft:rgba(69,184,237,.18);--mc-blue-rgb:69,184,237;--mc-purple:#A78BFA;--mc-purple-soft:rgba(167,139,250,.18);--mc-purple-rgb:167,139,250;--mc-teal:#2DD4BF;--mc-teal-600:#14B8A6;--mc-teal-soft:rgba(45,212,191,.18);--mc-teal-rgb:45,212,191;--mc-ref-navy-text:#f1f5f9;--mc-ref-sub:#38bdf8;--mc-ref-text-muted:#94a3b8;--mc-ref-border:#1e3a5f;--mc-ref-sky-1:#091f36;--mc-ref-sky-2:#0f3050;--mc-ref-sky-3:#0f3050;--mc-ref-sky-4:#0f3050;--mc-ref-sky-5:#091f36;--mc-ref-sidebar:#071524;--mc-ref-sidebar-g1:#091c2e;--mc-ref-sidebar-g2:#0d2740;--mc-ref-sidebar-g3:#0a1f33;--mc-red:#45B8ED;--mc-red-600:#63C6F2;--mc-red-700:#8AD5F6;--mc-red-soft:rgba(69,184,237,.18);--mc-red-rgb:69,184,237;--mc-info:var(--mc-blue-700);--mc-series-1:#45B8ED;--mc-series-2:#A78BFA;--mc-series-3:#35D07F;--mc-series-4:#F5B93B;--mc-series-5:#FF6B6B;--mc-series-6:#35C4D4;--mc-series-7:#EC8FD8;--mc-series-8:#A8B3C4;--mc-shadow-1:0 1px 2px rgba(0,0,0,.5);--mc-shadow-2:0 2px 4px rgba(0,0,0,.4),0 6px 16px -6px rgba(0,0,0,.6);--mc-shadow-3:0 8px 28px -8px rgba(0,0,0,.8),0 2px 6px rgba(0,0,0,.5)}
[data-density="compact"]{--mc-s3:8px;--mc-s4:12px;--mc-s5:14px;--mc-fs-base:13px;--mc-fs-md:13.5px}

/*! ===== ui/login.css ===== */
*{box-sizing:border-box}
html,body.login-page{height:100%}
body.login-page{margin:0;overflow:hidden;font-family:var(--mc-font);color:var(--mc-text);-webkit-font-smoothing:antialiased}
.login-shell{position:relative;display:flex;flex-direction:column;height:100vh;overflow:hidden;background:url("../images/login-bg.jpg") top / cover no-repeat,radial-gradient(circle 60px at 6% 14%,rgba(255,255,255,.55) 0%,rgba(255,255,255,0) 72%),radial-gradient(circle 22px at 93% 10%,rgba(255,255,255,.5) 0%,rgba(255,255,255,0) 72%),radial-gradient(circle 16px at 88% 22%,rgba(255,255,255,.45) 0%,rgba(255,255,255,0) 72%),radial-gradient(circle 14px at 4% 46%,rgba(255,255,255,.4) 0%,rgba(255,255,255,0) 72%),radial-gradient(circle 26px at 96% 52%,rgba(255,255,255,.4) 0%,rgba(255,255,255,0) 72%),radial-gradient(circle 18px at 90% 68%,rgba(255,255,255,.4) 0%,rgba(255,255,255,0) 72%),linear-gradient(135deg,var(--mc-ref-sky-1) 0%,var(--mc-ref-sky-2) 25%,var(--mc-ref-sky-3) 50%,var(--mc-ref-sky-4) 75%,var(--mc-ref-sky-5) 100%)}
.login-shell::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(115deg,rgba(255,255,255,.38) 0%,rgba(255,255,255,.16) 32%,rgba(255,255,255,0) 55%);pointer-events:none}
.login-main{position:relative;z-index:2;flex:1 1 auto;min-height:0;display:flex;align-items:center;justify-content:flex-end;padding:clamp(24px,4vw,40px) clamp(20px,5vw,56px);overflow-y:auto}
.login-shell>*{min-width:0}
.login-panel{flex:0 1 400px;display:flex;justify-content:center}
.login-card{width:100%;max-width:400px;background:var(--mc-surface);border-radius:var(--mc-r-lg);box-shadow:0 30px 60px -20px rgba(var(--mc-ref-navy-rgb),.35);padding:clamp(28px,4vw,40px) clamp(24px,4vw,36px)}
.login-card h2{font-size:var(--mc-fs-2xl);font-weight:800;margin:0 0 var(--mc-s1);color:var(--mc-ref-navy-text);letter-spacing:-.3px}
.login-card .sub{font-size:var(--mc-fs-base);color:var(--mc-text-3);margin:0 0 var(--mc-s6)}
.login-field{margin-bottom:var(--mc-s4)}
.login-input{position:relative;display:block}
.login-input>i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--mc-text-3);font-size:14px;pointer-events:none;transition:color var(--mc-speed) var(--mc-ease)}
.login-input input{width:100%;height:48px;padding:0 14px 0 42px;font-size:var(--mc-fs-md);font-family:var(--mc-font);color:var(--mc-text);background:var(--mc-surface);border:1px solid var(--mc-border-strong);border-radius:var(--mc-r-sm);outline:none;transition:border-color var(--mc-speed) var(--mc-ease),box-shadow var(--mc-speed) var(--mc-ease)}
.login-input--password input{padding-right:42px}
.login-input input::placeholder{color:var(--mc-text-3)}
.login-input input:focus{border-color:var(--mc-blue);box-shadow:var(--mc-ring)}
.login-input input:focus + i,.login-input input:focus ~ i{color:var(--mc-blue)}
.login-eye{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:none;background:none;cursor:pointer;color:var(--mc-text-3);border-radius:var(--mc-r-sm)}
.login-eye:hover{color:var(--mc-text-2);background:var(--mc-surface-3)}
.login-eye:focus-visible{outline:2px solid var(--mc-blue);outline-offset:1px}
.login-error{display:block;min-height:18px;font-size:var(--mc-fs-sm);color:var(--mc-bad);margin:var(--mc-s1) 0 0}
.login-error:empty{min-height:0;margin:0}
.login-row{display:flex;align-items:center;justify-content:space-between;gap:var(--mc-s3);margin:var(--mc-s2) 0 var(--mc-s6);font-size:var(--mc-fs-sm)}
.login-remember{display:inline-flex;align-items:center;gap:var(--mc-s2);color:var(--mc-text-2);cursor:pointer;user-select:none}
.login-remember input{width:16px;height:16px;accent-color:var(--mc-blue);cursor:pointer}
.login-forgot{color:var(--mc-blue-700);font-weight:600;text-decoration:none;background:none;border:none;padding:0;font-family:var(--mc-font);font-size:var(--mc-fs-sm);cursor:pointer}
.login-forgot:hover{text-decoration:underline}
.login-btn{width:100%;height:48px;display:inline-flex;align-items:center;justify-content:center;gap:var(--mc-s2);background:var(--mc-blue-700);color:var(--mc-on-accent);font-size:var(--mc-fs-md);font-weight:700;font-family:var(--mc-font);letter-spacing:.2px;border:none;border-radius:var(--mc-r-sm);cursor:pointer;transition:background var(--mc-speed) var(--mc-ease),box-shadow var(--mc-speed) var(--mc-ease),transform .1s var(--mc-ease)}
.login-btn:hover{background:var(--mc-blue-600);box-shadow:0 6px 16px rgba(var(--mc-blue-rgb),.35)}
.login-btn:active{transform:translateY(1px)}
.login-btn:focus-visible{outline:2px solid var(--mc-blue-700);outline-offset:2px}
.login-error--form{display:block;text-align:center;min-height:0;font-size:var(--mc-fs-base);color:var(--mc-bad);margin-top:var(--mc-s3)}
.login-help{margin-top:var(--mc-s5);padding-top:var(--mc-s4);border-top:1px solid var(--mc-border);font-size:var(--mc-fs-sm);color:var(--mc-text-3);text-align:center}
.login-legal{position:relative;z-index:2;flex:0 0 auto;padding:var(--mc-s2) clamp(20px,5vw,56px) var(--mc-s3);font-size:var(--mc-fs-xs);color:var(--mc-ref-navy-text);text-shadow:0 1px 3px rgba(255,255,255,.7);opacity:.8;text-align:center}
@media (max-width:575px){.login-main{justify-content:center;padding-left:var(--mc-s4);padding-right:var(--mc-s4)}
.login-shell{background-image:radial-gradient(circle 60px at 6% 14%,rgba(255,255,255,.55) 0%,rgba(255,255,255,0) 72%),radial-gradient(circle 22px at 93% 10%,rgba(255,255,255,.5) 0%,rgba(255,255,255,0) 72%),radial-gradient(circle 16px at 88% 22%,rgba(255,255,255,.45) 0%,rgba(255,255,255,0) 72%),radial-gradient(circle 14px at 4% 46%,rgba(255,255,255,.4) 0%,rgba(255,255,255,0) 72%),radial-gradient(circle 26px at 96% 52%,rgba(255,255,255,.4) 0%,rgba(255,255,255,0) 72%),radial-gradient(circle 18px at 90% 68%,rgba(255,255,255,.4) 0%,rgba(255,255,255,0) 72%),linear-gradient(135deg,var(--mc-ref-sky-1) 0%,var(--mc-ref-sky-2) 25%,var(--mc-ref-sky-3) 50%,var(--mc-ref-sky-4) 75%,var(--mc-ref-sky-5) 100%)}
}
