.ov-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 12px;
    }
    @media (max-width: 900px) { .ov-grid { grid-template-columns: 1fr 1fr; } }
    @media (max-width: 560px) { .ov-grid { grid-template-columns: 1fr; } }
    .ov-tile {
      padding: 18px 18px;
      border-radius: 16px;
      border: 1px solid var(--line);
      background: rgba(255,255,255,0.025);
      transition: border-color .25s, background .25s, transform .25s;
      backdrop-filter: blur(12px);
    }
    [data-theme="light"] .ov-tile { background: rgba(15,18,32,0.022); }
    .ov-tile:hover {
      border-color: rgba(123,140,255,.4);
      background: rgba(123,140,255,.06);
      transform: translateY(-3px);
    }
    .ov-tile p { font-size: 14px; font-weight: 600; color: var(--text-1); line-height: 1.5; }

    .plan-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 18px;
      align-items: stretch;
    }
    @media (max-width: 1040px) { .plan-grid { grid-template-columns: 1fr; } }
    .plan-card {
      position: relative;
      display: flex; flex-direction: column;
      padding: 26px 24px;
      border-radius: 24px;
      border: 1px solid var(--line);
      background: linear-gradient(to bottom, rgba(255,255,255,0.035), rgba(255,255,255,0.01));
      overflow: hidden;
      isolation: isolate;
      transition: transform .35s ease, border-color .35s, box-shadow .35s;
      backdrop-filter: blur(12px);
    }
    [data-theme="light"] .plan-card {
      background: linear-gradient(to bottom, rgba(15,18,32,0.025), rgba(15,18,32,0.008));
    }
    .plan-card:hover {
      transform: translateY(-6px);
      border-color: rgba(123,140,255,.35);
      box-shadow: 0 36px 70px -30px rgba(0,0,0,.45);
    }
    [data-theme="light"] .plan-card:hover { box-shadow: 0 36px 70px -30px rgba(15,18,32,.2); }
    .plan-card.featured {
      background:
        linear-gradient(var(--bg-1, #0a0c14), var(--bg-1, #0a0c14)) padding-box,
        linear-gradient(135deg, #7b8cff, #b27bff, #3ddbff) border-box;
      border: 1.5px solid transparent;
      box-shadow: 0 28px 70px -28px rgba(123,140,255,.5);
    }
    [data-theme="light"] .plan-card.featured {
      background:
        linear-gradient(#fff, #fff) padding-box,
        linear-gradient(135deg, #7b8cff, #b27bff, #3ddbff) border-box;
    }
    .plan-card .kicker {
      font-family: 'JetBrains Mono', monospace;
      font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase;
      color: var(--accent); margin-bottom: 8px;
    }
    .plan-card h3 {
      font-family: 'Plus Jakarta Sans', sans-serif;
      font-size: 22px; font-weight: 700; letter-spacing: -0.4px;
      color: var(--text-0); margin-bottom: 10px;
    }
    .plan-card .best {
      font-size: 14px; color: var(--text-1); line-height: 1.6; margin-bottom: 20px;
    }
    .plan-card .pop {
      position: absolute; top: 20px; right: 20px;
      display: inline-flex; align-items: center; gap: 6px;
      padding: 6px 12px; border-radius: 999px;
      background: linear-gradient(135deg, #7b8cff, #b27bff);
      color: #fff; font-family: 'JetBrains Mono', monospace;
      font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 600;
    }
    .plan-card .sec-label {
      font-family: 'JetBrains Mono', monospace;
      font-size: 10.5px; letter-spacing: 0.14em; text-transform: uppercase;
      color: var(--text-2); margin: 6px 0 10px;
    }
    .use-list, .cap-list { list-style: none; padding: 0; margin: 0 0 18px; display: grid; gap: 8px; }
    .use-list li, .cap-list li {
      display: flex; align-items: flex-start; gap: 10px;
      font-size: 13.5px; color: var(--text-1); line-height: 1.5;
    }
    .use-list .dot, .cap-list .ck {
      width: 18px; height: 18px; border-radius: 6px; flex-shrink: 0; margin-top: 1px;
      display: grid; place-items: center;
    }
    .use-list .dot {
      background: rgba(123,140,255,.12);
      border: 1px solid rgba(123,140,255,.28);
    }
    .use-list .dot i { width: 6px; height: 6px; border-radius: 999px; background: var(--accent); }
    .cap-list .ck {
      background: linear-gradient(135deg, rgba(123,140,255,.2), rgba(178,123,255,.1));
      border: 1px solid rgba(123,140,255,.3); color: #b27bff;
    }
    .plan-card.featured .cap-list .ck {
      background: linear-gradient(135deg, #7b8cff, #b27bff);
      border-color: transparent; color: #fff;
    }
    .plan-card .cta {
      margin-top: auto;
      display: inline-flex; align-items: center; justify-content: center; gap: 8px;
      width: 100%; padding: 13px 22px; border-radius: 12px;
      font-size: 14px; font-weight: 600;
      transition: transform .25s, box-shadow .25s, background .25s, border-color .25s;
    }
    .plan-card .cta.primary {
      background: linear-gradient(135deg, #7b8cff, #b27bff);
      color: #fff; box-shadow: 0 20px 40px -16px rgba(123,140,255,.55);
    }
    .plan-card .cta.primary:hover { transform: translateY(-2px); }
    .plan-card .cta.ghost {
      border: 1px solid var(--line); color: var(--text-0);
      background: rgba(255,255,255,0.03);
    }
    [data-theme="light"] .plan-card .cta.ghost { background: rgba(15,18,32,0.03); }
    .plan-card .cta.ghost:hover { border-color: rgba(123,140,255,.4); background: rgba(123,140,255,.06); }

    .factor-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 12px;
    }
    @media (max-width: 900px) { .factor-grid { grid-template-columns: 1fr 1fr; } }
    @media (max-width: 560px) { .factor-grid { grid-template-columns: 1fr; } }
    .factor {
      display: flex; align-items: center; gap: 12px;
      padding: 16px 18px; border-radius: 14px;
      border: 1px solid var(--line);
      background: rgba(255,255,255,0.022);
      transition: border-color .25s, background .25s, transform .2s;
      backdrop-filter: blur(12px);
    }
    [data-theme="light"] .factor { 
      background: rgba(255,255,255,0.8); 
    }
    .factor:hover {
      border-color: rgba(123,140,255,.35);
      background: rgba(123,140,255,.05);
      transform: translateY(-2px);
    }
    .factor .ico {
      width: 34px; height: 34px; border-radius: 10px; flex-shrink: 0;
      display: grid; place-items: center;
      background: linear-gradient(135deg, rgba(123,140,255,.22), rgba(178,123,255,.14));
      border: 1px solid rgba(255,255,255,0.12); color: var(--accent);
    }
    [data-theme="light"] .factor .ico { border-color: rgba(15,18,32,0.1); }
    .factor span { font-size: 14.5px; font-weight: 600; color: var(--text-0); line-height: 1.45; }

    .cmp-wrap {
      border-radius: 22px;
      border: 1px solid var(--line);
      background: linear-gradient(to bottom, rgba(255,255,255,0.025), rgba(255,255,255,0.008));
      overflow: hidden;
    }
    [data-theme="light"] .cmp-wrap { background: linear-gradient(to bottom, rgba(15,18,32,0.022), rgba(15,18,32,0.005)); }
    .cmp { width: 100%; border-collapse: separate; border-spacing: 0; font-size: 13.5px; min-width: 720px; }
    .cmp thead { background: rgba(255,255,255,0.04); }
    [data-theme="light"] .cmp thead { background: rgba(15,18,32,0.03); }
    .cmp th, .cmp td { padding: 14px 18px; text-align: left; border-bottom: 1px solid var(--line); }
    .cmp th {
      font-family: 'JetBrains Mono', monospace; font-size: 10.5px;
      letter-spacing: 0.14em; text-transform: uppercase; color: var(--text-2); font-weight: 500;
    }
    .cmp th .plan-h {
      font-family: 'Plus Jakarta Sans', sans-serif; font-size: 15px; font-weight: 700;
      color: var(--text-0); text-transform: none; letter-spacing: -0.2px;
    }
    .cmp th .plan-h.featured {
      background: linear-gradient(135deg, #7b8cff, #b27bff);
      -webkit-background-clip: text; background-clip: text; color: transparent;
    }
    .cmp th.featured-col, .cmp td.featured-col { background: rgba(123,140,255,0.06); }
    .cmp tbody tr:last-child td { border-bottom: none; }
    .cmp td:first-child { font-weight: 600; color: var(--text-0); }
    .cmp thead,
    .cmp tbody {
      backdrop-filter: blur(12px);
    }
    .v-yes { display: inline-flex; align-items: center; color: #4ade80; font-weight: 600; }
    .v-no { color: var(--text-2); opacity: .55; }
    .v-pill {
      display: inline-flex; padding: 3px 9px; border-radius: 999px;
      font-size: 11px; font-family: 'JetBrains Mono', monospace; letter-spacing: 0.05em;
    }
    .v-limited { background: rgba(251,191,36,.12); color: #fbbf24; border: 1px solid rgba(251,191,36,.3); }
    .v-basic, .v-standard { background: rgba(255,255,255,0.04); color: var(--text-1); border: 1px solid var(--line); }
    [data-theme="light"] .v-basic, [data-theme="light"] .v-standard { background: rgba(15,18,32,0.04); }
    .v-advanced {
      background: linear-gradient(135deg, rgba(123,140,255,.18), rgba(178,123,255,.12));
      color: var(--accent); border: 1px solid rgba(123,140,255,.3); font-weight: 600;
    }
    .v-hot {
      background: linear-gradient(135deg, #7b8cff, #b27bff); color: #fff; font-weight: 600;
    }

    .vp-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
    @media (max-width: 700px) { .vp-grid { grid-template-columns: 1fr; } }
    .vp-row {
      display: flex; align-items: center; gap: 14px;
      padding: 16px 18px; border-radius: 14px;
      border: 1px solid var(--line); background: rgba(255,255,255,0.02);
      transition: border-color .25s, background .25s, transform .2s;
      backdrop-filter: blur(12px);
    }
    [data-theme="light"] .vp-row { background: rgba(255,255,255,0.8); }
    .vp-row:hover { border-color: rgba(123,140,255,.35); background: rgba(123,140,255,.06); transform: translateX(3px); }
    .vp-row .check {
      width: 26px; height: 26px; border-radius: 8px; flex-shrink: 0;
      display: grid; place-items: center;
      background: linear-gradient(135deg, #7b8cff, #b27bff); color: #fff;
    }
    .vp-row .txt { font-size: 14px; font-weight: 600; color: var(--text-0); line-height: 1.5; }

    .req-card {
      position: relative; padding: 28px; border-radius: 22px;
      border: 1px solid var(--line); overflow: hidden;
      background:
        radial-gradient(500px 280px at 0% 0%, rgba(123,140,255,.2), transparent 60%),
        radial-gradient(500px 280px at 100% 100%, rgba(178,123,255,.18), transparent 60%),
        linear-gradient(to bottom, rgba(255,255,255,0.03), rgba(255,255,255,0.008));
      backdrop-filter: blur(12px);
    }
    [data-theme="light"] .req-card {
      background:
        radial-gradient(500px 280px at 0% 0%, rgba(123,140,255,.16), transparent 60%),
        radial-gradient(500px 280px at 100% 100%, rgba(178,123,255,.14), transparent 60%),
        linear-gradient(to bottom, rgba(15,18,32,0.022), rgba(15,18,32,0.005));
    }
    @media (max-width: 640px) { .req-card { padding: 26px 22px; } }
    .req-form { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
    .req-form .full { grid-column: 1 / -1; }
    @media (max-width: 640px) { .req-form { grid-template-columns: 1fr; } }
    .req-form label {
      display: flex; flex-direction: column; gap: 6px;
      font-size: 11px; font-family: 'JetBrains Mono', monospace;
      letter-spacing: 0.08em; text-transform: uppercase; color: var(--text-2);
    }
    .req-form input, .req-form select, .req-form textarea {
      padding: 12px 14px; border-radius: 11px; border: 1px solid var(--line);
      background: rgba(255,255,255,0.03); color: var(--text-0);
      font-family: 'Inter', sans-serif; font-size: 14px;
      transition: border-color .2s, background .2s, box-shadow .25s;
    }
    [data-theme="light"] .req-form input,
    [data-theme="light"] .req-form select,
    [data-theme="light"] .req-form textarea { background: rgba(15,18,32,0.025); }
    .req-form textarea { min-height: 100px; resize: vertical; }
    .req-form input:focus, .req-form select:focus, .req-form textarea:focus {
      outline: none; border-color: rgba(123,140,255,.55);
      background: rgba(123,140,255,.06);
      box-shadow: 0 14px 32px -16px rgba(123,140,255,.35);
    }
