/* РеДизайн 6.2 — стабильная сетка, кабинет, тесты, навигация и корзина */
:root{
  --rd-font:"Avenir Next",Avenir,"SF Pro Text","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --rd-font-display:"Avenir Next",Avenir,"SF Pro Display","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --rd-page:1280px;
  --rd-violet:#5f49db;
  --rd-violet-dark:#4936ba;
  --rd-violet-soft:#f0edff;
  --rd-ink:#202235;
  --rd-muted:#74788b;
  --rd-line:#e4e5ed;
}
html{min-width:320px;overflow-x:hidden}
body{min-width:320px;overflow-x:hidden;font-family:var(--rd-font);font-kerning:normal;text-rendering:optimizeLegibility}
body,button,input,select,textarea{font-family:var(--rd-font)}
h1,h2,h3,h4,.brand,.account-tab,.result-product-tabs a{font-family:var(--rd-font-display)}
[hidden],.account-pane[hidden]{display:none!important}

/* Единая шапка: элементы не наезжают и не меняют высоту случайно. */
.site-header,.site-header.compact{
  min-height:64px!important;height:auto!important;
  display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;gap:12px!important;
  padding:9px clamp(14px,3vw,42px)!important;
}
.site-header .brand{grid-column:1;min-width:0;max-width:min(44vw,330px)}
.site-header .top-nav{
  grid-column:2;min-width:0;width:100%;margin:0!important;
  display:flex!important;justify-content:flex-end!important;align-items:center!important;
  gap:4px!important;overflow-x:auto!important;overflow-y:hidden!important;
  scrollbar-width:none;white-space:nowrap;padding:2px!important;
}
.site-header .top-nav::-webkit-scrollbar{display:none}
.site-header .top-nav a{flex:0 0 auto!important;padding:9px 11px!important;border-radius:11px!important;text-decoration:none!important;font-size:.86rem!important;line-height:1.2!important}
.site-header .top-nav a.active{background:var(--rd-violet-soft)!important;color:var(--rd-violet)!important;font-weight:760!important}

