/* Interior text proportions, matched to the supplied 1672px reference layouts. */

/* Registration */
body[data-view="register"] .register-form { padding: calc(32 * var(--interior-px, 1px)) calc(38 * var(--interior-px, 1px)); }
body[data-view="register"] .register-form .panel-title { font-size: calc(40 * var(--interior-px, 1px)); margin-bottom: calc(28 * var(--interior-px, 1px)); }
body[data-view="register"] .form-grid { gap: calc(22 * var(--interior-px, 1px)) calc(25 * var(--interior-px, 1px)); }
body[data-view="register"] .form-field > label { font-size: calc(24 * var(--interior-px, 1px)); font-weight: 700; line-height: 1.5; }
body[data-view="register"] .register-form input:not([type="checkbox"]) { font-size: calc(22 * var(--interior-px, 1px)); min-height: calc(54 * var(--interior-px, 1px)); padding: calc(9 * var(--interior-px, 1px)) calc(14 * var(--interior-px, 1px)); line-height: 1.5; }
body[data-view="register"] .password-field input { padding-right: calc(45 * var(--interior-px, 1px)); }
body[data-view="register"] .form-field .field-hint { font-size: calc(16 * var(--interior-px, 1px)); line-height: 1.6; }
body[data-view="register"] .captcha-row { grid-template-columns: minmax(0, 1fr) calc(160 * var(--interior-px, 1px)) calc(36 * var(--interior-px, 1px)); gap: calc(13 * var(--interior-px, 1px)); }
body[data-view="register"] .captcha-image,
body[data-view="register"] .captcha-image svg { height: calc(54 * var(--interior-px, 1px)); }
body[data-view="register"] .captcha-refresh { font-size: calc(32 * var(--interior-px, 1px)); }
body[data-view="register"] .password-toggle { top: calc(10 * var(--interior-px, 1px)); font-size: calc(22 * var(--interior-px, 1px)); }
body[data-view="register"] .form-agreement,
body[data-view="register"] .form-agreement button { font-size: calc(20 * var(--interior-px, 1px)); line-height: 1.65; }
body[data-view="register"] .form-agreement { gap: calc(12 * var(--interior-px, 1px)); margin: calc(23 * var(--interior-px, 1px)) 0; }
body[data-view="register"] .form-agreement input { width: calc(22 * var(--interior-px, 1px)); height: calc(22 * var(--interior-px, 1px)); margin-top: calc(5 * var(--interior-px, 1px)); }
body[data-view="register"] .register-submit { font-size: calc(30 * var(--interior-px, 1px)); font-weight: 600; min-height: calc(64 * var(--interior-px, 1px)); padding: calc(10 * var(--interior-px, 1px)) calc(22 * var(--interior-px, 1px)); }
body[data-view="register"] .form-note,
body[data-view="register"] .form-error { font-size: calc(17 * var(--interior-px, 1px)); line-height: 1.7; }
body[data-view="register"] .onboarding-art { height: calc(235 * var(--interior-px, 1px)); }
body[data-view="register"] .onboarding-content { padding-inline: calc(32 * var(--interior-px, 1px)); }
body[data-view="register"] .onboarding-content h2 { font-size: calc(33 * var(--interior-px, 1px)); font-weight: 700; line-height: 1.5; }
body[data-view="register"] .onboarding-content > .eyebrow { font-size: calc(13 * var(--interior-px, 1px)); }
body[data-view="register"] .onboarding-step { gap: calc(18 * var(--interior-px, 1px)); padding: calc(15 * var(--interior-px, 1px)) 0; }
body[data-view="register"] .step-index { font-size: calc(29 * var(--interior-px, 1px)); width: calc(49 * var(--interior-px, 1px)); }
body[data-view="register"] .onboarding-step h3 { font-size: calc(24 * var(--interior-px, 1px)); font-weight: 700; }
body[data-view="register"] .onboarding-step p { font-size: calc(18 * var(--interior-px, 1px)); line-height: 1.7; }
body[data-view="register"] .onboarding-links .text-link { font-size: calc(22 * var(--interior-px, 1px)); }
body[data-view="register"] .success-panel h2 { font-size: calc(38 * var(--interior-px, 1px)); }
body[data-view="register"] .success-panel p { font-size: calc(22 * var(--interior-px, 1px)); max-width: calc(630 * var(--interior-px, 1px)); }

/* Class descriptions */
body[data-view="classes"] .classes-tabs .tab { font-size: calc(26 * var(--interior-px, 1px)); font-weight: 600; padding: calc(10 * var(--interior-px, 1px)) calc(15 * var(--interior-px, 1px)); }
body[data-view="classes"] .class-detail { min-height: calc(625 * var(--interior-px, 1px)); }
body[data-view="classes"] .class-detail-copy { padding: calc(32 * var(--interior-px, 1px)) calc(36 * var(--interior-px, 1px)) calc(32 * var(--interior-px, 1px)) calc(25 * var(--interior-px, 1px)); }
body[data-view="classes"] .class-detail-copy > .eyebrow { font-size: calc(16 * var(--interior-px, 1px)); }
body[data-view="classes"] .class-detail-copy h2 { font-size: calc(64 * var(--interior-px, 1px)); font-weight: 700; line-height: 1.4; margin: calc(7 * var(--interior-px, 1px)) 0 calc(14 * var(--interior-px, 1px)); }
body[data-view="classes"] .class-detail-copy .class-catch { font-size: calc(26 * var(--interior-px, 1px)); font-weight: 700; line-height: 1.7; }
body[data-view="classes"] .class-tags .tag { font-size: calc(20 * var(--interior-px, 1px)); padding: calc(3 * var(--interior-px, 1px)) calc(16 * var(--interior-px, 1px)); }
body[data-view="classes"] .class-description { font-size: calc(22 * var(--interior-px, 1px)); font-weight: 600; line-height: 1.85; }
body[data-view="classes"] .class-specs { gap: calc(15 * var(--interior-px, 1px)) calc(22 * var(--interior-px, 1px)); padding: calc(18 * var(--interior-px, 1px)) 0; }
body[data-view="classes"] .class-specs dt { font-size: calc(18 * var(--interior-px, 1px)); font-weight: 600; letter-spacing: 1px; }
body[data-view="classes"] .class-specs dd { font-size: calc(22 * var(--interior-px, 1px)); font-weight: 700; line-height: 1.6; }
body[data-view="classes"] .class-bottom .button { font-size: calc(26 * var(--interior-px, 1px)); min-height: calc(59 * var(--interior-px, 1px)); padding: calc(11 * var(--interior-px, 1px)) calc(25 * var(--interior-px, 1px)); }
body[data-view="classes"] .class-marks { gap: calc(8 * var(--interior-px, 1px)); }
body[data-view="classes"] .class-mark { width: calc(40 * var(--interior-px, 1px)); height: calc(40 * var(--interior-px, 1px)); font-size: calc(19 * var(--interior-px, 1px)); }
body[data-view="classes"] .class-art-label { font-size: calc(13 * var(--interior-px, 1px)); letter-spacing: calc(2 * var(--interior-px, 1px)); }

