:root {
  --green: #01875f;
  --green-dark: #006c4c;
  --green-soft: #e8f5ef;
  --ink: #17202a;
  --muted: #667085;
  --line: #e5e9ed;
  --surface: #ffffff;
  --canvas: #f6f7f8;
  --amber: #f5a623;
  --danger: #b42318;
  --shadow: 0 16px 42px rgba(19, 33, 28, .08);
  --radius: 24px;
}

* { box-sizing: border-box; }
html { max-width: 100%; overflow-x: clip; scroll-behavior: smooth; scroll-padding-top: 20px; }
body {
  margin: 0;
  max-width: 100%;
  overflow-x: hidden;
  background: var(--canvas);
  color: var(--ink);
  font-family: Tahoma, Arial, "Segoe UI", sans-serif;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
button, input, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; }
img { max-width: 100%; display: block; }
[hidden] { display: none !important; }

.shell { width: min(1160px, calc(100% - 40px)); margin-inline: auto; }
.skip-link { position: fixed; inset: 8px auto auto 8px; z-index: 1000; transform: translateY(-150%); background: #111; color: #fff; padding: 10px 16px; border-radius: 8px; }
.skip-link:focus { transform: none; }

.account-button { border: 1px solid var(--line); background: #fff; min-height: 42px; border-radius: 12px; padding: 8px 13px; display: inline-flex; align-items: center; gap: 8px; cursor: pointer; text-decoration: none; font-weight: 800; font-size: 13px; }

.hero { padding-block: 26px 24px; display: grid; grid-template-columns: minmax(0, 1fr) 310px; gap: 22px; }
.hero-card, .hero-side > *, .content-card, .facts-grid, .reviews-layout, .privacy-grid details { background: var(--surface); border: 1px solid var(--line); box-shadow: var(--shadow); }
.hero-card { border-radius: 30px; padding: 34px; }
.app-heading { display: flex; align-items: center; gap: 24px; }
.app-icon { width: 116px; height: 116px; flex: 0 0 auto; border-radius: 25px; overflow: hidden; display: grid; place-items: center; background: #fff; box-shadow: 0 10px 28px rgba(0,0,0,.11); }
.app-icon img { width: 100%; height: 100%; object-fit: cover; }
.app-icon span { width: 100%; height: 100%; display: grid; place-items: center; background: var(--green); color: #fff; font-weight: 900; }
.app-title { min-width: 0; width: 100%; }
.official-pill { display: inline-flex; align-items: center; padding: 3px 10px; color: var(--green-dark); background: var(--green-soft); border-radius: 999px; font-size: 11px; font-weight: 900; }
.app-title h1 { margin: 5px 0 0; font-size: clamp(32px, 5vw, 50px); line-height: 1.12; letter-spacing: -1.5px; }
.developer { margin: 8px 0 0; color: var(--green-dark); font-weight: 900; }
.tagline { margin: 6px 0 0; color: var(--muted); max-width: 590px; }
.store-stats { display: grid; grid-template-columns: repeat(4, 1fr); margin: 30px 0; border-block: 1px solid var(--line); padding-block: 19px; }
.store-stats > * { text-align: center; padding-inline: 10px; border: 0; border-inline-start: 1px solid var(--line); background: transparent; color: inherit; }
.store-stats > *:first-child { border-inline-start: 0; }
.store-stats strong, .store-stats span { display: block; }
.store-stats strong { font-size: 17px; }
.store-stats span { color: var(--muted); font-size: 11px; margin-top: 3px; }
.stat-rating { cursor: pointer; border-radius: 12px; }
.stat-rating:hover, .stat-rating:focus-visible { background: var(--green-soft); outline: 0; }
.stat-rating strong { color: var(--amber); }
.hero-actions { display: flex; align-items: stretch; gap: 12px; }
.install-button { flex: 1; min-height: 64px; border: 0; border-radius: 16px; background: var(--green); color: #fff; text-decoration: none; display: flex; flex-direction: column; justify-content: center; padding: 10px 22px; cursor: pointer; }
.install-button:hover { background: var(--green-dark); }
.install-button span { font-weight: 900; font-size: 16px; }
.install-button small { font-size: 11px; opacity: .82; }
.install-button.is-disabled { background: #7e8a86; cursor: not-allowed; }
.share-button, .secondary-button { border: 1px solid var(--green); color: var(--green-dark); background: #fff; border-radius: 14px; padding: 0 24px; font-weight: 900; cursor: pointer; }
.share-button:hover, .secondary-button:hover { background: var(--green-soft); }
.store-secondary-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 10px; }
.store-secondary-actions > * { min-height: 46px; justify-content: center; }
.store-account { border-color: var(--green); color: var(--green-dark); }
.store-search-tags { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--line); }
.store-search-tags a { display: inline-flex; align-items: center; gap: 4px; min-height: 34px; padding: 6px 13px; border: 1px solid var(--line); border-radius: 999px; background: #fff; color: #3d4a44; text-decoration: none; font-size: 11px; font-weight: 900; transition: .16s ease; }
.store-search-tags a span { color: var(--green); }
.store-search-tags a:hover, .store-search-tags a:focus-visible { border-color: var(--green); background: var(--green-soft); color: var(--green-dark); outline: 0; transform: translateY(-1px); }
.trust-note { margin: 14px 0 0; color: var(--muted); font-size: 11px; }
.mobile-rating-prompt { display: none; }
.hero-side { display: flex; flex-direction: column; gap: 14px; }
.update-card { border-radius: 24px; padding: 25px; }
.section-kicker { display: block; color: var(--green-dark); font-size: 11px; font-weight: 900; letter-spacing: .2px; margin-bottom: 4px; }
.update-card > strong { display: block; font-size: 35px; line-height: 1.2; margin-block: 8px 2px; }
.update-card > span:not(.section-kicker) { font-size: 12px; color: var(--muted); }
.status-row { margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--line); color: #315d4e; font-size: 12px; font-weight: 800; }
.status-row i { width: 8px; height: 8px; display: inline-block; border-radius: 50%; background: var(--green); margin-inline-end: 7px; }
.mini-feature { border-radius: 18px; padding: 17px; display: flex; gap: 12px; align-items: flex-start; }
.mini-feature > span { width: 28px; height: 28px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 50%; background: var(--green-soft); color: var(--green-dark); font-weight: 900; }
.mini-feature strong, .mini-feature small { display: block; }
.mini-feature strong { font-size: 13px; }
.mini-feature small { color: var(--muted); font-size: 11px; margin-top: 2px; }

.domain-focus { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 20px; align-items: stretch; }
.domain-focus-copy, .domain-focus-items { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow); }
.domain-focus-copy { padding: 28px; }
.domain-focus-copy h2 { margin: 0; }
.domain-focus-copy p { margin: 12px 0 0; color: var(--muted); }
.primary-domain-link { display: inline-flex; margin-top: 15px; color: var(--green-dark); font-size: 12px; font-weight: 900; text-underline-offset: 3px; }
.domain-focus-items { display: grid; grid-template-columns: repeat(3, 1fr); overflow: hidden; }
.domain-focus-items > div { padding: 24px 18px; display: flex; flex-direction: column; justify-content: center; gap: 11px; border-inline-start: 1px solid var(--line); }
.domain-focus-items > div:first-child { border-inline-start: 0; }
.domain-focus-items span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; background: var(--green-soft); color: var(--green-dark); font-weight: 900; }
.domain-focus-items strong { font-size: 13px; }

.section { padding-block: 42px; }
.section-head { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 20px; }
.section h2 { margin: 0; font-size: clamp(24px, 4vw, 34px); letter-spacing: -.7px; }
.slider-controls { display: flex; gap: 8px; direction: ltr; }
.slider-controls button { width: 42px; height: 42px; border: 1px solid var(--line); background: #fff; border-radius: 12px; font-weight: 900; cursor: pointer; }
.screens-track { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(220px, 24%); gap: 16px; overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: inline mandatory; scrollbar-width: thin; padding: 4px 2px 14px; }
.screen-shot { scroll-snap-align: start; border: 1px solid var(--line); border-radius: 22px; padding: 0; background: #fff; overflow: hidden; cursor: zoom-in; box-shadow: 0 10px 30px rgba(16, 24, 40, .07); text-align: start; }
.screen-shot img { width: 100%; aspect-ratio: 9 / 16; object-fit: cover; background: #e9edf0; }
.screen-shot span { display: block; padding: 12px 14px; color: #344054; font-weight: 800; font-size: 12px; }

.detail-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(280px, .8fr); gap: 20px; }
.content-card { border-radius: var(--radius); padding: 30px; }
.prose { color: #3f4b57; margin-top: 20px; }
.prose p { margin: 0 0 12px; }
.feature-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 24px; }
.feature-item { min-height: 68px; border: 1px solid var(--line); border-radius: 15px; padding: 13px; display: flex; align-items: center; gap: 11px; background: #fbfcfc; }
.feature-item span { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 10px; background: var(--green-soft); }
.feature-item strong { font-size: 12px; }
.whats-new ul { list-style: none; padding: 0; margin: 22px 0 0; }
.whats-new li { position: relative; padding-inline-start: 23px; margin-bottom: 14px; color: #3f4b57; font-size: 13px; }
.whats-new li::before { content: ""; position: absolute; inset-inline-start: 0; top: .72em; width: 7px; height: 7px; border-radius: 50%; background: var(--green); }
.muted { color: var(--muted); }

.facts-grid { border-radius: var(--radius); display: grid; grid-template-columns: repeat(6, 1fr); overflow: hidden; }
.facts-grid > div { min-height: 112px; padding: 20px; display: flex; flex-direction: column; justify-content: center; border-inline-start: 1px solid var(--line); }
.facts-grid > div:first-child { border-inline-start: 0; }
.facts-grid span, .facts-grid strong { display: block; }
.facts-grid span { color: var(--muted); font-size: 11px; }
.facts-grid strong { margin-top: 6px; font-size: 14px; overflow-wrap: anywhere; }
.secondary-button { min-height: 44px; }
.review-invite { max-width: 610px; margin: 5px 0 0; color: var(--muted); font-size: 12px; }
.review-cta { display: inline-flex; align-items: center; justify-content: center; gap: 9px; white-space: nowrap; }
.review-cta span { color: var(--amber); direction: ltr; letter-spacing: 1px; }
.review-head-actions { display: flex; align-items: stretch; gap: 9px; }
.review-share-link { white-space: nowrap; }
.store-reviews { padding-top: 20px; }
.store-reviews .review-section-head { align-items: center; }
.store-reviews .review-head-actions { justify-content: center; }
.store-reviews .review-cta { min-width: 210px; min-height: 52px; border: 0; background: linear-gradient(135deg,var(--green),var(--green-dark)); color: #fff; box-shadow: 0 10px 24px rgba(1,108,76,.2); }
.store-reviews .review-cta:hover { background: linear-gradient(135deg,var(--green-dark),#00583e); transform: translateY(-1px); }

.section-note { max-width: 460px; margin: 0; color: var(--muted); font-size: 12px; text-align: end; }
.plans-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.plan-card { position: relative; background: #fff; border: 1px solid var(--line); border-radius: 22px; padding: 25px; box-shadow: var(--shadow); display: flex; flex-direction: column; min-height: 430px; }
.plan-card.featured { border: 2px solid var(--green); transform: translateY(-7px); }
.plan-popular { position: absolute; inset: -14px 24px auto auto; background: var(--green); color: #fff; border-radius: 999px; padding: 5px 13px; font-size: 10px; font-weight: 900; }
.plan-heading > span { color: var(--green-dark); background: var(--green-soft); display: inline-block; padding: 4px 10px; border-radius: 999px; font-size: 11px; font-weight: 900; }
.plan-heading h3 { margin: 13px 0 0; font-size: 22px; }
.plan-heading p { color: var(--muted); font-size: 12px; margin: 4px 0 0; min-height: 40px; }
.plan-price { display: flex; align-items: end; gap: 8px; margin-block: 19px; padding-block: 16px; border-block: 1px solid var(--line); }
.plan-price strong { font-size: 38px; line-height: 1; letter-spacing: -2px; }
.plan-price span { color: var(--muted); font-size: 10px; }
.plan-card ul { list-style: none; padding: 0; margin: 0 0 22px; display: grid; gap: 9px; }
.plan-card li { position: relative; padding-inline-start: 22px; color: #46515b; font-size: 12px; }
.plan-card li::before { content: "✓"; position: absolute; inset-inline-start: 0; color: var(--green); font-weight: 900; }
.plan-button { margin-top: auto; min-height: 48px; border: 1px solid var(--green); border-radius: 13px; background: #fff; color: var(--green-dark); font-weight: 900; cursor: pointer; }
.plan-card.featured .plan-button, .plan-button:hover { background: var(--green); color: #fff; }
.plans-note { text-align: center; color: var(--muted); font-size: 11px; margin: 18px 0 0; }

.reviews-layout { border-radius: var(--radius); display: grid; grid-template-columns: 340px minmax(0, 1fr); overflow: hidden; }
.rating-panel { padding: 30px; border-inline-end: 1px solid var(--line); background: #fbfcfc; }
.rating-big { text-align: center; }
.rating-big strong { display: block; font-size: 60px; line-height: 1.1; letter-spacing: -3px; }
.rating-big > span { display: block; color: var(--amber); letter-spacing: 2px; margin-top: 4px; }
.rating-big small { color: var(--muted); }
.rating-bars { margin-top: 28px; }
.rating-bars > div, .rating-bars > button { display: grid; grid-template-columns: 16px 1fr 26px; align-items: center; gap: 9px; margin-block: 9px; direction: ltr; font-size: 11px; color: var(--muted); }
.rating-bars i { height: 7px; background: #e7eaec; border-radius: 999px; overflow: hidden; }
.rating-bars b { display: block; width: 0; height: 100%; border-radius: inherit; background: var(--green); transition: width .35s ease; }
.reviews-list { padding: 28px; display: grid; gap: 14px; max-height: 620px; overflow-y: auto; }
.review-card { border: 1px solid var(--line); border-radius: 18px; padding: 18px; }
.review-head { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 11px; }
.avatar { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 50%; background: var(--green-soft); color: var(--green-dark); font-weight: 900; }
.review-head strong, .review-head small { display: block; }
.review-head strong { font-size: 13px; }
.review-head small { color: var(--muted); font-size: 10px; margin-top: 2px; }
.review-stars { color: var(--amber); font-size: 12px; direction: ltr; }
.review-card > p { margin: 14px 0 0; color: #3f4b57; font-size: 13px; white-space: pre-wrap; }
.admin-reply { margin-top: 14px; padding: 13px; background: var(--green-soft); border-radius: 12px; font-size: 12px; }
.admin-reply p { margin: 4px 0 0; }
.review-reactions { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--line); }
.review-reactions-label { margin-inline-end: 3px; color: var(--muted); font-size: 10px; font-weight: 800; }
.review-reaction { min-height: 34px; display: inline-flex; align-items: center; gap: 5px; border: 1px solid var(--line); border-radius: 999px; padding: 5px 10px; background: #fff; color: #4c5964; font-family: inherit; font-size: 10px; font-weight: 800; cursor: pointer; transition: .16s ease; }
.review-reaction:hover, .review-reaction:focus-visible { border-color: var(--green); color: var(--green-dark); background: var(--green-soft); outline: 0; }
.review-reaction.active { border-color: var(--green); color: var(--green-dark); background: var(--green-soft); box-shadow: 0 0 0 2px rgba(1,135,95,.08); }
.review-reaction b { min-width: 16px; height: 16px; display: inline-grid; place-items: center; border-radius: 999px; background: #edf0f2; color: var(--ink); font-size: 9px; }
.review-reaction.active b { background: #fff; color: var(--green-dark); }
.review-reaction:disabled { opacity: .55; cursor: not-allowed; }
.empty-state { min-height: 300px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; color: var(--muted); }
.empty-state > span { font-size: 48px; color: var(--amber); }
.empty-state strong { color: var(--ink); }
.empty-state p { margin: 4px 0 0; font-size: 12px; }

.privacy-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; background: transparent; border: 0; box-shadow: none; }
.privacy-grid details { border-radius: 20px; overflow: hidden; }
.privacy-grid summary { list-style: none; cursor: pointer; padding: 21px; min-height: 95px; display: flex; flex-direction: column; justify-content: center; }
.privacy-grid summary::-webkit-details-marker { display: none; }
.privacy-grid summary span { color: var(--green-dark); font-size: 11px; font-weight: 900; }
.privacy-grid summary b { margin-top: 3px; font-size: 16px; }
.privacy-grid details[open] { grid-column: 1 / -1; order: -1; }
.privacy-grid details[open] summary { min-height: auto; border-bottom: 1px solid var(--line); }
.policy-text { padding: 23px; color: #46515b; column-count: 2; column-gap: 34px; }
.policy-text p { margin: 0 0 13px; break-inside: avoid; white-space: pre-line; }

.footer { margin-top: 40px; border-top: 1px solid var(--line); background: #fff; }
.footer > .shell { min-height: 130px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.footer p { color: var(--muted); font-size: 12px; }
.footer > .shell > div:last-child { display: flex; gap: 18px; }
.footer a { color: #46515b; font-size: 12px; text-decoration: none; }
.footer a:hover { color: var(--green); }
.footer-identity strong, .footer-identity small { display: block; }
.footer-identity small { margin-top: 3px; color: var(--muted); font-size: 11px; }

dialog { color: var(--ink); }
.auth-dialog, .review-dialog, .download-dialog { width: min(480px, calc(100% - 28px)); border: 0; border-radius: 24px; padding: 28px; box-shadow: 0 28px 90px rgba(0,0,0,.25); }
dialog::backdrop { background: rgba(17,24,39,.58); backdrop-filter: blur(3px); }
.dialog-close { position: absolute; inset: 16px auto auto 16px; width: 36px; height: 36px; border: 0; border-radius: 10px; background: #f1f3f4; cursor: pointer; font-size: 22px; }
.dialog-brand { display: flex; gap: 14px; align-items: center; padding-inline-end: 38px; }
.dialog-brand h2, .review-dialog h2 { margin: 0; }
.dialog-brand p, .review-dialog > p { margin: 3px 0 0; color: var(--muted); font-size: 12px; }
.auth-tabs { display: grid; grid-template-columns: 1fr 1fr; background: #f1f3f4; border-radius: 12px; padding: 4px; margin: 22px 0; }
.auth-tabs button { border: 0; border-radius: 9px; background: transparent; padding: 10px; cursor: pointer; font-weight: 800; color: var(--muted); }
.auth-tabs button.active { background: #fff; color: var(--green-dark); box-shadow: 0 3px 10px rgba(0,0,0,.08); }
.auth-dialog form, .review-dialog form { display: grid; gap: 15px; }
.auth-dialog label, .review-dialog form > label { display: grid; gap: 6px; font-size: 12px; font-weight: 800; }
.auth-dialog input, .review-dialog textarea { width: 100%; border: 1px solid #d6dbe0; border-radius: 12px; padding: 12px 13px; outline: 0; background: #fff; color: var(--ink); }
.auth-dialog input:focus, .review-dialog textarea:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(1,135,95,.12); }
.auth-dialog label small, .review-dialog label small { color: var(--muted); font-weight: 400; justify-self: end; }
.username-input { display: flex; align-items: center; direction: ltr; border: 1px solid #d6dbe0; border-radius: 12px; background: #fff; overflow: hidden; transition: border-color .16s ease, box-shadow .16s ease; }
.username-input:focus-within { border-color: var(--green); box-shadow: 0 0 0 3px rgba(1,135,95,.12); }
.username-input > span { padding-inline-start: 13px; color: var(--muted); font-weight: 800; }
.auth-dialog .username-input input { border: 0; border-radius: 0; box-shadow: none; direction: ltr; padding-inline-start: 5px; }
.auth-dialog label small.username-state { justify-self: stretch; text-align: right; min-height: 18px; }
.username-state.checking { color: #6b7280; }
.username-state.available { color: var(--green-dark); font-weight: 800; }
.username-state.unavailable { color: var(--danger); font-weight: 800; }
.primary-button { min-height: 48px; border: 0; border-radius: 12px; background: var(--green); color: #fff; font-weight: 900; cursor: pointer; }
.primary-button:hover { background: var(--green-dark); }
.primary-button:disabled { opacity: .6; cursor: wait; }
.dialog-status { min-height: 24px; margin-top: 12px; font-size: 12px; color: var(--danger); }
.dialog-status.ok { color: var(--green-dark); }
.account-panel { border-top: 1px solid var(--line); margin-top: 22px; padding-top: 18px; text-align: center; }
.subscription-state, .orders-state { border: 1px solid var(--line); border-radius: 12px; padding: 11px; margin: 9px 0; text-align: start; font-size: 11px; color: var(--muted); }
.subscription-state:empty, .orders-state:empty { display: none; }
.danger-link { border: 0; background: transparent; color: var(--danger); cursor: pointer; font-weight: 800; }
.download-dialog { width: min(620px, calc(100% - 24px)); padding: 26px; overflow: hidden; }
.download-dialog-head { display: flex; align-items: center; gap: 15px; padding-inline-end: 38px; margin-bottom: 20px; }
.download-dialog-head h2 { margin: 0; font-size: 23px; line-height: 1.25; }
.download-dialog-head p { margin: 5px 0 0; color: var(--muted); font-size: 11px; }
.download-app-icon { width: 66px; height: 66px; flex: 0 0 auto; display: grid; place-items: center; overflow: hidden; border-radius: 18px; background: var(--green); color: #fff; font-weight: 900; box-shadow: 0 8px 22px rgba(0,0,0,.13); }
.download-app-icon img { width: 100%; height: 100%; object-fit: cover; }
.download-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.download-option { min-height: 86px; padding: 14px; border: 1px solid var(--line); border-radius: 17px; background: #fff; color: var(--ink); text-decoration: none; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 11px; transition: .16s ease; }
.download-option:hover, .download-option:focus-visible { border-color: var(--green); background: var(--green-soft); outline: 0; transform: translateY(-2px); box-shadow: 0 8px 20px rgba(19,33,28,.08); }
.download-option.primary { color: #fff; border-color: transparent; background: linear-gradient(135deg,var(--green),var(--green-dark)); }
.download-option.primary:hover { background: linear-gradient(135deg,var(--green-dark),#00583e); }
.download-option-icon { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 13px; background: var(--green-soft); font-size: 21px; }
.download-option.primary .download-option-icon { background: rgba(255,255,255,.16); }
.download-option strong, .download-option small { display: block; }
.download-option strong { font-size: 13px; }
.download-option small { margin-top: 3px; color: var(--muted); font-size: 9px; line-height: 1.4; }
.download-option.primary small { color: rgba(255,255,255,.78); }
.download-option > b { color: var(--green-dark); }
.download-option.primary > b { color: #fff; }
.download-option.is-unavailable { opacity: .55; background: #f4f5f6; cursor: not-allowed; }
.download-safety { margin: 16px 0 0; padding: 11px 13px; border-radius: 13px; background: #f8faf9; color: var(--muted); font-size: 10px; text-align: center; }
.review-dialog { width: min(560px, calc(100% - 28px)); }
.review-dialog > h2 { padding-inline-end: 30px; }
.review-dialog form { margin-top: 20px; }
.star-picker { display: flex; flex-direction: row-reverse; justify-content: center; border: 0; padding: 0; margin: 0; }
.star-picker legend { position: absolute; width: 1px; height: 1px; overflow: hidden; }
.star-picker input { position: absolute; opacity: 0; }
.star-picker label { font-size: 38px; color: #d8dcdf; cursor: pointer; line-height: 1; padding: 3px; }
.star-picker label:hover, .star-picker label:hover ~ label, .star-picker input:checked ~ label { color: var(--amber); }
.review-actions { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.review-actions .primary-button { min-width: 150px; margin-inline-start: auto; }
.shot-dialog { width: min(720px, calc(100% - 24px)); max-height: calc(100vh - 24px); border: 0; border-radius: 22px; padding: 18px; background: #111; color: #fff; }
.shot-dialog img { max-height: calc(100vh - 110px); margin: auto; border-radius: 14px; object-fit: contain; }
.shot-dialog p { text-align: center; margin: 12px 0 0; }
.shot-dialog .dialog-close { color: #fff; background: rgba(255,255,255,.14); z-index: 2; }
.toast { position: fixed; inset: auto 50% 24px auto; transform: translateX(50%) translateY(20px); background: #17202a; color: #fff; border-radius: 12px; padding: 11px 18px; font-size: 12px; opacity: 0; pointer-events: none; transition: .2s; z-index: 80; }
.toast.show { opacity: 1; transform: translateX(50%) translateY(0); }

@media (max-width: 980px) {
  .hero { grid-template-columns: 1fr; }
  .hero-side { display: grid; grid-template-columns: 1fr 1fr 1fr; }
  .domain-focus { grid-template-columns: 1fr; }
  .detail-grid { grid-template-columns: 1fr; }
  .facts-grid { grid-template-columns: repeat(3, 1fr); }
  .facts-grid > div:nth-child(4) { border-inline-start: 0; border-top: 1px solid var(--line); }
  .facts-grid > div:nth-child(n+5) { border-top: 1px solid var(--line); }
  .screens-track { grid-auto-columns: minmax(210px, 34%); }
}

@media (max-width: 720px) {
  html { scroll-padding-top: 12px; }
  body { background: #fff; }
  main { display: flex; flex-direction: column; }
  main > .hero { order: 1; }
  main > #reviews { order: 2; }
  main > .domain-focus { order: 3; }
  main > #screens { order: 4; }
  main > .plans-section { order: 5; }
  main > #about { order: 6; }
  main > section[aria-labelledby="info-title"] { order: 7; }
  main > .privacy-section { order: 8; }
  .shell { width: min(100% - 20px, 1160px); }
  .hero { padding-block: 10px 8px; }
  .hero-card { padding: 16px; border: 0; box-shadow: none; border-radius: 0; }
  .app-heading { gap: 14px; align-items: flex-start; }
  .app-icon { width: 86px; height: 86px; border-radius: 19px; box-shadow: 0 7px 20px rgba(0,0,0,.1); }
  .official-pill { padding: 2px 8px; font-size: 9px; }
  .app-title { min-width: 0; }
  .app-title h1 { margin-top: 3px; font-size: 25px; letter-spacing: -.7px; }
  .developer { margin-top: 3px; font-size: 12px; }
  .tagline { margin-top: 3px; font-size: 11px; line-height: 1.45; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
  .store-stats { grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 16px 0; padding-block: 10px; }
  .store-stats > * { min-width: 0; padding: 4px 5px; border-top: 0; }
  .store-stats strong { font-size: 14px; }
  .store-stats span { font-size: 9px; line-height: 1.3; }
  .hero-actions { display: block; }
  .install-button { min-height: 54px; border-radius: 13px; padding: 8px 14px; }
  .install-button span { font-size: 14px; }
  .install-button small { font-size: 9px; }
  .store-secondary-actions { gap: 8px; margin-top: 8px; }
  .store-secondary-actions > * { min-height: 44px; padding: 0 10px; border-radius: 13px; font-size: 12px; }
  .store-search-tags { justify-content: flex-start; margin-top: 12px; padding-top: 12px; gap: 6px; }
  .store-search-tags a { min-height: 32px; padding: 5px 11px; font-size: 10px; }
  .trust-note { display: none; }
  .mobile-rating-prompt { width: 100%; min-height: 64px; margin-top: 12px; padding: 10px 12px; border: 1px solid #f0d69c; border-radius: 15px; background: #fffaf0; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; color: var(--ink); text-align: start; cursor: pointer; }
  .mobile-rating-stars { color: var(--amber); font-size: 14px; direction: ltr; letter-spacing: -1px; }
  .mobile-rating-prompt strong, .mobile-rating-prompt small { display: block; }
  .mobile-rating-prompt strong { font-size: 12px; }
  .mobile-rating-prompt small { margin-top: 1px; color: var(--muted); font-size: 9px; }
  .mobile-rating-prompt b { color: var(--green-dark); }
  .hero-side { display: none; }
  .domain-focus { gap: 10px; }
  .domain-focus-copy { padding: 20px; box-shadow: none; }
  .domain-focus-copy p { font-size: 12px; }
  .domain-focus-items { grid-template-columns: 1fr; box-shadow: none; }
  .domain-focus-items > div { min-height: 62px; padding: 12px 16px; flex-direction: row; align-items: center; border-inline-start: 0; border-top: 1px solid var(--line); }
  .domain-focus-items > div:first-child { border-top: 0; }
  .domain-focus-items span { width: 30px; height: 30px; flex: 0 0 auto; }
  .section { padding-block: 24px; }
  .section-head { margin-bottom: 14px; }
  .section h2 { font-size: 24px; }
  .screens-track { grid-auto-columns: minmax(190px, 68%); gap: 11px; }
  .content-card { padding: 22px; }
  .feature-grid { grid-template-columns: 1fr; }
  .facts-grid { grid-template-columns: repeat(2, 1fr); }
  .facts-grid > div { min-height: 96px; border-top: 1px solid var(--line); }
  .facts-grid > div:nth-child(-n+2) { border-top: 0; }
  .facts-grid > div:nth-child(odd) { border-inline-start: 0; }
  .reviews-layout { grid-template-columns: 1fr; border-radius: 18px; box-shadow: none; }
  .review-section-head { display: grid; grid-template-columns: 1fr; gap: 12px; }
  .review-invite { font-size: 11px; line-height: 1.55; }
  .review-head-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .review-cta, .review-share-link { width: 100%; min-height: 50px; padding-inline: 10px; border-radius: 13px; }
  .review-cta { background: var(--green); color: #fff; }
  .review-cta span { color: #ffd166; }
  .store-reviews { padding-top: 16px; }
  .store-reviews .review-section-head { text-align: center; }
  .store-reviews .review-head-actions { display: flex; justify-content: center; }
  .store-reviews .review-cta { width: min(100%,280px); }
  .plans-grid { display: grid; grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 86%; gap: 12px; overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: inline mandatory; padding: 8px 2px 16px; }
  .plan-card, .plan-card.featured { transform: none; min-height: 390px; scroll-snap-align: center; padding: 20px; box-shadow: 0 8px 24px rgba(19,33,28,.07); }
  .plan-heading p { min-height: auto; }
  .rating-panel { padding: 18px; border-inline-end: 0; border-bottom: 1px solid var(--line); }
  .rating-big { display: grid; grid-template-columns: auto 1fr; align-items: center; column-gap: 12px; text-align: start; }
  .rating-big strong { grid-row: 1 / 3; font-size: 46px; }
  .rating-big > span { margin: 0; font-size: 15px; }
  .rating-big small { font-size: 10px; }
  .rating-bars { margin-top: 14px; }
  .rating-bars > div { margin-block: 5px; }
  .reviews-list { padding: 18px; max-height: 480px; }
  .empty-state { min-height: 150px; }
  .empty-state > span { font-size: 38px; }
  .review-head { grid-template-columns: auto 1fr; }
  .review-stars { grid-column: 2; }
  .review-reactions-label { flex-basis: 100%; margin-bottom: 1px; }
  .privacy-grid { grid-template-columns: 1fr; }
  .privacy-grid details[open] { grid-column: auto; order: 0; }
  .policy-text { column-count: 1; }
  .footer > .shell { padding-block: 28px; flex-direction: column; align-items: flex-start; }
  .download-dialog { padding: 20px 14px 16px; border-radius: 22px; }
  .download-dialog-head { align-items: flex-start; padding-inline: 6px 34px; }
  .download-dialog-head h2 { font-size: 19px; }
  .download-app-icon { width: 54px; height: 54px; border-radius: 15px; }
  .download-options { grid-template-columns: 1fr; }
  .download-option { min-height: 72px; padding: 11px 12px; }
}

@media (max-width: 420px) {
  .app-title h1 { font-size: 23px; }
  .section { padding-block: 22px; }
  .section-head { align-items: flex-start; }
  .secondary-button { padding-inline: 14px; }
  .screens-track { grid-auto-columns: 72%; }
  .plans-grid { grid-auto-columns: 90%; }
  .mobile-rating-stars { font-size: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}

/* Review destination and compact, business-style review card. */
.store-reviews{border:1px solid #e1e6e4;border-radius:24px;background:#fff;padding:28px;margin-block:24px}
.store-reviews .review-section-head{text-align:start;align-items:center;gap:16px}
.store-reviews .review-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-shrink:0}
.store-reviews .review-cta{width:auto;min-height:44px;border:1px solid #d5ded9;border-radius:24px;background:#fff;color:var(--green);padding:10px 20px;display:flex;align-items:center;gap:8px}
.store-reviews .review-cta span{font-size:24px;color:var(--green);line-height:1}
.review-share-icon{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border-radius:50%;border:1px solid #d5ded9;background:#fff;color:var(--green);cursor:pointer}
.review-share-icon svg{width:21px;height:21px}
.review-share-icon:hover,.store-reviews .review-cta:hover{background:var(--green-soft)}
.store-reviews .reviews-layout{grid-template-columns:250px minmax(0,1fr);border-radius:0;box-shadow:none;gap:30px;overflow:visible}
.store-reviews .rating-panel{border:0;border-inline-end:1px solid #e7ece9;background:transparent;padding:8px 0 8px 24px}
.store-reviews .rating-big{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:0;gap:5px}.store-reviews .rating-big strong{font-size:58px;line-height:1.1;direction:ltr;letter-spacing:-2px}.store-reviews .rating-big>span{color:#e9a600;letter-spacing:3px}
.store-reviews .rating-big small{font-size:12px;color:#68766f}
.rating-bars>button{width:100%;border:0;background:transparent;padding:3px 0;cursor:pointer;font-family:inherit;min-height:26px;border-radius:4px}
.rating-bars>button:hover{background:var(--green-soft)}.rating-bars button small{font-size:11px}
.store-reviews .reviews-list{display:grid;gap:0;padding:0;background:transparent;max-height:none;overflow:visible}
.store-reviews .review-card>p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.store-reviews .review-card{padding:18px 0;border:0;border-bottom:1px solid #e8ece9;border-radius:0;background:transparent;box-shadow:none}
.store-reviews .review-card:first-child{padding-top:0}.store-reviews .review-card:last-child{border-bottom:0}
.review-card .review-stars{color:#e9a600;letter-spacing:1px}.review-card .review-head{align-items:center}
.reviews-view-all{margin:22px auto 0;display:flex;align-items:center;justify-content:center;gap:16px;border:1px solid #d5ded9;border-radius:24px;background:#fff;color:var(--green);font-family:inherit;font-size:14px;font-weight:700;padding:12px 25px;cursor:pointer;min-height:44px}
.reviews-view-all:hover{background:var(--green-soft)}
.all-reviews-dialog{width:min(760px,calc(100vw - 32px));max-width:none;max-height:min(900px,90dvh);padding:0;border:0;border-radius:24px;background:#fff;color:#1d2923;box-shadow:0 24px 100px #0005;overflow:auto;overscroll-behavior:contain}
.all-reviews-dialog::backdrop{background:#071c1773;backdrop-filter:blur(3px)}
.all-reviews-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:26px 28px 18px;border-bottom:1px solid #edf0ee;background:#fff;position:sticky;top:0;z-index:2}
.all-reviews-header h2{font-size:24px;margin:5px 0 8px}.all-reviews-header p{font-size:13px;color:#65736b;margin:0}.all-reviews-header p strong{font-size:18px;color:#28372e}.all-reviews-header .review-stars{color:#e9a600}
.all-reviews-close{width:40px;height:40px;border:0;border-radius:50%;background:#f1f4f2;color:#39473f;font-size:26px;cursor:pointer;flex-shrink:0}
.all-reviews-tools{padding:18px 28px;display:grid;gap:16px;border-bottom:1px solid #edf0ee}
.all-reviews-filters{display:flex;gap:8px;flex-wrap:wrap}.all-reviews-filters button{border:1px solid #d8e0db;border-radius:24px;min-height:40px;padding:7px 17px;color:#4e5d54;background:#fff;font:inherit;font-size:13px;cursor:pointer}.all-reviews-filters button span{color:#c39119}
.all-reviews-filters button[aria-pressed=true]{background:var(--green-soft);border-color:var(--green);color:var(--green);font-weight:700}
.reviews-sort-label{display:flex;gap:12px;align-items:center;font-size:12px;color:#6a786f}.reviews-sort-label select{font:inherit;border:1px solid #d8e0db;border-radius:10px;color:#39493e;background:#fff;padding:8px 12px;min-height:40px}
.all-reviews-topline{padding:16px 28px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#6a786f;font-size:12px}
.all-reviews-topline .text-button{border:0;background:none;color:var(--green);font:inherit;font-weight:700;cursor:pointer;padding:8px 0}
.all-reviews-list{padding:0 28px;min-height:140px}.all-reviews-list[aria-busy=true]{opacity:.65}
.all-reviews-list .review-card{border:0;border-bottom:1px solid #edf0ee;border-radius:0;box-shadow:none;padding:22px 0;background:#fff}
.all-reviews-list .review-card p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.all-reviews-footer{padding:16px 28px 24px;display:flex;justify-content:center;gap:10px}
.rate-entry-header{padding-block:30px 8px}.rate-entry-header>a{font-size:13px;text-decoration:none;color:var(--green)}.rate-entry-header>div{display:flex;align-items:center;gap:18px;margin-top:24px}.rate-entry-header img{width:68px;height:68px;object-fit:cover;border-radius:18px}.rate-entry-header h1{font-size:30px;margin:5px 0 8px}.rate-entry-header p{margin:0;color:#69776e;font-size:14px;line-height:1.7}
body[data-rating-entry="1"] main>section:not(#reviews){display:none}body[data-rating-entry="1"] .store-reviews{margin-top:18px}body[data-rating-entry="1"] #main{min-height:70vh}
.all-reviews-dialog button:focus-visible,.review-share-icon:focus-visible,.rating-bars button:focus-visible,.reviews-view-all:focus-visible{outline:2px solid var(--green);outline-offset:3px}
@media(max-width:680px){.store-reviews{padding:20px 16px;border-radius:20px;width:calc(100% - 28px)}.store-reviews .review-section-head{display:flex;align-items:flex-start;flex-wrap:wrap}.store-reviews .review-head-actions{justify-content:flex-start;width:auto}.store-reviews .review-cta{min-height:44px;font-size:12px;padding:8px 16px}.store-reviews .reviews-layout{grid-template-columns:1fr;gap:20px}.store-reviews .rating-panel{border-inline-end:0;border-bottom:1px solid #e7ece9;padding:10px 0 22px;display:grid;grid-template-columns:100px minmax(0,1fr);gap:20px;align-items:center}.store-reviews .rating-big strong{font-size:44px}.store-reviews .rating-big>span{font-size:13px;letter-spacing:1px}.store-reviews .rating-bars{margin:0}.rating-bars>button{margin-block:2px}.all-reviews-dialog{width:calc(100vw - 16px);max-height:94dvh;border-radius:20px}.all-reviews-header{padding:20px 18px 14px}.all-reviews-header h2{font-size:21px}.all-reviews-tools{padding:16px 18px}.all-reviews-filters{gap:6px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px}.all-reviews-filters button{padding:7px 13px;white-space:nowrap;flex-shrink:0}.all-reviews-topline{padding-inline:18px}.all-reviews-list{padding-inline:18px}.all-reviews-footer{padding-inline:18px}.rate-entry-header{padding-top:24px}.rate-entry-header h1{font-size:23px}.rate-entry-header img{width:56px;height:56px}.rate-entry-header p{font-size:12px}.review-card .review-head{flex-wrap:wrap}.review-card .review-stars{font-size:13px}}

/* Integrated install dialogs — same storefront palette and typography. */
.hero-actions { gap:12px; }
.install-button-tv { background:#117d92; }
.install-button-tv:hover { background:#0a6678; }
.install-dialog { width:min(680px,calc(100vw - 28px)); max-height:90dvh; padding:28px; overflow:auto; overscroll-behavior:contain; color:var(--ink); background:var(--surface); }
.install-dialog::backdrop { background:rgba(13,30,28,.55); backdrop-filter:blur(5px); }
.install-dialog .dialog-close { position:sticky; float:left; top:0; z-index:2; margin:-10px -10px 0 0; }
.install-heading { display:flex; align-items:center; gap:14px; margin-bottom:24px; padding-inline-end:26px; }
.install-heading h2 { font-size:24px; margin:2px 0 5px; line-height:1.5; }
.install-heading p { color:var(--muted); font-size:12px; margin:0; }
.install-heading .download-app-icon { width:66px; height:66px; flex:0 0 66px; border-radius:18px; }
.install-eyebrow { color:var(--green); font-size:11px; font-weight:800; letter-spacing:.2px; }
.install-code { display:flex; position:relative; align-items:center; justify-content:space-between; gap:14px; background:linear-gradient(115deg,#eff9f4,#e3f4ed); border:1px solid #cce9dc; border-radius:20px; padding:20px 22px; margin-bottom:24px; }
.install-code strong { display:block; width:fit-content; font-size:40px; line-height:1.3; font-weight:900; letter-spacing:3px; color:#125c43; }
.install-code p { margin:6px 0 0; font-size:11px; color:#47715f; }
.install-copy { display:flex; align-items:center; gap:8px; padding:10px 14px; border:1px solid #acd5c0; background:white; color:#176148; border-radius:12px; font:inherit; font-size:12px; font-weight:800; cursor:pointer; white-space:nowrap; }
.install-copy-status { position:absolute; bottom:3px; left:20px; font-size:10px; color:#176148; }
.install-link-heading,.install-gallery-heading { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:12px; }
.install-dialog h3 { font-size:14px; margin:0; }
.install-link-heading>span { font-size:10px; color:var(--muted); }
.install-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; margin-bottom:24px; }
.install-options .download-option { min-width:0; padding:12px; border-radius:13px; gap:10px; }
.install-options .download-option.primary { grid-column:1/-1; }
.install-options .download-option strong { font-size:13px; }
.install-options .download-option small { font-size:10px; }
.install-download-icon { width:35px; height:35px; border-radius:11px; background:var(--green-soft); color:var(--green); display:grid; place-items:center; font-size:23px; flex:0 0 35px; }
.install-options .primary .install-download-icon { background:rgba(255,255,255,.18); color:inherit; }
.install-gallery { padding-top:20px; border-top:1px solid var(--line); }
.install-gallery-heading>div { display:flex; gap:7px; }
.install-gallery-heading button { width:32px; height:32px; border:1px solid var(--line); color:var(--ink); border-radius:50%; background:var(--surface); cursor:pointer; }
.install-shots { display:flex; gap:12px; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; scrollbar-width:thin; scrollbar-color:#b6d6c6 transparent; padding-bottom:10px; }
.install-shot { flex:0 0 150px; margin:0; scroll-snap-align:start; }
.install-shot img { display:block; width:100%; aspect-ratio:9/19.5; object-fit:contain; border:1px solid var(--line); background:#0e1726; border-radius:13px; }
.install-shot figcaption { margin-top:7px; font-size:10px; color:var(--muted); text-align:center; }
.install-dialog-tv .install-shot { flex-basis:88%; }
.install-dialog-tv .install-shot img { aspect-ratio:16/9; border-radius:12px; }
.install-dialog-tv .install-eyebrow { color:#117d92; }
.install-dialog button:focus-visible,.install-dialog a:focus-visible,.install-shots:focus-visible { outline:3px solid #00a69a; outline-offset:3px; }
@media(max-width:560px){.hero-actions{flex-wrap:wrap;gap:9px}.hero-actions .install-button{min-width:130px}.install-dialog{padding:21px 17px;max-height:92dvh;border-radius:22px}.install-heading{gap:11px;margin-bottom:18px}.install-heading h2{font-size:21px}.install-heading .download-app-icon{width:54px;height:54px;flex-basis:54px;border-radius:15px}.install-code{padding:16px 14px;gap:8px}.install-code strong{font-size:33px;letter-spacing:2px}.install-copy{padding:9px;font-size:11px}.install-code p{font-size:10px;max-width:180px}.install-options{gap:8px}.install-options .download-option{padding:10px;gap:7px}.install-options .download-option strong{font-size:11px}.install-options .download-option small{font-size:9px}.install-options .download-option b{display:none}.install-download-icon{width:29px;height:29px;flex-basis:29px}.install-shot{flex-basis:135px}.install-dialog-tv .install-shot{flex-basis:94%}}

.install-title-row { display:flex; align-items:center; gap:10px; }
.install-title-row h2 { margin-inline-end:0; }
.install-share { display:grid; place-items:center; flex:0 0 32px; width:32px; height:32px; border:1px solid var(--line); border-radius:50%; background:var(--surface); color:#117d92; cursor:pointer; }
.install-share svg { width:16px; height:16px; }
.install-share:hover { background:#e8f5f7; }
@media(max-width:560px){.install-title-row{gap:6px}.install-share{flex-basis:28px;width:28px;height:28px}.install-dialog-tv .install-heading{padding-inline-end:12px}.install-dialog-tv .install-heading h2{font-size:19px}}

.install-share-fallback { padding:12px; border:1px solid var(--line); border-radius:12px; margin-bottom:14px; }
.install-share-fallback label { font-size:11px; color:var(--muted); }
.install-share-fallback input { display:block; width:100%; padding:9px; margin-top:5px; border:1px solid var(--line); border-radius:8px; font:inherit; font-size:12px; color:var(--ink); background:var(--surface); }
.install-share-message { color:var(--green); font-size:11px; margin:0 0 12px; }
.install-share-fallback[hidden],.install-share-message[hidden] { display:none; }

@media(min-width:641px){
 .install-dialog-tv { max-height:94dvh; }
 .install-dialog-tv .install-methods { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); column-gap:16px; row-gap:10px; }
 .install-dialog-tv .install-code { grid-column:1; grid-row:1 / span 2; flex-direction:column; align-items:flex-start; justify-content:center; padding:14px 17px; gap:8px; margin:0; }
 .install-dialog-tv .install-code strong { font-size:34px; letter-spacing:2px; }
 .install-dialog-tv .install-code p { font-size:10px; }
 .install-dialog-tv .install-copy { padding:7px 11px; font-size:11px; }
 .install-dialog-tv .install-link-heading { grid-column:2; grid-row:1; margin:0; }
 .install-dialog-tv .install-options { grid-column:2; grid-row:2; display:flex; flex-direction:column; gap:8px; margin:0; }
 .install-dialog-tv .download-option { min-height:62px; padding:10px 12px; }
 .install-dialog-tv .install-gallery { margin-top:20px; padding-top:16px; }
 .install-dialog-tv .install-shot { flex-basis:48%; }
}
