/* Узнай себя · restrained civic editorial identity */
:root{
  --ink:#142c49;--muted:#607087;--accent:#194f80;--accent-hover:#10385d;
  --accent-pale:#ecf2f8;--paper:#f3f5f7;--line:#dce3eb;--line-strong:#bfccd9;
  --way-blue:#194f80;--way-ink:#142c49;--way-muted:#607087;--way-line:#dce3eb;
  --radius:12px;
  background:#f3f5f7;
}
body{background:#f3f5f7;}
body::before{display:none;}
.page-shell{max-width:1220px;padding-top:calc(22px + var(--safe-top));}
.app-header{margin-bottom:28px;padding-bottom:20px;border-color:#d4dfe9;}
.brand{position:relative;align-items:center;gap:14px;color:#142c49;font-size:25px;font-weight:750;letter-spacing:-.8px;line-height:1.25;}
.brand::before{content:"";width:4px;height:32px;flex:0 0 4px;background:#af3448;}
.brand-point{display:none;}
.header-caption{max-width:250px;font-size:11px;letter-spacing:.4px;text-transform:uppercase;color:#62758c;}
.app-footer{color:#61738a;border-color:#d6e0e9;margin-top:30px;}
.intro-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);max-width:none;gap:28px;align-items:start;}
.welcome-card{position:sticky;top:24px;justify-content:flex-start;min-height:680px;padding:40px;overflow:hidden;border:0;border-radius:18px;box-shadow:none;background:#142c49;color:#fff;}
.welcome-card::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,#142c49ed 0%,#142c49b0 32%,#142c4900 72%),url('/assets/uznai-cover-v8.jpg') 74% bottom/cover no-repeat;}
.welcome-card::after{content:"";position:absolute;inset:auto auto 35px 40px;width:80px;height:4px;background:#af3448;border:0;border-radius:0;box-shadow:none;z-index:1;}
.welcome-card>*{position:relative;z-index:1;}
.welcome-card h1{max-width:540px;margin:20px 0;font-size:53px;line-height:1.08;font-weight:650;letter-spacing:-1.8px;color:#fff;}
.welcome-card .lead{max-width:380px;font-size:17px;line-height:1.6;color:#eef4fa;}
.welcome-card .intro-kicker{color:#d9e7f5;font-size:10px;letter-spacing:1.3px;}
.welcome-card .hero-meta{display:flex;gap:14px;margin-top:25px;color:#e7eff8;font-size:12px;}
.welcome-card .hero-meta span{border:1px solid #ffffff45;border-radius:4px;padding:5px 10px;background:#142c4940;}
.welcome-card .hero-meta span+span::before{display:none;}
.form-card{padding:30px;border:1px solid #dce4ec;border-radius:12px;background:#fff;box-shadow:0 12px 35px #142c4906;backdrop-filter:none;}
.card-caption{padding-bottom:19px;margin-bottom:24px;}
.card-caption h2{font-size:25px;color:var(--ink);}
.step-label{color:#af3448;font-weight:650;}
.field-label{font-size:14px;font-weight:600;color:#263d56;}
.field input,.field select,.field textarea,.birth-time-group input[type=time],#birth-city{border-radius:6px;background:#f9fafc;border-color:#cbd6e2;min-height:48px;}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#194f80;box-shadow:0 0 0 3px #194f8010;}
.field-hint,.age-note,.time-unknown,.consent{color:#66788b;font-size:12px;line-height:1.55;}
.form-subheading{color:#194f80;border-color:#e0e6ed;letter-spacing:.3px;}
.button,.pdf-download-button{border-radius:6px;font-size:15px;font-weight:650;box-shadow:none;transition:background .15s;}
.button-primary,.pdf-download-button{background:#194f80;color:#fff;}
.button-primary:hover:enabled,.pdf-download-button:hover:enabled{background:#10385d;box-shadow:none;color:#fff;}
.button-secondary{background:white;border-color:#bdccd9;color:#194f80;}
.eyebrow{color:#194f80;font-size:10px;letter-spacing:1.2px;}
.eyebrow::before{background:#af3448;}
.question-view{max-width:820px;background:#fff;border:1px solid #dce4ec;border-radius:16px;padding:30px;box-shadow:0 12px 40px #142c4906;}
.question-view::before,.question-view::after,.question-surface::before{display:none;}
.question-surface{background:#fff;border:0;box-shadow:none;border-radius:0;padding:18px 0 0;}
.question-topline{color:#58738e;}
.question-count{font-variant-numeric:tabular-nums;}
.question-block-intro{padding:0 0 18px;margin-bottom:12px;border-bottom:1px solid #dce4ec;}
.question-block-intro h2{font-size:25px;line-height:1.3;color:#142c49;}
.block-step{color:#af3448;font-size:10px;text-transform:uppercase;letter-spacing:1px;}
.progress-track{height:4px;margin-bottom:25px;background:#e3eaf1;border-radius:2px;}
.progress-fill{background:#194f80;border-radius:2px;}
.question-heading,.question-title{font-size:26px;line-height:1.35;color:#142c49;letter-spacing:-.5px;}
.answer-option,.option{background:#f9fbfd;border:1px solid #d7e1eb;border-radius:7px;color:#233c57;box-shadow:none;}
.answer-option:has(input:checked),.option:has(input:checked),.answer-option.is-selected{background:#edf3f8;border-color:#194f80;box-shadow:inset 3px 0 0 #194f80;}
.option-marker{width:27px;height:27px;min-width:27px;border-radius:6px;font-weight:600;border-color:#cbd7e2;}
.option input:checked+.option-marker{background:#194f80;border-color:#194f80;box-shadow:none;}
.question-section-label{color:#58738e;}
.loading-view{max-width:760px;overflow:hidden;padding:0;text-align:left;background:#fff;border:1px solid #dce4ec;border-radius:18px;box-shadow:0 14px 45px #142c4908;backdrop-filter:none;}
.loading-art{display:block;width:100%;height:240px;margin:0;border-radius:0;box-shadow:none;background:linear-gradient(0deg,#142c4926,#142c4900),url('/assets/uznai-architecture.jpg') center 65%/cover no-repeat;}
.loading-view.is-report .loading-art{background-image:linear-gradient(0deg,#142c4926,#142c4900),url('/assets/uznai-cover-v8.jpg');background-position:center,65% 62%;}
.loading-copy{padding:28px 34px 30px;}
.loading-copy .eyebrow{margin-bottom:12px;}
.loading-copy h1{max-width:none;margin:0 0 14px;color:#142c49;font-size:35px;line-height:1.17;letter-spacing:-1px;}
.loading-copy .lead{max-width:540px;margin:0 0 24px;font-size:16px;line-height:1.65;color:#607087;}
.loading-status{justify-content:flex-start;gap:10px;margin:0;padding:13px 15px;color:#194f80;background:#edf3f8;border:0;border-radius:8px;font-size:13px;line-height:1.5;}
.loading-status .spinner{width:16px;height:16px;}
.loading-view>.inline-error{margin:0 34px 20px;}
.loading-view>.button{margin:0 34px 30px;}
.journey-steps{display:flex;align-items:center;gap:16px;margin:0 0 25px;padding:0 0 20px;list-style:none;border-bottom:1px solid #e5eaf0;}
.journey-steps li{display:flex;align-items:center;gap:7px;min-width:0;color:#8290a1;font-size:12px;line-height:1.4;}
.journey-steps li+li::before{content:"";width:18px;height:1px;margin-right:4px;background:#dce3eb;}
.journey-step-number{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;border:1px solid #dce3eb;border-radius:50%;font-size:10px;font-variant-numeric:tabular-nums;}
.journey-step-number .button-icon{width:12px;height:12px;min-width:12px;stroke-width:2;}
.journey-steps .is-done{color:#536c84;}
.journey-steps .is-done .journey-step-number{border-color:#e7edf3;background:#e7edf3;}
.journey-steps .is-current{color:#194f80;font-weight:600;}
.journey-steps .is-current .journey-step-number{border-color:#194f80;background:#194f80;color:#fff;}
.success-view{max-width:980px;display:grid;grid-template-columns:1fr 1.15fr;gap:35px;padding:28px;background:#fff;border:1px solid #dce4ec;border-radius:12px;box-shadow:0 12px 40px #142c4906;}
.success-art{height:340px;border-radius:10px;box-shadow:none;background:linear-gradient(0deg,#142c4945,#142c4900),url('/assets/uznai-team.jpg') 60% center/cover;}
.success-check{background:#fff;color:#194f80;border:1px solid #e0e8ef;border-radius:50%;box-shadow:0 8px 30px #142c4920;}
.success-content h1{font-size:37px;letter-spacing:-1px;color:#142c49;}
.success-content .lead{font-size:16px;line-height:1.65;color:#607087;}
.review-view{max-width:820px;}
.review-intro,.notice-card{background:#fff;border:1px solid #dce4ec;border-radius:12px;box-shadow:none;}
.review-intro h1{color:#142c49;}
.review-question{border-color:#e0e6ed;}
.demo-banner{border-color:#af3448;background:#fff;}
@media(max-width:760px){
 .page-shell{padding-left:16px;padding-right:16px;}
 .app-header{margin-bottom:20px;gap:15px;}
 .brand{font-size:21px;letter-spacing:-.6px;gap:10px;}
 .brand::before{height:29px;width:3px;flex-basis:3px;}
 .header-caption{max-width:102px;font-size:8px;line-height:1.7;}
 .intro-grid{grid-template-columns:1fr;gap:18px;}
 .welcome-card{position:relative;top:0;min-height:395px;padding:28px;border-radius:14px;}
 .welcome-card::before{background:linear-gradient(180deg,#142c49e8 0%,#142c498c 46%,#142c490a 100%),url('/assets/uznai-cover-v8.jpg') 74% 70%/cover;}
 .welcome-card::after{left:28px;bottom:25px;width:50px;height:3px;}
 .welcome-card h1{font-size:40px;line-height:1.08;letter-spacing:-1.4px;margin:19px 0;}
 .welcome-card .lead{font-size:15px;line-height:1.6;max-width:310px;}
 .welcome-card .hero-meta{margin-top:21px;font-size:10px;gap:9px;}
 .welcome-card .intro-kicker{font-size:9px;letter-spacing:.9px;}
 .form-card{padding:23px 21px;border-radius:10px;}
 .card-caption h2{font-size:23px;}
 .question-view{padding:22px 20px;border-radius:14px;}
 .question-surface{padding:12px 0 0;}
 .question-heading,.question-title{font-size:24px;}
 .question-block-intro h2{font-size:23px;}
 .option{gap:12px;min-height:60px;padding:14px;font-size:15px;line-height:1.55;}
 .question-hint{margin-bottom:20px;font-size:13px;line-height:1.6;}
 .loading-view{padding:0;border-radius:14px;}
 .loading-art{height:190px;}
 .loading-copy{padding:23px 22px 24px;}
 .loading-copy h1{font-size:29px;}
 .loading-copy .lead{font-size:15px;line-height:1.65;margin-bottom:21px;}
 .loading-status{padding:12px;font-size:12px;}
 .journey-steps{gap:10px;margin-bottom:22px;padding-bottom:18px;}
 .journey-steps li{gap:6px;font-size:11px;}
 .journey-steps li+li::before{width:9px;margin-right:0;}
 .journey-step-number{width:21px;height:21px;flex-basis:21px;font-size:9px;}
 .loading-view>.inline-error{margin-left:22px;margin-right:22px;}
 .loading-view>.button{margin-left:22px;margin-right:22px;margin-bottom:24px;}
 .success-view{grid-template-columns:1fr;gap:23px;padding:21px;border-radius:10px;}
 .success-art{height:195px;}
 .success-content h1{font-size:31px;}
 .success-content .lead{font-size:15px;}
}
@media(max-width:360px){
 .journey-steps{gap:8px;}
 .journey-steps li+li::before{display:none;}
 .loading-copy{padding-left:19px;padding-right:19px;}
 .loading-copy h1{font-size:27px;}
 .question-heading,.question-title{font-size:22px;}
}
