:root{--auth-navy:#07384b;--auth-navy-deep:#031f31;--auth-teal:#0d8175;--auth-mint:#85dfcd;--auth-gold:#f2c45b;--auth-ink:#0b2b3d;--auth-muted:#627985;--auth-line:#dce8e8;--auth-paper:#f7fbfa;--auth-white:#fff;--auth-danger:#c74745;--auth-warning:#b67808}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}.auth-page{min-height:100vh;color:var(--auth-ink);background:radial-gradient(circle at 88% 6%,rgba(28,151,137,.11),transparent 25%),linear-gradient(145deg,#edf6f5,#f8fbfb 55%,#e8f2f1);padding:clamp(12px,3vw,34px);display:grid;place-items:center}.auth-stage{width:min(1240px,100%)}
.auth-shell{position:relative;min-height:min(800px,calc(100vh - 68px));display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);overflow:hidden;border:1px solid rgba(15,90,98,.12);border-radius:34px;background:#fff;box-shadow:0 30px 90px rgba(3,39,54,.18)}
.auth-story{position:relative;isolation:isolate;overflow:hidden;padding:clamp(32px,5vw,70px);color:#fff;background:radial-gradient(circle at 80% 12%,rgba(123,225,205,.24),transparent 26%),radial-gradient(circle at 10% 94%,rgba(242,196,91,.14),transparent 30%),linear-gradient(145deg,var(--auth-navy-deep),var(--auth-navy) 52%,var(--auth-teal) 140%);display:flex;flex-direction:column}.auth-story:before,.auth-story:after{content:"";position:absolute;z-index:-1;border:1px solid rgba(255,255,255,.1);border-radius:50%}.auth-story:before{width:420px;height:420px;right:-190px;top:-170px;box-shadow:0 0 0 55px rgba(255,255,255,.018),0 0 0 110px rgba(255,255,255,.012)}.auth-story:after{width:260px;height:260px;left:-130px;bottom:-130px;box-shadow:0 0 0 48px rgba(255,255,255,.018)}
.auth-brand-row{position:relative;z-index:2;display:flex;align-items:center;gap:10px}.auth-logo{width:138px;height:54px;padding:7px 11px;border:1px solid rgba(255,255,255,.38);border-radius:14px;background:#fff;display:grid;place-items:center;box-shadow:0 12px 28px rgba(0,22,34,.18)}.auth-logo img{display:block;max-width:100%;max-height:100%;object-fit:contain}.auth-brand-plus{font-weight:900;color:#9bc8c3;font-size:13px}
.auth-story-copy{position:relative;z-index:2;margin:auto 0}.auth-eyebrow,.auth-card-kicker{font-size:11px;font-weight:900;letter-spacing:.17em}.auth-eyebrow{display:flex;align-items:center;gap:10px;color:var(--auth-gold)}.auth-eyebrow:before{content:"";width:30px;height:2px;background:var(--auth-gold)}.auth-story h1{font-size:clamp(48px,5.2vw,76px);letter-spacing:-.055em;line-height:.98;margin:20px 0 24px}.auth-story h1 em{font-style:normal;color:var(--auth-mint)}.auth-story-copy>p{max-width:650px;margin:0;color:#c9e2df;font-size:clamp(16px,1.5vw,19px);line-height:1.72}
.auth-capabilities{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:auto;padding-top:46px}.auth-capabilities>div{min-width:0;padding:15px;border:1px solid rgba(255,255,255,.1);border-radius:17px;background:rgba(2,30,43,.34);backdrop-filter:blur(8px)}.auth-capabilities span{display:block;color:var(--auth-gold);font-size:10px;font-weight:900}.auth-capabilities strong{display:block;margin-top:7px;font-size:14px}.auth-capabilities small{display:block;margin-top:5px;color:#a8cbc7;font-size:11px;line-height:1.4}
.auth-orbit{position:absolute;right:-46px;top:43%;width:150px;height:150px;border:1px solid rgba(255,255,255,.13);border-radius:50%;opacity:.58;display:grid;place-items:center}.auth-orbit:before{content:"";position:absolute;inset:20px;border:1px dashed rgba(242,196,91,.42);border-radius:50%}.auth-orbit b{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;color:var(--auth-navy);background:var(--auth-gold);font-size:24px}.auth-orbit i{position:absolute;width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 0 5px rgba(255,255,255,.1)}.auth-orbit i:nth-child(1){top:-4px}.auth-orbit i:nth-child(2){right:-4px}.auth-orbit i:nth-child(3){bottom:8px;left:9px}
.auth-form-side{padding:clamp(28px,5vw,70px);display:grid;place-items:center;background:linear-gradient(155deg,#fff,#f8fbfb)}.auth-card{width:min(440px,100%)}.auth-card-kicker{color:var(--auth-teal)}.auth-card h2{margin:12px 0 9px;font-size:clamp(32px,3vw,43px);line-height:1.07;letter-spacing:-.045em}.auth-card-lead{margin:0 0 30px;color:var(--auth-muted);font-size:14px;line-height:1.62}.auth-field{margin-top:19px}.auth-field>label,.auth-label-row label{font-size:12px;font-weight:850}.auth-label-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.auth-label-row a,.auth-back{color:var(--auth-teal);font-size:12px;font-weight:850;text-decoration:none}.auth-label-row a:hover,.auth-back:hover{text-decoration:underline}.auth-field>label{display:block;margin-bottom:8px}
.auth-input-wrap{position:relative}.auth-input-wrap input,.auth-input-wrap select{width:100%;min-height:54px;padding:0 52px 0 46px;border:1.5px solid var(--auth-line);border-radius:14px;background:#fff;color:var(--auth-ink);font:inherit;font-size:14px;outline:none;transition:.18s ease}.auth-input-wrap input::placeholder{color:#9aadb4}.auth-input-wrap input:focus{border-color:var(--auth-teal);box-shadow:0 0 0 4px rgba(13,129,117,.1)}.auth-input-icon{position:absolute;z-index:1;left:17px;top:50%;transform:translateY(-50%);color:#4a9e94;font-size:9px}.auth-input-icon.lock{font-size:11px}.auth-input-icon.mail{font-size:15px;font-weight:900}.password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:0;border-radius:9px;background:#edf7f5;color:#087268;padding:8px 9px;font-size:10px;font-weight:900;cursor:pointer}.password-toggle:hover{background:#dff1ee}.caps-warning{display:none;margin-top:7px;color:var(--auth-warning);font-weight:750}.caps-warning.show{display:block}
.auth-submit{width:100%;min-height:56px;margin-top:25px;padding:0 17px;border:0;border-radius:15px;color:#fff;background:linear-gradient(120deg,#075b69,var(--auth-teal));font:inherit;font-size:14px;font-weight:900;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 14px 28px rgba(5,99,99,.2);transition:transform .18s ease,box-shadow .18s ease}.auth-submit:hover{transform:translateY(-2px);box-shadow:0 18px 32px rgba(5,99,99,.25)}.auth-submit i{width:31px;height:31px;border-radius:10px;background:rgba(255,255,255,.14);display:grid;place-items:center;font-style:normal;font-size:18px}.auth-submit.loading{pointer-events:none;opacity:.82}.auth-trust{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:18px;color:#799097}.auth-trust span{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:#e2f3ef;color:#0b7f70;font-size:10px;font-weight:950}.auth-credit{margin-top:34px;padding-top:18px;border-top:1px solid #e6eeee;color:#8ba0a7;text-align:center;font-size:10px;letter-spacing:.08em}
.auth-alert{display:flex;align-items:flex-start;gap:10px;margin:0 0 18px;padding:12px 13px;border-radius:13px}.auth-alert>span{flex:0 0 26px;width:26px;height:26px;border-radius:9px;display:grid;place-items:center;font-weight:950}.auth-alert div{display:grid;gap:3px}.auth-alert strong{font-size:12px}.auth-alert small{font-size:11px;line-height:1.42}.auth-alert.error{color:#8e2928;background:#fff0ef;border:1px solid #f2cfcd}.auth-alert.error>span{background:#f8d6d3}.auth-alert.warning{color:#775407;background:#fff8df;border:1px solid #f0e0a5}.auth-alert.warning>span{background:#f7e7aa}
.auth-shell-compact{min-height:min(720px,calc(100vh - 68px))}.reset-story .auth-story-copy{margin:auto 0 20px}.reset-story h1{font-size:clamp(46px,5vw,70px)}.reset-security{position:relative;z-index:2;display:flex;align-items:center;gap:12px;padding:16px;border-radius:16px;background:rgba(3,30,43,.34);border:1px solid rgba(255,255,255,.1)}.reset-security>span{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;color:var(--auth-navy);background:var(--auth-gold);font-weight:950}.reset-security div{display:grid;gap:4px}.reset-security strong{font-size:13px}.reset-security small{color:#b8d5d2;font-size:11px;line-height:1.4}.auth-back{display:inline-flex;margin-bottom:40px}.auth-privacy-note{margin:16px 0 0;color:#81949b;font-size:11px;line-height:1.5;text-align:center}
.auth-message-shell{min-height:min(680px,calc(100vh - 68px));display:grid;place-items:center;padding:clamp(24px,5vw,80px);border:1px solid rgba(15,90,98,.12);border-radius:34px;background:radial-gradient(circle at 15% 5%,rgba(65,194,171,.13),transparent 30%),#fff;box-shadow:0 30px 90px rgba(3,39,54,.16)}.auth-message-card{width:min(560px,100%);text-align:center}.auth-message-card h1{margin:14px 0 13px;font-size:clamp(36px,5vw,52px);line-height:1.05;letter-spacing:-.05em}.auth-message-card>p{margin:0 auto;color:var(--auth-muted);line-height:1.7}.auth-message-card>small{display:block;margin-top:18px;color:#81949b;line-height:1.55}.auth-message-icon{width:66px;height:66px;margin:0 auto 22px;border-radius:21px;display:grid;place-items:center;background:linear-gradient(145deg,#daf4ed,#b9e8dc);color:#087568;font-size:29px;font-weight:950;box-shadow:0 13px 30px rgba(12,132,112,.15)}.auth-message-icon.error{background:#ffe8e6;color:#b93e3b}.auth-link-button{text-decoration:none}.auth-password-card{text-align:left}.auth-password-card>h1,.auth-password-card>p{text-align:center}.auth-password-card .auth-card-kicker{display:block;text-align:center}.auth-password-card ul.errorlist{margin:7px 0 0;padding-left:19px;color:var(--auth-danger);font-size:11px}.auth-password-card .auth-input-wrap input{padding-left:46px}
@media(max-width:980px){.auth-page{padding:0;display:block}.auth-stage{width:100%}.auth-shell{min-height:100vh;grid-template-columns:1fr;border:0;border-radius:0}.auth-story{min-height:390px;padding:32px}.auth-orbit{right:5%;top:35%}.auth-story-copy{margin:55px 0 20px}.auth-story h1{font-size:clamp(43px,9vw,66px)}.auth-capabilities{display:none}.auth-form-side{padding:44px 24px}.auth-message-shell{min-height:100vh;border:0;border-radius:0}}
@media(max-width:580px){.auth-story{min-height:340px;padding:24px}.auth-logo{width:110px;height:45px}.auth-orbit{display:none}.auth-story-copy{margin:46px 0 0}.auth-story h1{margin:15px 0;font-size:42px}.auth-story-copy>p{font-size:14px;line-height:1.6}.auth-form-side{padding:37px 20px 44px}.auth-card h2{font-size:34px}.auth-card-lead{margin-bottom:24px}.auth-credit{margin-top:26px}.reset-security{margin-top:24px}.auth-message-shell{padding:24px}.auth-message-card h1{font-size:37px}}
.auth-card-reset .auth-back{display:flex;width:max-content}.auth-card-reset .auth-card-kicker{display:block}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* Marka odaklı giriş ekranı; şifre yenileme yerleşiminden bağımsızdır. */
.auth-login-page {
    position: relative;
    isolation: isolate;
    display: grid;
    min-height: 100vh;
    min-height: 100svh;
    padding: 40px 20px;
    background:
        radial-gradient(ellipse at 12% 15%, rgba(34, 134, 132, .32), transparent 48%),
        radial-gradient(ellipse at 90% 88%, rgba(29, 145, 110, .3), transparent 48%),
        linear-gradient(135deg, #071e2b, #0b333e 58%, #083d3d);
}
.auth-login-page::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background-image: linear-gradient(rgba(214, 246, 237, .025) 1px, transparent 1px),
                      linear-gradient(90deg, rgba(214, 246, 237, .025) 1px, transparent 1px);
    background-size: 88px 88px;
    mask-image: radial-gradient(ellipse at center, #000, transparent 80%);
}
.auth-login-page .auth-stage { width: min(660px, 100%); min-width: 0; }
.login-shell {
    position: relative;
    padding: 32px 32px 42px;
    border: 1px solid rgba(201, 240, 225, .2);
    border-radius: 30px;
    background: linear-gradient(150deg, rgba(46, 89, 101, .62), rgba(11, 41, 53, .82));
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    box-shadow: 0 30px 90px rgba(0, 14, 24, .3), inset 0 1px 0 rgba(255, 255, 255, .12);
}
.login-shell::before {
    content: "";
    position: absolute;
    top: -1px;
    left: 15%;
    right: 15%;
    height: 1px;
    background: linear-gradient(90deg, transparent, #b9e6d6, transparent);
}
.login-visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}
.login-brands {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: center;
    gap: 14px;
}
.login-brand {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    height: 132px;
    padding: 15px 12px;
    border: 1px solid rgba(255, 255, 255, .5);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 5px 16px rgba(0, 18, 27, .08);
}
.login-brand img { display: block; width: 100%; height: auto; max-height: 100%; object-fit: contain; }
.login-form { width: min(440px, 100%); margin: 38px auto 0; color: #edf7f3; }
.login-form .auth-field { margin-top: 22px; }
.login-form .auth-field:first-of-type { margin-top: 0; }
.login-form .auth-field>label, .login-form .auth-label-row label { font-size: 13px; font-weight: 600; letter-spacing: .015em; }
.login-form .auth-label-row { gap: 8px; flex-wrap: wrap; }
.login-form .auth-label-row a { font-size: 12px; font-weight: 500; color: #b9d9d1; }
.login-form .auth-label-row a:hover { color: #fff; }
.login-field-icon {
    position: absolute;
    top: 50%;
    left: 18px;
    width: 20px;
    height: 20px;
    transform: translateY(-50%);
    color: #9fc6bf;
    pointer-events: none;
}
.login-form .auth-input-wrap input {
    min-height: 58px;
    padding: 14px 16px 14px 52px;
    border: 1px solid rgba(192, 225, 217, .24);
    border-radius: 13px;
    background: rgba(4, 26, 38, .35);
    color: #f2fcf8;
    caret-color: #c9f3e3;
    font-size: 16px;
}
.login-form .auth-input-wrap input:hover { border-color: rgba(192, 225, 217, .48); }
.login-form .auth-input-wrap input:focus { border-color: #99d8c4; box-shadow: 0 0 0 3px rgba(153, 216, 196, .13); }
.login-form .auth-input-wrap input:-webkit-autofill {
    -webkit-text-fill-color: #f2fcf8;
    -webkit-box-shadow: 0 0 0 1000px #173e49 inset;
    caret-color: #c9f3e3;
}
.login-form .auth-input-wrap input[type=password], .login-form #id_password { padding-right: 78px; }
.login-form .password-toggle { min-height: 40px; padding: 8px 10px; font-size: 11px; font-weight: 600; background: transparent; color: #d2e8e1; }
.login-form .password-toggle:hover { background: rgba(226, 249, 240, .08); }
.login-form .caps-warning { color: #ffda91; }
.login-form .auth-submit {
    position: relative;
    min-height: 56px;
    margin-top: 30px;
    justify-content: center;
    border: 1px solid rgba(211, 249, 232, .55);
    border-radius: 13px;
    background: linear-gradient(110deg, #c5eddc, #9dd9c1);
    color: #093d34;
    font-size: 15px;
    font-weight: 700;
    box-shadow: 0 8px 24px rgba(0, 16, 22, .18);
}
.login-form .auth-submit>svg { position: absolute; right: 20px; width: 21px; height: 21px; }
.login-form .auth-submit:hover { background: linear-gradient(110deg, #d6f5e8, #b0e4d0); transform: translateY(-1px); box-shadow: 0 10px 28px rgba(0, 16, 22, .22); }
.login-form .auth-submit:active { transform: translateY(0); }
.login-form :is(a, button):focus-visible { outline: 3px solid #b9ead7; outline-offset: 4px; }
.login-form .auth-alert { margin-bottom: 22px; }
@media(max-width: 580px) {
    .auth-login-page { padding: 20px 14px; }
    .login-shell { padding: 20px 20px 28px; border-radius: 26px; }
    .login-brands { gap: 10px; }
    .login-brand { height: 96px; padding: 9px 5px; border-radius: 13px; }
    .login-form { margin-top: 30px; }
}
@media(max-width: 360px) {
    .auth-login-page { padding: 14px 10px; }
    .login-shell { padding: 15px 15px 24px; }
    .login-brand { height: 82px; }
}
