.sst-app{margin-top:28px}
.sst-rule-summary,.sst-ad-slot{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:16px 18px;box-shadow:var(--shadow);margin:18px 0;color:var(--text)}
.sst-hero-mini,.sst-panel,.sst-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:26px}
.sst-hero-mini{padding:26px;display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:20px}
.sst-hero-mini h2{margin:6px 0 8px;font-size:2rem;color:var(--text)}
.sst-hero-mini p{margin:0;max-width:780px}
.sst-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.sst-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.7fr);gap:18px}
.sst-trips-panel,.sst-panel{padding:22px}
.sst-panel h3{margin:0 0 6px;font-size:1.45rem;color:var(--text)}
.sst-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}
.sst-panel-head p{margin:0}
.sst-form{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;align-items:end;margin-bottom:18px}
.sst-form label{display:flex;flex-direction:column;gap:7px;color:var(--text);font-size:.94rem;font-weight:600}
.sst-form input,.sst-calendar-controls select{width:100%;border-radius:14px;border:1px solid var(--line);background:var(--surface-2);padding:12px 14px;color:var(--text);font:inherit}
.sst-form button{height:48px}
.sst-table-wrap{overflow:auto}
.sst-table{width:100%;border-collapse:collapse}
.sst-table th,.sst-table td{padding:14px 12px;border-bottom:1px solid var(--line);text-align:left;color:var(--text)}
.sst-table th{font-size:.9rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.sst-table td small{display:block;color:var(--muted)}
.sst-table .sst-delete{padding:9px 12px;border-radius:12px;border:1px solid var(--line);background:transparent;color:var(--danger);font-weight:600;cursor:pointer}
.sst-results{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.sst-card{padding:22px}
.sst-card span{display:block;color:var(--muted);font-weight:600;margin-bottom:10px}
.sst-card strong{font-size:2.45rem;line-height:1;color:var(--text);display:block;margin-bottom:10px}
.sst-card small{color:var(--muted)}
.sst-card.sst-green strong{color:var(--success)}
.sst-grid-two{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}
.sst-sim-form{grid-template-columns:1fr 1fr auto;margin-top:16px}
.sst-sim-result{margin-top:14px;padding:16px 18px;border-radius:16px;background:var(--surface-2);border:1px solid var(--line);color:var(--text)}
.sst-sim-result.success{border-color:rgba(18,146,107,.35);background:rgba(18,146,107,.08)}
.sst-sim-result.error{border-color:rgba(197,68,68,.35);background:rgba(197,68,68,.08)}
.sst-calendar-controls{display:flex;gap:8px}
.sst-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:12px}
.sst-cal-head,.sst-cal-day{padding:10px;border-radius:14px;text-align:center}
.sst-cal-head{font-size:.83rem;color:var(--muted);font-weight:700}
.sst-cal-day{min-height:68px;background:var(--surface-2);border:1px solid var(--line);display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:4px;color:var(--text);font-size:.95rem}
.sst-cal-day.outside{opacity:.45}
.sst-cal-day.trip{background:rgba(63,99,255,.1);border-color:rgba(63,99,255,.28)}
body.sst-dark .sst-cal-day.trip{background:rgba(106,130,255,.16)}
.sst-cal-day.today{outline:2px solid var(--primary)}
.sst-cal-day .num{font-weight:700}
.sst-cal-day .hint{font-size:.72rem;color:var(--muted)}
.sst-legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:12px;color:var(--muted)}
.sst-legend span{display:flex;align-items:center;gap:8px}
.sst-legend i{width:14px;height:14px;border-radius:4px;background:rgba(63,99,255,.12);border:1px solid rgba(63,99,255,.28);display:inline-block}
.sst-legend i.today{background:transparent;border:2px solid var(--primary)}
.sst-timeline{display:grid;gap:12px}
.sst-time-item{display:flex;justify-content:space-between;gap:12px;padding:14px 16px;background:var(--surface-2);border:1px solid var(--line);border-radius:16px}
.sst-time-item strong{font-size:1rem;color:var(--text)}
.sst-time-item span{color:var(--muted)}
.sst-disclaimer{margin-top:18px;padding:16px 18px;border-radius:18px;background:rgba(197,68,68,.07);border:1px solid rgba(197,68,68,.16);color:var(--text)}
body.sst-dark .sst-disclaimer{background:rgba(255,114,114,.08);border-color:rgba(255,114,114,.18)}
@media (max-width:1200px){
  .sst-layout,.sst-grid-two{grid-template-columns:1fr}
}
@media (max-width:900px){
  .sst-form,.sst-sim-form{grid-template-columns:1fr 1fr}
  .sst-hero-mini{display:block}
  .sst-actions{margin-top:14px;justify-content:flex-start}
}
@media (max-width:720px){
  .sst-form,.sst-sim-form,.sst-results{grid-template-columns:1fr}
  .sst-card strong{font-size:2rem}
  .sst-cal-day{min-height:56px;padding:8px}
}


/* v4.4 trip planner overview */
.sst-planner-overview{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin:24px 0}
.sst-planner-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:26px;padding:26px}
.sst-planner-card h2,.sst-planner-card h3{margin-top:0;color:var(--text)}
.sst-planner-card li{margin-bottom:8px}
@media(max-width:900px){.sst-planner-overview{grid-template-columns:1fr}}


