:root{--navy:#102642;--blue:#2878c8;--red:#c82f36;--green:#14805e;--ink:#17243a;--muted:#64748b;--line:#d8e1eb;--bg:#f3f7fb;--white:#fff;--shadow:0 16px 45px rgba(16,38,66,.11)}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--bg)}a{color:inherit}.auth-page{min-height:100vh;display:grid;place-items:center;padding:28px;background:linear-gradient(135deg,#eef5fb,#fff 55%,#eaf7f2)}.login-shell{width:min(980px,100%);display:grid;grid-template-columns:1.12fr .88fr;background:#fff;border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}.login-intro{padding:58px;background:linear-gradient(145deg,var(--navy),#173d68);color:#fff}.eyebrow{letter-spacing:.18em;font-weight:800;color:#f36b70}.login-intro h1{font-size:42px;margin:10px 0}.login-intro>p{line-height:1.65}.access-icons{display:flex;gap:18px;margin-top:45px}.access-icons div{background:#fff;color:var(--ink);padding:12px;border-radius:16px;display:flex;align-items:center;gap:10px;font-weight:700}.access-icons img{width:54px;height:54px;object-fit:contain}.login-card,.install-card{padding:48px}.login-card{display:flex;flex-direction:column;justify-content:center}.install-card{width:min(720px,100%);background:#fff;border-radius:24px;box-shadow:var(--shadow)}h1,h2,h3,p{margin-top:0}label{display:block;font-weight:700;font-size:14px;color:#40506a;margin:16px 0}input,select{width:100%;padding:13px 14px;border:1px solid #cbd6e2;border-radius:10px;background:#fff;font:inherit;color:var(--ink);margin-top:7px}input:focus,select:focus{outline:3px solid rgba(40,120,200,.16);border-color:var(--blue)}button,.button{border:0;border-radius:10px;padding:12px 17px;font:inherit;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.primary{background:var(--navy);color:#fff}.client-theme .primary{background:var(--green)}.danger{background:#fff1f2;color:#b4232b}.secondary{background:#e9f0f7;color:var(--navy)}form .primary{width:100%;margin-top:10px}.alert{padding:12px 14px;border-radius:10px;margin:14px 0;font-weight:650}.alert.error{background:#fff0f1;color:#a5262b}.alert.ok{background:#e9f7f1;color:#0d6c4e}footer{margin-top:28px;color:#78869a;font-size:12px}.auth-brand{display:flex;gap:12px;align-items:center;margin-bottom:24px}.auth-brand img{width:66px}.auth-brand span{display:block;color:var(--muted);font-size:13px}.form-grid hr{border:0;border-top:1px solid var(--line);margin:24px 0}.topbar{background:var(--navy);color:#fff;padding:14px clamp(20px,5vw,70px);display:flex;align-items:center;justify-content:space-between}.topbar.client{background:linear-gradient(90deg,#15598d,var(--green))}.brand{display:flex;align-items:center;gap:12px}.brand img{width:52px;height:52px;object-fit:contain;background:#fff;border-radius:12px}.brand small{display:block;opacity:.76}.top-actions{display:flex;align-items:center;gap:14px}.top-actions a{color:#fff;text-decoration:none;font-weight:700}.container{width:min(1180px,calc(100% - 30px));margin:30px auto}.hero{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.hero p{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:0 5px 20px rgba(16,38,66,.04)}.col-5{grid-column:span 5}.col-7{grid-column:span 7}.col-12{grid-column:span 12}.card h2{font-size:20px}.checks{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.check{display:flex;align-items:center;gap:8px;border:1px solid var(--line);padding:10px;border-radius:10px}.check input{width:auto;margin:0}.logo-preview{width:80px;height:58px;object-fit:contain;border:1px solid var(--line);border-radius:9px;background:#fff}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:740px}th,td{text-align:left;border-bottom:1px solid #e5ebf2;padding:13px 10px;font-size:14px}th{font-size:12px;color:#60708a;text-transform:uppercase}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:800}.badge.on{background:#e8f7f1;color:#0c7553}.badge.off{background:#fff0f1;color:#a72d32}.inline-form{display:inline}.inline-form button{padding:8px 10px}.report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}.report-card{border:1px solid var(--line);border-left:5px solid var(--green);border-radius:16px;padding:22px;background:#fff}.report-card p{color:var(--muted);min-height:42px}.client-logo{max-width:170px;max-height:72px;object-fit:contain}.empty{text-align:center;padding:45px;color:var(--muted)}@media(max-width:800px){.login-shell{grid-template-columns:1fr}.login-intro{padding:35px}.login-intro h1{font-size:32px}.login-card,.install-card{padding:30px}.col-5,.col-7{grid-column:span 12}.hero,.topbar{align-items:flex-start;gap:15px;flex-direction:column}.checks{grid-template-columns:1fr}.top-actions{width:100%;justify-content:space-between}}
/* mobile-login-fix */@media(max-width:560px){.auth-page{padding:12px}.login-intro{padding:26px 22px}.login-intro h1{font-size:28px}.access-icons{flex-wrap:wrap;gap:10px;margin-top:24px}.access-icons div{padding:8px 10px;gap:8px}.access-icons img{width:40px;height:40px}.login-card,.install-card{padding:24px 20px}}
