.flex-grid{align-items:start}
.flex-left-packages{margin-top:16px;padding:22px;border:1px solid #dfe6f4;border-radius:28px;background:var(--surface,#fff);box-shadow:0 18px 40px rgba(20,32,65,.055);min-width:0}
.flex-left-packages-head{display:flex;align-items:start;justify-content:space-between;gap:12px}
.flex-left-packages-head h2{font-size:clamp(20px,2vw,27px);letter-spacing:-.035em;margin:5px 0 0;line-height:1.15;color:#1d2840}
.flex-package-count{white-space:nowrap;background:#eef2ff;color:#3550d2;border-radius:999px;padding:10px 14px;font-size:12px;font-weight:800}
.flex-left-packages>p{color:#64718a;font-size:15px;margin:10px 0 18px;line-height:1.45}

.flex-package-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.flex-package-tab{appearance:none;border:1px solid #dfe5f2;border-radius:24px;background:#fff;padding:18px;min-height:156px;display:flex;flex-direction:column;justify-content:space-between;text-align:left;cursor:pointer;position:relative;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease;box-shadow:0 8px 18px rgba(26,41,76,.035)}
.flex-package-tab::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(244,247,255,.9) 0%,rgba(255,255,255,0) 45%);pointer-events:none}
.flex-package-tab:hover,.flex-package-tab:focus-visible{transform:translateY(-3px);border-color:#cbd6ec;box-shadow:0 16px 28px rgba(26,41,76,.09);outline:none;background:#fff}
.flex-package-tab-top,.flex-package-tab-bottom{position:relative;z-index:1}
.flex-package-tab-top strong{display:block;font-size:15px;line-height:1.24;letter-spacing:-.015em;color:#22304a;font-weight:800}
.flex-package-tab-top small{display:block;margin-top:7px;color:#7a869f;font-size:12px;font-weight:600}
.flex-package-tab-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.flex-package-tab-price{display:flex;flex-direction:column;gap:4px;min-width:0}
.flex-package-tab-price label{font-size:11px;letter-spacing:0;color:#8b97ad;font-weight:700;text-transform:none}
.flex-package-tab-price b{font-size:20px;line-height:1.1;letter-spacing:-.03em;color:#1f2d4b;font-weight:900;white-space:nowrap}
.flex-package-tab-badge{display:inline-flex;align-items:center;justify-content:center;align-self:flex-end;padding:8px 10px;border-radius:999px;background:#f3f6ff;color:#4460df;font-size:11px;font-weight:800;line-height:1.2;box-shadow:inset 0 0 0 1px rgba(79,97,211,.07);max-width:126px;text-align:center}

.flex-package-modal[hidden]{display:none!important}
.flex-package-modal{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:22px}.flex-package-modal-backdrop{position:absolute;inset:0;background:rgba(8,15,29,.62);backdrop-filter:blur(5px)}.flex-package-modal-dialog{position:relative;z-index:1;width:min(980px,96vw);max-height:min(820px,92vh);overflow:auto;background:#fff;border:1px solid #dbe3f2;border-radius:28px;box-shadow:0 30px 90px rgba(8,18,40,.28);padding:24px}.flex-package-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid #e5eaf4}.flex-package-modal-head h3{margin:5px 0 4px;font-size:clamp(22px,3vw,34px);letter-spacing:-.035em;color:#1e2a43}.flex-package-modal-head p{margin:0;color:#69758e;font-size:14px}.flex-package-modal-x{width:44px;height:44px;border-radius:14px;border:1px solid #d8e0ef;background:#f5f7fc;color:#26334a;font-size:29px;line-height:1;cursor:pointer;flex:none}.flex-package-modal-panel{padding-top:20px}.flex-package-modal-section-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.flex-package-modal-section-head strong{font-size:15px;color:#22304a}.flex-package-modal-section-head small{font-size:12px;color:#6f7d95;background:#f2f5fb;padding:6px 9px;border-radius:999px}.flex-package-modal-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.flex-package-modal-item{display:flex;align-items:center;gap:11px;min-height:86px;border:1px solid #dfe6f3;border-radius:18px;padding:12px;background:#fff;text-decoration:none;color:#1d2940;transition:border-color .17s,box-shadow .17s,transform .17s}.flex-package-modal-item:hover,.flex-package-modal-item:focus-visible{border-color:var(--flex-brand,#4658e8);box-shadow:0 10px 25px rgba(32,49,94,.11);transform:translateY(-2px);outline:none}.flex-package-modal-icon{width:44px;height:44px;border-radius:12px;background:#f5f7fc;display:grid;place-items:center;overflow:hidden;flex:none}.flex-package-modal-brand,.flex-package-modal-brand img{width:28px;height:28px;object-fit:contain}.flex-package-modal-copy{min-width:0;flex:1}.flex-package-modal-copy b,.flex-package-modal-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.flex-package-modal-copy b{font-size:14px}.flex-package-modal-copy small{margin-top:4px;color:#6c7890;font-size:12px}.flex-package-modal-price{display:flex;flex-direction:column;align-items:flex-end;gap:3px;white-space:nowrap}.flex-package-modal-price b{color:#2f49d8;font-size:14px}.flex-package-modal-price small{font-size:11px;color:#6376b8;font-weight:800}.flex-package-modal-arrow{font-size:19px;color:#6274ad;flex:none}.flex-package-modal-empty{padding:18px;border:1px dashed #d8e0ef;border-radius:18px;background:#f8faff;display:flex;flex-direction:column;gap:5px}.flex-package-modal-empty b{font-size:14px;color:#23314a}.flex-package-modal-empty span{font-size:12px;color:#6c7890}

.flex-package-custom-choice{margin-top:18px;padding-top:18px;border-top:1px solid #e5eaf4;display:grid;gap:16px}.flex-package-custom-head strong,.flex-package-custom-head small{display:block}.flex-package-custom-head strong{font-size:15px;color:#22304a}.flex-package-custom-head small{font-size:12px;color:#6b7890;margin-top:5px}.flex-package-custom-form{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.95fr);gap:14px;align-items:start}.flex-package-stepper{display:grid;grid-template-columns:50px minmax(88px,120px) 50px;align-items:center;border:1px solid #d8e1ee;border-radius:16px;background:#fff;overflow:hidden;min-height:62px}.flex-package-stepper button{border:0;background:#eff9f5;color:#22caa1;font-size:26px;font-weight:900;height:100%;cursor:pointer;transition:background .16s,color .16s}.flex-package-stepper button:hover{background:#def7ee}.flex-package-stepper-center{display:grid;place-items:center;text-align:center;padding:8px}.flex-package-stepper-center b{display:none}.flex-package-stepper-center small{display:none}.flex-package-qty-manual{width:100%;height:44px;border:0;background:transparent;text-align:center;font-size:20px;font-weight:900;letter-spacing:-.02em;color:#1fc9a0;outline:none;padding:0 8px}.flex-package-range-wrap{display:grid;gap:8px}.flex-package-range-wrap input[type=range]{appearance:none;-webkit-appearance:none;width:100%;height:6px;border-radius:999px;background:#d8deef;outline:none}.flex-package-range-wrap input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#1fc9a0;border:3px solid #fff;box-shadow:0 4px 10px rgba(24,43,85,.16);cursor:pointer}.flex-package-range-wrap input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#1fc9a0;border:3px solid #fff;box-shadow:0 4px 10px rgba(24,43,85,.16);cursor:pointer}.flex-package-range-meta{display:flex;justify-content:space-between;font-size:12px;color:#6d7992}.flex-package-live-box{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid #e1e8f3;border-radius:16px;background:#f8fbff;padding:12px 14px}.flex-package-live-box small{display:block;font-size:12px;color:#6d7992}.flex-package-live-box strong{display:block;margin-top:4px;font-size:18px;color:#22304a;letter-spacing:-.02em}.flex-package-live-box span{font-size:12px;font-weight:800;color:#28b290;background:#ebfaf4;padding:8px 12px;border-radius:999px;text-align:center}.flex-package-continue{min-height:48px;grid-column:2;align-self:end}body.has-package-modal{overflow:hidden}

.flex-below-guide{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-top:16px;align-items:start}.flex-below-guide .flex-editorial-card{margin:0;max-width:none;height:100%}.flex-below-guide .v153-order-benefits{align-self:center;margin:0}.flex-below-guide .flex-related{grid-column:1/-1;margin:0;max-width:none}

html[data-theme=dark] .flex-left-packages{background:#152137;border-color:#36445d;color:#edf3ff}html[data-theme=dark] .flex-left-packages-head h2{color:#edf3ff}html[data-theme=dark] .flex-left-packages>p{color:#b9c8dd}html[data-theme=dark] .flex-package-count{background:#29365e;color:#c7d2ff}
html[data-theme=dark] .flex-package-tab{background:#18243a;border-color:#35445d;box-shadow:none}html[data-theme=dark] .flex-package-tab::before{background:linear-gradient(180deg,rgba(255,255,255,.025) 0%,rgba(255,255,255,0) 42%)}html[data-theme=dark] .flex-package-tab:hover,html[data-theme=dark] .flex-package-tab:focus-visible{background:#1c2a44;border-color:#6576d9;box-shadow:0 16px 34px rgba(0,0,0,.3)}html[data-theme=dark] .flex-package-tab-top strong{color:#eef4ff}html[data-theme=dark] .flex-package-tab-top small{color:#b9c7dd}html[data-theme=dark] .flex-package-tab-price label{color:#97a7c5}html[data-theme=dark] .flex-package-tab-price b{color:#eef4ff}html[data-theme=dark] .flex-package-tab-badge{background:#26345a;color:#d5ddff}
html[data-theme=dark] .flex-package-modal-backdrop{background:rgba(4,8,16,.74)}html[data-theme=dark] .flex-package-modal-dialog{background:#101a2c;border-color:#34435d;box-shadow:0 30px 90px rgba(0,0,0,.58)}html[data-theme=dark] .flex-package-modal-head{border-color:#2d3a50}html[data-theme=dark] .flex-package-modal-head h3,html[data-theme=dark] .flex-package-modal-section-head strong,html[data-theme=dark] .flex-package-custom-head strong{color:#eef4ff}html[data-theme=dark] .flex-package-modal-head p,html[data-theme=dark] .flex-package-custom-head small{color:#b5c4da}html[data-theme=dark] .flex-package-modal-x{background:#1d2a42;border-color:#3c4b64;color:#eef4ff}html[data-theme=dark] .flex-package-modal-section-head small{background:#1b2941;color:#c3d0e5}html[data-theme=dark] .flex-package-modal-item{background:#152137;border-color:#34435d;color:#eef4ff}html[data-theme=dark] .flex-package-modal-icon{background:#22304a}html[data-theme=dark] .flex-package-modal-copy small{color:#b6c5db}html[data-theme=dark] .flex-package-modal-price b{color:#93a8ff}html[data-theme=dark] .flex-package-modal-price small{color:#cbd5ff}html[data-theme=dark] .flex-package-modal-empty{background:#152137;border-color:#3b4a61}html[data-theme=dark] .flex-package-modal-empty b{color:#eef4ff}html[data-theme=dark] .flex-package-modal-empty span{color:#b6c5db}html[data-theme=dark] .flex-package-custom-choice{border-color:#2d3a50}html[data-theme=dark] .flex-package-stepper{background:#142137;border-color:#34445c}html[data-theme=dark] .flex-package-stepper button{background:#1a3141;color:#34d8b0}html[data-theme=dark] .flex-package-stepper button:hover{background:#214057}html[data-theme=dark] .flex-package-qty-manual{color:#38dcb4}html[data-theme=dark] .flex-package-range-meta{color:#95a3bc}html[data-theme=dark] .flex-package-range-wrap input[type=range]{background:#304157}html[data-theme=dark] .flex-package-live-box{background:#152137;border-color:#36455d}html[data-theme=dark] .flex-package-live-box strong{color:#eef4ff}html[data-theme=dark] .flex-package-live-box small{color:#b6c5db}html[data-theme=dark] .flex-package-live-box span{background:#1d3b3b;color:#6ce8c7}

@media(max-width:1100px){.flex-package-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){.flex-below-guide{grid-template-columns:1fr}.flex-order-card{max-width:740px;margin:0 auto}.flex-package-custom-form{grid-template-columns:1fr}.flex-package-continue{grid-column:auto}}
@media(max-width:680px){.flex-package-modal{padding:10px;align-items:end}.flex-package-modal-dialog{width:100%;max-height:90vh;border-radius:24px 24px 0 0;padding:18px}.flex-package-modal-list{grid-template-columns:1fr}.flex-package-live-box{flex-direction:column;align-items:flex-start}}
@media(max-width:560px){.flex-left-packages{padding:16px;margin-top:12px}.flex-left-packages-head{flex-direction:column;align-items:flex-start}.flex-left-packages-head h2{font-size:18px}.flex-package-count{font-size:10px}.flex-package-tabs{grid-template-columns:1fr}.flex-package-tab{min-height:140px;padding:16px;border-radius:20px}.flex-package-tab-bottom{flex-direction:column;align-items:flex-start}.flex-package-tab-top strong{font-size:16px}.flex-package-tab-price b{font-size:22px}.flex-package-tab-badge{max-width:none;font-size:11px}.flex-package-stepper{grid-template-columns:44px 1fr 44px;min-height:56px}.flex-package-qty-manual{font-size:18px;height:40px}}

/* V196 — professional package cards + full-width manual quantity input */
.flex-package-tabs{gap:12px}
.flex-package-tab{min-height:132px;padding:16px 17px;border-radius:20px;background:linear-gradient(180deg,#fff 0%,#f9fbff 100%);box-shadow:0 6px 16px rgba(26,41,76,.035)}
.flex-package-tab::before{background:linear-gradient(145deg,rgba(78,95,215,.045),transparent 44%)}
.flex-package-tab:hover,.flex-package-tab:focus-visible{transform:translateY(-3px);border-color:#b9c7eb;box-shadow:0 14px 28px rgba(32,48,90,.10)}
.flex-package-tab-head{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.flex-package-tab-head>div{min-width:0}
.flex-package-tab-head strong{display:block;color:#22304a;font-size:15px;font-weight:850;line-height:1.2;letter-spacing:-.015em}
.flex-package-tab-head small{display:block;color:#7b879e;font-size:11.5px;font-weight:650;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.flex-package-tab-discount{flex:none;display:inline-flex;align-items:center;justify-content:center;min-width:46px;padding:6px 9px;border-radius:999px;background:#edf2ff;color:#3f58d8;font-size:11px;font-weight:900;line-height:1;box-shadow:inset 0 0 0 1px rgba(66,87,207,.08)}
.flex-package-tab-price-row{position:relative;z-index:1;display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:18px;padding-top:12px;border-top:1px solid #edf0f6}
.flex-package-tab-price-row span{font-size:11px;color:#8995a9;font-weight:700;white-space:nowrap}
.flex-package-tab-price-row b{font-size:19px;color:#1f2c48;font-weight:900;letter-spacing:-.025em;white-space:nowrap}
.flex-package-tab-top,.flex-package-tab-bottom{display:none!important}

/* Restore the wide counter: the number itself is editable, not a tiny browser spinner. */
.flex-package-stepper{display:grid;grid-template-columns:62px minmax(0,1fr) 62px;width:100%;min-height:76px;border-radius:18px}
.flex-package-stepper button{font-size:30px}
.flex-package-stepper-center{width:100%;padding:0 14px}
.flex-package-qty-manual{display:block;width:100%!important;min-width:0;height:74px!important;border:0!important;background:transparent!important;text-align:center!important;font-size:clamp(24px,3vw,34px)!important;font-weight:900!important;letter-spacing:-.03em!important;color:#1fc9a0!important;outline:none!important;padding:0 12px!important;appearance:textfield;-moz-appearance:textfield}
.flex-package-qty-manual::-webkit-inner-spin-button,.flex-package-qty-manual::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.flex-package-custom-form{grid-template-columns:1fr;gap:13px}
.flex-package-range-wrap{width:100%}
.flex-package-live-box{min-height:66px}
.flex-package-continue{grid-column:auto;width:100%}

html[data-theme=dark] .flex-package-tab-head strong{color:#eef4ff}
html[data-theme=dark] .flex-package-tab-head small{color:#b9c7dd}
html[data-theme=dark] .flex-package-tab-discount{background:#27365a;color:#d8e0ff}
html[data-theme=dark] .flex-package-tab-price-row{border-color:#2d3b52}
html[data-theme=dark] .flex-package-tab-price-row span{color:#9aa9c3}
html[data-theme=dark] .flex-package-tab-price-row b{color:#eef4ff}
html[data-theme=dark] .flex-package-qty-manual{color:#38dcb4!important}

@media(max-width:1100px){.flex-package-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-package-tab{min-height:126px}}
@media(max-width:680px){.flex-package-stepper{grid-template-columns:52px minmax(0,1fr) 52px;min-height:68px}.flex-package-qty-manual{height:66px!important;font-size:26px!important}}
@media(max-width:560px){.flex-package-tabs{grid-template-columns:1fr}.flex-package-tab{min-height:116px;padding:15px}.flex-package-tab-price-row{margin-top:14px}.flex-package-tab-price-row b{font-size:20px}.flex-package-stepper{grid-template-columns:48px minmax(0,1fr) 48px}.flex-package-qty-manual{font-size:24px!important}}

/* V197 — clean hierarchy for ready package cards */
.flex-package-tabs{gap:14px!important}
.flex-package-tab{
  min-width:0!important;
  min-height:150px!important;
  padding:18px!important;
  border-radius:22px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  gap:20px!important;
  overflow:hidden!important;
  background:#fff!important;
}
.flex-package-tab::before{background:linear-gradient(180deg,rgba(246,248,255,.85),rgba(255,255,255,0) 55%)!important}
.flex-package-tab-head{
  position:relative!important;
  z-index:1!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:start!important;
  gap:12px!important;
  min-width:0!important;
}
.flex-package-tab-head strong{
  display:block!important;
  min-width:0!important;
  margin:0!important;
  font-size:17px!important;
  line-height:1.18!important;
  font-weight:850!important;
  letter-spacing:-.025em!important;
  color:#22304a!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  word-break:normal!important;
}
.flex-package-tab-head small{display:none!important}
.flex-package-tab-discount{
  position:static!important;
  flex:none!important;
  min-width:48px!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  background:#eef2ff!important;
  color:#3f58d8!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
.flex-package-tab-price-row{display:none!important}
.flex-package-tab-price-block{
  position:relative!important;
  z-index:1!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:4px!important;
  min-width:0!important;
  padding-top:14px!important;
  border-top:1px solid #edf0f6!important;
}
.flex-package-tab-price-block span{
  font-size:11px!important;
  line-height:1.2!important;
  color:#8995a9!important;
  font-weight:700!important;
  white-space:nowrap!important;
}
.flex-package-tab-price-block b{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  font-size:clamp(19px,1.7vw,24px)!important;
  line-height:1.1!important;
  color:#1f2c48!important;
  font-weight:900!important;
  letter-spacing:-.035em!important;
  font-variant-numeric:tabular-nums!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.flex-package-tab:hover,.flex-package-tab:focus-visible{
  transform:translateY(-3px)!important;
  border-color:#bcc9e8!important;
  box-shadow:0 14px 28px rgba(32,48,90,.10)!important;
}
html[data-theme=dark] .flex-package-tab{background:#18243a!important;border-color:#35445d!important}
html[data-theme=dark] .flex-package-tab::before{background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,0) 55%)!important}
html[data-theme=dark] .flex-package-tab-head strong{color:#eef4ff!important}
html[data-theme=dark] .flex-package-tab-discount{background:#27365a!important;color:#d8e0ff!important}
html[data-theme=dark] .flex-package-tab-price-block{border-color:#2d3b52!important}
html[data-theme=dark] .flex-package-tab-price-block span{color:#9aa9c3!important}
html[data-theme=dark] .flex-package-tab-price-block b{color:#eef4ff!important}
@media(max-width:1100px){.flex-package-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){
  .flex-package-tabs{grid-template-columns:1fr!important}
  .flex-package-tab{min-height:128px!important;padding:16px!important;gap:16px!important}
  .flex-package-tab-head strong{font-size:16px!important}
  .flex-package-tab-price-block b{font-size:22px!important}
}

/* V198 — desktop hierarchy cleanup; mobile behavior stays unchanged */
.flex-package-modal-discount{display:inline-flex;margin-top:6px;padding:4px 7px;border-radius:999px;background:#eef3ff;color:#4059d8;font-size:10px;font-weight:700;font-style:normal;line-height:1}
html[data-theme=dark] .flex-package-modal-discount{background:#26345a;color:#d7e0ff}

@media (min-width:981px){
  .flex-left-packages{padding:20px}
  .flex-package-tabs{gap:10px}
  .flex-package-tab{min-height:118px!important;padding:14px 15px!important;border-radius:18px!important}
  .flex-package-tab-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:8px!important;min-width:0!important}
  .flex-package-tab-head strong{font-size:14px!important;line-height:1.25!important;font-weight:700!important;letter-spacing:-.01em!important;color:#22304a!important;min-width:0!important;max-width:calc(100% - 48px)!important}
  .flex-package-tab-discount{position:static!important;flex:none!important;padding:5px 8px!important;font-size:11px!important;font-weight:700!important;border-radius:999px!important}
  .flex-package-tab-price-block{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:10px!important;margin-top:18px!important;padding-top:10px!important;border-top:1px solid #edf0f6!important}
  .flex-package-tab-price-block span{font-size:11px!important;font-weight:600!important;color:#8b97ad!important;white-space:nowrap!important}
  .flex-package-tab-price-block b{font-size:17px!important;line-height:1!important;font-weight:700!important;letter-spacing:-.015em!important;color:#1f2d4b!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important}
  .flex-package-tab:hover,.flex-package-tab:focus-visible{transform:translateY(-2px)!important;box-shadow:0 12px 24px rgba(26,41,76,.08)!important}
  html[data-theme=dark] .flex-package-tab-head strong{color:#eef4ff!important}
  html[data-theme=dark] .flex-package-tab-price-block{border-color:#2d3b52!important}
  html[data-theme=dark] .flex-package-tab-price-block span{color:#9aa9c3!important}
  html[data-theme=dark] .flex-package-tab-price-block b{color:#eef4ff!important}
}


/* V199 — desktop package cards cleanup */
@media (min-width: 561px){
  .flex-package-tabs{gap:18px!important}
  .flex-package-tab{
    min-height:182px!important;
    padding:20px 18px 18px!important;
    border-radius:24px!important;
    gap:18px!important;
  }
  .flex-package-tab-head{
    display:grid!important;
    grid-template-columns:1fr!important;
    justify-items:center!important;
    text-align:center!important;
    gap:12px!important;
  }
  .flex-package-tab-head strong{
    font-size:14px!important;
    line-height:1.22!important;
    font-weight:700!important;
    letter-spacing:-.01em!important;
    text-align:center!important;
    max-width:100%!important;
    min-height:2.5em!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .flex-package-tab-discount{
    position:static!important;
    margin:0 auto!important;
    min-width:86px!important;
    padding:8px 14px!important;
    font-size:13px!important;
    font-weight:800!important;
  }
  .flex-package-tab-price-row{
    margin-top:auto!important;
    padding-top:14px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    text-align:center!important;
  }
  .flex-package-tab-price-row span{
    font-size:12px!important;
    font-weight:700!important;
    color:#8491a8!important;
  }
  .flex-package-tab-price-row b{
    font-size:18px!important;
    font-weight:800!important;
    line-height:1.1!important;
    white-space:nowrap!important;
  }
}

html[data-theme=dark] .flex-package-tab-price-row span{color:#a6b2c9!important}

/* V200 — responsive modal package pages, no inner scrolling */
.flex-package-modal{overflow:hidden}
.flex-package-modal-dialog{
  width:min(980px,calc(100vw - 32px))!important;
  max-height:calc(100vh - 32px)!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
}
.flex-package-modal-head{flex:none}
.flex-package-modal-panel{
  min-height:0;
  display:flex;
  flex-direction:column;
  gap:14px;
  overflow:hidden;
}
.flex-package-modal-panel[hidden]{display:none!important}
.flex-package-modal-list{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  min-height:0;
}
.flex-package-modal-item[hidden]{display:none!important}
.flex-package-modal-item{min-height:76px!important}
.flex-package-custom-choice{
  flex:none;
  margin-top:4px!important;
  padding-top:14px!important;
}
.flex-package-page-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:34px;
  flex:none;
}
.flex-package-page-nav[hidden]{display:none!important}
.flex-package-page-nav>button{
  width:32px;
  height:32px;
  border:1px solid #dbe3f0;
  border-radius:10px;
  background:#fff;
  color:#31415f;
  font-size:20px;
  line-height:1;
  cursor:pointer;
}
.flex-package-page-nav>button:disabled{opacity:.35;cursor:default}
.flex-package-page-nav>span{font-size:11px;color:#7b879c;font-weight:700;min-width:34px;text-align:center}
.flex-package-page-dots{display:flex;align-items:center;gap:6px}
.flex-package-page-dot{
  width:7px!important;
  height:7px!important;
  min-width:7px!important;
  border:0!important;
  border-radius:999px!important;
  padding:0!important;
  background:#cfd7e7!important;
}
.flex-package-page-dot.is-active{width:18px!important;background:#4d62df!important}

html[data-theme=dark] .flex-package-page-nav>button{background:#18243a;border-color:#35445d;color:#eef4ff}
html[data-theme=dark] .flex-package-page-dot{background:#40506a!important}
html[data-theme=dark] .flex-package-page-dot.is-active{background:#8798ff!important}

@media(max-height:800px) and (min-width:681px){
  .flex-package-modal-dialog{padding:18px!important}
  .flex-package-modal-head{padding-bottom:12px!important}
  .flex-package-modal-head h3{font-size:24px!important}
  .flex-package-modal-head p{font-size:12px!important}
  .flex-package-modal-panel{padding-top:12px!important;gap:10px!important}
  .flex-package-modal-item{min-height:68px!important;padding:9px 10px!important}
  .flex-package-modal-icon{width:38px!important;height:38px!important}
  .flex-package-modal-brand,.flex-package-modal-brand img{width:24px!important;height:24px!important}
  .flex-package-custom-choice{gap:10px!important;padding-top:10px!important}
  .flex-package-custom-head small{display:none!important}
  .flex-package-stepper{min-height:56px!important}
  .flex-package-qty-manual{height:54px!important;font-size:24px!important}
  .flex-package-live-box{min-height:54px!important;padding:9px 12px!important}
  .flex-package-continue{min-height:42px!important}
}

@media(max-width:900px){
  .flex-package-modal-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:680px){
  .flex-package-modal{padding:0!important;align-items:end!important}
  .flex-package-modal-dialog{
    width:100%!important;
    max-width:none!important;
    max-height:94vh!important;
    border-radius:24px 24px 0 0!important;
    padding:16px!important;
  }
  .flex-package-modal-list{grid-template-columns:1fr!important}
  .flex-package-modal-item{min-height:68px!important}
  .flex-package-modal-head h3{font-size:22px!important}
  .flex-package-modal-head p{font-size:12px!important}
  .flex-package-custom-head small{display:none!important}
  .flex-package-page-nav{margin-top:0}
}
@media(max-width:420px){
  .flex-package-modal-dialog{padding:14px!important;max-height:96vh!important}
  .flex-package-modal-item{min-height:62px!important;padding:9px!important}
  .flex-package-modal-copy b{font-size:12px!important}
  .flex-package-modal-copy small,.flex-package-modal-discount{font-size:10px!important}
  .flex-package-modal-price b{font-size:12px!important}
  .flex-package-custom-choice{padding-top:10px!important;gap:10px!important}
}

/* V203 — dense responsive package marketplace modal */
.flex-package-modal-dialog{
  width:min(1280px,96vw)!important;
  max-height:94vh!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  padding:22px!important;
}
.flex-package-modal-head{flex:none!important;padding-bottom:14px!important}
.flex-package-modal-head h3{font-size:clamp(24px,2.3vw,34px)!important}
.flex-package-modal-panel{
  padding-top:16px!important;
  gap:12px!important;
  min-height:0!important;
  overflow:hidden!important;
}
.flex-package-modal-section-head{margin-bottom:2px!important;flex:none!important}
.flex-package-modal-list{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  min-height:0!important;
  align-content:start!important;
}
.flex-package-modal-item{
  position:relative!important;
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:12px!important;
  min-height:84px!important;
  padding:12px 14px!important;
  border-radius:15px!important;
  border:1px solid #e0e6f1!important;
  background:#fff!important;
  box-shadow:0 7px 18px rgba(26,41,76,.035)!important;
  transform:none!important;
  overflow:visible!important;
}
.flex-package-modal-item:hover,.flex-package-modal-item:focus-visible{
  border-color:#65d9bc!important;
  box-shadow:0 10px 22px rgba(31,182,145,.10)!important;
  background:#fbfffd!important;
  transform:translateY(-1px)!important;
}
.flex-package-select-mark{
  width:34px;height:34px;border-radius:9px;background:#eef1f7;
  display:grid;place-items:center;flex:none;
  transition:.16s ease;
}
.flex-package-select-mark i{font-style:normal;color:transparent;font-size:15px;font-weight:900}
.flex-package-modal-item:hover .flex-package-select-mark,.flex-package-modal-item:focus-visible .flex-package-select-mark{background:#22cfa5}
.flex-package-modal-item:hover .flex-package-select-mark i,.flex-package-modal-item:focus-visible .flex-package-select-mark i{color:#fff}
.flex-package-modal-copy{min-width:0!important;display:block!important}
.flex-package-modal-copy b{font-size:16px!important;font-weight:800!important;line-height:1.1!important;color:#263149!important;white-space:nowrap!important}
.flex-package-modal-copy small{font-size:11px!important;color:#8792a8!important;margin-top:5px!important;white-space:nowrap!important}
.flex-package-modal-price{
  min-width:112px!important;
  padding:9px 10px!important;
  border-radius:11px!important;
  background:#eefbf7!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:5px!important;
  white-space:nowrap!important;
}
.flex-package-modal-price b{font-size:14px!important;color:#20c9a1!important;font-weight:900!important;line-height:1.05!important}
.flex-package-modal-discount{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:24px!important;
  padding:4px 8px!important;
  border:1px solid #7ae3c9!important;
  border-radius:999px!important;
  background:#f3fffb!important;
  color:#1fbf99!important;
  font-size:10px!important;
  font-style:normal!important;
  font-weight:800!important;
  line-height:1!important;
  margin:0!important;
}
.flex-package-modal-arrow,.flex-package-modal-icon{display:none!important}
.flex-package-favorite{
  position:absolute!important;
  top:-10px!important;
  left:14px!important;
  z-index:2!important;
  padding:4px 10px!important;
  border-radius:999px!important;
  background:#ff7a2f!important;
  color:#fff!important;
  font-size:9px!important;
  line-height:1.1!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.02em!important;
  box-shadow:0 5px 12px rgba(255,122,47,.18)!important;
}
.flex-package-modal-item.is-featured{border-color:#65d9bc!important}
.flex-package-page-nav{margin:0!important;min-height:32px!important;flex:none!important}
.flex-package-custom-choice{
  flex:none!important;
  margin-top:0!important;
  padding-top:14px!important;
  border-top:1px solid #e6ebf3!important;
  gap:12px!important;
  background:transparent!important;
}
.flex-package-custom-head{display:flex!important;align-items:end!important;justify-content:space-between!important;gap:16px!important}
.flex-package-custom-head small{max-width:520px!important;text-align:right!important}
.flex-package-custom-form{gap:10px!important}
.flex-package-stepper{min-height:58px!important}
.flex-package-qty-manual{height:56px!important;font-size:26px!important}
.flex-package-live-box{min-height:58px!important;padding:10px 12px!important}
.flex-package-continue{min-height:44px!important}

html[data-theme=dark] .flex-package-modal-item{background:#152137!important;border-color:#34435d!important;box-shadow:none!important}
html[data-theme=dark] .flex-package-modal-item:hover,html[data-theme=dark] .flex-package-modal-item:focus-visible{background:#18283e!important;border-color:#46cfaa!important}
html[data-theme=dark] .flex-package-select-mark{background:#243149}
html[data-theme=dark] .flex-package-modal-copy b{color:#eef4ff!important}
html[data-theme=dark] .flex-package-modal-copy small{color:#aebbd0!important}
html[data-theme=dark] .flex-package-modal-price{background:#17352f!important}
html[data-theme=dark] .flex-package-modal-price b{color:#52e2bc!important}
html[data-theme=dark] .flex-package-modal-discount{background:#163b32!important;border-color:#367c6a!important;color:#6be4c4!important}
html[data-theme=dark] .flex-package-custom-choice{border-color:#2d3a50!important}

@media(max-width:1180px){
  .flex-package-modal-dialog{width:min(980px,96vw)!important}
  .flex-package-modal-list{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:900px){
  .flex-package-modal-dialog{width:min(760px,96vw)!important}
  .flex-package-modal-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .flex-package-custom-head{display:block!important}
  .flex-package-custom-head small{max-width:none!important;text-align:left!important}
}
@media(max-width:680px){
  .flex-package-modal-dialog{overflow:hidden!important;padding:14px!important}
  .flex-package-modal-list{grid-template-columns:1fr!important;gap:9px!important}
  .flex-package-modal-item{min-height:70px!important;padding:10px 11px!important;grid-template-columns:32px minmax(0,1fr) auto!important;gap:9px!important}
  .flex-package-select-mark{width:30px;height:30px;border-radius:8px}
  .flex-package-modal-copy b{font-size:14px!important}
  .flex-package-modal-price{min-width:102px!important;padding:8px!important}
  .flex-package-modal-price b{font-size:13px!important}
  .flex-package-custom-choice{padding-top:10px!important}
}
@media(max-height:780px) and (min-width:681px){
  .flex-package-modal-dialog{padding:16px!important}
  .flex-package-modal-head{padding-bottom:10px!important}
  .flex-package-modal-panel{padding-top:10px!important;gap:8px!important}
  .flex-package-modal-item{min-height:68px!important;padding:9px 11px!important}
  .flex-package-modal-copy b{font-size:14px!important}
  .flex-package-modal-price{padding:7px 9px!important}
  .flex-package-custom-choice{padding-top:9px!important;gap:8px!important}
  .flex-package-custom-head small{display:none!important}
  .flex-package-stepper{min-height:50px!important}
  .flex-package-qty-manual{height:48px!important;font-size:22px!important}
  .flex-package-live-box{min-height:50px!important;padding:8px 10px!important}
  .flex-package-continue{min-height:40px!important}
}


/* V204 — exactly 16 packages, one-page 4x4 desktop grid, no pagination */
.flex-package-page-nav{display:none!important}
.flex-package-modal-dialog{
  width:min(1480px,97vw)!important;
  max-height:94vh!important;
  overflow-y:auto!important;
  padding:22px 24px!important;
}
.flex-package-modal-panel{padding-top:16px!important}
.flex-package-modal-section-head{margin-bottom:10px!important}
.flex-package-modal-list,
.flex-package-modal-list[data-package-grid]{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-auto-rows:minmax(82px,auto)!important;
  gap:10px 12px!important;
  overflow:visible!important;
  max-height:none!important;
  padding:0!important;
}
.flex-package-modal-item{
  min-height:82px!important;
  height:auto!important;
  padding:12px 14px!important;
  border-radius:15px!important;
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  overflow:visible!important;
}
.flex-package-select-mark{width:34px!important;height:34px!important;border-radius:9px!important}
.flex-package-modal-copy b{font-size:16px!important;font-weight:750!important;line-height:1.05!important}
.flex-package-modal-copy small{font-size:11.5px!important;margin-top:4px!important}
.flex-package-modal-price{min-width:116px!important;padding:9px 10px!important;border-radius:11px!important}
.flex-package-modal-price b{font-size:15px!important}
.flex-package-modal-discount{font-size:10.5px!important;padding:5px 8px!important}
.flex-package-favorite{top:-10px!important;left:16px!important;font-size:10px!important;padding:5px 9px!important}
.flex-package-custom-choice{
  margin-top:16px!important;
  padding-top:16px!important;
}

@media(max-width:1180px){
  .flex-package-modal-dialog{width:min(1080px,97vw)!important}
  .flex-package-modal-list,.flex-package-modal-list[data-package-grid]{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:900px){
  .flex-package-modal-dialog{width:min(760px,98vw)!important;max-height:94vh!important}
  .flex-package-modal-list,.flex-package-modal-list[data-package-grid]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:560px){
  .flex-package-modal{padding:0!important;align-items:end!important}
  .flex-package-modal-dialog{width:100%!important;max-height:94vh!important;border-radius:22px 22px 0 0!important;padding:16px!important}
  .flex-package-modal-list,.flex-package-modal-list[data-package-grid]{grid-template-columns:1fr!important;gap:8px!important}
  .flex-package-modal-item{min-height:72px!important;grid-template-columns:32px minmax(0,1fr) auto!important;padding:10px 12px!important}
  .flex-package-modal-price{min-width:108px!important;padding:8px 9px!important}
}

/* V205 — compact responsive package grid, reference-inspired, no overlap */
.flex-package-modal-panel{
  display:block!important;
  min-height:0!important;
}
.flex-package-modal-list,
.flex-package-modal-list[data-package-grid]{
  position:relative!important;
  z-index:1!important;
  margin:0!important;
}
.flex-package-custom-choice{
  position:relative!important;
  z-index:1!important;
  clear:both!important;
  margin-top:18px!important;
}

/* Desktop: 4x4 compact catalogue */
@media (min-width: 901px){
  .flex-package-modal-dialog{
    width:min(1500px,98vw)!important;
    max-height:96vh!important;
    overflow:auto!important;
    padding:20px 24px!important;
  }
  .flex-package-modal-list,
  .flex-package-modal-list[data-package-grid]{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:12px!important;
  }
  .flex-package-modal-item{
    min-height:96px!important;
    padding:12px 14px!important;
    display:grid!important;
    grid-template-columns:36px minmax(0,1fr) minmax(112px,auto)!important;
    gap:11px!important;
    border-radius:15px!important;
  }
  .flex-package-modal-copy b{font-size:16px!important}
  .flex-package-modal-price{min-width:118px!important}
}

/* Tablet */
@media (min-width: 681px) and (max-width: 900px){
  .flex-package-modal-dialog{
    width:min(820px,98vw)!important;
    max-height:95vh!important;
    overflow:auto!important;
    padding:18px!important;
  }
  .flex-package-modal-list,
  .flex-package-modal-list[data-package-grid]{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .flex-package-modal-item{
    min-height:118px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 32px!important;
    grid-template-rows:auto auto!important;
    gap:8px!important;
    padding:12px!important;
  }
  .flex-package-select-mark{grid-column:2;grid-row:1;justify-self:end!important}
  .flex-package-modal-copy{grid-column:1;grid-row:1!important}
  .flex-package-modal-price{grid-column:1/-1;grid-row:2!important;width:100%!important;min-width:0!important;align-items:center!important}
}

/* Mobile: 3-column cards like the supplied reference */
@media (max-width: 680px){
  .flex-package-modal{
    padding:0!important;
    align-items:stretch!important;
  }
  .flex-package-modal-dialog{
    width:100%!important;
    max-width:none!important;
    height:100dvh!important;
    max-height:100dvh!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    border-radius:0!important;
    padding:14px 12px 18px!important;
    overscroll-behavior:contain;
  }
  .flex-package-modal-head{
    padding:4px 2px 12px!important;
    margin-bottom:10px!important;
  }
  .flex-package-modal-head h3{font-size:23px!important}
  .flex-package-modal-head p{font-size:12px!important;line-height:1.4!important}
  .flex-package-modal-x{
    width:40px!important;height:40px!important;border-radius:12px!important;font-size:25px!important;
  }
  .flex-package-modal-panel{padding-top:8px!important}
  .flex-package-modal-section-head{
    margin-bottom:10px!important;
    padding:0 2px!important;
  }
  .flex-package-modal-section-head strong{font-size:14px!important}
  .flex-package-modal-section-head small{font-size:10px!important;padding:5px 8px!important}

  .flex-package-modal-list,
  .flex-package-modal-list[data-package-grid]{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-auto-rows:auto!important;
    gap:10px!important;
    overflow:visible!important;
    max-height:none!important;
  }
  .flex-package-modal-item{
    min-width:0!important;
    min-height:132px!important;
    height:auto!important;
    padding:11px!important;
    border-radius:14px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 30px!important;
    grid-template-rows:auto auto!important;
    gap:9px 6px!important;
    align-items:start!important;
    overflow:visible!important;
  }
  .flex-package-modal-item:hover,
  .flex-package-modal-item:focus-visible{transform:none!important}
  .flex-package-select-mark{
    grid-column:2!important;
    grid-row:1!important;
    width:30px!important;
    height:30px!important;
    justify-self:end!important;
    align-self:start!important;
    border-radius:8px!important;
  }
  .flex-package-modal-copy{
    grid-column:1!important;
    grid-row:1!important;
    min-width:0!important;
  }
  .flex-package-modal-copy b{
    font-size:15px!important;
    line-height:1.05!important;
    white-space:nowrap!important;
  }
  .flex-package-modal-copy small{
    font-size:10.5px!important;
    margin-top:4px!important;
    white-space:nowrap!important;
  }
  .flex-package-modal-price{
    grid-column:1/-1!important;
    grid-row:2!important;
    width:100%!important;
    min-width:0!important;
    padding:9px 6px!important;
    border-radius:10px!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
  }
  .flex-package-modal-price b{
    font-size:13px!important;
    text-align:center!important;
    white-space:nowrap!important;
  }
  .flex-package-modal-discount{
    font-size:9px!important;
    min-height:22px!important;
    padding:4px 7px!important;
    white-space:nowrap!important;
  }
  .flex-package-favorite{
    top:-7px!important;
    left:8px!important;
    font-size:8px!important;
    padding:4px 7px!important;
  }

  /* quantity block starts only after the full package grid */
  .flex-package-custom-choice{
    display:block!important;
    width:100%!important;
    margin-top:18px!important;
    padding-top:16px!important;
    border-top:1px solid #e5eaf4!important;
  }
  .flex-package-custom-head{display:block!important;margin-bottom:12px!important}
  .flex-package-custom-head strong{font-size:15px!important}
  .flex-package-custom-head small{font-size:11px!important;text-align:left!important;margin-top:4px!important}
  .flex-package-custom-form{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .flex-package-stepper{width:100%!important;grid-template-columns:48px minmax(0,1fr) 48px!important;min-height:58px!important}
  .flex-package-qty-manual{height:56px!important;font-size:22px!important}
  .flex-package-range-wrap{width:100%!important}
  .flex-package-live-box{width:100%!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;padding:10px 12px!important}
  .flex-package-live-box strong{font-size:16px!important}
  .flex-package-live-box span{font-size:10px!important;padding:7px 9px!important}
  .flex-package-continue{width:100%!important;min-height:46px!important}
}

/* Very narrow phones: keep 3 columns, tighten cards rather than collapsing to one column */
@media (max-width: 390px){
  .flex-package-modal-dialog{padding-left:8px!important;padding-right:8px!important}
  .flex-package-modal-list,
  .flex-package-modal-list[data-package-grid]{gap:7px!important}
  .flex-package-modal-item{min-height:122px!important;padding:8px!important;grid-template-columns:minmax(0,1fr) 25px!important}
  .flex-package-select-mark{width:25px!important;height:25px!important}
  .flex-package-modal-copy b{font-size:13px!important}
  .flex-package-modal-copy small{font-size:9.5px!important}
  .flex-package-modal-price{padding:7px 4px!important}
  .flex-package-modal-price b{font-size:11.5px!important}
  .flex-package-modal-discount{font-size:8px!important;padding:3px 5px!important}
}
