:root {
  --ink: #142019;
  --ink-soft: #213329;
  --paper: #f5f7f4;
  --white: #ffffff;
  --line: #d7ded7;
  --muted: #647269;
  --lime: #dcef8b;
  --lime-ink: #203009;
  --blue: #2678c9;
  --red: #b33d36;
  --shadow: 0 18px 44px rgba(20, 32, 25, .12);
  color: var(--ink);
  background: var(--paper);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-synthesis: none;
}

* { box-sizing: border-box; }
html { min-width: 0; scroll-behavior: smooth; }
body { margin: 0; min-width: 0; background: var(--paper); color: var(--ink); }
html, body { overflow-x: clip; }
button, input, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
img { display: block; max-width: 100%; }
a { color: inherit; }
[hidden] { display: none !important; }
.skip-link { position: fixed; top: .7rem; left: .7rem; z-index: 20; transform: translateY(-220%); padding: .7rem 1rem; background: var(--lime); color: var(--ink); }
.skip-link:focus { transform: translateY(0); }

.topbar { position: sticky; top: 0; z-index: 10; display: flex; align-items: center; gap: 2rem; min-height: 74px; padding: 0 max(2rem, calc((100vw - 1240px) / 2)); border-bottom: 1px solid var(--line); background: rgba(242,244,239,.96); backdrop-filter: blur(14px); }
.brand { display: inline-flex; align-items: center; flex: none; gap: .55rem; color: var(--ink); text-decoration: none; font-size: 1.2rem; font-weight: 800; }
.brand img { width: 34px; height: 34px; object-fit: contain; }
.brand span span { color: var(--blue); }
.desktop-nav { display: flex; align-items: center; gap: .15rem; margin-right: auto; }
.desktop-nav a { padding: .7rem .85rem; color: #415047; text-decoration: none; font-size: .94rem; font-weight: 650; }
.desktop-nav a[aria-current="page"] { color: var(--ink); background: #dfe5dc; }
.topbar-actions { display: flex; align-items: center; gap: .7rem; }
.text-button, .underlink, .card-link { display: inline-flex; align-items: center; justify-content: center; gap: .4rem; border: 0; padding: 0; background: transparent; color: var(--ink); text-decoration: none; font-weight: 700; font-size: .9rem; }
.text-button { padding: .65rem .25rem; }
.preview-ribbon { margin: 0; padding: .48rem 1rem; border-bottom: 1px solid #dce3da; color: #526157; text-align: center; font-size: .76rem; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: .55rem; min-height: 46px; border: 1px solid transparent; padding: .7rem 1rem; font-size: .92rem; font-weight: 800; text-decoration: none; }
.button img, .underlink img, .card-link img { width: 16px; height: 16px; object-fit: contain; }
.button-dark { border-color: var(--ink); background: var(--ink); color: var(--white); }
.button-lime { border-color: var(--lime); background: var(--lime); color: var(--lime-ink); }
.button-outline { border-color: var(--ink); background: transparent; color: var(--ink); }
.button-telegram { border-color: #297ad1; background: #297ad1; color: white; }
.full { width: 100%; }
.button:hover, .icon-button:hover { transform: translateY(-1px); box-shadow: 0 8px 20px rgba(16,25,20,.13); }
.button:disabled { cursor: not-allowed; opacity: .56; transform: none; box-shadow: none; }
.button:focus-visible, a:focus-visible, input:focus-visible, textarea:focus-visible, details:focus-visible, .platform-tabs button:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }

main { min-height: calc(100vh - 150px); }
#main:focus { outline: 0; }
.view { width: min(1240px, calc(100% - 4rem)); margin: 0 auto; padding: 3.5rem 0 5rem; }
.kicker { margin: 0 0 .8rem; color: #526157; font-size: .72rem; font-weight: 850; letter-spacing: .13em; line-height: 1.2; }
.kicker.light { color: #c0ceb9; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { letter-spacing: 0; }
h1 { margin-bottom: 1rem; font-size: 5.2rem; line-height: .98; font-weight: 790; }
h1 em { color: #687a6e; font-style: normal; font-weight: 480; }
h2 { line-height: 1.07; }
p { color: var(--muted); line-height: 1.55; }
.light, .light p, .on-dark { color: #edf3e9; }

.guest-home { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 260px; min-height: 585px; overflow: hidden; margin: -3.5rem calc((100vw - min(1240px, calc(100vw - 4rem))) / -2) 0; padding: 5.5rem max(2rem, calc((100vw - 1240px) / 2)); background: var(--ink); color: #edf3e9; }
#network-canvas { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.hero-content, .trial-marker { position: relative; z-index: 1; }
.hero-content { max-width: 710px; padding-right: 3rem; }
.hero-content h1 { color: #f6f8f4; }
.hero-content h1 em { color: #c3d3c4; }
.hero-copy { max-width: 560px; margin-bottom: 2rem; color: #d7e1d4; font-size: 1.08rem; }
.hero-actions { display: flex; align-items: center; gap: 1.2rem; flex-wrap: wrap; }
.underlink { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .22em; }
.underlink.light { color: #f2f8ef; }
.trial-marker { align-self: start; margin-top: 1.5rem; padding: 1.2rem; border: 1px solid rgba(231,244,225,.36); background: rgba(20,34,26,.9); }
.trial-marker span, .trial-marker .minor { color: #c3d0c1; font-size: .73rem; font-weight: 760; letter-spacing: .1em; }
.trial-marker strong { display: block; margin: .7rem 0 .2rem; color: var(--lime); font-size: 3rem; line-height: 1; }
.trial-marker strong small { color: #edf3e9; font-size: .92rem; font-weight: 700; }
.trial-marker p { margin: .4rem 0; color: #edf3e9; }
.trial-marker .minor { margin-top: 1rem; line-height: 1.45; }
.route-motion-button { position: absolute; top: .5rem; right: .75rem; z-index: 2; display: grid; place-items: center; width: 32px; height: 32px; border: 1px solid #435b4a; border-radius: 4px; background: #122019; }
.route-motion-button img { width: 13px; height: 13px; filter: brightness(0) invert(1); opacity: .75; }
.route-motion-button:hover { border-color: #dcef8b; }
.route-motion-button:disabled { cursor: default; opacity: .4; }

/* Keep optional discounts secondary to the payment action. */
details.promo-field { margin: 1rem 0; border: 0; }
details.promo-field > summary { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; min-height: 44px; color: #344b3c; font-size: 1rem; cursor: pointer; }
details.promo-field > summary span { color: #627168; font-size: .88rem; }
details.promo-field[open] > summary { margin-bottom: .75rem; }
.identity-links button { flex-wrap: wrap; row-gap: .5rem; min-height: 56px; }
.identity-links .identity-label b { font: inherit; font-size: 1rem; font-weight: 650; }
.identity-links button small { font-family: Arial, sans-serif; font-size: .9rem; line-height: 1.4; white-space: normal; }
.account-identity small { font-size: .9rem; overflow-wrap: anywhere; }
.connection-main > p:not(.kicker) { max-width: 650px; font-size: 1.05rem; line-height: 1.65; }
.setup-list p { font-size: 1rem; line-height: 1.65; }

.reason-band { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--line); border-top: 0; background: #e8ece5; }
.reason-band article { min-height: 220px; padding: 1.7rem; border-right: 1px solid var(--line); }
.reason-band article:last-child { border: 0; }
.reason-band span { color: var(--blue); font-weight: 800; font-size: .8rem; }
.reason-band h2 { margin: 2.8rem 0 .5rem; font-size: 1.22rem; }
.reason-band p { max-width: 280px; margin: 0; font-size: .91rem; }
.journey-section { display: grid; grid-template-columns: .72fr 1.28fr; gap: 4rem; padding: 6.5rem 0; }
.section-label h2 { margin: 0; font-size: 3.5rem; }
.journey-list { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.journey-list li { display: grid; grid-template-columns: 70px 1fr; gap: 1.4rem; padding: 1.3rem 0; border-bottom: 1px solid var(--line); }
.journey-list li > span { color: var(--blue); font-size: .85rem; font-weight: 800; }
.journey-list h3 { margin: 0 0 .35rem; font-size: 1.25rem; }
.journey-list p { margin: 0; }

.member-home { padding-top: 0; }
.member-command { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(220px, .55fr); gap: 2rem; position: relative; overflow: hidden; padding: 2.4rem; background: var(--ink); color: #eef4eb; }
.member-command > * { position: relative; z-index: 1; }
.member-command h1 { margin-bottom: .8rem; color: #f5f8f2; font-size: 3.9rem; }
.member-command h1 em { color: var(--lime); }
.member-command p:not(.kicker) { max-width: 620px; color: #ccd7c9; }
.member-command-actions { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 1rem; }
.access-state { grid-column: 1 / -1; display: grid; grid-template-columns: 185px 1fr; gap: .3rem 1.2rem; margin: .6rem -2.4rem -2.4rem; padding: 1rem 2.4rem; border-top: 1px solid #3a4e40; }
.access-state dt, .account-summary span { color: #97a99b; font-size: .72rem; font-weight: 820; letter-spacing: .1em; }
.access-state dd { margin: 0; font-weight: 780; }
.access-state small { grid-column: 2; color: #bdcabe; }
.account-summary { display: grid; grid-template-columns: 1.55fr repeat(3, 1fr); border: 1px solid var(--line); border-top: 0; background: var(--white); }
.account-summary article { display: flex; flex-direction: column; align-items: flex-start; min-height: 180px; gap: 1rem; padding: 1.55rem; border-right: 1px solid var(--line); }
.account-summary article:last-child { border: 0; }
.account-summary strong { color: var(--ink); font-size: 1.25rem; line-height: 1.15; }
.account-summary small { color: var(--muted); }
progress { width: 100%; height: 8px; margin-top: .2rem; border: 0; border-radius: 0; accent-color: #49854d; }
progress::-webkit-progress-bar { background: #e2e8df; } progress::-webkit-progress-value { background: #49854d; }
.card-link { margin-top: auto; text-align: left; }
.cabinet-workspace { margin-top: 2rem; padding: 2rem; border: 1px solid var(--line); background: var(--white); }
.workspace-head { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; padding-bottom: 1.6rem; border-bottom: 1px solid var(--line); }
.workspace-head h2 { margin: 0; font-size: 2rem; }
.device-row { display: grid; grid-template-columns: 48px 1fr auto 44px; align-items: center; gap: 1rem; padding: 1.3rem 0; border-bottom: 1px solid var(--line); }
.device-symbol { display: grid; place-items: center; width: 48px; height: 48px; background: #e6ece3; }
.device-symbol img { width: 21px; height: 21px; }
.device-row h3 { margin: 0 0 .25rem; font-size: 1rem; }
.device-row p { margin: 0; font-size: .86rem; }
.cabinet-empty { margin-top: 1.2rem; padding: 1.25rem; border: 1px dashed var(--line); background: var(--paper-soft); }
.cabinet-empty strong { display: block; margin-bottom: .35rem; }
.cabinet-empty p { margin: 0; color: var(--muted); font-size: .9rem; }
.device-status { padding: .38rem .55rem; background: #e1f0cf; color: #385a23; font-size: .78rem; font-weight: 750; }
.icon-button { display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid var(--line); background: white; }
.icon-button img { width: 17px; height: 17px; }
.cabinet-note { display: flex; gap: .7rem; align-items: flex-start; padding-top: 1.2rem; }
.cabinet-note img { width: 20px; height: 20px; }
.cabinet-note p { margin: 0; font-size: .86rem; }
.cabinet-support { display: flex; align-items: flex-end; justify-content: space-between; gap: 2rem; margin-top: 2rem; padding: 2.5rem; background: #2d4b3b; color: #eff5ed; }
.cabinet-support h2 { max-width: 580px; margin: 0 0 .5rem; font-size: 2rem; }
.cabinet-support p:not(.kicker) { max-width: 620px; margin: 0; color: #d3e0d1; }

.page-intro { display: flex; align-items: flex-end; justify-content: space-between; gap: 2rem; margin-bottom: 3rem; }
.page-intro > div { max-width: 760px; }
.page-intro p { max-width: 560px; font-size: 1.04rem; }
.page-intro aside { min-width: 220px; padding: 1rem 0 0 1.2rem; border-left: 2px solid var(--blue); }
.page-intro aside span { display: block; color: var(--muted); font-size: .72rem; font-weight: 800; letter-spacing: .1em; }
.page-intro aside strong { display: block; margin: .2rem 0; font-size: 1.35rem; }
.page-intro aside p { margin: 0; font-size: .87rem; }
.plan-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--ink); border-left: 1px solid var(--ink); }
.plan-card { display: flex; flex-direction: column; min-height: 470px; padding: 1.7rem; border-right: 1px solid var(--ink); border-bottom: 1px solid var(--ink); background: var(--white); }
.plan-card.featured { background: var(--ink); color: #f0f6ed; }
.plan-top { display: flex; align-items: center; justify-content: space-between; gap: 1rem; color: var(--blue); font-size: .77rem; font-weight: 820; letter-spacing: .09em; }
.plan-card.featured .plan-top { color: var(--lime); }
.plan-card h2 { margin: 3.7rem 0 .5rem; font-size: 2rem; }
.plan-card p { margin: 0; }
.plan-card.featured p { color: #c6d5c6; }
.price { margin: 2rem 0 !important; color: var(--ink) !important; font-size: 2.4rem; font-weight: 820; line-height: 1; }
.featured .price { color: var(--lime) !important; }
.price small { color: var(--muted); font-size: .78rem; font-weight: 650; }
.featured .price small { color: #bfd0bf; }
.plan-card ul { display: grid; gap: .7rem; margin: 0 0 2rem; padding: 0; list-style: none; }
.plan-card li { display: flex; align-items: center; gap: .55rem; color: #46554b; font-size: .9rem; }
.featured li { color: #dce8dc; }
.plan-card li img { width: 16px; height: 16px; }
.plan-card .button { margin-top: auto; }
.payment-note { display: flex; align-items: center; gap: 1rem; margin-top: 2rem; padding: 1.2rem; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.payment-note h2 { margin: 0 0 .2rem; font-size: 1rem; }.payment-note p { margin: 0; font-size: .88rem; }.payment-note small { margin-left: auto; color: var(--muted); text-align: right; }
.trial-banner { display: flex; justify-content: space-between; align-items: center; gap: 2rem; margin-top: 4rem; padding: 2.5rem; background: #dce7d6; }
.trial-banner h2 { margin: 0 0 .45rem; font-size: 2rem; }.trial-banner p { margin-bottom: 0; }

.connection-stage { display: grid; grid-template-columns: .65fr 1.35fr; min-height: 300px; background: var(--ink); }
.platform-tabs { display: flex; flex-direction: column; align-items: stretch; padding: 1rem; border-right: 1px solid #3a5142; }
.platform-tabs button { padding: 1rem; border: 1px solid transparent; background: transparent; color: #bdccbd; text-align: left; font-size: .95rem; font-weight: 700; }
.platform-tabs button[aria-pressed="true"] { border-color: #4e6955; background: #24382b; color: var(--lime); }
.connection-main { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 3rem; color: #f1f6ef; }
.connection-main h2 { margin: 0 0 .65rem; font-size: 2.4rem; }.connection-main p:not(.kicker) { max-width: 520px; color: #cfdbcf; font-size: 1.02rem; }.connection-main .button { margin-top: 1.1rem; }
.setup-list { display: grid; grid-template-columns: repeat(3, 1fr); margin: 2rem 0 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.setup-list li { min-height: 280px; padding: 1.6rem; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.setup-list li:first-child { border-left: 1px solid var(--line); }
.setup-list li > span { color: var(--blue); font-size: .8rem; font-weight: 820; }.setup-list h2 { margin: 3.3rem 0 .6rem; font-size: 1.3rem; }.setup-list p { min-height: 72px; }.setup-list .underlink { border: 0; }
.connection-help { display: flex; justify-content: space-between; align-items: end; gap: 2rem; margin-top: 4rem; padding: 2.5rem; border: 1px solid var(--line); background: white; }.connection-help h2 { margin: 0 0 .5rem; font-size: 2rem; }.connection-help p { max-width: 630px; margin-bottom: 0; }

.support-stage { display: grid; grid-template-columns: 1.3fr auto; gap: 2.5rem; align-items: center; position: relative; padding: 3rem; overflow: hidden; background: #193a31; color: #f0f6ed; }.support-stage::before { content: ""; position: absolute; inset: 1rem; border: 1px solid #527867; pointer-events: none; }.support-stage > * { position: relative; z-index: 1; }.support-stage h2 { margin: 0 0 .7rem; font-size: 2.4rem; }.support-stage p:not(.kicker) { max-width: 600px; color: #d6e3d5; }.support-stage > div:last-of-type { display: flex; flex-direction: column; align-items: flex-start; gap: 1rem; }.support-stage small { grid-column: 1 / -1; color: #afc1af; }
.faq-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 4rem; margin-top: 5rem; }.faq-layout h2 { font-size: 2.3rem; }.faq-layout > div > p:not(.kicker) { max-width: 320px; }.faq-list { border-top: 1px solid var(--line); }.faq-list details { border-bottom: 1px solid var(--line); }.faq-list summary { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1.25rem 0; font-size: 1.03rem; font-weight: 760; cursor: pointer; list-style: none; }.faq-list summary::-webkit-details-marker { display: none; }.faq-list summary img { width: 18px; transition: transform .2s ease; }.faq-list details[open] summary img { transform: rotate(90deg); }.faq-list details p { max-width: 650px; padding-bottom: 1rem; }

footer { display: flex; align-items: center; gap: 1.2rem; width: min(1240px, calc(100% - 4rem)); margin: 0 auto; padding: 1.4rem 0; border-top: 1px solid var(--line); color: #4c5b51; font-size: .82rem; } footer span:last-child { margin-left: auto; color: #849087; } footer a { text-underline-offset: .2em; }
.support-fab { position: fixed; right: 1.4rem; bottom: 1.4rem; z-index: 8; display: inline-flex; align-items: center; gap: .45rem; border: 1px solid var(--ink); padding: .72rem .95rem; background: var(--white); box-shadow: var(--shadow); color: var(--ink); font-weight: 790; }.support-fab img { width: 17px; }
.mobile-nav { display: none; }
.route-help .support-fab, .demo-mode .support-fab { display: none; }

dialog { width: min(540px, calc(100% - 2rem)); max-height: calc(100dvh - 2rem); border: 0; padding: 0; background: transparent; color: var(--ink); box-shadow: var(--shadow); } dialog::backdrop { background: rgba(9,16,11,.6); }.dialog-body { position: relative; overflow: auto; padding: 2.1rem; background: var(--white); }.dialog-body h2 { margin: 0 0 .75rem; font-size: 2.4rem; }.dialog-body > p:not(.kicker):not(.form-note):not(.inline-result) { margin-bottom: 1.6rem; }.compact { max-width: 440px; }.dialog-close { position: absolute; top: 1rem; right: 1rem; display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid var(--line); background: white; }.dialog-close img { width: 17px; }.divider { display: flex; align-items: center; gap: .8rem; margin: 1.3rem 0; color: var(--muted); font-size: .8rem; }.divider::before, .divider::after { content: ""; flex: 1; height: 1px; background: var(--line); }.divider span { white-space: nowrap; } form { display: grid; gap: .7rem; } label { display: grid; gap: .35rem; color: #2e3d33; font-size: .83rem; font-weight: 730; } input, textarea { width: 100%; border: 1px solid #aeb9b0; border-radius: 0; padding: .78rem; background: #fff; color: var(--ink); } textarea { resize: vertical; min-height: 120px; }.form-note { margin: 0; color: var(--muted); font-size: .78rem; }.form-error { min-height: 1.15em; margin: 0; color: var(--red); font-size: .82rem; }.inline-result { margin: 1rem 0 0; padding: .75rem; background: #e2f0d8; color: #315222; font-size: .87rem; }.consent { grid-template-columns: 18px 1fr; align-items: start; margin: .2rem 0 .5rem; }.consent input { width: 17px; height: 17px; margin: 0; }.input-row { display: grid; grid-template-columns: 1fr 1fr; gap: .7rem; } #login-email-step, #login-code-step { display: grid; gap: .35rem; }
.promo-field { display: grid; gap: .35rem; margin-top: .25rem; }
.promo-control { display: grid; grid-template-columns: minmax(0, 1fr) auto; }
.promo-control input { border-radius: 8px 0 0 8px; text-transform: uppercase; }
.promo-control button { min-width: 112px; border: 1px solid var(--ink); border-radius: 0 8px 8px 0; padding: 0 .9rem; background: var(--ink); color: #fff; font-weight: 760; }
.promo-control button:disabled { opacity: .55; }
#checkout-promo-result { min-height: 1.15em; margin: 0; color: #42612f; font-size: .8rem; }
#checkout-promo-result[data-error="true"] { color: var(--red); }

@media (max-width: 980px) {
  h1 { font-size: 4rem; }.member-command h1 { font-size: 3.4rem; }.section-label h2 { font-size: 2.8rem; }.topbar { min-height: 66px; padding: 0 1.1rem; }.desktop-nav, .text-button { display: none; }.topbar-actions { margin-left: auto; }.view { width: min(100% - 2rem, 680px); padding: 2rem 0 5.5rem; }.guest-home { grid-template-columns: 1fr; min-height: 650px; margin: -2rem -1rem 0; padding: 4rem 1rem 1.2rem; }.hero-content { padding: 0; }.hero-copy { font-size: 1rem; }.trial-marker { width: min(265px, 100%); margin: 2rem 0 0; }.route-strip { flex-wrap: wrap; gap: .45rem; padding-top: 2rem; }.route-strip i { width: 32px; }.reason-band { grid-template-columns: 1fr; }.reason-band article { min-height: 0; padding: 1.25rem; border-right: 0; border-bottom: 1px solid var(--line); }.reason-band article:last-child { border-bottom: 0; }.reason-band h2 { margin: 1.1rem 0 .4rem; }.journey-section, .faq-layout { grid-template-columns: 1fr; gap: 2rem; padding: 4rem 0; }.member-command { grid-template-columns: 1fr; padding: 2rem; }.access-state { grid-template-columns: 1fr; margin: 0 -2rem -2rem; padding: 1rem 2rem; }.access-state small { grid-column: 1; }.account-summary { grid-template-columns: 1fr 1fr; }.account-summary article:nth-child(2) { border-right: 0; }.account-summary article:nth-child(-n+2) { border-bottom: 1px solid var(--line); }.cabinet-workspace { padding: 1.2rem; }.cabinet-support, .page-intro, .trial-banner, .connection-help { align-items: flex-start; flex-direction: column; }.page-intro { gap: 1rem; }.page-intro aside { min-width: 0; }.plan-grid { grid-template-columns: 1fr; }.plan-card { min-height: 0; }.plan-card h2 { margin-top: 2.5rem; }.payment-note { align-items: flex-start; flex-wrap: wrap; }.payment-note small { width: 100%; margin: 0; text-align: left; }.connection-stage { grid-template-columns: 1fr; }.platform-tabs { flex-direction: row; overflow-x: auto; border-right: 0; border-bottom: 1px solid #3a5142; }.platform-tabs button { flex: 0 0 auto; }.connection-main { padding: 2rem; }.setup-list { grid-template-columns: 1fr; }.setup-list li, .setup-list li:first-child { min-height: 0; border-left: 1px solid var(--line); }.setup-list h2 { margin-top: 1.5rem; }.setup-list p { min-height: 0; }.support-stage { grid-template-columns: 1fr; padding: 2rem; }.faq-layout { margin-top: 3rem; }.support-fab { display: none; } footer { width: min(100% - 2rem, 680px); flex-wrap: wrap; padding-bottom: 5rem; } footer span:last-child { width: 100%; margin-left: 0; }.mobile-nav { position: fixed; right: 0; bottom: 0; left: 0; z-index: 10; display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); background: rgba(255,255,255,.97); backdrop-filter: blur(12px); }.mobile-nav a { display: grid; place-items: center; gap: .2rem; min-height: 58px; padding: .35rem; color: #617066; font-size: .65rem; font-weight: 750; text-decoration: none; }.mobile-nav img { width: 18px; height: 18px; }.mobile-nav a[aria-current="page"] { color: var(--ink); background: #e3ebdf; }
}

@media (max-width: 1100px) and (min-width: 981px) { h1 { font-size: 4.2rem; } .section-label h2 { font-size: 3rem; } }

@media (max-width: 520px) {
  h1, .member-command h1 { font-size: 2.7rem; }.topbar .button { min-height: 40px; padding: .55rem .75rem; }.brand { font-size: 1.05rem; }.brand img { width: 30px; height: 30px; }.hero-actions .button, .hero-actions .underlink { width: 100%; }.hero-actions .underlink { justify-content: flex-start; }.route-strip { display: grid; grid-template-columns: 1fr; gap: .65rem; }.route-strip i { display: none; }.account-summary { grid-template-columns: 1fr; }.account-summary article { min-height: 145px; border-right: 0; border-bottom: 1px solid var(--line); }.account-summary article:last-child { border-bottom: 0; }.workspace-head { align-items: flex-start; flex-direction: column; }.device-row { grid-template-columns: 44px 1fr 40px; }.device-status { display: none; }.cabinet-support { padding: 1.6rem; }.payment-note img { width: 55px; }.input-row { grid-template-columns: 1fr; }.dialog-body { padding: 1.6rem; }.dialog-body h2 { font-size: 2rem; }
}

@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; } }

/* Refinement patch: softer hierarchy, stable cards, and a task-first cabinet. */
body { background: var(--paper); }
.topbar { background: rgba(245,247,244,.96); }
.desktop-nav a, .button, .text-button, .underlink, .card-link, .icon-button, .platform-tabs button, .mobile-nav a, .site-header a { transition: color .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease, opacity .18s ease; }
.desktop-nav a, .desktop-nav a[aria-current="page"], .button, .icon-button, .trial-marker, .reason-band, .cabinet-workspace, .billing-panel, .account-summary article, .connection-stage, .support-stage, .connection-help, .trial-banner, .plan-card, .payment-note, .dialog-body, input, textarea, .inline-result, .legal-index, .legal-document, .legal-draft-note, .legal-tariff-grid > div { border-radius: 8px; }
.button:hover, .icon-button:hover { transform: none; box-shadow: 0 6px 16px rgba(20,32,25,.1); }
.button:active, .icon-button:active { opacity: .78; }
.button-dark img, .button-quiet img, .underlink.light img, .featured li img, .featured .button img, .cabinet-support .button img, .support-stage .button img { filter: brightness(0) invert(1); }
.button-lime img { filter: none; }
.kicker { font-size: .77rem; letter-spacing: .08em; }
h1 { font-size: clamp(3.7rem, 6vw, 4.8rem); line-height: 1.02; }
.page-intro h1 { font-size: clamp(3.4rem, 5.5vw, 4.55rem); }
.preview-ribbon { background: #edf1eb; font-size: .8rem; }

.guest-home { min-height: 570px; background: #17251d; }
.hero-content { align-self: center; }
.trial-marker { background: rgba(23,37,29,.94); }
.reason-band { margin-top: 1.25rem; overflow: hidden; border-top: 1px solid var(--line); background: #edf1eb; }
.reason-band article { min-height: 195px; }
.journey-section { padding: 5.5rem 0; }

.member-home { display: grid; grid-template-columns: 224px minmax(0, 1fr); align-items: start; gap: 1.5rem; }
.cabinet-rail { position: sticky; top: 98px; padding: 1.2rem; border: 1px solid var(--line); border-radius: 8px; background: var(--white); }
.account-identity { display: grid; grid-template-columns: 42px minmax(0, 1fr); align-items: center; gap: .7rem; }
.account-avatar { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: var(--ink); color: var(--lime); font-size: 1rem; font-weight: 850; }
.account-avatar img { width: 21px; height: 21px; filter: brightness(0) saturate(100%) invert(91%) sepia(31%) saturate(606%) hue-rotate(24deg) brightness(101%); }
.account-identity strong, .account-identity small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.account-identity strong { font-size: .91rem; }
.account-identity small { margin-top: .18rem; color: var(--muted); font-size: .75rem; }
.demo-status { display: inline-flex; margin: .9rem 0 1.1rem; padding: .35rem .5rem; border-radius: 5px; background: #edf3e5; color: #45602d; font-size: .73rem; font-weight: 780; }
.cabinet-rail nav { display: grid; gap: .25rem; padding: 1rem 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.cabinet-rail nav button { width: 100%; border: 0; padding: .65rem .7rem; border-radius: 6px; background: transparent; color: #46554b; text-align: left; font-size: .88rem; font-weight: 710; }
.cabinet-rail nav button:hover, .cabinet-rail nav button:focus-visible { background: #edf1eb; color: var(--ink); }
.cabinet-rail nav button:first-child { background: #edf1eb; color: var(--ink); }
.identity-links { margin-top: 1.15rem; }
.identity-links .kicker { margin-bottom: .55rem; }
.identity-links span, .identity-links button { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 34px; border: 0; padding: .25rem 0; background: transparent; color: var(--ink); text-align: left; font-size: .78rem; }
.identity-links small { color: var(--muted); }
.identity-links button small { color: var(--blue); font-weight: 760; }
.cabinet-main { min-width: 0; }
.member-command { grid-template-columns: minmax(0, 1fr) auto; gap: 1.2rem 2rem; padding: 2rem; border-radius: 8px; background: #17251d; }
.member-command-copy .kicker { margin: 1.25rem 0 .4rem; }
.member-command h1 { margin: 0 0 .4rem; font-size: clamp(2.25rem, 4vw, 3.15rem); }
.member-command p:not(.kicker) { margin: 0; }
.access-badge { display: inline-flex; align-items: center; gap: .45rem; padding: .36rem .55rem; border: 1px solid #496152; border-radius: 5px; color: #dce8dc; font-size: .76rem; font-weight: 750; }
.access-badge i, .device-status i { width: 7px; height: 7px; border-radius: 50%; background: var(--lime); }
.member-command-actions { align-items: stretch; }
.button-quiet { border-color: #4b6252; background: #22362a; color: #eef4eb; }
.access-state { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin: .4rem 0 0; padding: 1rem 0 0; }
.access-state div { display: grid; gap: .25rem; }
.access-state dt { font-size: .7rem; letter-spacing: .08em; }
.access-state dd { font-size: .9rem; }
.account-summary { grid-template-columns: 1.4fr 1fr 1fr; gap: .75rem; margin-top: .75rem; border: 0; background: transparent; }
.account-summary article { min-height: 150px; padding: 1.25rem; border: 1px solid var(--line); }
.account-summary article:last-child { border: 1px solid var(--line); }
.account-summary strong { margin-top: .25rem; font-size: 1.65rem; }
.account-summary strong small { color: var(--muted); font-size: .78rem; font-weight: 650; }
.usage-card > small, .days-card > small { font-size: .82rem; line-height: 1.35; }
.account-summary .card-link { margin-top: auto; }
progress { height: 7px; border-radius: 4px; overflow: hidden; }
progress::-webkit-progress-bar, progress::-webkit-progress-value { border-radius: 4px; }
.cabinet-workspace, .billing-panel, .cabinet-support, .member-command { scroll-margin-top: 104px; }
.cabinet-workspace, .billing-panel { margin-top: 1.25rem; padding: 1.5rem; }
.workspace-head { padding-bottom: 1.15rem; }
.workspace-head h2 { font-size: 1.65rem; }
.device-status { display: inline-flex; align-items: center; gap: .4rem; background: #edf3e5; }
.device-symbol, .icon-button { border-radius: 7px; }
.billing-panel { display: grid; grid-template-columns: minmax(180px, .8fr) minmax(280px, 1.2fr) auto; align-items: center; gap: 1.5rem; border: 1px solid var(--line); background: var(--white); }
.billing-panel h2 { margin: 0 0 .25rem; font-size: 1.65rem; }
.billing-panel p { margin: 0; font-size: .87rem; }
.billing-panel dl { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin: 0; }
.billing-panel dl div { padding-left: 1rem; border-left: 1px solid var(--line); }
.billing-panel dt { color: var(--muted); font-size: .75rem; }
.billing-panel dd { margin: .25rem 0 0; font-size: .87rem; font-weight: 760; }
.cabinet-support { align-items: center; margin-top: 1.25rem; padding: 1.75rem 2rem; border-radius: 8px; background: #2f4f3c; }
.cabinet-support h2 { font-size: 1.65rem; }
.cabinet-support p:not(.kicker) { font-size: .9rem; }

.plan-grid { gap: .75rem; border: 0; }
.plan-card { display: grid; grid-template-rows: 40px auto 48px auto 1fr auto; min-height: 470px; border: 1px solid var(--ink); }
.plan-card h2 { margin: 2.3rem 0 .5rem; }
.plan-card .price { margin: 1.7rem 0 !important; }
.plan-card .button { margin-top: 0; }
.payment-note, .trial-banner, .connection-help { border: 1px solid var(--line); background: var(--white); }
.trial-banner { background: #edf2e5; }
.connection-stage { overflow: hidden; background: #17251d; }
.platform-tabs button { border-radius: 6px; }
.setup-list { gap: .75rem; border: 0; }
.setup-list li, .setup-list li:first-child { border: 1px solid var(--line); border-radius: 8px; background: var(--white); }
.support-stage { background: #254538; }
.support-stage::before { display: none; }

.order-box { display: flex; align-items: center; justify-content: space-between; gap: 1.2rem; margin: 1.4rem 0; padding: 1rem; border: 1px solid var(--line); border-radius: 8px; background: #f1f4ef; }
.order-box > div { display: grid; gap: .3rem; min-width: 0; }
.order-box strong { font-size: 1rem; }
.order-box span { color: var(--muted); font-size: .8rem; }
.order-box > b { flex: none; font-size: 1.2rem; }
.dialog-body { border: 1px solid var(--line); }

.site-header { position: sticky; top: 0; z-index: 5; display: flex; align-items: center; gap: 2rem; min-height: 74px; padding: 0 max(2rem, calc((100vw - 1120px) / 2)); border-bottom: 1px solid var(--line); background: rgba(245,247,244,.96); backdrop-filter: blur(14px); }
.site-header nav { display: flex; align-items: center; gap: .25rem; margin-left: auto; }
.site-header nav a { padding: .65rem .75rem; border-radius: 6px; color: #46554b; text-decoration: none; font-size: .88rem; font-weight: 700; }
.site-header nav a:hover { background: #e9eeE7; color: var(--ink); }
.legal-page { width: min(960px, calc(100% - 3rem)); margin: 0 auto; padding: 4rem 0 6rem; }
.legal-hero { padding-bottom: 2rem; border-bottom: 1px solid var(--line); }
.legal-hero h1 { max-width: 760px; margin: 0 0 1rem; font-size: clamp(3rem, 7vw, 5rem); }
.legal-hero > p:not(.eyebrow):not(.legal-draft-note) { max-width: 620px; font-size: 1.05rem; }
.eyebrow, .document-kicker { color: var(--blue); font-size: .76rem; font-weight: 820; letter-spacing: .08em; }
.legal-draft-note { max-width: 760px; margin: 1.5rem 0 0; padding: 1rem; border: 1px solid #c8d7ba; background: #edf3e5; color: #42533f; font-size: .88rem; }
.legal-index { display: flex; flex-wrap: wrap; gap: .45rem; margin: 1.5rem 0 3rem; padding: .8rem; border: 1px solid var(--line); background: var(--white); }
.legal-index a { padding: .5rem .65rem; border-radius: 5px; color: #425147; text-decoration: none; font-size: .82rem; font-weight: 700; }
.legal-index a:hover { background: #edf1eb; color: var(--ink); }
.legal-document { margin: 1rem 0; padding: 2rem; border: 1px solid var(--line); background: var(--white); scroll-margin-top: 94px; }
.legal-document h2 { margin: .35rem 0 1.2rem; font-size: clamp(1.7rem, 4vw, 2.45rem); }
.legal-document h3 { margin: 1.6rem 0 .55rem; font-size: 1.08rem; }
.legal-document p, .legal-document blockquote { max-width: 760px; }
.legal-document blockquote { margin: 1.2rem 0; padding: 1rem 1.2rem; border-left: 3px solid var(--blue); background: #f0f3ef; color: #34443a; line-height: 1.6; }
.legal-more { color: #48633c; font-weight: 700; }
.legal-contacts, .legal-tariff-grid { display: grid; gap: .75rem; }
.legal-contacts div { display: grid; grid-template-columns: 160px 1fr; gap: 1rem; padding: .75rem 0; border-bottom: 1px solid var(--line); }
.legal-contacts dt { color: var(--muted); }
.legal-contacts dd { margin: 0; font-weight: 700; }
.legal-tariff-grid { grid-template-columns: repeat(3, 1fr); margin: 1.2rem 0; }
.legal-tariff-grid > div { display: grid; gap: .45rem; padding: 1rem; border: 1px solid var(--line); }
.legal-tariff-grid span { font-weight: 760; }
.legal-tariff-grid small { color: var(--muted); line-height: 1.45; }
.site-footer { width: min(1120px, calc(100% - 3rem)); }
.footer-brand { display: flex; align-items: center; gap: .55rem; }
.footer-brand img { width: 30px; height: 30px; }
.footer-links { display: flex; gap: 1rem; margin-left: auto; }

@media (max-width: 980px) {
  .view { width: min(100% - 2rem, 760px); }
  .member-home { grid-template-columns: 1fr; }
  .cabinet-rail { position: static; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .8rem 1rem; }
  .demo-status { margin: 0; }
  .cabinet-rail nav { grid-column: 1 / -1; grid-template-columns: repeat(4, 1fr); padding: .7rem 0; }
  .cabinet-rail nav button { text-align: center; }
  .identity-links { grid-column: 1 / -1; display: flex; align-items: center; gap: 1.2rem; margin: 0; }
  .identity-links .kicker { margin: 0 auto 0 0; }
  .identity-links span, .identity-links button { width: auto; gap: .6rem; }
  .billing-panel { grid-template-columns: 1fr; }
  .billing-panel dl div { padding: .75rem 0 0; border-top: 1px solid var(--line); border-left: 0; }
  .plan-card { min-height: 0; }
  .plan-card h2 { margin-top: 1.5rem; }
  .platform-tabs { display: grid; grid-template-columns: repeat(4, 1fr); overflow: visible; }
  .platform-tabs button { text-align: center; }
  .mobile-nav a { min-height: 62px; font-size: .72rem; }
}

@media (max-width: 620px) {
  h1, .member-command h1 { font-size: 2.65rem; }
  .page-intro h1 { font-size: 2.75rem; }
  .member-command { grid-template-columns: 1fr; padding: 1.4rem; }
  .member-command-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .access-state { grid-template-columns: 1fr 1fr; }
  .access-state div:last-child { display: none; }
  .account-summary { grid-template-columns: 1fr 1fr; }
  .account-summary article { min-height: 138px; }
  .account-summary article:first-child { grid-column: 1 / -1; }
  .device-status { display: none; }
  .cabinet-rail { grid-template-columns: minmax(0, 1fr) auto; padding: 1rem; }
  .demo-status { justify-self: end; }
  .cabinet-rail nav { grid-template-columns: repeat(4, 1fr); }
  .cabinet-rail nav button { padding: .6rem .25rem; font-size: .75rem; }
  .identity-links { display: grid; grid-template-columns: 1fr; gap: .3rem; }
  .billing-panel dl { grid-template-columns: 1fr; }
  .cabinet-support { padding: 1.4rem; }
  .platform-tabs { grid-template-columns: 1fr 1fr; gap: .35rem; }
  .platform-tabs button { white-space: normal; }
  .legal-page { width: min(100% - 2rem, 620px); padding-top: 2.5rem; }
  .site-header { align-items: flex-start; flex-direction: column; gap: .7rem; padding: 1rem; }
  .site-header nav { flex-wrap: wrap; margin: 0; }
  .site-header nav a { padding: .45rem .5rem; }
  .legal-document { padding: 1.3rem; }
  .legal-contacts div, .legal-tariff-grid { grid-template-columns: 1fr; }
  .site-footer { align-items: flex-start; flex-direction: column; }
  .footer-links { margin-left: 0; }
}

/* Public experience pass: stronger offers, denser content, and clearer contrast. */
p { font-size: 1rem; }
.kicker { font-size: .8rem; line-height: 1.3; }
.button, .underlink, .card-link, .text-button { font-size: .94rem; }
.button { min-height: 48px; padding: .75rem 1.1rem; border-radius: 7px; }
body .button-lime img, body .support-channel-site > img { filter: brightness(0) !important; }
.button-telegram { border-color: #229ed9; background: #229ed9; color: #fff; }
.button-telegram img { width: 21px; height: 21px; filter: none !important; }
.button-quiet { border-color: #2f78b7; background: #2f78b7; color: #fff; }

.guest-home { grid-template-columns: minmax(0, 1.12fr) minmax(360px, .88fr); align-items: center; column-gap: clamp(2rem, 6vw, 6rem); row-gap: 1rem; min-height: max(700px, calc(100svh - 74px)); padding-top: 5rem; padding-bottom: 5rem; background: #122019; }
.hero-content { grid-column: 1; grid-row: 1; max-width: 690px; padding-right: 0; }
.hero-content h1 { margin-bottom: 1.4rem; font-size: 4rem; line-height: 1.08; }
.hero-content h1 em { color: #c8d6ca; }
.hero-copy { max-width: 600px; margin-bottom: 1.6rem; color: #dce6da; font-size: 1.08rem; line-height: 1.65; }
.hero-link { display: inline-flex; align-items: center; gap: .55rem; min-height: 44px; border-bottom: 1px solid #6d8272; color: #f3f7f1; text-decoration: none; font-size: .96rem; font-weight: 760; }
.hero-link img { width: 17px; filter: brightness(0) invert(1); }
.hero-link:hover { border-color: var(--lime); color: var(--lime); }
.trial-marker { grid-column: 2; grid-row: 1; align-self: center; justify-self: end; width: 100%; max-width: 440px; margin: 0; padding: 2rem; border: 1px solid #dce4d8; border-radius: 8px; background: #f7faf5; color: var(--ink); box-shadow: 0 18px 50px rgba(0,0,0,.18); }
.trial-marker-top { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1.5rem; }
.trial-marker-top span { color: #5c6c60; font-size: .72rem; font-weight: 760; letter-spacing: 0; }
.trial-marker-top b { padding: .48rem .75rem; border-radius: 4px; background: #dcef8b; color: #213020; font-size: .9rem; }
.trial-marker h2 { max-width: 100%; margin: 0 0 1rem; color: var(--ink); font-size: 3.25rem; font-weight: 700; line-height: 1.07; }
.trial-marker h2 strong { display: inline; margin: 0; color: var(--ink); font-size: inherit; line-height: inherit; font-weight: 800; }
.trial-marker h2 em { color: #607364; font-style: normal; font-weight: 500; }
.trial-marker h2 .trial-free { display: inline-block; margin-top: .3rem; padding: .17em .23em; border-radius: 4px; background: #dcef8b; color: #142019; font-size: 2.65rem; font-weight: 850; line-height: 1.12; }
.trial-copy { max-width: 390px; margin: 0; color: #56655a !important; font-size: .95rem; line-height: 1.6; }
.trial-benefits { display: grid; grid-template-columns: 1fr 1fr; gap: 0; margin: 1.4rem 0; padding: 1.1rem 0; border-top: 1px solid #dce4d8; border-bottom: 1px solid #dce4d8; list-style: none; }
.trial-benefits li { min-width: 0; color: #34422e; }
.trial-benefits li + li { padding-left: 1rem; border-left: 1px solid #dce4d8; }
.trial-benefits strong { display: block; margin: 0 0 .35rem; color: var(--ink); font-size: 1.2rem; line-height: 1.15; font-weight: 760; }
.trial-benefits span { color: #647269; font-size: .72rem; font-weight: 500; letter-spacing: 0; line-height: 1.4; }
.trial-claim { justify-content: space-between; gap: .75rem; min-height: 64px; border-color: #becf72; background: #dcef8b; color: #142019; padding-inline: 1.2rem; font-size: .98rem; letter-spacing: 0; }
.trial-claim .trial-cta-label { min-width: 0; color: inherit; font-size: .95rem; font-weight: 600; letter-spacing: 0; text-align: left; }
.trial-cta-label b { font-weight: 900; }
.trial-claim img { flex: none; width: 19px; filter: brightness(0) !important; transition: transform .2s ease; }
.trial-claim:hover { border-color: #b6cb5a; background: #e8f7ad; color: #142019; }
.trial-claim:hover img { filter: brightness(0) !important; transform: translateX(4px); }
.trial-marker .minor { display: flex; justify-content: center; align-items: center; gap: .4rem; margin: .9rem 0 0; color: #647269; text-align: center; font-size: .75rem; font-weight: 500; letter-spacing: 0; }
.trial-marker .minor img { flex: none; width: 14px; height: 14px; }
.support-fab { right: .9rem; bottom: .75rem; gap: .62rem; min-width: 220px; border: 1px solid #b9c7bc; border-radius: 8px; padding: .4rem .55rem; background: #f7faf6; box-shadow: 0 14px 34px rgba(11,24,16,.2); text-align: left; }
.support-fab-icon { display: grid; place-items: center; flex: none; width: 36px; height: 36px; border-radius: 6px; background: var(--lime); }
.support-fab-icon img { width: 18px; height: 18px; }
.support-fab-copy { display: grid; gap: .12rem; flex: 1; }
.support-fab-copy strong { color: var(--ink); font-size: .84rem; line-height: 1.1; }
.support-fab-copy small { color: #617066; font-size: .68rem; font-weight: 680; }
.support-fab > .support-fab-arrow { width: 17px; height: 17px; transition: transform .18s ease; }
.support-fab:hover { border-color: #76927c; background: #fff; box-shadow: 0 16px 38px rgba(11,24,16,.25); }
.support-fab:hover > .support-fab-arrow { transform: translateX(3px); }

.benefit-stage { display: grid; grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr); gap: clamp(2rem, 6vw, 5rem); padding: 5.5rem 0; }
.benefit-heading { position: sticky; top: 115px; align-self: start; }
.benefit-heading h2 { max-width: 480px; margin: 0 0 1rem; font-size: clamp(2.5rem, 4vw, 4rem); }
.benefit-heading p { max-width: 430px; margin: 0; font-size: 1.05rem; }
.benefit-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .9rem; }
.benefit-card { position: relative; min-height: 225px; overflow: hidden; padding: 1.5rem; border: 1px solid var(--line); border-radius: 8px; background: var(--white); }
.benefit-card h3 { max-width: 280px; margin: 2.6rem 0 .55rem; font-size: 1.28rem; }
.benefit-card p { max-width: 310px; margin: 0; font-size: .94rem; }
.feature-number { position: absolute; top: 1.25rem; left: 1.5rem; color: var(--blue); font-size: .8rem; font-weight: 850; }
.benefit-test { display: grid; grid-template-columns: 1fr auto; align-items: end; background: #18271f; color: #f4f7f2; }
.benefit-test > div { grid-column: 1; }
.benefit-test h3 { margin-top: 3rem; }
.benefit-test p { color: #cbd7cc; }
.benefit-test > strong { grid-column: 2; grid-row: 1 / 3; align-self: end; color: var(--lime); font-size: 2.8rem; }
.benefit-test .feature-number { color: var(--lime); }
.mini-cabinet { display: grid; gap: .38rem; position: absolute; top: 1.25rem; right: 1.25rem; width: 82px; padding: .65rem; border: 1px solid var(--line); border-radius: 6px; background: #f5f7f4; }
.mini-cabinet i { height: 6px; border-radius: 4px; background: #cbd6cc; }
.mini-cabinet i:first-child { width: 65%; background: #56865a; }
.mini-cabinet i:last-child { width: 82%; }
.channel-pair { display: flex; position: absolute; top: 1.2rem; right: 1.25rem; }
.channel-pair img { width: 34px; height: 34px; border: 4px solid #fff; border-radius: 50%; background: #edf1eb; object-fit: contain; }
.channel-pair img + img { margin-left: -8px; }
.signal-bars { display: flex; align-items: end; gap: 4px; position: absolute; top: 1.3rem; right: 1.5rem; height: 34px; }
.signal-bars i { width: 7px; border-radius: 3px 3px 0 0; background: #54855b; }
.signal-bars i:nth-child(1) { height: 9px; }.signal-bars i:nth-child(2) { height: 16px; }.signal-bars i:nth-child(3) { height: 24px; }.signal-bars i:nth-child(4) { height: 32px; }
.benefit-symbol { position: absolute; top: 1.25rem; right: 1.25rem; display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid var(--line); border-radius: 6px; background: #f5f7f4; }
.benefit-symbol img { width: 22px; height: 22px; }
.account-avatar { border-radius: 6px; background: #e6ece3; }
.account-avatar img { width: 26px; height: 26px; filter: none; }
.device-symbol, .support-fab-icon { border-radius: 6px; }
.device-symbol img, .support-fab-icon img, .mobile-nav img { width: 20px; height: 20px; }

.product-preview { display: grid; grid-template-columns: minmax(0, .9fr) minmax(400px, 1.1fr); align-items: center; gap: clamp(2rem, 7vw, 6.5rem); margin-bottom: 5rem; padding: clamp(2rem, 5vw, 4.5rem); border-radius: 8px; background: #183126; color: #f5f8f3; }
.product-preview-copy h2 { max-width: 540px; margin: 0 0 1rem; font-size: clamp(2.3rem, 4vw, 3.8rem); }
.product-preview-copy > p:not(.kicker) { max-width: 520px; color: #cfdbd0; font-size: 1.02rem; }
.product-preview-copy .button { margin-top: .8rem; }
.product-preview-ui { padding: 1.5rem; border: 1px solid #536d5c; border-radius: 8px; background: #f8faf7; color: var(--ink); box-shadow: 18px 18px 0 rgba(7,18,12,.24); }
.preview-ui-head, .preview-ui-row { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.preview-ui-head { padding-bottom: 1.1rem; border-bottom: 1px solid var(--line); }
.preview-ui-head span { font-size: 1.1rem; font-weight: 820; }
.preview-ui-head b { padding: .4rem .6rem; border-radius: 5px; background: #e5efda; color: #3d5b2b; font-size: .85rem; }
.preview-ui-traffic { padding: 1.3rem 0; border-bottom: 1px solid var(--line); }
.preview-ui-traffic > span { display: block; color: var(--muted); font-size: .85rem; }
.preview-ui-traffic strong { display: block; margin: .35rem 0 .8rem; font-size: 1.75rem; }
.preview-ui-traffic strong small { color: var(--muted); font-size: .82rem; }
.preview-ui-traffic > i { display: block; height: 8px; overflow: hidden; border-radius: 4px; background: #dfe6df; }
.preview-ui-traffic > i b { display: block; width: 18%; height: 100%; border-radius: inherit; background: #538659; }
.preview-ui-row { min-height: 56px; border-bottom: 1px solid var(--line); font-size: .9rem; }
.preview-ui-row:last-child { border: 0; }
.preview-ui-row span { display: flex; align-items: center; gap: .65rem; }
.preview-ui-row img { width: 20px; height: 20px; }
.preview-ui-row b { color: #486e4c; font-size: .8rem; }

.page-intro-wide { display: block; max-width: 1060px; margin-bottom: 2.5rem; }
.page-intro-wide > div { max-width: 1060px; }
.page-intro-wide h1 { margin-bottom: 1.15rem; font-size: clamp(3.7rem, 6.4vw, 5.8rem); line-height: .98; }
.page-intro-wide p { max-width: 690px; font-size: 1.05rem; }
.trial-banner-first { display: grid; grid-template-columns: 170px minmax(0, 1fr) auto; align-items: center; gap: 1.5rem; margin: 0 0 1rem; padding: 1.5rem; border-color: #344c3c; background: #1b3025; color: #f3f7f1; }
.trial-banner-first h2 { margin: 0 0 .35rem; color: #f3f7f1; font-size: 1.55rem; }
.trial-banner-first p { color: #cbd8cc; }
.trial-banner-mark { display: grid; gap: .25rem; padding-right: 1.25rem; border-right: 1px solid #536658; }
.trial-banner-mark span { color: #bdcbbf; font-size: .75rem; font-weight: 820; letter-spacing: .07em; }
.trial-banner-mark strong { color: var(--lime); font-size: 1.85rem; }
.plan-grid { margin-top: 1rem; }
.plan-card { min-height: 450px; }
.plan-card .plan-top { min-height: 40px; font-size: .82rem; letter-spacing: .06em; }
.plan-card > p:not(.price) { font-size: .95rem; }
.plan-card li { font-size: .92rem; }
.payment-note { padding: 1.4rem 1.5rem; }
.payment-note p, .payment-note small { font-size: .88rem; }

.connection-stage { grid-template-columns: 290px minmax(0, 1fr); min-height: 440px; }
.platform-tabs { padding: 1.25rem; }
.platform-tabs button { min-height: 54px; padding: .9rem 1rem; font-size: .96rem; }
.connection-main { padding: clamp(2rem, 5vw, 4rem); }
.connection-main h2 { font-size: clamp(2.3rem, 4vw, 3.6rem); }
.connection-main > p:not(.kicker) { max-width: 650px; }
.device-tips { display: grid; grid-template-columns: repeat(3, 1fr); gap: .65rem; width: 100%; margin: 1rem 0 1.5rem; padding: 0; list-style: none; }
.device-tips li { position: relative; min-height: 72px; padding: .8rem .8rem .8rem 2rem; border: 1px solid #42594a; border-radius: 7px; color: #dbe5dc; font-size: .84rem; line-height: 1.42; }
.device-tips li::before { content: ""; position: absolute; top: 1rem; left: .8rem; width: 7px; height: 7px; border-radius: 50%; background: var(--lime); }
.setup-list { margin-top: 1rem; }
.setup-list li { min-height: 250px; }
.setup-list h2 { font-size: 1.4rem; }
.connection-help { margin-top: 1rem; }

.support-stage { grid-template-columns: minmax(0, .85fr) minmax(430px, 1.15fr); gap: clamp(2rem, 6vw, 5rem); min-height: 540px; padding: clamp(2rem, 5vw, 4.5rem); background: #19372b; }
.support-stage-copy h1 { max-width: 590px; margin: 0 0 1rem; color: #f4f8f3; font-size: clamp(3.4rem, 6vw, 5.7rem); line-height: .98; }
.support-stage-copy > p:not(.kicker) { max-width: 550px; color: #d1ddd2; font-size: 1.05rem; }
.support-stage-copy > small { display: inline-block; margin-top: 1rem; color: #9fb1a2; font-size: .82rem; }
.support-stage > .support-channels { display: grid; align-items: stretch; gap: .8rem; }
.support-channel { display: grid; grid-template-columns: 48px 1fr 20px; align-items: center; gap: 1rem; min-height: 132px; border: 1px solid #607368; border-radius: 8px; padding: 1.2rem; text-align: left; text-decoration: none; }
.support-channel > span { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: rgba(255,255,255,.14); }
.support-channel > span img { width: 25px; height: 25px; }
.support-channel > div { display: grid; gap: .2rem; }
.support-channel small { color: inherit; font-size: .76rem; font-weight: 820; letter-spacing: .07em; }
.support-channel strong { font-size: 1.08rem; }
.support-channel p { margin: 0; color: inherit; font-size: .86rem; opacity: .78; }
.support-channel > img { width: 18px; }
.support-channel-site { background: var(--lime); color: var(--lime-ink); }
.support-channel-site > span { background: rgba(27,48,37,.1); }
.support-channel-site > span img { filter: brightness(0); }
.support-stage .support-channel-site p { color: #314327; opacity: 1; }
.support-channel-telegram { background: #f7faf7; color: var(--ink); }
.support-stage .support-channel-telegram p { color: #4f6056; opacity: 1; }
.support-channel-telegram > img { filter: none; }
.faq-layout { grid-template-columns: minmax(280px, .85fr) minmax(0, 1.15fr); gap: clamp(2rem, 6vw, 5rem); margin: 4.5rem 0; }
.faq-layout h2 { margin: 0 0 1rem; font-size: clamp(2.2rem, 4vw, 3.5rem); }
.faq-list summary { min-height: 64px; font-size: 1rem; }
.security-note { display: flex; gap: .7rem; max-width: 380px; margin-top: 1.5rem; padding: .9rem; border: 1px solid var(--line); border-radius: 7px; background: var(--white); color: #405047; font-size: .85rem; line-height: 1.45; }
.security-note img { flex: none; width: 20px; height: 20px; }

.identity-links > span, .identity-links > button { min-height: 42px; font-size: .88rem; }
.identity-label { display: inline-flex !important; justify-content: flex-start !important; gap: .5rem; width: auto !important; min-height: 0 !important; }
.identity-label img { width: 18px; height: 18px; }
.cabinet-logout { display: inline-flex; align-items: center; gap: .55rem; width: 100%; margin-top: 1rem; border: 0; padding: .7rem 0; background: transparent; color: #8b3b35; font-size: .86rem; font-weight: 760; text-align: left; }
.cabinet-logout img { width: 18px; height: 18px; }
.days-card { background: #f0f5e9 !important; }
.days-card strong { color: #314f28; }
.days-card.date-mode strong { max-width: 190px; font-size: 1.35rem; line-height: 1.25; }
.days-meter { display: block; width: 100%; height: 6px; overflow: hidden; border-radius: 3px; background: #d9e3d3; }
.days-meter b { display: block; width: 60%; height: 100%; border-radius: inherit; background: #72965d; }
.email-reward { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 1.5rem; margin-top: 1.25rem; padding: 1.65rem 1.75rem; border: 2px solid #a9c34d; border-radius: 8px; background: #eef6c9; box-shadow: 0 8px 24px rgba(23, 45, 31, .08); }
.email-reward[hidden] { display: none; }
.email-reward-days { display: inline-flex; align-items: center; justify-content: center; width: 112px; height: 64px; border-radius: 8px; background: var(--ink); color: var(--lime); white-space: nowrap; }
.email-reward-days strong { font-size: 1.15rem; line-height: 1; font-weight: 900; }
.email-reward .kicker { margin-bottom: .3rem; }
.email-reward h2 { margin: 0 0 .35rem; font-size: 1.45rem; }
.email-reward p:not(.kicker) { margin: 0; color: #3f4f38; font-size: .96rem; line-height: 1.5; }
.cabinet-support-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .7rem; }
.cabinet-support .button-telegram { border-color: #fff; background: #fff; color: var(--ink); }
.cabinet-support .button-telegram img { filter: none !important; }

#config-dialog { width: min(680px, calc(100% - 2rem)); }
.config-dialog-body { min-height: 440px; }
.config-device-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .65rem; margin: 1.4rem 0 1rem; }
.config-device-grid button { display: grid; grid-template-columns: 42px minmax(0, 1fr); align-items: center; gap: .85rem; min-height: 78px; border: 1px solid var(--line); border-radius: 8px; padding: .85rem; background: #f8faf7; color: var(--ink); text-align: left; }
.config-device-grid button:last-child { grid-column: 1 / -1; }
.config-device-grid button:hover { border-color: #93aa76; background: #f0f5e9; }
.config-device-grid button:focus-visible { outline: 3px solid var(--blue); outline-offset: 2px; }
.config-device-grid button > img { width: 24px; height: 24px; margin: auto; }
.config-device-grid button span, .config-device-grid button strong, .config-device-grid button small { display: block; }
.config-device-grid button strong { font-size: .95rem; }
.config-device-grid button small { margin-top: .22rem; color: var(--muted); font-size: .76rem; line-height: 1.3; }
.config-help-link { margin-top: .3rem; }
.config-progress-step, .config-result-step { display: flex; min-height: 375px; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.config-progress-step > p:not(.kicker), .config-result-step > p:not(.kicker) { max-width: 440px; margin: 0 auto 1.4rem; color: var(--muted); }
.config-progress-step > small { color: var(--muted); font-size: .78rem; }
.config-spinner { width: 58px; height: 58px; margin-bottom: 1.5rem; border: 5px solid #dce5d7; border-top-color: #5d873e; border-radius: 50%; animation: config-spin .8s linear infinite; }
.config-progress-track { width: min(420px, 100%); height: 8px; margin: .4rem auto 1rem; overflow: hidden; border-radius: 4px; background: #e2e8df; }
.config-progress-track i { display: block; width: 12%; height: 100%; border-radius: inherit; background: #5d873e; transition: width .45s ease; }
.config-result-icon { display: grid; place-items: center; width: 58px; height: 58px; margin-bottom: 1.5rem; border-radius: 50%; background: #e4f2ce; color: #345727; }
.config-result-icon img { width: 28px; height: 28px; }
.config-result-error { background: #f8e7e4; color: #913f38; font-size: 1.7rem; font-weight: 900; }
.config-result-step .button { margin-top: .65rem; }
@keyframes config-spin { to { transform: rotate(360deg); } }

.main-footer { display: block; width: 100%; margin: 0; padding: 0; border: 0; background: #101b15; color: #eaf0e9; }
.main-footer-inner { display: grid; grid-template-columns: 1.35fr .7fr .85fr 1fr; gap: clamp(1.5rem, 5vw, 4rem); width: min(1240px, calc(100% - 4rem)); margin: 0 auto; padding: 3.5rem 0 2.5rem; }
.main-footer-brand p { max-width: 300px; margin: 1rem 0 0; color: #aebcaf; font-size: .9rem; }
.brand-dark { color: #f2f6f1; }
.brand-dark img { width: 38px; height: 38px; }
.main-footer nav, .main-footer-contact { display: grid; align-content: start; gap: .65rem; }
.main-footer nav strong, .main-footer-contact > strong { margin-bottom: .35rem; color: #f2f6f1; font-size: .88rem; }
.main-footer nav a { color: #afbcaf; text-decoration: none; font-size: .88rem; }
.main-footer nav a:hover { color: var(--lime); }
.main-footer-contact a { display: inline-flex; align-items: center; gap: .55rem; color: #f2f6f1; text-decoration: none; font-size: .9rem; font-weight: 760; }
.main-footer-contact a img { width: 23px; height: 23px; }
.main-footer-contact small { margin-top: .65rem; color: #839486; font-size: .78rem; line-height: 1.45; }
.main-footer-bottom { display: flex; justify-content: space-between; width: min(1240px, calc(100% - 4rem)); margin: 0 auto; padding: 1.1rem 0 1.4rem; border-top: 1px solid #314036; color: #839486; font-size: .78rem; }

@media (max-width: 980px) {
  .guest-home { grid-template-columns: 1fr; gap: 2rem; min-height: auto; padding-top: 3.5rem; padding-bottom: 1.4rem; }
  .hero-content { grid-row: auto; max-width: 760px; }
  .trial-marker { grid-column: 1; grid-row: auto; justify-self: stretch; max-width: none; box-shadow: none; }
  .benefit-stage { grid-template-columns: 1fr; gap: 2rem; padding: 4rem 0; }
  .benefit-heading { position: static; }
  .product-preview { grid-template-columns: 1fr; }
  .trial-banner-first { grid-template-columns: 150px 1fr; }
  .trial-banner-first .button { grid-column: 1 / -1; }
  .connection-stage { grid-template-columns: 1fr; }
  .device-tips { grid-template-columns: 1fr 1fr 1fr; }
  .support-stage { grid-template-columns: 1fr; min-height: 0; }
  .faq-layout { grid-template-columns: 1fr; }
  .main-footer-inner { grid-template-columns: 1.2fr 1fr 1fr; }
  .main-footer-brand { grid-column: 1 / -1; }
}

@media (max-width: 620px) {
  p { font-size: .98rem; }
  .kicker { font-size: .76rem; }
  .button, .underlink, .card-link { font-size: .93rem; }
  .guest-home { gap: 1.5rem; padding: 2.8rem 1rem 1.4rem; }
  .hero-content, .trial-marker { min-width: 0; }
  .hero-content h1 { max-width: 100%; font-size: 2.8rem; }
  .hero-copy { font-size: 1rem; }
  .trial-marker { padding: 1.2rem; }
  .trial-marker h2 { font-size: 2.4rem; }
  .trial-marker h2 .trial-free { font-size: 2rem; }
  .trial-benefits strong { font-size: 1rem; }
  .benefit-stage { padding: 3.4rem 0; }
  .benefit-heading h2 { font-size: 2.55rem; }
  .benefit-grid { grid-template-columns: 1fr; }
  .benefit-card { min-height: 195px; }
  .product-preview { margin: 0 -1rem 4rem; padding: 2rem 1rem; border-radius: 0; }
  .product-preview-copy h2 { font-size: 2.55rem; }
  .product-preview-ui { padding: 1rem; box-shadow: none; }
  .page-intro-wide h1 { font-size: 3rem; }
  .trial-banner-first { grid-template-columns: 1fr; padding: 1.25rem; }
  .trial-banner-mark { padding: 0 0 1rem; border-right: 0; border-bottom: 1px solid #536658; }
  .plan-card .plan-top { font-size: .78rem; }
  .payment-note p, .payment-note small { font-size: .84rem; }
  .connection-main { padding: 1.5rem; }
  .connection-main h2 { font-size: 2.3rem; }
  .device-tips { grid-template-columns: 1fr; }
  .device-tips li { min-height: 0; }
  .support-stage { margin: -2rem -1rem 0; padding: 2.5rem 1rem; border-radius: 0; }
  .support-stage-copy h1 { font-size: 3.25rem; }
  .support-channel { min-height: 112px; padding: 1rem; }
  .faq-layout { margin: 3.5rem 0; }
  .faq-layout h2 { font-size: 2.4rem; }
  .cabinet-support-actions { width: 100%; justify-content: stretch; }
  .cabinet-support-actions .button { flex: 1; }
  .mobile-nav a { font-size: .76rem; }
  .main-footer { padding-bottom: 62px; }
  .main-footer-inner { grid-template-columns: 1fr 1fr; width: calc(100% - 2rem); padding: 2.5rem 0 2rem; }
  .main-footer-brand, .main-footer-contact { grid-column: 1 / -1; }
  .main-footer-bottom { width: calc(100% - 2rem); }
  .config-dialog-body { min-height: min(610px, calc(100dvh - 2rem)); padding: 1.35rem; }
  .config-dialog-body h2 { padding-right: 2rem; font-size: 1.85rem; }
  .config-device-grid { grid-template-columns: 1fr; }
  .config-device-grid button:last-child { grid-column: auto; }
  .config-progress-step, .config-result-step { min-height: 520px; }
}

@media (max-width: 620px) {
  .email-reward { grid-template-columns: auto 1fr; padding: 1rem; }
  .email-reward .button { grid-column: 1 / -1; width: 100%; }
}

@media (max-width: 380px) {
  .member-command-actions, .access-state { grid-template-columns: 1fr; }
  .member-command-actions .button { width: 100%; }
  .member-command h1 { font-size: 2.35rem; }
}

@media (prefers-reduced-motion: reduce) {
  .config-spinner { animation-duration: 1.8s; }
  .config-progress-track i { transition: none; }
}

@media (min-width: 981px) and (max-width: 1180px) {
  .hero-content h1 { font-size: 3.8rem; }
}

@media (max-width: 360px) {
  .hero-content h1 { font-size: 2.45rem; }
}

@media (max-width: 620px) {
  .guest-home { gap: 1rem; padding-top: 1.5rem; padding-bottom: 1.5rem; }
  .hero-brand-line { display: none; }
  .hero-content .kicker { margin-bottom: .65rem; font-size: .68rem; }
  .hero-content h1 { margin-bottom: .75rem; font-size: 2.15rem; line-height: 1.08; }
  .hero-copy { margin-bottom: .65rem; font-size: .92rem; line-height: 1.5; }
  .hero-link { min-height: 44px; font-size: .85rem; }
  .trial-marker { padding: 1rem; }
  .trial-marker-top { margin-bottom: .65rem; }
  .trial-marker-top span { font-size: .68rem; }
  .trial-marker-top b { padding: .3rem .55rem; font-size: .8rem; }
  .trial-marker h2 { margin-bottom: .6rem; font-size: 1.9rem; }
  .trial-marker h2 .trial-free { margin-top: .16rem; font-size: 1.8rem; }
  .trial-copy { display: none; }
  .trial-benefits { margin: .7rem 0; padding: .7rem 0; }
  .trial-benefits strong { margin-bottom: .2rem; font-size: 1rem; }
  .trial-benefits span { font-size: .68rem; line-height: 1.3; }
  .trial-claim { min-height: 52px; padding-inline: .85rem; }
  .trial-claim .trial-cta-label { font-size: .9rem; }
  .trial-marker .minor { margin-top: .65rem; font-size: .7rem; }
}

.identity-links > button { min-height: 52px; font-size: 1rem; }
.account-identity small { font-size: .9rem; white-space: normal; }
.identity-links .identity-label { width: auto; gap: .5rem; font-family: Arial, sans-serif; }
.identity-links button small { font-size: .9rem; }
.member-command .access-state { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.member-command .access-state div { display: grid; min-width: 0; }
.member-command .access-state dt { color: #bac9bc; font-size: .8rem; font-weight: 400; letter-spacing: 0; }
.member-command .access-state dd { line-height: 1.45; overflow-wrap: anywhere; }
.overview-device { display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; align-items: center; gap: 1rem; margin-top: .75rem; padding: 1.1rem 1.25rem; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.overview-device-copy h2 { margin: 0 0 .35rem; font-size: 1rem; line-height: 1.4; }
.overview-device-copy p { margin: 0; font-size: .875rem; line-height: 1.5; }
.overview-device-actions { display: flex; align-items: center; gap: 1.25rem; }
.overview-device-actions .card-link { min-height: 44px; margin: 0; }
.overview-device .icon-button:disabled { opacity: .45; cursor: not-allowed; }
.cabinet-view-heading h1:focus { outline: none; }
@media (max-width: 620px) {
  .member-command .access-state { grid-template-columns: 1fr 1fr; gap: 1rem; }
  .member-command .access-state > div:last-child { grid-column: 1 / -1; }
  .overview-device { grid-template-columns: 40px minmax(0, 1fr); gap: .75rem; padding: 1rem; }
  .overview-device .device-symbol { width: 40px; height: 40px; }
  .overview-device-actions { grid-column: 2; justify-content: space-between; gap: .75rem; }
}
.connection-main { padding: 2rem; }
.connection-main h2 { font-size: 2.4rem; }
.setup-list { grid-template-columns: 1fr; }
.setup-list li { display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: 1rem; min-height: 0; padding: 1.5rem 0; border-left: 0; border-bottom: 1px solid var(--line); }
.setup-list h2 { margin: 0 0 .65rem; }
.setup-list p { min-height: 0; max-width: 760px; }
.renewal-note { padding: 1rem; margin-bottom: 1rem; border-left: 3px solid #769338; background: #edf4dc; color: #243421; font-size: 1rem; }
details.identity-links { display: block; grid-column: 1 / -1; }
details.identity-links > summary { min-height: 44px; padding: .65rem 0; font-family: Arial, sans-serif; font-size: 1rem; font-weight: 650; cursor: pointer; }
.connection-main .device-tips { display: none; }
@media (max-width: 620px) {
  .cabinet-rail .demo-status { display: none; }
  .cabinet-rail .account-identity { grid-column: 1 / -1; }
  #connection-view .page-intro h1 { font-size: 2rem; }
  .connection-main { padding: 1.25rem; }
  .identity-links button { width: 100%; }
  .identity-links .identity-label { width: auto; }
  .identity-links .kicker { margin: .5rem 0; }
}

/* Service screens use a compact scale; hero typography stays independent. */
.member-home, #plans-view, #connection-view, #checkout-dialog { font-family: "Segoe UI", Arial, sans-serif; }
.member-home :is(button, .button, strong, b, .kicker, dt), #plans-view :is(.button, .price, .plan-top, .kicker), #connection-view :is(.button, .kicker), #checkout-dialog :is(.button, .kicker) { font-weight: 600; letter-spacing: 0; }
#plans-view, #connection-view { padding-top: 2rem; }
.page-intro-wide { margin-bottom: 1.5rem; }
.page-intro-wide h1, #connection-view .page-intro h1 { font-size: 2.25rem; line-height: 1.2; margin: 0 0 .6rem; }
.page-intro-wide .kicker { margin-bottom: .55rem; }
.page-intro-wide p { font-size: 1rem; line-height: 1.5; }
.plan-card { min-height: 0; padding: 1.5rem; grid-template-rows: auto auto auto auto 1fr auto; }
.plan-card .plan-top { min-height: 20px; letter-spacing: 0; }
.plan-card .plan-top > span:first-child { display: none; }
.plan-card .plan-top { justify-content: flex-end; }
.plan-card h2 { margin: 1rem 0 .4rem; font-size: 1.6rem; }
.plan-card > p:not(.price) { margin: 0; line-height: 1.5; }
.plan-card .price { margin: 1.4rem 0 !important; font-size: 2rem; }
.plan-card ul { margin: 0 0 1.4rem; }
.trial-banner-first { padding: 1.1rem 1.25rem; gap: 1.25rem; }
.trial-banner-first h2 { font-size: 1.2rem; }
.trial-banner-mark strong { font-size: 1.6rem; }
.member-home { grid-template-columns: 260px minmax(0, 1fr); gap: 1.5rem; }
.cabinet-rail { padding: 1.1rem; }
.cabinet-rail nav button:first-child { background: transparent; }
.cabinet-rail nav button[aria-current="page"] { background: #e6eee2; color: #142019; }
.cabinet-rail .identity-links { display: block; margin-top: 1rem; }
.identity-links h2 { margin: 0 0 .5rem; color: #526359; font-size: .85rem; font-weight: 600; }
.identity-links > button { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .5rem; width: 100%; min-height: 48px; padding: .5rem 0; border-bottom: 1px solid #e2e7e0; font: inherit; }
.identity-links .identity-label { display: flex; justify-content: flex-start; gap: .5rem; width: auto; min-height: 0; min-width: 0; padding: 0; }
.identity-links .identity-label img { flex: none; width: 18px; height: 18px; }
.identity-links .identity-label b { font: inherit; font-size: .95rem; font-weight: 600; }
.identity-links button small { justify-self: end; padding: .25rem .4rem; border-radius: 4px; background: #eaf0e6; color: #34513b; font: inherit; font-size: .875rem; font-weight: 600; white-space: nowrap; }
.identity-links button:not([data-connected="true"]) small { background: #edf3fa; color: #1e5f9c; }
.cabinet-view-heading { margin: 0 0 1.25rem; }
.cabinet-view-heading .kicker { margin: 0 0 .4rem; font-size: .75rem; }
.cabinet-view-heading h1 { margin: 0; font-size: 1.8rem; line-height: 1.25; }
.member-command { padding: 1.5rem; }
.member-command #member-title { font-size: 1.8rem; line-height: 1.25; margin: .75rem 0 .4rem; }
.member-command-copy > .kicker { display: none; }
[data-cabinet-pane] { min-width: 0; }
.cabinet-main > [data-cabinet-pane]:not([data-cabinet-pane="overview"]) { margin-top: 0; }
.billing-panel dl { min-width: 0; }
.cabinet-support { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 1.5rem; padding: 1.5rem; }
.cabinet-support h2 { font-size: 1.5rem; }
.account-identity > div { min-width: 0; }
.account-identity small { font-size: .85rem; line-height: 1.45; }
#checkout-dialog { width: min(480px, calc(100% - 2rem)); }
#checkout-dialog .dialog-body { padding: 1.5rem; }
#checkout-dialog h2 { font-size: 1.75rem; line-height: 1.25; padding-right: 2rem; }
#checkout-dialog .kicker { font-size: .72rem; margin-bottom: .65rem; }
#checkout-dialog .order-box { margin: 1rem 0; padding: 1rem; }
#checkout-form { gap: .75rem; }
#checkout-form label { font-size: .9rem; }
#checkout-form input[type="email"] { font-size: 1rem; }
#checkout-form .consent { margin: .25rem 0; font-size: .85rem; line-height: 1.5; }
#checkout-dialog details.promo-field { display: block; margin: 0; }
details.promo-field > summary { min-height: 44px; padding: .4rem 0; color: #205f98; font-size: .95rem; font-weight: 600; }
details.promo-field > summary::before { content: "+"; font-weight: 600; }
details.promo-field[open] > summary::before { content: "-"; }
details.promo-field > summary span { color: #526359; font-size: .8rem; font-weight: 400; }
details.promo-field:not([open]) > :not(summary) { display: none !important; }
.form-error:empty, #checkout-promo-result:empty { display: none; }
#checkout-dialog .form-note { margin-top: .75rem; font-size: .8rem; line-height: 1.5; }
.setup-workspace { border: 1px solid var(--line); border-radius: 8px; background: #fff; overflow: hidden; }
.setup-device-menu { display: none; }
.help-heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1.5rem; }
.help-heading h1 { margin: 0 0 .5rem; padding-left: .8rem; border-left: 5px solid #bbd86c; font-size: 2.25rem; line-height: 1.2; }
.help-heading p { margin: 0; font-size: 1rem; }
#help-view { padding-top: 2rem; font-family: "Segoe UI", Arial, sans-serif; }
#help-view :is(button, .button, strong) { font-weight: 600; letter-spacing: 0; }
.help-topics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; margin-bottom: 2rem; }
.help-topics button { --topic-tint: #e6effb; --topic-accent: #295f9b; position: relative; display: grid; grid-template-columns: 1fr 20px; gap: .85rem; min-height: 144px; border: 1px solid var(--line); border-radius: 8px; padding: 1.1rem; background: #fff; color: #223b2d; font: inherit; text-align: left; transition: transform .18s ease, border-color .18s ease, background-color .18s ease; }
.help-topics button[data-help-topic="network"] { --topic-tint: #e4f2ea; --topic-accent: #31684d; }
.help-topics button[data-help-topic="account"] { --topic-tint: #f9e9f0; --topic-accent: #94506b; }
.help-topics button[data-help-topic="payment"] { --topic-tint: #eef4d6; --topic-accent: #576d23; }
.help-topic-icon { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 8px; background: var(--topic-tint); }
.help-topic-icon img { width: 22px; height: 22px; }
.help-topic-copy { grid-column: 1 / -1; min-width: 0; }
.help-topic-copy strong { display: block; margin-bottom: .3rem; font-size: 1rem; line-height: 1.35; }
.help-topic-copy small { display: block; color: #53645a; font-size: .875rem; line-height: 1.5; }
.help-topics .help-topic-check { grid-column: 2; grid-row: 1; align-self: start; width: 20px; height: 20px; opacity: 0; }
.help-topics button[aria-pressed="true"] { border-color: var(--topic-accent); background: var(--topic-tint); box-shadow: inset 0 -3px var(--topic-accent); }
.help-topics button[aria-pressed="true"] .help-topic-icon { background: #fff; }
.help-topics button[aria-pressed="true"] .help-topic-check { opacity: 1; }
@media (hover: hover) { .help-topics button:hover { transform: translateY(-3px); border-color: var(--topic-accent); } }
.help-topics button:focus-visible, .help-answers summary:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }
.help-workspace { display: grid; grid-template-columns: minmax(0, 1fr) 320px; align-items: start; gap: 2.5rem; }
.help-answers { min-width: 0; }
.help-answers-heading { display: flex; align-items: center; gap: .85rem; margin-bottom: 1.25rem; }
.help-answers-heading h2 { margin: 0 0 .15rem; font-size: 1.35rem; line-height: 1.4; }
.help-answers-heading p { margin: 0; font-size: .875rem; color: #647269; }
.help-answer-icon { display: grid; place-items: center; flex: none; width: 44px; height: 44px; border-radius: 8px; background: #e6effb; }
.help-answer-icon img { width: 22px; height: 22px; }
.help-answers-heading[data-topic="network"] .help-answer-icon { background: #e4f2ea; }
.help-answers-heading[data-topic="account"] .help-answer-icon { background: #f9e9f0; }
.help-answers-heading[data-topic="payment"] .help-answer-icon { background: #eef4d6; }
.help-answers .faq-list details { padding-inline: 1rem; border-radius: 0; transition: background-color .18s ease; }
.help-answers .faq-list details[open] { background: #fff; }
.help-answers .faq-list details:hover { background: #fff; }
.help-answers .faq-list summary { min-height: 70px; padding: 1.1rem 0; font-size: 1rem; font-weight: 600; line-height: 1.5; }
.help-answers .faq-list summary img { flex: none; width: 28px; height: 28px; padding: 5px; border-radius: 50%; background: #e8eee7; }
.help-answers .faq-list details[open] summary img { background: #e0edbd; }
.help-answer { padding: 0 1.75rem 1.25rem 0; }
.help-answer p { margin: 0 0 .75rem; padding: 0 !important; font-size: 1rem; line-height: 1.65; color: #4c6053; }
.help-answer p:last-child { margin-bottom: 0; }
.help-answer .underlink { justify-content: flex-start; min-height: 44px; color: #1d5f97; font-size: .95rem; line-height: 1.5; text-align: left; }
.help-contact { padding: 1.5rem; border-radius: 8px; border-top: 4px solid #c8e586; background: #1d3628; color: #f1f6ed; }
.help-contact-brand { display: flex; align-items: center; gap: .65rem; padding-bottom: 1.25rem; margin-bottom: 1.25rem; border-bottom: 1px solid #48604e; }
.help-contact-brand > span { display: grid; place-items: center; width: 44px; height: 44px; flex: none; border-radius: 6px; background: #fff; }
.help-contact-brand > span img { width: 30px; height: 30px; }
.help-contact-brand strong { font-size: 1rem; line-height: 1.5; }
.help-contact-brand small { display: block; color: #c0cfbf; font-size: .875rem; }
.help-contact-brand > .help-contact-message { width: 28px; height: 28px; margin-left: auto; filter: brightness(0) invert(1); }
.help-contact h2 { margin: 0 0 .65rem; font-size: 1.35rem; line-height: 1.35; }
.help-contact > p { margin: 0 0 1.25rem; color: #d1dfd0; font-size: .95rem; line-height: 1.6; }
.help-contact > .button { width: 100%; }
.help-telegram { display: flex; align-items: center; gap: .75rem; padding: 1.25rem 0; color: #f1f6ed; text-decoration: none; }
.help-telegram > img:first-child { width: 24px; height: 24px; }
.help-telegram > img:last-child { width: 16px; height: 16px; margin-left: auto; filter: brightness(0) invert(1); }
.help-telegram span { font-size: .85rem; line-height: 1.6; }
.help-telegram strong { display: block; font-size: .95rem; }
.help-contact > .help-contact-note { border-top: 1px solid #48604e; padding-top: 1rem; margin: 0; font-size: .875rem; color: #c0cfbf; }
.help-contact-note > span { display: flex; align-items: center; gap: .5rem; color: #eef4eb; font-weight: 600; }
.help-contact-note img { width: 16px; height: 16px; filter: brightness(0) invert(1); }
.help-contact-note p { margin: .5rem 0 0; color: #c0cfbf; font-size: .875rem; line-height: 1.6; }
[data-help-answers]:not([hidden]) { animation: help-answer-enter .2s ease-out; }
@keyframes help-answer-enter { from { opacity: .3; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { .help-topics button { transition: none; } [data-help-answers]:not([hidden]) { animation: none; } }
.help-security { display: flex; align-items: flex-start; gap: .65rem; margin: 2rem 0 0; padding-top: 1.25rem; border-top: 1px solid var(--line); color: #526359; font-size: .875rem; }
.help-security img { flex: none; width: 20px; height: 20px; }
#support-dialog { font-family: "Segoe UI", Arial, sans-serif; }
#support-dialog h2 { padding-right: 2rem; font-size: 1.75rem; line-height: 1.3; }
#support-dialog .dialog-body > p:not(.kicker):not(.form-note):not(.inline-result) { margin-bottom: 1.25rem; font-size: 1rem; }
#support-dialog :is(input, textarea) { font-size: 1rem; font-weight: 400; }
#support-dialog label { font-size: .9rem; font-weight: 600; }
#support-dialog :is(.button, .kicker) { font-weight: 600; letter-spacing: 0; }
@media (max-width: 980px) {
  .help-workspace { grid-template-columns: minmax(0, 1fr) 280px; gap: 1.5rem; }
}
@media (max-width: 700px) {
  .help-workspace { grid-template-columns: 1fr; }
  .help-topics { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-bottom: 1.5rem; }
  .help-topics button { min-height: 144px; padding: .85rem; gap: .65rem; }
  .help-topic-copy strong { font-size: .95rem; }
  .help-topic-copy small { font-size: .875rem; }
  .help-heading h1 { font-size: 1.85rem; }
  .help-heading > .button { font-size: .9rem; }
  .help-contact { padding: 1.25rem; }
  .help-security { margin-top: 1.5rem; }
  #support-dialog .input-row { grid-template-columns: 1fr; }
  #support-dialog .dialog-body { padding: 1.25rem; }
}
.setup-workspace .platform-tabs { display: flex; flex-direction: row; flex-wrap: wrap; gap: .3rem; padding: .75rem 1rem; border: 0; border-bottom: 1px solid var(--line); background: #edf1eb; }
.setup-workspace .platform-tabs button { width: auto; min-height: 44px; padding: .5rem .85rem; border: 1px solid transparent; border-radius: 4px; background: transparent; color: #374b3e; font-size: .95rem; }
.setup-workspace .platform-tabs button[aria-pressed="true"] { border-color: #294c36; background: #fff; color: #142019; }
.setup-workspace .platform-tabs button { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; }
.setup-workspace .platform-tabs button img { flex: none; width: 20px; height: 20px; }
.setup-panel-title { display: flex; align-items: center; gap: .75rem; margin: .65rem 0 .75rem; }
.setup-panel-title > span { display: grid; place-items: center; flex: none; width: 36px; height: 36px; border-radius: 6px; background: #e6effb; }
.setup-panel-title img { width: 22px; height: 22px; }
.setup-panel .setup-panel-title h3 { margin: 0; }
[data-setup-panel="1"] .setup-panel-title > span { background: #e4f2ea; }
[data-setup-panel="2"] .setup-panel-title > span { background: #eef4d6; }
.setup-device-heading { display: flex; flex-wrap: wrap; align-items: baseline; gap: .5rem 1rem; padding: 1.25rem 1.5rem .75rem; }
.setup-device-heading h2 { margin: 0; font-size: 1.3rem; }
.setup-device-heading p { margin: 0; font-size: .9rem; color: #54665a; }
.setup-step-nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .5rem; padding: 0 1.5rem 1rem; margin: 0; list-style: none; }
.setup-step-nav button { display: flex; align-items: center; gap: .6rem; width: 100%; min-height: 48px; padding: .5rem .65rem; border: 1px solid #d7ded7; border-radius: 4px; background: #fff; color: #526359; font-size: .9rem; text-align: left; }
.setup-step-nav b { display: grid; place-items: center; flex: none; width: 24px; height: 24px; background: #edf1eb; border-radius: 4px; font-size: .8rem; }
.setup-step-nav button[aria-current="step"] { border-color: #466841; background: #f1f6e7; color: #243b28; font-weight: 600; }
.setup-panel { min-height: 238px; padding: 1.25rem 1.5rem; border-top: 1px solid var(--line); }
.setup-panel > .button { margin-top: .25rem; }
.setup-panel h3 { margin: .4rem 0 .75rem; font-size: 1.4rem; line-height: 1.3; }
.setup-step-count { margin: 0; font-size: .8rem; color: #526359; }
.setup-panel > p:not(.setup-step-count), .setup-panel ol { max-width: 720px; font-size: 1rem; line-height: 1.6; }
.setup-panel ol { padding-left: 1.3rem; margin: .5rem 0 1rem; }
.setup-panel ol li { padding-left: .25rem; margin: .35rem 0; }
.setup-panel .setup-hint { margin: .85rem 0 0; color: #5d6b62; font-size: .85rem !important; }
.setup-navigation { display: flex; justify-content: space-between; gap: 1rem; padding: 1rem 1.5rem; border-top: 1px solid var(--line); }
.setup-navigation button:disabled { opacity: .45; cursor: default; }
#connection-view .connection-help { margin-top: 1.25rem; padding: 1.25rem 1.5rem; }
#connection-view .connection-help h2 { font-size: 1.2rem; }
@media (max-width: 980px) {
  .member-home { grid-template-columns: 1fr; }
  .cabinet-rail { display: contents; }
  .cabinet-rail .account-identity { grid-row: 1; }
  .cabinet-rail nav { grid-row: 2; margin: 0; padding: .5rem 0; border-block: 1px solid var(--line); }
  .cabinet-main { grid-row: 3; }
  .cabinet-rail .identity-links { grid-row: 4; padding-top: 1rem; border-top: 1px solid var(--line); }
  .cabinet-rail .cabinet-logout { grid-row: 5; justify-self: start; margin-top: 0; }
  .member-home .demo-status { display: none; }
  .cabinet-rail .identity-links { display: grid; grid-template-columns: 1fr 1fr; gap: 0 1.25rem; margin-top: 0; }
  .identity-links h2 { grid-column: 1 / -1; }
}
@media (max-width: 620px) {
  .page-intro-wide h1, #connection-view .page-intro h1 { font-size: 1.85rem; }
  .page-intro-wide { margin-bottom: 1.25rem; }
  .cabinet-rail .identity-links { grid-template-columns: 1fr; }
  .cabinet-rail nav { gap: .15rem; }
  .cabinet-rail nav button { font-size: .85rem; min-height: 44px; }
  .setup-workspace .platform-tabs { padding: .6rem; gap: .15rem; }
  .setup-workspace .platform-tabs button { padding: .45rem .65rem; font-size: .85rem; }
  .setup-workspace .platform-tabs, .setup-device-heading { display: none; }
  .setup-device-menu { display: grid; gap: .4rem; padding: 1rem; font-size: .875rem; font-weight: 600; }
  .setup-device-menu select { width: 100%; min-height: 44px; border: 1px solid #93a393; border-radius: 4px; padding: .5rem; background: #fff; color: var(--ink); font: inherit; font-size: 1rem; }
  .setup-device-heading { padding: 1rem; gap: .3rem; }
  .setup-device-heading p { font-size: .85rem; }
  .setup-step-nav { padding: 0 .75rem .75rem; gap: .35rem; }
  .setup-step-nav button { flex-direction: column; align-items: center; gap: .35rem; padding: .5rem .25rem; font-size: .78rem; text-align: center; }
  .setup-step-nav button span { overflow-wrap: anywhere; }
  .setup-panel { padding: 1rem; min-height: 250px; }
  .setup-panel h3 { font-size: 1.25rem; }
  .setup-navigation { padding: 1rem; gap: .5rem; }
  .setup-navigation .button { font-size: .85rem; padding-inline: .7rem; }
  #connection-view .connection-help { padding: 1rem; }
  #checkout-dialog .dialog-body { padding: 1.25rem; }
}