/* News listing and article */
body[data-view^="news"] .filter-bar .tab { font-size: calc(25 * var(--interior-px, 1px)); min-width: calc(105 * var(--interior-px, 1px)); padding: calc(8 * var(--interior-px, 1px)) calc(20 * var(--interior-px, 1px)); }
body[data-view^="news"] .search-field input { font-size: calc(23 * var(--interior-px, 1px)); min-height: calc(51 * var(--interior-px, 1px)); width: calc(320 * var(--interior-px, 1px)); }
body[data-view^="news"] .news-count { font-size: calc(18 * var(--interior-px, 1px)); margin-bottom: calc(15 * var(--interior-px, 1px)); }
body[data-view^="news"] .news-count .demo-tag { font-size: calc(14 * var(--interior-px, 1px)); }
body[data-view^="news"] .news-table th { font-size: calc(24 * var(--interior-px, 1px)); line-height: 1.5; padding: calc(12 * var(--interior-px, 1px)) calc(20 * var(--interior-px, 1px)); }
body[data-view^="news"] .news-table td { padding: calc(13 * var(--interior-px, 1px)) calc(20 * var(--interior-px, 1px)); }
body[data-view^="news"] .news-table .news-title-link { font-size: calc(28 * var(--interior-px, 1px)); font-weight: 600; line-height: 1.6; }
body[data-view^="news"] .news-table .tag { font-size: calc(21 * var(--interior-px, 1px)); padding: calc(2 * var(--interior-px, 1px)) calc(17 * var(--interior-px, 1px)); }
body[data-view^="news"] .news-table time { font-size: calc(23 * var(--interior-px, 1px)); }
body[data-view^="news"] .news-table th:first-child,
body[data-view^="news"] .news-table td:first-child { width: calc(145 * var(--interior-px, 1px)); }
body[data-view^="news"] .news-table th:nth-last-child(2),
body[data-view^="news"] .news-table td:nth-last-child(2) { width: calc(190 * var(--interior-px, 1px)); }
body[data-view^="news"] .pagination button { font-size: calc(23 * var(--interior-px, 1px)); min-width: calc(46 * var(--interior-px, 1px)); height: calc(42 * var(--interior-px, 1px)); padding: 0 calc(14 * var(--interior-px, 1px)); }
body[data-view^="news"] .empty-state { font-size: calc(22 * var(--interior-px, 1px)); }
body[data-view^="news"] .article-panel { max-width: calc(1180 * var(--interior-px, 1px)); }
body[data-view^="news"] .article-panel h1 { font-size: calc(40 * var(--interior-px, 1px)); font-weight: 700; }
body[data-view^="news"] .article-meta { font-size: calc(20 * var(--interior-px, 1px)); }
body[data-view^="news"] .article-meta .tag { font-size: calc(20 * var(--interior-px, 1px)); }
body[data-view^="news"] .article-body { font-size: calc(23 * var(--interior-px, 1px)); font-weight: 600; line-height: 2; }
body[data-view^="news"] .article-actions .button,
body[data-view^="news"] .article-actions .text-link { font-size: calc(23 * var(--interior-px, 1px)); }

