:root{color-scheme:dark;font-family:system-ui,-apple-system,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at top,#163b60 0,#071b2d 55%,#03111e 100%);color:#f5f8fb}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(100%,600px);padding:38px;border:1px solid #6d89a2;border-radius:24px;background:rgba(8,31,50,.9);box-shadow:0 24px 70px rgba(0,0,0,.35)}.logo{display:block;width:108px;height:auto;margin:0 auto 12px;padding:8px;border:1px solid #89a5bb;border-radius:14px}h1{text-align:center;font-size:2.3rem;margin:.25rem 0}.subtitle,.help{text-align:center;color:#b8ccdc;letter-spacing:.08em}.help{letter-spacing:0;line-height:1.5}label{display:block;font-weight:700;margin:18px 0 8px}input{width:100%;min-height:54px;border:1px solid #9fb2c2;border-radius:10px;background:#f5f7fa;color:#102538;padding:0 15px;font:inherit}.password-control{display:flex}.password-control input{border-radius:10px 0 0 10px}.password-control button{min-width:92px;border:1px solid #9fb2c2;border-left:0;border-radius:0 10px 10px 0;background:#d8e4ed;color:#102538;font-weight:700}.primary{width:100%;min-height:54px;margin-top:24px;border:0;border-radius:10px;background:#1781dd;color:#fff;font-size:1.05rem;font-weight:800;cursor:pointer}.forgot{display:block;text-align:center;color:#fff;margin-top:20px;font-weight:700}.alert{padding:12px 14px;border-radius:9px;background:#6d2630;color:#fff;margin:16px 0}.alert.neutral{background:#153f60}.caps{color:#ffd277;margin:8px 0 0}input:focus,button:focus,a:focus{outline:3px solid #69b8ff;outline-offset:3px}@media(max-width:560px){.login-shell{padding:12px}.login-card{padding:24px 18px;border-radius:17px}h1{font-size:1.9rem}}

/* KLYS company portal refresh */
:root{--bg-top:#123b78;--bg:#0a2a57;--bg-dark:#071c3b;--line:rgba(255,255,255,.2);--action:#2458d3;--action-dark:#173c9d;font-family:Arial,Helvetica,sans-serif}
body.login-page{background:radial-gradient(1200px 620px at 50% 18%,var(--bg-top) 0%,var(--bg) 38%,var(--bg-dark) 100%)}
.login-page::before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.035),transparent 42%,rgba(0,0,0,.15))}
.login-shell{position:relative;z-index:1;padding:28px 16px}
.login-card{width:min(100%,560px);padding:clamp(27px,4vw,38px);border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,.065));box-shadow:0 22px 70px rgba(0,0,0,.34);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.login-header{text-align:center}.logo-frame{width:184px;height:184px;margin:0 auto 15px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.38);border-radius:20px;background:rgba(255,255,255,.12);box-shadow:0 12px 32px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.18)}
.logo{width:168px;height:168px;margin:0;padding:0;border:0;border-radius:12px;object-fit:cover;box-shadow:0 4px 16px rgba(0,0,0,.28)}.login-header h1{margin:0;color:#fff;font-size:clamp(2.8rem,9vw,3.65rem);font-weight:900;line-height:1;letter-spacing:.04em;text-shadow:0 3px 16px rgba(0,0,0,.22)}
.system-name{margin:10px 0 0;color:#e9f1ff;font-size:clamp(.76rem,2.5vw,.95rem);font-weight:800;letter-spacing:.11em}.portal-name{display:inline-block;margin:12px 0 0;padding:6px 13px;border:1px solid rgba(222,236,255,.26);border-radius:999px;background:rgba(4,25,55,.38);color:#d7e5ff;font-size:.72rem;font-weight:800;letter-spacing:.12em}
.login-card form{margin-top:26px}.field-group{margin-top:17px}.field-group label{margin:0 0 8px;color:#fff;font-size:.96rem;font-weight:800}.login-card input{min-height:56px;margin:0;padding:14px 17px;border-radius:12px;background:#f8fbff;color:#10223b;font:700 1rem/1.2 Arial,Helvetica,sans-serif;box-shadow:0 7px 18px rgba(0,0,0,.14)}
.password-control input{flex:1 1 auto;min-width:0;border-radius:12px 0 0 12px}.password-control button{flex:0 0 96px;min-height:56px;border-color:#fff;border-radius:0 12px 12px 0;background:#e9f0fa;color:#12345f;font:800 .88rem/1 Arial,Helvetica,sans-serif;cursor:pointer}
.primary{min-height:56px;margin-top:24px;padding:14px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:linear-gradient(180deg,var(--action),var(--action-dark));font:800 1.04rem/1.2 Arial,Helvetica,sans-serif;box-shadow:0 12px 28px rgba(6,29,83,.4);transition:transform .15s ease,filter .15s ease}.primary:hover{filter:brightness(1.1);transform:translateY(-1px)}
.forgot{width:max-content;max-width:100%;margin:19px auto 0;padding:4px;color:#dbe7ff;text-underline-offset:4px}.login-footer{margin-top:18px;color:#afc2df;font-size:.8rem;text-align:center}.alert{margin:20px 0 0;border:1px solid rgba(255,184,184,.5);border-left:4px solid #ff8585;border-radius:10px;background:rgba(91,9,22,.48);font-weight:700}
@media(max-width:560px){.login-shell{place-items:start center;padding:14px 10px}.login-card{padding:23px 18px;border-radius:18px}.logo-frame{width:142px;height:142px}.logo{width:128px;height:128px}.password-control button{flex-basis:82px}.system-name{letter-spacing:.08em}.portal-name{font-size:.66rem;letter-spacing:.09em}}
@media(prefers-reduced-motion:reduce){.primary{transition:none}}

/* OTP kurtarma ekranındaki soru alanları */
.login-card select{display:block;width:100%;min-height:56px;margin:0;padding:14px 46px 14px 17px;border:1px solid #9fb2c2;border-radius:12px;background:#f8fbff;color:#10223b;font:700 1rem/1.2 Arial,Helvetica,sans-serif;box-shadow:0 7px 18px rgba(0,0,0,.14);appearance:auto}
.login-card select:focus{outline:3px solid #69b8ff;outline-offset:3px}
.security-question{margin-top:22px;padding:18px;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:rgba(4,25,55,.22)}
.security-question .field-group:first-child{margin-top:0}
.password-policy{margin:14px 0 0;color:#dbe7ff;font-size:.9rem;line-height:1.45}
.recovery-save{position:sticky;bottom:10px;z-index:5;box-shadow:0 12px 30px rgba(0,0,0,.5)}
