/* Контакты + личный кабинет: финальный брендовый слой. */
.contact-page .contact-head{min-height:610px;align-items:center;padding-top:150px;overflow:hidden}
.contact-page .contact-head-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.75fr);gap:70px;align-items:center;position:relative;z-index:2;width:100%}
.contact-page .contact-status{position:relative;display:grid;grid-template-columns:auto 1fr;gap:16px;padding:28px;border:1px solid rgba(127,255,212,.18);background:linear-gradient(145deg,rgba(26,35,40,.76),rgba(8,13,15,.84));backdrop-filter:blur(12px);box-shadow:0 24px 64px rgba(0,0,0,.28)}
.contact-page .contact-status::after{content:"";position:absolute;right:-1px;top:-1px;width:76px;height:1px;background:var(--brand-ember);box-shadow:0 0 14px rgba(255,138,61,.36)}
.contact-page .contact-status-dot{width:10px;height:10px;margin-top:5px;border-radius:50%;background:var(--brand-cyan);box-shadow:0 0 15px rgba(0,229,204,.8)}
.contact-page .contact-status small{display:block;color:#72838a;text-transform:uppercase;letter-spacing:.09em;font-size:10px;margin-bottom:6px}
.contact-page .contact-status strong{display:block;font-family:var(--display);font-size:20px;margin-bottom:10px}
.contact-page .contact-status p{color:#95a4aa;font-size:14px}
.contact-page .contact-main-section{background:linear-gradient(180deg,rgba(10,14,16,.2),rgba(18,27,31,.45))}
.contact-page .contact-grid-premium{align-items:stretch;gap:24px}
.contact-page .contact-info,.contact-page .contact-form{padding:34px;border:1px solid rgba(127,255,212,.16);background:linear-gradient(145deg,rgba(26,35,40,.94),rgba(10,14,16,.96));box-shadow:0 20px 60px rgba(0,0,0,.18)}
.contact-page .contact-info::before,.contact-page .contact-form::before{content:"";position:absolute;left:0;top:0;width:82px;height:1px;background:var(--brand-cyan);box-shadow:0 0 16px rgba(0,229,204,.4)}
.contact-page .contact-panel-index{position:absolute;right:22px;top:18px;color:rgba(127,255,212,.22);font-family:var(--display);font-size:30px;font-weight:700}
.contact-page .contact-info h3,.contact-page .contact-form h3{font-size:clamp(24px,3vw,34px);margin:14px 0 14px}
.contact-page .contact-info>p{color:#96a5ab;margin-bottom:28px}
.contact-page .contact-security-note{display:grid;gap:6px;margin-top:30px;padding:16px;border-left:2px solid var(--brand-ember);background:rgba(255,138,61,.045)}
.contact-page .contact-security-note strong{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#ffb27e}
.contact-page .contact-security-note span{font-size:13px;color:#96a5ab}
.contact-page .contact-form .field{margin-top:18px}
.contact-page .contact-form label{display:block;margin-bottom:8px;color:#aebbc0;font-size:13px;font-weight:600}
.contact-page .contact-form input,.contact-page .contact-form textarea{width:100%;background:#0a1115;border:1px solid rgba(127,255,212,.17);color:#eef4f5;padding:14px 15px;font:inherit;transition:border-color .2s,box-shadow .2s}
.contact-page .contact-form input:focus,.contact-page .contact-form textarea:focus{border-color:var(--brand-cyan);box-shadow:0 0 0 3px rgba(0,229,204,.07)}
.contact-page .contact-form input:focus-visible,.contact-page .contact-form textarea:focus-visible{outline:2px solid var(--brand-cyan);outline-offset:2px}
.contact-page .contact-form .btn{margin-top:24px;width:100%;justify-content:space-between}

.account-page{min-height:100vh}
.account-page main{min-height:calc(100vh - 120px)}
/* Форма остаётся в потоке страницы: длинная регистрация не обрезается шапкой. */
.account-page #authOverlay{position:relative;inset:auto;z-index:auto;min-height:calc(100svh - 92px);padding:32px 24px 96px;align-items:flex-start}
.account-page #authOverlay .account-auth-card{margin:0!important}
/* При фокусе/прокрутке оставляем место для закреплённой мобильной навигации. */
.account-page #authOverlay :is(input,button){scroll-margin-block:104px}
.account-auth-card{max-width:470px!important;padding:34px!important;border-radius:0!important}
.account-auth-mark{display:flex;justify-content:center;margin:0 auto 18px}
.account-auth-mark img{filter:drop-shadow(0 0 24px rgba(0,229,204,.3))}
.account-auth-card h1{text-align:center;font-size:34px;margin:10px 0 10px}
.account-auth-lead{max-width:390px;margin:0 auto;color:#95a4aa;text-align:center;font-size:14px}
.account-auth-tabs{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important;margin:24px 0 22px!important;border-bottom:1px solid rgba(127,255,212,.1)!important;padding-bottom:8px!important}
.account-auth-tabs .admin-tab{margin:0!important;text-align:center}
.account-auth-card form label{display:block;margin:14px 0 7px;color:#aebbc0;font-size:12px;font-weight:600}
.account-auth-card form input{width:100%;margin:0!important;padding:13px 14px;background:#0a1115;border:1px solid rgba(127,255,212,.17);color:#eef4f5}
.account-auth-submit{width:100%;margin-top:20px!important}
.account-auth-note{margin-top:22px;padding-top:18px;border-top:1px solid rgba(127,255,212,.1);font-size:11px;line-height:1.6;color:#73838a;text-align:center}
.account-shell{max-width:1160px!important;padding-top:132px!important}
.account-dashboard-kicker{display:flex;justify-content:space-between;gap:20px;margin-bottom:12px;color:#61747b;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.account-page .account-header{padding:30px;border-color:rgba(127,255,212,.17);background:radial-gradient(circle at 0 50%,rgba(0,229,204,.08),transparent 28rem),linear-gradient(145deg,rgba(26,35,40,.94),rgba(10,14,16,.96))}
.account-page .account-avatar{width:96px;height:96px;border:1px solid rgba(0,229,204,.35);box-shadow:0 0 30px rgba(0,229,204,.1)}
.account-avatar-note{font-size:10.5px;color:#7f9097;text-align:center;max-width:130px;margin-top:10px;line-height:1.45}
.account-page .account-header-info h1{font-size:clamp(30px,4vw,46px)!important;margin-top:9px!important}
.account-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}
.account-badges span{padding:6px 9px;border:1px solid rgba(127,255,212,.13);background:rgba(0,229,204,.035);color:#91aaa9;font-size:10px;text-transform:uppercase;letter-spacing:.06em}
.account-page .admin-logout{border:1px solid rgba(255,138,61,.28);color:#ffb27e;background:rgba(255,138,61,.04);padding:10px 14px}
.account-profile-section,.account-library-section{margin-top:34px;padding:28px;border:1px solid rgba(127,255,212,.12);background:rgba(10,16,19,.65)}
.account-section-head{display:grid;grid-template-columns:1fr minmax(280px,.7fr);gap:34px;align-items:end;margin-bottom:22px}
.account-section-head h2{font-size:26px;margin-top:6px}
.account-section-head>p{color:#819199;font-size:13px;justify-self:end;max-width:440px}
.account-page #nicknameForm{margin:0!important;background:linear-gradient(145deg,rgba(26,35,40,.7),rgba(10,14,16,.72));border-color:rgba(127,255,212,.12)}
.account-main-tabs{margin:0!important;border-bottom:1px solid rgba(127,255,212,.1)!important;overflow-x:auto}
.account-page .admin-panel{padding-top:24px!important}
.account-panel-label{font-family:var(--display);font-size:20px;margin-bottom:16px}
.account-disabled-banner{margin:0 0 24px!important;text-align:left!important;border-left:2px solid var(--brand-ember)!important;background:rgba(255,138,61,.05)!important;color:#d3b29b!important}
.account-disabled-form{padding:22px;border:1px dashed rgba(127,255,212,.12);opacity:.7}
.account-disabled-form h3{font-size:18px;margin-bottom:8px}.account-disabled-form>p{color:#87979e;font-size:13px;margin-bottom:20px}
.account-page select:disabled,.account-page input:disabled,.account-page button:disabled{opacity:.5;cursor:not-allowed}

@media(max-width:900px){.contact-page .contact-head-layout{grid-template-columns:1fr;gap:34px}.contact-page .contact-status{max-width:680px}.account-section-head{grid-template-columns:1fr;gap:10px}.account-section-head>p{justify-self:start}.account-dashboard-kicker{display:none}}
@media(max-width:640px){.contact-page .contact-head{min-height:0;padding-top:132px;padding-bottom:60px}.contact-page .contact-info,.contact-page .contact-form{padding:24px}.contact-page .contact-panel-index{font-size:23px}.contact-page .contact-status{padding:20px}.contact-page .contact-grid-premium{gap:16px}.account-auth-card{margin:14px!important;padding:25px 20px!important}.account-auth-card h1{font-size:28px}.account-shell{padding-top:112px!important;padding-left:18px!important;padding-right:18px!important}.account-page .account-header{padding:22px}.account-profile-section,.account-library-section{padding:20px;margin-top:20px}.account-page .account-header{align-items:flex-start}.account-page .admin-logout{position:absolute;right:18px;top:18px}.account-badges{padding-right:10px}}
@media(prefers-reduced-motion:reduce){.contact-page .contact-status,.account-auth-card{transition:none!important}}
@media(max-width:980px){.account-page #authOverlay{min-height:calc(100svh - 68px);padding:24px 18px 96px}}