/* Ranking */
body[data-view="rankings"] .ranking-main-tabs { max-width: calc(840 * var(--interior-px, 1px)); width: 100%; margin-bottom: 0; }
body[data-view="rankings"] .ranking-main-tabs .tab { font-size: calc(25 * var(--interior-px, 1px)); font-weight: 600; padding: calc(8 * var(--interior-px, 1px)) calc(12 * var(--interior-px, 1px)); }
body[data-view="rankings"] .ranking-filters { gap: calc(13 * var(--interior-px, 1px)); }
body[data-view="rankings"] .ranking-filters .tab { font-size: calc(22 * var(--interior-px, 1px)); padding: calc(5 * var(--interior-px, 1px)) calc(16 * var(--interior-px, 1px)); }
body[data-view="rankings"] .ranking-filters select { font-size: calc(22 * var(--interior-px, 1px)); width: calc(220 * var(--interior-px, 1px)); min-height: calc(47 * var(--interior-px, 1px)); }
body[data-view="rankings"] .ranking-filters .search-field input { font-size: calc(22 * var(--interior-px, 1px)); width: calc(280 * var(--interior-px, 1px)); min-height: calc(47 * var(--interior-px, 1px)); }
body[data-view="rankings"] .ranking-table { font-size: calc(23 * var(--interior-px, 1px)); line-height: 1.35; }
body[data-view="rankings"] .ranking-table th { font-size: calc(24 * var(--interior-px, 1px)); line-height: 1.4; padding: calc(12 * var(--interior-px, 1px)) calc(18 * var(--interior-px, 1px)); }
body[data-view="rankings"] .ranking-table td { padding: calc(9 * var(--interior-px, 1px)) calc(18 * var(--interior-px, 1px)); }
body[data-view="rankings"] .rank-character { font-size: calc(26 * var(--interior-px, 1px)); font-weight: 700; }
body[data-view="rankings"] .rank-value { font-size: calc(25 * var(--interior-px, 1px)); }
body[data-view="rankings"] .rank-badge { font-size: calc(25 * var(--interior-px, 1px)); width: calc(37 * var(--interior-px, 1px)); height: calc(37 * var(--interior-px, 1px)); }
body[data-view="rankings"] .academy-mark { font-size: calc(20 * var(--interior-px, 1px)); letter-spacing: .04em; gap: calc(10 * var(--interior-px, 1px)); }
body[data-view="rankings"] .academy-symbol { font-size: calc(25 * var(--interior-px, 1px)); }
body[data-view="rankings"] .ranking-caption { font-size: calc(17 * var(--interior-px, 1px)); }
body[data-view="rankings"] .table-panel > .filter-bar > .demo-tag { font-size: calc(15 * var(--interior-px, 1px)); }
body[data-view="rankings"] .pagination button { font-size: calc(23 * var(--interior-px, 1px)); min-width: calc(45 * var(--interior-px, 1px)); height: calc(41 * var(--interior-px, 1px)); }
body[data-view="rankings"] .empty-state { font-size: calc(22 * var(--interior-px, 1px)); }

/* Sponsorship retains six columns and the action beside each amount. */
body[data-view="sponsor"] .sponsor-currency-panel { gap: calc(25 * var(--interior-px, 1px)); padding: calc(17 * var(--interior-px, 1px)) calc(27 * var(--interior-px, 1px)); }
body[data-view="sponsor"] .currency-heading h2 { font-size: calc(27 * var(--interior-px, 1px)); font-weight: 700; }
body[data-view="sponsor"] .currency-option { font-size: calc(25 * var(--interior-px, 1px)); font-weight: 600; padding: calc(8 * var(--interior-px, 1px)) calc(12 * var(--interior-px, 1px)); }
body[data-view="sponsor"] .currency-option > span { font-size: calc(11 * var(--interior-px, 1px)); }
body[data-view="sponsor"] .sponsor-table-top h2,
body[data-view="sponsor"] .sponsor-flow-panel h2 { font-size: calc(37 * var(--interior-px, 1px)); font-weight: 700; }
body[data-view="sponsor"] .sponsor-table-top > span { font-size: calc(18 * var(--interior-px, 1px)); }
body[data-view="sponsor"] .sponsor-table { min-width: calc(1280 * var(--interior-px, 1px)); table-layout: auto; }
body[data-view="sponsor"] .sponsor-table thead th { font-size: calc(24 * var(--interior-px, 1px)); font-weight: 700; padding: calc(13 * var(--interior-px, 1px)) calc(8 * var(--interior-px, 1px)); }
body[data-view="sponsor"] .sponsor-table thead small { font-size: calc(18 * var(--interior-px, 1px)); font-weight: 600; letter-spacing: 1px; }
body[data-view="sponsor"] .sponsor-table tbody th,
body[data-view="sponsor"] .sponsor-table tbody td { padding: calc(15 * var(--interior-px, 1px)) calc(10 * var(--interior-px, 1px)); }
body[data-view="sponsor"] .sponsor-table tbody td { min-width: calc(202 * var(--interior-px, 1px)); }
body[data-view="sponsor"] .sponsor-table tbody .points-column strong,
body[data-view="sponsor"] .plan-price { font-size: calc(34 * var(--interior-px, 1px)); font-weight: 700; }
body[data-view="sponsor"] .sponsor-table tbody .points-column > span { font-size: calc(22 * var(--interior-px, 1px)); }
body[data-view="sponsor"] .price-action { gap: calc(9 * var(--interior-px, 1px)); width: max-content; min-width: 100%; }
body[data-view="sponsor"] .plan-select { font-size: calc(19 * var(--interior-px, 1px)); font-weight: 600; line-height: 1.3; padding: calc(6 * var(--interior-px, 1px)) calc(9 * var(--interior-px, 1px)); gap: calc(4 * var(--interior-px, 1px)); }
body[data-view="sponsor"] .plan-select > span { font-size: calc(17 * var(--interior-px, 1px)); }
body[data-view="sponsor"] .support-link { font-size: calc(19 * var(--interior-px, 1px)); font-weight: 600; gap: calc(5 * var(--interior-px, 1px)); }
body[data-view="sponsor"] .support-link > span { font-size: calc(21 * var(--interior-px, 1px)); }
body[data-view="sponsor"] .sponsor-table-note p { font-size: calc(21 * var(--interior-px, 1px)); }
body[data-view="sponsor"] .sponsor-table-note p > span { font-size: calc(18 * var(--interior-px, 1px)); }
body[data-view="sponsor"] .sponsor-flow li,
body[data-view="checkout"] .sponsor-flow li { font-size: calc(20 * var(--interior-px, 1px)); font-weight: 700; gap: calc(9 * var(--interior-px, 1px)); }
body[data-view="sponsor"] .flow-number,
body[data-view="checkout"] .flow-number { font-size: calc(16 * var(--interior-px, 1px)); width: calc(35 * var(--interior-px, 1px)); height: calc(35 * var(--interior-px, 1px)); }
body[data-view="sponsor"] .flow-arrow,
body[data-view="checkout"] .flow-arrow { font-size: calc(24 * var(--interior-px, 1px)); padding-inline: calc(8 * var(--interior-px, 1px)); }
body[data-view="sponsor"] .sponsor-bottom-note p { font-size: calc(18 * var(--interior-px, 1px)); }
body[data-view="sponsor"] .table-scroll-hint { font-size: calc(17 * var(--interior-px, 1px)); }

