*{box-sizing:border-box}body{margin:0;background:#f4f7fa;color:#172033;font-family:Arial,sans-serif}.shell,main,.bar{max-width:1120px;margin:auto;padding:24px}.login-shell{max-width:500px;padding-top:8vh}.card{background:#fff;border:1px solid #e0e7ef;border-radius:14px;padding:24px;box-shadow:0 4px 18px rgba(25,45,70,.05);margin-bottom:20px}.installer{max-width:760px;margin:auto}.brand{display:flex;gap:14px;align-items:center;margin-bottom:24px}.brand h1,.brand p{margin:0}.logo{width:50px;height:50px;border-radius:12px;background:#173f6b;color:#fff;display:grid;place-items:center;font-size:28px;font-weight:bold}h1,h2{color:#173f6b}h2{margin-top:28px;font-size:18px;border-bottom:1px solid #edf1f5;padding-bottom:8px}label{display:block;font-weight:700;margin:13px 0 6px}input{width:100%;padding:11px 12px;border:1px solid #bcc8d4;border-radius:8px;font-size:15px}button{margin-top:20px;border:0;border-radius:8px;background:#173f6b;color:#fff;padding:12px 18px;font-weight:700;cursor:pointer}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.alert{padding:12px 14px;border-radius:8px;margin:12px 0}.error{background:#fde7e7}.ok{background:#e3f5e8}header{background:#173f6b;color:#fff}.bar{display:flex;justify-content:space-between;padding-top:15px;padding-bottom:15px}.bar a{color:#fff}.hero h1{margin:6px 0}.hero p{margin:0;color:#64748b}.eyebrow{font-size:12px;font-weight:bold;color:#64748b}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat b{display:block;font-size:32px;color:#173f6b}.stat span,.muted{color:#64748b}@media(max-width:650px){.grid2,.stats{grid-template-columns:1fr}.bar{padding-left:16px;padding-right:16px}}
