:root {
  --bp-navy:#092345; --bp-blue:#146df5; --bp-cyan:#13b9ef;
  --bp-pale:#eaf5ff; --bp-line:#cfe2fb; --bp-muted:#6d809d;
}
html,body { background:#e9f4ff; color:var(--bp-navy); }
body { background:radial-gradient(circle at 6% 2%,#d2e1ff 0,transparent 34%),radial-gradient(circle at 94% 8%,#cff5ff 0,transparent 31%),#edf7ff; }
.nav { height:68px; margin-top:26px; padding:0 18px; width:min(1320px,calc(100% - 40px)); border:1px solid #fff; border-radius:28px; background:#ffffffd9; box-shadow:0 16px 40px #1d6bb017; backdrop-filter:blur(16px); }
.brand { gap:12px; color:var(--bp-navy); }
.brand-mark { width:42px; height:42px; border-radius:14px; background:linear-gradient(145deg,var(--bp-blue),var(--bp-cyan)); box-shadow:0 9px 22px #147cf440; }
.brand b { color:var(--bp-blue); }
.brand-copy { display:flex; flex-direction:column; line-height:1.05; }
.brand-copy small { margin-top:6px; color:#8292aa; font-size:8px; font-weight:600; letter-spacing:1.7px; }
.nav-links { color:#637690; }
.nav-links>a:not(.button) { transition:.2s; }
.nav-links>a:not(.button):hover { color:var(--bp-blue); }
.button { border-radius:28px; padding:15px 25px; background:linear-gradient(100deg,var(--bp-blue),var(--bp-cyan)); box-shadow:0 12px 28px #147cf436; }
.button.ghost { color:#1154ba; background:#fff; border-color:#c9ddf8; box-shadow:none; }
.hero { width:min(1320px,calc(100% - 40px)); min-height:760px; margin-top:25px; padding:85px 75px; border-radius:42px; background:#ffffffd6; border:1px solid #fff; box-shadow:0 25px 70px #2d77b31c; }
.eyebrow { color:var(--bp-blue); letter-spacing:2px; }
.eyebrow i { background:var(--bp-cyan); box-shadow:0 0 13px #13b9ef; }
h1,.section h2,.auth-card h1,.dash-head h1 { color:var(--bp-navy); font-weight:800; }
h1 span { color:var(--bp-blue); }
.hero-copy>p,.cards p,.split>div>p,.profile-card p,.summary p { color:var(--bp-muted); }
.trust { color:#566d8c; }
.hero-panel,.dash-card,.cards article,.checklist,.auth-card { color:var(--bp-navy); background:#fff; border-color:var(--bp-line); box-shadow:0 24px 55px #236fbd18; }
.panel-head,.card-title { color:var(--bp-navy); }
.live,.status.online,.heart { color:#0bbf8a; }
.metric span,.mini-grid span,.event small,.ring span,.empty,.activity-row small { color:var(--bp-muted); }
.progress { background:#dce9f7; }
.progress i { background:linear-gradient(90deg,#0bcf91,#29c8f4); }
.mini-grid div { background:#f2f7fd; }
.event { background:#f7fbff; border-color:var(--bp-line); }
.avatar { color:#fff; background:linear-gradient(145deg,var(--bp-blue),var(--bp-cyan)); }
.stats { margin:25px auto 0; width:min(1320px,calc(100% - 40px)); background:#fff; border:1px solid var(--bp-line); border-radius:28px; box-shadow:0 20px 50px #236fbd12; }
.stats-grid div { border-color:var(--bp-line); }
.stats-grid span { color:var(--bp-muted); }
.section { margin-top:25px; padding-inline:55px; border:1px solid #fff; border-radius:38px; background:#ffffffbd; }
.cards article { border-radius:22px; }
.icon { color:var(--bp-blue); background:#eaf3ff; }
.checklist p { border-color:var(--bp-line); }
.checklist span { color:var(--bp-muted); }
.checklist strong { color:var(--bp-navy); }
footer { margin-top:25px; color:#7387a4; border-color:#cfe1f6; background:#ffffff80; }
.auth-page { min-height:calc(100vh - 125px); }
.auth-card { border-radius:30px; }
.auth-card>p,.auth-card>small { color:var(--bp-muted); }
.auth-card label,.form-grid label,.settings>label { color:#536b8c; }
.auth-card input,.form-grid input,.settings textarea { color:var(--bp-navy); background:#f5f9fe; border-color:var(--bp-line); }
.auth-card small a { color:var(--bp-blue); }
.vkid-button { display:flex; align-items:center; justify-content:center; gap:10px; margin:24px 0 18px; padding:13px 18px; border-radius:13px; color:#fff; background:#07f; font-weight:700; font-size:13px; }
.vkid-button span { display:grid; place-items:center; width:28px; height:28px; border-radius:9px; color:#07f; background:#fff; font-size:10px; }
.vkid-widget { min-height:44px; margin:24px 0 18px; }
.vkid-widget>div { width:100%!important; }
.vkid-error { color:#b42318!important; background:#fff0ef; border:1px solid #ffc9c5; border-radius:10px; padding:10px; }
.auth-divider { display:flex; align-items:center; gap:10px; color:#8b9bb1; font-size:10px; }
.auth-divider i { flex:1; height:1px; background:#d9e7f7; }
.flash { background:#fff; border-color:var(--bp-line); box-shadow:0 12px 28px #236fbd20; }
.dashboard { width:min(1320px,calc(100% - 40px)); margin-top:25px; padding:55px; border-radius:40px; background:#ffffffad; border:1px solid #fff; }
.status { color:#7587a1; border-color:var(--bp-line); background:#fff; }
.vk-badge { background:linear-gradient(145deg,var(--bp-blue),var(--bp-cyan)); color:#fff; }
.settings textarea { font-family:Montserrat,sans-serif; }
.switch i { background:#cbd9e9; }
.switch input:checked+i { background:linear-gradient(100deg,var(--bp-blue),var(--bp-cyan)); }
.locked,.birthday-box { color:#1169d6; background:#eaf5ff; border-color:var(--bp-line); }
.activity-row { border-color:var(--bp-line); }
.activity-row a { color:var(--bp-blue); }
.empty h3 { color:var(--bp-navy); }
@media(max-width:800px){
  .nav { margin-top:12px; width:calc(100% - 24px); }
  .hero,.stats,.dashboard { width:calc(100% - 24px); }
  .hero { padding:55px 28px; border-radius:30px; }
  .section { width:calc(100% - 24px); padding-inline:25px; border-radius:28px; }
  .dashboard { padding:30px 18px; border-radius:28px; }
}
@media(max-width:480px){
  .hero h1 { font-size:34px; }
  .hero-panel { padding:20px; }
  .brand-copy small { display:none; }
}
