:root{
    --navy:#062a5b;
    --navy-deep:#031b3d;
    --navy-mid:#0b3f80;
    --blue:#1f6feb;
    --blue-soft:#eaf3ff;
    --ink:#112b4f;
    --muted:#657894;
    --line:#dce5f0;
    --surface:#ffffff;
    --page:#f3f7fc;
    --danger:#b42318;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--page)}
button,input{font:inherit}
.isl-login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(480px,.96fr);background:#fff}
.isl-brand-panel{position:relative;overflow:hidden;min-height:720px;color:#fff;background:
radial-gradient(circle at 72% 22%,rgba(93,163,255,.32),transparent 30%),
linear-gradient(135deg,rgba(2,24,57,.93),rgba(5,56,116,.84)),
linear-gradient(180deg,#0a396e,#031b3d)}
.isl-brand-panel:before,.isl-brand-panel:after{content:"";position:absolute;pointer-events:none}
.isl-brand-panel:before{inset:0;background:
linear-gradient(90deg,transparent 46%,rgba(255,255,255,.05) 46%,rgba(255,255,255,.05) 47%,transparent 47%),
linear-gradient(0deg,transparent 73%,rgba(255,255,255,.04) 73%,rgba(255,255,255,.04) 74%,transparent 74%)}
.isl-brand-panel:after{width:620px;height:620px;right:-200px;bottom:-280px;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 80px rgba(255,255,255,.02),0 0 0 160px rgba(255,255,255,.015)}
.isl-brand-overlay{position:absolute;inset:auto 8% 12% auto;width:46%;height:52%;opacity:.11;background:
linear-gradient(90deg,transparent 0 10%,#fff 10% 14%,transparent 14% 28%,#fff 28% 32%,transparent 32% 46%,#fff 46% 50%,transparent 50%),
linear-gradient(#fff,#fff);clip-path:polygon(4% 95%,4% 34%,23% 34%,23% 5%,74% 5%,74% 38%,96% 38%,96% 95%)}
.isl-brand-content{position:relative;z-index:1;height:100%;max-width:760px;margin:0 auto;padding:54px 64px 38px;display:flex;flex-direction:column}
.isl-brand{display:inline-flex;align-items:center;gap:16px;color:#fff;text-decoration:none;width:max-content}
.isl-brand strong,.isl-auth-brand strong{display:block;font-size:33px;line-height:1;font-weight:800;letter-spacing:-1px}
.isl-brand small,.isl-auth-brand small{display:block;margin-top:7px;font-size:14px;letter-spacing:.02em;opacity:.78}
.isl-logo{width:64px;height:64px;display:block}
.isl-logo svg{width:100%;height:100%;overflow:visible}
.isl-logo path{fill:#fff;stroke:#73b5ff;stroke-width:2.3;stroke-linejoin:round}
.isl-logo .isl-logo-line{fill:none;stroke:#77b8ff;stroke-width:2}
.isl-logo .isl-logo-wave{fill:none;stroke:#8ac2ff;stroke-width:2;stroke-linecap:round}
.isl-brand-message{margin-top:110px;max-width:600px}
.isl-kicker{text-transform:uppercase;letter-spacing:.17em;font-size:12px;font-weight:800;color:#90c4ff}
.isl-brand-message h1{font-family:Georgia,"Times New Roman",serif;font-size:58px;line-height:1.04;letter-spacing:-1.6px;margin:18px 0 24px}
.isl-brand-message p{font-size:19px;line-height:1.65;color:#d7e5f7;max-width:570px;margin:0}
.isl-benefits{display:grid;gap:20px;margin-top:46px;max-width:580px}
.isl-benefits article{display:grid;grid-template-columns:52px 1fr;gap:16px;align-items:center}
.isl-benefit-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12);font-size:21px}
.isl-benefits strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:17px}
.isl-benefits small{display:block;margin-top:4px;color:#cbdcf0;font-size:14px}
.isl-brand-footer{margin-top:auto;padding-top:42px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;color:#b9cee6;font-size:12px}

.isl-auth-panel{min-width:0;background:linear-gradient(135deg,#f9fbfe,#eef4fb);padding:34px 54px 28px;display:flex;flex-direction:column}
.isl-auth-topline{align-self:flex-end;display:flex;gap:12px;align-items:center;font-size:12px;font-weight:700;color:#536983}
.isl-auth-topline i,.isl-trust i{width:3px;height:3px;background:#8aa0b9;border-radius:50%}
.isl-auth-card{width:min(100%,650px);margin:auto;background:#fff;border:1px solid #e4ebf3;border-radius:24px;padding:48px 54px 38px;box-shadow:0 24px 70px rgba(19,55,98,.12)}
.isl-auth-brand{display:flex;align-items:center;gap:14px}
.isl-auth-brand strong{font-size:38px;color:#082d61}
.isl-auth-brand small{font-size:15px;color:#8190a6;opacity:1}
.isl-logo-small{width:60px;height:60px}
.isl-logo-small path{fill:#fff;stroke:#0a468e}
.isl-rule{height:1px;background:linear-gradient(90deg,#b8cee8,transparent);margin:25px 0 34px}
.isl-auth-heading{margin-bottom:30px}
.isl-kicker-blue{color:#2a6fc8}
.isl-auth-heading h2{font-family:Georgia,"Times New Roman",serif;font-size:38px;color:#0b3367;letter-spacing:-.7px;margin:8px 0 9px}
.isl-auth-heading p{color:var(--muted);font-size:16px;line-height:1.55;margin:0;max-width:520px}
.isl-alert{display:grid;gap:4px;background:#fff3f2;border:1px solid #f2c7c2;color:var(--danger);border-radius:12px;padding:12px 14px;margin-bottom:18px}
.isl-alert span{font-size:13px}
.isl-form{display:grid;gap:20px}
.isl-field{display:grid;gap:8px}
.isl-field label{font-size:14px;font-weight:750;color:#1b3d68}
.isl-input-wrap{min-height:56px;border:1px solid #cddaea;border-radius:12px;background:#fff;display:grid;grid-template-columns:36px 1fr auto;align-items:center;padding:0 12px;transition:border-color .16s,box-shadow .16s}
.isl-input-wrap:focus-within{border-color:#5b98ea;box-shadow:0 0 0 4px rgba(31,111,235,.1)}
.isl-input-wrap>span{color:#6d85a1;text-align:center}
.isl-input-wrap input{width:100%;min-width:0;border:0;outline:0;padding:16px 8px;color:#102c50;background:transparent;font-size:16px}
.isl-input-wrap input::placeholder{color:#9ba9bb}
.isl-password-toggle{border:0;background:transparent;color:#356bb0;font-size:12px;font-weight:800;padding:10px;cursor:pointer}
.isl-password-toggle:focus-visible,.isl-submit:focus-visible,input:focus-visible{outline:3px solid rgba(31,111,235,.28);outline-offset:2px}
.isl-form-meta{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap}
.isl-remember{display:flex;gap:9px;align-items:center;font-size:14px;color:#213f65;cursor:pointer}
.isl-remember input{width:18px;height:18px;accent-color:var(--blue)}
.isl-help-text{font-size:12px;color:#8796a9}
.isl-submit{height:58px;border:0;border-radius:11px;background:linear-gradient(135deg,#2878ec,#1462dc);color:#fff;display:flex;justify-content:center;align-items:center;gap:14px;font-weight:800;font-size:16px;cursor:pointer;box-shadow:0 12px 24px rgba(31,111,235,.2);transition:filter .16s,transform .16s}
.isl-submit:hover{filter:brightness(.98);transform:translateY(-1px)}
.isl-submit span:last-child{font-size:24px;font-weight:400}
.isl-trust{border-top:1px solid #e3eaf2;margin-top:30px;padding-top:24px;display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap;color:#6f829a;font-size:11px;font-weight:700}
.isl-auth-footer{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:20px;color:#778aa2;font-size:11px}

@media(max-width:1100px){
    .isl-login-shell{grid-template-columns:minmax(0,.9fr) minmax(450px,1.1fr)}
    .isl-brand-content{padding:42px}
    .isl-brand-message{margin-top:80px}
    .isl-brand-message h1{font-size:46px}
    .isl-auth-panel{padding:28px}
}
@media(max-width:860px){
    .isl-login-shell{display:block;background:#f2f6fb}
    .isl-brand-panel{min-height:auto}
    .isl-brand-content{padding:28px 24px 34px}
    .isl-brand-message{margin-top:50px}
    .isl-brand-message h1{font-size:42px}
    .isl-benefits{grid-template-columns:1fr;gap:14px;margin-top:28px}
    .isl-brand-footer{display:none}
    .isl-auth-panel{padding:26px 18px 34px}
    .isl-auth-topline{display:none}
    .isl-auth-card{margin:0 auto;padding:34px 30px;border-radius:20px}
    .isl-auth-footer{width:min(100%,650px);margin:0 auto}
}
@media(max-width:520px){
    .isl-brand-message h1{font-size:36px}
    .isl-brand-message p{font-size:16px}
    .isl-benefits article{grid-template-columns:44px 1fr}
    .isl-benefit-icon{width:44px;height:44px}
    .isl-auth-panel{padding:16px 12px 28px}
    .isl-auth-card{padding:28px 20px;border-radius:17px}
    .isl-auth-brand strong{font-size:30px}
    .isl-auth-brand small{font-size:12px}
    .isl-logo-small{width:50px;height:50px}
    .isl-auth-heading h2{font-size:32px}
    .isl-input-wrap{min-height:54px}
    .isl-form-meta{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){
    *{scroll-behavior:auto!important;transition:none!important}
}