/* v4.7 summary, ads and print */
.sst-grid-two{margin-top:18px}
.sst-timeline-panel{margin-top:28px}
.sst-report-panel{margin-top:18px}
.sst-report-grid{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr);gap:24px;align-items:center}
.sst-report-chart{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center}
.sst-report-ring{position:relative;width:180px;height:180px;display:grid;place-items:center}
.sst-report-ring svg{width:180px;height:180px;transform:rotate(-90deg)}
.sst-ring-track,.sst-ring-progress{fill:none;stroke-width:10}
.sst-ring-track{stroke:var(--line)}
.sst-ring-progress{stroke:var(--primary);stroke-linecap:round;transition:stroke-dashoffset .35s ease}
.sst-report-ring-copy{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:26px}
.sst-report-ring-copy strong{display:block;font-size:2.1rem;color:var(--text);line-height:1}
.sst-report-ring-copy span{display:block;font-size:.9rem;color:var(--muted);margin-top:6px}
.sst-usage-bars{display:grid;gap:14px}
.sst-usage-row{display:grid;grid-template-columns:72px 1fr auto;gap:12px;align-items:center}
.sst-usage-row span{font-weight:700;color:var(--text)}
.sst-usage-row strong{font-size:.94rem;color:var(--muted)}
.sst-usage-bar{height:12px;background:var(--surface-2);border:1px solid var(--line);border-radius:999px;overflow:hidden}
.sst-usage-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--primary),#8798ff);border-radius:999px}
.sst-usage-bar-alt i{background:linear-gradient(90deg,#21b47b,#8ce3c0)}
.sst-report-copy p{margin:0 0 14px;font-size:1rem;line-height:1.75}
.sst-ad-slot-placeholder{border-style:dashed;background:rgba(63,99,255,.06)}
.sst-ad-slot-placeholder strong{margin-right:6px}
.sst-ad-slot-placeholder span{display:inline-block;color:var(--muted)}
@media (max-width:1000px){
  .sst-report-grid{grid-template-columns:1fr}
  .sst-report-chart{grid-template-columns:1fr;justify-items:center}
}
@media (max-width:720px){
  .sst-timeline-panel{margin-top:22px}
  .sst-report-panel{margin-top:16px}
  .sst-report-ring,.sst-report-ring svg{width:156px;height:156px}
  .sst-usage-row{grid-template-columns:1fr;gap:8px}
}
@media print{
  body.sst-print-results .sst-shell *{visibility:hidden !important}
  body.sst-print-results .sst-print-area, body.sst-print-results .sst-print-area *{visibility:visible !important}
  body.sst-print-results .sst-print-area{display:block !important;position:absolute;left:0;top:0;width:100%;max-width:none;padding:0;margin:0;border:none;box-shadow:none;background:#fff;color:#000}
  body.sst-print-results .sst-panel-head p{color:#444 !important}
  body.sst-print-results .sst-report-grid{grid-template-columns:260px 1fr;gap:24px}
  body.sst-print-results .sst-report-panel{margin:0;padding:0}
}


/* v4.8 calculator polish */
.sst-grid-two{margin-bottom:26px}
.sst-timeline-panel{margin-top:34px}
.sst-report-panel{margin-top:24px}
.sst-report-panel{border-color:rgba(74,108,255,.22)}


/* v4.9 planning/result refinements */
.sst-grid-two{margin-top:22px}
.sst-timeline-panel{margin-top:36px}
.sst-report-panel{margin-top:22px}
.sst-report-grid{grid-template-columns:1fr;gap:20px}
.sst-report-chart{display:grid;gap:16px}
.sst-report-line-head{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-weight:700}
.sst-report-line-head strong{color:var(--text);font-size:1.05rem}
.sst-report-line{height:24px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);position:relative;overflow:hidden;box-shadow:inset 0 1px 3px rgba(0,0,0,.04)}
.sst-report-line i{position:absolute;top:0;bottom:0;display:block}
.sst-report-line-used{left:0;width:0;background:linear-gradient(90deg,var(--primary),#8193ff);border-radius:999px 0 0 999px}
.sst-report-line-future{left:0;width:0;background:linear-gradient(90deg,#22b37c,#83dfbd);opacity:.95}
.sst-report-line-legend{display:flex;flex-wrap:wrap;gap:16px;color:var(--muted);font-size:.94rem}
.sst-report-line-legend span{display:inline-flex;align-items:center;gap:8px}
.sst-report-line-legend b{width:13px;height:13px;border-radius:4px;display:inline-block}
.sst-report-line-legend b.used{background:var(--primary)}
.sst-report-line-legend b.future{background:#22b37c}
.sst-report-line-legend b.remaining{background:var(--surface-2);border:1px solid var(--line)}
.sst-report-copy{background:var(--surface-2);border:1px solid var(--line);border-radius:18px;padding:18px}
.sst-report-copy p{margin:0 0 12px;line-height:1.72}
.sst-report-copy p:last-child{margin-bottom:0}
.sst-usage-bars{margin-top:4px}
.sst-future-panel{min-height:unset}
.sst-ad-slot-placeholder{border-style:dashed;background:rgba(63,99,255,.06)}
.sst-ad-slot-placeholder span{display:inline;color:var(--muted)}
@media (max-width:720px){
  .sst-timeline-panel{margin-top:28px}
  .sst-report-panel{margin-top:18px}
  .sst-report-line{height:20px}
  .sst-report-line-head{font-size:.86rem}
}
@media print{
  body.sst-print-results .sst-shell *{visibility:hidden !important}
  body.sst-print-results [data-sst-print-block], body.sst-print-results [data-sst-print-block] *, body.sst-print-results .sst-disclaimer, body.sst-print-results .sst-disclaimer *{visibility:visible !important}
}


/* v5.0 simplified premium result summary */
.sst-report-grid-premium{grid-template-columns:1fr;gap:20px}
.sst-report-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.sst-report-metric{background:linear-gradient(180deg,var(--surface),var(--surface-2));border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:var(--shadow-soft)}
.sst-report-metric span{display:block;color:var(--muted);font-weight:700;font-size:.9rem;margin-bottom:8px}
.sst-report-metric strong{display:block;color:var(--text);font-size:2.35rem;line-height:1}
.sst-report-metric small{display:block;color:var(--muted);margin-top:6px}
.sst-report-metric.is-muted{opacity:.62}
.sst-report-chart{background:var(--surface-2);border:1px solid var(--line);border-radius:22px;padding:18px}
.sst-report-line{height:28px}
.sst-report-line-used{box-shadow:0 0 0 1px rgba(255,255,255,.14) inset}
.sst-report-line-future{box-shadow:0 0 0 1px rgba(255,255,255,.14) inset}
.sst-report-copy{font-size:1.02rem}
.sst-usage-bars{display:none !important}
@media (max-width:780px){
  .sst-report-metrics{grid-template-columns:1fr}
  .sst-report-metric{padding:16px}
  .sst-report-metric strong{font-size:2rem}
}


/* v5.1 confirmed + planned trips */
.sst-planned-panel,.sst-calendar-panel{margin-top:18px}
.sst-planned-panel .sst-panel-head{align-items:flex-start}
.sst-status-pill{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;font-size:.86rem;font-weight:750;white-space:nowrap}
.sst-status-pill.ok{background:rgba(18,146,107,.10);color:var(--success);border:1px solid rgba(18,146,107,.20)}
.sst-status-pill.risk{background:rgba(197,68,68,.10);color:var(--danger);border:1px solid rgba(197,68,68,.22)}
.sst-row-risk td{background:rgba(197,68,68,.035)}
.sst-cal-day.planned{background:rgba(34,179,124,.10);border-color:rgba(34,179,124,.28)}
.sst-cal-day.over{background:rgba(197,68,68,.10);border-color:rgba(197,68,68,.32)}
.sst-legend i.planned{background:rgba(34,179,124,.14);border:1px solid rgba(34,179,124,.28)}
.sst-legend i.over{background:rgba(197,68,68,.14);border:1px solid rgba(197,68,68,.32)}
.sst-time-item.confirmed{border-left:4px solid var(--primary)}
.sst-time-item.planned{border-left:4px solid var(--success)}
.sst-time-item.planned.risk{border-left-color:var(--danger);background:rgba(197,68,68,.045)}
.sst-report-grid-premium{grid-template-columns:1fr;gap:20px}
.sst-report-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.sst-report-metric{background:linear-gradient(180deg,var(--surface),var(--surface-2));border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:var(--shadow-soft)}
.sst-report-metric span{display:block;color:var(--muted);font-weight:700;font-size:.9rem;margin-bottom:8px}
.sst-report-metric strong{display:block;color:var(--text);font-size:2.35rem;line-height:1}
.sst-report-metric small{display:block;color:var(--muted);margin-top:6px}
.sst-report-metric.is-muted{opacity:.62}
.sst-report-chart{background:var(--surface-2);border:1px solid var(--line);border-radius:22px;padding:18px}
.sst-report-line{height:28px;border-radius:999px;background:var(--surface);border:1px solid var(--line);position:relative;overflow:hidden;box-shadow:inset 0 1px 3px rgba(0,0,0,.04)}
.sst-report-line i{position:absolute;top:0;bottom:0;display:block}
.sst-report-line-used{left:0;width:0;background:linear-gradient(90deg,var(--primary),#8193ff);border-radius:999px 0 0 999px}
.sst-report-line-future{left:0;width:0;background:linear-gradient(90deg,#22b37c,#83dfbd);opacity:.95}
.sst-report-line-head{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-weight:700}
.sst-report-line-head strong{color:var(--text);font-size:1.05rem}
.sst-report-line-legend{display:flex;flex-wrap:wrap;gap:16px;color:var(--muted);font-size:.94rem;margin-top:12px}
.sst-report-line-legend span{display:inline-flex;align-items:center;gap:8px}
.sst-report-line-legend b{width:13px;height:13px;border-radius:4px;display:inline-block}
.sst-report-line-legend b.used{background:var(--primary)}
.sst-report-line-legend b.future{background:#22b37c}
.sst-report-line-legend b.remaining{background:var(--surface);border:1px solid var(--line)}
.sst-report-copy{background:var(--surface-2);border:1px solid var(--line);border-radius:18px;padding:18px;font-size:1.02rem}
.sst-report-copy p{margin:0 0 12px;line-height:1.72}
.sst-report-copy p:last-child{margin-bottom:0}
@media (max-width:900px){
  .sst-report-metrics{grid-template-columns:1fr}
  .sst-planned-panel .sst-form{grid-template-columns:1fr 1fr}
}
@media (max-width:720px){
  .sst-planned-panel .sst-form{grid-template-columns:1fr}
  .sst-report-metric strong{font-size:2rem}
  .sst-report-line{height:22px}
}


/* v5.2 performance and multi-month calendar */
.sst-calendar-controls{display:none !important}
.sst-calendar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.sst-month-block{background:var(--surface-2);border:1px solid var(--line);border-radius:22px;padding:14px}
.sst-month-title{font-weight:800;color:var(--text);font-size:1.05rem;margin:2px 4px 12px}
.sst-calendar-month{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}
.sst-calendar-month .sst-cal-day{min-height:54px;border-radius:12px;padding:8px}
.sst-calendar-month .sst-cal-head{padding:6px 2px}
@media (max-width:1100px){.sst-calendar{grid-template-columns:1fr}}
@media (max-width:720px){
  .sst-month-block{padding:10px;border-radius:18px}
  .sst-calendar-month{gap:5px}
  .sst-calendar-month .sst-cal-day{min-height:46px;padding:6px;font-size:.85rem}
  .sst-calendar-month .sst-cal-day .hint{font-size:.62rem}
}


/* v5.4 cosmetic refinements */
.sst-panel-head .sst-btn-danger{
  min-width:190px;
  max-width:240px;
  padding:12px 18px;
  line-height:1.25;
  text-align:center;
  white-space:normal;
}
.sst-trips-panel .sst-form,
.sst-planned-panel .sst-form{
  grid-template-columns:minmax(160px,1fr) minmax(160px,1fr) minmax(170px,.9fr) minmax(170px,.9fr) minmax(170px,.8fr);
}
.sst-trips-panel .sst-form .sst-btn,
.sst-planned-panel .sst-form .sst-btn{
  min-height:54px;
  line-height:1.2;
  white-space:normal;
  text-align:center;
  padding:12px 16px;
}
.sst-calendar{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:16px;
}
.sst-month-block{
  padding:12px;
  border-radius:20px;
}
.sst-month-title{
  font-size:.98rem;
  margin-bottom:10px;
}
.sst-calendar-month{
  gap:5px;
}
.sst-calendar-month .sst-cal-day{
  min-height:44px;
  border-radius:10px;
  padding:6px;
  font-size:.86rem;
}
.sst-calendar-month .sst-cal-day .hint{
  font-size:.58rem;
}
.sst-calendar-month .sst-cal-head{
  font-size:.72rem;
}
@media(max-width:1500px){
  .sst-calendar{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
}
@media(max-width:1150px){
  .sst-calendar{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:760px){
  .sst-calendar{grid-template-columns:1fr !important;}
  .sst-panel-head .sst-btn-danger{min-width:0;max-width:none;width:100%}
  .sst-trips-panel .sst-form,
  .sst-planned-panel .sst-form{grid-template-columns:1fr}
}


/* v5.5 form, calendar and mobile polish */
.sst-trips-panel,
.sst-planned-panel{overflow:hidden}
.sst-trips-panel .sst-panel-head,
.sst-planned-panel .sst-panel-head{
  align-items:flex-start;
  gap:18px;
}
.sst-panel-head .sst-btn-danger{
  flex:0 0 auto;
  min-width:180px;
  max-width:220px;
  white-space:normal;
}
.sst-trips-panel .sst-form,
.sst-planned-panel .sst-form{
  grid-template-columns:minmax(135px,1fr) minmax(135px,1fr) minmax(150px,1fr) minmax(150px,1fr) minmax(155px,.72fr) !important;
  gap:12px;
  align-items:end;
}
.sst-trips-panel .sst-form label,
.sst-planned-panel .sst-form label{min-width:0}
.sst-trips-panel .sst-form input,
.sst-planned-panel .sst-form input{
  min-width:0;
  width:100%;
}
.sst-trips-panel .sst-form .sst-btn,
.sst-planned-panel .sst-form .sst-btn{
  width:100%;
  min-width:0;
  max-width:100%;
  overflow-wrap:normal;
  word-break:normal;
  white-space:normal;
  padding:11px 12px;
  font-size:.95rem;
  line-height:1.18;
  min-height:54px;
}
.sst-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.sst-calendar{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  align-items:start;
  gap:18px;
}
.sst-month-block{
  min-width:0;
  overflow:hidden;
}
.sst-calendar-month{
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:5px;
}
.sst-calendar-month .sst-cal-head{
  min-width:0;
  text-align:center;
  font-size:.68rem;
}
.sst-calendar-month .sst-cal-day{
  min-width:0;
  overflow:hidden;
  min-height:42px;
  padding:6px 4px;
  font-size:.82rem;
}
.sst-calendar-month .sst-cal-day .num{line-height:1}
.sst-calendar-month .sst-cal-day .hint{
  display:block;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.54rem;
}
@media(max-width:1320px){
  .sst-trips-panel .sst-form,
  .sst-planned-panel .sst-form{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .sst-trips-panel .sst-form .sst-btn,
  .sst-planned-panel .sst-form .sst-btn{
    grid-column:1/-1;
  }
}
@media(max-width:1180px){
  .sst-calendar{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:760px){
  .sst-trips-panel .sst-panel-head,
  .sst-planned-panel .sst-panel-head{display:block}
  .sst-panel-head .sst-btn-danger{
    width:100%;
    max-width:none;
    min-width:0;
    margin-top:12px;
  }
  .sst-trips-panel .sst-form,
  .sst-planned-panel .sst-form{
    grid-template-columns:1fr !important;
  }
  .sst-calendar{grid-template-columns:1fr !important;}
  .sst-month-block{padding:12px}
  .sst-calendar-month .sst-cal-day{min-height:46px}
}

/* v5.8 calculation method helper */
.sst-method-panel{margin-top:18px}
.sst-method-copy{background:var(--surface-2);border:1px solid var(--line);border-radius:18px;padding:18px;display:grid;gap:10px}
.sst-method-copy p{margin:0;line-height:1.7}
.sst-method-copy a{font-weight:750;color:var(--primary)}


/* v6.0 calendar summary + wording adjustments */
.sst-time-item.previous,.sst-time-item.confirmed{border-left:4px solid var(--primary)}
.sst-calendar-summary-card{display:flex;flex-direction:column;min-height:100%}
.sst-calendar-summary{display:flex;flex-direction:column;gap:14px;padding:12px 4px 4px;color:var(--text)}
.sst-calendar-summary p{margin:0}
.sst-calendar-summary ul{margin:0;padding-left:1.1rem}
.sst-calendar-summary li{margin:8px 0;color:var(--muted)}
.sst-calendar-summary li strong{color:var(--text)}
.sst-calendar-tip{padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2);color:var(--text)}


/* v6.1 Trip Planner page polish */
.sst-planner-v61{
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
  align-items:start;
}
.sst-planner-hero-card{
  background:
    radial-gradient(circle at 22% 10%, rgba(74,108,255,.12), transparent 34%),
    linear-gradient(180deg,var(--surface),var(--surface-2));
}
.sst-planner-mini-steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:22px 0;
}
.sst-planner-mini-steps div{
  border:1px solid var(--line);
  border-radius:18px;
  background:var(--surface);
  padding:16px;
  box-shadow:var(--shadow-soft);
}
.sst-planner-mini-steps span{
  width:34px;
  height:34px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:var(--primary-soft);
  color:var(--primary);
  font-weight:800;
  margin-bottom:12px;
}
.sst-planner-mini-steps strong{
  display:block;
  margin-bottom:7px;
  color:var(--text);
}
.sst-planner-mini-steps small{
  color:var(--muted);
  line-height:1.55;
}
.sst-planner-wide{
  grid-column:1 / -1;
}
.sst-planner-tips{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.sst-planner-tips div{
  background:var(--surface-2);
  border:1px solid var(--line);
  border-radius:18px;
  padding:18px;
}
.sst-planner-tips strong{
  color:var(--text);
  display:block;
  margin-bottom:8px;
}
.sst-planner-tips p{
  margin:0;
}
.sst-planner-faq details{
  border:1px solid var(--line);
  border-radius:16px;
  padding:14px 16px;
  margin:10px 0;
  background:var(--surface-2);
}
.sst-planner-faq summary{
  cursor:pointer;
  font-weight:760;
  color:var(--text);
}
.sst-planner-faq p{
  margin:10px 0 0;
}
@media(max-width:1050px){
  .sst-planner-v61,.sst-planner-mini-steps,.sst-planner-tips{grid-template-columns:1fr}
  .sst-planner-wide{grid-column:auto}
}


/* v6.5 calculator fixes and dark-mode refinement */
.sst-data-privacy-card{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:center;
  margin:18px 0;
  border:1px solid var(--line);
  border-radius:18px;
  padding:18px 20px;
  background:
    radial-gradient(circle at 4% 0%, rgba(30,183,124,.10), transparent 32%),
    var(--surface);
  box-shadow:var(--shadow-soft);
}
.sst-data-privacy-card strong{
  display:block;
  color:var(--text);
  margin-bottom:4px;
}
.sst-data-privacy-card span{
  color:var(--muted);
}
.sst-data-privacy-card a{
  flex:0 0 auto;
  font-weight:760;
}
.sst-cal-day .usage{
  display:block;
  margin-top:2px;
  font-size:.54rem;
  font-weight:780;
  color:var(--muted);
  line-height:1;
}
.sst-cal-day.usage-caution{
  border-color:rgba(245,166,35,.45);
  background:rgba(245,166,35,.09);
}
.sst-cal-day.usage-high{
  border-color:rgba(255,141,145,.55);
  background:rgba(255,141,145,.09);
}
.sst-cal-day.usage-over{
  border-color:rgba(255,91,104,.7);
  background:rgba(255,91,104,.14);
}
.sst-cal-day.usage-caution .usage{color:#b56a00}
.sst-cal-day.usage-high .usage,
.sst-cal-day.usage-over .usage{color:#c64b55}
body.sst-dark .sst-form input[type="date"],
body.sst-dark .sst-form input,
body.sst-dark .sst-form select{
  color-scheme:dark;
  background:#0b1629;
  border-color:rgba(185,196,220,.18);
  color:#f4f7ff;
}
body.sst-dark .sst-form input[type="date"]:focus,
body.sst-dark .sst-form input:focus{
  outline:none;
  border-color:#7b86ff;
  box-shadow:0 0 0 4px rgba(123,134,255,.16);
}
body.sst-dark input[type="date"]::-webkit-calendar-picker-indicator{
  filter:invert(1) opacity(.78);
  cursor:pointer;
}
body.sst-dark .sst-sim-result.success{
  background:rgba(85,214,170,.09);
  border-color:rgba(85,214,170,.36);
  color:#dffcf1;
}
body.sst-dark .sst-sim-result.error{
  background:rgba(255,141,145,.09);
  border-color:rgba(255,141,145,.34);
  color:#ffe3e5;
}
body.sst-dark .sst-card.sst-green strong{
  color:#55d6aa;
}
body.sst-dark .sst-delete,
body.sst-dark .sst-btn-danger{
  color:#ff9fa3 !important;
  background:rgba(255,141,145,.07) !important;
  border-color:rgba(255,141,145,.28) !important;
}
body.sst-dark .sst-btn-primary{
  background:linear-gradient(135deg,#6370f4,#8d7bff);
  box-shadow:0 14px 36px rgba(108,118,255,.25);
}
body.sst-dark .sst-calendar-summary-card,
body.sst-dark .sst-data-privacy-card{
  background:
    radial-gradient(circle at 12% 0%, rgba(93,111,255,.11), transparent 35%),
    linear-gradient(180deg,#111d35,#0f1a30);
}
body.sst-dark .sst-cal-day .usage{color:#93a0be}
body.sst-dark .sst-cal-day.usage-caution .usage{color:#ffd089}
body.sst-dark .sst-cal-day.usage-high .usage,
body.sst-dark .sst-cal-day.usage-over .usage{color:#ffb3b7}
body.sst-dark .sst-cal-day.usage-caution{background:rgba(245,166,35,.12)}
body.sst-dark .sst-cal-day.usage-high{background:rgba(255,141,145,.12)}
body.sst-dark .sst-cal-day.usage-over{background:rgba(255,91,104,.18)}
@media(max-width:760px){
  .sst-data-privacy-card{display:block}
  .sst-data-privacy-card a{display:inline-flex;margin-top:10px}
}


/* v6.5 fixes */
body.sst-dark .sst-status-pill.ok{background:rgba(116,182,164,.10);color:#b7ddd1;border:1px solid rgba(116,182,164,.22)}
body.sst-dark .sst-status-pill.risk{background:rgba(207,150,150,.10);color:#e3bcbc;border:1px solid rgba(207,150,150,.22)}
body.sst-dark .sst-time-item.planned.risk{background:rgba(207,150,150,.06)}
body.sst-dark .sst-time-item.planned{border-left-color:var(--success)}
body.sst-dark .sst-time-item.confirmed{border-left-color:var(--primary)}
body.sst-dark .sst-sim-result.success{background:rgba(116,182,164,.08);border-color:rgba(116,182,164,.22);color:#e6f4ef}
body.sst-dark .sst-sim-result.error{background:rgba(207,150,150,.08);border-color:rgba(207,150,150,.22);color:#f5e7e7}
body.sst-dark .sst-card.sst-green strong{color:#9fd0c2}
body.sst-dark .sst-delete,
body.sst-dark .sst-btn-danger{color:#e0b3b3 !important;background:rgba(207,150,150,.07) !important;border-color:rgba(207,150,150,.22) !important}
body.sst-dark .sst-btn-primary{background:linear-gradient(135deg,#5f6eb3,#7581bc);box-shadow:0 10px 24px rgba(42,56,96,.24)}
body.sst-dark .sst-calendar-summary-card,
body.sst-dark .sst-data-privacy-card{background:radial-gradient(circle at 12% 0%, rgba(122,136,200,.07), transparent 35%),linear-gradient(180deg,#101a2b,#0d1726)}
body.sst-dark .sst-report-line-future{background:linear-gradient(90deg,#679f93,#89b7ad)}
body.sst-dark .sst-report-line-legend b.future{background:#679f93}
body.sst-dark .sst-cal-day.planned{background:rgba(116,182,164,.10);border-color:rgba(116,182,164,.22)}
body.sst-dark .sst-cal-day.over{background:rgba(207,150,150,.10);border-color:rgba(207,150,150,.22)}
body.sst-dark .sst-legend i.planned{background:rgba(116,182,164,.14);border-color:rgba(116,182,164,.22)}
body.sst-dark .sst-legend i.over{background:rgba(207,150,150,.14);border-color:rgba(207,150,150,.22)}
body.sst-dark .sst-cal-day.usage-caution .usage{color:#ddc08b}
body.sst-dark .sst-cal-day.usage-high .usage,
body.sst-dark .sst-cal-day.usage-over .usage{color:#dfb4b4}
body.sst-dark .sst-cal-day.usage-caution{background:rgba(212,177,106,.10)}
body.sst-dark .sst-cal-day.usage-high{background:rgba(207,150,150,.10)}
body.sst-dark .sst-cal-day.usage-over{background:rgba(207,150,150,.14)}


/* v6.9 calculator UX cleanup */
.sst-app{margin-top:18px}
.sst-calc-toolbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  margin:0 0 18px;
}
.sst-privacy-inline{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  min-height:44px;
  padding:10px 14px;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--surface);
  color:var(--muted);
  box-shadow:var(--shadow-soft);
}
.sst-privacy-inline strong{color:var(--text)}
.sst-privacy-inline a{font-weight:760}
.sst-results-compact{
  grid-template-columns:1fr;
}
.sst-reference-card strong{
  font-size:2rem;
}
.sst-reference-card small{
  display:block;
  line-height:1.55;
}
.sst-report-metrics{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.sst-rule-summary-after{
  margin:18px 0;
  box-shadow:var(--shadow-soft);
}
body.sst-dark .sst-privacy-inline{
  background:rgba(255,255,255,.028);
  border-color:rgba(169,181,204,.20);
}
@media(max-width:980px){
  .sst-calc-toolbar{align-items:stretch;flex-direction:column}
  .sst-actions{justify-content:flex-start}
  .sst-privacy-inline{border-radius:18px}
  .sst-report-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .sst-report-metrics{grid-template-columns:1fr}
}


/* v7.0 Daily Schengen Insight + Buffer recommendation */
.sst-cal-day{
  cursor:pointer;
  font:inherit;
  color:var(--text);
}
button.sst-cal-day{
  border:1px solid var(--line);
}
.sst-cal-day.selected{
  outline:3px solid rgba(74,108,255,.25);
  border-color:var(--primary);
  box-shadow:0 0 0 4px rgba(74,108,255,.10);
}
.sst-day-insight{
  margin-top:22px;
  border:1px solid var(--line);
  border-radius:24px;
  background:
    radial-gradient(circle at 8% 0%, rgba(74,108,255,.08), transparent 32%),
    linear-gradient(180deg,var(--surface),var(--surface-2));
  padding:22px;
  box-shadow:var(--shadow-soft);
}
.sst-day-insight-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
  margin-bottom:18px;
}
.sst-day-insight-head h3{
  margin:0;
  font-size:1.35rem;
}
.sst-day-insight-head .sst-kicker{
  margin-bottom:8px;
}
.sst-day-insight-head > span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--surface);
  color:var(--text);
  font-weight:760;
  white-space:nowrap;
}
.sst-day-insight-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.sst-day-insight-card{
  border:1px solid var(--line);
  border-radius:18px;
  padding:16px;
  background:var(--surface);
}
.sst-day-insight-card span{
  display:block;
  color:var(--muted);
  font-size:.88rem;
  font-weight:720;
  margin-bottom:8px;
}
.sst-day-insight-card strong{
  display:block;
  color:var(--text);
  font-size:1.28rem;
  line-height:1.18;
}
.sst-day-insight-card.buffer-comfortable strong,
.sst-buffer-metric.buffer-comfortable strong{color:var(--success)}
.sst-day-insight-card.buffer-moderate strong,
.sst-buffer-metric.buffer-moderate strong{color:var(--warning)}
.sst-day-insight-card.buffer-low strong,
.sst-buffer-metric.buffer-low strong{color:#b7791f}
.sst-day-insight-card.buffer-over strong,
.sst-buffer-metric.buffer-over strong{color:var(--danger)}
.sst-day-insight-copy{
  margin-top:16px;
  padding:16px 18px;
  border-radius:18px;
  background:var(--surface-2);
  border:1px solid var(--line);
}
.sst-day-insight-copy p{
  margin:0 0 8px;
}
.sst-day-insight-copy p:last-child{
  margin-bottom:0;
}
.sst-day-insight-trips{
  margin-top:16px;
}
.sst-day-insight-trips h4{
  margin:0 0 10px;
  font-size:1rem;
}
.sst-insight-trip{
  display:grid;
  grid-template-columns:140px minmax(0,.8fr) minmax(0,1.2fr);
  gap:12px;
  align-items:center;
  padding:13px 14px;
  border:1px solid var(--line);
  background:var(--surface);
  border-radius:16px;
  margin-top:8px;
}
.sst-insight-trip span{
  color:var(--muted);
  font-weight:740;
}
.sst-insight-trip strong{
  color:var(--text);
}
.sst-insight-trip small{
  color:var(--muted);
}
.sst-insight-trip.planned{
  border-color:rgba(16,150,111,.24);
  background:rgba(16,150,111,.06);
}
.sst-insight-empty{
  padding:14px 16px;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--surface);
  color:var(--muted);
}
.sst-day-insight-note{
  margin:14px 0 0;
  color:var(--muted);
  font-size:.92rem;
}
.sst-buffer-metric small{
  line-height:1.45;
}
body.sst-dark .sst-day-insight,
body.sst-dark .sst-day-insight-card,
body.sst-dark .sst-insight-trip,
body.sst-dark .sst-insight-empty{
  background:
    radial-gradient(circle at 12% 0%, rgba(122,136,200,.07), transparent 35%),
    linear-gradient(180deg,#101a2b,#0d1726);
}
body.sst-dark .sst-day-insight-copy{
  background:#0d1726;
}
body.sst-dark .sst-cal-day.selected{
  outline-color:rgba(122,136,200,.28);
  box-shadow:0 0 0 4px rgba(122,136,200,.12);
}
body.sst-dark .sst-insight-trip.planned{
  background:rgba(116,182,164,.07);
  border-color:rgba(116,182,164,.18);
}
@media(max-width:980px){
  .sst-day-insight-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .sst-insight-trip{
    grid-template-columns:1fr;
    gap:4px;
  }
}
@media(max-width:640px){
  .sst-day-insight-head{
    display:block;
  }
  .sst-day-insight-head > span{
    margin-top:12px;
  }
  .sst-day-insight-grid{
    grid-template-columns:1fr;
  }
}


/* v7.0.1 Daily Insight click feedback */
.sst-day-insight.is-selected{
  border-color:rgba(74,108,255,.32);
  box-shadow:0 18px 46px rgba(74,108,255,.10);
}
.sst-day-insight.is-selected .sst-day-insight-head > span{
  border-color:rgba(74,108,255,.34);
  background:rgba(74,108,255,.08);
  color:var(--primary);
}
body.sst-dark .sst-day-insight.is-selected{
  border-color:rgba(122,136,200,.28);
  box-shadow:0 18px 42px rgba(0,0,0,.22);
}
body.sst-dark .sst-day-insight.is-selected .sst-day-insight-head > span{
  border-color:rgba(122,136,200,.28);
  background:rgba(122,136,200,.10);
  color:#edf2fb;
}


/* v7.1 UI refinement */
.sst-layout{
  grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);
}
.sst-results{
  gap:14px;
}
.sst-results .sst-card{
  padding:20px;
  min-height:auto;
}
.sst-results .sst-card strong{
  font-size:2.15rem;
}
.sst-reference-card strong{
  font-size:1.7rem;
}
.sst-reference-card small{
  font-size:.9rem;
}
.sst-cal-day.blank{
  visibility:hidden;
  pointer-events:none;
  background:transparent !important;
  border-color:transparent !important;
  box-shadow:none !important;
}
.sst-calendar-summary-bar{
  margin-top:18px;
}
.sst-calendar-summary-inline{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px 18px;
  padding:16px 18px;
  border:1px solid var(--line);
  border-radius:18px;
  background:var(--surface-2);
  color:var(--muted);
}
.sst-calendar-summary-inline strong{
  color:var(--text);
}
.sst-calendar-summary-inline span{
  color:var(--muted);
}
.sst-calendar-summary-inline b{
  color:var(--text);
}
.sst-report-metrics{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.sst-buffer-metric strong{
  font-size:1.9rem;
  line-height:1.05;
}
.sst-buffer-metric small{
  max-width:22ch;
}
.sst-home-simplified .sst-hero-text > p:not(.sst-hero-badge){
  max-width:62ch;
}
.sst-tool-preview-card p strong,
.sst-home-privacy-note strong{
  color:var(--text);
}
body.sst-dark .sst-calendar-summary-inline{
  background:#0d1726;
}
@media(max-width:1180px){
  .sst-layout{
    grid-template-columns:1fr;
  }
  .sst-results{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:980px){
  .sst-report-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .sst-results{
    grid-template-columns:1fr;
  }
}
@media(max-width:640px){
  .sst-report-metrics{
    grid-template-columns:1fr;
  }
}


/* v7.1.1 premium compact Trip Calendar */
.sst-calendar{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:14px !important;
  align-items:start;
}
.sst-month-block{
  display:flex;
  flex-direction:column;
  padding:12px !important;
  border-radius:20px;
  min-height:330px;
}
.sst-month-title{
  margin:0 2px 10px !important;
  min-height:22px;
  line-height:1.2;
}
.sst-calendar-month{
  grid-template-rows:auto repeat(6,34px);
  gap:6px !important;
}
.sst-calendar-month .sst-cal-head{
  height:20px;
  padding:0 !important;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:.68rem;
  line-height:1;
}
.sst-calendar-month .sst-cal-day{
  height:34px !important;
  min-height:0 !important;
  padding:4px 5px !important;
  border-radius:10px;
  gap:0 !important;
  align-items:flex-start;
  justify-content:flex-start;
  overflow:hidden;
  line-height:1.05;
}
.sst-calendar-month .sst-cal-day .num{
  font-size:.78rem;
  line-height:1;
}
.sst-calendar-month .sst-cal-day .hint{
  display:none;
}
.sst-calendar-month .sst-cal-day.over .hint{
  display:block;
  margin-top:2px;
  font-size:.48rem;
  line-height:1;
  color:var(--danger);
}
.sst-calendar-month .sst-cal-day .usage{
  margin-top:2px !important;
  font-size:.48rem !important;
  line-height:1 !important;
  white-space:nowrap;
}
.sst-calendar-month .sst-cal-day.blank{
  height:34px !important;
}
.sst-calendar-summary-bar{
  margin-top:16px;
}
.sst-calendar-summary-inline{
  justify-content:flex-start;
  font-size:.94rem;
}
@media(max-width:1380px){
  .sst-calendar{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}
@media(max-width:1050px){
  .sst-calendar{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:720px){
  .sst-calendar{
    grid-template-columns:1fr !important;
  }
  .sst-month-block{
    min-height:315px;
  }
  .sst-calendar-month{
    grid-template-rows:auto repeat(6,32px);
    gap:5px !important;
  }
  .sst-calendar-month .sst-cal-day,
  .sst-calendar-month .sst-cal-day.blank{
    height:32px !important;
  }
}


/* v7.1.2 visible outside-month days without height jumps */
.sst-calendar-month .sst-cal-day.outside{
  visibility:visible !important;
  pointer-events:auto;
  opacity:.48;
  background:rgba(255,255,255,.38) !important;
  border-color:rgba(186,198,220,.38) !important;
  color:var(--muted);
  box-shadow:none !important;
}
.sst-calendar-month .sst-cal-day.outside.blank{
  visibility:visible !important;
}
.sst-calendar-month .sst-cal-day.outside .num{
  color:var(--muted);
  font-weight:650;
}
.sst-calendar-month .sst-cal-day.outside .hint,
.sst-calendar-month .sst-cal-day.outside .usage{
  display:none !important;
}
body.sst-dark .sst-calendar-month .sst-cal-day.outside{
  background:rgba(255,255,255,.025) !important;
  border-color:rgba(169,181,204,.12) !important;
  opacity:.42;
}


/* v7.1.3 calendar summary tile */
.sst-calendar-summary-bar{
  display:none !important;
}
.sst-panel:has(.sst-calendar-summary-tile) > .sst-legend{
  display:none;
}
.sst-calendar-summary-tile{
  grid-column:span 2;
  min-height:330px;
  background:
    radial-gradient(circle at 12% 0%, rgba(74,108,255,.08), transparent 36%),
    linear-gradient(180deg,var(--surface),var(--surface-2));
}
.sst-calendar-summary-tile-body{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:14px;
  height:100%;
  color:var(--muted);
}
.sst-calendar-summary-tile-body p{
  margin:0;
  line-height:1.55;
}
.sst-calendar-summary-tile-body strong{
  color:var(--text);
}
.sst-calendar-summary-tile-body ul{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.sst-calendar-summary-tile-body li{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(255,255,255,.45);
  line-height:1.35;
}
.sst-calendar-summary-tile-body .dot{
  width:12px;
  height:12px;
  border-radius:4px;
  flex:none;
  border:1px solid rgba(63,99,255,.28);
  background:rgba(63,99,255,.12);
}
.sst-calendar-summary-tile-body .dot.planned{
  background:rgba(18,146,107,.14);
  border-color:rgba(18,146,107,.26);
}
.sst-calendar-summary-tile-body .dot.over{
  background:rgba(197,68,68,.12);
  border-color:rgba(197,68,68,.26);
}
.sst-calendar-summary-tile-body .dot.today{
  background:transparent;
  border:2px solid var(--primary);
}
.sst-calendar-summary-tip{
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--surface);
  color:var(--text);
}
body.sst-dark .sst-calendar-summary-tile{
  background:
    radial-gradient(circle at 12% 0%, rgba(122,136,200,.08), transparent 34%),
    linear-gradient(180deg,#101a2b,#0d1726);
}
body.sst-dark .sst-calendar-summary-tile-body li{
  background:rgba(255,255,255,.03);
}
@media(max-width:1380px){
  .sst-calendar-summary-tile{
    grid-column:span 1;
  }
}
@media(max-width:1050px){
  .sst-calendar-summary-tile{
    grid-column:span 2;
  }
}
@media(max-width:720px){
  .sst-calendar-summary-tile{
    grid-column:span 1;
    min-height:auto;
  }
  .sst-calendar-summary-tile-body ul{
    grid-template-columns:1fr;
  }
}


/* v7.1.5 mobile usability hotfix */
.sst-form,
.sst-form *,
.sst-table-wrap,
.sst-panel,
.sst-trips-panel{
  box-sizing:border-box;
}
.sst-table-wrap{
  max-width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  border-radius:16px;
}
.sst-table-wrap::after{
  content:"";
}
@media(max-width:760px){
  .sst-app{
    margin-top:10px;
  }
  .sst-calc-toolbar{
    gap:10px;
    margin-bottom:12px;
  }
  .sst-privacy-inline{
    font-size:.92rem;
    line-height:1.45;
    padding:10px 12px;
  }
  .sst-actions{
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:0;
  }
  .sst-actions .sst-btn{
    width:100%;
    justify-content:center;
    min-height:44px;
  }
  .sst-layout,
  .sst-grid-two,
  .sst-report-grid{
    grid-template-columns:1fr !important;
    gap:14px;
  }
  .sst-trips-panel,
  .sst-panel{
    padding:16px;
    border-radius:18px;
    overflow:hidden;
  }
  .sst-panel-head{
    display:block;
    margin-bottom:14px;
  }
  .sst-panel-head p{
    font-size:.95rem;
    line-height:1.5;
    margin-top:6px;
  }
  .sst-panel-head .sst-btn-danger{
    width:100%;
    margin-top:12px;
  }
  .sst-trips-panel .sst-form,
  .sst-planned-panel .sst-form,
  .sst-form,
  .sst-sim-form{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    width:100%;
    max-width:100%;
  }
  .sst-form label,
  .sst-form input,
  .sst-form button,
  .sst-form .sst-btn,
  .sst-sim-form label,
  .sst-sim-form input,
  .sst-sim-form button{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
  }
  .sst-form input{
    height:48px;
    padding:11px 12px;
  }
  .sst-form .sst-btn,
  .sst-sim-form .sst-btn{
    min-height:48px;
  }
  .sst-table-wrap{
    margin-top:10px;
    padding-bottom:6px;
  }
  .sst-table{
    min-width:680px;
  }
  .sst-planned-panel .sst-table{
    min-width:760px;
  }
  .sst-table th,
  .sst-table td{
    padding:12px 10px;
    white-space:nowrap;
  }
  .sst-table td small{
    white-space:normal;
    max-width:180px;
  }
  .sst-table-wrap:before{
    content:"Scroll table sideways →";
    display:block;
    font-size:.82rem;
    color:var(--muted);
    margin:0 0 8px;
  }
  .sst-results{
    grid-template-columns:1fr !important;
    gap:12px;
  }
  .sst-results .sst-card{
    padding:16px;
  }
  .sst-results .sst-card strong{
    font-size:1.85rem;
  }
  .sst-card small{
    line-height:1.45;
  }
  .sst-planned-panel,
  .sst-calendar-panel,
  .sst-timeline-panel,
  .sst-report-panel,
  .sst-method-panel{
    margin-top:14px;
  }
  .sst-panel h3{
    font-size:1.28rem;
  }
  .sst-panel > p,
  .sst-report-panel > p,
  .sst-calendar-panel > p{
    font-size:.95rem;
    line-height:1.5;
  }
  .sst-calendar-summary-tile-body ul{
    grid-template-columns:1fr;
  }
  .sst-day-insight-grid,
  .sst-report-metrics{
    grid-template-columns:1fr !important;
  }
  .sst-report-copy{
    font-size:.95rem;
    line-height:1.65;
  }
  .sst-rule-summary-after,
  .sst-disclaimer{
    font-size:.93rem;
    line-height:1.55;
  }
}
@media(max-width:430px){
  .sst-actions{
    grid-template-columns:1fr;
  }
  .sst-table{
    min-width:640px;
  }
  .sst-planned-panel .sst-table{
    min-width:720px;
  }
  .sst-trips-panel,
  .sst-panel{
    padding:14px;
  }
}


/* v7.3.0 mobile guided calculator UX */
.sst-mobile-progress,
.sst-mobile-quick-status,
.sst-mobile-trip-cards,
.sst-step-toggle{
  display:none;
}
.sst-step-badge{
  display:inline-grid;
  place-items:center;
  width:30px;
  height:30px;
  margin-right:8px;
  border-radius:11px;
  background:var(--primary-soft);
  color:var(--primary);
  font-size:.84rem;
  font-weight:800;
  vertical-align:middle;
}
@media(max-width:760px){
  .sst-app{
    padding-bottom:20px;
  }
  .sst-mobile-progress{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px;
    position:sticky;
    top:0;
    z-index:30;
    padding:8px;
    margin:0 0 10px;
    border:1px solid var(--line);
    border-radius:18px;
    background:rgba(255,255,255,.92);
    backdrop-filter:blur(16px);
    box-shadow:0 14px 34px rgba(24,42,80,.08);
  }
  body.sst-dark .sst-mobile-progress{
    background:rgba(13,23,38,.9);
  }
  .sst-mobile-progress a{
    text-decoration:none;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    min-height:42px;
    border-radius:13px;
    color:var(--text);
    font-weight:800;
    font-size:.88rem;
    background:var(--surface-2);
    border:1px solid var(--line);
  }
  .sst-mobile-progress a span{
    display:grid;
    place-items:center;
    width:22px;
    height:22px;
    border-radius:8px;
    color:#fff;
    background:var(--primary);
    font-size:.72rem;
  }
  .sst-mobile-quick-status{
    display:flex;
    justify-content:space-between;
    gap:10px;
    align-items:center;
    margin:0 0 14px;
    padding:13px 14px;
    border-radius:18px;
    border:1px solid var(--line);
    background:linear-gradient(135deg, rgba(74,108,255,.08), rgba(34,179,124,.08));
    color:var(--text);
  }
  .sst-mobile-quick-status span{
    display:block;
    font-size:.78rem;
    color:var(--muted);
    font-weight:760;
    text-transform:uppercase;
    letter-spacing:.06em;
    margin-bottom:3px;
  }
  .sst-mobile-quick-status strong{
    display:block;
    font-size:.98rem;
    line-height:1.25;
  }
  .sst-mobile-jump{
    flex:none;
    text-decoration:none;
    border-radius:12px;
    background:var(--primary);
    color:#fff;
    padding:10px 12px;
    font-weight:800;
    font-size:.84rem;
  }

  .sst-step-panel{
    scroll-margin-top:86px;
  }
  .sst-step-panel .sst-panel-head{
    position:relative;
    padding-right:46px;
  }
  .sst-step-panel .sst-panel-head h3{
    display:flex;
    align-items:center;
    gap:0;
    line-height:1.15;
  }
  .sst-step-toggle{
    display:grid;
    place-items:center;
    position:absolute;
    top:0;
    right:0;
    width:38px;
    height:38px;
    border-radius:12px;
    border:1px solid var(--line);
    background:var(--surface-2);
    color:var(--text);
    cursor:pointer;
  }
  .sst-step-toggle span{
    width:10px;
    height:10px;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:rotate(45deg) translateY(-2px);
    transition:transform .16s ease;
  }
  .sst-step-panel.is-open .sst-step-toggle span{
    transform:rotate(225deg) translateY(-2px);
  }
  .sst-step-panel.sst-mobile-collapsed:not(.is-open) > :not(.sst-panel-head),
  .sst-step-panel:not(.is-open):not(#sst-step-previous):not(#sst-step-result) > :not(.sst-panel-head){
    display:none !important;
  }

  #sst-step-result{
    order:3;
  }
  .sst-planned-panel{
    order:2;
  }
  .sst-calendar-panel{
    order:4;
  }
  .sst-timeline-panel{
    order:5;
  }
  .sst-method-panel,
  .sst-rule-summary-after,
  .sst-disclaimer{
    order:6;
  }

  .sst-layout{
    display:flex !important;
    flex-direction:column;
  }

  .sst-results{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px;
  }
  .sst-results .sst-card{
    display:grid;
    grid-template-columns:1fr auto;
    align-items:center;
    gap:6px 12px;
    min-height:auto;
  }
  .sst-results .sst-card span,
  .sst-results .sst-card small{
    margin:0;
  }
  .sst-results .sst-card strong{
    grid-row:1 / span 2;
    grid-column:2;
    font-size:1.65rem;
    text-align:right;
    margin:0;
  }
  .sst-reference-card strong{
    font-size:1.35rem !important;
  }

  .sst-table-wrap{
    display:none !important;
  }
  .sst-mobile-trip-cards{
    display:grid;
    gap:10px;
    margin-top:12px;
  }
  .sst-mobile-trip-card,
  .sst-mobile-empty{
    border:1px solid var(--line);
    border-radius:16px;
    background:var(--surface-2);
    padding:13px;
  }
  .sst-mobile-trip-card{
    display:grid;
    gap:7px;
  }
  .sst-mobile-trip-card div{
    display:flex;
    justify-content:space-between;
    gap:10px;
    align-items:flex-start;
  }
  .sst-mobile-trip-card span{
    color:var(--muted);
    font-weight:800;
    font-size:.78rem;
    text-transform:uppercase;
    letter-spacing:.05em;
  }
  .sst-mobile-trip-card strong{
    color:var(--text);
    text-align:right;
    font-size:.95rem;
  }
  .sst-mobile-trip-card p,
  .sst-mobile-trip-card small{
    margin:0;
    color:var(--muted);
    line-height:1.4;
  }
  .sst-mobile-trip-card .sst-delete{
    justify-self:start;
    margin-top:2px;
  }
  .sst-mobile-trip-card.risk{
    border-color:rgba(197,68,68,.28);
    background:rgba(197,68,68,.055);
  }
  .sst-mobile-empty{
    color:var(--muted);
    line-height:1.5;
  }

  .sst-report-panel{
    margin-top:14px;
  }
  .sst-report-metrics{
    grid-template-columns:1fr 1fr !important;
  }
  .sst-report-metric{
    min-height:auto;
    padding:14px;
  }
  .sst-report-metric strong{
    font-size:1.7rem !important;
  }
  .sst-buffer-card{
    grid-column:1 / -1;
  }
  .sst-report-copy{
    max-height:none;
  }

  .sst-calendar-panel .sst-calendar-controls,
  .sst-calendar-panel .sst-calendar,
  .sst-calendar-panel .sst-calendar-summary-bar,
  .sst-calendar-panel .sst-legend,
  .sst-calendar-panel .sst-day-insight{
    margin-top:12px;
  }
  .sst-calendar-panel.sst-mobile-collapsed:not(.is-open) .sst-panel-head{
    margin-bottom:0;
  }
}
@media(max-width:430px){
  .sst-mobile-quick-status{
    align-items:stretch;
    flex-direction:column;
  }
  .sst-mobile-jump{
    text-align:center;
  }
  .sst-report-metrics{
    grid-template-columns:1fr !important;
  }
}


/* v7.3.1 UX corrections */
.sst-mobile-open-hint{display:none}
@media(min-width:761px){
  .sst-step-toggle{display:none !important}
}
@media(max-width:760px){
  .sst-mobile-open-hint{
    display:block;
    margin-top:8px !important;
    font-weight:750;
    color:var(--primary);
  }

  .sst-step-panel:not(.is-open) .sst-mobile-open-hint{
    display:block !important;
  }

  /* Make every guided section collapsible on mobile, including Trips and Result. */
  .sst-step-panel:not(.is-open) > :not(.sst-panel-head),
  .sst-step-panel.sst-mobile-collapsed:not(.is-open) > :not(.sst-panel-head){
    display:none !important;
  }

  /* Proper mobile order: inputs first, result next, then calendar/timeline/supporting notes. */
  .sst-layout{
    display:flex !important;
    flex-direction:column;
  }
  .sst-trips-panel{order:1}
  .sst-results{order:2}
  .sst-planned-panel{order:3}
  #sst-step-result{order:4}
  .sst-calendar-panel{order:5}
  .sst-timeline-panel{order:6}
  .sst-rule-summary-after{order:7}
  .sst-method-panel{order:8}
  .sst-disclaimer{order:9}

  .sst-trips-panel .sst-form .sst-btn,
  .sst-planned-panel .sst-form .sst-btn{
    white-space:nowrap;
  }

  .sst-step-panel .sst-panel-head{
    cursor:default;
  }
  .sst-step-toggle{
    display:grid !important;
  }
}


/* v7.3.2 calculator UX cleanup */
.sst-calc-toolbar-lower{
  margin-top:18px;
  margin-bottom:18px;
}
.sst-calc-toolbar-lower .sst-privacy-inline{
  background:var(--surface-2);
}
.sst-panel-head .sst-btn-danger{
  font-size:.86rem;
  padding:9px 12px;
  min-height:38px;
  opacity:.86;
  box-shadow:none;
}
.sst-panel-head .sst-btn-danger:hover{
  opacity:1;
}
.sst-table .sst-delete,
.sst-mobile-trip-card .sst-delete{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto;
  min-height:34px;
  padding:7px 11px;
  border-radius:11px;
  border:1px solid rgba(197,68,68,.22);
  background:rgba(197,68,68,.055);
  color:var(--danger);
  font-size:.82rem;
  font-weight:760;
  cursor:pointer;
  text-decoration:none;
}
.sst-table .sst-delete:hover,
.sst-mobile-trip-card .sst-delete:hover{
  background:rgba(197,68,68,.10);
  border-color:rgba(197,68,68,.34);
}
@media(max-width:760px){
  .sst-calc-toolbar{
    order:10;
  }
  .sst-calc-toolbar-lower{
    margin-top:16px;
    padding:0;
    background:transparent;
    border:0;
    box-shadow:none;
  }
  .sst-calc-toolbar-lower .sst-privacy-inline{
    font-size:.88rem;
    padding:11px 12px;
  }
  .sst-calc-toolbar-lower .sst-actions{
    margin-top:10px;
  }

  /* When a mobile card is closed, do not show clear buttons or any action buttons in the header. */
  .sst-step-panel:not(.is-open) .sst-panel-head .sst-btn-danger{
    display:none !important;
  }

  .sst-step-panel.is-open .sst-panel-head .sst-btn-danger{
    display:inline-flex !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    margin-top:10px;
    font-size:.78rem;
    padding:7px 10px;
    min-height:32px;
    border-radius:10px;
    opacity:.72;
  }

  .sst-mobile-open-hint{
    display:none !important;
  }

  .sst-mobile-trip-card .sst-delete{
    min-height:32px;
    padding:7px 10px;
    font-size:.8rem;
    justify-self:start;
  }

  /* Final mobile order: result before calendar and timeline. */
  .sst-trips-panel{order:1}
  .sst-results{order:2}
  .sst-planned-panel{order:3}
  #sst-step-result{order:4}
  .sst-calendar-panel{order:5}
  .sst-timeline-panel{order:6}
  .sst-calc-toolbar-lower{order:7}
  .sst-rule-summary-after{order:8}
  .sst-method-panel{order:9}
  .sst-disclaimer{order:10}
}


/* v7.3.3 mobile order + duplicate empty state fix */
.sst-mobile-trip-cards:empty{
  display:none !important;
}
@media(max-width:760px){
  .sst-main-flow{
    display:flex !important;
    flex-direction:column !important;
  }
  .sst-main-flow > .sst-trips-panel{order:1 !important}
  .sst-main-flow > .sst-results{order:2 !important}
  .sst-main-flow > .sst-planned-panel{order:3 !important}
  .sst-main-flow > #sst-step-result{order:4 !important}
  .sst-main-flow > .sst-calendar-panel{order:5 !important}
  .sst-main-flow > .sst-timeline-panel{order:6 !important}
  .sst-main-flow > .sst-calc-toolbar-lower{order:7 !important}
  .sst-main-flow > .sst-rule-summary-after{order:8 !important}
  .sst-main-flow > .sst-method-panel{order:9 !important}
  .sst-main-flow > .sst-disclaimer{order:10 !important}
}


/* v7.3.4 mobile result polish */
@media(max-width:760px){
  /* The visual usage bar is useful on desktop, but too cramped on mobile.
     Mobile already has summary cards and plain-English result copy. */
  .sst-report-chart{
    display:none !important;
  }

  .sst-report-grid-premium{
    gap:12px;
  }

  .sst-report-copy{
    margin-top:4px;
  }

  .sst-report-copy p{
    font-size:.94rem;
    line-height:1.55;
  }

  .sst-calendar-panel .sst-panel-head h3{
    gap:0;
  }

  .sst-calendar-panel .sst-panel-head h3::before{
    content:"";
    display:inline-grid;
    width:30px;
    height:30px;
    margin-right:8px;
    border-radius:11px;
    background:linear-gradient(135deg, rgba(74,108,255,.12), rgba(34,179,124,.12));
    border:1px solid var(--line);
    background-image:
      linear-gradient(135deg, rgba(74,108,255,.12), rgba(34,179,124,.12));
  }

  .sst-mobile-progress{
    grid-template-columns:repeat(3,1fr);
  }
}


/* v7.4.0 Premium Clarity update */
.sst-premium-intro,
.sst-plan-name-card,
.sst-insight-promo,
.sst-before-rely{
  border:1px solid var(--line);
  background:linear-gradient(135deg, rgba(74,108,255,.055), rgba(34,179,124,.045));
  border-radius:18px;
  box-shadow:var(--shadow);
}
.sst-premium-intro{
  padding:20px 22px;
  margin:0 0 18px;
}
.sst-premium-intro h3,
.sst-insight-promo h3{
  margin:4px 0 8px;
  color:var(--text);
  font-size:1.35rem;
}
.sst-premium-intro p,
.sst-insight-promo p{
  margin:0;
}
.sst-premium-intro.is-hidden{
  display:none;
}
.sst-plan-name-card{
  padding:18px 20px;
  margin:0 0 18px;
  display:grid;
  grid-template-columns:minmax(220px,420px) 1fr;
  gap:14px;
  align-items:end;
  background:var(--surface);
}
.sst-plan-name-card label{
  display:flex;
  flex-direction:column;
  gap:7px;
  color:var(--text);
  font-size:.94rem;
  font-weight:750;
}
.sst-plan-name-card input{
  width:100%;
  border-radius:14px;
  border:1px solid var(--line);
  background:var(--surface-2);
  padding:12px 14px;
  color:var(--text);
  font:inherit;
}
.sst-plan-name-card p{
  margin:0;
  color:var(--muted);
  line-height:1.5;
}
.sst-insight-promo{
  margin-top:18px;
  margin-bottom:18px;
  padding:20px 22px;
}
.sst-before-rely{
  grid-column:1 / -1;
  padding:16px 18px;
  margin-top:4px;
  box-shadow:none;
  background:var(--surface-2);
}
.sst-before-rely strong{
  display:block;
  color:var(--text);
  margin-bottom:6px;
  font-size:1rem;
}
.sst-before-rely p{
  margin:0;
  color:var(--muted);
  line-height:1.55;
}
@media(max-width:760px){
  .sst-premium-intro{
    padding:16px;
    margin-bottom:14px;
    border-radius:20px;
  }
  .sst-premium-intro h3{
    font-size:1.18rem;
  }
  .sst-plan-name-card{
    grid-template-columns:1fr;
    padding:15px;
    margin-bottom:14px;
    border-radius:20px;
  }
  .sst-plan-name-card p{
    font-size:.9rem;
  }
  .sst-insight-promo{
    padding:16px;
    border-radius:20px;
    margin-top:14px;
    margin-bottom:14px;
  }
  .sst-insight-promo h3{
    font-size:1.16rem;
  }
  .sst-before-rely{
    padding:14px;
    margin-top:10px;
  }
}


/* v7.4.1 export card + result timeline polish */
.sst-export-card{
  border:1px solid var(--line);
  background:var(--surface);
  box-shadow:var(--shadow);
  border-radius:24px;
  padding:18px;
  margin:18px 0;
  display:grid;
  grid-template-columns:minmax(240px,420px) auto;
  gap:14px 18px;
  align-items:end;
}
.sst-export-plan label{
  display:flex;
  flex-direction:column;
  gap:7px;
  color:var(--text);
  font-size:.94rem;
  font-weight:750;
}
.sst-export-plan input{
  width:100%;
  border-radius:14px;
  border:1px solid var(--line);
  background:var(--surface-2);
  padding:12px 14px;
  color:var(--text);
  font:inherit;
}
.sst-export-plan p,
.sst-export-privacy{
  margin:7px 0 0;
  color:var(--muted);
  line-height:1.45;
}
.sst-export-actions{
  display:flex;
  justify-content:flex-end;
  gap:10px;
}
.sst-export-privacy{
  grid-column:1 / -1;
  padding-top:10px;
  border-top:1px solid var(--line);
  font-size:.94rem;
}
.sst-export-privacy strong{
  color:var(--text);
}
.sst-export-privacy a{
  color:var(--primary);
  font-weight:800;
  text-decoration:none;
}
.sst-result-timeline{
  grid-column:1 / -1;
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid var(--line);
}
.sst-result-timeline h3{
  margin:0 0 12px;
  font-size:1.25rem;
  color:var(--text);
}
@media(max-width:760px){
  .sst-plan-name-card{
    display:none !important;
  }
  .sst-export-card{
    grid-template-columns:1fr;
    padding:15px;
    border-radius:20px;
    gap:12px;
    order:7 !important;
  }
  .sst-export-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    justify-content:stretch;
  }
  .sst-export-actions .sst-btn{
    width:100%;
    justify-content:center;
  }
  .sst-export-privacy{
    font-size:.88rem;
    padding-top:8px;
  }
  .sst-result-timeline{
    margin-top:14px;
    padding-top:14px;
  }
  .sst-result-timeline .sst-timeline{
    display:grid;
    gap:10px;
  }
  .sst-timeline-panel{
    display:none !important;
  }
  .sst-calendar-panel .sst-panel-head h3::before{
    display:none !important;
    content:none !important;
  }
  .sst-calendar-panel .sst-panel-head h3{
    padding-left:0 !important;
  }
}


/* v7.4.2 result/export layout polish */
.sst-report-line-head{
  grid-template-columns:auto 1fr auto;
  gap:16px;
  align-items:center;
}
.sst-report-line-head strong{
  justify-self:center;
  padding:0 10px;
  font-size:1rem;
  white-space:normal;
  text-align:center;
}
.sst-result-timeline{
  grid-column:1 / -1;
  margin-top:16px;
  padding:18px 0 0;
  border-top:1px solid var(--line);
}
.sst-result-timeline + .sst-report-copy{
  margin-top:18px;
}
.sst-export-card{
  padding:20px;
}
.sst-export-card-head{
  grid-column:1 / -1;
  margin-bottom:2px;
}
.sst-export-card-head h3{
  margin:4px 0 0;
  color:var(--text);
  font-size:1.25rem;
}
.sst-export-card-body{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:minmax(260px,520px) 1fr;
  gap:18px;
  align-items:end;
}
.sst-export-actions{
  align-self:end;
}
.sst-export-privacy{
  margin-top:2px;
  border-top:1px solid var(--line);
  background:var(--surface-2);
  border-radius:16px;
  padding:12px 14px;
}
@media(max-width:760px){
  .sst-report-line-head{
    display:none !important;
  }
  .sst-result-timeline{
    margin-top:14px;
    padding-top:14px;
  }
  .sst-result-timeline + .sst-report-copy{
    margin-top:14px;
  }
  .sst-export-card{
    padding:16px;
  }
  .sst-export-card-head h3{
    font-size:1.12rem;
  }
  .sst-export-card-body{
    grid-template-columns:1fr;
    gap:12px;
  }
  .sst-export-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .sst-export-privacy{
    padding:11px 12px;
    border-radius:14px;
  }
}


/* v7.4.2 result flow and report options polish */
.sst-report-line-head.simplified{
  display:block;
  text-align:left;
  margin-bottom:10px;
}
.sst-report-line-head.simplified strong{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:6px 10px;
  border-radius:999px;
  background:var(--surface);
  border:1px solid var(--line);
  color:var(--text);
  font-size:.95rem;
}
.sst-export-card{
  padding:20px 22px;
}
.sst-export-head{
  grid-column:1 / -1;
}
.sst-export-head h3{
  margin:4px 0 6px;
  color:var(--text);
  font-size:1.25rem;
}
.sst-export-head p:not(.sst-kicker){
  margin:0;
  color:var(--muted);
  line-height:1.45;
}
.sst-export-row{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:minmax(260px,420px) 1fr;
  gap:14px;
  align-items:end;
}
.sst-export-plan p{
  display:none;
}
.sst-export-privacy{
  background:var(--surface-2);
  border:1px solid var(--line);
  border-radius:16px;
  padding:12px 14px;
}
.sst-result-timeline{
  margin-top:14px;
  padding-top:16px;
  border-top:1px solid var(--line);
}
@media(max-width:760px){
  .sst-report-line-head.simplified{
    display:none;
  }
  .sst-export-card{
    padding:15px;
  }
  .sst-export-row{
    grid-template-columns:1fr;
  }
  .sst-export-head h3{
    font-size:1.12rem;
  }
  .sst-export-actions{
    grid-template-columns:1fr 1fr;
  }
  .sst-export-privacy{
    font-size:.88rem;
    border-radius:14px;
  }
}


/* v7.4.3 report bar, export card and insight copy polish */
.sst-report-line-head.simplified{
  display:none !important;
}
.sst-report-chart{
  padding-top:18px;
}
.sst-report-line{
  width:100%;
}
.sst-export-card{
  grid-template-columns:1fr;
}
.sst-export-head{
  max-width:820px;
}
.sst-export-row{
  grid-template-columns:minmax(260px,520px) auto;
  align-items:end;
}
.sst-export-actions{
  align-self:end;
}
.sst-export-plan input{
  min-height:56px;
}
.sst-export-privacy{
  margin-top:0;
  background:linear-gradient(135deg, rgba(74,108,255,.035), rgba(34,179,124,.035));
}
.sst-day-insight h3{
  margin-top:0;
}
@media(max-width:760px){
  .sst-report-chart{
    display:none !important;
  }
  .sst-export-row{
    grid-template-columns:1fr;
  }
  .sst-export-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
}


/* v7.4.4 result bar + plan name hotfix */
.sst-report-chart{
  grid-template-columns:1fr !important;
}
.sst-report-line{
  display:block;
  width:100% !important;
  min-width:100%;
}
.sst-report-line-used,
.sst-report-line-future{
  min-width:0;
}
.sst-report-line-legend{
  margin-top:2px;
}


/* v7.4.5 mobile date input containment hotfix */
@media(max-width:760px){
  .sst-panel,
  .sst-step-panel,
  .sst-trips-panel,
  .sst-planned-panel{
    overflow:hidden;
  }

  .sst-form,
  .sst-trips-panel .sst-form,
  .sst-planned-panel .sst-form{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
  }

  .sst-form label,
  .sst-trips-panel .sst-form label,
  .sst-planned-panel .sst-form label{
    display:flex !important;
    flex-direction:column !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }

  .sst-form input,
  .sst-form select,
  .sst-form textarea,
  .sst-trips-panel .sst-form input,
  .sst-planned-panel .sst-form input{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  .sst-form input[type="date"]{
    appearance:auto;
    -webkit-appearance:none;
    min-height:58px;
    padding-left:16px !important;
    padding-right:16px !important;
  }

  .sst-form .sst-btn{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    white-space:normal !important;
  }

  .sst-step-panel .sst-panel-head{
    min-width:0;
  }
}


/* v7.4.7 Calendar range guard update */
.sst-calendar-range-control{
  grid-column:1 / -1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px 16px;
  border:1px solid var(--line);
  border-radius:18px;
  background:linear-gradient(135deg, rgba(74,108,255,.055), rgba(34,179,124,.045));
  margin-bottom:12px;
}
.sst-calendar-range-control strong{
  display:block;
  color:var(--text);
  font-size:.98rem;
  margin-bottom:2px;
}
.sst-calendar-range-control span{
  display:block;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.35;
}
.sst-calendar-range-actions{
  display:flex;
  gap:8px;
  flex:none;
}
.sst-calendar-range-actions button{
  border:1px solid var(--line);
  background:var(--surface);
  color:var(--text);
  border-radius:999px;
  padding:9px 12px;
  font:inherit;
  font-size:.88rem;
  font-weight:800;
  cursor:pointer;
}
.sst-calendar-range-actions button.active{
  background:var(--primary);
  border-color:var(--primary);
  color:#fff;
}
.sst-calendar-range-note{
  grid-column:1 / -1;
  border:1px solid rgba(74,108,255,.18);
  background:var(--surface-2);
  color:var(--muted);
  border-radius:16px;
  padding:12px 14px;
  line-height:1.5;
  margin-bottom:12px;
}
.sst-calendar-range-note strong{
  color:var(--text);
}
@media(max-width:760px){
  .sst-calendar-range-control{
    align-items:stretch;
    flex-direction:column;
    padding:13px;
    border-radius:16px;
  }
  .sst-calendar-range-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .sst-calendar-range-actions button{
    width:100%;
    padding:10px;
    font-size:.84rem;
  }
  .sst-calendar-range-note{
    padding:11px 12px;
    border-radius:15px;
    font-size:.9rem;
  }
}


/* v7.4.9 Calendar browse and exit-date hotfix */
.sst-calendar-range-control small{
  display:block;
  margin-top:6px;
  color:var(--text);
  font-weight:800;
}
.sst-calendar-page-actions{
  grid-column:1 / -1;
  display:flex;
  justify-content:flex-end;
  gap:8px;
  padding-top:2px;
}
.sst-calendar-page-actions button{
  border:1px solid var(--line);
  background:var(--surface);
  color:var(--text);
  border-radius:999px;
  padding:9px 12px;
  font:inherit;
  font-size:.86rem;
  font-weight:800;
  cursor:pointer;
}
.sst-calendar-page-actions button:disabled{
  opacity:.45;
  cursor:not-allowed;
}
@media(max-width:760px){
  .sst-calendar-page-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    justify-content:stretch;
  }
  .sst-calendar-page-actions button{
    width:100%;
    padding:10px;
    font-size:.82rem;
  }
}


/* v7.4.12 Mobile calendar pager update */
.sst-calendar-summary-strip{
  grid-column:1 / -1;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--surface-2);
  color:var(--muted);
  font-size:.92rem;
  line-height:1.35;
}
.sst-calendar-summary-strip span{
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.sst-calendar-summary-strip strong{
  color:var(--text);
}
.sst-calendar-summary-strip .dot{
  width:11px;
  height:11px;
  border-radius:4px;
  border:1px solid var(--line);
  display:inline-block;
}
.sst-calendar-summary-strip .dot.previous{background:rgba(91,101,246,.16);border-color:rgba(91,101,246,.32)}
.sst-calendar-summary-strip .dot.planned{background:rgba(34,179,124,.16);border-color:rgba(34,179,124,.32)}
.sst-calendar-summary-strip .dot.over{background:rgba(229,86,86,.14);border-color:rgba(229,86,86,.32)}
.sst-mobile-calendar-pager{
  display:none;
}
@media(max-width:760px){
  .sst-mobile-calendar-pager{
    grid-column:1 / -1;
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:10px;
    padding:12px;
    border:1px solid var(--line);
    border-radius:18px;
    background:linear-gradient(135deg, rgba(74,108,255,.055), rgba(34,179,124,.045));
    margin-bottom:10px;
  }
  .sst-mobile-calendar-pager button{
    width:42px;
    height:42px;
    border-radius:14px;
    border:1px solid var(--line);
    background:var(--surface);
    color:var(--text);
    font-size:1.55rem;
    line-height:1;
    font-weight:800;
    cursor:pointer;
  }
  .sst-mobile-calendar-pager button:disabled{
    opacity:.42;
    cursor:not-allowed;
  }
  .sst-mobile-calendar-pager div{
    text-align:center;
    min-width:0;
  }
  .sst-mobile-calendar-pager strong{
    display:block;
    color:var(--text);
    font-size:1rem;
    line-height:1.2;
  }
  .sst-mobile-calendar-pager span{
    display:block;
    color:var(--muted);
    font-size:.82rem;
    margin-top:2px;
  }
  .sst-calendar-summary-strip{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    padding:11px;
    font-size:.82rem;
  }
  .sst-calendar-summary-strip span:first-child{
    grid-column:1 / -1;
  }
  .sst-calendar-panel .sst-calendar-grid,
  .sst-calendar-grid{
    gap:12px;
  }
}


/* v7.4.13 Calendar summary visibility hotfix */
.sst-calendar-summary-strip{
  margin-bottom:12px;
}
.sst-calendar-summary-strip .summary-title{
  color:var(--text);
  font-weight:900;
}
@media(max-width:760px){
  .sst-calendar-summary-strip{
    margin-bottom:10px;
  }
  .sst-calendar-summary-strip .summary-title{
    grid-column:1 / -1;
  }
}


/* v7.4.15 Calendar stability rollback + safe summary */
.sst-calendar-summary-visible{
  grid-column:1 / -1;
  display:flex !important;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin:0 0 12px !important;
  padding:12px 14px !important;
  border:1px solid var(--line);
  border-radius:16px;
  background:linear-gradient(135deg, rgba(74,108,255,.045), rgba(34,179,124,.035));
  color:var(--muted);
  font-size:.9rem;
  line-height:1.35;
}
.sst-calendar-summary-visible span{
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.sst-calendar-summary-visible .summary-title{
  color:var(--text);
  font-weight:900;
}
.sst-calendar-summary-visible strong{
  color:var(--text);
}
.sst-calendar-summary-visible .dot{
  width:10px;
  height:10px;
  border-radius:4px;
  border:1px solid var(--line);
  display:inline-block;
}
.sst-calendar-summary-visible .dot.previous{background:rgba(91,101,246,.16);border-color:rgba(91,101,246,.32)}
.sst-calendar-summary-visible .dot.planned{background:rgba(34,179,124,.16);border-color:rgba(34,179,124,.32)}
.sst-calendar-summary-visible .dot.over{background:rgba(229,86,86,.14);border-color:rgba(229,86,86,.32)}
@media(max-width:760px){
  .sst-calendar-summary-visible{
    display:grid !important;
    grid-template-columns:1fr;
    gap:7px;
    padding:11px !important;
    font-size:.82rem;
  }
  .sst-calendar-summary-visible span{
    width:100%;
    box-sizing:border-box;
  }
}


/* v7.4.17 Relevant months focus + responsive overflow fixes */
.sst-table-wrap{
  width:100%;
  max-width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
}
.sst-table{
  max-width:100%;
}
@media(max-width:1180px){
  .sst-planned-panel .sst-table,
  .sst-trips-panel .sst-table{
    min-width:760px;
  }
  .sst-planned-panel .sst-table-wrap,
  .sst-trips-panel .sst-table-wrap{
    border-radius:18px;
  }
}
@media(max-width:760px){
  .sst-day-insight{
    overflow:hidden;
  }
  .sst-day-insight-head{
    display:flex;
    flex-direction:column;
    align-items:flex-start !important;
    gap:12px;
    min-width:0;
  }
  .sst-day-insight-head > div,
  .sst-day-insight-head h3{
    width:100%;
    min-width:0;
    overflow-wrap:anywhere;
  }
  .sst-day-insight-head [data-sst-insight-date]{
    position:static !important;
    width:100%;
    max-width:100%;
    box-sizing:border-box;
    display:block;
    white-space:normal !important;
    overflow-wrap:anywhere;
    text-align:left;
    border-radius:16px;
    padding:12px 14px;
    font-size:.92rem;
    line-height:1.35;
  }
  .sst-day-insight-grid{
    grid-template-columns:1fr !important;
  }
  .sst-day-insight-card{
    min-width:0;
    width:100%;
    box-sizing:border-box;
  }
  .sst-day-insight-card strong{
    overflow-wrap:anywhere;
  }
}


/* v7.4.18 Relevant preview length + tablet containment polish */
.sst-layout,
.sst-main-flow,
.sst-panel,
.sst-step-panel,
.sst-planned-panel,
.sst-trips-panel{
  min-width:0;
}
.sst-table-wrap{
  display:block;
  width:100%;
  max-width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  box-sizing:border-box;
}
@media(min-width:761px) and (max-width:1200px){
  .sst-planned-panel .sst-table,
  .sst-trips-panel .sst-table{
    min-width:720px;
  }
  .sst-table-wrap{
    scrollbar-width:thin;
  }
}
@media(max-width:760px){
  .sst-day-insight-head [data-sst-insight-date]{
    max-width:100% !important;
    overflow:hidden;
    text-overflow:clip;
  }
}


/* v7.4.19 Relevant month anchor fix */
.sst-calendar-summary-visible{
  margin-bottom:14px !important;
}


/* v7.4.20 Full range desktop page fix */
.sst-calendar-range-control small{
  font-weight:900;
}


/* v7.4.21 Previous-trip date guard + tablet trip cards */
@media(min-width:761px) and (max-width:1180px){
  .sst-trips-panel .sst-table-wrap,
  .sst-planned-panel .sst-table-wrap{
    display:none !important;
  }
  .sst-trips-panel .sst-mobile-trip-cards,
  .sst-planned-panel .sst-mobile-trip-cards{
    display:grid !important;
    gap:12px;
    margin-top:14px;
  }
  .sst-trips-panel .sst-mobile-trip-card,
  .sst-planned-panel .sst-mobile-trip-card,
  .sst-trips-panel .sst-mobile-empty,
  .sst-planned-panel .sst-mobile-empty{
    border:1px solid var(--line);
    border-radius:18px;
    background:var(--surface-2);
    padding:14px 16px;
  }
  .sst-trips-panel .sst-mobile-trip-card,
  .sst-planned-panel .sst-mobile-trip-card{
    display:grid;
    grid-template-columns:1fr auto;
    gap:8px 14px;
    align-items:center;
  }
  .sst-trips-panel .sst-mobile-trip-card div,
  .sst-planned-panel .sst-mobile-trip-card div{
    display:grid;
    gap:3px;
    min-width:0;
  }
  .sst-trips-panel .sst-mobile-trip-card span,
  .sst-planned-panel .sst-mobile-trip-card span{
    color:var(--muted);
    font-weight:800;
    font-size:.78rem;
    text-transform:uppercase;
    letter-spacing:.05em;
  }
  .sst-trips-panel .sst-mobile-trip-card strong,
  .sst-planned-panel .sst-mobile-trip-card strong{
    color:var(--text);
    font-size:1rem;
    line-height:1.25;
    overflow-wrap:anywhere;
  }
  .sst-trips-panel .sst-mobile-trip-card p,
  .sst-trips-panel .sst-mobile-trip-card small,
  .sst-planned-panel .sst-mobile-trip-card p,
  .sst-planned-panel .sst-mobile-trip-card small{
    margin:0;
    color:var(--muted);
    line-height:1.4;
    overflow-wrap:anywhere;
  }
  .sst-trips-panel .sst-mobile-trip-card p,
  .sst-planned-panel .sst-mobile-trip-card p{
    grid-column:1;
  }
  .sst-trips-panel .sst-mobile-trip-card small,
  .sst-planned-panel .sst-mobile-trip-card small{
    grid-column:1;
  }
  .sst-trips-panel .sst-mobile-trip-card .sst-delete,
  .sst-planned-panel .sst-mobile-trip-card .sst-delete{
    grid-column:2;
    grid-row:1 / span 3;
    align-self:center;
    justify-self:end;
    white-space:nowrap;
  }
  .sst-planned-panel .sst-mobile-trip-card.risk{
    border-color:rgba(197,68,68,.28);
    background:rgba(197,68,68,.055);
  }
}
@media(max-width:760px){
  .sst-trips-panel .sst-table-wrap,
  .sst-planned-panel .sst-table-wrap{
    display:none !important;
  }
  .sst-trips-panel .sst-mobile-trip-card .sst-delete,
  .sst-planned-panel .sst-mobile-trip-card .sst-delete{
    justify-self:start;
  }
}


/* v7.5.0 Premium planning tools preview */
.sst-premium-tools-panel{
  border-color:rgba(91,101,246,.18);
  background:
    radial-gradient(circle at 0% 0%, rgba(91,101,246,.07), transparent 34%),
    radial-gradient(circle at 100% 0%, rgba(34,179,124,.055), transparent 34%),
    var(--surface);
}
.sst-premium-tools-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.sst-premium-tool-card{
  border:1px solid var(--line);
  border-radius:18px;
  background:var(--surface-2);
  padding:18px;
  box-shadow:0 14px 34px rgba(24,42,80,.05);
}
.sst-premium-tool-card h4{
  margin:0 0 6px;
  color:var(--text);
  font-size:1.15rem;
}
.sst-premium-tool-card p{
  margin:0 0 14px;
  color:var(--muted);
  line-height:1.45;
}
.sst-tool-form{
  display:grid;
  grid-template-columns:1fr 150px;
  gap:12px;
  align-items:end;
}
.sst-compare-form{
  grid-template-columns:1fr 110px;
}
.sst-tool-form label{
  display:grid;
  gap:6px;
  color:var(--text);
  font-weight:800;
}
.sst-tool-form input,
.sst-tool-form select{
  width:100%;
  border:1px solid var(--line);
  border-radius:15px;
  background:var(--surface);
  color:var(--text);
  padding:12px 13px;
  font:inherit;
  box-sizing:border-box;
}
.sst-tool-form .sst-btn{
  grid-column:1 / -1;
}
.sst-tool-result{
  margin-top:14px;
}
.sst-tool-message,
.sst-tool-outcome{
  border:1px solid var(--line);
  border-radius:16px;
  padding:13px 14px;
  background:var(--surface);
  color:var(--muted);
  line-height:1.45;
}
.sst-tool-message.success,
.sst-tool-outcome.fits{
  border-color:rgba(24,169,120,.28);
  background:rgba(24,169,120,.07);
}
.sst-tool-message.error,
.sst-tool-outcome.risk{
  border-color:rgba(229,86,86,.32);
  background:rgba(229,86,86,.07);
}
.sst-tool-outcome{
  display:grid;
  gap:6px;
}
.sst-tool-outcome strong{
  color:var(--text);
}
.sst-tool-outcome.fits strong{
  color:var(--success);
}
.sst-tool-outcome.risk strong{
  color:var(--danger);
}
.sst-compare-table-wrap{
  margin-top:12px;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.sst-compare-table{
  width:100%;
  min-width:620px;
  border-collapse:separate;
  border-spacing:0;
  overflow:hidden;
  border-radius:14px;
  border:1px solid var(--line);
}
.sst-compare-table th,
.sst-compare-table td{
  padding:10px 11px;
  border-bottom:1px solid var(--line);
  text-align:left;
  white-space:nowrap;
}
.sst-compare-table th{
  background:rgba(91,101,246,.07);
  color:var(--text);
  font-weight:900;
}
.sst-compare-table tr.ok td:last-child{
  color:var(--success);
  font-weight:900;
}
.sst-compare-table tr.risk td:last-child{
  color:var(--danger);
  font-weight:900;
}
@media(max-width:900px){
  .sst-premium-tools-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:760px){
  .sst-tool-form,
  .sst-compare-form{
    grid-template-columns:1fr;
  }
  .sst-premium-tool-card{
    padding:15px;
    border-radius:18px;
  }
}


/* v7.5.1 Premium tools folder tabs */
.sst-premium-folder-tabs{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:4px 0 16px;
  padding:8px;
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(245,248,255,.82);
}
.sst-premium-folder-tabs button{
  appearance:none;
  border:1px solid var(--line);
  background:var(--surface);
  color:var(--text);
  border-radius:14px;
  padding:11px 14px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(24,42,80,.04);
}
.sst-premium-folder-tabs button.active{
  background:var(--primary);
  border-color:var(--primary);
  color:#fff;
  box-shadow:0 12px 24px rgba(91,101,246,.22);
}
.sst-premium-tools-folder{
  display:none;
}
.sst-premium-tools-folder.active{
  display:block;
}
.sst-premium-tools-panel .sst-premium-tool-card{
  max-width:none;
}
@media(min-width:901px){
  .sst-premium-tools-folder.active .sst-premium-tool-card{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);
    gap:16px 22px;
    align-items:start;
  }
  .sst-premium-tools-folder.active .sst-premium-tool-card h4,
  .sst-premium-tools-folder.active .sst-premium-tool-card p{
    grid-column:1;
  }
  .sst-premium-tools-folder.active .sst-premium-tool-card .sst-tool-form{
    grid-column:1;
  }
  .sst-premium-tools-folder.active .sst-premium-tool-card .sst-tool-result{
    grid-column:2;
    grid-row:1 / span 3;
    margin-top:0;
  }
}
@media(max-width:760px){
  .sst-premium-folder-tabs{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
  }
  .sst-premium-folder-tabs button{
    width:100%;
    text-align:left;
  }
}


/* v7.5.3 Premium tools folder fix + calendar side panel */
.sst-premium-folder-tabs.premium-folder-style{
  position:relative;
  display:flex;
  align-items:flex-end;
  gap:0;
  margin:8px 0 0;
  padding:0 12px;
  border:0;
  border-bottom:4px solid var(--sst-tab-soft-border,rgba(91,101,246,.22));
  background:transparent;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.sst-premium-folder-tabs.premium-folder-style button{
  position:relative;
  appearance:none;
  min-width:240px;
  border:1px solid rgba(91,101,246,.18);
  border-bottom:0;
  border-radius:18px 18px 0 0;
  padding:15px 18px 14px;
  margin:0 -5px 0 0;
  background:linear-gradient(180deg, #fff, #f3f7ff);
  color:var(--text);
  text-align:left;
  cursor:pointer;
  box-shadow:0 -3px 14px rgba(24,42,80,.035);
  transform:translateY(4px);
  transition:transform .18s ease, background .18s ease, box-shadow .18s ease;
}
.sst-premium-folder-tabs.premium-folder-style button.active{
  z-index:2;
  transform:translateY(0);
  background:linear-gradient(135deg,var(--sst-tab-active-soft,#5b65f6),var(--sst-tab-active-soft-2,#3451e8));
  border-color:#5b65f6;
  color:#fff;
  box-shadow:0 -8px 24px rgba(91,101,246,.20);
}
.sst-premium-tools-folder.active{
  border:1px solid var(--line);
  border-top:0;
  border-radius:0 0 24px 24px;
  background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(247,250,255,.88));
  padding:18px;
}
.sst-premium-tools-folder.active .sst-premium-tool-card{
  margin:0;
  background:transparent;
  box-shadow:none;
}
.sst-report-details{
  padding:0 !important;
  overflow:hidden;
}
.sst-report-details > summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:22px 24px;
}
.sst-report-details > summary::-webkit-details-marker{display:none}
.sst-report-details > summary span{display:grid;gap:4px}
.sst-report-details > summary strong{
  color:var(--text);
  font-size:1.2rem;
}
.sst-report-details > summary small{
  color:var(--muted);
  font-weight:700;
}
.sst-report-details > summary b{
  border:1px solid var(--line);
  border-radius:999px;
  padding:9px 14px;
  color:var(--text);
  background:var(--surface);
}
.sst-report-details[open] > summary b{font-size:0}
.sst-report-details[open] > summary b::before{
  content:"Close";
  font-size:.95rem;
}
.sst-report-details-body{
  border-top:1px solid var(--line);
  padding:22px 24px 24px;
}
.sst-calendar-side-panel{
  align-self:start;
  border:1px solid var(--line);
  border-radius:18px;
  background:
    radial-gradient(circle at 100% 0%, rgba(34,179,124,.08), transparent 36%),
    var(--surface-2);
  padding:18px;
  min-height:260px;
  display:grid;
  gap:12px;
  box-shadow:0 12px 28px rgba(24,42,80,.045);
}
.sst-calendar-side-panel h4{
  margin:0;
  color:var(--text);
  font-size:1.35rem;
}
.sst-calendar-side-stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.sst-calendar-side-stats span{
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--surface);
  padding:11px;
  display:grid;
  gap:3px;
}
.sst-calendar-side-stats strong{
  color:var(--text);
  font-size:1.3rem;
}
.sst-calendar-side-stats small{
  color:var(--muted);
  font-weight:800;
  font-size:.75rem;
}
.sst-calendar-side-note{
  border:1px solid rgba(91,101,246,.18);
  border-radius:16px;
  background:rgba(91,101,246,.055);
  padding:12px 13px;
  display:grid;
  gap:5px;
}
.sst-calendar-side-note strong{
  color:var(--text);
}
.sst-calendar-side-note span,
.sst-calendar-side-panel p{
  color:var(--muted);
  margin:0;
  line-height:1.45;
}
@media(max-width:1180px){
  .sst-calendar-side-panel{
    grid-column:1 / -1;
  }
}
@media(max-width:760px){
  .sst-premium-folder-tabs.premium-folder-style{
    padding:0 8px;
  }
  .sst-premium-folder-tabs.premium-folder-style button{
    min-width:190px;
    padding:12px 14px;
  }
  .sst-premium-tools-folder.active{
    padding:14px;
    border-radius:0 0 20px 20px;
  }
  .sst-report-details > summary{
    padding:18px;
  }
  .sst-report-details-body{
    padding:18px;
  }
  .sst-calendar-side-panel{
    display:none;
  }
}


/* v7.5.5 Result/Calendar tabs + simplified calendar controls */
.sst-result-workspace-panel,
.sst-premium-tools-panel,
.sst-report-details{
  margin-top:24px;
}
.sst-result-folder-tabs.premium-folder-style{
  position:relative;
  display:flex;
  align-items:flex-end;
  gap:0;
  margin:10px 0 0;
  padding:0 12px;
  border-bottom:4px solid var(--sst-tab-soft-border,rgba(91,101,246,.22));
  overflow:visible;
}
.sst-result-folder-tabs.premium-folder-style button{
  position:relative;
  appearance:none;
  min-width:245px;
  border:1px solid rgba(91,101,246,.18);
  border-bottom:0;
  border-radius:18px 18px 0 0;
  padding:15px 18px 14px;
  margin:0 -5px 0 0;
  background:linear-gradient(180deg, #fff, #f3f7ff);
  color:var(--text);
  text-align:left;
  cursor:pointer;
  box-shadow:0 -3px 14px rgba(24,42,80,.035);
  transform:translateY(4px);
}
.sst-result-folder-tabs.premium-folder-style button span{
  display:block;
  font-weight:950;
  white-space:nowrap;
}
.sst-result-folder-tabs.premium-folder-style button small{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-weight:750;
  font-size:.78rem;
}
.sst-result-folder-tabs.premium-folder-style button.active{
  z-index:2;
  transform:translateY(0);
  background:linear-gradient(135deg,var(--sst-tab-active-soft,#5b65f6),var(--sst-tab-active-soft-2,#3451e8));
  border-color:#5b65f6;
  color:#fff;
  box-shadow:0 -8px 24px rgba(91,101,246,.20);
}
.sst-result-folder-tabs.premium-folder-style button.active small{
  color:rgba(255,255,255,.82);
}
.sst-result-folder{
  border:1px solid var(--line);
  border-top:0;
  border-radius:0 0 24px 24px;
  background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(247,250,255,.88));
  padding:20px;
}
.sst-result-tab-panel{
  margin:0 !important;
  border:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  padding:0 !important;
}
.sst-result-tab-panel > .sst-panel-head{
  display:none !important;
}
.sst-result-tab-intro{
  margin:0 0 16px !important;
}
.sst-premium-folder-tabs.premium-folder-style{
  overflow:visible !important;
  scrollbar-width:none;
}
.sst-premium-folder-tabs.premium-folder-style::-webkit-scrollbar{
  display:none;
}
.sst-premium-tools-panel{
  overflow:visible;
}
.sst-premium-tools-folder.active{
  padding:20px 22px !important;
}
@media(min-width:901px){
  .sst-premium-tools-folder.active .sst-premium-tool-card{
    grid-template-columns:minmax(340px,0.82fr) minmax(360px,1fr) !important;
    gap:22px 30px !important;
    align-items:center !important;
  }
  .sst-premium-tools-folder.active .sst-premium-tool-card .sst-tool-form{
    max-width:640px;
  }
  .sst-premium-tools-folder.active .sst-tool-form{
    grid-template-columns:minmax(210px,1fr) minmax(130px,160px);
    gap:12px 14px;
  }
  .sst-premium-tools-folder.active .sst-compare-form{
    grid-template-columns:minmax(210px,1fr) minmax(95px,120px);
  }
  .sst-premium-tools-folder.active .sst-tool-result{
    align-self:stretch;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
  .sst-premium-tools-folder.active .sst-tool-outcome,
  .sst-premium-tools-folder.active .sst-tool-message{
    min-height:126px;
  }
}
.sst-compare-table{
  min-width:0 !important;
  width:100%;
}
.sst-compare-table th,
.sst-compare-table td{
  white-space:normal !important;
  line-height:1.32;
}
.sst-compare-table th:nth-child(2),
.sst-compare-table td:nth-child(2){
  min-width:180px;
}
.sst-calendar-range-control.simplified .sst-calendar-range-actions{
  display:none !important;
}
.sst-calendar-range-control.simplified{
  align-items:center;
}
.sst-calendar-range-control.simplified .sst-calendar-page-actions{
  margin-left:auto;
}
.sst-calendar-side-panel{
  display:none !important;
}
.sst-report-details > summary b.sst-details-arrow{
  width:46px;
  height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0;
  font-size:0;
}
.sst-report-details > summary b.sst-details-arrow::before{
  content:"";
  width:12px;
  height:12px;
  border-right:3px solid currentColor;
  border-bottom:3px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
}
.sst-report-details[open] > summary b.sst-details-arrow::before{
  transform:rotate(225deg) translateY(-2px);
}
@media(max-width:900px){
  .sst-result-folder-tabs.premium-folder-style{
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .sst-result-folder-tabs.premium-folder-style::-webkit-scrollbar{
    display:none;
  }
}
@media(max-width:760px){
  .sst-result-workspace-panel,
  .sst-premium-tools-panel,
  .sst-report-details{
    margin-top:18px;
  }
  .sst-result-folder-tabs.premium-folder-style{
    padding:0 8px;
    overflow-x:auto;
  }
  .sst-result-folder-tabs.premium-folder-style button{
    min-width:185px;
    padding:12px 14px;
  }
  .sst-result-folder{
    padding:14px;
    border-radius:0 0 20px 20px;
  }
  .sst-premium-tools-folder.active .sst-premium-tool-card{
    display:block !important;
  }
  .sst-premium-tools-folder.active{
    padding:14px !important;
  }
  .sst-calendar-range-control.simplified .sst-calendar-page-actions{
    display:none !important;
  }
}


/* v7.5.6 Mobile tab polish + premium tools refinement */
:root{
  --sst-tab-active-soft:#4f58e8;
  --sst-tab-active-soft-2:#3f4bd6;
}
.sst-result-folder-tabs.premium-folder-style,
.sst-premium-folder-tabs.premium-folder-style{
  border-bottom-color:var(--sst-tab-soft-border,rgba(91,101,246,.16)) !important;
}
.sst-result-folder-tabs.premium-folder-style button.active,
.sst-premium-folder-tabs.premium-folder-style button.active{
  background:linear-gradient(135deg,var(--sst-tab-active-soft),var(--sst-tab-active-soft-2)) !important;
  box-shadow:0 -6px 18px rgba(79,88,232,.16) !important;
}
.sst-result-folder-tabs.premium-folder-style button,
.sst-premium-folder-tabs.premium-folder-style button{
  box-shadow:0 -2px 10px rgba(24,42,80,.025) !important;
}
.sst-premium-tools-panel .sst-panel-head h3,
.sst-result-workspace-panel .sst-panel-head h3{
  line-height:1.12;
}
.sst-premium-tools-folder.active .sst-premium-tool-card{
  min-height:0;
}
.sst-premium-tools-folder.active .sst-tool-form label,
.sst-premium-tools-folder.active .sst-compare-form label{
  font-size:.92rem !important;
  line-height:1.2 !important;
  color:var(--text) !important;
  font-weight:850 !important;
  letter-spacing:0 !important;
}
.sst-premium-tools-folder.active .sst-tool-form input,
.sst-premium-tools-folder.active .sst-tool-form select,
.sst-premium-tools-folder.active .sst-compare-form input,
.sst-premium-tools-folder.active .sst-compare-form select{
  min-height:54px !important;
  height:54px !important;
  padding:0 16px !important;
  font-size:1rem !important;
  font-weight:760 !important;
  border-radius:15px !important;
  box-sizing:border-box !important;
}
.sst-premium-tools-folder.active .sst-btn{
  min-height:54px !important;
  font-size:1rem !important;
}
.sst-premium-tools-folder.active .sst-tool-result{
  font-size:1rem;
  color:var(--muted);
}
@media(min-width:901px){
  .sst-premium-tools-folder.active .sst-premium-tool-card{
    grid-template-columns:minmax(360px,520px) minmax(320px,1fr) !important;
    gap:22px 34px !important;
    align-items:center !important;
  }
  .sst-premium-tools-folder.active .sst-tool-form{
    max-width:520px !important;
  }
  .sst-premium-tools-folder.active .sst-tool-form:not(.sst-compare-form){
    grid-template-columns:minmax(220px,1fr) 145px !important;
  }
  .sst-premium-tools-folder.active .sst-compare-form{
    grid-template-columns:minmax(220px,1fr) 112px !important;
  }
  .sst-premium-tools-folder.active .sst-tool-form button{
    grid-column:1 / -1;
  }
}
@media(max-width:760px){
  .sst-result-folder-tabs.premium-folder-style{
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;
    padding:0 10px !important;
    border-bottom:4px solid var(--sst-tab-soft-border,rgba(91,101,246,.14)) !important;
    overflow:visible !important;
  }
  .sst-result-folder-tabs.premium-folder-style button{
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    border-radius:18px 18px 0 0 !important;
    transform:none !important;
  }
  .sst-result-folder-tabs.premium-folder-style button + button{
    border-radius:0 0 18px 18px !important;
    border-top:0 !important;
  }
  .sst-result-folder-tabs.premium-folder-style button.active{
    border-radius:18px 18px 0 0 !important;
  }
  .sst-result-folder-tabs.premium-folder-style button.active + button{
    border-radius:0 0 18px 18px !important;
  }
  .sst-result-folder{
    border-radius:0 0 22px 22px !important;
  }
  .sst-result-tab-intro{
    padding:16px !important;
  }
  .sst-result-tab-intro h3{
    font-size:1.12rem !important;
  }
  .sst-result-tab-intro p{
    font-size:.95rem !important;
  }
  .sst-premium-folder-tabs.premium-folder-style{
    flex-direction:column !important;
    align-items:stretch !important;
    overflow:visible !important;
    padding:0 10px !important;
  }
  .sst-premium-folder-tabs.premium-folder-style button{
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    transform:none !important;
  }
  .sst-premium-folder-tabs.premium-folder-style button:first-child{
    border-radius:18px 18px 0 0 !important;
  }
  .sst-premium-folder-tabs.premium-folder-style button:last-child{
    border-radius:0 0 18px 18px !important;
    border-top:0 !important;
  }
  .sst-premium-tools-folder.active .sst-premium-tool-card{
    display:block !important;
    padding:0 !important;
  }
  .sst-premium-tools-folder.active .sst-tool-form,
  .sst-premium-tools-folder.active .sst-compare-form{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }
  .sst-premium-tools-folder.active .sst-tool-form label,
  .sst-premium-tools-folder.active .sst-compare-form label{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    font-size:.9rem !important;
  }
  .sst-premium-tools-folder.active .sst-tool-form input,
  .sst-premium-tools-folder.active .sst-tool-form select,
  .sst-premium-tools-folder.active .sst-compare-form input,
  .sst-premium-tools-folder.active .sst-compare-form select{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }
  .sst-premium-tools-folder.active .sst-tool-result{
    margin-top:14px !important;
    padding:14px !important;
    font-size:.95rem !important;
  }
}


/* v7.5.7 Mobile calendar render fix + softer tabs */
:root{
  --sst-tab-active-soft:#6972f2;
  --sst-tab-active-soft-2:#5661e8;
}
.sst-result-folder-tabs.premium-folder-style button.active,
.sst-premium-folder-tabs.premium-folder-style button.active{
  background:linear-gradient(135deg,var(--sst-tab-active-soft),var(--sst-tab-active-soft-2)) !important;
  box-shadow:0 -5px 16px rgba(86,97,232,.13) !important;
}
.sst-result-folder-tabs.premium-folder-style,
.sst-premium-folder-tabs.premium-folder-style{
  border-bottom-color:var(--sst-tab-soft-border,rgba(105,114,242,.12)) !important;
}
.sst-premium-tools-folder.active .sst-tool-form label,
.sst-premium-tools-folder.active .sst-compare-form label{
  font-size:.88rem !important;
  line-height:1.15 !important;
  font-weight:720 !important;
  color:var(--text) !important;
}
.sst-premium-tools-folder.active .sst-tool-form input,
.sst-premium-tools-folder.active .sst-tool-form select,
.sst-premium-tools-folder.active .sst-compare-form input,
.sst-premium-tools-folder.active .sst-compare-form select{
  font-size:.98rem !important;
  font-weight:650 !important;
}
.sst-premium-tools-folder.active .sst-tool-result{
  border:1px solid rgba(91,101,246,.12);
  background:
    radial-gradient(circle at 100% 0%, rgba(34,179,124,.065), transparent 40%),
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(247,250,255,.88));
}
.sst-premium-tools-folder.active .sst-tool-result:not(:has(.sst-tool-outcome)):not(:has(table)){
  color:var(--muted);
}
@media(max-width:760px){
  .sst-result-folder-tabs.premium-folder-style button,
  .sst-premium-folder-tabs.premium-folder-style button{
    font-size:1.02rem !important;
    line-height:1.18 !important;
  }
  .sst-result-folder-tabs.premium-folder-style button span,
  .sst-premium-folder-tabs.premium-folder-style button span{
    font-size:1.03rem !important;
  }
  .sst-result-folder-tabs.premium-folder-style button small,
  .sst-premium-folder-tabs.premium-folder-style button small{
    font-size:.86rem !important;
  }
  .sst-result-folder-tabs.premium-folder-style button,
  .sst-result-folder-tabs.premium-folder-style button + button,
  .sst-result-folder-tabs.premium-folder-style button.active,
  .sst-result-folder-tabs.premium-folder-style button.active + button,
  .sst-premium-folder-tabs.premium-folder-style button,
  .sst-premium-folder-tabs.premium-folder-style button:first-child,
  .sst-premium-folder-tabs.premium-folder-style button:last-child,
  .sst-premium-folder-tabs.premium-folder-style button.active,
  .sst-premium-folder-tabs.premium-folder-style button.active + button{
    border-radius:16px !important;
    margin-bottom:6px !important;
    border:1px solid rgba(91,101,246,.16) !important;
  }
  .sst-result-folder-tabs.premium-folder-style,
  .sst-premium-folder-tabs.premium-folder-style{
    gap:6px !important;
    border-bottom:0 !important;
    padding:0 !important;
  }
  .sst-result-folder,
  .sst-premium-tools-folder.active{
    border-top:1px solid var(--line) !important;
    border-radius:20px !important;
    margin-top:10px !important;
  }
  .sst-result-folder[data-sst-result-panel="calendar"] .sst-result-tab-intro{
    margin-bottom:12px !important;
  }
  .sst-result-folder[data-sst-result-panel="calendar"] #sst-step-calendar{
    display:block !important;
  }
  .sst-result-folder[data-sst-result-panel="calendar"] #sst-step-calendar .sst-calendar{
    display:grid !important;
  }
  .sst-premium-tools-folder.active .sst-tool-form label,
  .sst-premium-tools-folder.active .sst-compare-form label{
    font-size:.92rem !important;
    font-weight:700 !important;
  }
  .sst-premium-tools-folder.active .sst-tool-result{
    margin-top:14px !important;
  }
}


/* v7.5.8 Mobile calendar pager + premium copy polish */
.sst-premium-tools-folder.active .sst-tool-result{
  border:0 !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(34,179,124,.08), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,.72), rgba(247,250,255,.42)) !important;
  box-shadow:none !important;
}
.sst-premium-tools-folder.active .sst-tool-result:not(:has(.sst-tool-outcome)):not(:has(table)){
  padding:22px 8px 22px 28px !important;
  color:var(--muted);
}
.sst-premium-tools-folder.active .sst-tool-form label,
.sst-premium-tools-folder.active .sst-compare-form label{
  font-weight:650 !important;
  font-size:.86rem !important;
}
.sst-result-folder-tabs.premium-folder-style button.active,
.sst-premium-folder-tabs.premium-folder-style button.active{
  background:linear-gradient(135deg,var(--sst-tab-active-soft,#737cf4),var(--sst-tab-active-soft-2,#606beb)) !important;
  box-shadow:0 -4px 14px rgba(96,107,235,.11) !important;
}
.sst-result-folder-tabs.premium-folder-style,
.sst-premium-folder-tabs.premium-folder-style{
  border-bottom-color:var(--sst-tab-soft-border,rgba(115,124,244,.11)) !important;
}
@media(max-width:760px){
  .sst-result-folder-tabs.premium-folder-style,
  .sst-premium-folder-tabs.premium-folder-style{
    display:flex !important;
    flex-direction:column !important;
    gap:0 !important;
    padding:0 10px !important;
    border-bottom:4px solid var(--sst-tab-soft-border,rgba(115,124,244,.13)) !important;
    overflow:visible !important;
  }
  .sst-result-folder-tabs.premium-folder-style button,
  .sst-premium-folder-tabs.premium-folder-style button{
    position:relative !important;
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    transform:none !important;
    border:1px solid rgba(91,101,246,.16) !important;
    border-bottom:0 !important;
    border-radius:17px 17px 0 0 !important;
    background:linear-gradient(180deg,#fff,#f5f8ff) !important;
    box-shadow:none !important;
    padding:14px 18px !important;
  }
  .sst-result-folder-tabs.premium-folder-style button + button,
  .sst-premium-folder-tabs.premium-folder-style button + button{
    margin-top:-1px !important;
    border-radius:0 0 17px 17px !important;
    border-bottom:1px solid rgba(91,101,246,.16) !important;
  }
  .sst-result-folder-tabs.premium-folder-style button.active,
  .sst-premium-folder-tabs.premium-folder-style button.active{
    z-index:2 !important;
    background:linear-gradient(135deg,var(--sst-tab-active-soft,#737cf4),var(--sst-tab-active-soft-2,#606beb)) !important;
    color:#fff !important;
    border-color:rgba(96,107,235,.48) !important;
    box-shadow:0 8px 18px rgba(96,107,235,.15) !important;
  }
  .sst-result-folder-tabs.premium-folder-style button span,
  .sst-premium-folder-tabs.premium-folder-style button span{
    font-size:1.08rem !important;
    font-weight:920 !important;
  }
  .sst-result-folder-tabs.premium-folder-style button small,
  .sst-premium-folder-tabs.premium-folder-style button small{
    font-size:.88rem !important;
    font-weight:760 !important;
  }
  .sst-result-folder{
    margin-top:0 !important;
    border-radius:0 0 20px 20px !important;
  }
  .sst-mobile-calendar-pager{
    margin-top:8px !important;
  }
  .sst-result-folder[data-sst-result-panel="calendar"] .sst-calendar-range-control{
    display:none !important;
  }
  .sst-calendar-summary-strip.sst-calendar-summary-visible{
    margin-top:12px !important;
    padding:12px 14px !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px 10px !important;
    font-size:.88rem !important;
  }
  .sst-calendar-summary-strip .summary-title,
  .sst-calendar-summary-strip span:nth-child(2){
    grid-column:1 / -1;
  }
  .sst-calendar-summary-strip span{
    display:flex !important;
    align-items:center !important;
    gap:6px !important;
  }
  .sst-calendar-summary-strip span:nth-child(3):has(.previous){
    display:none !important;
  }
  .sst-legend{
    margin-top:12px !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px 12px !important;
  }
  .sst-premium-tools-folder.active .sst-tool-result:not(:has(.sst-tool-outcome)):not(:has(table)){
    padding:14px 4px 4px !important;
    font-size:.95rem !important;
  }
}


/* v7.5.9 Mobile relevant month + connected tabs */
@media(max-width:760px){
  .sst-result-folder-tabs.premium-folder-style,
  .sst-premium-folder-tabs.premium-folder-style{
    display:flex !important;
    flex-direction:column !important;
    gap:0 !important;
    padding:0 10px !important;
    border-bottom:4px solid rgba(115,124,244,.16) !important;
    overflow:visible !important;
  }
  .sst-result-folder-tabs.premium-folder-style button,
  .sst-premium-folder-tabs.premium-folder-style button{
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    transform:none !important;
    border:1px solid rgba(91,101,246,.18) !important;
    border-bottom:0 !important;
    border-radius:18px 18px 0 0 !important;
    padding:15px 18px 14px !important;
    background:linear-gradient(180deg,#fff,#f5f8ff) !important;
    box-shadow:0 -2px 10px rgba(24,42,80,.025) !important;
  }
  .sst-result-folder-tabs.premium-folder-style button + button,
  .sst-premium-folder-tabs.premium-folder-style button + button{
    margin-top:-1px !important;
    border-radius:0 0 18px 18px !important;
    border-top:1px solid rgba(91,101,246,.18) !important;
    border-bottom:1px solid rgba(91,101,246,.18) !important;
  }
  .sst-result-folder-tabs.premium-folder-style button.active,
  .sst-premium-folder-tabs.premium-folder-style button.active{
    z-index:3 !important;
    background:linear-gradient(135deg,var(--sst-tab-active-soft,#737cf4),var(--sst-tab-active-soft-2,#606beb)) !important;
    color:#fff !important;
    border-color:rgba(96,107,235,.58) !important;
    box-shadow:0 8px 20px rgba(96,107,235,.16) !important;
  }
  .sst-result-folder-tabs.premium-folder-style button.active:first-child,
  .sst-premium-folder-tabs.premium-folder-style button.active:first-child{
    border-radius:18px 18px 0 0 !important;
  }
  .sst-result-folder-tabs.premium-folder-style button.active:last-child,
  .sst-premium-folder-tabs.premium-folder-style button.active:last-child{
    border-radius:0 0 18px 18px !important;
  }
  .sst-result-folder-tabs.premium-folder-style button span,
  .sst-premium-folder-tabs.premium-folder-style button span{
    font-size:1.12rem !important;
    font-weight:940 !important;
  }
  .sst-result-folder-tabs.premium-folder-style button small,
  .sst-premium-folder-tabs.premium-folder-style button small{
    font-size:.9rem !important;
  }
  .sst-result-folder,
  .sst-premium-tools-folder.active{
    border-radius:0 0 22px 22px !important;
    border-top:0 !important;
    margin-top:0 !important;
  }
}


/* v7.5.10 connected mobile tab shape + wider calendar pages */
@media (min-width: 981px){
  .sst-calendar{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
}
@media(max-width:760px){
  .sst-result-folder-tabs.premium-folder-style,
  .sst-premium-folder-tabs.premium-folder-style{
    padding:0 10px !important;
    border-bottom:4px solid rgba(115,124,244,.16) !important;
  }
  .sst-result-folder-tabs.premium-folder-style button,
  .sst-premium-folder-tabs.premium-folder-style button{
    border-radius:18px 18px 0 0 !important;
    margin:0 !important;
  }
  .sst-result-folder-tabs.premium-folder-style button + button,
  .sst-premium-folder-tabs.premium-folder-style button + button{
    margin-top:-10px !important;
    border-radius:18px 18px 0 0 !important;
    border-bottom:0 !important;
    padding-top:18px !important;
  }
  .sst-result-folder-tabs.premium-folder-style button.active + button,
  .sst-premium-folder-tabs.premium-folder-style button.active + button{
    margin-top:-8px !important;
  }
  .sst-result-folder-tabs.premium-folder-style button.active,
  .sst-premium-folder-tabs.premium-folder-style button.active{
    z-index:4 !important;
  }
  .sst-result-folder-tabs.premium-folder-style button:not(.active),
  .sst-premium-folder-tabs.premium-folder-style button:not(.active){
    z-index:1 !important;
  }
  .sst-result-folder-tabs.premium-folder-style button:last-child,
  .sst-premium-folder-tabs.premium-folder-style button:last-child,
  .sst-result-folder-tabs.premium-folder-style button.active:last-child,
  .sst-premium-folder-tabs.premium-folder-style button.active:last-child{
    border-radius:18px 18px 0 0 !important;
  }
  .sst-result-folder,
  .sst-premium-tools-folder.active{
    border-top:0 !important;
    border-radius:0 0 22px 22px !important;
  }
}


/* v7.5.11 mobile input containment + tab depth polish */
@media(max-width:760px){
  .sst-premium-tools-panel,
  .sst-premium-tools-folder,
  .sst-premium-tools-folder.active,
  .sst-tool-grid,
  .sst-tool-form,
  .sst-compare-form{
    max-width:100% !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }
  .sst-tool-form,
  .sst-compare-form{
    display:block !important;
  }
  .sst-tool-form label,
  .sst-compare-form label{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    margin-bottom:12px !important;
  }
  .sst-tool-form input,
  .sst-tool-form select,
  .sst-compare-form input,
  .sst-compare-form select,
  .sst-tool-form button,
  .sst-compare-form button{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }
  .sst-compare-row,
  .sst-tool-row{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    max-width:100% !important;
  }

  .sst-result-folder-tabs.premium-folder-style,
  .sst-premium-folder-tabs.premium-folder-style{
    padding:0 12px !important;
    border-bottom:4px solid rgba(115,124,244,.16) !important;
  }
  .sst-result-folder-tabs.premium-folder-style button,
  .sst-premium-folder-tabs.premium-folder-style button{
    position:relative !important;
    border-radius:18px 18px 0 0 !important;
    border-bottom:0 !important;
    margin:0 !important;
    background:linear-gradient(180deg,#fff,#f6f8ff) !important;
    box-shadow:0 -1px 8px rgba(24,42,80,.035) !important;
  }
  .sst-result-folder-tabs.premium-folder-style button + button,
  .sst-premium-folder-tabs.premium-folder-style button + button{
    margin-top:-11px !important;
    border-radius:18px 18px 0 0 !important;
    border-bottom:0 !important;
    padding-top:19px !important;
  }
  .sst-result-folder-tabs.premium-folder-style button.active,
  .sst-premium-folder-tabs.premium-folder-style button.active{
    z-index:6 !important;
    transform:translateY(1px) !important;
    background:linear-gradient(135deg,var(--sst-tab-active-soft,#737cf4),var(--sst-tab-active-soft-2,#606beb)) !important;
    box-shadow:
      0 -8px 18px rgba(96,107,235,.16),
      0 12px 22px rgba(96,107,235,.18) !important;
  }
  .sst-result-folder-tabs.premium-folder-style button:not(.active),
  .sst-premium-folder-tabs.premium-folder-style button:not(.active){
    z-index:2 !important;
  }
  .sst-result-folder-tabs.premium-folder-style button.active + button,
  .sst-premium-folder-tabs.premium-folder-style button.active + button{
    z-index:1 !important;
    transform:translateY(-2px) !important;
  }
  .sst-result-folder,
  .sst-premium-tools-folder.active{
    position:relative !important;
    z-index:3 !important;
    border-top:0 !important;
    border-radius:0 0 22px 22px !important;
  }
}


/* v7.5.12 hard mobile tab + premium input fix */
@media(max-width:760px){
  [data-sst-result-panel],
  [data-sst-tool-panel],
  .sst-result-workspace-panel,
  .sst-premium-tools-panel{
    max-width:100% !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }

  .sst-result-folder-tabs.premium-folder-style,
  .sst-premium-folder-tabs.premium-folder-style{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;
    padding:0 12px !important;
    margin:14px 0 0 !important;
    border-bottom:4px solid rgba(115,124,244,.20) !important;
    overflow:visible !important;
  }

  .sst-result-folder-tabs.premium-folder-style > button,
  .sst-premium-folder-tabs.premium-folder-style > button{
    appearance:none !important;
    -webkit-appearance:none !important;
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    position:relative !important;
    margin:0 !important;
    padding:16px 20px 15px !important;
    text-align:left !important;
    border:1px solid rgba(91,101,246,.22) !important;
    border-bottom:0 !important;
    border-radius:20px 20px 0 0 !important;
    background:linear-gradient(180deg,#fff,#f7f9ff) !important;
    color:#111b3d !important;
    box-shadow:0 -2px 10px rgba(24,42,80,.04) !important;
    transform:none !important;
  }

  .sst-result-folder-tabs.premium-folder-style > button + button,
  .sst-premium-folder-tabs.premium-folder-style > button + button{
    margin-top:-10px !important;
    border-radius:20px 20px 0 0 !important;
    padding-top:20px !important;
  }

  .sst-result-folder-tabs.premium-folder-style > button.active,
  .sst-premium-folder-tabs.premium-folder-style > button.active{
    z-index:10 !important;
    color:#fff !important;
    background:linear-gradient(135deg,#767df2 0%,#5f68e6 100%) !important;
    border-color:rgba(95,104,230,.72) !important;
    box-shadow:
      0 -10px 22px rgba(95,104,230,.18),
      0 16px 32px rgba(95,104,230,.20) !important;
  }

  .sst-result-folder-tabs.premium-folder-style > button:not(.active),
  .sst-premium-folder-tabs.premium-folder-style > button:not(.active){
    z-index:3 !important;
  }

  .sst-result-folder-tabs.premium-folder-style > button.active + button,
  .sst-premium-folder-tabs.premium-folder-style > button.active + button{
    z-index:2 !important;
    transform:translateY(-1px) !important;
  }

  .sst-result-folder-tabs.premium-folder-style > button span,
  .sst-premium-folder-tabs.premium-folder-style > button span{
    display:block !important;
    font-size:1.08rem !important;
    line-height:1.15 !important;
    font-weight:900 !important;
  }

  .sst-result-folder-tabs.premium-folder-style > button small,
  .sst-premium-folder-tabs.premium-folder-style > button small{
    display:block !important;
    margin-top:3px !important;
    font-size:.86rem !important;
    line-height:1.25 !important;
    font-weight:750 !important;
    opacity:.82 !important;
  }

  .sst-result-folder,
  .sst-premium-tools-folder.active{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    margin-top:0 !important;
    border-top:0 !important;
    border-radius:0 0 22px 22px !important;
    overflow:hidden !important;
  }

  .sst-premium-tool-card{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
  }

  .sst-tool-form,
  .sst-compare-form{
    width:100% !important;
    max-width:100% !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    box-sizing:border-box !important;
  }

  .sst-tool-form label,
  .sst-compare-form label{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    display:block !important;
    box-sizing:border-box !important;
    margin:0 !important;
    font-size:.9rem !important;
    font-weight:780 !important;
    line-height:1.25 !important;
  }

  .sst-tool-form input,
  .sst-tool-form select,
  .sst-compare-form input,
  .sst-compare-form select{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    display:block !important;
    margin-top:7px !important;
    font-size:1rem !important;
    line-height:1.2 !important;
  }

  .sst-tool-form .sst-btn,
  .sst-compare-form .sst-btn,
  .sst-tool-form button,
  .sst-compare-form button{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }
}


/* v7.5.13 final mobile tab shape: connected stacked folder tabs */
@media(max-width:760px){
  body .sst-result-folder-tabs.premium-folder-style,
  body .sst-premium-folder-tabs.premium-folder-style{
    display:flex !important;
    flex-direction:column !important;
    gap:0 !important;
    padding:0 12px !important;
    margin:14px 0 0 !important;
    overflow:visible !important;
    border-bottom:4px solid rgba(115,124,244,.18) !important;
  }

  body .sst-result-folder-tabs.premium-folder-style > button,
  body .sst-premium-folder-tabs.premium-folder-style > button{
    position:relative !important;
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:16px 20px 15px !important;
    border:1px solid rgba(91,101,246,.22) !important;
    border-bottom:0 !important;
    border-radius:20px 20px 0 0 !important;
    background:linear-gradient(180deg,#fff,#f8faff) !important;
    color:#121b3d !important;
    text-align:left !important;
    box-shadow:0 -2px 8px rgba(24,42,80,.035) !important;
    transform:none !important;
    box-sizing:border-box !important;
  }

  body .sst-result-folder-tabs.premium-folder-style > button:nth-child(2),
  body .sst-premium-folder-tabs.premium-folder-style > button:nth-child(2){
    margin-top:-12px !important;
    padding-top:21px !important;
    border-radius:20px 20px 0 0 !important;
  }

  /* When the second tab is inactive, force it to stop acting like a rounded pill/button. */
  body .sst-result-folder-tabs.premium-folder-style > button:nth-child(2):not(.active),
  body .sst-premium-folder-tabs.premium-folder-style > button:nth-child(2):not(.active){
    border-radius:20px 20px 0 0 !important;
    box-shadow:0 -2px 8px rgba(24,42,80,.025) !important;
  }

  body .sst-result-folder-tabs.premium-folder-style > button.active,
  body .sst-premium-folder-tabs.premium-folder-style > button.active{
    z-index:20 !important;
    color:#fff !important;
    background:linear-gradient(135deg,#747cf1 0%,#5f68e6 100%) !important;
    border-color:rgba(95,104,230,.78) !important;
    box-shadow:
      0 -10px 22px rgba(95,104,230,.16),
      0 14px 26px rgba(95,104,230,.20) !important;
  }

  body .sst-result-folder-tabs.premium-folder-style > button:not(.active),
  body .sst-premium-folder-tabs.premium-folder-style > button:not(.active){
    z-index:5 !important;
  }

  body .sst-result-folder-tabs.premium-folder-style > button.active + button,
  body .sst-premium-folder-tabs.premium-folder-style > button.active + button{
    z-index:4 !important;
    transform:translateY(-1px) !important;
  }

  body .sst-result-folder,
  body .sst-premium-tools-folder.active{
    margin-top:0 !important;
    border-top:0 !important;
    border-radius:0 0 22px 22px !important;
  }

  body .sst-result-folder-tabs.premium-folder-style > button span,
  body .sst-result-folder-tabs.premium-folder-style > button small,
  body .sst-premium-folder-tabs.premium-folder-style > button span,
  body .sst-premium-folder-tabs.premium-folder-style > button small{
    position:relative !important;
    z-index:2 !important;
  }

  body .sst-premium-tools-panel input[type="date"],
  body .sst-premium-tools-panel input[type="number"],
  body .sst-premium-tools-panel select,
  body .sst-premium-tools-panel button{
    max-width:100% !important;
    min-width:0 !important;
    width:100% !important;
    box-sizing:border-box !important;
  }
}


/* v7.5.14 mobile stack logic + premium tools containment */
@media(max-width:760px){
  /* Result/Calendar and premium tool tabs share the same connected-folder model. */
  body .sst-result-folder-tabs.premium-folder-style,
  body .sst-premium-folder-tabs.premium-folder-style{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;
    padding:0 12px !important;
    margin:14px 0 0 !important;
    overflow:visible !important;
    border-bottom:4px solid rgba(115,124,244,.18) !important;
  }

  body .sst-result-folder-tabs.premium-folder-style > button,
  body .sst-premium-folder-tabs.premium-folder-style > button{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:16px 20px 15px !important;
    border:1px solid rgba(91,101,246,.22) !important;
    border-bottom:0 !important;
    border-radius:20px 20px 0 0 !important;
    background:linear-gradient(180deg,#fff,#f8faff) !important;
    color:#121b3d !important;
    text-align:left !important;
    box-sizing:border-box !important;
    transform:none !important;
    box-shadow:0 -2px 8px rgba(24,42,80,.035) !important;
  }

  body .sst-result-folder-tabs.premium-folder-style > button:nth-child(1),
  body .sst-premium-folder-tabs.premium-folder-style > button:nth-child(1){
    z-index:3 !important;
  }

  body .sst-result-folder-tabs.premium-folder-style > button:nth-child(2),
  body .sst-premium-folder-tabs.premium-folder-style > button:nth-child(2){
    margin-top:-12px !important;
    padding-top:21px !important;
    z-index:8 !important; /* lower tab stays visually above on mobile */
    border-radius:20px 20px 0 0 !important;
  }

  body .sst-result-folder-tabs.premium-folder-style > button.active,
  body .sst-premium-folder-tabs.premium-folder-style > button.active{
    color:#fff !important;
    background:linear-gradient(135deg,#757df0 0%,#6069e8 100%) !important;
    border-color:rgba(96,105,232,.78) !important;
    box-shadow:
      0 -8px 18px rgba(96,105,232,.15),
      0 12px 24px rgba(96,105,232,.16) !important;
  }

  /* Keep the visual folder silhouette: second tab always sits on top, even when the first tab is active. */
  body .sst-result-folder-tabs.premium-folder-style > button:nth-child(2).active,
  body .sst-premium-folder-tabs.premium-folder-style > button:nth-child(2).active{
    z-index:12 !important;
  }
  body .sst-result-folder-tabs.premium-folder-style > button:nth-child(1).active,
  body .sst-premium-folder-tabs.premium-folder-style > button:nth-child(1).active{
    z-index:5 !important;
  }

  body .sst-result-folder-tabs.premium-folder-style > button span,
  body .sst-result-folder-tabs.premium-folder-style > button small,
  body .sst-premium-folder-tabs.premium-folder-style > button span,
  body .sst-premium-folder-tabs.premium-folder-style > button small{
    display:block !important;
  }

  body .sst-result-folder-tabs.premium-folder-style > button span,
  body .sst-premium-folder-tabs.premium-folder-style > button span{
    font-size:1.08rem !important;
    line-height:1.15 !important;
    font-weight:900 !important;
  }

  body .sst-result-folder-tabs.premium-folder-style > button small,
  body .sst-premium-folder-tabs.premium-folder-style > button small{
    margin-top:3px !important;
    font-size:.86rem !important;
    line-height:1.25 !important;
    font-weight:760 !important;
    opacity:.82 !important;
  }

  body .sst-result-folder,
  body .sst-premium-tools-folder.active{
    margin-top:0 !important;
    border-top:0 !important;
    border-radius:0 0 22px 22px !important;
    max-width:100% !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }

  /* The premium planning tools are not a collapsible mobile step. */
  body .sst-premium-tools-panel > .sst-step-toggle{
    display:none !important;
  }
  body .sst-premium-tools-panel{
    max-width:100% !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }

  body .sst-premium-tools-folder.active{
    padding:14px !important;
  }

  body .sst-premium-tool-card{
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }

  body .sst-premium-tools-folder.active .sst-premium-tool-card,
  body .sst-premium-tools-folder.active .sst-tool-form,
  body .sst-premium-tools-folder.active .sst-compare-form{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  body .sst-premium-tools-folder.active .sst-tool-form label,
  body .sst-premium-tools-folder.active .sst-compare-form label{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    margin:0 !important;
    padding:0 !important;
    font-size:.88rem !important;
    font-weight:760 !important;
    line-height:1.25 !important;
  }

  body .sst-premium-tools-folder.active .sst-tool-form input,
  body .sst-premium-tools-folder.active .sst-tool-form select,
  body .sst-premium-tools-folder.active .sst-compare-form input,
  body .sst-premium-tools-folder.active .sst-compare-form select,
  body .sst-premium-tools-folder.active .sst-tool-form button,
  body .sst-premium-tools-folder.active .sst-compare-form button{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  body .sst-premium-tools-folder.active .sst-tool-result{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    overflow-wrap:break-word !important;
  }
}

.sst-tool-help strong{
  display:block;
  margin-bottom:8px;
  font-weight:900;
  color:var(--text);
}
.sst-tool-help p{
  margin:0 0 8px;
}
.sst-tool-help p:last-child{
  margin-bottom:0;
}


/* v7.5.15 definitive mobile folder tabs + premium form containment
   This block intentionally appears last and uses high specificity to override older v7.3-v7.5 tab rules. */
@media screen and (max-width: 760px){
  html body .sst-app .sst-result-folder-tabs.premium-folder-style,
  html body .sst-app .sst-premium-folder-tabs.premium-folder-style{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:0 !important;
    padding:0 10px !important;
    margin:14px 0 0 !important;
    border:0 !important;
    border-bottom:4px solid rgba(115,124,244,.18) !important;
    overflow:visible !important;
    transform:none !important;
    isolation:isolate !important;
  }

  html body .sst-app .sst-result-folder-tabs.premium-folder-style > button,
  html body .sst-app .sst-premium-folder-tabs.premium-folder-style > button{
    appearance:none !important;
    -webkit-appearance:none !important;
    position:relative !important;
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:16px 18px 15px !important;
    border:1px solid rgba(91,101,246,.24) !important;
    border-bottom:0 !important;
    border-radius:20px 20px 0 0 !important;
    background:linear-gradient(180deg,#ffffff 0%,#f7f9ff 100%) !important;
    color:#121b3d !important;
    text-align:left !important;
    box-shadow:0 -2px 8px rgba(24,42,80,.035) !important;
    transform:none !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
  }

  /* First tab: always lower layer on mobile. It can be active, but it must not cover the second tab. */
  html body .sst-app .sst-result-folder-tabs.premium-folder-style > button:first-child,
  html body .sst-app .sst-result-folder-tabs.premium-folder-style > button:first-child.active,
  html body .sst-app .sst-premium-folder-tabs.premium-folder-style > button:first-child,
  html body .sst-app .sst-premium-folder-tabs.premium-folder-style > button:first-child.active{
    z-index:2 !important;
    margin-bottom:0 !important;
  }

  /* Second tab: always visually above the first tab to preserve the folder silhouette. */
  html body .sst-app .sst-result-folder-tabs.premium-folder-style > button:nth-child(2),
  html body .sst-app .sst-result-folder-tabs.premium-folder-style > button:nth-child(2).active,
  html body .sst-app .sst-premium-folder-tabs.premium-folder-style > button:nth-child(2),
  html body .sst-app .sst-premium-folder-tabs.premium-folder-style > button:nth-child(2).active{
    z-index:10 !important;
    margin-top:-12px !important;
    padding-top:21px !important;
    border-radius:20px 20px 0 0 !important;
  }

  html body .sst-app .sst-result-folder-tabs.premium-folder-style > button.active,
  html body .sst-app .sst-premium-folder-tabs.premium-folder-style > button.active{
    background:linear-gradient(135deg,#7a81f2 0%,#626be7 100%) !important;
    color:#fff !important;
    border-color:rgba(98,107,231,.78) !important;
    box-shadow:
      0 -8px 18px rgba(98,107,231,.13),
      0 12px 22px rgba(98,107,231,.15) !important;
  }

  html body .sst-app .sst-result-folder-tabs.premium-folder-style > button:not(.active),
  html body .sst-app .sst-premium-folder-tabs.premium-folder-style > button:not(.active){
    background:linear-gradient(180deg,#ffffff 0%,#f8faff 100%) !important;
    color:#121b3d !important;
  }

  html body .sst-app .sst-result-folder,
  html body .sst-app .sst-premium-tools-folder.active{
    margin-top:0 !important;
    border-top:0 !important;
    border-radius:0 0 22px 22px !important;
  }

  /* Premium panel/form hard containment */
  html body .sst-app .sst-premium-tools-panel{
    padding-left:16px !important;
    padding-right:16px !important;
    overflow:hidden !important;
  }

  html body .sst-app .sst-premium-tools-folder.active{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:16px !important;
    margin:0 !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }

  html body .sst-app .sst-premium-tool-card{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
    background:transparent !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }

  html body .sst-app .sst-premium-tools-folder.active .sst-tool-form,
  html body .sst-app .sst-premium-tools-folder.active .sst-compare-form{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    gap:12px !important;
    padding:0 !important;
    margin:0 !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }

  html body .sst-app .sst-premium-tools-folder.active .sst-tool-form label,
  html body .sst-app .sst-premium-tools-folder.active .sst-compare-form label{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:0 !important;
    margin:0 !important;
    overflow:visible !important;
    box-sizing:border-box !important;
    font-size:.86rem !important;
    line-height:1.25 !important;
    font-weight:760 !important;
    letter-spacing:0 !important;
  }

  html body .sst-app .sst-premium-tools-folder.active input[type="date"],
  html body .sst-app .sst-premium-tools-folder.active input[type="number"],
  html body .sst-app .sst-premium-tools-folder.active select,
  html body .sst-app .sst-premium-tools-folder.active button.sst-btn{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    margin:7px 0 0 !important;
    padding-left:16px !important;
    padding-right:16px !important;
    overflow:hidden !important;
  }

  html body .sst-app .sst-premium-tools-folder.active .sst-tool-result{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    margin-top:12px !important;
    padding:14px !important;
  }
}

@media screen and (max-width: 420px){
  html body .sst-app .sst-premium-tools-panel{
    padding-left:14px !important;
    padding-right:14px !important;
  }
  html body .sst-app .sst-premium-tools-folder.active{
    padding:14px !important;
  }
}


/* v7.5.16 final mobile premium label breathing room */
@media screen and (max-width: 760px){
  html body .sst-app .sst-premium-tools-folder.active .sst-tool-form,
  html body .sst-app .sst-premium-tools-folder.active .sst-compare-form{
    padding-top:8px !important;
  }
  html body .sst-app .sst-premium-tools-folder.active .sst-tool-form label,
  html body .sst-app .sst-premium-tools-folder.active .sst-compare-form label{
    padding-top:3px !important;
    line-height:1.35 !important;
    overflow:visible !important;
  }
}

/* v7.5.19 legal polish: copy-only update, no layout logic changes */


/* v7.5.21 final report/export spacing polish */
.sst-export-card{
  row-gap:18px !important;
}
.sst-export-row{
  gap:20px 26px !important;
  align-items:end !important;
}
.sst-export-plan{
  padding-bottom:0 !important;
}
.sst-export-actions{
  gap:14px !important;
  margin-bottom:0 !important;
  align-self:end !important;
}
.sst-export-actions .sst-btn{
  min-height:56px;
}
.sst-export-privacy{
  margin-top:2px !important;
  padding:14px 16px !important;
}
.sst-export-plan input{
  margin-bottom:2px;
}
@media(min-width:761px){
  .sst-export-row{
    grid-template-columns:minmax(280px,520px) minmax(260px,1fr) !important;
  }
  .sst-export-actions{
    justify-self:end !important;
  }
}
@media(max-width:760px){
  .sst-export-card{
    row-gap:14px !important;
  }
  .sst-export-actions{
    gap:10px !important;
  }
  .sst-export-privacy{
    margin-top:0 !important;
  }
}


/* v7.5.23 premium tab subtitle wrapping fix */
@media (min-width:761px){
  body .sst-app .sst-premium-folder-tabs.premium-folder-style > button{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:center !important;
    gap:3px !important;
    min-width:260px !important;
    max-width:330px !important;
    white-space:normal !important;
    line-height:1.15 !important;
    padding-right:20px !important;
    overflow:hidden !important;
  }
  body .sst-app .sst-premium-folder-tabs.premium-folder-style > button span,
  body .sst-app .sst-premium-folder-tabs.premium-folder-style > button small{
    display:block !important;
    width:100% !important;
    white-space:normal !important;
    overflow-wrap:break-word !important;
    word-break:normal !important;
  }
  body .sst-app .sst-premium-folder-tabs.premium-folder-style > button span{
    line-height:1.14 !important;
  }
  body .sst-app .sst-premium-folder-tabs.premium-folder-style > button small{
    margin-top:0 !important;
    line-height:1.22 !important;
  }
}
@media (min-width:761px) and (max-width:1180px){
  body .sst-app .sst-premium-folder-tabs.premium-folder-style > button{
    min-width:235px !important;
    max-width:285px !important;
  }
}


/* v7.5.33 Stay map workspace */
.sst-route-preview-card{
  display:block;
  padding:24px;
  border:1px solid rgba(91,101,246,.13);
  border-radius:24px;
  background:
    radial-gradient(circle at 100% 0%, rgba(34,179,124,.07), transparent 36%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,250,255,.92));
  box-shadow:var(--shadow-soft);
}
.sst-route-workspace-card .sst-route-preview-copy{
  max-width:780px;
  margin:0 0 18px;
}
.sst-route-preview-copy h4{
  margin:4px 0 8px;
  color:var(--text);
  font-size:1.34rem;
  letter-spacing:-.02em;
}
.sst-route-preview-copy p:not(.sst-kicker){
  margin:0;
  color:var(--muted);
  line-height:1.58;
}
.sst-route-legend,
.sst-map-filter-row{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:14px;
}
.sst-route-legend span,
.sst-map-filter-row button{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 12px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.84);
  color:var(--muted);
  font-size:.88rem;
  font-weight:850;
  box-shadow:0 8px 22px rgba(24,42,80,.05);
}
.sst-map-filter-row button{
  cursor:pointer;
  color:var(--text);
  transition:transform .18s ease, border-color .18s ease, background .18s ease, color .18s ease;
}
.sst-map-filter-row button:hover{ transform:translateY(-1px); border-color:rgba(91,101,246,.28); }
.sst-map-filter-row button.active{
  color:#fff;
  border-color:transparent;
  background:linear-gradient(135deg,var(--primary),#6d5ef2);
  box-shadow:0 12px 26px rgba(91,101,246,.22);
}
.sst-route-legend i{
  width:10px;
  height:10px;
  border-radius:999px;
  display:inline-block;
}
.sst-route-legend i.previous{background:var(--primary)}
.sst-route-legend i.planned{background:var(--success)}
.sst-route-legend i.mixed{background:linear-gradient(135deg,var(--primary) 0 48%,var(--success) 52% 100%)}
.sst-route-preview-map{
  width:100%;
  min-height:430px;
  border:1px solid rgba(91,101,246,.16);
  border-radius:24px;
  background:linear-gradient(135deg, rgba(91,101,246,.08), rgba(34,179,124,.07));
  overflow:hidden;
  position:relative;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9), 0 18px 36px rgba(24,42,80,.08);
  isolation:isolate;
}
.sst-route-preview-map .leaflet-container{font-family:inherit;}
.sst-route-preview-map .leaflet-tile-pane{
  filter:saturate(.62) contrast(.92) brightness(1.08) hue-rotate(3deg);
}
.sst-route-preview-map::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:410;
  background:
    linear-gradient(135deg, rgba(91,101,246,.035), rgba(34,179,124,.045)),
    radial-gradient(circle at 50% 42%, transparent 0 42%, rgba(255,255,255,.10) 78%);
  mix-blend-mode:multiply;
}
.sst-route-preview-map .leaflet-control-attribution{
  border-radius:999px 0 0 0;
  background:rgba(255,255,255,.76);
  color:rgba(63,74,113,.65);
  font-size:10px;
}
.sst-route-empty{
  position:absolute;
  inset:20px;
  display:grid;
  place-items:center;
  text-align:center;
  color:var(--muted);
  font-weight:760;
  line-height:1.45;
}
.sst-map-callout,
.sst-map-step{
  position:relative;
  min-width:118px;
  max-width:146px;
  padding:9px 11px 9px 13px;
  border:1px solid rgba(222,230,247,.96);
  border-radius:16px;
  background:rgba(255,255,255,.94);
  color:var(--text);
  box-shadow:0 16px 34px rgba(24,42,80,.18), 0 0 0 5px rgba(255,255,255,.55);
  backdrop-filter:blur(8px);
  transform:translateY(-4px);
}
.sst-map-callout::after,
.sst-map-step::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-7px;
  width:12px;
  height:12px;
  background:inherit;
  border-right:1px solid rgba(222,230,247,.96);
  border-bottom:1px solid rgba(222,230,247,.96);
  transform:translateX(-50%) rotate(45deg);
}
.sst-map-callout strong,
.sst-map-step strong{
  display:block;
  font-weight:900;
  font-size:.86rem;
  line-height:1.15;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.sst-map-callout small{
  display:inline-flex;
  margin-top:5px;
  padding:3px 7px;
  border-radius:999px;
  background:rgba(91,101,246,.08);
  color:var(--muted);
  font-weight:850;
  font-size:.72rem;
  line-height:1;
}
.sst-map-dot{
  position:absolute;
  left:-8px;
  top:50%;
  width:16px;
  height:16px;
  border-radius:999px;
  background:var(--primary);
  border:3px solid #fff;
  box-shadow:0 8px 18px rgba(24,42,80,.22);
  transform:translateY(-50%);
}
.sst-map-callout.planned .sst-map-dot{background:var(--success)}
.sst-map-callout.mixed .sst-map-dot{background:linear-gradient(135deg,var(--primary) 0 48%,var(--success) 52% 100%)}
.sst-map-callout.selected{border-color:rgba(91,101,246,.34); box-shadow:0 20px 42px rgba(91,101,246,.22), 0 0 0 6px rgba(255,255,255,.62)}
.sst-map-step{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:106px;
  padding:8px 10px;
}
.sst-map-step span{
  flex:0 0 auto;
  width:24px;
  height:24px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--primary),#6d5ef2);
  color:#fff;
  font-size:.78rem;
  font-weight:950;
  box-shadow:0 8px 18px rgba(91,101,246,.24);
}
.sst-route-preview-list{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:12px;
  margin-top:16px;
}
.sst-route-list-item{
  appearance:none;
  width:100%;
  text-align:left;
  display:flex;
  gap:12px;
  align-items:flex-start;
  border:1px solid var(--line);
  border-radius:18px;
  padding:13px 14px;
  background:rgba(255,255,255,.90);
  cursor:pointer;
  box-shadow:0 10px 24px rgba(24,42,80,.05);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.sst-route-list-item:hover,
.sst-route-list-item.active{
  transform:translateY(-1px);
  border-color:rgba(91,101,246,.28);
  box-shadow:0 14px 30px rgba(24,42,80,.09);
  background:#fff;
}
.sst-route-list-item > span{
  flex:0 0 auto;
  width:12px;
  height:12px;
  margin-top:4px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:var(--primary);
  color:#fff;
  font-weight:900;
  font-size:.78rem;
  line-height:1;
}
.sst-route-list-item.planned > span{ background:var(--success); }
.sst-route-list-item.date-only > span{ width:auto; min-width:26px; height:22px; margin-top:0; background:rgba(91,101,246,.10); color:var(--muted); }
.sst-route-list-item strong{
  display:block;
  color:var(--text);
  font-size:.98rem;
  line-height:1.25;
}
.sst-route-list-item small{
  display:block;
  color:var(--muted);
  margin-top:4px;
  line-height:1.38;
}
.sst-map-reset,
.sst-map-date-note,
.sst-route-empty-list{
  grid-column:1 / -1;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(255,255,255,.84);
  color:var(--muted);
  padding:11px 13px;
  font-weight:800;
}
.sst-map-reset{
  width:max-content;
  color:var(--primary);
  cursor:pointer;
}
@media(max-width:760px){
  .sst-route-preview-card{ padding:16px; border-radius:20px; }
  .sst-route-preview-map{ min-height:330px; border-radius:20px; }
  .sst-route-preview-list{ grid-template-columns:1fr; }
  .sst-map-callout{ min-width:106px; max-width:122px; padding:8px 9px 8px 12px; }
  .sst-map-callout strong,.sst-map-step strong{ font-size:.78rem; }
  .sst-map-callout small{ font-size:.66rem; }
}

}

/* v7.5.34 Stay map refinements: compact overview + selected trip route */
.sst-route-workspace-card .sst-route-preview-copy{max-width:860px;margin-bottom:16px;}
.sst-route-workspace-card .sst-route-preview-copy p:not(.sst-kicker){max-width:820px;}
.sst-route-legend{display:none !important;}
.sst-map-filter-row{margin-top:16px;gap:9px;}
.sst-map-filter-row button{gap:8px;padding:9px 14px;background:rgba(255,255,255,.90);}
.sst-map-filter-row button i{width:10px;height:10px;border-radius:999px;display:inline-block;box-shadow:0 0 0 3px rgba(255,255,255,.72);}
.sst-map-filter-row button i.all{background:linear-gradient(135deg,var(--primary) 0 46%,var(--success) 54% 100%);}
.sst-map-filter-row button i.previous{background:var(--primary);}
.sst-map-filter-row button i.planned{background:var(--success);}
.sst-map-filter-row button.active i{box-shadow:0 0 0 3px rgba(255,255,255,.30);}
.sst-route-preview-map{min-height:470px;background:#eef5f8;}
.sst-route-preview-map .leaflet-tile-pane{filter:saturate(.78) contrast(.96) brightness(1.04) hue-rotate(2deg);opacity:.86;}
.sst-route-preview-map::after{background:linear-gradient(135deg,rgba(91,101,246,.025),rgba(34,179,124,.030));mix-blend-mode:normal;z-index:405;}
.sst-route-preview-map .leaflet-overlay-pane{z-index:430;}
.sst-route-preview-map .leaflet-marker-pane{z-index:620;}
.sst-map-callout{min-width:124px;max-width:154px;border-radius:15px;padding:9px 11px 9px 13px;background:rgba(255,255,255,.96);box-shadow:0 16px 34px rgba(24,42,80,.16),0 0 0 5px rgba(255,255,255,.48);}
.sst-map-callout strong{font-size:.84rem;}
.sst-map-callout small{background:rgba(91,101,246,.075);}
.sst-map-callout.planned small{background:rgba(34,179,124,.09);}
.sst-map-step{background:rgba(255,255,255,.96);box-shadow:0 16px 34px rgba(24,42,80,.16),0 0 0 5px rgba(255,255,255,.48);}
.sst-route-list-item.multi > span{width:22px;height:22px;margin-top:0;border-radius:7px;background:linear-gradient(135deg,var(--primary),#6d5ef2);font-size:.72rem;}
.sst-route-list-item.active{border-color:rgba(91,101,246,.38);box-shadow:0 16px 34px rgba(91,101,246,.12);}
.sst-map-reset{background:rgba(255,255,255,.92);}
@media(max-width:760px){.sst-route-preview-map{min-height:360px}.sst-map-filter-row button{padding:8px 11px;font-size:.82rem}.sst-map-callout{min-width:112px;max-width:132px}}

/* v7.5.35: reliable bundled map base layer. The map image stays visible even when external tiles are blocked. */
.sst-route-preview-map .leaflet-image-layer{
  filter:saturate(.86) contrast(1.03) brightness(1.02);
}
.sst-route-preview-map .leaflet-tile-pane{opacity:1;}
.sst-route-preview-map::after{
  background:linear-gradient(135deg,rgba(91,101,246,.015),rgba(34,179,124,.018));
}

/* v7.5.36: premium stay map fixes */
.sst-route-preview-map{
  min-height:500px;
  background:#eef6fb !important;
}
.sst-route-preview-map .leaflet-container,
.sst-route-preview-map .leaflet-pane,
.sst-route-preview-map .leaflet-tile-container{
  background:#eef6fb !important;
}
.sst-route-preview-map .leaflet-tile-pane{
  filter:saturate(.52) contrast(.92) brightness(1.12) hue-rotate(6deg) !important;
  opacity:.92 !important;
}
.sst-route-preview-map::after{
  background:
    linear-gradient(135deg,rgba(91,101,246,.018),rgba(34,179,124,.022)),
    radial-gradient(circle at 55% 42%, transparent 0 54%, rgba(255,255,255,.08) 100%) !important;
  mix-blend-mode:normal !important;
}
.sst-map-callout{
  min-width:116px !important;
  max-width:138px !important;
  padding:8px 10px 8px 12px !important;
  border-radius:14px !important;
  box-shadow:0 14px 28px rgba(24,42,80,.14),0 0 0 4px rgba(255,255,255,.52) !important;
}
.sst-map-callout strong{font-size:.82rem !important;}
.sst-map-callout small{font-size:.68rem !important;}
.sst-map-step-pin{
  width:32px;
  height:32px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--primary),#6d5ef2);
  color:#fff;
  border:3px solid rgba(255,255,255,.96);
  box-shadow:0 14px 28px rgba(91,101,246,.24),0 0 0 4px rgba(255,255,255,.38);
}
.sst-map-step-pin span{
  font-size:.82rem;
  line-height:1;
  font-weight:950;
}
.sst-map-trip-summary{
  position:absolute;
  left:16px;
  top:16px;
  z-index:720;
  max-width:min(520px,calc(100% - 32px));
  padding:12px 14px;
  border:1px solid rgba(222,230,247,.96);
  border-radius:18px;
  background:rgba(255,255,255,.94);
  box-shadow:0 18px 36px rgba(24,42,80,.14),0 0 0 5px rgba(255,255,255,.46);
  backdrop-filter:blur(8px);
  color:var(--text);
}
.sst-map-trip-summary strong{
  display:block;
  font-size:.92rem;
  font-weight:950;
  margin-bottom:3px;
}
.sst-map-trip-summary span{
  display:block;
  font-size:.84rem;
  font-weight:850;
  color:var(--text);
}
.sst-map-trip-summary small{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-weight:760;
}
.sst-route-preview-list{
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr)) !important;
}
@media(max-width:760px){
  .sst-route-preview-map{min-height:380px;}
  .sst-map-trip-summary{left:10px;top:10px;padding:10px 11px;border-radius:15px;}
}


/* v7.5.38: removed inline multi-country hint from entry forms; placeholder retained */
.sst-field-hint{
  display:block;
  color:var(--muted);
  font-size:.72rem;
  font-weight:650;
  line-height:1.32;
  margin-top:-2px;
}
.sst-route-empty-overlay{
  inset:auto !important;
  left:50%;
  top:50%;
  width:min(520px,calc(100% - 40px));
  min-height:auto;
  display:block !important;
  transform:translate(-50%,-50%);
  padding:14px 18px;
  border:1px solid rgba(222,230,247,.96);
  border-radius:18px;
  background:rgba(255,255,255,.88);
  box-shadow:0 18px 36px rgba(24,42,80,.11),0 0 0 5px rgba(255,255,255,.44);
  backdrop-filter:blur(8px);
  z-index:730;
}
@media(max-width:760px){
  .sst-field-hint{font-size:.68rem;}
  .sst-route-empty-overlay{width:calc(100% - 24px);padding:12px 14px;border-radius:16px;}
}

/* v7.5.39: centered empty map message + unsupported-location handling */
.sst-map-empty-card{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  right:auto !important;
  bottom:auto !important;
  z-index:900 !important;
  width:min(560px,calc(100% - 48px));
  transform:translate(-50%,-50%) !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:15px 18px;
  border:1px solid rgba(222,230,247,.96);
  border-radius:18px;
  background:rgba(255,255,255,.92);
  box-shadow:0 18px 38px rgba(24,42,80,.13),0 0 0 6px rgba(255,255,255,.44);
  backdrop-filter:blur(10px);
  color:var(--text);
  font-size:.9rem;
  font-weight:850;
  line-height:1.42;
  pointer-events:none;
}
.sst-map-date-note{
  background:rgba(255,255,255,.92) !important;
  color:var(--muted) !important;
  font-size:.86rem;
  line-height:1.35;
}
@media(max-width:760px){
  .sst-map-empty-card{
    width:calc(100% - 26px);
    padding:12px 14px;
    border-radius:16px;
    font-size:.82rem;
  }
}

/* v7.5.41: stay map interaction polish */
.sst-route-preview-map .leaflet-control-zoom{
  border:none !important;
  box-shadow:0 12px 28px rgba(24,42,80,.12);
  border-radius:14px;
  overflow:hidden;
}
.sst-route-preview-map .leaflet-control-zoom a{
  width:34px;
  height:34px;
  line-height:34px;
  border-color:rgba(222,230,247,.92) !important;
  background:rgba(255,255,255,.92);
  color:var(--text);
  font-weight:900;
}
.sst-map-callout.is-clickable{
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.sst-map-callout.is-clickable:hover{
  transform:translateY(-7px);
  border-color:rgba(91,101,246,.36);
  box-shadow:0 20px 42px rgba(24,42,80,.18),0 0 0 5px rgba(255,255,255,.58);
}
.sst-map-actions{
  grid-column:1 / -1;
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.sst-map-calendar-link{
  appearance:none;
  border:1px solid rgba(91,101,246,.20);
  border-radius:16px;
  background:linear-gradient(135deg,rgba(91,101,246,.10),rgba(34,179,124,.08));
  color:var(--primary);
  padding:11px 13px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(24,42,80,.05);
}
.sst-map-calendar-link:hover,
.sst-map-reset:hover{
  transform:translateY(-1px);
  border-color:rgba(91,101,246,.30);
  background:#fff;
}
.sst-map-reset,
.sst-map-calendar-link{
  transition:transform .18s ease, border-color .18s ease, background .18s ease;
}
@media(max-width:760px){
  .sst-map-actions{gap:8px;}
  .sst-map-calendar-link,.sst-map-reset{width:100%;text-align:center;justify-content:center;}
}


/* v7.5.42: stay map visual polish */
.sst-route-preview-map .leaflet-tile-pane{
  filter:saturate(.82) contrast(1.02) brightness(1.025) hue-rotate(1deg) !important;
  opacity:.98 !important;
}
.sst-route-preview-map::after{
  background:linear-gradient(135deg,rgba(91,101,246,.010),rgba(34,179,124,.014)) !important;
}
.sst-map-filter-row{
  gap:10px !important;
}
.sst-map-filter-row button{
  padding:9px 13px !important;
  border-color:rgba(205,216,239,.78) !important;
  background:rgba(255,255,255,.72) !important;
  color:rgba(21,30,68,.88) !important;
  box-shadow:0 8px 20px rgba(24,42,80,.035) !important;
}
.sst-map-filter-row button i{
  width:9px !important;
  height:9px !important;
  box-shadow:0 0 0 3px rgba(255,255,255,.62) !important;
}
.sst-map-filter-row button.active{
  color:var(--primary) !important;
  background:rgba(91,101,246,.075) !important;
  border-color:rgba(91,101,246,.20) !important;
  box-shadow:0 10px 22px rgba(91,101,246,.06) !important;
}
.sst-map-filter-row button.active i{
  box-shadow:0 0 0 3px rgba(91,101,246,.10) !important;
}
.sst-map-callout{
  min-width:104px !important;
  max-width:126px !important;
  padding:7px 9px 7px 10px !important;
  border-radius:13px !important;
  box-shadow:0 12px 24px rgba(24,42,80,.12),0 0 0 4px rgba(255,255,255,.50) !important;
}
.sst-map-callout strong{
  font-size:.78rem !important;
  line-height:1.08 !important;
}
.sst-map-callout small{
  margin-top:3px !important;
  font-size:.64rem !important;
  padding:3px 7px !important;
}
.sst-map-callout.selected{
  border-color:rgba(91,101,246,.38) !important;
  box-shadow:0 18px 38px rgba(91,101,246,.18),0 0 0 5px rgba(255,255,255,.60) !important;
}
.sst-route-preview-map .leaflet-control-zoom{
  display:block !important;
  margin-left:12px !important;
  margin-top:12px !important;
}
.sst-map-calendar-link::after{
  content:' →';
}
@media(max-width:760px){
  .sst-map-filter-row button{padding:8px 10px !important;font-size:.82rem !important;}
  .sst-map-callout{min-width:98px !important;max-width:116px !important;}
}


/* v7.5.43: stay map controls and over-limit state */
.sst-route-preview-map .leaflet-control-zoom{
  left:auto !important;
  right:12px !important;
  top:12px !important;
  margin:0 !important;
}
.sst-route-preview-map .leaflet-top.leaflet-left{
  left:auto !important;
  right:0 !important;
}
.sst-route-preview-map .leaflet-top.leaflet-right{
  right:0 !important;
}
.sst-map-callout.risk .sst-map-dot,
.sst-route-list-item.risk > span{
  background:#d97706 !important;
}
.sst-map-callout.risk{
  border-color:rgba(217,119,6,.34) !important;
  box-shadow:0 14px 30px rgba(217,119,6,.15),0 0 0 4px rgba(255,255,255,.55) !important;
}
.sst-map-callout.risk small{
  background:rgba(217,119,6,.12) !important;
  color:#92400e !important;
}
.sst-route-list-item.risk{
  border-color:rgba(217,119,6,.24) !important;
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(255,247,237,.78)) !important;
}
.sst-route-list-item.risk.active{
  border-color:rgba(217,119,6,.42) !important;
  box-shadow:0 16px 34px rgba(217,119,6,.12) !important;
}
.sst-route-list-item.risk small{
  color:#7c4a03 !important;
}
@media(max-width:760px){
  .sst-route-preview-map .leaflet-control-zoom{right:10px !important;top:10px !important;}
}


/* v7.5.44: stay map workflow, status, and print report */
.sst-map-mode-note{
  margin-top:10px;
  max-width:760px;
  color:var(--muted);
  font-size:.88rem;
  line-height:1.35;
}
.sst-insight-map-link,
.sst-map-print-link{
  appearance:none;
  border:1px solid rgba(91,101,246,.18);
  border-radius:14px;
  background:rgba(255,255,255,.88);
  color:var(--primary);
  padding:9px 12px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(24,42,80,.05);
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
.sst-insight-map-link{
  margin-top:10px;
  font-size:.82rem;
  padding:7px 10px;
}
.sst-insight-map-link:hover,
.sst-map-print-link:hover{
  transform:translateY(-1px);
  border-color:rgba(91,101,246,.30);
  background:#fff;
}
.sst-map-print-link{
  background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(239,246,255,.70));
}
.sst-map-date-note strong{color:var(--text);}
.sst-map-callout.risk strong::after,
.sst-route-list-item.risk strong::after{
  content:' · over limit';
  color:#b45309;
  font-weight:850;
}
.sst-map-callout .sst-map-dot{top:50%;transform:translateY(-50%);}
@media print{
  body.sst-print-map-report *{visibility:hidden !important;}
  body.sst-print-map-report .sst-route-workspace-card,
  body.sst-print-map-report .sst-route-workspace-card *{visibility:visible !important;}
  body.sst-print-map-report .sst-route-workspace-card{
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    width:100% !important;
    box-shadow:none !important;
    border:0 !important;
    background:#fff !important;
    padding:18mm !important;
  }
  body.sst-print-map-report .sst-map-filter-row,
  body.sst-print-map-report .sst-map-mode-note,
  body.sst-print-map-report .sst-map-actions,
  body.sst-print-map-report .sst-route-list-item:not(.active){display:none !important;}
  body.sst-print-map-report .sst-route-preview-map{height:145mm !important;min-height:145mm !important;border:1px solid #dbe4f3 !important;}
  body.sst-print-map-report .sst-route-preview-list{display:block !important;margin-top:12px !important;}
  body.sst-print-map-report .sst-route-list-item.active{display:flex !important;box-shadow:none !important;break-inside:avoid;}
  body.sst-print-map-report .sst-route-preview-copy::after{
    content:'Illustrative map only. This is not an official EU, border, visa, or legal decision.';
    display:block;
    margin-top:8px;
    color:#51607d;
    font-size:10pt;
  }
}


/* v7.5.45: map print fix and cleaner contextual actions */
.sst-insight-trip small{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.sst-insight-map-link{
  margin:0 0 0 6px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:var(--primary) !important;
  font-size:.82rem !important;
  line-height:1.2 !important;
  font-weight:850 !important;
  white-space:nowrap;
  cursor:pointer;
}
.sst-insight-map-link:hover{
  transform:none !important;
  text-decoration:underline;
  background:transparent !important;
}
.sst-map-actions{
  align-items:flex-start !important;
  justify-content:space-between;
  gap:12px 16px !important;
  padding-top:2px;
}
.sst-map-selected-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.sst-map-reset{
  flex:0 0 auto;
}
.sst-map-calendar-link,
.sst-map-print-link{
  flex:0 0 auto;
}
.sst-map-print-link{
  appearance:none;
}
@media(max-width:760px){
  .sst-insight-trip small{display:block;}
  .sst-insight-map-link{display:inline-block;margin:6px 0 0 0 !important;}
  .sst-map-actions{display:grid !important;grid-template-columns:1fr;}
  .sst-map-selected-actions{display:grid;grid-template-columns:1fr;gap:8px;}
  .sst-map-calendar-link,.sst-map-print-link,.sst-map-reset{width:100%;text-align:center;justify-content:center;}
}
@media print{
  body.sst-print-map-report{
    background:#fff !important;
    width:auto !important;
    min-height:0 !important;
    overflow:visible !important;
  }
  body.sst-print-map-report *{
    visibility:hidden !important;
  }
  body.sst-print-map-report .sst-route-workspace-card,
  body.sst-print-map-report .sst-route-workspace-card *{
    visibility:visible !important;
  }
  body.sst-print-map-report .sst-route-workspace-card{
    position:fixed !important;
    left:0 !important;
    top:0 !important;
    right:0 !important;
    width:auto !important;
    max-width:none !important;
    margin:0 !important;
    padding:10mm !important;
    box-shadow:none !important;
    border:0 !important;
    border-radius:0 !important;
    background:#fff !important;
  }
  body.sst-print-map-report .sst-route-preview-map{
    height:130mm !important;
    min-height:130mm !important;
  }
  body.sst-print-map-report .sst-map-empty-card,
  body.sst-print-map-report .sst-map-filter-row,
  body.sst-print-map-report .sst-map-mode-note,
  body.sst-print-map-report .sst-map-actions,
  body.sst-print-map-report .sst-route-list-item:not(.active),
  body.sst-print-map-report .leaflet-control-container{
    display:none !important;
  }
}

/* v7.5.46: map print reliability and subtle calendar-to-map link */
.sst-insight-trip small{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  width:100%;
  min-width:0;
}
.sst-insight-trip small > span{
  min-width:0;
  overflow-wrap:anywhere;
}
.sst-insight-map-link{
  flex:0 0 auto;
  margin-left:auto !important;
  padding:5px 9px !important;
  border:1px solid rgba(91,101,246,.16) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.78) !important;
  font-size:.76rem !important;
  line-height:1 !important;
  box-shadow:none !important;
}
.sst-insight-map-link:hover{
  text-decoration:none !important;
  border-color:rgba(91,101,246,.30) !important;
  background:#fff !important;
}
.sst-map-actions{
  border-top:1px solid rgba(214,224,242,.72);
  padding-top:12px !important;
  margin-top:2px;
}
.sst-map-selected-actions{
  justify-content:flex-end;
}
.sst-map-print-link{
  background:#fff !important;
}
@media(max-width:760px){
  .sst-insight-trip small{display:block !important;}
  .sst-insight-map-link{margin-top:7px !important;}
}


/* v7.5.48: reliable static trip-map print and lighter inline calendar map links */
.sst-insight-map-link{
  padding:4px 8px !important;
  font-size:.74rem !important;
  min-height:0 !important;
  white-space:nowrap !important;
}
@media(max-width:900px){
  .sst-insight-trip{
    grid-template-columns:120px minmax(0,1fr);
  }
  .sst-insight-trip small{
    grid-column:1 / -1;
  }
}

/* v7.5.49: reliable live-map printing from current page */
@page{
  size:A4 landscape;
  margin:10mm;
}
@media print{
  html.sst-print-map-report,
  body.sst-print-map-report{
    background:#fff !important;
    overflow:visible !important;
    -webkit-print-color-adjust:exact !important;
    print-color-adjust:exact !important;
  }
  body.sst-print-map-report *{
    visibility:hidden !important;
  }
  body.sst-print-map-report .sst-route-workspace-card,
  body.sst-print-map-report .sst-route-workspace-card *{
    visibility:visible !important;
  }
  body.sst-print-map-report .sst-route-workspace-card{
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    right:0 !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    box-shadow:none !important;
    border:0 !important;
    border-radius:0 !important;
    background:#fff !important;
  }
  body.sst-print-map-report .sst-route-preview-copy{
    margin:0 0 4mm !important;
  }
  body.sst-print-map-report .sst-map-filter-row,
  body.sst-print-map-report .sst-map-mode-note,
  body.sst-print-map-report .sst-map-actions,
  body.sst-print-map-report .sst-map-empty-card,
  body.sst-print-map-report .leaflet-control-container,
  body.sst-print-map-report .sst-route-list-item:not(.active){
    display:none !important;
  }
  body.sst-print-map-report .sst-route-preview-map{
    height:126mm !important;
    min-height:126mm !important;
    width:100% !important;
    border:1px solid #dbe4f3 !important;
    box-shadow:none !important;
    background:#f8fbff !important;
    break-inside:avoid !important;
    page-break-inside:avoid !important;
  }
  body.sst-print-map-report .sst-route-preview-map .leaflet-container,
  body.sst-print-map-report .sst-route-preview-map .leaflet-map-pane,
  body.sst-print-map-report .sst-route-preview-map .leaflet-pane,
  body.sst-print-map-report .sst-route-preview-map .leaflet-tile-pane,
  body.sst-print-map-report .sst-route-preview-map .leaflet-overlay-pane,
  body.sst-print-map-report .sst-route-preview-map .leaflet-marker-pane{
    visibility:visible !important;
    opacity:1 !important;
  }
  body.sst-print-map-report .sst-route-preview-map .leaflet-tile,
  body.sst-print-map-report .sst-route-preview-map img{
    visibility:visible !important;
    opacity:1 !important;
    -webkit-print-color-adjust:exact !important;
    print-color-adjust:exact !important;
  }
  body.sst-print-map-report .sst-route-preview-list{
    display:block !important;
    margin-top:5mm !important;
  }
  body.sst-print-map-report .sst-route-list-item.active{
    display:flex !important;
    width:100% !important;
    break-inside:avoid !important;
    page-break-inside:avoid !important;
    box-shadow:none !important;
    border:1px solid #dbe4f3 !important;
  }
  body.sst-print-map-report .sst-route-preview-copy::after{
    content:'Illustrative map only. This is an educational estimate, not an official EU, border, visa, or legal decision.';
    display:block;
    margin-top:4mm;
    padding-top:3mm;
    border-top:1px solid #dbe4f3;
    color:#56627f;
    font-size:9pt;
    line-height:1.4;
  }
}


/* v7.5.51: print polish + Schengen countries interactive map */
.sst-route-preview-card.sst-print-capturing .sst-map-trip-summary{
  transform:scale(.92);
  transform-origin:top left;
  opacity:.92;
  box-shadow:0 10px 22px rgba(24,42,80,.10) !important;
}
.sst-route-preview-card.sst-print-capturing .sst-map-trip-summary span,
.sst-route-preview-card.sst-print-capturing .sst-map-trip-summary small{
  font-weight:760 !important;
}
.sst-country-explorer{
  margin:28px 0;
  padding:22px;
  border:1px solid rgba(91,101,246,.14);
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,250,255,.94));
  box-shadow:var(--shadow-soft);
}
.sst-country-explorer-head{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
  margin-bottom:18px;
}
.sst-country-explorer-head h2{margin:4px 0 8px;font-size:1.45rem;letter-spacing:-.02em;color:var(--text)}
.sst-country-explorer-head p:not(.sst-kicker){margin:0;color:var(--muted);line-height:1.55;max-width:760px}
.sst-country-explorer-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.sst-country-explorer-layout{display:grid;grid-template-columns:minmax(240px,.82fr) minmax(360px,1.18fr);gap:18px;align-items:start}
.sst-country-grid-interactive{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px}
.sst-country-grid-interactive .sst-country{appearance:none;text-align:left;cursor:pointer;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.86);padding:12px 14px;font-weight:850;color:var(--text);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}
.sst-country-grid-interactive .sst-country:hover,.sst-country-grid-interactive .sst-country.active{transform:translateY(-1px);border-color:rgba(91,101,246,.32);box-shadow:0 10px 24px rgba(24,42,80,.08);background:#fff}
.sst-country-grid-interactive .sst-country.active{background:linear-gradient(135deg,rgba(91,101,246,.10),rgba(34,179,124,.08))}
.sst-country-map-panel{min-width:0}
.sst-country-map{height:440px;border:1px solid rgba(91,101,246,.16);border-radius:22px;overflow:hidden;position:relative;background:#eef5f8;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.sst-country-map .leaflet-tile-pane{filter:saturate(.78) contrast(.96) brightness(1.05);opacity:.9}
.sst-country-map-empty{position:absolute;inset:0;z-index:500;display:grid;place-items:center;text-align:center;color:var(--muted);font-weight:850;padding:20px;pointer-events:none}
.sst-country-route-pin{width:30px;height:30px;border-radius:999px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),#6d5ef2);color:#fff;font-weight:950;border:3px solid #fff;box-shadow:0 10px 22px rgba(91,101,246,.30)}
.sst-country-selection-box{margin-top:12px;border:1px solid var(--line);border-radius:16px;background:#fff;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 10px 22px rgba(24,42,80,.05)}
.sst-country-selection-box strong{color:var(--text)}
.sst-country-selection-box span{color:var(--muted);font-size:.9rem;text-align:right}
.sst-country-selection-box button{appearance:none;border:1px solid rgba(91,101,246,.18);border-radius:999px;background:rgba(91,101,246,.08);color:var(--primary);font-weight:900;padding:7px 10px;cursor:pointer;white-space:nowrap}
.sst-country-explorer-note{margin:14px 0 0;color:var(--muted);font-size:.92rem;line-height:1.5}
@media(max-width:980px){.sst-country-explorer-layout{grid-template-columns:1fr}.sst-country-explorer-head{display:block}.sst-country-explorer-actions{justify-content:flex-start;margin-top:14px}.sst-country-map{height:360px}}
@media(max-width:560px){.sst-country-explorer{padding:16px;border-radius:20px}.sst-country-selection-box{display:block}.sst-country-selection-box span{display:block;text-align:left;margin:6px 0 10px}.sst-country-map{height:320px}}

.sst-country-grid-interactive .sst-country{cursor:pointer;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.sst-country-grid-interactive .sst-country:hover{border-color:rgba(104,92,246,.35);box-shadow:0 10px 24px rgba(40,51,94,.08);transform:translateY(-1px)}
.sst-country-grid-interactive .sst-country.active{background:linear-gradient(135deg,rgba(104,92,246,.14),rgba(25,155,123,.10));border-color:rgba(104,92,246,.45);box-shadow:0 12px 28px rgba(104,92,246,.14);color:var(--text)}
.sst-country-explorer-actions .sst-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}
.sst-country-marker-icon{background:transparent!important;border:0!important}
.sst-country-map-marker{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.94);border:1px solid rgba(105,119,160,.18);box-shadow:0 14px 34px rgba(40,51,94,.18);white-space:nowrap;color:var(--text);font-weight:800;font-size:.86rem}
.sst-country-map-marker span{display:grid;place-items:center;width:24px;height:24px;border-radius:999px;background:linear-gradient(135deg,#6558f5,#18a783);color:#fff;font-size:.78rem}
.sst-country-empty-icon{background:transparent!important;border:0!important}
.sst-country-empty-icon .sst-country-map-empty{position:static;transform:none;width:360px;max-width:calc(100vw - 60px);text-align:center;background:rgba(255,255,255,.92);border:1px solid rgba(105,119,160,.18);box-shadow:0 18px 44px rgba(40,51,94,.12);border-radius:18px;padding:16px 20px;color:var(--muted);font-weight:800}

/* v7.5.54: Trip Planner becomes the main route-planning workspace */
.sst-planner-v62{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);
  gap:18px;
  align-items:start;
  margin:24px 0;
}
.sst-planner-v62 .sst-planner-wide{grid-column:1 / -1}
.sst-planner-v62 .sst-planner-hero-card{
  padding:30px;
  background:
    radial-gradient(circle at 78% 8%, rgba(34,179,124,.10), transparent 34%),
    radial-gradient(circle at 18% 0%, rgba(91,101,246,.14), transparent 32%),
    linear-gradient(180deg,#fff,rgba(247,250,255,.96));
}
.sst-planner-v62 .sst-planner-hero-card h2{font-size:clamp(2rem,3.3vw,3.25rem);max-width:850px;line-height:1.05;margin-bottom:12px}
.sst-planner-v62 .sst-planner-hero-card > p{max-width:860px;font-size:1.05rem;line-height:1.65;color:var(--muted)}
.sst-planner-main-tool .sst-country-explorer{margin:0}
.sst-planner-main-tool .sst-country-explorer-head{
  padding-bottom:14px;
  border-bottom:1px solid rgba(105,119,160,.12);
}
.sst-planner-main-tool .sst-country-explorer-head h2{font-size:1.65rem}
.sst-planner-main-tool .sst-country-explorer-layout{grid-template-columns:minmax(280px,.72fr) minmax(520px,1.28fr)}
.sst-planner-main-tool .sst-country-map{height:500px}
.sst-planner-side-note p{color:var(--muted);line-height:1.65}
.sst-country-grid-static{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:18px 0 26px;
}
.sst-country-grid-static .sst-country{
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--surface-2);
  padding:14px 16px;
  font-weight:850;
  color:var(--text);
}
.sst-countries-route-cta{
  margin:28px 0 34px;
  padding:24px;
  border:1px solid rgba(91,101,246,.18);
  border-radius:24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  background:
    radial-gradient(circle at 100% 0%, rgba(34,179,124,.12), transparent 34%),
    linear-gradient(180deg,#fff,rgba(247,250,255,.96));
  box-shadow:var(--shadow-soft);
}
.sst-countries-route-cta h2{margin:.2rem 0 .55rem;color:var(--text)}
.sst-countries-route-cta p:not(.sst-kicker){margin:0;color:var(--muted);line-height:1.6;max-width:760px}
.sst-countries-route-cta .sst-btn{white-space:nowrap}
@media(max-width:1100px){
  .sst-planner-v62{grid-template-columns:1fr}
  .sst-planner-main-tool .sst-country-explorer-layout{grid-template-columns:1fr}
  .sst-planner-main-tool .sst-country-map{height:420px}
}
@media(max-width:760px){
  .sst-country-grid-static{grid-template-columns:1fr 1fr}
  .sst-countries-route-cta{display:block}
  .sst-countries-route-cta .sst-btn{margin-top:16px}
}
@media(max-width:560px){
  .sst-country-grid-static{grid-template-columns:1fr}
  .sst-planner-v62 .sst-planner-hero-card{padding:22px}
}


/* v7.5.55: Trip planner route workflow polish */
#sst-step-planned{
  scroll-margin-top:160px;
}
.sst-planner-main-tool .sst-country-explorer-layout{
  display:flex;
  flex-direction:column;
  gap:18px;
}
.sst-planner-main-tool .sst-country-map-panel{
  order:1;
  width:100%;
}
.sst-planner-main-tool .sst-country-grid-interactive{
  order:2;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:10px;
}
.sst-planner-main-tool .sst-country-map{
  height:clamp(430px,48vw,620px);
}
.sst-planner-main-tool .sst-country-selection-box{
  margin-top:12px;
}
.sst-country-map-marker.is-compact{
  width:32px;
  height:32px;
  padding:0;
  border-radius:999px;
  justify-content:center;
  gap:0;
  background:transparent;
  border:0;
  box-shadow:none;
}
.sst-country-map-marker.is-compact span{
  width:32px;
  height:32px;
  box-shadow:0 12px 24px rgba(91,101,246,.26);
  border:3px solid #fff;
}
.sst-country-map-marker.is-compact strong{
  display:none;
}
.sst-country-map .leaflet-control-zoom{
  border:1px solid rgba(105,119,160,.18) !important;
  border-radius:12px !important;
  overflow:hidden;
  box-shadow:0 12px 30px rgba(24,42,80,.10) !important;
}
.sst-country-map .leaflet-control-zoom a{
  color:var(--text) !important;
  border-color:rgba(105,119,160,.14) !important;
}
@media(max-width:680px){
  #sst-step-planned{scroll-margin-top:100px;}
  .sst-planner-main-tool .sst-country-map{height:360px;}
  .sst-planner-main-tool .sst-country-grid-interactive{grid-template-columns:repeat(2,minmax(0,1fr));}
}


/* v7.5.56: Keep Trip Planner country chips in a compact multi-column grid below the map */
.sst-planner-main-tool .sst-country-explorer-layout{
  align-items:stretch;
}
.sst-planner-main-tool .sst-country-grid-interactive{
  width:100%;
  max-width:none;
  align-self:stretch;
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.sst-planner-main-tool .sst-country-grid-interactive .sst-country{
  min-width:0;
  text-align:left;
}
@media(min-width:1180px){
  .sst-planner-main-tool .sst-country-grid-interactive{
    grid-template-columns:repeat(5,minmax(0,1fr));
  }
}
@media(max-width:900px){
  .sst-planner-main-tool .sst-country-grid-interactive{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:680px){
  .sst-planner-main-tool .sst-country-grid-interactive{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:420px){
  .sst-planner-main-tool .sst-country-grid-interactive{
    grid-template-columns:1fr;
  }
}


/* v7.5.57: Trip Planner action bar polish */
.sst-planner-main-tool .sst-country-explorer-head{
  display:block;
}
.sst-country-selection-actionbar{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
}
.sst-country-selection-copy{
  min-width:0;
  display:flex;
  align-items:center;
  gap:14px;
}
.sst-country-selection-copy strong{white-space:nowrap;}
.sst-country-selection-copy span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  text-align:right;
}
.sst-country-selection-actions{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:10px;
  flex-wrap:nowrap;
}
.sst-country-selection-actions .sst-btn{
  padding:.78rem 1.05rem;
  min-height:42px;
  white-space:nowrap;
}
@media(max-width:860px){
  .sst-country-selection-actionbar{grid-template-columns:1fr;}
  .sst-country-selection-copy{align-items:flex-start;flex-direction:column;gap:4px;}
  .sst-country-selection-copy span{text-align:left;white-space:normal;}
  .sst-country-selection-actions{justify-content:flex-start;flex-wrap:wrap;}
}


/* v7.5.58: make Trip Planner action links quieter and more businesslike */
.sst-planner-main-tool .sst-country-selection-actions .sst-btn{
  min-height:38px;
  padding:.58rem .86rem;
  border-radius:12px;
  font-size:.9rem;
  line-height:1;
  box-shadow:none !important;
  transform:none !important;
}
.sst-planner-main-tool .sst-country-selection-actions .sst-btn-secondary,
.sst-planner-main-tool .sst-country-selection-actions [data-sst-country-clear]{
  background:transparent !important;
  border-color:transparent !important;
  color:var(--muted) !important;
  font-weight:800;
}
.sst-planner-main-tool .sst-country-selection-actions .sst-btn-secondary:hover,
.sst-planner-main-tool .sst-country-selection-actions [data-sst-country-clear]:hover{
  background:rgba(105,119,160,.07) !important;
  border-color:rgba(105,119,160,.12) !important;
  color:var(--text) !important;
}
.sst-planner-main-tool .sst-country-selection-actions .sst-btn-primary,
.sst-planner-main-tool .sst-country-selection-actions [data-sst-country-use]{
  background:#fff !important;
  color:var(--primary) !important;
  border:1px solid rgba(91,101,246,.24) !important;
  font-weight:900;
}
.sst-planner-main-tool .sst-country-selection-actions .sst-btn-primary:hover,
.sst-planner-main-tool .sst-country-selection-actions [data-sst-country-use]:hover{
  background:rgba(91,101,246,.06) !important;
  border-color:rgba(91,101,246,.38) !important;
}
.sst-planner-main-tool .sst-country-selection-actionbar{
  box-shadow:0 8px 20px rgba(24,42,80,.035);
}
body.sst-dark .sst-planner-main-tool .sst-country-selection-actions [data-sst-country-use]{
  background:rgba(255,255,255,.04) !important;
  border-color:rgba(125,137,255,.32) !important;
  color:#cbd2ff !important;
}
body.sst-dark .sst-planner-main-tool .sst-country-selection-actions [data-sst-country-clear]{
  color:#9aa7c2 !important;
}


/* v7.5.59: Trip Planner route memory, optional dates, and calculator context */
.sst-country-context{
  margin:0 0 16px;
  padding:14px 16px;
  border:1px solid rgba(91,101,246,.16);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(91,101,246,.07),rgba(34,179,124,.05));
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.sst-country-context.is-hidden{display:none!important;}
.sst-country-context strong{display:block;color:var(--text);font-weight:900;margin-bottom:2px;}
.sst-country-context span{display:block;color:var(--muted);font-size:.92rem;line-height:1.45;}
.sst-country-context-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.sst-country-context-actions .sst-btn{min-height:36px;padding:.55rem .8rem;border-radius:12px;box-shadow:none!important;}
.sst-country-date-row{
  margin-top:12px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,220px)) minmax(240px,1fr);
  gap:12px;
  align-items:end;
}
.sst-country-date-row label{display:block;font-weight:850;color:var(--text);font-size:.88rem;}
.sst-country-date-row input{margin-top:6px;width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;padding:10px 12px;color:var(--text);font-weight:780;}
.sst-country-date-row p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.45;}
.sst-country-map-marker small{display:block;margin-left:4px;color:var(--muted);font-size:.72rem;font-weight:800;}
.sst-planner-main-tool .sst-country-date-row{max-width:840px;}
@media(max-width:780px){
  .sst-country-context{display:block;}
  .sst-country-context-actions{justify-content:flex-start;margin-top:10px;}
  .sst-country-date-row{grid-template-columns:1fr 1fr;}
  .sst-country-date-row p{grid-column:1 / -1;}
}
@media(max-width:520px){
  .sst-country-date-row{grid-template-columns:1fr;}
}

/* v7.5.61 Trip Planner future-date limits */
.sst-country-flow-note{
  margin: 10px 0 16px;
  padding: 10px 14px;
  border: 1px solid rgba(98, 111, 244, .16);
  border-radius: 16px;
  background: rgba(246, 248, 255, .72);
  color: #65708e;
  font-size: .92rem;
  line-height: 1.45;
}


/* v7.5.63 mobile live-test fixes: map containment, planner mobile layout, iOS date guards */
@media(max-width:760px){
  /* Keep Leaflet maps inside the phone viewport and avoid partial tile/white-block artifacts. */
  .sst-route-preview-card{
    padding:14px !important;
    border-radius:20px !important;
    overflow:hidden !important;
  }
  .sst-route-workspace-card .sst-route-preview-copy,
  .sst-route-workspace-card .sst-route-preview-copy p:not(.sst-kicker){
    max-width:100% !important;
  }
  .sst-route-workspace-card .sst-route-preview-copy p:not(.sst-kicker){
    font-size:.95rem !important;
    line-height:1.45 !important;
  }
  .sst-map-filter-row{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
    width:100% !important;
  }
  .sst-map-filter-row button{
    width:100% !important;
    justify-content:center !important;
    min-width:0 !important;
  }
  .sst-map-filter-row button:first-child{
    grid-column:1 / -1;
  }
  .sst-map-mode-note{
    font-size:.9rem !important;
    line-height:1.45 !important;
    margin-top:10px !important;
  }
  .sst-route-preview-map{
    width:100% !important;
    max-width:100% !important;
    height:360px !important;
    min-height:360px !important;
    border-radius:18px !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
    contain:paint !important;
  }
  .sst-route-preview-map .leaflet-container{
    width:100% !important;
    height:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
  }
  .sst-route-preview-map .leaflet-control-zoom{
    right:8px !important;
    top:8px !important;
  }
  .sst-route-preview-map .leaflet-control-attribution{
    max-width:calc(100% - 56px) !important;
    white-space:normal !important;
    line-height:1.15 !important;
    font-size:10px !important;
  }
  .sst-map-trip-summary{
    left:10px !important;
    top:10px !important;
    right:52px !important;
    width:auto !important;
    max-width:calc(100% - 72px) !important;
    padding:10px 11px !important;
    border-radius:15px !important;
  }
  .sst-map-trip-summary strong,
  .sst-map-trip-summary span,
  .sst-map-trip-summary small{
    white-space:normal !important;
    overflow-wrap:anywhere !important;
  }
  .sst-map-step{
    min-width:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }
  .sst-map-step::after{display:none !important;}
  .sst-map-step strong{display:none !important;}
  .sst-map-step span{
    width:30px !important;
    height:30px !important;
    border:3px solid #fff !important;
  }
  .sst-map-actions,
  .sst-map-selected-actions{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }
  .sst-map-reset,
  .sst-map-calendar-link,
  .sst-map-print-link{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    text-align:center !important;
    justify-content:center !important;
    white-space:normal !important;
  }
  .sst-route-preview-list{
    grid-template-columns:1fr !important;
    width:100% !important;
    max-width:100% !important;
  }
  .sst-route-list-item{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
  }
  .sst-route-list-item strong,
  .sst-route-list-item small{
    white-space:normal !important;
    overflow-wrap:anywhere !important;
  }

  /* Travel planning tools on the calculator page: keep date/select controls inside the card. */
  .sst-premium-tools-panel,
  .sst-premium-tools-folder.active,
  .sst-premium-tool-card{
    overflow:hidden !important;
  }
  .sst-tool-form,
  .sst-compare-form{
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
  }
  .sst-tool-form label,
  .sst-compare-form label{
    min-width:0 !important;
    max-width:100% !important;
  }
  .sst-tool-form input,
  .sst-tool-form select,
  .sst-compare-form input,
  .sst-compare-form select{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  /* Trip Planner mobile: make the intro shorter and the actual tool easier to reach. */
  .sst-planner-v62{
    margin-top:14px !important;
    gap:14px !important;
  }
  .sst-planner-v62 .sst-planner-hero-card{
    padding:18px !important;
    border-radius:20px !important;
  }
  .sst-planner-v62 .sst-planner-hero-card h2{
    font-size:1.8rem !important;
    line-height:1.08 !important;
    margin-bottom:8px !important;
  }
  .sst-planner-v62 .sst-planner-hero-card > p{
    font-size:.92rem !important;
    line-height:1.45 !important;
  }
  .sst-planner-mini-steps{
    grid-template-columns:1fr !important;
    gap:8px !important;
    margin-top:12px !important;
  }
  .sst-planner-mini-steps div{
    padding:10px 12px !important;
    min-height:0 !important;
  }
  .sst-planner-mini-steps small{
    display:none !important;
  }
  .sst-planner-main-tool .sst-country-explorer{
    padding:14px !important;
    border-radius:20px !important;
    overflow:hidden !important;
  }
  .sst-planner-main-tool .sst-country-explorer-head{
    margin-bottom:12px !important;
    padding-bottom:10px !important;
  }
  .sst-planner-main-tool .sst-country-explorer-head h2{
    font-size:1.3rem !important;
  }
  .sst-planner-main-tool .sst-country-map{
    height:320px !important;
    min-height:320px !important;
  }
  .sst-country-selection-actionbar{
    padding:12px !important;
    border-radius:16px !important;
  }
  .sst-country-selection-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    width:100% !important;
  }
  .sst-country-selection-actions .sst-btn{
    width:100% !important;
    text-align:center !important;
    justify-content:center !important;
  }
  .sst-country-date-row{
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
    grid-template-columns:1fr !important;
  }
  .sst-country-date-row label,
  .sst-country-date-row input,
  .sst-country-date-row p{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }
  .sst-planner-main-tool .sst-country-grid-interactive{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
  }
  .sst-planner-main-tool .sst-country-grid-interactive .sst-country{
    padding:10px 8px !important;
    border-radius:12px !important;
    font-size:.76rem !important;
    line-height:1.1 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
}
@media(max-width:360px){
  .sst-planner-main-tool .sst-country-grid-interactive{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

/* v7.5.64: mobile containment, Trip Planner simplification and dark-mode polish */
@media screen and (max-width: 760px){
  html, body{ overflow-x:hidden !important; }
  .sst-app,
  .sst-panel,
  .sst-step,
  .sst-premium-tools,
  .sst-premium-tools-folder,
  .sst-premium-tools-folder.active,
  .sst-premium-tool-card,
  .sst-tool-grid,
  .sst-tool-form,
  .sst-compare-form,
  .sst-route-preview-card,
  .sst-route-preview-map,
  .sst-country-explorer,
  .sst-country-map{
    max-width:100% !important;
    box-sizing:border-box !important;
  }

  /* Calculator: prevent Travel Planning Tools inputs from escaping the card on iPhone. */
  .sst-premium-tools-folder.active .sst-tool-form,
  .sst-premium-tools-folder.active .sst-tool-form:not(.sst-compare-form),
  .sst-premium-tools-folder.active .sst-compare-form{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:12px !important;
    overflow:hidden !important;
  }
  .sst-premium-tools-folder.active .sst-tool-form label,
  .sst-premium-tools-folder.active .sst-compare-form label,
  .sst-tool-form label,
  .sst-compare-form label{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }
  .sst-premium-tools-folder.active .sst-tool-form input,
  .sst-premium-tools-folder.active .sst-tool-form select,
  .sst-premium-tools-folder.active .sst-compare-form input,
  .sst-premium-tools-folder.active .sst-compare-form select,
  .sst-tool-form input,
  .sst-tool-form select,
  .sst-compare-form input,
  .sst-compare-form select{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }
  .sst-premium-tools-folder.active .sst-tool-form button,
  .sst-premium-tools-folder.active .sst-compare-form button,
  .sst-tool-form button{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }

  /* Calculator Stay map: use a contained mobile map viewport and avoid Leaflet overflow artifacts. */
  .sst-route-preview-card{
    overflow:hidden !important;
  }
  .sst-route-preview-map{
    display:block !important;
    width:100% !important;
    height:360px !important;
    min-height:360px !important;
    max-height:360px !important;
    overflow:hidden !important;
    contain:layout paint !important;
    isolation:isolate !important;
    background:#eef5f8 !important;
  }
  .sst-route-preview-map .leaflet-container,
  .sst-route-preview-map .leaflet-map-pane,
  .sst-route-preview-map .leaflet-pane{
    max-width:100% !important;
  }
  .sst-route-preview-map .leaflet-image-layer,
  .sst-route-preview-map .leaflet-tile-pane{
    opacity:1 !important;
  }
  .sst-route-preview-map::after{
    display:none !important;
  }
  .sst-map-trip-summary{
    left:12px !important;
    right:54px !important;
    top:12px !important;
    max-width:calc(100% - 76px) !important;
  }

  /* Trip Planner mobile: make the top explanation lighter, not card-like/click-like. */
  .sst-planner-v62 .sst-planner-hero-card{
    padding:16px !important;
  }
  .sst-planner-mini-steps{
    display:block !important;
    margin-top:10px !important;
  }
  .sst-planner-mini-steps div{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    padding:7px 0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }
  .sst-planner-mini-steps span{
    width:20px !important;
    height:20px !important;
    font-size:.72rem !important;
    flex:0 0 auto !important;
  }
  .sst-planner-mini-steps strong{
    font-size:.86rem !important;
    line-height:1.2 !important;
  }
  .sst-planner-mini-steps small{
    display:none !important;
  }
  .sst-planner-v62 .sst-planner-hero-actions{
    margin-top:10px !important;
  }
}

body.sst-dark .sst-planner-hero-card,
body.sst-dark .sst-planner-main-tool .sst-country-explorer,
body.sst-dark .sst-country-explorer,
body.sst-dark .sst-route-preview-card,
body.sst-dark .sst-premium-tools,
body.sst-dark .sst-tool-preview-card,
body.sst-dark .sst-premium-tool-card,
body.sst-dark .sst-day-insight,
body.sst-dark .sst-result-card,
body.sst-dark .sst-calendar-month,
body.sst-dark .sst-calendar-summary-inline,
body.sst-dark .sst-panel,
body.sst-dark .sst-step,
body.sst-dark .sst-footer,
body.sst-dark .sst-home-card,
body.sst-dark .sst-guide-card,
body.sst-dark .sst-official-card,
body.sst-dark .sst-countries-card{
  background:linear-gradient(180deg,rgba(17,28,45,.96),rgba(12,22,36,.94)) !important;
  border-color:rgba(142,157,198,.16) !important;
  color:#eef4ff !important;
  box-shadow:0 18px 46px rgba(0,0,0,.22) !important;
}
body.sst-dark .sst-planner-mini-steps div,
body.sst-dark .sst-tool-result,
body.sst-dark .sst-tool-message,
body.sst-dark .sst-tool-outcome,
body.sst-dark .sst-route-list-item,
body.sst-dark .sst-country-selection-actionbar,
body.sst-dark .sst-country-grid-interactive .sst-country,
body.sst-dark .sst-form input,
body.sst-dark .sst-form select,
body.sst-dark .sst-tool-form input,
body.sst-dark .sst-tool-form select,
body.sst-dark .sst-compare-form input,
body.sst-dark .sst-compare-form select{
  background:rgba(8,18,32,.86) !important;
  border-color:rgba(142,157,198,.18) !important;
  color:#eef4ff !important;
  box-shadow:none !important;
}
body.sst-dark .sst-planner-hero-card h2,
body.sst-dark .sst-country-explorer-head h2,
body.sst-dark .sst-route-preview-copy h4,
body.sst-dark .sst-premium-tools h3,
body.sst-dark .sst-panel h2,
body.sst-dark .sst-step h2,
body.sst-dark .sst-step h3,
body.sst-dark .sst-home-card h2,
body.sst-dark .sst-countries-card h1,
body.sst-dark .sst-countries-card h2{
  color:#f5f8ff !important;
}
body.sst-dark .sst-planner-hero-card p,
body.sst-dark .sst-country-explorer-head p,
body.sst-dark .sst-route-preview-copy p,
body.sst-dark .sst-tool-help p,
body.sst-dark .sst-panel p,
body.sst-dark .sst-step p,
body.sst-dark .sst-home-card p,
body.sst-dark .sst-country-explorer-note,
body.sst-dark .sst-map-mode-note{
  color:#aeb9d4 !important;
}
body.sst-dark .sst-route-preview-map,
body.sst-dark .sst-country-map{
  background:#101a2a !important;
  border-color:rgba(142,157,198,.18) !important;
}
body.sst-dark .sst-route-preview-map .leaflet-tile-pane,
body.sst-dark .sst-country-map .leaflet-tile-pane{
  filter:saturate(.72) contrast(.95) brightness(.82) hue-rotate(4deg) !important;
}
body.sst-dark .sst-map-callout,
body.sst-dark .sst-map-step,
body.sst-dark .sst-map-trip-summary,
body.sst-dark .sst-country-map-marker,
body.sst-dark .sst-country-map-empty{
  background:rgba(13,25,42,.94) !important;
  border-color:rgba(142,157,198,.20) !important;
  color:#f5f8ff !important;
  box-shadow:0 14px 32px rgba(0,0,0,.34) !important;
}
body.sst-dark .sst-map-callout small,
body.sst-dark .sst-country-map-marker small{
  color:#b7c4df !important;
  background:rgba(142,157,198,.12) !important;
}
body.sst-dark .sst-map-filter-row button,
body.sst-dark .sst-btn,
body.sst-dark .sst-map-reset,
body.sst-dark .sst-map-calendar-link,
body.sst-dark .sst-map-print-link{
  background:rgba(9,19,34,.86) !important;
  border-color:rgba(142,157,198,.18) !important;
  color:#e8edff !important;
  box-shadow:none !important;
}
body.sst-dark .sst-map-filter-row button.active,
body.sst-dark .sst-btn-primary{
  background:linear-gradient(135deg,#6571d9,#7c6ef0) !important;
  color:#fff !important;
}
body.sst-dark .sst-disclaimer{
  background:rgba(168,91,91,.12) !important;
  border-color:rgba(255,142,142,.22) !important;
  color:#f0d7d7 !important;
}


/* v7.5.65: final mobile containment, map tile stability and dark-mode cleanup */
@media screen and (max-width: 760px){
  /* Travel Planning Tools: prevent iOS date/select controls from overflowing the card. */
  .sst-premium-tools-panel,
  .sst-premium-tools-panel *,
  .sst-premium-tools-folder,
  .sst-premium-tools-folder *,
  .sst-premium-tool-card,
  .sst-premium-tool-card *,
  .sst-tool-form,
  .sst-compare-form{
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }
  .sst-premium-tools-folder.active{
    overflow:hidden !important;
    padding:12px !important;
  }
  .sst-premium-tools-folder.active .sst-premium-tool-card{
    display:block !important;
    overflow:hidden !important;
    padding:0 !important;
  }
  .sst-premium-tools-folder.active .sst-tool-form,
  .sst-premium-tools-folder.active .sst-compare-form,
  .sst-tool-form,
  .sst-compare-form{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    width:100% !important;
    gap:10px !important;
  }
  .sst-premium-tools-folder.active .sst-tool-form label,
  .sst-premium-tools-folder.active .sst-compare-form label,
  .sst-tool-form label,
  .sst-compare-form label{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
  }
  .sst-premium-tools-folder.active .sst-tool-form input,
  .sst-premium-tools-folder.active .sst-tool-form select,
  .sst-premium-tools-folder.active .sst-compare-form input,
  .sst-premium-tools-folder.active .sst-compare-form select,
  .sst-tool-form input,
  .sst-tool-form select,
  .sst-compare-form input,
  .sst-compare-form select{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    -webkit-appearance:none;
    appearance:none;
  }
  .sst-premium-tools-folder.active .sst-tool-result{
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
  }

  /* Calculator Stay map: keep Leaflet tiles contained and remove mobile blank overlay artifacts. */
  .sst-route-preview-card,
  .sst-route-preview-map-wrap,
  .sst-result-folder[data-sst-result-panel="stay-map"]{
    overflow:hidden !important;
  }
  .sst-route-preview-map{
    width:100% !important;
    max-width:100% !important;
    height:340px !important;
    min-height:340px !important;
    border-radius:22px !important;
    overflow:hidden !important;
    background:#eef5f8 !important;
  }
  .sst-route-preview-map .leaflet-container,
  .sst-route-preview-map .leaflet-map-pane,
  .sst-route-preview-map .leaflet-pane,
  .sst-route-preview-map .leaflet-tile-pane,
  .sst-route-preview-map .leaflet-tile-container{
    max-width:none !important;
    overflow:visible !important;
  }
  .sst-route-preview-map .leaflet-tile,
  .sst-route-preview-map img.leaflet-tile{
    max-width:none !important;
  }
  .sst-map-actions,
  .sst-map-focus-actions,
  .sst-map-reset,
  .sst-map-calendar-link,
  .sst-map-print-link{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }

  /* Trip Planner: shorten the opening explanation on mobile. */
  .sst-planner-v62 .sst-planner-hero-card h2{
    font-size:1.62rem !important;
    line-height:1.08 !important;
  }
  .sst-planner-v62 .sst-planner-hero-card > p:not(.sst-kicker){
    font-size:.9rem !important;
    line-height:1.42 !important;
  }
  .sst-planner-mini-steps{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:6px !important;
  }
  .sst-planner-mini-steps div{
    padding:7px 6px !important;
    border:1px solid rgba(142,157,198,.16) !important;
    border-radius:12px !important;
    background:rgba(247,250,255,.58) !important;
  }
  .sst-planner-mini-steps span{
    width:18px !important;
    height:18px !important;
    font-size:.68rem !important;
  }
  .sst-planner-mini-steps strong{
    display:block !important;
    font-size:.72rem !important;
    line-height:1.15 !important;
  }
  .sst-planner-mini-steps small{display:none !important;}

  /* Trip Planner country list: keep it compact instead of a long one-column list. */
  .sst-planner-main-tool .sst-country-grid-interactive,
  .sst-country-grid-interactive{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
  }
  .sst-planner-main-tool .sst-country-grid-interactive .sst-country,
  .sst-country-grid-interactive .sst-country{
    min-height:42px !important;
    padding:10px 10px !important;
    font-size:.82rem !important;
    line-height:1.1 !important;
  }
}

body.sst-dark .sst-result-workspace-panel,
body.sst-dark .sst-result-folder,
body.sst-dark .sst-report-panel,
body.sst-dark .sst-premium-tools-panel,
body.sst-dark .sst-premium-tools-folder.active,
body.sst-dark .sst-premium-tool-card,
body.sst-dark .sst-planner-main-tool,
body.sst-dark .sst-country-explorer,
body.sst-dark .sst-country-date-row input,
body.sst-dark .sst-country-flow-note{
  background:linear-gradient(180deg,rgba(17,28,45,.96),rgba(12,22,36,.94)) !important;
  border-color:rgba(142,157,198,.16) !important;
  color:#eef4ff !important;
  box-shadow:none !important;
}
body.sst-dark .sst-report-metric,
body.sst-dark .sst-report-chart,
body.sst-dark .sst-timeline,
body.sst-dark .sst-narrative,
body.sst-dark .sst-result-footnote,
body.sst-dark .sst-method-copy,
body.sst-dark .sst-tool-help,
body.sst-dark .sst-tool-result,
body.sst-dark .sst-premium-tools-folder.active .sst-tool-result{
  background:rgba(8,18,32,.88) !important;
  border-color:rgba(142,157,198,.18) !important;
  color:#d8e2f7 !important;
}
body.sst-dark .sst-country-flow-note,
body.sst-dark .sst-country-date-row p{
  color:#aeb9d4 !important;
}
body.sst-dark .sst-planner-mini-steps div{
  background:rgba(8,18,32,.78) !important;
  border-color:rgba(142,157,198,.14) !important;
}
body.sst-dark .sst-premium-folder-tabs.premium-folder-style button:not(.active),
body.sst-dark .sst-result-folder-tabs.premium-folder-style button:not(.active){
  background:rgba(8,18,32,.86) !important;
  color:#dce6fa !important;
  border-color:rgba(142,157,198,.18) !important;
}


/* v7.5.66: keep dark-mode maps readable without over-greying the tile layer. */
body.sst-dark .sst-route-preview-map,
body.sst-dark .sst-country-map{
  background:#182538 !important;
}
body.sst-dark .sst-route-preview-map .leaflet-tile-pane,
body.sst-dark .sst-country-map .leaflet-tile-pane,
body.sst-dark .sst-route-preview-map .leaflet-image-layer,
body.sst-dark .sst-country-map .leaflet-image-layer{
  filter:saturate(.92) contrast(1.03) brightness(.94) hue-rotate(1deg) !important;
  opacity:1 !important;
}
body.sst-dark .sst-route-preview-map::after{
  background:linear-gradient(135deg,rgba(91,101,246,.015),rgba(34,179,124,.018)) !important;
  mix-blend-mode:normal !important;
}
body.sst-dark .sst-route-preview-map .leaflet-control-attribution,
body.sst-dark .sst-country-map .leaflet-control-attribution{
  background:rgba(11,20,34,.68) !important;
  color:rgba(226,234,248,.78) !important;
}
body.sst-dark .sst-route-preview-map .leaflet-control-zoom a,
body.sst-dark .sst-country-map .leaflet-control-zoom a{
  background:rgba(255,255,255,.88) !important;
  color:#17213a !important;
}

/* v7.5.73: compact quick estimate after previous trips */
.sst-current-insight-panel{
  margin:14px 0 16px;
  padding:15px 18px;
  border:1px solid rgba(90,108,246,.16);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(92,110,246,.055),rgba(111,190,173,.055));
  box-shadow:0 14px 34px rgba(29,42,78,.06);
}
.sst-current-insight-panel[hidden]{display:none!important}
.sst-current-insight-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:5px;flex-wrap:wrap}
.sst-current-insight-head strong{font-size:1.02rem;color:var(--ink)}
.sst-current-insight-panel p{margin:0;color:var(--muted);line-height:1.5}
.sst-current-insight-panel p strong{color:var(--ink)}
.sst-schengen-tint-shape{mix-blend-mode:multiply;filter:drop-shadow(0 1px 0 rgba(75,90,210,.04))}
body.sst-dark .sst-current-insight-panel{background:linear-gradient(135deg,rgba(94,108,235,.12),rgba(116,182,164,.08));border-color:rgba(156,170,255,.16);box-shadow:none}
body.sst-dark .sst-current-insight-head strong,body.sst-dark .sst-current-insight-panel p strong{color:#eef3ff}
body.sst-dark .sst-current-insight-panel p{color:#b8c4db}
body.sst-dark .sst-schengen-tint-shape{mix-blend-mode:screen;filter:none;opacity:.7}
@media (max-width:720px){
  .sst-current-insight-panel{padding:13px 14px;border-radius:16px;margin:12px 0 14px}
  .sst-current-insight-head{display:block;margin-bottom:5px}
  .sst-current-insight-head strong{display:block;font-size:.98rem}
  .sst-current-insight-panel p{font-size:.93rem;line-height:1.48}
}

.sst-day-note{display:block;margin-top:3px;font-size:.72rem;line-height:1.15;color:var(--sst-muted,#64708a);font-weight:700;white-space:nowrap;}
body.sst-dark .sst-day-note,.dark .sst-day-note{color:rgba(226,232,240,.72);}

/* v7.5.91 English parity: travel planning help copy is rendered in HTML for i18n, not CSS pseudo-content. */
.sst-tool-help .sst-tool-context{
  display:block;
  color:var(--text);
  font-size:1.05rem;
  font-weight:900;
  margin-bottom:9px;
}
.sst-tool-help strong{
  display:block;
  margin-bottom:8px;
}


/* v7.6.28: final admin-controlled tab color safeguard.
   Keep result/premium folder active tabs tied to theme color variables. */
.sst-result-folder-tabs.premium-folder-style button.active,
.sst-premium-folder-tabs.premium-folder-style button.active{
  background:linear-gradient(135deg,var(--sst-tab-active-soft,#6972f2),var(--sst-tab-active-soft-2,#5661e8)) !important;
  border-color:var(--sst-tab-active-soft,#6972f2) !important;
}
.sst-result-folder-tabs.premium-folder-style,
.sst-premium-folder-tabs.premium-folder-style{
  border-bottom-color:var(--sst-tab-soft-border,rgba(105,114,242,.12)) !important;
}
@media(max-width:760px){
  .sst-result-folder-tabs.premium-folder-style,
  .sst-premium-folder-tabs.premium-folder-style{
    border-bottom-color:var(--sst-tab-soft-border,rgba(105,114,242,.12)) !important;
  }
}

/* v8.0.1-dev: planned travel purpose selectors for Serbian/language testing branch */
.sst-form select,
.sst-country-date-row select{
  width:100%;
  border-radius:14px;
  border:1px solid var(--line);
  background:var(--surface-2);
  padding:12px 14px;
  color:var(--text);
  font:inherit;
}
body.sst-dark .sst-form select,
body.sst-dark .sst-country-date-row select{
  background:#111a33;
  border-color:rgba(177,192,255,.24);
  color:#f4f7ff;
}

/* v8.0.3-dev: Trip Planner clickable country-map route builder */
.sst-country-explorer-layout-mapfirst,
.sst-planner-main-tool .sst-country-explorer-layout-mapfirst{
  display:block !important;
}
.sst-country-map-help{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:0 0 12px;
  padding:12px 14px;
  border:1px solid rgba(91,101,246,.16);
  border-radius:16px;
  background:linear-gradient(135deg,rgba(91,101,246,.06),rgba(34,179,124,.05));
  color:var(--muted);
  line-height:1.45;
}
.sst-country-map-help strong{color:var(--text);font-weight:900;white-space:nowrap}
.sst-country-map-help span{font-size:.92rem}
.sst-planner-main-tool .sst-country-map{height:540px}
.sst-country-map .leaflet-interactive{cursor:pointer;transition:opacity .16s ease;}
.sst-country-map .leaflet-container{cursor:grab;}
.sst-country-map .leaflet-container:active{cursor:grabbing;}
.sst-country-route-panel{
  margin:14px 0 0;
  padding:16px;
  border:1px solid rgba(91,101,246,.16);
  border-radius:20px;
  background:rgba(255,255,255,.82);
  box-shadow:0 14px 34px rgba(24,42,80,.07);
}
.sst-country-route-panel > strong{display:block;margin-bottom:10px;font-size:1rem;color:var(--text);font-weight:950}
.sst-country-route-panel > span{display:block;color:var(--muted);font-weight:750}
.sst-country-route-panel ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}
.sst-country-route-panel li{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;padding:11px 12px;border:1px solid rgba(105,119,160,.16);border-radius:16px;background:#fff}
.sst-country-route-panel li span{grid-row:1 / span 2;display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:linear-gradient(135deg,var(--primary),#22b37c);color:#fff;font-weight:900;font-size:.82rem}
.sst-country-route-panel li strong{color:var(--text);font-weight:900}
.sst-country-route-panel li small{color:var(--muted);font-weight:750}
.sst-country-route-panel p{margin:12px 0 0;color:var(--muted);font-weight:760;line-height:1.45}
.sst-country-manual-add{
  margin:14px 0 0;
  display:grid;
  grid-template-columns:minmax(220px,1fr) auto;
  gap:10px;
  align-items:end;
  padding:12px;
  border:1px dashed rgba(105,119,160,.26);
  border-radius:18px;
  background:rgba(255,255,255,.62);
}
.sst-country-manual-add label{display:grid;gap:6px;font-weight:850;color:var(--text)}
.sst-country-manual-add select,
.sst-trip-note-field textarea{
  width:100%;
  border:1px solid var(--line);
  border-radius:13px;
  padding:11px 12px;
  background:#fff;
  color:var(--text);
  font:inherit;
}
.sst-trip-note-field{grid-column:1 / -1;min-width:100%}
.sst-trip-note-field label{display:grid;gap:8px;font-weight:850;color:var(--text)}
.sst-trip-note-field textarea{min-height:88px;resize:vertical;line-height:1.45}
.sst-country-map-marker small{display:block;margin-left:2px;color:var(--muted);font-size:.72rem;font-weight:850;line-height:1.05;}
.sst-country-map-marker.is-compact{width:36px;height:36px;padding:0;border-radius:999px;justify-content:center;overflow:visible}
.sst-country-map-marker.is-compact strong,
.sst-country-map-marker.is-compact small{display:none}
.sst-country-map-marker.is-compact span{margin:0;width:26px;height:26px}
body.sst-dark .sst-country-map-help,
body.sst-dark .sst-country-route-panel,
body.sst-dark .sst-country-manual-add{background:rgba(17,24,39,.86);border-color:rgba(148,163,184,.20)}
body.sst-dark .sst-country-route-panel li,
body.sst-dark .sst-country-manual-add select,
body.sst-dark .sst-trip-note-field textarea{background:rgba(15,23,42,.94);border-color:rgba(148,163,184,.20);color:var(--text)}
@media(max-width:760px){
  .sst-country-map-help{display:block;padding:11px 12px}
  .sst-country-map-help strong{display:block;margin-bottom:4px;white-space:normal}
  .sst-planner-main-tool .sst-country-map{height:390px}
  .sst-country-manual-add{grid-template-columns:1fr}
  .sst-country-route-panel ol{grid-template-columns:1fr}
}

/* v8.0.3-dev: precise GeoJSON country shapes instead of rectangular click zones */
.sst-country-map .leaflet-overlay-pane svg path.leaflet-interactive{cursor:pointer;outline:none;}
.sst-country-map-tooltip{border:1px solid rgba(91,101,246,.18)!important;border-radius:999px!important;box-shadow:0 12px 28px rgba(24,42,80,.16)!important;color:var(--text)!important;font-weight:900!important;padding:5px 9px!important;background:rgba(255,255,255,.96)!important;}
.sst-country-map-geojson-failed::after{content:'Map country selection is not available. Please use the manual country field below.';position:absolute;left:18px;right:18px;bottom:18px;z-index:650;background:rgba(255,255,255,.94);border:1px solid rgba(217,119,6,.22);border-radius:14px;padding:10px 12px;color:#92400e;font-weight:850;box-shadow:0 12px 30px rgba(24,42,80,.12);}
body.sst-dark .sst-country-map-tooltip{background:rgba(15,23,42,.96)!important;color:var(--text)!important;border-color:rgba(148,163,184,.24)!important;}
body.sst-dark .sst-country-map-geojson-failed::after{background:rgba(15,23,42,.96);color:#fde68a;border-color:rgba(245,158,11,.25);}


/* v8.0.4-dev: Trip Planner map visual polish */
.sst-country-map-is-empty::after{
  content:'Click a country on the map, or use manual add below for small countries.';
  position:absolute;
  left:16px;
  bottom:16px;
  z-index:620;
  max-width:min(430px, calc(100% - 32px));
  padding:9px 12px;
  border:1px solid rgba(91,101,246,.14);
  border-radius:999px;
  background:rgba(255,255,255,.88);
  color:var(--muted);
  font-size:.84rem;
  font-weight:800;
  box-shadow:0 10px 26px rgba(24,42,80,.09);
  pointer-events:none;
}
.sst-country-map .leaflet-overlay-pane svg path.leaflet-interactive{
  vector-effect:non-scaling-stroke;
}
.sst-country-map-tooltip{
  font-size:.86rem!important;
  padding:4px 8px!important;
  box-shadow:0 10px 22px rgba(24,42,80,.10)!important;
}
.sst-country-route-panel{
  margin:12px 0 0;
  padding:13px 14px;
  border-radius:18px;
  box-shadow:0 10px 28px rgba(24,42,80,.055);
}
.sst-country-route-panel > strong{margin-bottom:8px;}
.sst-country-route-panel ol{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;}
.sst-country-route-panel li{padding:9px 10px;border-radius:14px;}
.sst-country-route-panel p{margin-top:9px;font-size:.9rem;}
.sst-country-manual-add{
  margin:10px 0 0;
  padding:10px;
  border-style:solid;
  background:rgba(255,255,255,.42);
}
.sst-country-manual-add label{font-size:.88rem;}
.sst-country-date-row,
.sst-planner-main-tool .sst-country-date-row{
  max-width:none;
  margin-top:10px;
  grid-template-columns:minmax(150px,185px) minmax(150px,185px) minmax(220px,310px) minmax(280px,1fr);
  gap:10px;
  align-items:start;
}
.sst-country-date-row label{font-size:.84rem;}
.sst-country-date-row input,
.sst-country-date-row select,
.sst-trip-note-field textarea{
  margin-top:5px;
  padding:10px 11px;
  border-radius:12px;
}
.sst-trip-note-field{
  grid-column:4;
  grid-row:1 / span 2;
  min-width:0;
}
.sst-trip-note-field textarea{min-height:74px;}
.sst-country-date-row p{
  grid-column:1 / 4;
  font-size:.82rem;
  line-height:1.38;
  padding-top:2px;
}
.sst-country-map-help{padding:10px 13px;margin-bottom:10px;}
.sst-country-map-help span{font-size:.88rem;}
body.sst-dark .sst-country-map-is-empty::after{
  background:rgba(15,23,42,.86);
  color:rgba(226,232,240,.74);
  border-color:rgba(148,163,184,.22);
}
@media(max-width:980px){
  .sst-country-date-row,
  .sst-planner-main-tool .sst-country-date-row{grid-template-columns:1fr 1fr;}
  .sst-trip-note-field{grid-column:1 / -1;grid-row:auto;}
  .sst-country-date-row p{grid-column:1 / -1;}
}
@media(max-width:760px){
  .sst-country-map-is-empty::after{left:10px;right:10px;bottom:10px;border-radius:14px;max-width:none;}
  .sst-country-date-row,
  .sst-planner-main-tool .sst-country-date-row{grid-template-columns:1fr;}
}

/* v8.0.6-dev: Trip Planner layout polish */
.sst-country-explorer-head-compact{
  margin-bottom:14px;
}
.sst-country-explorer-head-compact h2{
  margin-bottom:7px;
}
.sst-country-explorer-head-compact p:not(.sst-kicker){
  max-width:880px;
  line-height:1.55;
}
.sst-country-selection-actionbar{
  display:grid;
  grid-template-columns:minmax(240px,1fr) auto;
  gap:14px;
  align-items:center;
}
.sst-country-selection-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:9px;
}
.sst-country-selection-actions .sst-country-use-primary,
.sst-country-use-primary{
  background:linear-gradient(135deg,var(--primary),var(--primary-2)) !important;
  color:#fff !important;
  border-color:transparent !important;
  box-shadow:0 16px 34px rgba(74,108,255,.22) !important;
}
.sst-country-selection-actions .sst-country-use-primary:hover,
.sst-country-use-primary:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 38px rgba(74,108,255,.28) !important;
}
.sst-country-selection-actions .sst-btn[disabled]{
  opacity:.48;
  cursor:not-allowed;
  transform:none !important;
  box-shadow:none !important;
}
.sst-country-route-panel li{
  grid-template-columns:auto 1fr auto;
}
.sst-country-route-panel li span{
  grid-row:1;
  cursor:pointer;
}
.sst-country-route-panel li div{
  min-width:0;
}
.sst-route-remove{
  border:1px solid rgba(105,119,160,.18);
  background:rgba(255,255,255,.86);
  color:var(--muted);
  border-radius:999px;
  padding:6px 10px;
  font:inherit;
  font-size:.78rem;
  font-weight:900;
  cursor:pointer;
}
.sst-route-remove:hover{
  color:#b42318;
  border-color:rgba(180,35,24,.20);
  background:rgba(254,242,242,.95);
}
.sst-country-map-marker.is-removable,
.sst-country-map-marker.is-removable span{
  cursor:pointer;
}
.sst-country-map-marker.is-removable:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 30px rgba(74,108,255,.22);
}
.sst-country-manual-add{
  grid-template-columns:minmax(260px,1.2fr) minmax(220px,.9fr) auto;
  align-items:center;
}
.sst-country-manual-copy{
  display:grid;
  gap:3px;
  color:var(--muted);
  line-height:1.35;
}
.sst-country-manual-copy strong{
  color:var(--text);
  font-weight:900;
}
.sst-country-manual-copy span{
  font-size:.86rem;
  font-weight:750;
}
.sst-country-date-row,
.sst-planner-main-tool .sst-country-date-row{
  display:grid;
  grid-template-columns:minmax(170px,1fr) minmax(170px,1fr) minmax(230px,1.15fr);
  gap:12px;
  align-items:start;
}
.sst-country-date-row .sst-trip-note-field{
  grid-column:1 / -1 !important;
  grid-row:auto !important;
  min-width:100%;
}
.sst-country-date-row .sst-trip-note-field textarea{
  min-height:104px;
}
.sst-country-date-row .sst-country-form-note,
.sst-country-date-row p.sst-country-form-note{
  grid-column:1 / -1 !important;
  margin:0;
  padding:0;
  color:var(--muted);
  font-size:.86rem;
  line-height:1.45;
}
body.sst-dark .sst-route-remove{
  background:rgba(15,23,42,.86);
  color:rgba(226,232,240,.72);
  border-color:rgba(148,163,184,.20);
}
body.sst-dark .sst-route-remove:hover{
  background:rgba(127,29,29,.32);
  color:#fecaca;
  border-color:rgba(248,113,113,.24);
}
@media(max-width:980px){
  .sst-country-selection-actionbar{grid-template-columns:1fr;}
  .sst-country-selection-actions{justify-content:flex-start;}
  .sst-country-manual-add{grid-template-columns:1fr 1fr;}
  .sst-country-manual-copy{grid-column:1 / -1;}
  .sst-country-date-row,
  .sst-planner-main-tool .sst-country-date-row{grid-template-columns:1fr 1fr;}
}
@media(max-width:760px){
  .sst-country-selection-actions{display:grid;grid-template-columns:1fr;}
  .sst-country-manual-add{grid-template-columns:1fr;}
  .sst-country-date-row,
  .sst-planner-main-tool .sst-country-date-row{grid-template-columns:1fr;}
  .sst-country-route-panel li{grid-template-columns:auto 1fr;}
  .sst-route-remove{grid-column:2;justify-self:start;margin-top:3px;}
}

/* v8.0.8-dev: Trip Planner interaction fixes */
.sst-country-selection-actions .sst-country-use-primary,
.sst-country-use-primary{
  background:var(--primary) !important;
  color:#fff !important;
  border-color:var(--primary) !important;
  box-shadow:none !important;
}
.sst-country-selection-actions .sst-country-use-primary:hover,
.sst-country-use-primary:hover{
  background:var(--primary-2) !important;
  color:#fff !important;
  transform:none !important;
  box-shadow:none !important;
}
.sst-country-selection-actions .sst-country-use-primary:focus-visible,
.sst-country-use-primary:focus-visible{
  outline:3px solid rgba(74,108,255,.22);
  outline-offset:3px;
}
.sst-country-route-panel li div{
  display:grid;
  gap:3px;
  min-width:0;
}
.sst-country-route-panel li strong{
  display:block;
  line-height:1.15;
}
.sst-country-route-panel li small{
  display:block;
  line-height:1.2;
}
.sst-country-route-panel li span{
  align-self:center;
}
.sst-country-map-marker.is-removable:hover{
  box-shadow:0 10px 22px rgba(74,108,255,.16);
}
.sst-trip-print-report{display:none;}
@media print{
  body.sst-print-trip-plan *{visibility:hidden !important;}
  body.sst-print-trip-plan .sst-trip-print-report,
  body.sst-print-trip-plan .sst-trip-print-report *{visibility:visible !important;}
  body.sst-print-trip-plan .sst-trip-print-report{
    display:block !important;
    position:absolute;
    left:0;
    top:0;
    width:100%;
    box-sizing:border-box;
    padding:24px 28px;
    margin:0;
    background:#fff;
    color:#17223b;
    font-family:Arial,sans-serif;
    line-height:1.45;
  }
  body.sst-print-trip-plan .sst-trip-print-report h1{font-size:24px;margin:0 0 10px;color:#17223b;}
  body.sst-print-trip-plan .sst-trip-print-report h2{font-size:16px;margin:18px 0 8px;color:#17223b;}
  body.sst-print-trip-plan .sst-trip-print-route{margin:0 0 14px;}
  body.sst-print-trip-plan .sst-trip-print-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0;}
  body.sst-print-trip-plan .sst-trip-print-meta div,
  body.sst-print-trip-plan .sst-trip-print-note{border:1px solid #d9e2f0;border-radius:12px;padding:10px;background:#f8fafc;}
  body.sst-print-trip-plan .sst-trip-print-meta strong{display:block;margin-bottom:4px;color:#17223b;}
  body.sst-print-trip-plan .sst-trip-print-meta span{display:block;color:#4b5874;}
  body.sst-print-trip-plan .sst-trip-print-report ol{list-style:none;margin:0;padding:0;display:grid;gap:8px;}
  body.sst-print-trip-plan .sst-trip-print-report li{display:grid;grid-template-columns:30px 1fr;gap:9px;align-items:center;border:1px solid #d9e2f0;border-radius:12px;padding:9px;background:#fff;}
  body.sst-print-trip-plan .sst-trip-print-report li span{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:#304fdd;color:#fff;font-weight:700;}
  body.sst-print-trip-plan .sst-trip-print-report li strong{display:block;color:#17223b;}
  body.sst-print-trip-plan .sst-trip-print-report li small{display:block;color:#5f6b88;}
  body.sst-print-trip-plan .sst-trip-print-note{white-space:pre-wrap;min-height:42px;}
  body.sst-print-trip-plan .sst-trip-print-disclaimer{margin-top:18px;font-size:12px;color:#5f6b88;border-top:1px solid #d9e2f0;padding-top:12px;}
}


/* v8.0.8-dev: Trip Planner form and print fixes */
.sst-country-selection-actions .sst-country-use-primary,
.sst-country-use-primary{
  background:#0f2f9f !important;
  background-image:none !important;
  color:#fff !important;
  border-color:#0f2f9f !important;
  box-shadow:none !important;
}
.sst-country-selection-actions .sst-country-use-primary:hover,
.sst-country-use-primary:hover{
  background:#0b257f !important;
  background-image:none !important;
  color:#fff !important;
  border-color:#0b257f !important;
  transform:none !important;
  box-shadow:none !important;
}
.sst-form select,
.sst-country-date-row select{
  width:100%;
  border-radius:14px;
  border:1px solid var(--line);
  background:var(--surface-2);
  padding:12px 14px;
  color:var(--text);
  font:inherit;
}
.sst-form input[type="hidden"]{display:none !important;}
.sst-form .sst-purpose-field select{min-width:0;}
.sst-planned-panel .sst-form{grid-template-columns:1fr 1fr 1.05fr .9fr auto;}
.sst-trips-panel .sst-form{grid-template-columns:1fr 1fr 1.05fr .9fr auto;}
.sst-planned-panel .sst-form button,
.sst-trips-panel .sst-form button{white-space:nowrap;min-width:150px;}
.sst-country-route-panel li div{display:grid !important;gap:4px !important;}
.sst-country-route-panel li strong{display:block !important;margin:0 !important;line-height:1.15 !important;}
.sst-country-route-panel li small{display:block !important;margin:0 !important;line-height:1.22 !important;}
.sst-planner-mini-steps-compact,
.sst-planner-mini-steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:16px 0 18px;
}
.sst-planner-mini-steps-compact div,
.sst-planner-mini-steps div{
  display:grid;
  grid-template-columns:auto 1fr;
  column-gap:10px;
  row-gap:2px;
  align-items:center;
  padding:16px 18px !important;
  min-height:0 !important;
}
.sst-planner-mini-steps-compact span,
.sst-planner-mini-steps span{
  grid-row:1 / span 2;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(74,108,255,.10);
  color:var(--primary-2);
  font-weight:900;
}
.sst-planner-mini-steps-compact strong,
.sst-planner-mini-steps strong{font-size:1rem !important;line-height:1.2;}
.sst-planner-mini-steps-compact small,
.sst-planner-mini-steps small{font-size:.86rem !important;line-height:1.35 !important;color:var(--muted);}
.sst-trip-print-report{display:none;}
@media print{
  @page{size:A4 portrait;margin:12mm;}
  body.sst-print-trip-plan{background:#fff !important;}
  body.sst-print-trip-plan *{visibility:hidden !important;}
  body.sst-print-trip-plan .sst-trip-print-report,
  body.sst-print-trip-plan .sst-trip-print-report *{visibility:visible !important;}
  body.sst-print-trip-plan .sst-trip-print-report{
    display:block !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    width:100% !important;
    box-sizing:border-box !important;
    padding:0 !important;
    margin:0 !important;
    background:#fff !important;
    color:#17223b !important;
    font-family:Arial,sans-serif !important;
    line-height:1.35 !important;
    font-size:12px !important;
  }
  body.sst-print-trip-plan .sst-trip-print-report h1{font-size:22px !important;margin:0 0 6px !important;color:#17223b !important;}
  body.sst-print-trip-plan .sst-trip-print-report h2{font-size:14px !important;margin:12px 0 6px !important;color:#17223b !important;}
  body.sst-print-trip-plan .sst-trip-print-route{margin:0 0 8px !important;font-size:13px !important;}
  body.sst-print-trip-plan .sst-trip-print-map{height:165px !important;border:1px solid #d9e2f0 !important;border-radius:12px !important;overflow:hidden !important;margin:8px 0 10px !important;background:#eef3fb !important;position:relative !important;}
  body.sst-print-trip-plan .sst-trip-print-map-clone{display:block !important;width:100% !important;height:165px !important;min-height:165px !important;border-radius:0 !important;overflow:hidden !important;position:relative !important;}
  body.sst-print-trip-plan .sst-trip-print-map-clone .leaflet-pane,
  body.sst-print-trip-plan .sst-trip-print-map-clone .leaflet-map-pane,
  body.sst-print-trip-plan .sst-trip-print-map-clone .leaflet-tile-pane,
  body.sst-print-trip-plan .sst-trip-print-map-clone .leaflet-overlay-pane,
  body.sst-print-trip-plan .sst-trip-print-map-clone .leaflet-marker-pane,
  body.sst-print-trip-plan .sst-trip-print-map-clone .leaflet-shadow-pane{visibility:visible !important;}
  body.sst-print-trip-plan .sst-trip-print-map-clone .leaflet-control-container{display:none !important;}
  body.sst-print-trip-plan .sst-trip-print-map-empty{display:grid !important;place-items:center !important;height:100% !important;color:#5f6b88 !important;}
  body.sst-print-trip-plan .sst-trip-print-meta{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:7px !important;margin:8px 0 !important;}
  body.sst-print-trip-plan .sst-trip-print-meta div,
  body.sst-print-trip-plan .sst-trip-print-note{border:1px solid #d9e2f0 !important;border-radius:10px !important;padding:7px !important;background:#f8fafc !important;break-inside:avoid !important;}
  body.sst-print-trip-plan .sst-trip-print-meta strong{display:block !important;margin-bottom:2px !important;color:#17223b !important;font-size:11px !important;}
  body.sst-print-trip-plan .sst-trip-print-meta span{display:block !important;color:#4b5874 !important;font-size:11px !important;}
  body.sst-print-trip-plan .sst-trip-print-report ol{list-style:none !important;margin:0 !important;padding:0 !important;display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:6px !important;}
  body.sst-print-trip-plan .sst-trip-print-report li{display:grid !important;grid-template-columns:24px 1fr !important;gap:6px !important;align-items:center !important;border:1px solid #d9e2f0 !important;border-radius:10px !important;padding:7px !important;background:#fff !important;break-inside:avoid !important;}
  body.sst-print-trip-plan .sst-trip-print-report li span{display:grid !important;place-items:center !important;width:22px !important;height:22px !important;border-radius:999px !important;background:#304fdd !important;color:#fff !important;font-weight:700 !important;font-size:11px !important;}
  body.sst-print-trip-plan .sst-trip-print-report li strong{display:block !important;color:#17223b !important;font-size:12px !important;line-height:1.15 !important;}
  body.sst-print-trip-plan .sst-trip-print-report li small{display:block !important;color:#5f6b88 !important;font-size:10.5px !important;line-height:1.2 !important;}
  body.sst-print-trip-plan .sst-trip-print-note{white-space:pre-wrap !important;min-height:28px !important;}
  body.sst-print-trip-plan .sst-trip-print-disclaimer{margin-top:10px !important;font-size:10px !important;color:#5f6b88 !important;border-top:1px solid #d9e2f0 !important;padding-top:8px !important;}
}
@media(max-width:1180px){
  .sst-planned-panel .sst-form,.sst-trips-panel .sst-form{grid-template-columns:1fr 1fr;}
  .sst-planned-panel .sst-form button,.sst-trips-panel .sst-form button{justify-self:start;}
}
@media(max-width:860px){
  .sst-planner-mini-steps-compact,.sst-planner-mini-steps{grid-template-columns:1fr;}
}

/* v8.0.9-dev: Trip Planner cleanup and print repair (superseded by v8.0.10-dev overrides) */
.sst-country-explorer-head-compact p:not(.sst-kicker){max-width:900px;}
.sst-country-map-help{display:flex;justify-content:space-between;gap:16px;align-items:center;}
.sst-country-map-help span{max-width:640px;text-align:right;}
.sst-country-map-is-empty::after{content:"Start by clicking a Schengen country." !important;}
.sst-country-selection-box button[data-sst-country-use]:not(:disabled),
.sst-country-selection-actions button[data-sst-country-use]:not(:disabled),
button.sst-country-use-primary:not(:disabled){
  background:#0b2f8f !important;
  background-image:none !important;
  color:#fff !important;
  border-color:#0b2f8f !important;
  box-shadow:none !important;
}
.sst-country-selection-box button[data-sst-country-use]:not(:disabled):hover,
.sst-country-selection-actions button[data-sst-country-use]:not(:disabled):hover,
button.sst-country-use-primary:not(:disabled):hover{
  background:#08256f !important;
  background-image:none !important;
  color:#fff !important;
  border-color:#08256f !important;
  box-shadow:none !important;
  transform:none !important;
}
.sst-planner-mini-steps-compact{display:flex !important;flex-wrap:wrap;gap:8px !important;margin:12px 0 14px !important;}
.sst-planner-mini-steps-compact div{display:flex !important;align-items:center !important;gap:8px !important;padding:10px 12px !important;min-height:0 !important;border-radius:16px !important;}
.sst-planner-mini-steps-compact span{width:24px !important;height:24px !important;font-size:.85rem !important;flex:0 0 auto !important;}
.sst-planner-mini-steps-compact strong{font-size:.92rem !important;white-space:nowrap !important;}
.sst-planner-mini-steps-compact small{display:none !important;}
.sst-country-date-row,
.sst-planner-main-tool .sst-country-date-row{grid-template-columns:repeat(3,minmax(180px,1fr)) !important;gap:12px !important;align-items:end !important;}
.sst-country-date-row label{display:flex !important;flex-direction:column !important;gap:8px !important;}
.sst-country-date-row input,
.sst-country-date-row select,
.sst-country-manual-add select,
.sst-country-manual-add .sst-btn,
.sst-country-date-row .sst-btn{height:52px !important;min-height:52px !important;box-sizing:border-box !important;padding:12px 14px !important;border-radius:16px !important;font-size:1rem !important;line-height:1.2 !important;}
.sst-country-date-row .sst-trip-note-field{grid-column:1 / -1 !important;margin-top:2px !important;}
.sst-country-date-row .sst-trip-note-field textarea{min-height:96px !important;width:100% !important;box-sizing:border-box !important;}
.sst-country-date-row .sst-country-form-note{grid-column:1 / -1 !important;max-width:860px !important;}
.sst-country-manual-add{grid-template-columns:minmax(260px,1fr) minmax(260px,1.3fr) auto !important;gap:12px !important;}
.sst-country-route-panel li div{display:flex !important;flex-direction:column !important;gap:4px !important;align-items:flex-start !important;}
.sst-country-route-panel li strong,.sst-country-route-panel li small{display:block !important;width:100% !important;}
.sst-country-explorer-note{font-size:.95rem;}
@media(max-width:980px){
  .sst-country-map-help{display:grid;}
  .sst-country-map-help span{text-align:left;max-width:none;}
  .sst-country-date-row,.sst-planner-main-tool .sst-country-date-row{grid-template-columns:1fr 1fr !important;}
  .sst-country-manual-add{grid-template-columns:1fr !important;}
}
@media(max-width:720px){
  .sst-country-date-row,.sst-planner-main-tool .sst-country-date-row{grid-template-columns:1fr !important;}
}
@media print{
  @page{size:A4 portrait;margin:12mm;}
  body.sst-print-trip-plan{background:#fff !important;min-height:auto !important;}
  body.sst-print-trip-plan > *:not(.sst-trip-print-report){display:none !important;}
  body.sst-print-trip-plan .sst-trip-print-report,
  body.sst-print-trip-plan .sst-trip-print-report *{visibility:visible !important;}
  body.sst-print-trip-plan .sst-trip-print-report{
    display:block !important;
    position:static !important;
    width:100% !important;
    max-width:none !important;
    box-sizing:border-box !important;
    padding:0 !important;
    margin:0 !important;
    background:#fff !important;
    color:#17223b !important;
    font-family:Arial,sans-serif !important;
    line-height:1.32 !important;
    font-size:12px !important;
    break-after:auto !important;
    page-break-after:auto !important;
  }
  body.sst-print-trip-plan .sst-trip-print-report h1{font-size:22px !important;margin:0 0 5px !important;color:#17223b !important;}
  body.sst-print-trip-plan .sst-trip-print-report h2{font-size:14px !important;margin:10px 0 5px !important;color:#17223b !important;}
  body.sst-print-trip-plan .sst-trip-print-route{margin:0 0 7px !important;font-size:13px !important;}
  body.sst-print-trip-plan .sst-trip-print-map{height:145px !important;border:1px solid #d9e2f0 !important;border-radius:12px !important;overflow:hidden !important;margin:7px 0 8px !important;background:#eef3f8 !important;break-inside:avoid !important;}
  body.sst-print-trip-plan .sst-trip-print-map svg{display:block !important;width:100% !important;height:100% !important;}
  body.sst-print-trip-plan .sst-trip-print-meta{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:6px !important;margin:7px 0 !important;break-inside:avoid !important;}
  body.sst-print-trip-plan .sst-trip-print-meta div,
  body.sst-print-trip-plan .sst-trip-print-note{border:1px solid #d9e2f0 !important;border-radius:9px !important;padding:6px !important;background:#f8fafc !important;break-inside:avoid !important;}
  body.sst-print-trip-plan .sst-trip-print-meta strong{display:block !important;margin-bottom:2px !important;color:#17223b !important;font-size:10.5px !important;}
  body.sst-print-trip-plan .sst-trip-print-meta span{display:block !important;color:#4b5874 !important;font-size:10.5px !important;}
  body.sst-print-trip-plan .sst-trip-print-report ol{list-style:none !important;margin:0 !important;padding:0 !important;display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:5px !important;break-inside:avoid !important;}
  body.sst-print-trip-plan .sst-trip-print-report li{display:grid !important;grid-template-columns:22px 1fr !important;gap:6px !important;align-items:center !important;border:1px solid #d9e2f0 !important;border-radius:9px !important;padding:6px !important;background:#fff !important;break-inside:avoid !important;}
  body.sst-print-trip-plan .sst-trip-print-report li span{display:grid !important;place-items:center !important;width:20px !important;height:20px !important;border-radius:999px !important;background:#1239b6 !important;color:#fff !important;font-weight:700 !important;font-size:10px !important;}
  body.sst-print-trip-plan .sst-trip-print-report li strong{display:block !important;color:#17223b !important;font-size:11px !important;line-height:1.12 !important;}
  body.sst-print-trip-plan .sst-trip-print-report li small{display:block !important;color:#5f6b88 !important;font-size:9.8px !important;line-height:1.15 !important;}
  body.sst-print-trip-plan .sst-trip-print-note{white-space:pre-wrap !important;min-height:24px !important;max-height:90px !important;overflow:hidden !important;}
  body.sst-print-trip-plan .sst-trip-print-disclaimer{margin-top:8px !important;font-size:9.5px !important;color:#5f6b88 !important;border-top:1px solid #d9e2f0 !important;padding-top:7px !important;}
}

/* v8.0.10-dev: Trip Planner layout rollback and map print restore */
.sst-sr-only{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}
.sst-country-explorer-head-compact p:not(.sst-kicker){
  max-width:1200px !important;
}
.sst-country-map-help{
  display:none !important;
}
.sst-planner-mini-steps,
.sst-planner-mini-steps-compact{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:14px !important;
  margin:18px 0 20px !important;
}
.sst-planner-mini-steps div,
.sst-planner-mini-steps-compact div{
  display:grid !important;
  grid-template-columns:auto 1fr !important;
  grid-template-rows:auto auto !important;
  column-gap:12px !important;
  row-gap:3px !important;
  align-items:center !important;
  padding:17px 18px !important;
  min-height:82px !important;
  border:1px solid var(--line) !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.84) !important;
  box-shadow:0 12px 28px rgba(24,42,80,.05) !important;
}
.sst-planner-mini-steps span,
.sst-planner-mini-steps-compact span{
  grid-row:1 / span 2 !important;
  display:grid !important;
  place-items:center !important;
  width:34px !important;
  height:34px !important;
  border-radius:999px !important;
  background:rgba(74,108,255,.10) !important;
  color:var(--primary-2) !important;
  font-size:1rem !important;
  font-weight:900 !important;
}
.sst-planner-mini-steps strong,
.sst-planner-mini-steps-compact strong{
  display:block !important;
  font-size:1.02rem !important;
  line-height:1.2 !important;
  white-space:normal !important;
}
.sst-planner-mini-steps small,
.sst-planner-mini-steps-compact small{
  display:block !important;
  font-size:.9rem !important;
  line-height:1.35 !important;
  color:var(--muted) !important;
}
.sst-country-manual-select-label{
  display:block !important;
}
.sst-country-date-row input,
.sst-country-date-row select,
.sst-country-manual-add select,
.sst-country-manual-add .sst-btn,
.sst-country-date-row .sst-btn{
  height:46px !important;
  min-height:46px !important;
  padding:9px 13px !important;
  border-radius:14px !important;
  font-size:.96rem !important;
  line-height:1.2 !important;
}
.sst-country-manual-add{
  grid-template-columns:minmax(220px,.9fr) minmax(260px,1.25fr) auto !important;
  align-items:center !important;
}
.sst-country-manual-copy strong{font-size:.98rem !important;}
.sst-country-manual-copy span{font-size:.9rem !important;}
.sst-country-date-row label{gap:6px !important;}
.sst-country-date-row .sst-trip-note-field textarea{
  min-height:78px !important;
}
.sst-country-selection-box button[data-sst-country-use]:not(:disabled),
.sst-country-selection-actions button[data-sst-country-use]:not(:disabled),
button.sst-country-use-primary:not(:disabled){
  background:#0b2f8f !important;
  color:#fff !important;
  border-color:#0b2f8f !important;
  box-shadow:none !important;
}
.sst-country-selection-box button[data-sst-country-use]:not(:disabled):hover,
.sst-country-selection-actions button[data-sst-country-use]:not(:disabled):hover,
button.sst-country-use-primary:not(:disabled):hover{
  background:#08256f !important;
  color:#fff !important;
  border-color:#08256f !important;
  box-shadow:none !important;
  transform:none !important;
}
@media(max-width:980px){
  .sst-planner-mini-steps,.sst-planner-mini-steps-compact{grid-template-columns:1fr !important;}
  .sst-country-manual-add{grid-template-columns:1fr !important;}
}

/* v8.0.11-dev: Trip Planner print reuses stay-map report style; trim old print-only DOM rules */
.sst-trip-print-report{display:none !important;}
.sst-country-map-is-empty::after{
  content:'Click countries on the map in the order you plan to visit them.' !important;
}
.sst-country-date-row input,
.sst-country-date-row select,
.sst-country-manual-add select,
.sst-country-manual-add .sst-btn{
  height:44px !important;
  min-height:44px !important;
  padding:8px 12px !important;
  border-radius:13px !important;
}
.sst-country-selection-box button[data-sst-country-use]:not(:disabled),
.sst-country-selection-actions button[data-sst-country-use]:not(:disabled),
button.sst-country-use-primary:not(:disabled){
  background:#0b2f8f !important;
  background-image:none !important;
  color:#fff !important;
  border-color:#0b2f8f !important;
  box-shadow:none !important;
}
.sst-country-selection-box button[data-sst-country-use]:not(:disabled):hover,
.sst-country-selection-actions button[data-sst-country-use]:not(:disabled):hover,
button.sst-country-use-primary:not(:disabled):hover{
  background:#08256f !important;
  color:#fff !important;
  border-color:#08256f !important;
}

/* v8.0.14-dev corrective Trip Planner polish */
.sst-planner-mini-steps{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:14px !important;margin:18px 0 22px !important;}
.sst-planner-mini-steps div{display:grid !important;grid-template-columns:auto 1fr !important;align-items:start !important;column-gap:12px !important;row-gap:2px !important;padding:16px 18px !important;min-height:92px !important;border-radius:20px !important;background:rgba(255,255,255,.72) !important;border:1px solid var(--border) !important;box-shadow:0 14px 36px rgba(24,42,80,.06) !important;}
.sst-planner-mini-steps span{grid-row:1 / span 2 !important;width:34px !important;height:34px !important;border-radius:50% !important;display:grid !important;place-items:center !important;background:rgba(99,91,255,.10) !important;color:var(--brand) !important;font-weight:900 !important;font-size:1rem !important;}
.sst-planner-mini-steps strong{font-size:1.05rem !important;line-height:1.18 !important;white-space:normal !important;}
.sst-planner-mini-steps small{display:block !important;font-size:.9rem !important;line-height:1.35 !important;color:var(--muted) !important;}
.sst-country-explorer-head-compact p{max-width:980px !important;width:100% !important;}
.sst-country-date-row input,.sst-country-date-row select,.sst-country-manual-add select{min-height:54px !important;padding:13px 16px !important;font-size:1rem !important;}
.sst-country-manual-select-label > span:not(.sst-sr-only){display:none !important;}
@media (max-width: 900px){
  .sst-planner-mini-steps{grid-template-columns:1fr !important;gap:10px !important;margin:14px 0 18px !important;}
  .sst-planner-mini-steps div{min-height:0 !important;padding:12px 14px !important;border-radius:16px !important;}
  .sst-planner-mini-steps span{width:28px !important;height:28px !important;font-size:.9rem !important;}
  .sst-planner-mini-steps strong{font-size:1rem !important;}
  .sst-planner-mini-steps small{font-size:.86rem !important;}
  .sst-country-date-row input,.sst-country-date-row select,.sst-country-manual-add select{min-height:50px !important;padding:11px 14px !important;}
}


/* v8.0.15-dev: restore Trip Planner mobile steps and stable print/layout correction */
.sst-planner-mini-steps,
.sst-planner-mini-steps-compact{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
  margin:18px 0 20px !important;
}
.sst-planner-mini-steps div,
.sst-planner-mini-steps-compact div{
  display:grid !important;
  grid-template-columns:auto 1fr !important;
  grid-template-rows:auto auto !important;
  column-gap:10px !important;
  row-gap:3px !important;
  align-items:center !important;
  min-height:74px !important;
  padding:14px 16px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.78) !important;
  border:1px solid var(--line) !important;
  box-shadow:0 12px 28px rgba(24,42,80,.05) !important;
}
.sst-planner-mini-steps span,
.sst-planner-mini-steps-compact span{
  grid-row:1 / span 2 !important;
  width:30px !important;
  height:30px !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  background:rgba(99,91,255,.10) !important;
  color:var(--brand) !important;
  font-weight:900 !important;
  font-size:.92rem !important;
  margin:0 !important;
}
.sst-planner-mini-steps strong,
.sst-planner-mini-steps-compact strong{
  display:block !important;
  font-size:1rem !important;
  line-height:1.16 !important;
  margin:0 !important;
  white-space:normal !important;
}
.sst-planner-mini-steps small,
.sst-planner-mini-steps-compact small{
  display:block !important;
  font-size:.86rem !important;
  line-height:1.32 !important;
  color:var(--muted) !important;
  margin:0 !important;
}
.sst-country-explorer-head-compact p,
.sst-planner-hero-card > p{
  max-width:1120px !important;
  width:100% !important;
}
.sst-country-date-row input,
.sst-country-date-row select,
.sst-country-manual-add select{
  min-height:46px !important;
  height:46px !important;
  padding:9px 13px !important;
  border-radius:14px !important;
  font-size:.96rem !important;
}
@media (max-width: 900px){
  .sst-planner-mini-steps,
  .sst-planner-mini-steps-compact{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
    margin:14px 0 16px !important;
  }
  .sst-planner-mini-steps div,
  .sst-planner-mini-steps-compact div{
    grid-template-columns:auto 1fr !important;
    min-height:54px !important;
    padding:10px 9px !important;
    border-radius:14px !important;
    box-shadow:none !important;
  }
  .sst-planner-mini-steps span,
  .sst-planner-mini-steps-compact span{
    width:24px !important;
    height:24px !important;
    font-size:.78rem !important;
  }
  .sst-planner-mini-steps strong,
  .sst-planner-mini-steps-compact strong{
    font-size:.82rem !important;
    line-height:1.08 !important;
  }
  .sst-planner-mini-steps small,
  .sst-planner-mini-steps-compact small{
    display:none !important;
  }
}
@media (max-width: 420px){
  .sst-planner-mini-steps,
  .sst-planner-mini-steps-compact{gap:7px !important;}
  .sst-planner-mini-steps div,
  .sst-planner-mini-steps-compact div{
    display:flex !important;
    align-items:center !important;
    gap:7px !important;
    padding:9px 7px !important;
  }
  .sst-planner-mini-steps strong,
  .sst-planner-mini-steps-compact strong{font-size:.76rem !important;}
}

/* v8.0.16-dev: Trip Planner print handoff + mobile steps correction */
@media (max-width: 720px){
  .sst-planner-mini-steps,
  .sst-planner-mini-steps-compact{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
    margin:12px 0 14px !important;
  }
  .sst-planner-mini-steps div,
  .sst-planner-mini-steps-compact div{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;
    min-height:0 !important;
    padding:10px 8px !important;
    border-radius:14px !important;
  }
  .sst-planner-mini-steps span,
  .sst-planner-mini-steps-compact span{
    width:22px !important;
    height:22px !important;
    font-size:.78rem !important;
    flex:0 0 auto !important;
  }
  .sst-planner-mini-steps strong,
  .sst-planner-mini-steps-compact strong{
    font-size:.82rem !important;
    line-height:1.05 !important;
    white-space:normal !important;
  }
  .sst-planner-mini-steps small,
  .sst-planner-mini-steps-compact small{
    display:none !important;
  }
}
@media (max-width: 440px){
  .sst-planner-mini-steps,
  .sst-planner-mini-steps-compact{gap:6px !important;}
  .sst-planner-mini-steps div,
  .sst-planner-mini-steps-compact div{padding:9px 6px !important;}
  .sst-planner-mini-steps strong,
  .sst-planner-mini-steps-compact strong{font-size:.76rem !important;}
}


/* v8.0.22: Trip Planner content and form breathing room */
.sst-planner-v62{
  gap:24px !important;
}
.sst-planner-v62 .sst-planner-hero-card{
  padding:32px 34px 30px !important;
}
.sst-planner-v62 .sst-planner-hero-card h2{
  max-width:920px !important;
  margin-bottom:14px !important;
}
.sst-planner-v62 .sst-planner-hero-card > p{
  max-width:920px !important;
  margin-bottom:0 !important;
}
.sst-planner-mini-steps{
  margin:22px 0 0 !important;
}
.sst-planner-main-tool .sst-country-explorer{
  padding:24px !important;
}
.sst-planner-main-tool .sst-country-explorer-head{
  padding-bottom:18px !important;
  margin-bottom:18px !important;
}
.sst-planner-main-tool .sst-country-explorer-head h2{
  margin-top:3px !important;
}
.sst-planner-main-tool .sst-country-explorer-head p:not(.sst-kicker){
  max-width:940px !important;
}
.sst-planner-main-tool .sst-country-map-panel{
  display:grid !important;
  gap:18px !important;
}
.sst-planner-main-tool .sst-country-map{
  margin-bottom:0 !important;
}
.sst-country-selection-box.sst-country-selection-actionbar,
.sst-country-route-panel,
.sst-trip-details-panel{
  margin-top:0 !important;
}
.sst-trip-details-panel{
  padding:20px !important;
  border:1px solid rgba(105,119,160,.16) !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.78) !important;
  box-shadow:0 14px 34px rgba(24,42,80,.055) !important;
}
.sst-trip-details-head{
  display:flex !important;
  justify-content:space-between !important;
  gap:16px !important;
  align-items:flex-start !important;
  margin-bottom:16px !important;
  padding-bottom:14px !important;
  border-bottom:1px solid rgba(105,119,160,.12) !important;
}
.sst-trip-details-head strong{
  color:var(--text) !important;
  font-weight:950 !important;
  font-size:1.08rem !important;
}
.sst-trip-details-head span{
  color:var(--muted) !important;
  max-width:620px !important;
  font-size:.94rem !important;
  line-height:1.45 !important;
  text-align:right !important;
}
.sst-trip-details-panel .sst-country-manual-add{
  margin:0 0 18px !important;
  padding:16px !important;
  background:rgba(247,250,255,.82) !important;
  border-style:solid !important;
}
.sst-trip-details-panel .sst-country-date-row,
.sst-trip-details-panel .sst-planner-main-tool .sst-country-date-row,
.sst-planner-main-tool .sst-trip-details-panel .sst-country-date-row{
  margin-top:0 !important;
  gap:16px !important;
  max-width:none !important;
}
.sst-trip-details-panel .sst-country-date-row label{
  display:grid !important;
  gap:8px !important;
}
.sst-trip-details-panel .sst-country-date-row input,
.sst-trip-details-panel .sst-country-date-row select,
.sst-trip-details-panel .sst-trip-note-field textarea{
  background:#fff !important;
  border-color:rgba(105,119,160,.24) !important;
}
.sst-trip-details-panel .sst-trip-note-field textarea{
  min-height:112px !important;
}
.sst-trip-details-panel .sst-country-form-note{
  margin-top:2px !important;
  padding:12px 14px !important;
  border-radius:14px !important;
  background:rgba(74,108,255,.055) !important;
}
body.sst-dark .sst-trip-details-panel,
body.sst-dark .sst-trip-details-panel .sst-country-manual-add{
  background:rgba(17,24,39,.86) !important;
  border-color:rgba(148,163,184,.20) !important;
}
body.sst-dark .sst-trip-details-panel .sst-country-date-row input,
body.sst-dark .sst-trip-details-panel .sst-country-date-row select,
body.sst-dark .sst-trip-details-panel .sst-trip-note-field textarea{
  background:rgba(15,23,42,.94) !important;
  border-color:rgba(148,163,184,.22) !important;
}
@media(max-width:760px){
  .sst-planner-v62 .sst-planner-hero-card,
  .sst-planner-main-tool .sst-country-explorer,
  .sst-trip-details-panel{
    padding:18px !important;
  }
  .sst-trip-details-head{
    display:block !important;
  }
  .sst-trip-details-head span{
    display:block !important;
    text-align:left !important;
    margin-top:5px !important;
  }
  .sst-trip-details-panel .sst-country-manual-add{
    padding:14px !important;
  }
}

/* v8.0.23: Trip Planner text polish for reduced repetition. */

/* v8.0.24: Trip Planner map gets a little more vertical focus without changing route/map proportions. */
.sst-planner-main-tool .sst-route-preview-map{
  height:430px !important;
  min-height:430px !important;
}
.sst-planner-main-tool .sst-route-preview-map .leaflet-container{
  height:100% !important;
}
@media (min-width: 980px){
  .sst-planner-main-tool .sst-route-preview-map{
    height:460px !important;
    min-height:460px !important;
  }
}
@media (max-width: 760px){
  .sst-planner-main-tool .sst-route-preview-map{
    height:390px !important;
    min-height:390px !important;
  }
}

/* v8.0.33-dev: trip table UX improvements */
.sst-row-actions{
  display:inline-flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
}
.sst-icon-btn{
  width:34px;
  height:34px;
  border:1px solid rgba(15, 23, 42, .12);
  border-radius:10px;
  background:#fff;
  color:var(--sst-primary, #1e3a8a);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition:background .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.sst-icon-btn svg{width:17px;height:17px;fill:currentColor;display:block;}
.sst-icon-btn:hover{background:#f6f8ff;border-color:rgba(0,35,150,.25);box-shadow:0 8px 18px rgba(15,23,42,.08);transform:translateY(-1px);}
.sst-icon-btn.sst-delete{color:#b82e2e;border-color:rgba(184,46,46,.16);}
.sst-icon-btn.sst-delete:hover{background:#fff5f5;border-color:rgba(184,46,46,.32);}
.sst-trip-status{
  display:inline-flex;
  align-items:center;
  width:max-content;
  margin-top:5px;
  padding:3px 8px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.02em;
  line-height:1.1;
}
.sst-trip-status-completed{background:#edf2f7;color:#344054;border:1px solid #d8dee8;}
.sst-trip-status-ongoing{background:#fff7e6;color:#985c00;border:1px solid #f3d6a2;}
.sst-trip-status-planned{background:#e7fbf8;color:#087f80;border:1px solid #b9ece8;}
.sst-inline-alert{
  display:none;
  align-items:flex-start;
  gap:10px;
  margin:0 0 14px;
  padding:13px 14px;
  border:1px solid rgba(184,46,46,.28);
  background:#fff5f5;
  color:#9f1d1d;
  border-radius:14px;
  font-weight:700;
  box-shadow:0 10px 22px rgba(184,46,46,.06);
}
.sst-inline-alert.is-visible{display:flex;}
.sst-inline-alert-icon{
  flex:0 0 auto;
  width:20px;
  height:20px;
  border-radius:999px;
  background:#e85a5a;
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  line-height:1;
  margin-top:1px;
}
.sst-inline-alert-text{flex:1;}
.sst-inline-alert-close{
  border:0;
  background:transparent;
  color:#b82e2e;
  font-size:22px;
  line-height:1;
  cursor:pointer;
  padding:0 2px;
}
.sst-modal-backdrop{
  position:fixed;
  inset:0;
  z-index:999999;
  background:rgba(15,23,42,.58);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
}
.sst-modal{
  width:min(520px, 100%);
  background:#fff;
  color:#0f172a;
  border-radius:18px;
  box-shadow:0 28px 80px rgba(2,8,23,.28);
  padding:28px;
}
.sst-modal h3{
  margin:0 0 14px;
  display:flex;
  align-items:center;
  gap:10px;
  font-size:24px;
}
.sst-modal p{margin:0 0 18px;color:#344054;line-height:1.55;}
.sst-modal-dates{font-weight:700;color:#0f172a!important;}
.sst-modal-danger-icon{
  width:28px;
  height:28px;
  border-radius:999px;
  background:#fff1f1;
  color:#d92d20;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:15px;
}
.sst-modal-actions{
  display:flex;
  justify-content:flex-end;
  gap:12px;
  margin-top:22px;
}
.sst-btn-danger-solid{
  background:#d92d20!important;
  color:#fff!important;
  border-color:#d92d20!important;
}
.sst-btn-soft{
  background:#fff!important;
  color:#344054!important;
  border:1px solid #d0d5dd!important;
}
@media (max-width: 720px){
  .sst-row-actions{gap:6px;}
  .sst-icon-btn{width:32px;height:32px;}
  .sst-modal{padding:22px;}
  .sst-modal-actions{flex-direction:column-reverse;}
  .sst-modal-actions .sst-btn{width:100%;}
}

/* v8.0.34-dev: softer table actions and inline trip lifecycle labels */
.sst-country-status-line{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.sst-country-status-line > span:first-child{
  min-width:0;
}
.sst-row-actions{
  gap:10px;
}
.sst-icon-btn{
  width:30px;
  height:30px;
  border:0;
  border-radius:8px;
  background:transparent;
  box-shadow:none;
}
.sst-icon-btn svg{
  width:18px;
  height:18px;
}
.sst-icon-btn:hover{
  background:rgba(0,35,150,.07);
  border-color:transparent;
  box-shadow:none;
  transform:none;
}
.sst-icon-btn.sst-delete{
  color:#d33a34;
  border-color:transparent;
}
.sst-icon-btn.sst-delete:hover{
  background:rgba(184,46,46,.08);
  border-color:transparent;
}
.sst-trip-status{
  margin-top:0;
  padding:2px 7px;
  font-size:10.5px;
  line-height:1.15;
}
@media (max-width: 760px){
  .sst-icon-btn{width:34px;height:34px;}
}

/* v8.0.35-dev: current-stay check and modal polish */
.sst-current-stay-panel{
  border:1px solid rgba(0,35,150,.12);
  background:linear-gradient(135deg,#fff,#f8fbff 72%,#f1f8ff);
  margin:14px 0 18px;
}
.sst-current-stay-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.sst-current-stay-head h3{margin:2px 0 5px;font-size:1.3rem;color:var(--ink)}
.sst-current-stay-head p:not(.sst-kicker){margin:0;color:var(--muted);line-height:1.5}
.sst-current-stay-body{display:none;margin-top:18px;padding-top:16px;border-top:1px solid rgba(0,35,150,.10)}
.sst-current-stay-panel.is-open .sst-current-stay-body{display:block}
.sst-current-stay-form{grid-template-columns:minmax(160px,1fr) minmax(160px,1fr) minmax(200px,1.2fr) minmax(190px,1fr) auto;align-items:end}
.sst-current-stay-result{margin-top:14px;padding:16px 18px;border-radius:16px;background:#ecfdf5;border:1px solid rgba(28,125,97,.22);color:#12423a;line-height:1.55}
.sst-current-stay-result strong{display:block;color:#0f172a;margin-bottom:4px}
.sst-current-stay-result p{margin:0 0 6px;color:#20433d}
.sst-current-stay-result small{display:block;color:#5d6b82}
.sst-current-stay-result.warning{background:#fffbeb;border-color:#f3d6a2;color:#7a4d05}
.sst-current-stay-result.risk{background:#fff5f5;border-color:#f4b4b4;color:#8f1f1f}
.sst-trip-status-current{background:#fff7e6;color:#985c00;border:1px solid #f3d6a2;}
.sst-modal-polished{border-radius:20px;border:1px solid rgba(15,23,42,.08);box-shadow:0 30px 90px rgba(2,8,23,.30)}
.sst-modal-polished h3{font-size:23px;margin-bottom:16px;letter-spacing:-.02em}
.sst-modal-mark{width:26px;height:26px;border-radius:10px;background:linear-gradient(135deg,#fff2f2,#fff7f4);border:1px solid rgba(216,45,32,.15);position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.sst-modal-mark:before{content:"";width:8px;height:8px;border-radius:50%;background:#d92d20;opacity:.75;display:block}
.sst-modal-note{font-weight:600;color:#24314a!important}
.sst-modal-dates{background:#f8fafc;border:1px solid #edf1f7;border-radius:14px;padding:12px 14px;margin-bottom:16px!important}
body.sst-dark .sst-current-stay-panel{background:linear-gradient(135deg,rgba(94,108,235,.11),rgba(116,182,164,.06));border-color:rgba(156,170,255,.16)}
body.sst-dark .sst-current-stay-head h3,body.sst-dark .sst-current-stay-result strong{color:#eef3ff}
body.sst-dark .sst-current-stay-head p:not(.sst-kicker){color:#b8c4db}
body.sst-dark .sst-current-stay-body{border-color:rgba(156,170,255,.14)}
@media (max-width: 900px){
  .sst-current-stay-head{align-items:flex-start;flex-direction:column}
  .sst-current-stay-form{grid-template-columns:1fr}
  .sst-current-stay-toggle{width:100%}
}


/* v8.0.36-dev: current-stay result cards and balance summary polish */
.sst-current-stay-cards{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:12px 0 12px;
}
.sst-current-stay-card{
  background:rgba(255,255,255,.78);
  border:1px solid rgba(28,125,97,.16);
  border-radius:14px;
  padding:13px 14px;
  box-shadow:0 10px 24px rgba(17,24,39,.04);
}
.sst-current-stay-card span{
  display:block;
  color:#51617c;
  font-size:.82rem;
  margin-bottom:4px;
}
.sst-current-stay-card strong{
  display:block;
  font-size:1.22rem;
  line-height:1.1;
  margin:0 0 4px;
  color:#0f172a;
}
.sst-current-stay-card small{
  display:block;
  color:#71809a;
  font-size:.78rem;
}
.sst-current-stay-result-title{font-size:1rem;margin-bottom:2px!important}
.sst-current-stay-result.warning .sst-current-stay-card{border-color:rgba(201,137,22,.24)}
.sst-current-stay-result.risk .sst-current-stay-card{border-color:rgba(184,46,46,.22)}
body.sst-dark .sst-current-stay-card{background:rgba(15,23,42,.55);border-color:rgba(156,170,255,.16)}
body.sst-dark .sst-current-stay-card span,body.sst-dark .sst-current-stay-card small{color:#aab6cf}
@media (max-width:900px){.sst-current-stay-cards{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:560px){.sst-current-stay-cards{grid-template-columns:1fr;}}


/* v8.0.37-dev: current stay actions and balance visibility polish */
.sst-current-stay-result-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.sst-current-stay-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.sst-current-stay-result-head .sst-icon-action{background:transparent!important;border:0!important;box-shadow:none!important;width:28px;height:28px;color:var(--primary-accent,#1f2a8a)}
.sst-current-stay-result-head .sst-icon-action:hover{background:rgba(0,35,150,.06)!important}
.sst-current-stay-result-head .sst-icon-action.danger{color:var(--danger,#b82e2e)}
body.sst-dark .sst-current-stay-result-head .sst-icon-action:hover{background:rgba(255,255,255,.08)!important}
@media (max-width:560px){.sst-current-stay-result-head{align-items:flex-start}.sst-current-stay-actions{margin-top:-2px}}

/* v8.0.40-dev current stay workspace/calendar integration */
.sst-report-line-current{left:0;width:0;background:linear-gradient(90deg,#0ea5a8,#5eead4);opacity:.98;box-shadow:0 0 0 1px rgba(255,255,255,.14) inset}
.sst-report-line-legend b.current{background:#0ea5a8}
.sst-cal-day.current-stay{background:#e6fbf7;border-color:#7dd3c7;color:#115e59}
.sst-cal-day.current-stay .hint{background:#ccfbf1;color:#115e59}
.sst-calendar-summary-strip .dot.current{background:#0ea5a8}
.sst-time-item.current-stay{border-left-color:#0ea5a8;background:linear-gradient(90deg,rgba(14,165,168,.08),rgba(255,255,255,.98))}
.sst-insight-trip.current{border-left:3px solid #0ea5a8;background:#f0fdfa}
body.sst-dark .sst-report-line-current{background:linear-gradient(90deg,#2dd4bf,#5eead4)}
body.sst-dark .sst-report-line-legend b.current{background:#2dd4bf}
body.sst-dark .sst-cal-day.current-stay{background:rgba(45,212,191,.14);border-color:rgba(45,212,191,.45);color:#ccfbf1}
body.sst-dark .sst-cal-day.current-stay .hint{background:rgba(45,212,191,.22);color:#ccfbf1}

/* v8.0.40-dev current stay persistence and planning guard */


/* v8.0.44-dev: current stay calendar/result mode polish */
.sst-legend i.current{background:#ccfbf1;border:1px solid rgba(14,165,168,.38)}
.sst-legend i.current-remaining{background:#e0f7f4;border:1px dashed rgba(14,165,168,.42)}
.sst-calendar-summary-strip .dot.current-remaining{background:#7dd3c7;border:1px dashed rgba(14,165,168,.55)}
.sst-cal-day.current-stay-remaining{background:#eefdfb;border-color:#9de0d7;color:#115e59}
.sst-cal-day.current-stay-remaining .hint{background:#dffbf7;color:#115e59}
body.sst-dark .sst-legend i.current{background:rgba(45,212,191,.22);border-color:rgba(45,212,191,.45)}
body.sst-dark .sst-legend i.current-remaining{background:rgba(45,212,191,.12);border-color:rgba(45,212,191,.35)}
body.sst-dark .sst-cal-day.current-stay-remaining{background:rgba(45,212,191,.08);border-color:rgba(45,212,191,.30);color:#ccfbf1}
body.sst-dark .sst-cal-day.current-stay-remaining .hint{background:rgba(45,212,191,.16);color:#ccfbf1}

/* v8.0.44-dev: calendar legend filters */
.sst-calendar-summary-strip .sst-calendar-filter-actions{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:center;
  margin-left:auto;
}
.sst-calendar-filter-chip{
  border:1px solid rgba(24,43,87,.14);
  background:#fff;
  color:var(--sst-muted,#53607a);
  border-radius:999px;
  padding:4px 9px;
  font:inherit;
  font-size:12px;
  cursor:pointer;
}
.sst-calendar-filter-chip.active{
  border-color:rgba(0,35,150,.35);
  background:rgba(0,35,150,.08);
  color:var(--sst-navy,#071637);
  font-weight:700;
}
body.sst-dark .sst-calendar-filter-chip{
  background:rgba(255,255,255,.04);
  border-color:rgba(255,255,255,.14);
  color:rgba(255,255,255,.72);
}
body.sst-dark .sst-calendar-filter-chip.active{
  background:rgba(96,165,250,.18);
  border-color:rgba(96,165,250,.36);
  color:#fff;
}

/* v8.0.47-dev: current stay expected exit */
.sst-calendar-filter-legend{
  align-items:center;
}
.sst-calendar-filter-legend button{
  display:inline-flex;
  align-items:center;
  gap:8px;
  border:1px solid transparent;
  background:transparent;
  color:var(--muted);
  border-radius:999px;
  padding:5px 8px;
  font:inherit;
  cursor:pointer;
}
.sst-calendar-filter-legend button:hover,
.sst-calendar-filter-legend button:focus-visible{
  color:var(--text);
  background:rgba(0,35,150,.05);
  border-color:rgba(0,35,150,.12);
  outline:none;
}
.sst-calendar-filter-legend button.active{
  color:var(--text);
  background:rgba(0,35,150,.08);
  border-color:rgba(0,35,150,.22);
  font-weight:700;
}
.sst-calendar-filter-legend i.all{
  background:linear-gradient(135deg, rgba(99,102,241,.18) 0 33%, rgba(14,165,168,.20) 34% 66%, rgba(34,179,124,.18) 67% 100%);
  border:1px solid rgba(24,43,87,.18);
}
body.sst-dark .sst-calendar-filter-legend button{
  color:rgba(255,255,255,.72);
}
body.sst-dark .sst-calendar-filter-legend button:hover,
body.sst-dark .sst-calendar-filter-legend button:focus-visible,
body.sst-dark .sst-calendar-filter-legend button.active{
  color:#fff;
  background:rgba(96,165,250,.14);
  border-color:rgba(96,165,250,.26);
}

/* v8.0.47-dev: expected exit helper inside current stay form */
.sst-current-stay-form label small{font-size:.74rem;font-weight:500;color:var(--muted);line-height:1.25;margin-top:-2px}
body.sst-dark .sst-current-stay-form label small{color:#9fb0c9}

/* v8.0.48-dev: scenario selector baseline */
.sst-scenario-panel{
  padding:18px 20px;
  border-radius:24px;
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(239,248,255,.74));
  border:1px solid rgba(0,35,150,.10);
  box-shadow:0 18px 44px rgba(24,42,80,.07);
  margin:16px 0 18px;
}
.sst-scenario-head h3{margin:2px 0 12px;font-size:1.2rem;color:var(--ink)}
.sst-scenario-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.sst-scenario-grid button{
  text-align:left;
  border:1px solid rgba(0,35,150,.12);
  background:rgba(255,255,255,.84);
  border-radius:18px;
  padding:15px 16px;
  color:var(--ink);
  cursor:pointer;
  box-shadow:0 10px 26px rgba(24,42,80,.045);
  transition:border-color .16s ease, box-shadow .16s ease, transform .16s ease, background .16s ease;
}
.sst-scenario-grid button:hover{transform:translateY(-1px);border-color:rgba(0,50,150,.28);box-shadow:0 14px 30px rgba(24,42,80,.08)}
.sst-scenario-grid button.active{background:linear-gradient(135deg,rgba(0,50,150,.10),rgba(16,185,129,.08));border-color:rgba(0,50,150,.45);box-shadow:0 16px 34px rgba(0,50,150,.13)}
.sst-scenario-grid strong{display:block;font-size:.98rem;margin-bottom:5px;color:var(--ink)}
.sst-scenario-grid span{display:block;font-size:.86rem;line-height:1.42;color:var(--muted)}
.sst-scenario-privacy{margin:13px 2px 0;color:var(--muted);font-size:.86rem;line-height:1.45}
.sst-app.sst-scenario-standard:not(.sst-current-active) .sst-current-stay-panel{display:none}
.sst-app.sst-scenario-quick .sst-current-stay-panel,
.sst-app.sst-scenario-quick .sst-planned-panel,
.sst-app.sst-scenario-quick #sst-result-workspace{display:none}
.sst-app.sst-scenario-current.sst-current-openended .sst-planned-panel{display:none}
.sst-app.sst-scenario-current .sst-current-stay-panel{display:block}
.sst-app.sst-scenario-current .sst-current-stay-panel:not(.is-open) .sst-current-stay-body{display:block}
.sst-app.sst-scenario-current .sst-current-stay-toggle{display:none}
.sst-app.sst-current-active .sst-scenario-grid [data-sst-scenario-mode="current"]{border-color:rgba(16,185,129,.42)}
body.sst-dark .sst-scenario-panel{background:linear-gradient(135deg,rgba(15,23,42,.88),rgba(30,41,59,.72));border-color:rgba(156,170,255,.16)}
body.sst-dark .sst-scenario-grid button{background:rgba(15,23,42,.62);border-color:rgba(156,170,255,.16);color:#eef3ff}
body.sst-dark .sst-scenario-grid button.active{background:linear-gradient(135deg,rgba(96,116,255,.20),rgba(16,185,129,.12));border-color:rgba(156,170,255,.32)}
body.sst-dark .sst-scenario-head h3,body.sst-dark .sst-scenario-grid strong{color:#eef3ff}
body.sst-dark .sst-scenario-grid span,body.sst-dark .sst-scenario-privacy{color:#aab6cf}
.sst-map-filter-row i.current,
.sst-route-list-item.current > span{background:#22b3a6!important}
.sst-route-list-item.current{border-color:rgba(34,179,166,.22)}
.sst-map-callout.current .sst-map-dot{background:#22b3a6!important}
@media(max-width:900px){.sst-scenario-grid{grid-template-columns:1fr}.sst-scenario-panel{padding:16px}}

/* v8.0.52-dev: no-scroll scenario switching + clear all + simplified current stay */
.sst-scenario-panel{
  margin-top:18px;
}
.sst-scenario-head p:not(.sst-kicker){
  margin:0 0 14px;
  color:var(--muted);
  font-size:.92rem;
  line-height:1.45;
}
.sst-app.sst-scenario-standard .sst-current-stay-panel,
.sst-app.sst-scenario-standard #sst-planning-tools{
  display:none;
}
.sst-app.sst-scenario-current .sst-planned-panel,
.sst-app.sst-scenario-current #sst-planning-tools{
  display:none;
}
.sst-app.sst-scenario-quick .sst-current-stay-panel,
.sst-app.sst-scenario-quick .sst-planned-panel,
.sst-app.sst-scenario-quick #sst-result-workspace{
  display:none;
}
.sst-app:not(.sst-scenario-quick) #sst-planning-tools{
  display:none;
}
.sst-app.sst-scenario-quick #sst-planning-tools{
  display:block;
}
.sst-app.sst-scenario-current .sst-current-stay-panel{
  display:block;
}
.sst-app.sst-scenario-current .sst-current-stay-panel:not(.is-open) .sst-current-stay-body{
  display:block;
}
.sst-app.sst-scenario-current .sst-current-stay-toggle{
  display:none;
}


/* v8.0.52-dev refinements */
.sst-global-actions{display:flex;justify-content:flex-end;margin:-.25rem 0 .75rem;}
.sst-btn-outline-danger{background:#fff;border:1px solid rgba(184,46,46,.28);color:#b82e2e;box-shadow:none;}
.sst-btn-outline-danger:hover{background:#fff5f5;border-color:rgba(184,46,46,.45);}
.sst-results-compact .sst-current-insight-inline{margin:0;padding:1rem;border-radius:1rem;background:linear-gradient(135deg,rgba(234,246,255,.88),rgba(240,253,248,.88));border:1px solid rgba(129,147,255,.20);box-shadow:none;}
.sst-results-compact .sst-current-insight-inline p{margin:.35rem 0 0;font-size:.86rem;line-height:1.55;}
.sst-results-compact .sst-current-insight-inline .sst-current-insight-head strong{font-size:.88rem;}
.sst-scenario-current .sst-planned-panel,.sst-scenario-quick .sst-planned-panel,.sst-scenario-current #sst-planning-tools,.sst-scenario-standard #sst-planning-tools{display:none;}
.sst-scenario-standard .sst-current-stay-panel,.sst-scenario-quick .sst-current-stay-panel{display:none;}
@media (min-width:900px){.sst-results-compact .sst-card:nth-child(1),.sst-results-compact .sst-card:nth-child(2){min-height:112px;}}
@media (max-width:700px){.sst-global-actions{justify-content:stretch}.sst-global-actions .sst-btn{width:100%;}.sst-results-compact .sst-current-insight-inline{grid-column:1/-1;}}


/* v8.0.54-dev: slimmer header action, wider history table, no sidebar balance note */
.sst-app{position:relative;}
.sst-global-actions{
  position:absolute;
  top:-58px;
  right:0;
  z-index:3;
  display:flex;
  justify-content:flex-end;
  margin:0;
}
.sst-global-actions .sst-btn{
  padding:7px 11px;
  min-height:0;
  border-radius:999px;
  font-size:.78rem;
  line-height:1.2;
  font-weight:760;
  box-shadow:none;
}
.sst-current-insight-inline{display:none!important;}
@media(min-width:980px){
  .sst-main-flow{
    grid-template-columns:minmax(0,1fr) minmax(210px,230px);
    gap:16px;
  }
  .sst-results-compact .sst-card{
    padding:16px 16px;
    min-height:104px;
  }
  .sst-results-compact .sst-card strong{font-size:2rem;}
  .sst-results-compact .sst-reference-card strong{font-size:1.75rem;}
}
@media(max-width:979px){
  .sst-global-actions{
    position:static;
    margin:0 0 12px;
    justify-content:flex-end;
  }
}
@media(max-width:700px){
  .sst-global-actions{justify-content:stretch;}
  .sst-global-actions .sst-btn{width:100%;padding:11px 14px;font-size:.9rem;}
}


.sst-reentry-form{
  grid-template-columns:1fr 190px;
}
.sst-reentry-outcome .sst-reentry-date{
  display:block;
  font-size:1.45rem;
  line-height:1.15;
  font-weight:900;
  color:var(--success);
}
.sst-reentry-outcome .sst-reentry-use{
  margin-top:6px;
  justify-self:start;
}
@media (max-width: 720px){
  .sst-reentry-form{
    grid-template-columns:1fr;
  }
}

/* v8.0.61-dev: hide planned-trip legend item in Current stay scenario. */
.sst-scenario-current [data-sst-legend-future]{display:none!important;}


/* v8.0.72-dev: keep the main calculator focused until the user chooses Future trip planning. */
.sst-app.sst-planning-deferred .sst-planned-panel{display:none!important;}
.sst-app.sst-planning-deferred .sst-scenario-grid button.active{background:#fff;border-color:rgba(0,50,150,.14);box-shadow:0 10px 26px rgba(24,42,80,.045);}
body.sst-dark .sst-app.sst-planning-deferred .sst-scenario-grid button.active{background:rgba(15,23,42,.62);border-color:rgba(156,170,255,.16);}
.sst-app.sst-planning-deferred #sst-result-workspace,
.sst-app.sst-planning-deferred .sst-report-details{display:none!important;}


/* v8.0.74-dev: make the initial main selector feel like three primary tool links. */
.sst-app.sst-planning-deferred .sst-scenario-grid button{
  background:linear-gradient(135deg,#2535a8,#5730d6);
  border-color:rgba(37,53,168,.72);
  color:#fff;
  box-shadow:0 16px 34px rgba(37,53,168,.20);
}
.sst-app.sst-planning-deferred .sst-scenario-grid button:hover{
  transform:translateY(-1px);
  border-color:rgba(37,53,168,.95);
  box-shadow:0 20px 40px rgba(37,53,168,.26);
}
.sst-app.sst-planning-deferred .sst-scenario-grid button.active{
  background:linear-gradient(135deg,#2535a8,#5730d6);
  border-color:rgba(37,53,168,.72);
  box-shadow:0 16px 34px rgba(37,53,168,.20);
}
.sst-app.sst-planning-deferred .sst-scenario-grid strong{color:#fff;}
.sst-app.sst-planning-deferred .sst-scenario-grid span{color:rgba(255,255,255,.84);}
body.sst-dark .sst-app.sst-planning-deferred .sst-scenario-grid button,
body.sst-dark .sst-app.sst-planning-deferred .sst-scenario-grid button.active{
  background:linear-gradient(135deg,#4057d8,#6b4cff);
  border-color:rgba(156,170,255,.34);
  color:#fff;
}


/* v8.0.75-dev mobile focused calculator flow
   The old sticky 1/2/3 mobile progress bar is intentionally disabled.
   Mobile now follows the same focused landing-page flow as desktop. */
@media(max-width:760px){
  .sst-mobile-progress,
  .sst-mobile-quick-status{
    display:none!important;
  }
  .sst-app{
    padding:0;
  }
  .sst-global-actions{
    position:static;
    display:flex;
    justify-content:flex-end;
    margin:0 0 12px;
  }
  .sst-global-actions .sst-btn{
    width:auto;
    min-height:34px;
    padding:7px 11px;
    font-size:.78rem;
  }
  .sst-premium-intro{
    margin:0 0 12px;
    padding:14px;
    border-radius:18px;
  }
  .sst-layout.sst-main-flow{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
  }
  .sst-side-cards{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
  }
  .sst-side-cards .sst-mini-card{
    min-height:auto;
    padding:14px;
  }
  .sst-panel,
  .sst-scenario-panel,
  .sst-report-details,
  .sst-rule-summary,
  .sst-method-card,
  .sst-disclaimer,
  #sst-planning-tools{
    border-radius:18px;
    padding:14px;
  }
  .sst-panel-head{
    display:flex;
    align-items:flex-start;
    gap:10px;
  }
  .sst-panel-head > div{
    min-width:0;
  }
  .sst-panel-head .sst-btn,
  .sst-panel-head button{
    width:auto;
    flex:0 0 auto;
    min-height:34px;
    padding:7px 10px;
    font-size:.78rem;
  }
  .sst-panel h3,
  .sst-scenario-head h3{
    font-size:1.08rem;
    line-height:1.2;
  }
  .sst-panel p,
  .sst-scenario-panel p,
  .sst-premium-intro p{
    font-size:.9rem;
    line-height:1.5;
  }
  .sst-step-badge{
    width:24px;
    height:24px;
    border-radius:8px;
    font-size:.72rem;
    margin-right:6px;
  }
  .sst-form{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .sst-form label{
    font-size:.82rem;
  }
  .sst-form input,
  .sst-form select,
  .sst-form button,
  .sst-btn{
    width:100%;
    min-height:44px;
  }
  .sst-table-wrap{
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    border-radius:14px;
  }
  .sst-table{
    min-width:640px;
  }
  .sst-scenario-grid{
    display:grid;
    grid-template-columns:1fr!important;
    gap:10px;
  }
  .sst-app.sst-planning-deferred .sst-scenario-grid button,
  .sst-scenario-grid button{
    min-height:70px;
    text-align:left;
    padding:14px;
  }
  .sst-scenario-privacy{
    margin-top:10px;
    font-size:.82rem;
  }
  .sst-report-tabs,
  .sst-result-tabs{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
  }
  .sst-result-tab,
  .sst-report-tab{
    border-radius:14px;
    padding:12px;
  }
  .sst-report-metrics,
  .sst-result-metrics,
  .sst-current-stay-grid{
    grid-template-columns:1fr!important;
    gap:10px;
  }
  .sst-progress-legend,
  .sst-calendar-filter-row,
  .sst-map-filter-row{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
  }
  .sst-timeline-row,
  .sst-trip-card,
  .sst-day-insight-row{
    grid-template-columns:1fr!important;
  }
  .sst-planning-tools-tabs,
  .sst-tool-tabs{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  .sst-tool-grid,
  .sst-trip-tool-grid,
  .sst-comparison-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px;
  }
  #sst-planning-tools .sst-tool-card,
  #sst-planning-tools .sst-tool-panel{
    padding:12px;
    border-radius:16px;
  }
  .sst-report-details[open] .sst-report-body,
  .sst-method-card,
  .sst-rule-summary{
    font-size:.9rem;
  }
}


/* v8.0.76-dev mobile polish
   Keep the new focused flow, but make phone/tablet spacing, cards and secondary areas calmer. */
@media(max-width:760px){
  .sst-shell,
  .site-shell{
    width:min(100% - 18px, 100%);
  }
  .sst-page-card{
    border-radius:20px;
    padding:18px 14px;
  }
  .sst-page-card > h1,
  .sst-page-title,
  .sst-tool-page h1{
    font-size:clamp(2rem, 9vw, 2.55rem);
    line-height:1.05;
    letter-spacing:-.05em;
  }
  .sst-page-card > p,
  .sst-tool-page > p{
    font-size:.94rem;
    line-height:1.55;
    margin-bottom:14px;
  }
  .sst-premium-intro{
    padding:13px;
  }
  .sst-premium-intro h2,
  .sst-premium-intro h3{
    font-size:1.02rem;
  }
  .sst-layout.sst-main-flow{
    gap:10px;
  }
  .sst-panel,
  .sst-scenario-panel,
  .sst-report-details,
  .sst-rule-summary,
  .sst-method-card,
  .sst-disclaimer,
  #sst-planning-tools{
    padding:13px;
    border-radius:17px;
  }
  .sst-panel-head{
    gap:8px;
  }
  .sst-panel-head .sst-btn,
  .sst-panel-head button{
    min-height:32px;
    padding:6px 9px;
  }
  .sst-panel h3,
  .sst-scenario-head h3,
  #sst-planning-tools h3{
    font-size:1.04rem;
  }
  .sst-panel p,
  .sst-scenario-panel p,
  .sst-rule-summary,
  .sst-method-card,
  .sst-disclaimer{
    font-size:.88rem;
  }
  .sst-form input,
  .sst-form select{
    min-height:46px;
    border-radius:13px;
  }
  .sst-form button,
  .sst-btn{
    min-height:46px;
    border-radius:13px;
  }
  .sst-side-cards{
    margin-top:0;
    gap:9px;
  }
  .sst-side-cards .sst-mini-card{
    padding:13px;
    border-radius:16px;
  }
  .sst-side-cards .sst-mini-card strong,
  .sst-mini-card .num{
    font-size:1.55rem;
    line-height:1;
  }
  .sst-app.sst-planning-deferred .sst-scenario-grid button,
  .sst-scenario-grid button{
    min-height:64px;
    padding:13px;
    border-radius:15px;
  }
  .sst-scenario-grid strong{
    font-size:.93rem;
  }
  .sst-scenario-grid span{
    font-size:.82rem;
    line-height:1.35;
  }
  .sst-scenario-privacy{
    font-size:.8rem;
    line-height:1.45;
  }
  .sst-result-tabs,
  .sst-report-tabs{
    gap:7px;
  }
  .sst-result-tab,
  .sst-report-tab{
    border-radius:13px;
    padding:11px;
  }
  .sst-result-metric,
  .sst-report-metric,
  .sst-current-stay-card,
  .sst-day-card{
    border-radius:15px;
    padding:13px;
  }
  .sst-result-metric strong,
  .sst-report-metric strong,
  .sst-current-stay-card strong{
    font-size:1.5rem;
    line-height:1.05;
  }
  .sst-timeline,
  .sst-timeline-row,
  .sst-before-box,
  .sst-plain-result,
  .sst-day-insight,
  .sst-trip-list-item{
    border-radius:15px;
  }
  .sst-calendar-month{
    min-width:0;
  }
  .sst-calendar-grid{
    gap:4px;
  }
  .sst-calendar-day{
    min-height:42px;
    font-size:.78rem;
  }
  .sst-progress-legend,
  .sst-calendar-filter-row,
  .sst-map-filter-row{
    gap:7px;
  }
  .sst-progress-legend span,
  .sst-calendar-filter-row label,
  .sst-map-filter-row label{
    font-size:.8rem;
  }
  .sst-report-details summary{
    min-height:44px;
  }
  .sst-report-details:not([open]){
    padding-block:12px;
  }
}

@media(max-width:520px){
  .sst-app.sst-planning-deferred .sst-scenario-grid button,
  .sst-scenario-grid button{
    width:100%;
  }
  .sst-table{
    min-width:0;
  }
  .sst-table thead{
    display:none;
  }
  .sst-table,
  .sst-table tbody,
  .sst-table tr,
  .sst-table td{
    display:block;
    width:100%;
  }
  .sst-table tr{
    padding:12px;
    border-bottom:1px solid rgba(18,31,63,.08);
  }
  .sst-table td{
    padding:4px 0;
    border:0;
  }
  .sst-table td:first-child{
    font-weight:800;
    color:#2535a8;
  }
}


/* v8.0.79-dev: keep header theme button consistent on calculator/tool pages.
   Earlier calculator row-action icon styles used the same .sst-icon-btn class and overrode the header moon button. */
.sst-top-actions .sst-icon-btn{
  height:44px!important;
  min-width:44px!important;
  width:44px!important;
  border-radius:999px!important;
  background:var(--surface)!important;
  border:1px solid var(--line)!important;
  color:var(--text)!important;
  box-shadow:var(--shadow-soft)!important;
  padding:0!important;
  transform:none!important;
}
.sst-top-actions .sst-icon-btn svg{
  width:20px!important;
  height:20px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.sst-top-actions .sst-icon-btn:hover{
  background:var(--surface-2)!important;
  border-color:var(--line)!important;
  box-shadow:var(--shadow-soft)!important;
  transform:none!important;
}
@media(max-width:980px){
  .sst-top-actions .sst-icon-btn{height:42px!important;min-width:42px!important;width:42px!important;}
}

/* v8.0.79-dev: make mobile selected tabs match the stronger desktop active-tab colours. */
@media(max-width:760px){
  .sst-result-folder-tabs.premium-folder-style button.active,
  .sst-premium-folder-tabs.premium-folder-style button.active{
    background:linear-gradient(135deg,#2535a8,#5730d6)!important;
    border-color:rgba(37,53,168,.72)!important;
    color:#fff!important;
    box-shadow:0 10px 24px rgba(37,53,168,.22)!important;
  }
  .sst-result-folder-tabs.premium-folder-style button.active span,
  .sst-result-folder-tabs.premium-folder-style button.active small,
  .sst-premium-folder-tabs.premium-folder-style button.active span,
  .sst-premium-folder-tabs.premium-folder-style button.active small{
    color:#fff!important;
  }
}


/* v8.0.79-dev: mobile containment and clear-all action fix.
   Prevent the old mobile step-toggle control from visually attaching to the Clear all data action,
   and stop calculator pages from creating a horizontal overflow gap on narrow screens. */
@media(max-width:760px){
  .sst-app{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
  }
  .sst-app *,
  .sst-app *::before,
  .sst-app *::after{
    box-sizing:border-box;
  }
  .sst-global-actions{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    width:100%;
    max-width:100%;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    margin:0 0 12px!important;
    padding:0!important;
    overflow:visible!important;
    z-index:4;
  }
  .sst-global-actions .sst-btn{
    flex:0 0 auto;
    width:auto!important;
    max-width:100%;
    white-space:nowrap;
    overflow:visible;
    text-overflow:clip;
  }
  .sst-global-actions .sst-step-toggle,
  .sst-global-actions + .sst-step-toggle,
  [data-sst-clear-all] + .sst-step-toggle{
    display:none!important;
  }
  .sst-premium-intro,
  .sst-panel,
  .sst-side-cards,
  .sst-rule-summary-after,
  .sst-method-panel,
  .sst-disclaimer{
    max-width:100%;
    overflow:hidden;
  }
  .sst-step-panel .sst-panel-head{
    min-width:0;
  }
}


/* v8.0.79-dev: additional mobile overflow guard for calculator internals. */
@media(max-width:760px){
  .sst-app,
  .sst-app .sst-layout,
  .sst-app .sst-panel,
  .sst-app .sst-trips-panel,
  .sst-app .sst-side-cards,
  .sst-app .sst-status-card,
  .sst-app .sst-scenario-chooser,
  .sst-app .sst-planned-panel,
  .sst-app .sst-result-workspace,
  .sst-app .sst-result-panel,
  .sst-app .sst-report-panel,
  .sst-app .sst-rule-summary,
  .sst-app .sst-disclaimer{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
  }
  .sst-app input,
  .sst-app select,
  .sst-app textarea,
  .sst-app button{
    max-width:100%;
    box-sizing:border-box!important;
  }
  .sst-app .sst-form,
  .sst-app .sst-form-row,
  .sst-app .sst-choice-grid,
  .sst-app .sst-result-folder-tabs,
  .sst-app .sst-premium-folder-tabs{
    min-width:0!important;
    max-width:100%!important;
  }
}
