/* «Кем тебе быть?» — career-guidance game. Mobile first, uses the site's theme tokens. */
.cg{overflow-x:clip;--cg-panel:#1f1f22;--cg-panel-ink:#f4f3f0;--cg-r:24px;--cg-ok:#16A34A;--cg-warn:#D97706;--cg-no:#E5484D;--cg-gold:#AC9259;padding-bottom:40px}
.cg h1,.cg h2,.cg h3{font-weight:500;letter-spacing:-.045em;line-height:1.05}
.cg em{font-style:normal;color:var(--muted)}
.cg-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:0 26px;border-radius:16px;border:1px solid var(--line);background:var(--card);color:var(--ink);font:500 16px/1 Golos,Arial,sans-serif;letter-spacing:-.01em;cursor:pointer;transition:transform .2s cubic-bezier(.2,.8,.2,1),background .2s,box-shadow .2s;text-decoration:none;-webkit-tap-highlight-color:transparent}
.cg-btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.cg-btn:hover{transform:translateY(-2px)}
.cg-btn:active{transform:scale(.97)}
.cg-btn-main{background:var(--button);color:var(--on-button);border-color:var(--button);box-shadow:0 14px 30px -14px #24242799}
.cg-btn-ghost{background:transparent}
.cg-btn[disabled]{opacity:.4;pointer-events:none}
.cg-eyebrow{margin:0 0 14px;font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.cg-sub{margin-top:14px;color:var(--muted);font-size:16px;max-width:560px}

/* Hero */
.cg-hero{display:grid;gap:28px;padding:36px 0 40px;align-items:center}
.cg-kicker{display:inline-flex;align-items:center;gap:10px;margin:0 0 20px;font-size:13px;color:var(--muted)}
.cg-pulse{width:8px;height:8px;border-radius:50%;background:var(--cg-ok);box-shadow:0 0 0 0 #16a34a66;animation:cg-pulse 2s infinite}
@keyframes cg-pulse{70%{box-shadow:0 0 0 10px #16a34a00}100%{box-shadow:0 0 0 0 #16a34a00}}
.cg-hero h1{font-size:clamp(54px,13vw,104px);margin:0}
.cg-lead{margin:20px 0 0;font-size:18px;line-height:1.55;color:var(--muted);max-width:540px}
.cg-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.cg-actions .cg-btn-main{flex:1 1 220px;max-width:340px}
.cg-meta{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:28px 0 0;padding:0;max-width:520px}
.cg-meta li{display:flex;flex-direction:column;gap:2px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--card)}
.cg-meta b{font-size:24px;font-weight:500;letter-spacing:-.04em;line-height:1.1}
.cg-meta span{font-size:12px;color:var(--muted);line-height:1.3}
.cg-hero-art{position:relative;height:360px;display:grid;place-items:center}
.cg-fan{position:relative;width:min(46vw,200px);aspect-ratio:5/7}
.cg-fan .cg-card{position:absolute;inset:0;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.cg-fan [data-fan="0"]{transform:translateX(-50%) rotate(-12deg) scale(.86);animation:cg-float 6s ease-in-out infinite}
.cg-fan [data-fan="1"]{transform:translateY(-4%);z-index:2;animation:cg-float 6s -2s ease-in-out infinite}
.cg-fan [data-fan="2"]{transform:translateX(50%) rotate(12deg) scale(.86);animation:cg-float 6s -4s ease-in-out infinite}
@keyframes cg-float{50%{translate:0 -8px}}

/* Card */
.cg-card{--c:#555;position:relative;display:block;aspect-ratio:5/7;border-radius:22px;padding:0;border:0;color:#fff;text-align:left;font:inherit;background:var(--c);background:radial-gradient(130% 90% at 25% 12%,color-mix(in srgb,var(--c) 55%,#fff) 0%,var(--c) 48%,color-mix(in srgb,var(--c) 62%,#000) 100%);box-shadow:0 24px 50px -24px color-mix(in srgb,var(--c) 75%,#000),inset 0 1px 0 #ffffff40;overflow:hidden;isolation:isolate;container-type:inline-size}
.cg-card::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,#ffffff38 45%,#ffffff10 52%,transparent 64%);background-size:250% 100%;background-position:var(--sheen,120%) 0;mix-blend-mode:overlay;pointer-events:none;z-index:2}
.cg-card-in{position:absolute;inset:6.5%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:3cqi;border:1px solid #ffffff59;border-radius:clamp(8px,6cqi,16px);padding:8cqi 8.5cqi 8.5cqi}
.cg-card-head{display:flex;justify-content:space-between;align-items:center;gap:3cqi;min-width:0;font-size:clamp(8px,4.6cqi,13px);font-weight:500;letter-spacing:.1em;text-transform:uppercase;line-height:1.2;opacity:.88}
.cg-card-head span:first-child{flex:none;font-size:clamp(11px,7.4cqi,22px);letter-spacing:.02em;line-height:1;font-family:Georgia,'Times New Roman',serif;text-transform:none}
.cg-card-head span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cg-card-art{position:relative;min-height:0;display:grid;place-items:center}
.cg-orbit{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#ffffff4d;stroke-width:1.2;overflow:visible}
.cg-glyph{position:relative;height:66%;width:auto;max-width:72%;aspect-ratio:1;fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 6px 14px #0003)}
.cg-card-foot{display:flex;flex-direction:column;gap:clamp(3px,2cqi,8px);min-width:0}
.cg-card-foot b{font-size:clamp(14px,10.4cqi,40px);font-weight:600;letter-spacing:-.03em;line-height:1.04;overflow-wrap:break-word;hyphens:manual}
.cg-card-foot span{font-size:clamp(10px,5.2cqi,17px);line-height:1.32;opacity:.9;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
@container (max-width:200px){.cg-card-foot span{-webkit-line-clamp:2}}
@container (max-width:170px){.cg-card-head span:last-child{display:none}.cg-card-foot span{display:none}.cg-card-foot b{font-size:max(11px,10.5cqi)}.cg-card-in{gap:2cqi;padding:7cqi 6.5cqi}}
@container (max-width:70px){.cg-card-head,.cg-card-foot,.cg-orbit{display:none}.cg-card-in{display:grid;grid-template-rows:1fr;padding:6%}.cg-glyph{height:78%;max-width:86%}}
a.cg-card,button.cg-card{width:100%;cursor:pointer;color:#fff;text-decoration:none;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
a.cg-card:hover,button.cg-card:hover{transform:translateY(-6px) rotate(-1deg)}
a.cg-card:hover::after,button.cg-card:hover::after{background-position:-20% 0;transition:background-position .9s}
a.cg-card:focus-visible,button.cg-card:focus-visible{outline:3px solid var(--ink);outline-offset:4px}

/* Landing sections */
.cg-section{padding:56px 0;border-top:1px solid var(--line)}
.cg-head{margin-bottom:28px}
.cg-head h2,.cg-final h2{font-size:clamp(34px,7vw,56px);margin:0}
.cg-step-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.cg-step-list li,.cg-get-item{display:flex;flex-direction:column;gap:6px;padding:22px;border:1px solid var(--line);border-radius:var(--cg-r);background:var(--card)}
.cg-step-list li>b,.cg-get-item>b{font-size:22px;font-weight:500;letter-spacing:-.03em}
.cg-step-list li>p,.cg-get-item>p{color:var(--muted);font-size:15px;line-height:1.5;margin:0}
.cg-step-list li{overflow:hidden;padding-top:14px}
.cg-step-meta{align-self:flex-start;margin-top:4px;padding:5px 11px;border-radius:999px;font-size:12px;font-weight:500;background:color-mix(in srgb,var(--c) 14%,transparent);color:color-mix(in srgb,var(--c) 72%,var(--ink))}

/* Round scenes («Как это работает») */
.cg-art{position:relative;display:block;height:160px;margin:0 -8px 8px;border-radius:18px;overflow:hidden;isolation:isolate;background:radial-gradient(90% 120% at 50% 0%,color-mix(in srgb,var(--c) 20%,transparent),transparent 72%),var(--raised)}
.cg-step-list:not(.is-live) .cg-art *,.cg-get-grid:not(.is-live) .cg-art *{animation-play-state:paused}
.cg-get-item{padding-top:14px;overflow:hidden}
.cg-get-item .cg-art{height:140px}
.cg-art-sw{position:absolute;left:50%;top:50%;width:86px;height:110px;margin:-52px 0 0 -43px;box-sizing:border-box;border-radius:16px;background:var(--card);border:1px solid var(--line);box-shadow:0 12px 24px -16px #0007}
.cg-art-sw-b{transform:translateY(12px) scale(.86)}
.cg-art-sw-a{transform:translateY(6px) scale(.93)}
.cg-art-sw-top{display:flex;flex-direction:column;gap:7px;padding:12px;transform:translateX(18px) rotate(7deg);animation:cg-art-swipe 5s cubic-bezier(.45,.05,.35,1) infinite}
.cg-art-ico{width:38px;height:38px;margin-bottom:auto;border-radius:12px;display:grid;place-items:center;background:radial-gradient(100% 100% at 30% 20%,color-mix(in srgb,var(--c) 60%,#fff),var(--c) 60%,color-mix(in srgb,var(--c) 70%,#000))}
.cg-art-ico svg{width:26px;height:26px;fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
.cg-art-line{display:block;height:6px;border-radius:4px;background:var(--line)}
.cg-art-line.short{width:62%}
@keyframes cg-art-swipe{0%,10%{transform:none}24%,36%{transform:translateX(38px) rotate(11deg)}48%,58%{transform:none}72%,84%{transform:translateX(-38px) rotate(-11deg)}96%,100%{transform:none}}
.cg-art-stamp{position:absolute;z-index:2;top:16px;padding:5px 11px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.02em;border:1.5px solid currentColor;background:var(--card)}
.cg-art-stamp.yes{right:16px;color:color-mix(in srgb,#16A34A 72%,var(--ink));transform:rotate(8deg);animation:cg-art-yes 5s infinite}
.cg-art-stamp.no{left:16px;color:color-mix(in srgb,#E5484D 78%,var(--ink));opacity:0;transform:rotate(-8deg);animation:cg-art-no 5s infinite}
@keyframes cg-art-yes{0%,16%{opacity:0;transform:rotate(8deg) scale(.7)}26%,38%{opacity:1;transform:rotate(8deg) scale(1)}46%,100%{opacity:0;transform:rotate(8deg) scale(.7)}}
@keyframes cg-art-no{0%,64%{opacity:0;transform:rotate(-8deg) scale(.7)}74%,86%{opacity:1;transform:rotate(-8deg) scale(1)}94%,100%{opacity:0;transform:rotate(-8deg) scale(.7)}}
.cg-art-pair{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 22px}
.cg-art-opt{position:relative;width:100%;max-width:220px;box-sizing:border-box;padding:12px 14px;border-radius:14px;background:var(--card);border:1px solid var(--line);font-size:13px;font-weight:500;line-height:1.2;color:var(--ink)}
.cg-art-opt.a{--c2:var(--c);background:var(--c2);border-color:var(--c2);color:#fff;animation:cg-art-pick-a 4.4s infinite}
.cg-art-opt.b{--c2:#6D4AFF;animation:cg-art-pick-b 4.4s infinite}
.cg-art-or{position:relative;z-index:1;margin:-8px 0;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--bg);border:1px solid var(--line);font-size:10px;color:var(--muted)}
@keyframes cg-art-pick-a{0%,6%,46%,100%{background:var(--card);border-color:var(--line);color:var(--ink);transform:none}10%,40%{background:var(--c2);border-color:var(--c2);color:#fff;transform:scale(1.04)}}
@keyframes cg-art-pick-b{0%,56%,96%,100%{background:var(--card);border-color:var(--line);color:var(--ink);transform:none}60%,90%{background:var(--c2);border-color:var(--c2);color:#fff;transform:scale(1.04)}}
.cg-art-scene{display:flex;flex-direction:column;justify-content:center;gap:10px;padding:0 24px}
.cg-art-q{align-self:flex-start;padding:7px 12px;border-radius:14px 14px 14px 4px;background:var(--card);border:1px solid var(--line);font-size:12px;font-weight:500;line-height:1.3;color:var(--ink)}
.cg-art-opts{position:relative;display:grid;gap:4px}
.cg-art-opts>span:not(.cg-art-sel){position:relative;z-index:1;display:flex;align-items:center;gap:9px;height:20px}
.cg-art-opts b{width:20px;height:20px;flex:none;border-radius:7px;display:grid;place-items:center;background:var(--card);border:1px solid var(--line);font-size:10px;font-weight:600;color:var(--ink)}
.cg-art-opts i{display:block;height:6px;width:var(--w,70%);border-radius:4px;background:var(--line)}
.cg-art-sel{position:absolute;left:-6px;right:-6px;top:-3px;height:26px;border-radius:9px;background:color-mix(in srgb,var(--c) 22%,var(--card));border:1px solid color-mix(in srgb,var(--c) 50%,transparent);transform:translateY(24px);animation:cg-art-sel 6s cubic-bezier(.6,0,.3,1) infinite}
@keyframes cg-art-sel{0%,18%{transform:translateY(0)}25%,43%{transform:translateY(24px)}50%,68%{transform:translateY(48px)}75%,93%{transform:translateY(72px)}100%{transform:translateY(0)}}
.cg-gart-card{display:flex;align-items:center;justify-content:center;gap:14px}
.cg-gart-c{display:block;width:70px;animation:cg-gart-float 4.5s ease-in-out infinite}
.cg-gart-c .cg-card{animation:cg-sheen 4.5s 1s ease-in-out infinite}
@keyframes cg-gart-float{0%,100%{transform:rotate(-6deg) translateY(3px)}50%{transform:rotate(-2deg) translateY(-4px)}}
.cg-gart-pct{padding:7px 12px;border-radius:999px;background:var(--c);color:#fff;font-size:12px;font-weight:600;box-shadow:0 10px 20px -10px var(--c);animation:cg-gart-pop 4.5s ease-in-out infinite}
@keyframes cg-gart-pop{0%,100%{transform:scale(1)}45%{transform:scale(1)}52%{transform:scale(1.1)}60%{transform:scale(1)}}
.cg-gart-jobs{display:grid;place-items:center}
.cg-gart-win{position:relative;width:min(220px,80%);height:98px;overflow:hidden;-webkit-mask-image:linear-gradient(transparent,#000 28%,#000 72%,transparent);mask-image:linear-gradient(transparent,#000 28%,#000 72%,transparent)}
.cg-gart-list{display:grid;gap:4px;animation:cg-gart-tick 9s cubic-bezier(.6,0,.3,1) infinite}
.cg-gart-list span{display:flex;align-items:center;gap:9px;height:30px;padding:0 12px;border-radius:10px;font-size:13px;font-weight:500;color:var(--ink)}
.cg-gart-list i{width:8px;height:8px;border-radius:50%;background:var(--c);flex:none}
.cg-gart-frame{position:absolute;left:50%;top:50%;z-index:1;width:min(228px,84%);height:34px;transform:translate(-50%,-50%);border-radius:12px;background:color-mix(in srgb,var(--c) 14%,transparent);border:1.5px solid color-mix(in srgb,var(--c) 55%,transparent);pointer-events:none}
@keyframes cg-gart-tick{0%,12%{transform:translateY(0)}16.6%,28%{transform:translateY(-34px)}33.3%,45%{transform:translateY(-68px)}50%,62%{transform:translateY(-102px)}66.6%,78%{transform:translateY(-136px)}83.3%,95%{transform:translateY(-170px)}100%{transform:translateY(-204px)}}
.cg-gart-dir{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:0 16px;text-align:center}
.cg-gart-dname{padding:7px 12px;border-radius:12px;background:var(--card);border:1px solid var(--line);font-size:12px;font-weight:500;color:var(--ink)}
.cg-gart-ex{display:flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:5px}
.cg-gart-ex span{padding:7px 11px;border-radius:10px;background:var(--card);border:1px solid var(--line);font-size:12px;font-weight:500;color:var(--ink);animation:cg-gart-in 5s infinite backwards}
.cg-gart-ex span.m{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.cg-gart-ex b{font-size:12px;font-weight:500;color:var(--muted);animation:cg-gart-in 5s infinite backwards}
.cg-gart-ex>:nth-child(2){animation-delay:.25s}.cg-gart-ex>:nth-child(3){animation-delay:.5s}.cg-gart-ex>:nth-child(4){animation-delay:.75s}.cg-gart-ex>:nth-child(5){animation-delay:1s}
@keyframes cg-gart-in{0%{opacity:0;transform:translateY(8px) scale(.9)}8%,88%{opacity:1;transform:none}96%,100%{opacity:0;transform:translateY(-4px)}}
.cg-gart-uni{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:0 22px}
.cg-gart-track{position:relative;display:block;height:6px;margin:0 6px 6px;border-radius:9px;background:var(--line)}
.cg-gart-track i{position:absolute;left:0;top:0;bottom:0;width:88%;border-radius:inherit;background:var(--c);animation:cg-gart-fill 6s ease-in-out infinite}
.cg-gart-track b{position:absolute;top:50%;left:88%;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:#fff;border:2px solid var(--c);box-shadow:0 3px 8px #0003;animation:cg-gart-thumb 6s ease-in-out infinite}
@keyframes cg-gart-fill{0%,12%,92%,100%{width:30%}48%,78%{width:88%}}
@keyframes cg-gart-thumb{0%,12%,92%,100%{left:30%}48%,78%{left:88%}}
.cg-gart-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-radius:12px;background:var(--card);border:1px solid var(--line);font-size:12px;font-weight:500;color:var(--ink)}
.cg-gart-row em{font-style:normal;color:var(--muted);margin-left:8px}
.cg-gart-st{position:relative;display:grid}
.cg-gart-st s{grid-area:1/1;text-decoration:none;padding:3px 8px;border-radius:999px;font-size:11px;text-align:center;background:var(--raised);color:var(--muted)}
.cg-gart-st s.ok{background:color-mix(in srgb,#16A34A 18%,var(--card));color:color-mix(in srgb,#16A34A 72%,var(--ink));animation:cg-gart-ok1 6s infinite}
.cg-gart-row+.cg-gart-row .cg-gart-st s.ok{animation-name:cg-gart-ok2}
@keyframes cg-gart-ok1{0%,30%,90%,100%{opacity:0}36%,84%{opacity:1}}
@keyframes cg-gart-ok2{0%,42%,90%,100%{opacity:0}48%,84%{opacity:1}}
.cg-gart-match{display:flex;align-items:center;justify-content:center}
.cg-gart-m{display:block;width:62px}
.cg-gart-m.a{--c:#DB2777;transform:translateX(6px) rotate(-8deg);animation:cg-gart-ma 5s ease-in-out infinite}
.cg-gart-m.b{--c:#16A34A;transform:translateX(-6px) rotate(8deg);animation:cg-gart-mb 5s ease-in-out infinite}
@keyframes cg-gart-ma{0%,100%{transform:translateX(-18px) rotate(-14deg)}40%,75%{transform:translateX(6px) rotate(-8deg)}}
@keyframes cg-gart-mb{0%,100%{transform:translateX(18px) rotate(14deg)}40%,75%{transform:translateX(-6px) rotate(8deg)}}
.cg-gart-heart{position:absolute;left:50%;top:50%;z-index:2;padding:6px 11px;border-radius:999px;background:var(--card);border:1.5px solid var(--c);color:var(--ink);font-size:13px;font-weight:600;transform:translate(-50%,-50%);box-shadow:0 10px 20px -12px #0006;animation:cg-gart-heart 5s ease-in-out infinite}
@keyframes cg-gart-heart{0%,30%,90%,100%{opacity:0;transform:translate(-50%,-50%) scale(.6)}44%,78%{opacity:1;transform:translate(-50%,-50%) scale(1)}}
.cg-gart-story{display:flex;align-items:center;justify-content:center;gap:18px}
.cg-gart-phone{display:block;width:64px;height:112px;padding:5px;box-sizing:border-box;border-radius:16px;background:#141416;box-shadow:0 14px 28px -14px #000a;transform:rotate(-5deg);animation:cg-gart-phone 5s ease-in-out infinite}
.cg-gart-scr{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;height:100%;border-radius:12px;background:radial-gradient(80% 60% at 50% 40%,color-mix(in srgb,#B44BE1 70%,#000),#111112)}
.cg-gart-mini{display:block;width:34px}
.cg-gart-scr i{display:block;width:60%;height:4px;border-radius:3px;background:#ffffff59}
.cg-gart-scr i.s{width:40%;background:#ffffff33}
@keyframes cg-gart-phone{0%,100%{transform:rotate(-5deg) translateY(0)}50%{transform:rotate(-1deg) translateY(-5px)}}
.cg-gart-share{position:relative;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--c);color:#fff}
.cg-gart-share::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--c);animation:cg-gart-ring 2.5s ease-out infinite}
.cg-gart-share svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@keyframes cg-gart-ring{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.7);opacity:0}}
.cg-art-subj{display:flex;align-items:center;justify-content:center;gap:16px;padding:0 18px}
.cg-art-chips{display:flex;flex-wrap:wrap;gap:6px;max-width:156px}
.cg-art-chips span{padding:6px 10px;border-radius:999px;background:var(--card);border:1px solid var(--line);font-size:11px;font-weight:500;line-height:1.2;color:var(--ink)}
.cg-art-chips span:nth-child(-n+3){background:var(--ink);border-color:var(--ink);color:var(--bg);animation:cg-art-chip 6s infinite}
.cg-art-chips span:nth-child(2){animation-delay:.45s}
.cg-art-chips span:nth-child(3){animation-delay:.9s}
@keyframes cg-art-chip{0%,6%,88%,100%{background:var(--card);border-color:var(--line);color:var(--ink);transform:none}12%{transform:scale(1.08)}16%,80%{background:var(--ink);border-color:var(--ink);color:var(--bg);transform:none}}
.cg-art-card{display:block;width:64px;flex:none;transform:rotate(-6deg);animation:cg-art-reveal 6s infinite}
.cg-art-card .cg-card{box-shadow:0 14px 28px -14px var(--c)}
@keyframes cg-art-reveal{0%,30%,96%,100%{filter:blur(6px) saturate(.6);opacity:.55;transform:rotate(-6deg) scale(.9)}42%,86%{filter:none;opacity:1;transform:rotate(-6deg) scale(1)}}
.cg-step-n{font-size:12px;color:var(--muted);letter-spacing:.08em}
.cg-type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cg-get-grid{display:grid;gap:10px}
.cg-faq-list{display:grid;gap:8px}
.cg-faq details{border:1px solid var(--line);border-radius:18px;background:var(--card);padding:0 20px}
.cg-faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:62px;font-size:17px;font-weight:500;cursor:pointer}
.cg-faq summary::-webkit-details-marker{display:none}
.cg-faq summary span{width:28px;height:28px;flex:none;border-radius:50%;border:1px solid var(--line);position:relative;transition:transform .3s}
.cg-faq summary span::before,.cg-faq summary span::after{content:"";position:absolute;left:8px;right:8px;top:13px;height:1.5px;background:currentColor}
.cg-faq summary span::after{transform:rotate(90deg)}
.cg-faq details[open] summary span{transform:rotate(45deg)}
.cg-faq details p{margin:0 0 18px;color:var(--muted);line-height:1.6}
.cg-final{padding:64px 0 24px;border-top:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start;gap:26px}
.cg-noscript{padding:20px;border:1px dashed var(--line);border-radius:16px}

/* Game overlay */
html.cg-lock,html.cg-lock body{overflow:hidden;overscroll-behavior:none}
.cg-game{position:fixed;inset:0;z-index:1000;background:var(--bg);color:var(--ink);display:flex;flex-direction:column;height:100dvh;overflow:hidden;animation:cg-in .35s cubic-bezier(.2,.8,.2,1)}
@keyframes cg-in{from{opacity:0;transform:translateY(24px)}}
.cg-top{display:flex;align-items:center;gap:10px;padding:max(10px,env(safe-area-inset-top)) 14px 8px}
.cg-icon-btn{width:44px;height:44px;flex:none;display:grid;place-items:center;border-radius:14px;border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer}
.cg-icon-btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cg-icon-btn[disabled]{opacity:.35;pointer-events:none}
.cg-progress{flex:1;min-width:0}
.cg-progress-label{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:6px}
.cg-progress-label b{font-weight:500;color:var(--ink)}
.cg-bars{display:grid;grid-template-columns:1.6fr 1fr .7fr .5fr;gap:4px}
.cg-bar{height:6px;border-radius:9px;background:var(--line);overflow:hidden}
.cg-bar i{display:block;height:100%;width:0;border-radius:inherit;background:var(--ink);transition:width .4s cubic-bezier(.2,.8,.2,1)}
.cg-live{display:flex;align-items:center;gap:12px;margin:0 14px;padding:8px 12px 8px 8px;border-radius:18px;background:var(--card);border:1px solid var(--line)}
.cg-live-card{width:40px;flex:none;filter:blur(var(--blur,10px));transition:filter .6s,opacity .4s}
.cg-live-card .cg-card{border-radius:8px;box-shadow:none}
.cg-live-card .cg-card-in{inset:4px;border-radius:5px}
.cg-live-card .cg-card-head,.cg-live-card .cg-card-foot,.cg-live-card .cg-orbit{display:none}
.cg-live-text{flex:1;min-width:0;font-size:13px;line-height:1.35;color:var(--muted)}
.cg-live-text b{display:block;color:var(--ink);font-weight:500;font-size:14px}
.cg-live-radar{width:58px;height:58px;flex:none}
.cg-stage{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;padding:14px 16px max(16px,env(safe-area-inset-bottom))}
.cg-screen{flex:1;min-height:0;display:flex;flex-direction:column;animation:cg-screen .4s cubic-bezier(.2,.8,.2,1)}
@keyframes cg-screen{from{opacity:0;transform:translateX(18px)}}
.cg-q{font-size:clamp(24px,6.6vw,34px);font-weight:500;letter-spacing:-.04em;line-height:1.1;margin:6px 0 16px}
.cg-q small{display:block;margin-bottom:10px;font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.cg-aside{display:none}

/* Intro between rounds */
.cg-intro{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:16px}
.cg-intro-n{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.cg-intro h2{font-size:clamp(48px,13vw,84px);margin:0}
.cg-intro p{margin:0;font-size:18px;line-height:1.5;color:var(--muted);max-width:420px}
.cg-intro .cg-btn{margin-top:14px;min-width:200px}
.cg-intro-icons{display:flex;gap:10px}
.cg-intro-icons span{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;color:#fff;background:var(--c);transform:rotate(var(--rot));animation:cg-pop .5s backwards cubic-bezier(.2,1.4,.4,1)}
.cg-intro-icons span:nth-child(2){animation-delay:.08s}.cg-intro-icons span:nth-child(3){animation-delay:.16s}
.cg-intro-icons svg{width:34px;height:34px;fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
@keyframes cg-pop{from{transform:scale(.3) rotate(0);opacity:0}}

/* Grade & subjects chips */
.cg-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.cg-chip{min-height:60px;padding:12px 14px;border-radius:18px;border:1px solid var(--line);background:var(--card);color:var(--ink);font:500 16px/1.25 Golos,Arial,sans-serif;text-align:left;cursor:pointer;display:flex;align-items:center;gap:10px;transition:transform .2s,background .2s,border-color .2s}
.cg-chip:active{transform:scale(.97)}
.cg-chip[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.cg-chip .cg-check{width:22px;height:22px;flex:none;border-radius:7px;border:1.5px solid currentColor;display:grid;place-items:center;opacity:.5}
.cg-chip[aria-pressed="true"] .cg-check{opacity:1;background:var(--bg);color:var(--ink)}
.cg-check svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;opacity:0}
.cg-chip[aria-pressed="true"] .cg-check svg{opacity:1}
.cg-subjects{overflow:auto;padding-bottom:8px}
.cg-chip-l{min-width:0}.cg-short{display:none}
@media (max-width:420px){.cg-subjects .cg-full{display:none}.cg-subjects .cg-short{display:inline}.cg-subjects .cg-chip{font-size:15px;gap:8px}}
.cg-subjects .cg-chips{grid-template-columns:repeat(2,minmax(0,1fr))}
.cg-foot{margin-top:auto;padding-top:12px;display:flex;flex-direction:column;gap:8px}
.cg-foot .cg-btn{width:100%}
.cg-hint{font-size:13px;color:var(--muted);text-align:center}

/* Swipe deck */
.cg-deck{position:relative;flex:1;min-height:260px;margin:4px 0 14px;touch-action:none}
.cg-sw{position:absolute;inset:0;margin:auto;max-width:440px;max-height:520px;border-radius:30px;background:var(--card);border:1px solid var(--line);box-shadow:0 30px 60px -30px #0000004d;display:flex;flex-direction:column;padding:22px;user-select:none;-webkit-user-select:none;transform-origin:50% 90%;will-change:transform;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .3s}
.cg-sw[data-depth="1"]{transform:translateY(14px) scale(.94);opacity:.85;pointer-events:none}
.cg-sw[data-depth="2"]{transform:translateY(28px) scale(.88);opacity:.5;pointer-events:none}
.cg-sw.dragging{transition:none;cursor:grabbing}
.cg-sw-top{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--muted)}
.cg-tag{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:999px;background:color-mix(in srgb,var(--c) 14%,transparent);color:color-mix(in srgb,var(--c) 80%,var(--ink));font-weight:500;font-size:13px}
.cg-tag i{width:7px;height:7px;border-radius:50%;background:var(--c)}
.cg-sw-art{flex:1;display:grid;place-items:center;min-height:0}
.cg-sw-art span{width:min(46%,170px);aspect-ratio:1;border-radius:32%;display:grid;place-items:center;background:var(--c);background:radial-gradient(100% 100% at 30% 20%,color-mix(in srgb,var(--c) 60%,#fff),var(--c) 60%,color-mix(in srgb,var(--c) 70%,#000));box-shadow:0 20px 40px -20px var(--c);transform:rotate(-6deg)}
.cg-sw-art svg{width:66%;height:auto;fill:none;stroke:#fff;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}
.cg-sw-text{font-size:clamp(22px,6vw,28px);font-weight:500;letter-spacing:-.035em;line-height:1.15;min-height:3.45em;display:flex;align-items:flex-end}
.cg-stamp{position:absolute;top:26px;padding:8px 14px;border:3px solid currentColor;border-radius:12px;font-weight:700;font-size:22px;letter-spacing:.04em;text-transform:uppercase;opacity:0;pointer-events:none}
.cg-stamp-yes{left:22px;color:var(--cg-ok);transform:rotate(-12deg)}
.cg-stamp-no{right:22px;color:var(--cg-no);transform:rotate(12deg)}
.cg-swipe-btns{display:grid;grid-template-columns:1fr .8fr 1fr;gap:10px}
.cg-swipe-btns button{min-height:62px;border-radius:20px;border:1px solid var(--line);background:var(--card);color:var(--ink);font:500 15px Golos,Arial,sans-serif;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;transition:transform .15s,background .2s}
.cg-swipe-btns button:active{transform:scale(.94)}
.cg-swipe-btns svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.cg-swipe-btns [data-v="no"]{color:var(--cg-no)}
.cg-swipe-btns [data-v="yes"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.cg-keys{display:none;justify-content:center;gap:18px;margin-top:10px;font-size:12px;color:var(--muted)}
.cg-keys kbd{font:inherit;padding:2px 7px;border:1px solid var(--line);border-radius:6px}

/* Pairs */
.cg-pair{flex:1;display:grid;grid-template-rows:1fr auto 1fr;gap:0;min-height:0}
.cg-opt{position:relative;border-radius:26px;border:1px solid var(--line);background:var(--card);color:var(--ink);font:500 clamp(22px,6vw,30px)/1.15 Golos,Arial,sans-serif;letter-spacing:-.035em;text-align:left;padding:22px;display:flex;align-items:flex-end;cursor:pointer;overflow:hidden;transition:transform .25s cubic-bezier(.2,.8,.2,1),background .25s,color .25s,opacity .25s}
.cg-opt::before{content:"";position:absolute;right:-30px;top:-30px;width:130px;height:130px;border-radius:50%;background:var(--c);opacity:.16;transition:transform .4s}
.cg-opt:hover::before{transform:scale(1.3)}
.cg-opt:active{transform:scale(.97)}
.cg-opt.picked{background:var(--c);color:#fff;transform:scale(1.02)}
.cg-opt.faded{opacity:.35;transform:scale(.97)}
.cg-or{justify-self:center;margin:-14px 0;z-index:2;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--bg);border:1px solid var(--line);font-size:14px;font-weight:500;color:var(--muted)}

/* Scenes */
.cg-options{display:grid;gap:10px;margin-top:auto}
.cg-option{display:flex;align-items:center;gap:14px;min-height:64px;padding:12px 16px;border-radius:20px;border:1px solid var(--line);background:var(--card);color:var(--ink);font:500 16px/1.3 Golos,Arial,sans-serif;text-align:left;cursor:pointer;transition:transform .2s,background .2s,color .2s,opacity .2s}
.cg-option b{width:34px;height:34px;flex:none;border-radius:11px;display:grid;place-items:center;background:var(--raised);font-weight:500}
.cg-option:active{transform:scale(.98)}
.cg-option.picked{background:var(--ink);color:var(--bg)}
.cg-option.picked b{background:var(--bg);color:var(--ink)}
.cg-option.faded{opacity:.35}

/* Reveal */
.cg-reveal{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;text-align:center}
.cg-reveal-card{width:min(64vw,280px);perspective:1200px}
.cg-reveal-card .cg-card{transition:transform 1s cubic-bezier(.2,.8,.2,1),filter 1s;filter:blur(14px) saturate(.6);transform:rotateY(180deg) scale(.9)}
.cg-reveal.done .cg-reveal-card .cg-card{filter:none;transform:none}
.cg-reveal-steps{min-height:28px;font-size:16px;color:var(--muted)}
.cg-reveal-title{display:none;flex-direction:column;align-items:center;gap:6px}
.cg-reveal.done .cg-reveal-title{display:flex;animation:cg-in .5s .5s backwards}
.cg-reveal-title small{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.cg-reveal-title b{font-size:clamp(34px,9vw,52px);font-weight:500;letter-spacing:-.045em;line-height:1}
.cg-reveal .cg-btn{min-width:240px}
.cg-confetti{position:fixed;inset:0;pointer-events:none;z-index:1001}

/* Result */
.cg-result{padding:24px 0 0}
.cg-r-hero{display:grid;gap:26px;padding:12px 0 40px;align-items:center}
.cg-r-card{width:min(64vw,300px);margin:0 auto;animation:cg-deal .9s cubic-bezier(.2,.8,.2,1)}
.cg-r-card .cg-card{transform:rotate(-3deg);animation:cg-sheen 5s 1s ease-in-out infinite}
@keyframes cg-deal{from{opacity:0;transform:translateY(40px) rotate(-12deg) scale(.9)}}
@keyframes cg-sheen{0%,60%{--sheen:120%}100%{--sheen:-30%}}
@property --sheen{syntax:'<percentage>';inherits:false;initial-value:120%}
.cg-r-copy h1{font-size:clamp(48px,12vw,88px);margin:0 0 14px}
.cg-r-copy .cg-tagline{font-size:22px;letter-spacing:-.03em;line-height:1.3;margin:0 0 14px}
.cg-r-copy .cg-about{color:var(--muted);font-size:17px;line-height:1.55;margin:0}
.cg-pw{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}
.cg-pw div{padding:16px;border-radius:18px;background:var(--card);border:1px solid var(--line)}
.cg-pw small{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.cg-pw p{margin:0;font-size:15px;line-height:1.4}
.cg-r-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.cg-r-actions .cg-btn{flex:1 1 180px}
.cg-block{padding:48px 0;border-top:1px solid var(--line)}
.cg-block>h2{font-size:clamp(32px,7vw,52px);margin:0 0 10px}
.cg-block>.cg-sub{margin:0 0 26px}

/* Radar & matches */
.cg-profile{display:grid;gap:24px;align-items:center}
.cg-radar{width:100%;max-width:420px;margin:0 auto;overflow:visible}
.cg-radar .grid{fill:none;stroke:var(--line)}
.cg-radar .axis{stroke:var(--line)}
.cg-radar .shape{fill:color-mix(in srgb,var(--c) 22%,transparent);stroke:var(--c);stroke-width:2.5;stroke-linejoin:round;transform-origin:center;animation:cg-grow 1s .2s cubic-bezier(.2,.8,.2,1) backwards}
.cg-radar .dot{fill:var(--c)}
.cg-radar text{fill:var(--ink);font-size:13px;font-family:Golos,Arial,sans-serif}
.cg-radar text.v{fill:var(--muted);font-size:11px}
@keyframes cg-grow{from{transform:scale(0);opacity:0}}
.cg-matches{display:grid;gap:12px}
.cg-match{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding:12px;border-radius:18px;background:var(--card);border:1px solid var(--line);cursor:pointer;text-align:left;font:inherit;color:inherit}
.cg-match .cg-card{width:44px;border-radius:8px;box-shadow:none}
.cg-match .cg-card-in{inset:3px;border-radius:5px}
.cg-match .cg-card-head,.cg-match .cg-card-foot,.cg-match .cg-orbit{display:none}
.cg-match b{display:block;font-weight:500;font-size:16px}
.cg-match-bar{height:6px;border-radius:9px;background:var(--line);margin-top:7px;overflow:hidden}
.cg-match-bar i{display:block;height:100%;border-radius:inherit;background:var(--c);transform-origin:left;animation:cg-bar 1.1s .3s cubic-bezier(.2,.8,.2,1) backwards}
@keyframes cg-bar{from{transform:scaleX(0)}}
.cg-match span.pct{font-size:20px;font-weight:500;letter-spacing:-.03em}

/* Jobs, directions, exams */
.cg-exams{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.cg-ex{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:11px;background:var(--raised);font-size:14px;line-height:1.2}
.cg-ex.mine{background:var(--ink);color:var(--bg)}
.cg-ex.extra{background:transparent;border:1px dashed var(--line)}
.cg-plus{color:var(--muted);font-size:14px}
.cg-ex-label{width:100%;font-size:12px;color:var(--muted);margin-top:8px}

/* Universities */
.cg-calc{position:sticky;top:calc(var(--cg-top,0px) + 8px);z-index:5;margin:0 -4px 14px;padding:14px 16px;border-radius:22px;background:color-mix(in srgb,var(--card) 92%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--line);box-shadow:var(--shadow)}
.cg-calc label{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:14px;color:var(--muted)}
.cg-calc output{font-size:28px;font-weight:500;letter-spacing:-.04em;color:var(--ink)}
.cg-range{display:block;width:100%;height:36px;margin:4px 0 0;padding:0;border:0;background:transparent;-webkit-appearance:none;appearance:none;cursor:pointer;touch-action:pan-y}
.cg-range:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:12px}
.cg-range::-webkit-slider-runnable-track{height:8px;border-radius:9px;background:linear-gradient(90deg,var(--c) var(--p,50%),var(--line) var(--p,50%))}
.cg-range::-moz-range-track{height:8px;border-radius:9px;background:var(--line)}
.cg-range::-moz-range-progress{height:8px;border-radius:9px;background:var(--c)}
.cg-range::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;margin-top:-10px;border-radius:50%;background:#fff;border:2px solid var(--c);box-shadow:0 4px 12px #0003}
.cg-range::-moz-range-thumb{width:26px;height:26px;border-radius:50%;background:#fff;border:2px solid var(--c)}
.cg-calc-sum{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:var(--muted)}
.cg-calc-sum b{color:var(--ink);font-weight:500}
.cg-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:0 0 12px;padding-bottom:2px}
.cg-tabs::-webkit-scrollbar{display:none}
.cg-tabs button{flex:none;min-height:42px;padding:0 16px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink);font:500 14px Golos,Arial,sans-serif;cursor:pointer;display:inline-flex;align-items:center;gap:8px}
.cg-tabs button i{width:9px;height:9px;border-radius:50%;background:var(--tc,var(--ink))}
.cg-tabs button[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.cg-unis{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.cg-uni{display:grid;grid-template-columns:1fr auto;gap:6px 14px;padding:16px 18px;border-radius:20px;background:var(--card);border:1px solid var(--line);transition:border-color .3s}
.cg-uni.ok{border-color:color-mix(in srgb,var(--cg-ok) 55%,var(--line))}
.cg-uni-name{font-weight:500;font-size:17px;letter-spacing:-.02em}
.cg-uni-name small{font-weight:400;color:var(--muted);font-size:13px;margin-left:6px;letter-spacing:0}
.cg-uni-prog{grid-column:1;font-size:14px;color:var(--muted);line-height:1.4}
.cg-uni-score{grid-row:1/3;grid-column:2;text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.cg-uni-score b{font-size:24px;font-weight:500;letter-spacing:-.04em;line-height:1}
.cg-uni-score b small{font-size:13px;color:var(--muted);font-weight:400}
.cg-st{font-size:12px;font-weight:500;padding:5px 9px;border-radius:999px;white-space:nowrap}
.cg-st.ok{background:color-mix(in srgb,var(--cg-ok) 16%,transparent);color:color-mix(in srgb,var(--cg-ok) 85%,var(--ink))}
.cg-st.edge{background:color-mix(in srgb,var(--cg-warn) 18%,transparent);color:color-mix(in srgb,var(--cg-warn) 85%,var(--ink))}
.cg-st.no{background:var(--raised);color:var(--muted)}
.cg-disclaimer{margin:16px 0 0;font-size:13px;color:var(--muted);line-height:1.55}

.cg-uni-hint{display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-size:14px;font-weight:500;color:color-mix(in srgb,var(--c) 75%,var(--ink));text-decoration:none}
.cg-uni-hint svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cg-uni-hint[hidden]{display:none}

/* Courses (shop) */
@media (max-height:700px){.cg-calc{position:static}}

/* Share & lead */
.cg-share-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.cg-share-row .cg-btn{padding:0 10px;font-size:14px}
.cg-toast{position:fixed;left:50%;bottom:calc(90px + env(safe-area-inset-bottom));z-index:1100;transform:translate(-50%,20px);opacity:0;padding:12px 18px;border-radius:14px;background:var(--ink);color:var(--bg);font-size:14px;pointer-events:none;transition:.3s}
.cg-toast.on{opacity:1;transform:translate(-50%,0)}

/* Type dialog */
@media (max-width:420px){.cg-dialog-head{grid-template-columns:minmax(0,1fr);padding-right:0}.cg-dialog-head>div:first-child{width:92px}}

/* Short phones: keep the play area roomy */
@media (max-height:720px){
 .cg-live{padding:6px 10px 6px 6px}.cg-live-card{width:30px}.cg-live-radar{width:44px;height:44px}.cg-live-text{font-size:12px}.cg-live-text b{font-size:13px}
 .cg-q{font-size:clamp(21px,6vw,28px);margin:2px 0 12px}.cg-option{min-height:54px;padding:9px 14px;font-size:15px}.cg-option b{width:30px;height:30px}
 .cg-swipe-btns button{min-height:54px}.cg-sw{padding:16px}.cg-chip{min-height:52px}
}
@media (max-height:600px){.cg-live{display:none}.cg-stage{padding-top:8px}.cg-sw-art span{width:min(36%,110px)}}
@media (max-width:360px){
 .cg-hero h1{font-size:50px}.cg-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.cg-chip{font-size:15px;padding:10px 12px}.cg-subjects .cg-check{display:none}
 .cg-share-row .cg-btn{font-size:13px;padding:0 6px}.cg-pw{grid-template-columns:1fr}.cg-uni{padding:14px}.cg-uni-score b{font-size:21px}
 .cg-r-copy h1{font-size:44px}
}
/* Home page promo */
.cg-home{padding:56px 0}
.cg-promo{--cg-panel:#1f1f22;position:relative;display:grid;gap:8px;padding:30px 24px 0;border-radius:28px;overflow:hidden;text-decoration:none;color:#f4f3f0;background:radial-gradient(70% 90% at 92% 30%,#16a34a55,transparent 70%),radial-gradient(60% 80% at 70% 100%,#ea580c47,transparent 70%),radial-gradient(50% 60% at 100% 0%,#0d948840,transparent 70%),var(--cg-panel);border:1px solid #2e2e31;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.cg-promo:hover{transform:translateY(-3px)}
.cg-promo:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
.cg-promo-copy{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.cg-promo-kicker{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:#d8c48f}
.cg-promo-kicker span{width:8px;height:8px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 4px #4ade8033}
.cg-promo-title{font-size:clamp(32px,7.4vw,56px);font-weight:500;letter-spacing:-.045em;line-height:1.04}
.cg-promo-title em{font-style:normal;color:#a9a8a4}
.cg-wide-br{display:none}
.cg-promo-lead{max-width:480px;font-size:16px;line-height:1.55;color:#c9c8c4}
.cg-promo-cta{display:inline-flex;align-items:center;gap:12px;min-height:54px;padding:0 24px;margin-top:6px;border-radius:16px;background:#f4f3f0;color:#242427;font-size:16px;font-weight:500}
.cg-promo-cta svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s}
.cg-promo:hover .cg-promo-cta svg{transform:translateX(4px)}
.cg-promo-art{position:relative;display:grid;place-items:center;height:250px;margin-top:6px}
.cg-promo-art .cg-fan{width:150px;transform:translateY(30px)}
.cg-promo-art .cg-card{box-shadow:0 24px 50px -20px #000}
html[data-theme=dark] .cg-promo{border-color:var(--line)}
html:not([lang="ru"]) .cg-home{display:none}

/* Views */
.cg[data-view]:not([data-view="landing"])>section{display:none}
.cg-match-pill{display:inline-flex;margin:0 0 14px;padding:6px 12px;border-radius:999px;background:var(--c);color:#fff;font-size:13px;font-weight:500}
.cg-joke{margin:4px 0 0;font-size:15px;line-height:1.5;color:var(--muted)}
.cg-r-copy h1{overflow-wrap:break-word}
a.cg-match{text-decoration:none}
a.cg-match:hover{border-color:color-mix(in srgb,var(--c) 50%,var(--line))}

/* Compact lists */
.cg-joblist,.cg-dirlist{list-style:none;margin:0;padding:0;display:grid;border-top:1px solid var(--line)}
.cg-joblist li,.cg-dirlist li{display:grid;gap:4px;padding:16px 0;border-bottom:1px solid var(--line)}
.cg-joblist b,.cg-dirlist b{font-size:18px;font-weight:500;letter-spacing:-.02em}
.cg-joblist span{color:var(--muted);font-size:15px;line-height:1.45}
.cg-dirlist>li>span{color:var(--muted);font-size:15px;line-height:1.5}
.cg-dirlist .cg-exams{margin-top:6px}
.cg-dirlist small{font-size:13px;color:color-mix(in srgb,var(--cg-warn) 75%,var(--ink))}
.cg-ex{padding:6px 10px;font-size:13px;border-radius:10px}
.cg-set{display:grid;gap:10px;margin:0 0 18px}
.cg-set-label{font-size:13px;color:var(--muted)}
.cg-set-chips{display:flex;flex-wrap:wrap;gap:8px}
.cg-set-chips span{padding:10px 16px;border-radius:14px;background:var(--c);color:#fff;font-size:16px;font-weight:500}
.cg-set-chips span:first-child{background:var(--raised);color:var(--ink)}
.cg-set p{margin:0;color:var(--muted);font-size:15px;line-height:1.5}
.cg-tabs-sm{margin:12px 0}
.cg-tabs-sm button{min-height:36px;padding:0 14px;font-size:13px}
.cg-calc .cg-calc-sum{align-items:center}
.cg-calc .cg-calc-sum span{color:var(--ink);font-weight:500}
.cg-uni{grid-template-columns:1fr auto auto;align-items:center}
.cg-uni-score{grid-row:1/3}
.cg-src{grid-row:1/3;grid-column:3;display:grid;place-items:center;width:32px;height:32px;border-radius:10px;color:var(--muted)}
.cg-src svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cg-src:hover{background:var(--raised);color:var(--ink)}
.cg-unis-static .cg-uni{grid-template-columns:1fr auto}
.cg-unis-static .cg-src{grid-row:auto;grid-column:auto;display:inline;width:auto;height:auto;font-size:12px;text-decoration:underline;text-underline-offset:3px}
.cg-unis-static .cg-uni-score{align-items:flex-end}

/* Preparation (compact) */

/* Strip of other cards */
.cg-strip{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 48px 10px 2px;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 56px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 56px),transparent)}
.cg-strip::-webkit-scrollbar{display:none}
.cg-strip .cg-card{flex:0 0 96px;scroll-snap-align:start;box-shadow:0 12px 24px -16px color-mix(in srgb,var(--c) 70%,#000)}
.cg-more{display:grid;gap:14px}
.cg-link{justify-self:start;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0;border:0;background:none;color:var(--muted);font:500 15px Golos,Arial,sans-serif;cursor:pointer}
.cg-link svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cg-link:hover{color:var(--ink)}

/* Hidden card and flip */
.cg-card-back{--c:#2a2a2d;background:radial-gradient(120% 90% at 30% 10%,#3a3a3e,#1c1c1f 60%,#121214)!important;box-shadow:0 24px 50px -24px #000a,inset 0 1px 0 #ffffff1f}
.cg-card-back .cg-card-in{display:grid;place-items:center;border-color:#ffffff26}
.cg-card-back .cg-orbit{inset:12% 6%;width:88%;height:76%;stroke:#ac925966}
.cg-card-back b{position:relative;font-family:Georgia,'Times New Roman',serif;font-size:max(28px,34cqi);font-weight:400;color:#d8c48f}
.cg-flip{perspective:1200px}
.cg-flip-in{position:relative;transform-style:preserve-3d;animation:cg-flip 1.1s .5s cubic-bezier(.2,.8,.2,1) both}
.cg-flip-back,.cg-flip-front{backface-visibility:hidden;-webkit-backface-visibility:hidden}
.cg-flip-back{position:absolute;inset:0;transform:rotateY(180deg)}
@keyframes cg-flip{from{transform:rotateY(180deg)}to{transform:rotateY(360deg)}}

/* Duo */
.cg-duo{display:grid;gap:22px;padding:24px;margin:0 0 28px;border-radius:28px;color:var(--cg-panel-ink);background:radial-gradient(70% 60% at 10% 0%,color-mix(in srgb,var(--c) 34%,transparent),transparent 70%),radial-gradient(70% 60% at 100% 10%,color-mix(in srgb,var(--c2) 34%,transparent),transparent 70%),var(--cg-panel);border:1px solid var(--cg-panel)}
.cg-duo-top{display:grid;gap:18px;align-items:center}
.cg-duo-cards{display:flex;justify-content:center}
.cg-duo-card{width:min(34vw,132px)}
.cg-duo-card:first-child{transform:rotate(-7deg) translateX(10px)}
.cg-duo-card.b{transform:rotate(7deg) translateX(-10px)}
.cg-duo-pct{margin:0;font-size:clamp(64px,18vw,104px);font-weight:500;letter-spacing:-.06em;line-height:.9}
.cg-duo-head h2{margin:8px 0 8px;font-size:clamp(24px,6vw,36px);color:inherit}
.cg-duo-head p{margin:0;opacity:.75;line-height:1.5}
.cg-duo-body{display:grid;gap:18px;align-items:center}
.cg-duo-radar{max-width:340px;width:100%;margin:0 auto}
.cg-radar-duo .grid{fill:none;stroke:#ffffff26}
.cg-radar-duo .shape{fill:color-mix(in srgb,var(--c) 30%,transparent);stroke:var(--c);stroke-width:2.5;stroke-linejoin:round}
.cg-radar-duo .shape.b{fill:color-mix(in srgb,var(--c) 22%,transparent)}
.cg-radar-duo text{fill:currentColor;opacity:.8;font-size:13px;font-family:Golos,Arial,sans-serif}
.cg-legend{display:flex;justify-content:center;gap:16px;margin:6px 0 0;font-size:13px;opacity:.85}
.cg-legend span{display:inline-flex;align-items:center;gap:8px}
.cg-legend span::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--c)}
.cg-duo-facts{display:grid;gap:10px;margin:0}
.cg-duo-facts div{padding:14px 16px;border-radius:16px;background:#ffffff0f;border:1px solid #ffffff17}
.cg-duo-facts dt{font-size:12px;letter-spacing:.08em;text-transform:uppercase;opacity:.6;margin-bottom:4px}
.cg-duo-facts dd{margin:0;line-height:1.45}
.cg-duo-actions{display:flex;flex-wrap:wrap;gap:10px}
.cg-duo-actions .cg-btn{flex:1 1 220px}
.cg-duo .cg-btn-main{background:#f4f3f0;color:#242427;border-color:#f4f3f0}
.cg-duo .cg-btn:not(.cg-btn-main){background:transparent;color:inherit;border-color:#ffffff33}

/* Invite */
.cg-invite{display:grid;gap:26px;align-items:center;padding:20px 0 40px}
.cg-invite-card{width:min(58vw,240px);margin:0 auto;transform:rotate(-4deg);animation:cg-float 6s ease-in-out infinite}
.cg-invite h1{font-size:clamp(42px,10vw,76px);margin:0}
.cg-invite .cg-lead{margin-top:16px}

/* Sheets */
.cg-sheet{width:min(560px,100vw);max-width:100vw;max-height:min(92dvh,900px);margin:auto auto 0;padding:0;border:0;border-radius:28px 28px 0 0;background:var(--bg);color:var(--ink);overflow:auto;overscroll-behavior:contain}
.cg-sheet[open]{animation:cg-sheet-in .35s cubic-bezier(.2,.8,.2,1)}
@keyframes cg-sheet-in{from{transform:translateY(40px);opacity:0}}
.cg-sheet::backdrop{background:#000a;backdrop-filter:blur(4px)}
.cg-sheet-in{display:grid;gap:16px;padding:18px 18px max(18px,env(safe-area-inset-bottom))}
.cg-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.cg-sheet-head h2{margin:0;font-size:24px;letter-spacing:-.03em}
.cg-sheet-text{margin:0;color:var(--muted);line-height:1.5}
.cg-sheet .cg-btn{min-height:52px}
.cg-slides{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -18px;padding:0 18px 6px;scrollbar-width:none}
.cg-slides::-webkit-scrollbar{display:none}
.cg-slide{flex:0 0 min(58vw,210px);margin:0;scroll-snap-align:center;display:grid;gap:8px}
.cg-slide img{display:block;width:100%;aspect-ratio:9/16;border-radius:18px;background:var(--raised);object-fit:cover;box-shadow:0 18px 36px -22px #0009}
.cg-slide figcaption{font-size:13px;color:var(--muted);text-align:center}
.cg-seg{display:flex;justify-self:center;gap:4px;padding:4px;border-radius:999px;background:var(--raised)}
.cg-seg button{min-height:38px;padding:0 16px;border:0;border-radius:999px;background:transparent;color:var(--muted);font:500 14px Golos,Arial,sans-serif;cursor:pointer}
.cg-seg button[aria-pressed="true"]{background:var(--card);color:var(--ink);box-shadow:0 2px 8px #0000001f}
.cg-share-row-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.cg-share-row-4 .cg-btn{padding:0 6px;font-size:13px;gap:6px}
.cg-share-row .cg-btn svg{width:16px;height:16px}
.cg-cmp-vis{display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 0}
.cg-cmp-card{width:110px}
.cg-cmp-card:first-child{transform:rotate(-6deg)}
.cg-cmp-card:last-child{transform:rotate(6deg)}
.cg-cmp-vs{font-family:Georgia,'Times New Roman',serif;font-size:22px;color:var(--muted)}

/* Type pages */
.cg-typepage{padding-top:8px}
.cg-back{padding:16px 0 4px}
.cg-back a{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--muted);font-size:15px;text-decoration:none}
.cg-back a:hover{color:var(--ink)}
.cg-back svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cg-typepage .cg-r-actions a{text-decoration:none}
.cg-typepage .cg-faq{border-top:1px solid var(--line)}

/* Wider screens */
@media (min-width:700px){
 .cg-type-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
 .cg-step-list,.cg-get-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .cg-hero-art{height:440px}
 .cg-fan{width:240px}
 .cg-fan [data-fan="0"]{transform:translateX(-62%) rotate(-12deg) scale(.88)}
 .cg-fan [data-fan="2"]{transform:translateX(62%) rotate(12deg) scale(.88)}
 .cg-chips{grid-template-columns:repeat(3,minmax(0,1fr))}
 .cg-pair{grid-template-rows:none;grid-template-columns:1fr auto 1fr;align-items:stretch}
 .cg-or{margin:auto -14px}
 .cg-keys{display:flex}
 .cg-promo{grid-template-columns:1.15fr .85fr;align-items:center;padding:44px 48px;gap:24px}
 .cg-joblist{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}
 .cg-sheet{margin:auto;border-radius:28px;max-height:90dvh}
 .cg-sheet-in{padding:24px}
 .cg-slides{margin:0;padding:0 0 6px;justify-content:center}
 .cg-slide{flex-basis:150px}
 .cg-invite{grid-template-columns:auto 1fr;gap:56px;padding:40px 0 56px}
 .cg-invite-card{width:260px}
 .cg-duo{padding:36px;gap:28px}
 .cg-duo-top{grid-template-columns:auto 1fr;gap:36px}
 .cg-duo-body{grid-template-columns:minmax(0,340px) 1fr;gap:36px}
 .cg-duo-card{width:150px}
 .cg-strip .cg-card{flex-basis:120px}
 .cg-promo-art{height:300px;margin:-44px 0}
 .cg-promo-art .cg-fan{width:190px;transform:none}
 .cg-home{padding:72px 0}
 .cg-wide-br{display:inline}
}
@media (min-width:1000px){
 .cg-hero{grid-template-columns:1.1fr 1fr;padding:56px 0 64px}
 .cg-type-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
 .cg-step-list{grid-template-columns:repeat(4,minmax(0,1fr))}
 .cg-get-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .cg-r-hero{grid-template-columns:400px 1fr;gap:56px}
 .cg-r-card{width:100%}
 .cg-profile{grid-template-columns:1fr 1fr}
 .cg-game{display:grid;grid-template-columns:1fr 340px;grid-template-rows:auto 1fr}
 .cg-top{grid-column:1/-1;padding:18px 28px 10px}
 .cg-live{display:none}
 .cg-stage{grid-column:1;width:100%;max-width:620px;margin:0 auto;padding:18px 28px 28px}
 .cg-aside{display:flex;flex-direction:column;align-items:center;gap:18px;padding:20px 28px 28px;border-left:1px solid var(--line)}
 .cg-aside .cg-live-card{width:150px;--blur:14px}
 .cg-aside .cg-live-card .cg-card{border-radius:18px}
 .cg-aside .cg-live-card .cg-card-in{inset:6.5%;border-radius:12px}
 .cg-aside .cg-live-card .cg-orbit{display:block}
 .cg-aside-radar{width:100%;max-width:260px}
 .cg-aside p{margin:0;text-align:center;color:var(--muted);font-size:14px;line-height:1.5}
 .cg-aside b{color:var(--ink);font-weight:500}
}
html[data-theme=dark] .cg-btn-main{box-shadow:none}
html[data-theme=dark] .cg{--cg-panel:#232326;--cg-panel-ink:#f4f3f0}
html[data-theme=dark] .cg-card{box-shadow:0 24px 50px -28px #000,inset 0 1px 0 #ffffff30}
html[data-theme=dark] .cg-calc{background:color-mix(in srgb,var(--card) 90%,transparent)}
html[data-theme=dark] .cg-uni.ok{border-color:color-mix(in srgb,var(--cg-ok) 60%,var(--line))}
html[data-theme=dark] .cg-sw-art span{box-shadow:0 20px 40px -24px var(--c)}
html[data-theme=dark] .cg-sw{box-shadow:0 30px 60px -30px #000}
@media (prefers-reduced-motion:reduce){
 .cg *,.cg *::before,.cg *::after{animation:none!important;transition:none!important}
}
.cg-link[hidden]{display:none}
.cg-uni-all{color:var(--ink);margin-top:-4px}

/* Courses (shop) and open lessons on the result screen */
.cg-shop{scroll-margin-top:calc(var(--cg-top,0px) + 16px)}
.cg-shop-grid{display:grid;gap:12px}
.cg-shop-card{display:flex;flex-direction:column;gap:6px;padding:22px;border-radius:24px;background:var(--card);border:1px solid var(--line);position:relative;overflow:hidden}
.cg-shop-card::before{content:"";position:absolute;right:-50px;top:-50px;width:150px;height:150px;border-radius:50%;background:var(--c);opacity:.1}
.cg-shop-tag{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.cg-shop-card h3{font-size:26px;margin:6px 0 0}
.cg-shop-card p{margin:0;color:var(--muted)}
.cg-shop-price{display:flex;align-items:baseline;gap:8px;margin-top:14px}
.cg-shop-price b{font-size:28px;font-weight:500;letter-spacing:-.04em}
.cg-shop-price span{color:var(--muted);font-size:14px}
.cg-shop-actions{display:grid;grid-template-columns:1.3fr 1fr;gap:8px;margin-top:16px}
.cg-shop-actions .cg-btn{min-height:50px;padding:0 14px;font-size:15px}
@media (max-width:380px){.cg-shop-actions{grid-template-columns:1fr}}
.cg-shop-note{margin:14px 0 0;font-size:14px;color:var(--muted)}
.cg-shop-all{display:inline-flex;align-items:center;gap:10px;margin-top:18px;min-height:44px;font-weight:500;text-decoration:underline;text-underline-offset:4px}
.cg-shop-all svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cg-result .cg-free{margin:0 0 8px}

/* Sticky share bar */
.cg-sticky{position:fixed;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:50;display:flex;gap:8px;padding:8px;border-radius:22px;background:color-mix(in srgb,var(--card) 88%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--line);box-shadow:0 20px 40px -20px #0006;transform:translateY(140%);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.cg-sticky.on{transform:none}
.cg-sticky .cg-btn{flex:1;min-height:50px;padding:0 12px;font-size:15px}

/* Type dialog */
.cg-dialog{overflow-x:hidden;width:min(560px,calc(100vw - 24px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--line);border-radius:28px;background:var(--bg);color:var(--ink);overflow:auto}
.cg-dialog::backdrop{background:#0009;backdrop-filter:blur(4px)}
html[data-theme=dark] .cg-dialog::backdrop{background:#000b}
.cg-dialog-in{padding:22px;display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.cg-dialog-head>div{min-width:0}
.cg-dialog-head{display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:center;padding-right:44px}
.cg-dialog h2{font-size:clamp(24px,6.6vw,34px);margin:0 0 6px;overflow-wrap:break-word}
@media (max-width:420px){.cg-dialog-head{grid-template-columns:minmax(0,1fr);padding-right:0}.cg-dialog-head>div:first-child{width:92px}}
.cg-dialog p{margin:0;color:var(--muted);line-height:1.5}
.cg-dialog ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.cg-dialog li{padding:12px 14px;border-radius:14px;background:var(--card);border:1px solid var(--line);font-size:15px}
.cg-dialog li b{font-weight:500}
.cg-dialog .cg-icon-btn{position:sticky;top:12px;margin:12px 12px -56px auto;z-index:2}
.cg-dialog .cg-link{color:var(--ink)}
@media (min-width:700px){
 .cg-shop-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
}
@media (min-width:1000px){.cg-sticky{display:none}}