/* Checkout */
body[data-view="checkout"] .checkout-grid { grid-template-columns: minmax(0, 1.8fr) minmax(calc(360 * var(--interior-px, 1px)), 1fr); gap: calc(23 * var(--interior-px, 1px)); }
body[data-view="checkout"] .payment-method-panel { padding: calc(30 * var(--interior-px, 1px)); }
body[data-view="checkout"] .section-label h2,
body[data-view="checkout"] .checkout-summary h2 { font-size: calc(37 * var(--interior-px, 1px)); font-weight: 700; line-height: 1.4; }
body[data-view="checkout"] .payment-methods { gap: calc(20 * var(--interior-px, 1px)); }
body[data-view="checkout"] .payment-method { padding: calc(28 * var(--interior-px, 1px)) calc(20 * var(--interior-px, 1px)) calc(25 * var(--interior-px, 1px)); }
body[data-view="checkout"] .payment-method.is-selected { padding: calc(27 * var(--interior-px, 1px)) calc(19 * var(--interior-px, 1px)) calc(24 * var(--interior-px, 1px)); }
body[data-view="checkout"] .payment-method-icon { width: calc(120 * var(--interior-px, 1px)); height: calc(110 * var(--interior-px, 1px)); margin: calc(25 * var(--interior-px, 1px)) auto calc(20 * var(--interior-px, 1px)); }
body[data-view="checkout"] .payment-method > strong { font-size: calc(36 * var(--interior-px, 1px)); font-weight: 700; letter-spacing: .04em; }
body[data-view="checkout"] .payment-method-description { font-size: calc(22 * var(--interior-px, 1px)); font-weight: 600; line-height: 1.7; margin-top: calc(23 * var(--interior-px, 1px)); padding-top: calc(19 * var(--interior-px, 1px)); }
body[data-view="checkout"] .payment-safety-note { font-size: calc(18 * var(--interior-px, 1px)); }
body[data-view="checkout"] .checkout-summary { padding: calc(29 * var(--interior-px, 1px)) calc(30 * var(--interior-px, 1px)); }
body[data-view="checkout"] .summary-kicker { font-size: calc(13 * var(--interior-px, 1px)); }
body[data-view="checkout"] .checkout-summary dt { font-size: calc(24 * var(--interior-px, 1px)); font-weight: 600; letter-spacing: .03em; }
body[data-view="checkout"] .checkout-summary dd { font-size: calc(25 * var(--interior-px, 1px)); font-weight: 700; }
body[data-view="checkout"] .checkout-summary dl > div { padding: calc(15 * var(--interior-px, 1px)) 0; gap: calc(12 * var(--interior-px, 1px)); }
body[data-view="checkout"] .summary-unit { font-size: calc(21 * var(--interior-px, 1px)); }
body[data-view="checkout"] .checkout-summary .summary-amount { font-size: calc(46 * var(--interior-px, 1px)); font-weight: 700; }
body[data-view="checkout"] .checkout-availability { font-size: calc(19 * var(--interior-px, 1px)); line-height: 1.8; margin: calc(18 * var(--interior-px, 1px)) 0; }
body[data-view="checkout"] .checkout-pay { font-size: calc(32 * var(--interior-px, 1px)); font-weight: 600; min-height: calc(64 * var(--interior-px, 1px)); padding: calc(10 * var(--interior-px, 1px)) calc(15 * var(--interior-px, 1px)); }
body[data-view="checkout"] .checkout-back { font-size: calc(23 * var(--interior-px, 1px)); margin-top: calc(19 * var(--interior-px, 1px)); }
body[data-view="checkout"] .checkout-loading { font-size: calc(22 * var(--interior-px, 1px)); }
body[data-view="checkout"] .checkout-loading h2 { font-size: calc(35 * var(--interior-px, 1px)); }
body[data-view="checkout"] .crypto-pending h3 { font-size: calc(35 * var(--interior-px, 1px)); }
body[data-view="checkout"] .crypto-pending p { font-size: calc(22 * var(--interior-px, 1px)); }
body[data-view="checkout"] .crypto-pending-label { font-size: calc(19 * var(--interior-px, 1px)); }