/* Корзина всегда заметна и не растворяется на белой шапке. */
.cart-button{
  grid-column:3!important;position:relative!important;display:inline-flex!important;
  align-items:center!important;justify-content:center!important;gap:6px!important;
  box-sizing:border-box!important;width:auto!important;min-width:auto!important;
  height:40px!important;min-height:40px!important;margin:0!important;
  padding:0 12px!important;border:1px solid #d9d2f6!important;border-radius:12px!important;
  background:#f1eeff!important;color:#4e3bb8!important;
  box-shadow:0 8px 20px rgba(15,122,130,.16)!important;font-size:.86rem!important;font-weight:750!important;
  line-height:1.2!important;
}
.cart-button:hover{background:#e8e2ff!important;border-color:#c6bbf1!important}
.cart-button.has-items{background:linear-gradient(135deg,#5d47db,#7660ea)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 11px 25px rgba(81,59,191,.28)!important}
.cart-button .cart-ic{font-size:1.08rem;line-height:1}
.cart-button .cart-label{display:inline}
.cart-badge{top:-7px!important;right:-7px!important;background:#ff6d68!important;color:#fff!important;border:2px solid #fff!important;min-width:22px!important;height:22px!important;font-size:.68rem!important}
.cart-badge.is-empty{display:none!important}
.cart-panel{width:min(430px,100vw)!important;background:#fff!important;border-left:1px solid var(--rd-line)!important}
.cart-head{padding:20px 22px!important}.cart-head b{color:var(--rd-ink)!important}
.cart-line{align-items:flex-start!important}.cart-line-copy{min-width:0;flex:1}.cart-line-copy b{color:var(--rd-ink)!important}
.cart-line-right{flex:0 0 auto}.cart-foot{background:#fbfbfe!important}
.cart-review{width:min(720px,100%)!important;max-width:720px!important;padding:clamp(18px,3vw,34px)!important;border:1px solid var(--rd-line)!important;border-radius:26px!important;background:#fff!important;box-shadow:0 18px 48px rgba(35,38,75,.08)!important}
.cart-review h1{margin:6px 0 18px!important}.cart-review-row{align-items:center!important}.cart-review-price{white-space:nowrap}

/* Личный кабинет: надежные вкладки и стабильные карточки. */
.account-shell{width:min(var(--rd-page),calc(100% - 32px))!important;margin-inline:auto!important;padding-top:28px!important}
.account-tabs{
  position:sticky;top:10px;z-index:45;display:flex!important;flex-wrap:nowrap!important;
  gap:6px!important;max-width:100%;overflow-x:auto!important;overflow-y:hidden!important;
  margin:20px 0 24px!important;padding:6px!important;border:1px solid #ded8f1!important;
  border-radius:17px!important;background:rgba(246,243,255,.96)!important;
  box-shadow:0 10px 28px rgba(47,38,91,.08)!important;scrollbar-width:none;
}
.account-tabs::-webkit-scrollbar{display:none}
.account-tab{
  flex:0 0 auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:44px!important;padding:10px 16px!important;border:0!important;border-radius:12px!important;
  background:transparent!important;color:#6659a7!important;text-decoration:none!important;
  white-space:nowrap!important;font-size:.9rem!important;font-weight:720!important;cursor:pointer!important;
}
.account-tab:hover{background:rgba(255,255,255,.72)!important;color:#4938a8!important}
.account-tab.active{background:#fff!important;color:#352774!important;box-shadow:0 5px 15px rgba(78,56,166,.15)!important}
.account-tab em{display:inline-flex;align-items:center;justify-content:center;min-width:21px;height:21px;margin-left:6px;padding:0 6px!important;font-size:.66rem!important}
.account-pane{display:block;width:100%;min-width:0}
.person-group,.daily-cabinet-card,.mail-settings-card,.side-card{max-width:100%;overflow:hidden}
.person-group-head{grid-template-columns:auto minmax(0,1fr) auto!important}.purchase-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.purchase-actions form,.mini-actions form{margin:0}.mini-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.account-grid-side{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important}
.mail-settings-card{max-width:900px!important}.mail-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}

/* Тесты: выбранный пункт читается, контент не вылезает вправо. */
.tests-hub-page,.tests-hub-page button,.tests-hub-page input,.tests-hub-page select,.tests-hub-page textarea{font-family:var(--rd-font)!important}
.tests-hub-page h1,.tests-hub-page h2,.tests-hub-page h3,.tests-hub-page b,.tests-hub-page legend{font-family:var(--rd-font-display)!important}
.tests-hub-shell{width:min(var(--rd-page),calc(100% - 32px))!important;max-width:var(--rd-page)!important;margin-inline:auto!important}
.tests-hub-head{grid-template-columns:minmax(0,1fr) auto!important;overflow:hidden!important}
.tests-hub-head>div:first-child{min-width:0}.tests-hub-head h1{max-width:100%}.tests-hub-head p{max-width:760px!important}
.tests-head-badge{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important;gap:4px 10px!important;min-width:180px!important;max-width:250px!important;padding:15px 17px!important;border-radius:18px!important;background:rgba(255,255,255,.13)!important;border:1px solid rgba(255,255,255,.2)!important;color:#fff!important}
.tests-head-badge>span{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:rgba(255,255,255,.16);font-size:1.15rem}
.tests-head-badge b,.tests-head-badge small{display:block!important;color:#fff!important}.tests-head-badge b{font-size:1rem!important}.tests-head-badge small{font-size:.72rem!important;opacity:.82}
.tests-workspace{grid-template-columns:290px minmax(0,1fr)!important;gap:22px!important;max-width:100%!important}
.tests-sidebar,.tests-stage{min-width:0!important;max-width:100%!important}
.tests-catalog .psych-test-tab{text-decoration:none!important;color:#6d6780!important;overflow:hidden!important}
.tests-catalog .psych-test-tab b{color:#6b667e!important;text-decoration:none!important}
.tests-catalog .psych-test-tab em{color:#5d49d2!important;text-decoration:none!important}
.tests-catalog .psych-test-tab>i{color:#756b97!important}
.tests-catalog .psych-test-tab.active,.tests-catalog .psych-test-tab.active:hover{background:linear-gradient(135deg,#5b45d4,#745ae4)!important;color:#fff!important}
.tests-catalog .psych-test-tab.active b,.tests-catalog .psych-test-tab.active small,.tests-catalog .psych-test-tab.active em,.tests-catalog .psych-test-tab.active>i{color:#fff!important}
.tests-catalog .psych-test-tab.active em{opacity:.82}.tests-catalog .psych-test-tab.active b{text-decoration:none!important}
.test-experience-card,.psych-wizard,.psych-result{min-width:0!important;max-width:100%!important;overflow:hidden!important}
.psych-selected-head,.wizard-selected-head{grid-template-columns:68px minmax(0,1fr)!important}.psych-selected-head>div{min-width:0}
.wizard-question legend{max-width:100%!important}.wizard-answer-scale{max-width:100%!important}
.wizard-controls{z-index:8;background:rgba(255,255,255,.96);padding:8px;border:1px solid #e7e3ef;border-radius:16px}

/* Верхняя навигация внутри карты: всегда 5 равных пунктов, без переносов и скачков. */
.result-shell,.daily-shell{width:min(var(--rd-page),calc(100% - 32px))!important;max-width:var(--rd-page)!important;margin-inline:auto!important;padding-left:0!important;padding-right:0!important}
.result-product-tabs{
  position:relative!important;top:auto!important;z-index:20!important;
  display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:7px!important;width:100%!important;max-width:100%!important;margin:0 0 22px!important;
  overflow:hidden!important;
}
.result-product-tabs a{min-width:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important}
.result-product-tabs a span{flex:0 0 auto}.result-product-tabs a.active{transform:none!important}
.result-topbar{width:100%;max-width:100%;align-items:flex-end!important}.result-topbar>div{min-width:0}.result-topbar h1{overflow-wrap:anywhere}
.result-top-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.hero-result-card,.reading-verification,.daily-tab-teaser,.premium-insights-section,.included-modules-section,.recommendation-section,.natal-result-section,.family-offer-card,.paid-actions,.psych-reading-section,.free-test-banner{width:100%;max-width:100%;min-width:0}
.reading-paged-mode .reading-navigator{top:74px!important;max-width:100%!important}
.reading-paged-mode .reading-navigator-main{min-width:0}.reading-paged-mode .reading-current{min-width:0}
.reading-paged-mode .reading-chapter-list{max-width:100%!important}
.reading-paged-mode .result-shell>[data-reading-chapter]{max-width:100%!important;overflow:hidden}
.natal-workspace-grid,.natal-detailed-layout,.premium-insights-grid,.included-module-grid,.recommendation-grid{max-width:100%;min-width:0}

/* Устойчивые якоря: заголовок не прячется под шапкой. */
[id]{scroll-margin-top:92px}
.reading-paged-mode [data-reading-chapter]{scroll-margin-top:150px!important}

@media(max-width:1180px){
  .tests-hub-head{grid-template-columns:1fr!important;align-items:start!important}.tests-head-badge{margin-top:18px!important;max-width:100%!important;width:max-content!important}
  .tests-workspace{grid-template-columns:1fr!important}.tests-sidebar{position:static!important}
  .tests-sidebar-title{display:flex!important}
  .tests-catalog,.psych-test-tabs.tests-catalog{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow:visible!important}
  .tests-catalog .psych-test-tab{min-height:84px!important}
}

@media(max-width:900px){
  .site-header,.site-header.compact{grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important}
  .site-header .brand{grid-column:1;max-width:100%}.cart-button{grid-column:2!important;grid-row:1!important}
  .site-header .top-nav{grid-column:1/-1!important;grid-row:2!important;justify-content:flex-start!important;width:100%!important}
  .account-shell,.tests-hub-shell,.result-shell,.daily-shell,.checkout-shell{width:calc(100% - 20px)!important}
  .account-tabs{top:8px!important}
  .person-group-head{grid-template-columns:auto minmax(0,1fr)!important;align-items:start!important}
  .purchase-actions{grid-column:1/-1!important;justify-content:flex-start!important;padding-left:72px}
  .mail-grid{grid-template-columns:1fr!important}
  .result-product-tabs{display:flex!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x proximity;scrollbar-width:none!important;border-radius:16px!important}
  .result-product-tabs::-webkit-scrollbar{display:none}.result-product-tabs a{flex:0 0 auto!important;min-width:max-content!important;scroll-snap-align:start!important}
  .reading-paged-mode .reading-navigator{top:118px!important}
  .result-topbar{align-items:flex-start!important;flex-direction:column!important}.result-top-actions{justify-content:flex-start!important}
}

@media(max-width:680px){
  .cart-button{width:40px!important;min-width:40px!important;padding:0!important}.cart-button .cart-label{display:none!important}
  .cart-panel{top:auto!important;bottom:0!important;right:0!important;left:0!important;width:100%!important;height:min(82vh,720px)!important;border-left:0!important;border-top:1px solid var(--rd-line)!important;border-radius:24px 24px 0 0!important;transform:translateY(105%)!important}
  .cart-panel.is-open{transform:translateY(0)!important}.cart-head{padding:16px 18px!important}.cart-items{padding:12px 18px!important}.cart-foot{padding:15px 18px calc(15px + env(safe-area-inset-bottom))!important}
  .tests-catalog,.psych-test-tabs.tests-catalog{display:flex!important;grid-template-columns:none!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;padding-bottom:7px!important}
  .tests-catalog .psych-test-tab{flex:0 0 min(285px,84vw)!important;scroll-snap-align:start!important}
  .tests-sidebar-title{display:none!important}.tests-head-badge{width:100%!important}
  .psych-selected-head,.wizard-selected-head{grid-template-columns:52px minmax(0,1fr)!important;gap:12px!important}.psych-selected-head>span{width:52px!important;height:52px!important}
  .person-group{padding:16px!important}.person-badge{width:48px!important;height:48px!important;border-radius:15px!important}.purchase-actions{padding-left:0!important}
  .purchase-actions>*{width:100%!important}.purchase-actions .secondary-button{width:100%!important}.archive-form{width:100%}.archive-button{width:100%}
  .sub-grid{grid-template-columns:1fr!important}.mini-reading{grid-template-columns:auto minmax(0,1fr)!important}.mini-actions{grid-column:1/-1!important;justify-content:flex-start!important;padding-left:47px}
  .result-product-tabs{margin-left:0!important;margin-right:0!important}
  .reading-paged-mode .reading-navigator{top:112px!important}
  .reading-paged-mode .reading-current b{white-space:normal!important;line-height:1.2!important;display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  .result-top-actions>*{width:100%!important}.result-top-actions .icon-action{justify-content:center!important}
  .cart-review-row{align-items:flex-start!important}.cart-review-price{font-size:.95rem!important}
}

@media(max-width:430px){
  .site-header,.site-header.compact{padding-inline:10px!important}.site-header .top-nav a{padding:8px 9px!important;font-size:.8rem!important}
  .account-shell,.tests-hub-shell,.result-shell,.daily-shell,.checkout-shell{width:calc(100% - 14px)!important}
  .account-tab{padding:9px 12px!important;font-size:.82rem!important}
  .tests-hub-head{padding:22px 17px!important}.tests-head-badge{padding:13px!important}
  .test-experience-card,.psych-wizard,.psych-result{padding:15px!important}
}

@media(prefers-reduced-motion:reduce){
  .cart-panel,.cart-overlay,.reading-page-active{transition:none!important;animation:none!important}
}
