.container { max-width:1200px; margin:20px auto; padding:20px; }
    h1 { margin-bottom:20px; }
    .tabs { display:flex; gap:10px; margin-bottom:20px; flex-wrap:wrap; }
    .tab-btn {
      padding:10px 20px; border:none; border-radius:6px; cursor:pointer;
      background:#e5e7eb; font-weight:600; transition:0.3s;
    }
    .tab-btn.active { background:#0dbf66; color:#fff; }

    .calculator { display:none; background:#fff; border-radius:12px;
      padding:20px; box-shadow:0 2px 6px rgba(0,0,0,0.1); gap:20px; flex-wrap:wrap; }
    .calculator.active { display:flex; }

    .left, .right { flex:1; min-width:320px; }
    .section-title { font-size:20px; font-weight:600; margin-bottom:15px; }

    label { display:block; margin:10px 0 5px; font-size:14px; }
    input, select { width:100%; padding:8px; border:1px solid #ccc; border-radius:6px; }

    .plans { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:10px; margin-top:15px; }
    .plan-card {
      border:2px solid #ddd; border-radius:10px; padding:12px; cursor:pointer;
      transition:0.3s; background:#f9f9f9;
    }
    .plan-card.active { border-color:#0dbf66; background:#eef4ff; }
    .plan-card h4 { margin:0 0 5px; font-size:15px; }
    .plan-card p { margin:0; font-size:13px; }

    .result-box { background:#e8fdf1; padding:15px; border-radius:8px; margin-bottom:15px; font-weight:600; }
    table { width:100%; border-collapse:collapse; font-size:14px; background:#fff; border-radius:6px; overflow:hidden; }
    table th, table td { padding:8px; border-bottom:1px solid #eee; text-align:right; }
    table th:first-child, table td:first-child { text-align:left; }
    .note { margin-top:10px; font-size:12px; color:#555; }