:root{--blue:#164a7c;--ink:#212529;--copy:#66717a;--line:#dfe7ed;--pale:#edf4f8}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:#f5f8fa;color:var(--ink);font-family:Raleway,Arial,sans-serif}.login-shell{width:min(960px,calc(100% - 30px));min-height:100vh;margin:auto;display:grid;grid-template-columns:1fr 390px;align-items:center;gap:80px}.login-shell section>img{width:74px}.eyebrow{color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.15em}.login-shell h1,.welcome h1{margin:8px 0;font-size:clamp(38px,5vw,62px);font-weight:300}.login-shell section>p:last-child,.welcome>p:last-child{color:var(--copy);line-height:1.7}.login-shell form{padding:34px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 20px 50px rgba(22,74,124,.12)}form h2{margin:0 0 22px}label{display:block;margin-top:15px;color:#5f6971;font-size:11px;font-weight:700}input{width:100%;height:46px;margin-top:7px;padding:0 12px;border:1px solid #ccd7df;border-radius:7px;font:inherit}form button{width:100%;height:48px;margin-top:22px;border:0;border-radius:7px;color:#fff;background:var(--blue);font-weight:800}form>a{display:block;margin-top:17px;color:var(--blue);font-size:10px;text-align:center}.error{padding:10px;border-radius:7px;color:#8b3434;background:#fff0f0;font-size:11px}.panel-shell{width:min(1120px,calc(100% - 30px));margin:auto;padding:25px 0}.panel-shell header{display:flex;align-items:center;gap:10px}.panel-shell header img{width:45px}.panel-shell header strong,.panel-shell header span{display:block}.panel-shell header span{color:#7e8991;font-size:9px}.panel-shell header a{margin-left:auto;color:var(--blue);font-size:10px}.welcome{padding:80px 0 34px}.module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.module-grid article{padding:24px;border:1px solid var(--line);border-radius:11px;background:#fff}.module-grid article>span{width:40px;height:40px;display:grid;place-items:center;border-radius:8px;color:var(--blue);background:var(--pale)}.module-grid h2{font-size:16px}.module-grid p{color:var(--copy);font-size:10px}@media(max-width:700px){.login-shell{padding:45px 0;grid-template-columns:1fr;gap:30px}.module-grid{grid-template-columns:1fr}.welcome{padding-top:55px}}
