.public-plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:16px}
.public-plan{min-width:0;padding:22px;border:1px solid #2A2E3D;border-radius:16px;background:#111420;color:#EEF0F7;display:flex;flex-direction:column;align-items:flex-start;overflow-wrap:anywhere}
.public-plan h3{margin:0 0 8px;font-size:22px;letter-spacing:.03em}
.public-plan-rate{color:#FFB240;font-size:16px;margin:0}
/* V30 · переключатель срока 30/90/180: три равные кнопки, активная — амберная.
   Кнопки не наследуют .public-plan button (margin-top:auto тянет их вниз карточки). */
.public-plan-terms{display:inline-flex;gap:0;margin:0 0 10px;border:1px solid #5E626B;border-radius:8px;overflow:hidden}
.public-plan .public-plan-term-btn{margin:0;padding:5px 10px;min-height:34px;background:transparent;border:0;border-right:1px solid #5E626B;color:#AEB4C5;font-size:12.5px;line-height:1;cursor:pointer;white-space:nowrap}
.public-plan .public-plan-term-btn:last-child{border-right:0}
.public-plan .public-plan-term-btn.is-active{background:#FFB240;color:#111420;font-weight:600}
.public-plan .public-plan-term-btn:focus-visible{outline:2px solid #FFB240;outline-offset:-2px}
.public-plan-legal{font-size:12px;line-height:1.55;color:#AEB4C5;margin:8px 0 18px}
.public-plan dl{font-size:14px;margin:0 0 12px;width:100%}
.public-plan dl div{margin:0 0 10px}.public-plan dt{color:#AEB4C5}.public-plan dd{margin:2px 0 0;font-variant-numeric:tabular-nums}
.public-plan-detail{font-size:13px;color:#AEB4C5;margin:0 0 18px}
.public-plan .button,.public-plan button{margin-top:auto;max-width:100%;white-space:normal}
/* Аудит дизайна: CTA плитки плана наследовал цвет текста при прозрачном фоне и прозрачной рамке —
   его нельзя было отличить от абзаца. По доктрине листов («две формы: амберный primary и
   волосяной контур») это вторичная форма, а не primary: пять амберных кнопок на экран нельзя.
   Цвета — токены landing-v20.css (--rule-strong #5E626B, --bone #F3EEE6); новых не вводим.
   Селектор с body.velar-lab: у body.velar-lab .button из landing-v20.css специфичность выше. */
body.velar-lab .public-plan .button,body.velar-lab .public-plan button{background:transparent;border-color:#5E626B;color:#F3EEE6}
@media(hover:hover) and (pointer:fine){body.velar-lab .public-plan .button:hover,body.velar-lab .public-plan button:hover{border-color:#F3EEE6}}
.public-plans-retry{font:inherit;background:transparent;color:inherit;border:1px solid currentColor;border-radius:6px;padding:5px 10px;cursor:pointer}
.public-plan-grid :focus-visible{outline:2px solid #FFB240;outline-offset:4px}
.landing .public-plans-section .public-plan-starter{border-color:#B08246;background:#15140F}
.landing .public-plans-section .public-plan-badge{display:inline-block;align-self:flex-start;color:#FFCA7A;font-size:11px;font-weight:600;letter-spacing:.035em;margin:0 0 12px;padding:4px 7px;border:1px solid #7D623C;border-radius:4px}

/* V31 · волна 22: политика реинвеста на карточке и таблица сравнения ступеней.
   Токены те же, что у карточек (public-plans.css выше): #2A2E3D рамка, #111420 фон, #FFB240 акцент,
   #AEB4C5 вторичный текст. Новых цветов не вводим — таблица должна читаться и на лендинге,
   и в кабинете (оба грузят этот файл). */
.public-plan-reinvest{font-size:12px;line-height:1.5;color:#AEB4C5;margin:8px 0 0}

.public-compare{margin:28px 0 0;min-width:0}
.public-compare h3{margin:0 0 6px;font-size:20px;letter-spacing:.02em;color:#EEF0F7}
.public-compare-note{margin:0 0 12px;font-size:12.5px;line-height:1.55;color:#AEB4C5;max-width:78ch}
.public-compare-scroll{overflow-x:auto;border:1px solid #2A2E3D;border-radius:12px;background:#0F1219;-webkit-overflow-scrolling:touch}
.public-compare table{border-collapse:separate;border-spacing:0;width:100%;min-width:820px;font-size:13px;font-variant-numeric:tabular-nums;color:#EEF0F7}
.public-compare caption{caption-side:top;text-align:left;padding:10px 12px 0;font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;color:#AEB4C5}
.public-compare th,.public-compare td{padding:8px 10px;border-bottom:1px solid #232734;white-space:nowrap}
.public-compare thead th{background:#141826;color:#AEB4C5;font-weight:600;text-align:right;border-bottom:1px solid #2A2E3D}
.public-compare thead th[scope="col"]:first-child,.public-compare thead th[scope="colgroup"]{text-align:left}
.public-compare tbody th{text-align:left;font-weight:600}
.public-compare tbody td{text-align:right}
.public-compare tbody tr:nth-child(odd){background:#11151F}
.public-compare tbody tr:hover{background:#161B27}
.public-compare tbody tr:last-child th,.public-compare tbody tr:last-child td{border-bottom:0}
.public-compare-code{color:#AEB4C5;font-weight:500;font-size:11px;margin-left:4px}
.public-compare-min{color:#AEB4C5}
/* На мобильной ширине таблица скроллится по горизонтали — ступень должна оставаться видимой. */
.public-compare tbody th{position:sticky;left:0;z-index:2;background:#0F1219}
.public-compare tbody tr:nth-child(odd) th{background:#11151F}
.public-compare tbody tr:hover th{background:#161B27}
.public-compare-scroll:focus-visible{outline:2px solid #FFB240;outline-offset:3px}
@media(max-width:640px){
  .public-compare h3{font-size:17px}
  .public-compare table{min-width:760px;font-size:12.5px}
  .public-compare th,.public-compare td{padding:7px 8px}
}

/* V31 · опции вклада в модалке «Расчёт по плану» (кабинет) и строки карточки вклада. */
.pd-hint{font-weight:400;color:#AEB4C5;font-size:12px}
.pd-reinvest{display:flex;gap:8px;align-items:flex-start;font-size:13px;line-height:1.45;margin:8px 0 0;cursor:pointer}
.pd-reinvest input{margin:3px 0 0;width:16px;height:16px;accent-color:#FFB240;flex:0 0 auto}
.dep-goal{margin:6px 0 0}
.dep-goal-hint{color:#AEB4C5}
.dep-reinvest{color:#AEB4C5}
