.cabinet-page .plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:18px;align-items:stretch}
.cabinet-page .term-card{min-width:0;padding:24px;border:1px solid #dce5f1;background:linear-gradient(160deg,#fff 70%,#f0f5ff);border-radius:20px;display:flex;flex-direction:column}
.cabinet-page .term-card h2{font-size:28px;letter-spacing:-1px;margin:18px 0 8px}
.cabinet-page .term-card .plan-rate{font-size:40px;font-variant-numeric:tabular-nums;letter-spacing:-1.6px;color:#0755ff}
.cabinet-page .term-card .plan-rate small{font-size:12px;letter-spacing:0;margin-left:8px;color:#7585a1}
.cabinet-page .term-range{font-weight:700;color:#18375f;font-size:14px;display:flex;flex-wrap:wrap;gap:5px}
.cabinet-page .term-range small{font-size:10px;font-weight:500;color:#7585a1}
.cabinet-page .term-card form{margin-top:auto}
.cabinet-page .term-card form>.btn{width:100%}
.cabinet-page .term-estimate{padding:14px 0;margin:8px 0;display:grid;gap:10px;font-size:12px;font-variant-numeric:tabular-nums}
.cabinet-page .term-estimate>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.cabinet-page .term-estimate span{color:#7183a0;min-width:0}
.cabinet-page .term-estimate b{white-space:nowrap;color:#1b345e}
.cabinet-page .term-estimate-total{padding-top:12px;border-top:1px solid #e1e8f2;font-size:14px}
.cabinet-page .term-estimate-total b{color:#0755ff}
.cabinet-page .term-reinvest{width:100%;margin-top:8px}
.cabinet-page .term-contract-info{display:flex;flex-wrap:wrap;gap:12px;margin:15px 0;font-size:13px}
.cabinet-page .term-contract-info small{font-size:10px}
.cabinet-page .term-renew-help{font-size:12px;line-height:1.6;max-width:800px;margin:8px 0 0}
.cabinet-page .position .check{display:flex;align-items:center;gap:8px;white-space:normal}
.cabinet-page .position input[type=checkbox]{width:17px;height:17px;flex-shrink:0;accent-color:#0755ff}
@media(min-width:1350px){.cabinet-page .plan-grid:has(.term-card){grid-template-columns:repeat(5,minmax(0,1fr))}.cabinet-page .term-card{padding:20px}.cabinet-page .term-estimate>div{gap:8px}.cabinet-page .term-estimate-total{font-size:13px}}
@media(max-width:600px){.cabinet-page .term-card{padding:21px}.cabinet-page .term-estimate{font-size:11px}.cabinet-page .term-estimate-total{font-size:13px}.cabinet-page .position .actions{align-items:flex-start}}
