/* Account and billing surfaces. Original composition; inherited YoMinds palette. */
:root { --pro-ink:var(--warning,#e0c38a); --pro-wash:color-mix(in srgb,var(--pro-ink) 9%,var(--panel)); --pro-line:color-mix(in srgb,var(--pro-ink) 42%,var(--line)); }
html.light-theme { --pro-ink:var(--warning,#936c23); }
.account-pro-badge { display:inline-flex; align-items:center; justify-content:center; flex:none; gap:4px; width:max-content; min-height:21px; padding:3px 7px; border:1px solid var(--pro-line); border-radius:5px; color:var(--pro-ink); background:var(--pro-wash); font-size:9px; font-weight:700; line-height:1.2; letter-spacing:.07em; }
.account-pro-badge.hidden,.account-pro-badge[hidden] { display:none; }
.account-pro-badge .icon { width:12px; height:12px; }
#profileButton { position:relative; }
#accountProBadge { font-size:8px; min-height:18px; padding:2px 5px; }
#userName { color:var(--author-color,var(--text)); }
.account-modal,.plans-modal { width:min(780px,calc(100vw - 32px)); }
.account-modal .modal-header,.plans-modal .modal-header { align-items:flex-start; margin-bottom:22px; }
.account-modal .modal-header h2,.plans-modal .modal-header h2 { font-size:25px; }
.account-modal .modal-header .eyebrow,.plans-modal .modal-header .eyebrow { margin-bottom:6px; }
.account-overview { display:grid; grid-template-columns:minmax(0,1fr) minmax(150px,.8fr); gap:20px; margin:0 0 25px; padding:19px 20px; border:1px solid var(--line-strong); border-radius:var(--radius-md); background:var(--sidebar); }
.account-plan-summary,.account-balance-summary { display:flex; flex-direction:column; align-items:flex-start; min-width:0; gap:7px; }
.account-balance-summary { padding-left:20px; border-left:1px solid var(--line); }
.account-field-label { color:var(--muted); font-size:11px; }
.account-plan-title { display:flex; flex-wrap:wrap; align-items:center; gap:9px; }
.account-plan-title > strong,.account-balance-summary > strong { font-size:22px; font-weight:550; letter-spacing:-.025em; line-height:1.25; font-variant-numeric:tabular-nums; }
.account-plan-expiry { color:var(--muted); font-size:11px; line-height:1.6; overflow-wrap:anywhere; }
.account-overview .profile-plans-entry { display:flex; justify-content:space-between; align-items:center; gap:12px; width:auto; min-height:34px; margin:2px 0 0; padding:5px 0; border:0; background:none; color:var(--accent); font-size:11px; }
.profile-plans-entry .icon { width:15px; height:15px; }
.account-modal #profileForm { gap:16px; }
.profile-identity-layout { display:grid; grid-template-columns:190px minmax(0,1fr); align-items:start; gap:24px; }
.profile-visual-settings,.profile-identity-fields { display:grid; min-width:0; gap:14px; }
.account-modal .profile-avatar-editor { display:flex; flex-direction:column; align-items:flex-start; gap:13px; margin:0; padding:0; border:0; border-radius:0; background:transparent; }
.account-modal .profile-avatar-large { width:72px; height:72px; font-size:25px; }
.account-modal .avatar-file-label { display:grid; min-width:0; gap:6px; font-size:11px; }
.account-modal .avatar-file-label > span,.account-modal .avatar-file-label > small[data-i18n=gifHint] { display:none; }
.account-modal .avatar-file-label > small { font-size:10px; line-height:1.5; color:var(--muted); overflow-wrap:anywhere; }
.account-modal #chooseProfilePhoto { min-height:35px; width:max-content; padding:6px 10px; font-size:11px; }
.account-modal .profile-identity-fields > label { gap:6px; font-size:12px; }
.account-modal .profile-identity-fields input,.account-modal .profile-identity-fields textarea { min-width:0; font-size:13px; }
.account-modal #profileEmailInput { color:var(--muted); background:var(--sidebar); }
.account-modal #profileBioInput { min-height:85px; }
.account-modal .avatar-generator { margin:0; padding:0; border:0; background:none; }
.account-modal .avatar-generator > summary { min-height:34px; padding:5px 0; font-size:11px; }
.account-modal .avatar-generator-content { padding:10px 0 0; }
.account-modal .avatar-generator-content label,.account-modal .avatar-generator-content .hint { font-size:10px; }
.account-modal .avatar-generator-content textarea { width:100%; min-height:90px; font-size:12px; }
.account-modal #generateProfileAvatar { min-height:34px; font-size:10px; }
.account-modal .avatar-crop-editor { grid-template-columns:minmax(0,1fr); gap:10px; min-width:0; }
.account-modal .avatar-crop-stage { width:100%; height:auto; aspect-ratio:1; max-width:240px; }
.account-modal .avatar-crop-controls { min-width:0; width:100%; }
.profile-data-checks { font-size:10px; color:var(--muted); }
.profile-data-checks > summary { width:max-content; max-width:100%; padding:4px 0; cursor:pointer; }
.profile-data-checks .hint { margin:8px 0 0; font-size:10px; line-height:1.7; }
.account-section { margin:14px 0 0; padding:0; border:1px solid var(--line); border-radius:var(--radius-md); background:var(--panel); }
.account-section > summary { display:flex; align-items:center; gap:9px; min-height:48px; padding:13px 15px; color:var(--text); font-size:12px; font-weight:500; cursor:pointer; list-style:none; }
.account-section > summary::-webkit-details-marker { display:none; }
.account-section > summary::after { content:""; display:block; flex:none; width:7px; height:7px; margin-left:auto; border-right:1.5px solid var(--muted); border-bottom:1.5px solid var(--muted); transform:rotate(45deg); transition:transform 160ms ease; }
.account-section[open] > summary::after { transform:rotate(225deg); }
.account-section > summary:hover { background:var(--hover); border-radius:var(--radius-md); }
.account-section[open] > summary { border-bottom:1px solid var(--line); }
.account-section-body,.account-section .notification-settings-body { padding:15px; }
.account-section-body > .hint:first-child { margin-top:0; }
.account-modal .profile-appearance { margin:0; }
.account-modal .profile-style-grid { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:14px; margin-top:12px; }
.profile-color-control { display:flex !important; align-items:center; justify-content:space-between; gap:12px; font-size:11px !important; }
.profile-color-control input[type=color] { flex:none; width:43px; min-height:38px; height:38px; padding:5px; border-radius:7px; cursor:pointer; }
.profile-frame-control { align-items:center; gap:10px; padding-left:14px; border-left:1px solid var(--line); }
.profile-frame-control strong { font-size:11px; font-weight:500; }
.profile-frame-control small { margin-top:4px; color:var(--muted); font-size:10px; line-height:1.5; }
#profileAppearanceHint { font-size:11px; line-height:1.6; }
.profile-save-row { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:2px 0 5px; }
.profile-save-row .profile-plan-hint { margin:0; max-width:320px; font-size:10px; line-height:1.7; }
.profile-save-row .primary { flex:none; min-height:39px; padding:9px 14px; font-size:12px; }
.profile-security h3 { margin:0 0 3px; font-size:13px; font-weight:550; }
.profile-security .profile-divider { margin:20px 0; }
.profile-security .profile-form { gap:12px; }
.profile-security .profile-form label { font-size:11px; }
.profile-security .profile-save-password { justify-self:start; min-height:36px; font-size:11px; }
.account-modal .danger-zone { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:6px 18px; margin:23px 0 0; padding-top:18px; border-top:1px solid var(--line); }
.account-modal .danger-zone h3 { margin:0; color:var(--muted); font-size:12px; font-weight:500; }
.account-modal .danger-zone .hint { margin:0; font-size:10px; line-height:1.6; grid-column:1; }
.account-modal .danger-zone button { grid-column:2; grid-row:1/3; min-height:35px; padding:7px 10px; font-size:10px; background:transparent; }
.plans-modal .plans-intro { max-width:560px; margin:0 0 18px; font-size:12px; line-height:1.75; }
.plans-modal .wallet-panel { display:grid; grid-template-columns:minmax(0,1fr); gap:13px; margin:0; padding:0; border:0; }
.plans-modal { width:min(640px,calc(100vw - 32px)); }
.wallet-panel [data-wallet-view][hidden] { display:none !important; }
.wallet-panel .wallet-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 14px; }
.wallet-tabs { display:flex; min-width:0; gap:4px; padding:4px; border:1px solid var(--line); border-radius:9px; background:var(--sidebar); }
.wallet-tabs [role=tab] { min-height:38px; padding:8px 13px; border:1px solid transparent; border-radius:6px; background:transparent; color:var(--muted); font-size:11px; white-space:nowrap; }
.wallet-tabs [aria-selected=true] { color:var(--text); border-color:var(--line-strong); background:var(--panel); }
.wallet-tabs [role=tab]:hover { color:var(--text); }
.wallet-tab-short { display:none; }
.wallet-panel .wallet-pro-status:not(.wallet-pro-active) > p { display:none; }
.wallet-gift .wallet-section-head { flex-wrap:wrap; }
#plansModal:not([data-wallet-active=pro]) :is(.plans-intro,.plan-comparison) { display:none; }
.wallet-panel .wallet-summary { padding:15px 17px; }
.wallet-panel .wallet-summary > div:first-child > strong { font-size:27px; }
.wallet-panel .wallet-summary { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; }
.wallet-panel .wallet-summary .wallet-pro-status { min-width:0; max-width:none; padding:0 0 0 14px; border:0; border-left:1px solid var(--line); border-radius:0; background:transparent; }
.wallet-panel .wallet-summary .wallet-pro-status > strong { font-size:12px; line-height:1.5; letter-spacing:0; }
.wallet-panel .wallet-summary .wallet-pro-status > p { font-size:11px; }
@media (max-width:560px) {
  .wallet-tabs { flex:1; }
  .wallet-tabs [role=tab] { flex:1; padding:8px 9px; }
  .wallet-tab-long { display:none; }
  .wallet-tab-short { display:inline; }
  .wallet-panel .wallet-heading > [data-wallet-refresh] { margin-left:auto; }
}
.wallet-panel > :is(.wallet-heading,.wallet-summary,.wallet-pro-status,.wallet-notice,.wallet-warning,.wallet-history,.wallet-loading) { grid-column:1/-1; min-width:0; }
.wallet-panel .wallet-heading { margin-bottom:-4px; }
.wallet-panel .wallet-heading h3 { font-size:12px; font-weight:500; color:var(--muted); }
.wallet-panel .wallet-heading .ghost { min-height:34px; padding:6px 9px; font-size:10px; }
.wallet-panel .wallet-summary { gap:20px; margin:0; padding:20px; border-color:var(--line-strong); border-radius:10px; background:var(--sidebar); }
.wallet-summary strong { font-size:34px; font-weight:550; letter-spacing:-.035em; font-variant-numeric:tabular-nums; }
.wallet-panel .wallet-summary span { font-size:11px; }
.wallet-panel .wallet-summary p { max-width:280px; font-size:12px; line-height:1.6; }
.wallet-panel .wallet-pro-status { display:flex; align-items:center; gap:8px; margin:0; padding:11px 13px; border:1px solid var(--line); border-radius:8px; font-size:12px; }
.wallet-panel .wallet-pro-status.wallet-pro-active,.wallet-summary .wallet-pro-active { color:var(--pro-ink); border-color:var(--pro-line); background:var(--pro-wash); }
.wallet-summary .wallet-pro-status { max-width:280px; }
.wallet-summary .wallet-pro-status { flex-direction:column; align-items:flex-start; gap:5px; }
.wallet-summary .wallet-pro-status > strong { font-size:13px; letter-spacing:.04em; }
.wallet-summary .wallet-pro-status > p { text-align:left; font-size:11px; }
.wallet-panel [data-wallet-purchase],.wallet-panel .wallet-topup { align-content:start; min-width:0; gap:11px; margin:0; padding:17px; border:1px solid var(--line); border-radius:10px; background:var(--panel); }
.wallet-section-head { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:2px; }
.wallet-section-head h3,.wallet-section-head h4 { margin:0; color:var(--text); font-size:15px; font-weight:550; letter-spacing:-.02em; }
.wallet-section-head > span { flex:none; color:var(--muted); font-size:10px; }
.wallet-panel .wallet-topup > h4 { font-size:15px; font-weight:550; }
.wallet-panel :is([data-wallet-purchase],.wallet-topup) > label:not(.consent) { color:var(--muted); font-size:11px; }
.wallet-panel :is([data-wallet-purchase],.wallet-topup) :is(input[type=number]) { width:110px; min-width:0; min-height:42px; font-size:16px; font-variant-numeric:tabular-nums; }
.wallet-panel .wallet-purchase-row { justify-content:space-between; gap:12px; }
.wallet-purchase-row > span { text-align:right; }
.wallet-purchase-row [data-wallet-total] { font-size:24px; font-weight:550; font-variant-numeric:tabular-nums; letter-spacing:-.035em; }
.wallet-purchase-row small { font-size:10px; }
.wallet-panel .wallet-presets { display:flex; flex-wrap:wrap; gap:6px; }
.wallet-panel [data-wallet-days],.wallet-panel [data-wallet-amount] { min-height:32px; padding:6px 9px; border:1px solid var(--line); border-radius:6px; color:var(--muted); background:var(--sidebar); font-size:11px; font-variant-numeric:tabular-nums; }
.wallet-panel :is([data-wallet-days],[data-wallet-amount])[aria-pressed=true] { color:var(--accent); border-color:var(--accent); background:var(--tint); }
.wallet-panel :is([data-wallet-days],[data-wallet-amount]):hover:not(:disabled) { border-color:var(--line-strong); color:var(--text); }
.wallet-panel .consent { font-size:11px; line-height:1.7; }
.wallet-panel [data-wallet-buy] { min-height:41px; width:100%; margin-top:2px; padding:9px 12px; font-size:12px; }
.wallet-panel .wallet-topup-row { flex-direction:column; align-items:stretch; gap:10px; }
.wallet-panel .wallet-topup-row input { width:100%; max-width:none; }
.wallet-panel .wallet-topup-row button { min-height:41px; width:100%; font-size:11px; }
.wallet-panel :is(.wallet-topup p,.hint) { font-size:11px; line-height:1.65; overflow-wrap:anywhere; }
.wallet-panel .wallet-topup a { overflow-wrap:anywhere; }
.wallet-panel .wallet-notice { margin:0; padding:11px 13px; border-left:2px solid var(--accent); border-radius:0 7px 7px 0; background:var(--sidebar); font-size:12px; line-height:1.65; }
.wallet-panel .wallet-notice:empty { display:none; }
.wallet-panel .wallet-warning { margin:0; font-size:12px; line-height:1.65; }
.wallet-panel .wallet-history { margin-top:3px; border-top:1px solid var(--line); }
.wallet-panel .wallet-history > summary { min-height:45px; padding:13px 0; color:var(--muted); font-size:12px; }
.wallet-history li { font-size:11px; }
.wallet-history li strong { font-weight:500; }
.wallet-history li small { font-size:10px; }
.wallet-loading { display:flex; align-items:center; gap:10px; min-height:115px; padding:20px; border:1px solid var(--line); border-radius:10px; color:var(--muted); background:var(--sidebar); font-size:12px; }
.account-loading-dot { width:15px; height:15px; border:2px solid var(--line-strong); border-top-color:var(--accent); border-radius:50%; animation:account-spin .8s linear infinite; }
.plans-modal .plan-comparison { margin-top:18px; }
.plans-modal .plan-grid { gap:12px; margin:0; }
.plans-modal .plan-card { gap:7px; padding:16px; border:1px solid var(--line); border-radius:8px; background:var(--sidebar); box-shadow:none; }
.plans-modal .plan-card-pro { border-color:var(--pro-line); background:var(--pro-wash); }
.plans-modal .plan-card h3 { margin:5px 0 0; font-size:14px; }
.plans-modal .plan-card > p { margin:0; font-size:12px; color:var(--text); }
.plans-modal .plan-card ul { margin:7px 0 0; padding-left:16px; color:var(--muted); font-size:11px; line-height:1.8; }
.plans-terms-link { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:18px 0 0; font-size:11px; color:var(--muted); }
.plans-terms-link a { color:var(--muted); }
.room-plan-info { padding:13px !important; border:1px solid var(--line); border-radius:9px; background:var(--sidebar); }
.room-plan-info legend { width:auto; padding:0 4px; font-size:11px; }
.room-plan-status { display:flex; align-items:center; gap:8px; font-size:12px; }
.room-plan-status > [data-icon] { display:flex; color:var(--accent); }
.room-plan-status .icon { width:16px; height:16px; }
.room-appearance-settings > legend { display:flex; align-items:center; gap:8px; }
.room-accent-row { display:flex; align-items:center; justify-content:space-between; gap:15px; }
.room-accent-row label { align-items:center; font-size:12px; }
.room-accent-row input[type=color] { width:43px; min-height:38px; height:38px; flex:none; padding:5px; }
.room-appearance-editor { display:grid; gap:10px; margin-top:20px; padding:15px; border:1px solid var(--line); border-radius:10px; background:var(--sidebar); }
.room-appearance-editor .wallet-section-head h3 { font-size:13px; }
.room-appearance-editor .hint { margin:0; font-size:11px; line-height:1.7; }
.room-appearance-row { display:flex; flex-wrap:wrap; align-items:center; gap:8px; min-width:0; }
.room-appearance-row > label { display:flex; flex:1; align-items:center; gap:12px; min-width:100px; color:var(--muted); font-size:11px; }
.room-appearance-row input[type=color] { width:43px; min-height:38px; height:38px; padding:5px; }
.room-appearance-row > button { min-height:38px; padding:7px 10px; font-size:11px; }
.room-appearance-editor [data-room-accent-status] { margin:0; font-size:11px; line-height:1.6; overflow-wrap:anywhere; }
.room-appearance-editor [data-room-accent-status]:empty { display:none; }
.room-card.room-custom-accent { border-color:color-mix(in srgb,var(--room-accent) 50%,var(--line)); box-shadow:inset 3px 0 0 var(--room-accent); }
.room-card.room-custom-accent .room-card-symbol { border-color:color-mix(in srgb,var(--room-accent) 55%,var(--line)); background:color-mix(in srgb,var(--room-accent) 10%,var(--panel)); }
#chatView.room-custom-accent > .chat-header { border-bottom-color:color-mix(in srgb,var(--room-accent) 50%,var(--line)); background:color-mix(in srgb,var(--room-accent) 5%,var(--panel)); box-shadow:inset 0 2px 0 var(--room-accent); }
#chatView.room-custom-accent .chat-hub-icon { border-color:color-mix(in srgb,var(--room-accent) 55%,var(--line)); background:color-mix(in srgb,var(--room-accent) 12%,var(--panel)); }
:is(.account-modal,.plans-modal,.room-appearance-settings,.room-appearance-editor) :disabled { cursor:not-allowed; opacity:.58; }
:is(.account-modal,.plans-modal) :is(button,input,textarea,summary,a):focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
.wallet-panel[aria-busy=true] { cursor:progress; }
@keyframes account-spin { to { transform:rotate(360deg); } }
@media (max-width:720px) {
  #profileButton:has(#accountProBadge:not(.hidden):not([hidden])) { width:auto; min-width:32px; padding:0 3px; gap:4px; }
  #accountProBadge { font-size:7px; min-height:16px; padding:2px 3px; }
  .account-modal,.plans-modal { padding:21px; }
  .profile-identity-layout { grid-template-columns:145px minmax(0,1fr); gap:18px; }
  .wallet-panel [data-wallet-purchase],.wallet-panel .wallet-topup { padding:14px; }
  .account-modal .danger-zone { display:block; }
  .account-modal .danger-zone .hint { margin:6px 0 10px; }
}
@media (max-width:560px) {
  .account-modal,.plans-modal { width:calc(100vw - 20px); max-height:calc(100dvh - 20px); padding:18px; }
  .account-overview { grid-template-columns:1fr; gap:14px; padding:16px; }
  .account-balance-summary { position:relative; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:5px 10px; padding:13px 0 0; border:0; border-top:1px solid var(--line); }
  .account-balance-summary > .account-field-label { grid-column:1; }
  .account-balance-summary > strong { grid-column:1; font-size:21px; }
  .account-overview .profile-plans-entry { grid-column:2; grid-row:1/3; align-self:center; min-height:42px; font-size:10px; gap:7px; }
  .profile-identity-layout { grid-template-columns:1fr; gap:20px; }
  .account-modal .profile-avatar-editor { flex-direction:row; align-items:center; gap:16px; }
  .account-modal .profile-avatar-large { width:65px; height:65px; }
  .account-modal .avatar-file-label { gap:5px; }
  .account-modal .avatar-generator { margin-top:-7px; }
  .account-modal .profile-style-grid { grid-template-columns:1fr; gap:14px; }
  .profile-frame-control { padding:13px 0 0; border-left:0; border-top:1px solid var(--line); }
  .account-modal .profile-identity-fields input,.account-modal .profile-identity-fields textarea { font-size:16px; }
  .profile-save-row { flex-direction:column; align-items:stretch; gap:10px; }
  .profile-save-row .profile-plan-hint { max-width:none; }
  .profile-save-row .primary { min-height:44px; }
  .plans-modal .wallet-panel { grid-template-columns:1fr; gap:13px; }
  .wallet-panel > :is(.wallet-heading,.wallet-summary,.wallet-pro-status,.wallet-notice,.wallet-warning,.wallet-history,.wallet-loading) { grid-column:1; }
  .wallet-panel .wallet-summary { padding:17px; gap:12px; }
  .wallet-panel .wallet-summary p { max-width:none; }
  .wallet-summary strong { font-size:32px; }
  .wallet-panel [data-wallet-purchase],.wallet-panel .wallet-topup { padding:16px; }
  .wallet-panel :is([data-wallet-days],[data-wallet-amount]) { min-height:38px; padding:7px 11px; }
  .plans-modal .plan-grid { grid-template-columns:1fr; }
  .room-appearance-row > label { flex-basis:100%; justify-content:space-between; }
  .room-appearance-row > button { flex:1; }
}
@media (prefers-reduced-motion:reduce) { .account-loading-dot { animation:none; } .account-section > summary::after { transition:none; } }

.wallet-panel .wallet-gift { grid-column:1 / -1; min-width:0; padding:18px; border:1px solid var(--line); border-radius:9px; }
.wallet-gift p { margin:8px 0 12px; }
.wallet-gift-row { display:flex; align-items:stretch; gap:10px; }
.wallet-gift-row input { flex:1; width:0; min-width:0; font-size:16px; letter-spacing:.04em; }
.wallet-gift-row button { flex-shrink:0; min-height:44px; }
.wallet-summary .wallet-bonus { display:block; margin-top:7px; color:var(--muted); font-size:11px; line-height:1.5; }
@media (max-width:420px) {
  .wallet-panel .wallet-gift { padding:15px; }
  .wallet-gift-row { flex-direction:column; }
  .wallet-gift-row input { width:100%; }
}

/* Public pricing page uses the same hierarchy, without billing actions. */
.pricing-page { --pro-ink:#e0c38a; --line-strong:var(--line); }
.light-theme .pricing-page { --pro-ink:#936c23; }
.pricing-page main { max-width:1056px; }
.pricing-page .pricing-intro { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:30px; margin:30px 0 28px; }
.pricing-page .pricing-intro .eyebrow { margin:0 0 13px; }
.pricing-page .pricing-intro h1 { max-width:640px; margin:0 0 17px; font-size:clamp(31px,4.3vw,52px); line-height:1.1; }
.pricing-page .pricing-intro .intro { max-width:610px; margin:0; font-size:15px; line-height:1.8; }
.pricing-page .pricing-facts { display:grid; gap:9px; min-width:170px; padding:16px 18px; border-left:1px solid var(--line); color:var(--muted); font-size:12px; }
.pricing-page .pricing-facts strong { color:var(--text); font-size:24px; font-weight:550; }
.pricing-page .pricing-cards { gap:16px; margin:0 0 27px; }
.pricing-page .pricing-cards article { display:flex; flex-direction:column; align-items:flex-start; gap:10px; padding:24px; border-radius:11px; box-shadow:none; }
.pricing-page .pricing-cards article:hover { transform:none; box-shadow:none; border-color:var(--line); }
.pricing-page .pricing-cards article.pricing-pro { border-color:var(--pro-line); background:var(--pro-wash); }
.pricing-page .pricing-cards h2 { margin:0; font-size:20px; font-weight:550; }
.pricing-page .pricing-cards p { margin:0; font-size:13px; }
.pricing-page .pricing-cards .tariff-price { margin:4px 0; font-size:34px; font-weight:550; letter-spacing:-.04em; }
.pricing-page .pricing-cards .tariff-price small { font-size:12px; letter-spacing:0; }
.pricing-page .pricing-cards ul { margin:0 0 5px; padding-left:17px; font-size:13px; line-height:1.9; }
.pricing-page .pricing-cards .button { width:100%; min-height:42px; margin:auto 0 0; padding:10px 14px; border-radius:6px; text-align:center; box-shadow:none; font-size:12px; }
.pricing-page .pricing-cards .button:hover { transform:none; }
.pricing-page .pricing-cards .button.secondary { background:transparent; border-color:var(--line); color:var(--text); }
.pricing-page .pricing-cards .tariff-notice { margin-top:auto; padding:10px 12px; font-size:11px; line-height:1.6; }
.pricing-page .pricing-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:25px 0 40px; padding:20px 0; list-style:none; border-block:1px solid var(--line); counter-reset:pricing-step; }
.pricing-page .pricing-steps li { display:grid; grid-template-columns:auto minmax(0,1fr); align-content:start; gap:6px 10px; font-size:12px; line-height:1.65; }
.pricing-page .pricing-steps li::before { counter-increment:pricing-step; content:counter(pricing-step); display:grid; place-items:center; grid-row:1/3; width:26px; height:26px; border:1px solid var(--line); border-radius:50%; color:var(--muted); font-size:10px; }
.pricing-page .pricing-steps strong { color:var(--text); font-size:12px; font-weight:550; }
.pricing-page .pricing-steps span { grid-column:2; }
.pricing-page section { margin-top:35px; }
.pricing-page section h2 { margin:0 0 12px; font-size:21px; font-weight:550; }
.pricing-page section p { font-size:13px; line-height:1.85; }
.pricing-page .pricing-duration-list { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; margin:18px 0; }
.pricing-page .pricing-duration-list > div { padding:15px; border:1px solid var(--line); border-radius:8px; }
.pricing-page .pricing-duration-list dt { color:var(--muted); font-size:11px; }
.pricing-page .pricing-duration-list dd { margin:7px 0 0; color:var(--text); font-size:19px; font-weight:550; font-variant-numeric:tabular-nums; }
.pricing-page #en { padding-top:45px; margin-top:60px; border-top:1px solid var(--line); }
@media (max-width:700px) {
  .pricing-page .pricing-intro { grid-template-columns:1fr; gap:18px; }
  .pricing-page .pricing-facts { display:flex; flex-wrap:wrap; align-items:center; gap:8px 14px; padding:12px 0; border:0; border-block:1px solid var(--line); }
  .pricing-page .pricing-facts strong { font-size:21px; }
  .pricing-page .pricing-duration-list { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .pricing-page .pricing-steps { grid-template-columns:1fr; gap:18px; }
}
@media (max-width:420px) {
  .pricing-page :is(header,main,footer) { padding-inline:18px; }
  .pricing-page .pricing-cards article { padding:19px; }
  .pricing-page .pricing-duration-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
