/* Rüya Ailem V8.0.6 — OTP Motion görünümü + yönetici onaylı aktivasyon */
.login{--auth-navy:#243967;--auth-blue:#789fbd;--auth-lilac:#9882b2;--auth-peach:#edc7bb;min-height:100svh!important;display:grid!important;grid-template-columns:minmax(360px,.92fr) minmax(440px,1.08fr)!important;background:linear-gradient(145deg,#f7fafc,#f7f5fa 58%,#fbf6f3)!important;overflow:hidden!important;position:relative}
.loginArt{position:relative!important;isolation:isolate;display:flex!important;align-items:center!important;justify-content:center!important;padding:54px!important;overflow:hidden!important;background:linear-gradient(160deg,#f7fafc 0%,#eef5f7 45%,#f5eff7 100%)!important}
.loginArt:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;border:1px solid rgba(121,151,180,.12);box-shadow:0 0 0 72px rgba(151,130,177,.035),0 0 0 145px rgba(121,151,180,.025);animation:v802Orbit 28s linear infinite;z-index:-2}
.loginArt:after{content:"";position:absolute;width:560px;height:430px;border-radius:50%;background:radial-gradient(circle at 30% 35%,rgba(117,161,193,.26),transparent 38%),radial-gradient(circle at 72% 62%,rgba(160,126,181,.23),transparent 40%),radial-gradient(circle at 50% 50%,rgba(239,199,185,.18),transparent 57%);filter:blur(3px);animation:v802Aura 7s ease-in-out infinite alternate;z-index:-3}
.loginBrand{position:relative!important;z-index:2!important;display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;max-width:520px!important}
.loginBrand:before,.loginBrand:after{position:absolute;display:flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid rgba(225,231,237,.86);border-radius:15px;background:rgba(255,255,255,.78);box-shadow:0 12px 30px rgba(42,61,82,.07);backdrop-filter:blur(12px);font-size:9px;font-weight:800;color:#637286;animation:v802Float 4.8s ease-in-out infinite}
.loginBrand:before{content:"●  Okul";left:-90px;top:10px}.loginBrand:after{content:"✓  Güvenli giriş";right:-122px;bottom:30px;animation-delay:-2.2s}
.loginBrand img{width:190px!important;height:118px!important;object-fit:contain!important;border-radius:25px!important;background:#fff!important;box-shadow:0 18px 48px rgba(49,65,89,.09)!important;mix-blend-mode:normal!important;animation:v802Logo .78s cubic-bezier(.16,.85,.3,1) both}
.loginBrand h1{margin:20px 0 3px!important;font-size:41px!important;line-height:1.05!important;color:#263a55!important;font-weight:680!important;letter-spacing:-.045em!important}.loginBrand h2{margin:0!important;font-size:20px!important;color:#7d6f97!important;font-weight:650!important}.loginBrand p{margin:13px 0 0!important;color:#7c8997!important;font-size:13px!important;line-height:1.6!important}
.loginPanel{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:42px 42px 112px!important;background:rgba(255,255,255,.7)!important;backdrop-filter:blur(18px)}
.loginBox{width:min(490px,100%)!important;padding:28px 29px 26px!important;border:1px solid rgba(220,226,233,.95)!important;border-radius:30px!important;background:rgba(255,255,255,.94)!important;box-shadow:0 30px 74px rgba(43,58,78,.10)!important;animation:v802Panel .72s .08s cubic-bezier(.18,.82,.33,1) both}
.loginTabs{display:grid!important;grid-template-columns:1fr 1fr!important;margin-bottom:25px!important;padding:4px!important;border-radius:15px!important;background:#f0f2f1!important}.loginTabs button{min-height:44px!important;border:0!important;border-radius:12px!important;background:transparent!important;font-size:12px!important}.loginTabs button.active{color:#314b78!important;background:#fff!important;box-shadow:0 7px 18px rgba(45,59,76,.08)!important}
.loginBox h2{font-size:29px!important;line-height:1.1!important;letter-spacing:-.04em!important;color:#283850!important;margin:2px 0 8px!important}.loginBox>p,.loginBox form>p{color:#7c8796!important;font-size:12px!important;line-height:1.55!important;margin:0 0 17px!important}
.loginBox .field{position:relative!important;margin:0 0 11px!important;padding:9px 12px!important;border:1px solid #e1e7ed!important;border-radius:17px!important;background:#fbfcfd!important;transition:.18s ease}.loginBox .field:focus-within{border-color:#b1a4c7!important;box-shadow:0 0 0 4px rgba(148,128,179,.09)!important;transform:translateY(-1px)}.loginBox .field label{font-size:9px!important;color:#7f8a99!important;margin-bottom:3px!important}.loginBox .field input{width:100%!important;min-height:34px!important;border:0!important;outline:0!important;background:transparent!important;padding:0!important;font-size:14px!important;color:#26394f!important;box-shadow:none!important}
.loginButton{position:relative!important;overflow:hidden!important;width:100%!important;min-height:53px!important;margin-top:14px!important;border:0!important;border-radius:16px!important;background:linear-gradient(105deg,#7598b7 0%,#8b84b2 54%,#a487b0 100%)!important;color:#fff!important;box-shadow:0 14px 28px rgba(77,91,128,.16)!important}.loginButton:after{content:"";position:absolute;inset:0 auto 0 -45%;width:32%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);transform:skewX(-18deg);animation:v802Sheen 3.6s 1.2s infinite}.loginButton>*{position:relative;z-index:1}.authLinks{display:flex!important;justify-content:space-between!important;gap:12px!important;margin-top:10px!important}.authLinks button{border:0!important;background:transparent!important;color:#49678f!important;font-size:11px!important;font-weight:750!important}.loginHint{display:none!important}.statusBox{font-size:11px!important}
.v802InstallCard{position:fixed;z-index:950;right:42px;bottom:22px;width:min(490px,calc(100vw - 84px));display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:11px;align-items:center;padding:11px 12px;border:1px solid #dfe6eb;border-radius:17px;background:linear-gradient(135deg,rgba(242,247,248,.97),rgba(246,240,248,.97));box-shadow:0 18px 48px rgba(42,57,75,.12);backdrop-filter:blur(16px);text-align:left;color:#334960}.v802InstallCard img{width:44px;height:44px;border-radius:12px}.v802InstallCard span b,.v802InstallCard span small{display:block}.v802InstallCard span b{font-size:10px}.v802InstallCard span small{margin-top:3px;color:#7b8898;font-size:8.5px;line-height:1.4}.v802InstallCard i{font-style:normal;font-size:8px;font-weight:850;color:#fff;background:#5b6f9e;border-radius:11px;padding:9px 10px;white-space:nowrap}
/* existing V8 controls, now styled without modifying React-owned nodes */
.role-parent #v800PushPrompt{position:relative!important;z-index:4!important;width:auto!important;max-width:1480px!important;margin:14px auto!important;box-sizing:border-box!important}
.parentMobileDrawer{grid-template-rows:auto auto minmax(0,1fr) auto!important}.parentDrawerFooter{z-index:4!important;display:block!important;background:#f8f9fc!important}.parentDrawerLogout{display:grid!important;visibility:visible!important;opacity:1!important;min-height:52px!important}.parentDrawerNav{min-height:0!important}
.parentAccessLayout{display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr)!important;align-items:start!important;gap:16px!important}.parentAccessLayout>#v800ActivationAdmin{grid-column:1/-1!important;grid-row:1!important;margin:0!important}.parentAccessLayout>.card:first-of-type{grid-column:1!important;grid-row:2!important;min-width:0}.parentAccessLayout>form.card{grid-column:2!important;grid-row:2!important;min-width:0;position:sticky!important;top:18px!important}.parentAccessLayout .parentAccountCard{grid-template-columns:minmax(0,1fr) minmax(220px,.55fr)!important;gap:14px!important}.parentAccessLayout .parentAccountActions{min-width:0!important}.parentAccessLayout #v800ActivationAdmin{border-radius:20px!important}
.v802RecoveryCard{max-width:420px;padding:18px;border:1px solid #dfe5eb;border-radius:18px;background:#fff;box-shadow:0 18px 50px rgba(39,53,72,.09);text-align:center}.v802RecoveryCard b,.v802RecoveryCard span{display:block}.v802RecoveryCard b{color:#344960;font-size:14px}.v802RecoveryCard span{margin:6px 0 12px;color:#7b8795;font-size:11px}.v802RecoveryCard button{border:0;border-radius:12px;background:#29467e;color:#fff;padding:10px 14px;font-weight:800}
@keyframes v802Orbit{to{transform:rotate(360deg)}}@keyframes v802Aura{from{transform:translate3d(-12px,-6px,0) scale(.96)}to{transform:translate3d(15px,10px,0) scale(1.05)}}@keyframes v802Float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes v802Logo{from{opacity:0;transform:translateY(14px) scale(.94)}to{opacity:1;transform:none}}@keyframes v802Panel{from{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:none}}@keyframes v802Sheen{0%,55%{left:-45%}80%,100%{left:120%}}
@media(max-width:980px){.parentAccessLayout{grid-template-columns:1fr!important}.parentAccessLayout>#v800ActivationAdmin,.parentAccessLayout>.card:first-of-type,.parentAccessLayout>form.card{grid-column:1!important;grid-row:auto!important}.parentAccessLayout>form.card{position:static!important}.parentAccessLayout .parentAccountCard{grid-template-columns:1fr!important}}
@media(max-width:780px){
 html,body,#root{max-width:100%;overflow-x:hidden}.login{display:block!important;min-height:100svh!important;overflow-y:auto!important;background:linear-gradient(180deg,#eef5fa 0%,#f5f1f8 50%,#fbf5f2 100%)!important;padding:env(safe-area-inset-top) 0 calc(118px + env(safe-area-inset-bottom))!important}.loginArt{display:flex!important;min-height:235px!important;padding:30px 20px 16px!important;background:transparent!important}.loginArt:before{width:280px;height:280px;box-shadow:0 0 0 45px rgba(151,130,177,.025)}.loginArt:after{width:330px;height:260px}.loginBrand:before,.loginBrand:after{display:none}.loginBrand img{width:145px!important;height:88px!important;border-radius:21px!important}.loginBrand h1{font-size:28px!important;margin-top:13px!important}.loginBrand h2{font-size:16px!important}.loginBrand p{font-size:11px!important;margin-top:7px!important}.loginPanel{display:block!important;padding:0 12px 24px!important;background:transparent!important;backdrop-filter:none!important}.loginBox{width:100%!important;max-width:520px!important;margin:0 auto!important;padding:22px 18px 20px!important;border-radius:26px!important}.loginBox h2{font-size:25px!important}.loginTabs{margin-bottom:20px!important}.v802InstallCard{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));width:auto;grid-template-columns:40px minmax(0,1fr) auto;padding:10px}.v802InstallCard img{width:40px;height:40px}.v802InstallCard i{padding:8px 9px}.role-parent .parentMain,.role-parent .main{width:100%!important;max-width:100vw!important;min-width:0!important;overflow-x:hidden!important;padding-left:10px!important;padding-right:10px!important}.role-parent .parentV53Home,.role-parent .v5ParentPage{width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important}.role-parent #v800PushPrompt{width:100%!important;margin:10px 0 12px!important}.role-parent .bottomNav{left:7px!important;right:7px!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;overflow:hidden!important;gap:2px!important}.role-parent .bottomNav>button{min-width:0!important;width:100%!important;flex:initial!important;padding:8px 2px!important}.role-parent .bottomNav>button small{font-size:7.5px!important;white-space:nowrap!important}.parentMobileDrawer{width:min(350px,92vw)!important}.parentDrawerFooter{position:sticky!important;bottom:0!important}.parentAccessLayout{display:block!important}.parentAccessLayout>*{margin-bottom:14px!important}.parentAccessLayout .parentAccountCard{grid-template-columns:1fr!important}}
@media(max-width:390px){.loginArt{min-height:210px!important}.loginBrand img{width:128px!important;height:78px!important}.loginBrand h1{font-size:25px!important}.loginBox{padding:19px 15px!important}.authLinks{gap:6px!important}.authLinks button{font-size:10px!important}.v802InstallCard{grid-template-columns:38px 1fr}.v802InstallCard i{grid-column:1/-1;text-align:center}.v802InstallCard span small{font-size:8px}}
@media(prefers-reduced-motion:reduce){.login *,.v802InstallCard{animation:none!important;transition:none!important}}

/* V8.0.6 — Aktivasyon İste > Yönetici Onayı > Sözleşmeler > PIN */
.activationStepBadge{display:inline-flex;align-items:center;justify-content:center;margin:0 0 10px;padding:6px 10px;border:1px solid #dfe6ec;border-radius:999px;background:#f4f7fa;color:#60758b;font-size:9px;font-weight:850;letter-spacing:.08em}
.contractApprovalStep .consentList{max-height:330px;overflow:auto;padding-right:3px;margin-top:10px}
.contractApprovalStep .consentItem{padding:11px 12px}
.contractApprovalStep .consentItem b{font-size:10.5px;line-height:1.4}
.contractApprovalStep .consentItem small{font-size:8.5px}
@media(max-width:600px){.contractApprovalStep .consentList{max-height:none;overflow:visible}.contractApprovalStep .legalButtons{grid-template-columns:1fr}.contractApprovalStep .consentItem{padding:10px}.contractApprovalStep .loginButton{position:sticky;bottom:8px;z-index:4}}

/* V8.0.6 final aktivasyon ve erişim düzeni */
.parentAccessActivationMount{grid-column:1/-1;grid-row:1;min-width:0}.parentAccessActivationMount #v800ActivationAdmin{margin:0!important}.parentAccessLayout>.card:first-of-type{grid-row:2!important}.parentAccessLayout>form.card{grid-row:2!important}
.activationWaitingStep{text-align:center}.activationWaitingIcon{width:58px;height:58px;margin:4px auto 13px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#e7f2f7,#f2eaf5)}.activationWaitingIcon i{width:20px;height:20px;border:2px solid #9babc0;border-top-color:#6c78a5;border-radius:50%;animation:v805Spin 1s linear infinite}.activationIdentity{display:grid;gap:3px;margin:13px 0;padding:12px;border:1px solid #e2e7ed;border-radius:15px;background:#fafcfd}.activationIdentity b{font-size:12px;color:#334960}.activationIdentity span,.activationIdentity small{font-size:9px;color:#76879a}.activationNoCode{display:grid;gap:3px;margin:10px 0;padding:10px;border-radius:13px;background:#eef7f3;color:#47705f}.activationNoCode b{font-size:10px}.activationNoCode span{font-size:8.5px}.activationRefresh{width:100%;margin-top:8px!important}.activationSuccessStep{text-align:center}.activationSuccessIcon{width:72px;height:72px;margin:8px auto 12px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#dff3e8,#e9f4f7);color:#3f8063;font-size:30px;font-weight:900;box-shadow:0 15px 34px rgba(62,126,99,.13)}
@keyframes v805Spin{to{transform:rotate(360deg)}}
@media(max-width:780px){.parentAccessActivationMount{grid-column:1!important;grid-row:auto!important}.activationWaitingStep,.activationSuccessStep{min-height:0}.loginBox #v761InstallCard{margin-bottom:0}}

/* V8.0.6 — yönetici onaylı, OTP'siz veli aktivasyonu */
.v805ActivationModal{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:20px;background:rgba(18,35,67,.42);backdrop-filter:blur(10px);overflow:auto}.v805ActivationCard{width:min(590px,100%);max-height:calc(100vh - 40px);overflow:auto;border-radius:30px;background:#fff;border:1px solid #dfe6ef;box-shadow:0 30px 90px rgba(32,53,89,.24);padding:28px;color:#24344e}.v805ActivationTop{display:flex;align-items:center;justify-content:space-between;gap:16px}.v805ActivationBrand{display:flex;align-items:center;gap:12px}.v805ActivationBrand img{width:48px;height:48px;border-radius:14px}.v805ActivationBrand span{display:grid;gap:2px}.v805ActivationBrand small{font-size:10px;letter-spacing:.15em;color:#8190a5}.v805ActivationBrand b{font-size:12px;color:#526681}.v805Close{border:0;background:#f1f4f8;border-radius:50%;width:38px;height:38px;font-size:24px;color:#526681;cursor:pointer}.v805ActivationCard h2{font-size:28px;line-height:1.15;margin:22px 0 8px;color:#24344e}.v805Lead{margin:0 0 20px;color:#728097;line-height:1.6}.v805Form{display:grid;gap:14px}.v805Form>label{display:grid;gap:7px;font-size:12px;font-weight:700;color:#63738c}.v805Form input[type="tel"],.v805Form input[type="password"]{height:56px;border:1px solid #d9e2ee;border-radius:16px;padding:0 16px;font:inherit;font-size:16px;color:#24344e;background:#fbfcfe;outline:none}.v805Form input:focus{border-color:#819ec4;box-shadow:0 0 0 4px rgba(104,143,191,.12)}.v805Primary,.v805Secondary{min-height:52px;border-radius:16px;border:0;padding:0 18px;font:inherit;font-weight:700;cursor:pointer}.v805Primary{background:linear-gradient(100deg,#799fc4,#a782b1);color:#fff}.v805Primary:disabled{opacity:.5;cursor:not-allowed}.v805Secondary{background:#eef3f8;color:#31496d}.v805Info,.v805Approved,.v805Error{border-radius:16px;padding:14px 16px;display:grid;gap:4px}.v805Info{background:#f1f6fb;color:#59708e}.v805Info b,.v805Approved b{font-size:13px}.v805Info span{font-size:12px;line-height:1.45}.v805Approved{background:#edf8f3;color:#2d7256;margin-bottom:14px;font-weight:700}.v805Error{background:#fff0f0;color:#a73535;margin-bottom:12px;font-size:13px}.v805Waiting{display:grid;justify-items:center;text-align:center;gap:12px;padding:14px 0}.v805Waiting b{font-size:18px}.v805Waiting small{color:#78879c}.v805Waiting p{color:#7b899c;margin:0}.v805Spinner{width:42px;height:42px;border:4px solid #e8edf4;border-top-color:#759bc2;border-radius:50%;animation:v805spin .8s linear infinite}.v805Students{width:100%;display:grid;gap:7px}.v805Students span{padding:9px 12px;border-radius:12px;background:#f4f7fa;color:#50647e;font-size:12px}.v805ConsentList{display:grid;gap:9px}.v805Consent{display:grid!important;grid-template-columns:auto 1fr;gap:11px!important;align-items:start;padding:13px;border:1px solid #e2e8f0;border-radius:14px;background:#fbfcfe}.v805Consent input{margin-top:4px;accent-color:#6f8fb7}.v805Consent span{display:grid;gap:3px}.v805Consent b{font-size:13px;color:#344964}.v805Consent small{font-size:11px;color:#7b899b;line-height:1.4}.v805LegalLinks{margin-bottom:12px}.v805LegalLinks a{font-size:12px;font-weight:700;color:#526fa0;text-decoration:none}.v805State,.v805Success{display:grid;justify-items:center;text-align:center;gap:12px}.v805State.rejected{color:#9b3f3f}.v805Success>span{display:grid;place-items:center;width:66px;height:66px;border-radius:50%;background:#e8f7ef;color:#2e8a62;font-size:34px;font-weight:800}.v805Success b{font-size:20px}.v805Success p{color:#728097;margin:0 0 5px}@keyframes v805spin{to{transform:rotate(360deg)}}
@media(max-width:680px){.v805ActivationModal{padding:10px;align-items:end}.v805ActivationCard{max-height:92vh;border-radius:26px 26px 18px 18px;padding:21px 18px}.v805ActivationCard h2{font-size:23px}.v805Form input[type="tel"],.v805Form input[type="password"]{height:54px}}
