:root {
  --growth-surface: color-mix(in srgb, var(--surface, #fff) 94%, transparent);
  --growth-border: color-mix(in srgb, var(--purple, #6b3fd6) 18%, transparent);
  --growth-muted: var(--muted, #706b7c);
  --growth-shadow: 0 24px 70px rgba(53, 28, 103, .11);
}

.growth-hero { display:flex; align-items:center; justify-content:space-between; gap:32px; padding:clamp(28px,5vw,64px); margin:12px 0 28px; border:1px solid var(--growth-border); border-radius:34px; color:#fff; background:linear-gradient(125deg,#32166e 0%,#7d40d0 50%,#e66f9c 100%); box-shadow:var(--growth-shadow); overflow:hidden; position:relative; }
.growth-hero::after { content:""; position:absolute; width:300px; height:300px; right:-120px; top:-150px; border-radius:50%; background:rgba(255,255,255,.12); }
.growth-hero > div:first-child,.growth-recommendation > span:nth-child(2) { min-width:0; }
.growth-hero h2 { color:inherit; font-size:clamp(30px,4vw,55px); line-height:1.05; margin:15px 0; max-width:800px; overflow-wrap:anywhere; }
.growth-hero p { color:rgba(255,255,255,.84); max-width:700px; margin:0; }
.growth-hero .small-badge { color:#fff; border-color:rgba(255,255,255,.25); background:rgba(255,255,255,.12); }
.growth-hero-orb { width:120px; height:120px; flex:0 0 auto; display:grid; place-items:center; border-radius:34px; font-size:64px; font-weight:800; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.3); transform:rotate(5deg); position:relative; z-index:1; }
.help-hero { background:linear-gradient(125deg,#162a63,#6741d9 55%,#e66f9c); }

.growth-metrics { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:14px; margin-bottom:22px; }
.growth-metric { min-height:142px; padding:20px; display:flex; flex-direction:column; justify-content:flex-end; gap:3px; border-radius:24px; border:1px solid var(--growth-border); background:var(--growth-surface); box-shadow:0 14px 38px rgba(38,22,72,.07); }
.growth-metric > span { font-size:23px; margin-bottom:auto; }
.growth-metric strong { font-size:29px; line-height:1; }
.growth-metric small { color:var(--growth-muted); }
.growth-grid { display:grid; grid-template-columns:minmax(270px,.8fr) minmax(0,1.2fr); gap:22px; margin-bottom:22px; }
.growth-card { min-width:0; padding:clamp(22px,3vw,34px); border:1px solid var(--growth-border); border-radius:28px; background:var(--growth-surface); box-shadow:var(--growth-shadow); }
.growth-card-wide { min-width:0; }
.growth-card-head { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:18px; }
.growth-card h3 { margin:9px 0 18px; font-size:clamp(23px,2vw,31px); }
.growth-narrow { max-width:760px; margin:0 auto; }
.growth-empty { padding:24px; color:var(--growth-muted); border:1px dashed var(--growth-border); border-radius:18px; text-align:center; }

.growth-recommendations { display:grid; gap:12px; }
.growth-recommendation { width:100%; border:1px solid var(--growth-border); border-radius:20px; padding:17px; display:grid; grid-template-columns:48px 1fr auto; align-items:center; gap:14px; color:inherit; background:color-mix(in srgb,var(--surface,#fff) 88%,var(--purple,#6b3fd6) 12%); text-align:left; cursor:pointer; transition:.2s ease; }
.growth-recommendation:hover { transform:translateY(-2px); border-color:var(--purple,#6b3fd6); box-shadow:0 12px 30px rgba(92,58,180,.15); }
.growth-recommendation > span:first-child { width:48px; height:48px; display:grid; place-items:center; border-radius:16px; background:linear-gradient(135deg,#a88cff,#f48aad); font-size:23px; }
.growth-recommendation span:nth-child(2) { display:grid; gap:4px; }
.growth-recommendation strong,.growth-recommendation small { overflow-wrap:anywhere; }
.growth-recommendation small { color:var(--growth-muted); line-height:1.45; }
.growth-recommendation b { font-size:24px; }
.growth-topic-list { display:grid; gap:16px; }
.growth-topic > div:first-child { display:flex; align-items:flex-end; justify-content:space-between; gap:14px; margin-bottom:8px; }
.growth-topic span { color:var(--growth-muted); font-size:13px; text-align:right; }
.growth-progress { height:9px; background:color-mix(in srgb,var(--muted,#777) 16%,transparent); border-radius:99px; overflow:hidden; }
.growth-progress i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#7f61ef,#ef789e,#f3bd67); }

.growth-referral-code { display:flex; justify-content:space-between; align-items:center; padding:15px 18px; margin-bottom:14px; border-radius:18px; border:1px dashed var(--purple,#6b3fd6); background:color-mix(in srgb,var(--purple,#6b3fd6) 8%,transparent); }
.growth-referral-code strong { letter-spacing:.11em; font-size:21px; }
.growth-calendar-form { display:grid; grid-template-columns:1.6fr 1fr .8fr 1fr auto; gap:12px; align-items:end; margin-bottom:22px; }
.growth-calendar-form label,.growth-form label { display:grid; gap:7px; font-weight:700; font-size:14px; }
.growth-calendar-form input,.growth-calendar-form select,.growth-form input,.growth-form select,.growth-form textarea,.growth-search input,.growth-inline-field input { width:100%; color:inherit; border:1px solid var(--growth-border); background:color-mix(in srgb,var(--surface,#fff) 92%,transparent); border-radius:15px; padding:13px 15px; font:inherit; }
.growth-calendar-list { display:grid; gap:10px; }
.growth-calendar-item { display:grid; grid-template-columns:120px 40px minmax(0,1fr) auto; align-items:center; gap:10px; min-width:0; max-width:100%; padding:14px 16px; border:1px solid var(--growth-border); border-radius:18px; }
.growth-calendar-item time,.growth-calendar-item strong,.growth-calendar-item small { min-width:0; overflow-wrap:anywhere; }
.growth-calendar-item time,.growth-calendar-item small { color:var(--growth-muted); font-size:13px; }
.growth-calendar-icon { width:36px; height:36px; display:grid; place-items:center; border-radius:12px; background:color-mix(in srgb,var(--purple,#6b3fd6) 11%,transparent); }
.growth-calendar-item button { border:0; border-radius:10px; color:inherit; background:transparent; cursor:pointer; padding:8px; }

.growth-periods { display:flex; flex-wrap:wrap; gap:7px; }
.growth-periods button,.growth-help-tabs button { border:1px solid var(--growth-border); border-radius:999px; padding:10px 15px; color:inherit; background:transparent; font:inherit; font-weight:800; cursor:pointer; }
.growth-periods button.active,.growth-help-tabs button.active { color:#fff; border-color:transparent; background:linear-gradient(135deg,#7654dc,#e36f99); }
.growth-leaderboard { display:grid; gap:9px; }
.growth-leader-row { display:grid; grid-template-columns:40px 46px 1fr auto; align-items:center; gap:12px; padding:11px 15px; border:1px solid var(--growth-border); border-radius:18px; }
.growth-leader-row > b { width:34px; height:34px; display:grid; place-items:center; border-radius:12px; background:color-mix(in srgb,var(--purple,#6b3fd6) 12%,transparent); }
.growth-leader-row img { width:44px; height:44px; object-fit:cover; border-radius:14px; }
.growth-leader-row span { display:grid; }
.growth-leader-row small { color:var(--growth-muted); }
.growth-leader-row em { color:var(--purple,#6b3fd6); font-style:normal; font-weight:900; }

.growth-help-tabs { display:flex; gap:8px; margin:0 0 20px; padding:7px; overflow-x:auto; border:1px solid var(--growth-border); border-radius:22px; background:var(--growth-surface); scrollbar-width:thin; }
.growth-help-tabs button { white-space:nowrap; flex:1; }
.growth-help-pane { display:none; }
.growth-help-pane.active { display:block; animation:growthFade .2s ease; }
@keyframes growthFade { from { opacity:0; transform:translateY(5px); } }
.growth-faq-tools { display:grid; gap:14px; margin-bottom:12px; }
.growth-search { display:flex; align-items:center; gap:9px; margin:0; font-size:26px; }
.growth-faq-categories { display:flex; gap:8px; overflow-x:auto; padding:2px 2px 8px; scrollbar-width:thin; }
.growth-faq-categories button { flex:0 0 auto; display:inline-flex; align-items:center; gap:7px; padding:9px 13px; border:1px solid var(--growth-border); border-radius:999px; color:inherit; background:transparent; font:inherit; font-size:13px; font-weight:850; cursor:pointer; transition:.2s ease; }
.growth-faq-categories button:hover { border-color:var(--purple,#6b3fd6); transform:translateY(-1px); }
.growth-faq-categories button.active { color:#fff; border-color:transparent; background:linear-gradient(135deg,#7654dc,#e36f99); box-shadow:0 9px 22px rgba(111,73,207,.2); }
.growth-faq-categories button span { min-width:21px; height:21px; display:grid; place-items:center; padding:0 5px; border-radius:99px; background:color-mix(in srgb,currentColor 14%,transparent); font-size:11px; }
.growth-faq-result { margin:0; color:var(--growth-muted); font-size:13px; }
.growth-faq { border-bottom:1px solid var(--growth-border); }
.growth-faq > button { width:100%; display:flex; justify-content:space-between; gap:16px; padding:20px 4px; border:0; color:inherit; background:transparent; font:inherit; font-weight:900; text-align:left; cursor:pointer; }
.growth-faq > button b { font-size:23px; color:var(--purple,#6b3fd6); }
.growth-faq-answer { display:none; padding:0 4px 22px; color:var(--growth-muted); line-height:1.7; }
.growth-faq.open .growth-faq-answer { display:block; }
.growth-form { display:grid; gap:16px; }
.brainy-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.form-feedback.is-success { color:#11824b; }
.form-feedback.is-error { color:#c8374e; }
.growth-ticket { margin-bottom:10px; border:1px solid var(--growth-border); border-radius:18px; overflow:hidden; }
.growth-ticket summary { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px; cursor:pointer; list-style:none; }
.growth-ticket summary span { display:grid; gap:4px; }
.growth-ticket summary small { color:var(--growth-muted); }
.growth-ticket-thread { display:grid; gap:10px; padding:0 16px 16px; }
.growth-ticket-message { padding:15px; border-radius:16px; background:color-mix(in srgb,var(--surface,#fff) 84%,var(--purple,#6b3fd6) 16%); }
.growth-ticket-message.is-reply { margin-left:24px; border-left:3px solid var(--purple,#6b3fd6); }
.growth-inline-field { display:flex; align-items:center; gap:9px; }
.growth-inline-field input { min-width:0; }
.growth-teacher-list { display:grid; gap:12px; }
.growth-teacher { display:flex; gap:15px; padding:16px; border:1px solid var(--growth-border); border-radius:19px; }
.growth-teacher img { width:64px; height:64px; object-fit:cover; border-radius:20px; }
.growth-teacher > div { display:grid; gap:5px; }
.growth-teacher span { color:#d59023; font-weight:800; }
.growth-teacher small { color:var(--growth-muted); }
.growth-rules ol { display:grid; gap:13px; line-height:1.65; padding-left:24px; }
.olympiad-card .product-cover { position:relative; min-height:180px; display:grid; place-items:center; overflow:hidden; background:linear-gradient(135deg,#5c36bb,#de639b,#efb05d); }
.olympiad-card .product-cover > strong { font-size:58px; filter:drop-shadow(0 8px 20px rgba(0,0,0,.18)); }
.olympiad-status { position:absolute; left:14px; top:14px; padding:7px 11px; border-radius:999px; color:#fff; background:rgba(26,17,50,.75); backdrop-filter:blur(8px); font-size:12px; font-weight:900; }
.olympiad-card.is-live .olympiad-status { background:#11824b; }
.olympiad-card.is-finished { opacity:.78; }
.olympiad-schedule { display:grid; gap:4px; margin:12px 0; color:var(--growth-muted); font-size:13px; }

.growth-cookie-banner { position:fixed; z-index:12000; left:50%; bottom:18px; width:min(1180px,calc(100% - 32px)); transform:translateX(-50%); display:flex; align-items:center; justify-content:space-between; gap:24px; padding:20px 22px; border:1px solid rgba(255,255,255,.18); border-radius:24px; color:#fff; background:rgba(24,17,47,.96); box-shadow:0 25px 80px rgba(0,0,0,.35); backdrop-filter:blur(18px); }
.growth-cookie-banner.hidden,.growth-cookie-modal.hidden { display:none!important; }
.growth-cookie-banner p { color:rgba(255,255,255,.75); margin:5px 0 0; font-size:14px; }
.growth-cookie-actions { display:flex; flex:0 0 auto; gap:8px; }
.growth-cookie-modal { position:fixed; inset:0; z-index:12010; display:grid; place-items:center; padding:20px; background:rgba(15,9,31,.72); backdrop-filter:blur(10px); }
.growth-cookie-card { position:relative; width:min(560px,100%); display:grid; gap:17px; padding:34px; border-radius:28px; background:var(--surface,#fff); border:1px solid var(--growth-border); box-shadow:0 30px 100px rgba(0,0,0,.3); }
.growth-cookie-card label { display:flex; gap:10px; align-items:flex-start; }

body.dark-mode { --growth-surface:rgba(34,30,53,.94); --growth-border:rgba(181,159,255,.2); --growth-muted:#b8b2c8; --growth-shadow:0 24px 70px rgba(0,0,0,.25); }
body.dark-mode .growth-recommendation,body.dark-mode .growth-calendar-form input,body.dark-mode .growth-calendar-form select,body.dark-mode .growth-form input,body.dark-mode .growth-form select,body.dark-mode .growth-form textarea,body.dark-mode .growth-search input,body.dark-mode .growth-inline-field input { background:#211d35; }
body.dark-mode .growth-faq-categories button { background:#211d35; border-color:rgba(192,180,255,.22); }
body.dark-mode .growth-faq-categories button.active { background:linear-gradient(135deg,#7654dc,#e36f99); border-color:transparent; }
body.dark-mode .growth-cookie-card { background:#1d192d; color:#f8f5ff; }

@media (max-width:1050px) {
  .site-header .menu-toggle { display:flex; }
  .site-header .nav { gap:.5rem; }
  .site-header .brand { min-width:0; flex:1; }
  .site-header .nav-right { flex:0 0 auto; min-width:0; gap:.4rem; }
  .site-header .nav-links { position:absolute; top:calc(var(--nav-h) - 2px); left:0; right:0; display:grid; gap:.25rem; padding:.7rem; max-height:calc(100dvh - var(--nav-h) - 1rem); overflow-y:auto; overscroll-behavior:contain; background:var(--panel-strong); color:var(--text); border:1px solid var(--line); border-radius:22px; box-shadow:0 24px 44px rgba(84,47,175,.14); opacity:0; visibility:hidden; transform:translateY(-10px); transition:.22s ease; z-index:1450; }
  .site-header .nav-links.open { opacity:1; visibility:visible; transform:translateY(0); }
  .site-header .nav-group { width:100%; }
  .site-header .nav-submenu { position:static; box-shadow:none; margin-top:.25rem; background:rgba(107,70,255,.04); }
  .site-header .nav-links>button,.site-header .nav-group-toggle,.site-header .nav-submenu button { color:var(--text); }
  body.dark-mode .site-header .nav-links { background:#211f30; border-color:rgba(192,180,255,.22); box-shadow:0 26px 54px rgba(0,0,0,.52); }
  body.dark-mode .site-header .nav-submenu { background:#292638; border-color:rgba(192,180,255,.18); }
  .growth-metrics { grid-template-columns:repeat(3,1fr); }
  .growth-calendar-form { grid-template-columns:1fr 1fr; }
  .growth-calendar-form button { min-height:48px; }
}
@media (max-width:780px) {
  .growth-hero { padding:27px 22px; border-radius:26px; }
  .growth-hero-orb { width:76px; height:76px; font-size:40px; border-radius:22px; }
  .growth-grid { grid-template-columns:1fr; }
  .growth-metrics { grid-template-columns:repeat(2,1fr); }
  .growth-metric { min-height:118px; }
  .growth-card { padding:20px; border-radius:23px; }
  .growth-card-head { align-items:flex-start; flex-direction:column; }
  .growth-calendar-form { grid-template-columns:1fr; }
  .growth-calendar-item { grid-template-columns:42px minmax(0,1fr) auto; }
  .growth-calendar-item time { grid-column:1/-1; }
  .growth-help-tabs button { flex:0 0 auto; }
  .growth-cookie-banner { align-items:stretch; flex-direction:column; }
  .growth-cookie-actions { display:grid; grid-template-columns:1fr 1fr; }
  .growth-cookie-actions button:first-child { grid-column:1/-1; }
}
@media (max-width:480px) {
  html,body { max-width:100%; overflow-x:hidden; }
  .growth-hero-orb { display:none; }
  .growth-metrics { gap:9px; }
  .growth-metric { min-height:105px; padding:15px; }
  .growth-metric strong { font-size:24px; }
  .growth-recommendation { grid-template-columns:42px 1fr; }
  .growth-recommendation > b { display:none; }
  .growth-leader-row { grid-template-columns:32px 40px 1fr; padding:10px; }
  .growth-leader-row em { grid-column:3; }
  .growth-inline-field { align-items:stretch; flex-direction:column; }
  .growth-cookie-actions { grid-template-columns:1fr; }
  .growth-cookie-actions button:first-child { grid-column:auto; }
  .footer-grid { grid-template-columns:minmax(0,1fr)!important; }
  .footer-brand-col,.footer-nav-col { grid-column:auto!important; width:100%; min-width:0; max-width:100%; }
  .footer .brand,.footer-intro,.footer-links,.footer-links button { width:100%; min-width:0; max-width:100%; }
}