@media (max-width: 1440px) {
  body[data-view="register"] .form-field > label { font-size: calc(22 * var(--interior-px, 1px)); }
  body[data-view="register"] .register-form input:not([type="checkbox"]) { font-size: calc(20 * var(--interior-px, 1px)); }
  body[data-view="register"] .onboarding-content h2 { font-size: calc(29 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-detail-copy { padding: calc(30 * var(--interior-px, 1px)) calc(28 * var(--interior-px, 1px)) calc(30 * var(--interior-px, 1px)) calc(22 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-detail-copy h2 { font-size: calc(58 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-detail-copy .class-catch { font-size: calc(24 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-description { font-size: calc(21 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-specs dd { font-size: calc(20 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-filters .tab { font-size: calc(20 * var(--interior-px, 1px)); padding-inline: calc(13 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-filters select { width: calc(195 * var(--interior-px, 1px)); font-size: calc(20 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-filters .search-field input { width: calc(240 * var(--interior-px, 1px)); font-size: calc(20 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .payment-method > strong { font-size: calc(31 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .payment-method-description { font-size: calc(20 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .checkout-summary dt { font-size: calc(22 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .checkout-summary dd { font-size: calc(23 * var(--interior-px, 1px)); }
}

@media (max-width: 1000px) {
  body[data-view="register"] .register-form .panel-title { font-size: calc(35 * var(--interior-px, 1px)); }
  body[data-view="register"] .register-form { padding: calc(28 * var(--interior-px, 1px)); }
  body[data-view="register"] .onboarding-content h2 { font-size: calc(28 * var(--interior-px, 1px)); }
  body[data-view="register"] .onboarding-step h3 { font-size: calc(22 * var(--interior-px, 1px)); }
  body[data-view="register"] .onboarding-step p { font-size: calc(17 * var(--interior-px, 1px)); }
  body[data-view="register"] .onboarding-links .text-link { font-size: calc(20 * var(--interior-px, 1px)); }
  body[data-view="classes"] .classes-tabs .tab { font-size: calc(22 * var(--interior-px, 1px)); padding: calc(9 * var(--interior-px, 1px)) calc(8 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-detail-copy { padding: calc(25 * var(--interior-px, 1px)) calc(24 * var(--interior-px, 1px)) calc(25 * var(--interior-px, 1px)) calc(18 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-detail-copy h2 { font-size: calc(48 * var(--interior-px, 1px)); letter-spacing: calc(4 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-detail-copy .class-catch { font-size: calc(21 * var(--interior-px, 1px)); letter-spacing: 1px; }
  body[data-view="classes"] .class-description { font-size: calc(19 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-tags .tag { font-size: calc(17 * var(--interior-px, 1px)); padding-inline: calc(12 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-specs { grid-template-columns: 1fr; gap: calc(12 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-specs dt { font-size: calc(15 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-specs dd { font-size: calc(19 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-bottom { flex-wrap: wrap; gap: calc(17 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-bottom .button { font-size: calc(22 * var(--interior-px, 1px)); min-height: calc(51 * var(--interior-px, 1px)); }
  body[data-view^="news"] .filter-bar .tab { font-size: calc(21 * var(--interior-px, 1px)); min-width: 0; padding: calc(8 * var(--interior-px, 1px)) calc(17 * var(--interior-px, 1px)); }
  body[data-view^="news"] .search-field input { font-size: calc(20 * var(--interior-px, 1px)); width: calc(265 * var(--interior-px, 1px)); }
  body[data-view^="news"] .news-table th { font-size: calc(20 * var(--interior-px, 1px)); }
  body[data-view^="news"] .news-table .news-title-link { font-size: calc(23 * var(--interior-px, 1px)); }
  body[data-view^="news"] .news-table .tag { font-size: calc(18 * var(--interior-px, 1px)); padding-inline: calc(12 * var(--interior-px, 1px)); }
  body[data-view^="news"] .news-table time { font-size: calc(19 * var(--interior-px, 1px)); }
  body[data-view^="news"] .news-table th:first-child,
  body[data-view^="news"] .news-table td:first-child { width: calc(110 * var(--interior-px, 1px)); }
  body[data-view^="news"] .news-table th:nth-last-child(2),
  body[data-view^="news"] .news-table td:nth-last-child(2) { width: calc(160 * var(--interior-px, 1px)); }
  body[data-view^="news"] .pagination button { font-size: calc(20 * var(--interior-px, 1px)); height: calc(38 * var(--interior-px, 1px)); }
  body[data-view^="news"] .article-panel { padding: calc(35 * var(--interior-px, 1px)); }
  body[data-view^="news"] .article-panel h1 { font-size: calc(34 * var(--interior-px, 1px)); }
  body[data-view^="news"] .article-body { font-size: calc(21 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-main-tabs .tab { font-size: calc(22 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-filters .tabs { width: 100%; }
  body[data-view="rankings"] .ranking-filters .tab { font-size: calc(18 * var(--interior-px, 1px)); padding-inline: calc(15 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-table { min-width: calc(710 * var(--interior-px, 1px)); font-size: calc(20 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-table th { font-size: calc(21 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .rank-character { font-size: calc(23 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .rank-value { font-size: calc(22 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .academy-mark { font-size: calc(17 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .pagination button { font-size: calc(20 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .sponsor-currency-panel { padding: calc(22 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .currency-heading h2 { font-size: calc(25 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .currency-option { font-size: calc(22 * var(--interior-px, 1px)); padding: calc(10 * var(--interior-px, 1px)) calc(7 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .sponsor-table-top h2,
  body[data-view="sponsor"] .sponsor-flow-panel h2 { font-size: calc(32 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .sponsor-table-note p { font-size: calc(19 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .sponsor-table-note p > span { font-size: calc(17 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .sponsor-flow li,
  body[data-view="checkout"] .sponsor-flow li { font-size: calc(17 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .checkout-grid { grid-template-columns: 1fr; }
  body[data-view="checkout"] .payment-method-panel { padding: calc(28 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .section-label h2,
  body[data-view="checkout"] .checkout-summary h2 { font-size: calc(34 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .payment-method > strong { font-size: calc(32 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .checkout-summary dl { display: grid; grid-template-columns: 1fr 1fr; column-gap: calc(28 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .checkout-summary dt { font-size: calc(21 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .checkout-summary dd { font-size: calc(24 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .checkout-pay { font-size: calc(29 * var(--interior-px, 1px)); }
}

@media (max-width: 760px) {
  body[data-view="register"] .register-form { padding: calc(24 * var(--interior-px, 1px)) calc(21 * var(--interior-px, 1px)); }
  body[data-view="register"] .register-form .panel-title { font-size: calc(30 * var(--interior-px, 1px)); margin-bottom: calc(22 * var(--interior-px, 1px)); }
  body[data-view="register"] .form-grid { gap: calc(19 * var(--interior-px, 1px)); }
  body[data-view="register"] .form-field > label { font-size: calc(19 * var(--interior-px, 1px)); }
  body[data-view="register"] .register-form input:not([type="checkbox"]) { font-size: calc(17 * var(--interior-px, 1px)); min-height: calc(49 * var(--interior-px, 1px)); padding: calc(10 * var(--interior-px, 1px)) calc(12 * var(--interior-px, 1px)); }
  body[data-view="register"] .password-field input { padding-right: calc(42 * var(--interior-px, 1px)); }
  body[data-view="register"] .form-field .field-hint { font-size: calc(13 * var(--interior-px, 1px)); }
  body[data-view="register"] .captcha-row { grid-template-columns: minmax(0, 1fr) calc(108 * var(--interior-px, 1px)) calc(27 * var(--interior-px, 1px)); gap: calc(8 * var(--interior-px, 1px)); }
  body[data-view="register"] .captcha-image,
  body[data-view="register"] .captcha-image svg { height: calc(49 * var(--interior-px, 1px)); }
  body[data-view="register"] .captcha-refresh { font-size: calc(27 * var(--interior-px, 1px)); }
  body[data-view="register"] .form-agreement,
  body[data-view="register"] .form-agreement button { font-size: calc(14 * var(--interior-px, 1px)); }
  body[data-view="register"] .form-agreement { gap: calc(8 * var(--interior-px, 1px)); justify-content: flex-start; }
  body[data-view="register"] .form-agreement input { width: calc(19 * var(--interior-px, 1px)); height: calc(19 * var(--interior-px, 1px)); margin-top: calc(3 * var(--interior-px, 1px)); }
  body[data-view="register"] .register-submit { font-size: calc(25 * var(--interior-px, 1px)); min-height: calc(57 * var(--interior-px, 1px)); padding: calc(10 * var(--interior-px, 1px)) calc(15 * var(--interior-px, 1px)); }
  body[data-view="register"] .form-note,
  body[data-view="register"] .form-error { font-size: calc(14 * var(--interior-px, 1px)); }
  body[data-view="register"] .onboarding-art { height: calc(190 * var(--interior-px, 1px)); }
  body[data-view="register"] .onboarding-content { padding-inline: calc(23 * var(--interior-px, 1px)); }
  body[data-view="register"] .onboarding-content h2 { font-size: calc(27 * var(--interior-px, 1px)); }
  body[data-view="register"] .onboarding-content > .eyebrow { font-size: calc(10 * var(--interior-px, 1px)); }
  body[data-view="register"] .onboarding-step h3 { font-size: calc(21 * var(--interior-px, 1px)); }
  body[data-view="register"] .onboarding-step p { font-size: calc(16 * var(--interior-px, 1px)); }
  body[data-view="register"] .onboarding-links .text-link { font-size: calc(19 * var(--interior-px, 1px)); }
  body[data-view="register"] .success-panel h2 { font-size: calc(29 * var(--interior-px, 1px)); }
  body[data-view="register"] .success-panel p { font-size: calc(18 * var(--interior-px, 1px)); }
  body[data-view="classes"] .classes-tabs { gap: calc(7 * var(--interior-px, 1px)); }
  body[data-view="classes"] .classes-tabs .tab { font-size: calc(17 * var(--interior-px, 1px)); padding: calc(9 * var(--interior-px, 1px)) calc(3 * var(--interior-px, 1px)); letter-spacing: 0; }
  body[data-view="classes"] .class-detail { min-height: 0; }
  body[data-view="classes"] .class-detail-copy { padding: calc(22 * var(--interior-px, 1px)) calc(24 * var(--interior-px, 1px)) calc(28 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-detail-copy > .eyebrow { font-size: calc(12 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-detail-copy h2 { font-size: calc(43 * var(--interior-px, 1px)); margin: calc(8 * var(--interior-px, 1px)) 0 calc(12 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-detail-copy .class-catch { font-size: calc(21 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-description { font-size: calc(18 * var(--interior-px, 1px)); line-height: 1.9; }
  body[data-view="classes"] .class-tags .tag { font-size: calc(16 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-specs { grid-template-columns: 1fr 1fr; gap: calc(13 * var(--interior-px, 1px)) calc(17 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-specs dt { font-size: calc(14 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-specs dd { font-size: calc(17 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-bottom .button { font-size: calc(21 * var(--interior-px, 1px)); min-height: calc(49 * var(--interior-px, 1px)); padding: calc(10 * var(--interior-px, 1px)) calc(19 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-mark { width: calc(33 * var(--interior-px, 1px)); height: calc(33 * var(--interior-px, 1px)); font-size: calc(16 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-art-label { font-size: calc(10 * var(--interior-px, 1px)); }
  body[data-view^="news"] .filter-bar .tabs { gap: calc(7 * var(--interior-px, 1px)); }
  body[data-view^="news"] .filter-bar .tab { font-size: calc(17 * var(--interior-px, 1px)); padding: calc(7 * var(--interior-px, 1px)) calc(12 * var(--interior-px, 1px)); }
  body[data-view^="news"] .search-field input { width: 100%; font-size: calc(18 * var(--interior-px, 1px)); min-height: calc(47 * var(--interior-px, 1px)); }
  body[data-view^="news"] .news-count { font-size: calc(14 * var(--interior-px, 1px)); }
  body[data-view^="news"] .news-count .demo-tag { font-size: calc(11 * var(--interior-px, 1px)); }
  body[data-view^="news"] .news-table th { font-size: calc(17 * var(--interior-px, 1px)); padding: calc(11 * var(--interior-px, 1px)) calc(8 * var(--interior-px, 1px)); letter-spacing: calc(0.5 * var(--interior-px, 1px)); }
  body[data-view^="news"] .news-table td { padding: calc(13 * var(--interior-px, 1px)) calc(8 * var(--interior-px, 1px)); }
  body[data-view^="news"] .news-table .news-title-link { font-size: calc(18 * var(--interior-px, 1px)); line-height: 1.6; letter-spacing: 0; }
  body[data-view^="news"] .news-table .tag { font-size: calc(14 * var(--interior-px, 1px)); padding: calc(2 * var(--interior-px, 1px)) calc(8 * var(--interior-px, 1px)); }
  body[data-view^="news"] .news-table time { font-size: calc(13 * var(--interior-px, 1px)); white-space: nowrap; }
  body[data-view^="news"] .news-table th:first-child,
  body[data-view^="news"] .news-table td:first-child { width: calc(61 * var(--interior-px, 1px)); padding-left: 0; }
  body[data-view^="news"] .news-table th:nth-last-child(2),
  body[data-view^="news"] .news-table td:nth-last-child(2) { width: calc(80 * var(--interior-px, 1px)); padding-right: 0; }
  body[data-view^="news"] .pagination button { font-size: calc(16 * var(--interior-px, 1px)); min-width: calc(32 * var(--interior-px, 1px)); height: calc(35 * var(--interior-px, 1px)); padding: 0 calc(8 * var(--interior-px, 1px)); }
  body[data-view^="news"] .empty-state { font-size: calc(17 * var(--interior-px, 1px)); }
  body[data-view^="news"] .article-panel { padding: calc(27 * var(--interior-px, 1px)) calc(22 * var(--interior-px, 1px)); }
  body[data-view^="news"] .article-panel h1 { font-size: calc(29 * var(--interior-px, 1px)); line-height: 1.65; }
  body[data-view^="news"] .article-meta { font-size: calc(15 * var(--interior-px, 1px)); gap: calc(10 * var(--interior-px, 1px)); flex-wrap: wrap; }
  body[data-view^="news"] .article-meta .tag { font-size: calc(15 * var(--interior-px, 1px)); }
  body[data-view^="news"] .article-body { font-size: calc(18 * var(--interior-px, 1px)); line-height: 2; }
  body[data-view^="news"] .article-actions .button,
  body[data-view^="news"] .article-actions .text-link { font-size: calc(18 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-main-tabs { gap: calc(8 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-main-tabs .tab { font-size: calc(18 * var(--interior-px, 1px)); padding: calc(9 * var(--interior-px, 1px)) calc(3 * var(--interior-px, 1px)); letter-spacing: calc(0.5 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-filters { gap: calc(12 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-filters .tabs { gap: calc(6 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-filters .tab { font-size: calc(15 * var(--interior-px, 1px)); padding: calc(6 * var(--interior-px, 1px)) calc(10 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-filters select { width: 42%; font-size: calc(16 * var(--interior-px, 1px)); min-height: calc(45 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-filters .search-field input { width: 100%; font-size: calc(16 * var(--interior-px, 1px)); min-height: calc(45 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-table { min-width: calc(650 * var(--interior-px, 1px)); font-size: calc(18 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-table th { font-size: calc(18 * var(--interior-px, 1px)); padding: calc(11 * var(--interior-px, 1px)) calc(13 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-table td { padding: calc(11 * var(--interior-px, 1px)) calc(13 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .rank-character { font-size: calc(21 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .rank-value { font-size: calc(20 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .rank-badge { font-size: calc(20 * var(--interior-px, 1px)); width: calc(31 * var(--interior-px, 1px)); height: calc(31 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .academy-mark { font-size: calc(16 * var(--interior-px, 1px)); gap: calc(7 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .academy-symbol { font-size: calc(21 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-caption { font-size: calc(13 * var(--interior-px, 1px)); line-height: 1.8; }
  body[data-view="rankings"] .table-panel > .filter-bar > .demo-tag { font-size: calc(12 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .pagination { gap: calc(7 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .pagination button { font-size: calc(16 * var(--interior-px, 1px)); min-width: calc(33 * var(--interior-px, 1px)); height: calc(35 * var(--interior-px, 1px)); padding: 0 calc(8 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .sponsor-currency-panel { padding: calc(19 * var(--interior-px, 1px)) calc(15 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .currency-heading h2 { font-size: calc(23 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .currency-option { font-size: calc(18 * var(--interior-px, 1px)); padding: calc(10 * var(--interior-px, 1px)) calc(3 * var(--interior-px, 1px)); gap: calc(4 * var(--interior-px, 1px)); letter-spacing: 0; }
  body[data-view="sponsor"] .currency-option > span { font-size: calc(9 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .sponsor-table-top h2,
  body[data-view="sponsor"] .sponsor-flow-panel h2 { font-size: calc(29 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .sponsor-table-top > span { font-size: calc(15 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .sponsor-table thead th { font-size: calc(21 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .sponsor-table thead small { font-size: calc(16 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .sponsor-table tbody th,
  body[data-view="sponsor"] .sponsor-table tbody td { padding-block: calc(16 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .sponsor-table tbody .points-column strong,
  body[data-view="sponsor"] .plan-price { font-size: calc(30 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .sponsor-table tbody .points-column > span { font-size: calc(19 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .plan-select,
  body[data-view="sponsor"] .support-link { font-size: calc(17 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .sponsor-table-note p { font-size: calc(16 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .sponsor-table-note p > span { font-size: calc(14 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .table-scroll-hint { font-size: calc(14 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .sponsor-flow li,
  body[data-view="checkout"] .sponsor-flow li { font-size: calc(14 * var(--interior-px, 1px)); gap: calc(7 * var(--interior-px, 1px)); white-space: normal; }
  body[data-view="sponsor"] .flow-number,
  body[data-view="checkout"] .flow-number { font-size: calc(13 * var(--interior-px, 1px)); width: calc(29 * var(--interior-px, 1px)); height: calc(29 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .flow-arrow,
  body[data-view="checkout"] .flow-arrow { font-size: calc(19 * var(--interior-px, 1px)); padding-inline: calc(4 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .sponsor-bottom-note p { font-size: calc(14 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .payment-method-panel { padding: calc(23 * var(--interior-px, 1px)) calc(17 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .section-label h2,
  body[data-view="checkout"] .checkout-summary h2 { font-size: calc(29 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .payment-methods { gap: calc(12 * var(--interior-px, 1px)); margin-top: calc(24 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .payment-method { padding: calc(22 * var(--interior-px, 1px)) calc(10 * var(--interior-px, 1px)) calc(19 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .payment-method.is-selected { padding: calc(21 * var(--interior-px, 1px)) calc(9 * var(--interior-px, 1px)) calc(18 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .payment-method-icon { width: calc(82 * var(--interior-px, 1px)); height: calc(78 * var(--interior-px, 1px)); margin: calc(23 * var(--interior-px, 1px)) auto calc(16 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .payment-method > strong { font-size: calc(22 * var(--interior-px, 1px)); white-space: normal; line-height: 1.5; }
  body[data-view="checkout"] .payment-method-description { font-size: calc(16 * var(--interior-px, 1px)); margin-top: calc(18 * var(--interior-px, 1px)); padding-top: calc(15 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .payment-safety-note { font-size: calc(14 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .checkout-summary { padding: calc(25 * var(--interior-px, 1px)) calc(22 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .summary-kicker { font-size: calc(10 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .checkout-summary dl { display: block; }
  body[data-view="checkout"] .checkout-summary dt { font-size: calc(18 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .checkout-summary dd { font-size: calc(21 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .summary-unit { font-size: calc(17 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .checkout-summary .summary-amount { font-size: calc(38 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .checkout-availability { font-size: calc(16 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .checkout-pay { font-size: calc(26 * var(--interior-px, 1px)); min-height: calc(56 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .checkout-back { font-size: calc(19 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .checkout-loading { font-size: calc(18 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .checkout-loading h2,
  body[data-view="checkout"] .crypto-pending h3 { font-size: calc(28 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .crypto-pending p { font-size: calc(18 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .crypto-pending-label { font-size: calc(16 * var(--interior-px, 1px)); }
}

@media (max-width: 390px) {
  body[data-view="register"] .register-form { padding-inline: calc(18 * var(--interior-px, 1px)); }
  body[data-view="register"] .captcha-row { grid-template-columns: minmax(0, 1fr) calc(96 * var(--interior-px, 1px)) calc(25 * var(--interior-px, 1px)); gap: calc(7 * var(--interior-px, 1px)); }
  body[data-view="classes"] .classes-tabs .tab { font-size: calc(15 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-detail-copy { padding-inline: calc(20 * var(--interior-px, 1px)); }
  body[data-view="classes"] .class-specs { grid-template-columns: 1fr; }
  body[data-view="classes"] .class-bottom .button { font-size: calc(20 * var(--interior-px, 1px)); }
  body[data-view^="news"] .filter-bar .tab { font-size: calc(16 * var(--interior-px, 1px)); padding-inline: calc(10 * var(--interior-px, 1px)); }
  body[data-view^="news"] .news-table .news-title-link { font-size: calc(17 * var(--interior-px, 1px)); }
  body[data-view^="news"] .pagination button { font-size: calc(15 * var(--interior-px, 1px)); padding-inline: calc(7 * var(--interior-px, 1px)); }
  body[data-view="rankings"] .ranking-filters .tab { font-size: calc(14 * var(--interior-px, 1px)); padding-inline: calc(9 * var(--interior-px, 1px)); }
  body[data-view="sponsor"] .currency-option { font-size: calc(16 * var(--interior-px, 1px)); }
  body[data-view="checkout"] .payment-method > strong { font-size: calc(20 * var(--interior-px, 1px)); }
}

/* Supplied academy emblems; preserve each image's full proportions. */
.academy-emblem{display:block;flex-shrink:0;width:calc(48 * var(--interior-px, 1px));height:calc(48 * var(--interior-px, 1px));object-fit:contain;filter:none}.academy-name{display:inline-flex;align-items:baseline;gap:calc(11 * var(--interior-px, 1px));font-weight:600}.academy-code{font-family:var(--serif);font-size:.65em;letter-spacing:.06em;color:#bcd8ec;font-weight:600}.reference-rank-rows .academy-mark{justify-content:center;font-size:calc(22 * var(--interior-px, 1px));gap:calc(9 * var(--interior-px, 1px))}.reference-rank-rows .academy-emblem{width:calc(37 * var(--interior-px, 1px));height:calc(37 * var(--interior-px, 1px))}.reference-rank-rows .academy-name{gap:calc(6 * var(--interior-px, 1px))}body[data-view=rankings] .academy-mark{font-size:calc(24 * var(--interior-px, 1px));gap:calc(13 * var(--interior-px, 1px))}@media(max-width:1000px){.academy-emblem{width:calc(42 * var(--interior-px, 1px));height:calc(42 * var(--interior-px, 1px))}body[data-view=rankings] .academy-mark{font-size:calc(21 * var(--interior-px, 1px));gap:calc(10 * var(--interior-px, 1px))}}@media(max-width:760px){.academy-emblem{width:calc(36 * var(--interior-px, 1px));height:calc(36 * var(--interior-px, 1px))}body[data-view=rankings] .academy-mark{font-size:calc(18 * var(--interior-px, 1px));gap:calc(9 * var(--interior-px, 1px))}.academy-name{gap:calc(7 * var(--interior-px, 1px))}.reference-rank-rows .academy-mark{font-size:calc(18 * var(--interior-px, 1px))}.reference-rank-rows .academy-emblem{width:calc(31 * var(--interior-px, 1px));height:calc(31 * var(--interior-px, 1px))}}

@media(max-width:760px){body[data-view=sponsor] .sponsor-flow .flow-arrow,body[data-view=checkout] .sponsor-flow .flow-arrow{display:none}}

/* Registration story uses the user's full moonlit four-class banner. */
body[data-view=register] .onboarding{display:block}body[data-view=register] .onboarding-art{height:auto;min-height:0;aspect-ratio:1895/830;background:none;align-self:start;overflow:hidden}body[data-view=register] .onboarding-banner{display:block;width:100%;height:100%;object-fit:contain;object-position:center;opacity:1;filter:none}body[data-view=register] .onboarding-content{padding-top:calc(22 * var(--interior-px, 1px))}
