/* Shared final pass for data-rich shortcodes embedded in ordinary editorial pages. */
:where(.swnet-oresund-calc,.swnet-oresund-traffic,.swnet-oresund-go,.swnet-oresund-history,.swnet-trip-monitor,.swnet-ferry-planner,.swnet-ferry-departures){box-sizing:border-box;border:0!important;border-radius:16px;overflow:hidden;box-shadow:0 20px 52px -44px rgba(0,40,74,.5)}

/* Öresund: calculator, traffic, price history and compact break-even tool. */
.swnet-oresund-price .table-wrap{overflow:auto;border:0!important;border-radius:12px;background:#fff}
.swnet-oresund-price table{border-top:0!important}
.swnet-oresund-calc{background:#f1f6f9!important}
.swnet-oresund-calc__result{border:0!important;border-radius:12px!important;background:#e3eef5!important}
.swnet-oresund-calc__controls :is(select,input[type="number"]),.swnet-oresund-go :is(select,input[type="number"]){border-color:#afc3d2!important;border-radius:10px;background:#fff}
.swnet-oresund-options{gap:14px}
.swnet-oresund-option{border:0!important;border-radius:12px;background:#fff;box-shadow:0 12px 34px -32px rgba(0,40,74,.48)}
.swnet-oresund-option.is-best{border:0!important;background:#e2eff6;box-shadow:inset 0 0 0 2px #005293}
.swnet-oresund-disclaimer{border:0;border-radius:10px;background:#fff7d5}
.swnet-oresund-traffic{background:#fff}
.swnet-oresund-traffic__status{border-radius:16px 16px 0 0}
.swnet-oresund-traffic__filters{border-top:0}
.swnet-oresund-traffic__filters button{border-color:#b7c9d6;border-radius:8px}
.swnet-oresund-traffic__map{overflow:hidden}
.swnet-oresund-go{background:#f1f6f9!important}
.swnet-oresund-go__answer{border:0!important;border-radius:10px;background:#fff}
.swnet-oresund-history{background:#f1f6f9!important}
.swnet-oresund-history__chart{border-radius:12px}
.swnet-oresund-history__detail{border:0!important;border-radius:0 0 12px 12px;background:#fff!important}

/* Ferry, route-planner and live-trip widgets. */
.swnet-ferries__map{overflow:hidden;border-top:0!important;border-radius:16px;background:#e5f0f5}
.swnet-ferry-card,.swnet-ferry-planner__results article{border:0!important;border-radius:14px;box-shadow:0 16px 42px -36px rgba(0,40,74,.48)}
.swnet-ferry-card{position:relative}.swnet-ferry-card::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;border-radius:14px 0 0 14px;background:var(--ferry-color)}
.swnet-ferry-card button,.swnet-ferry-table button,.swnet-ferry-planner button,.swnet-ferry-departures button{min-height:42px;border-radius:9px!important}
.swnet-ferry-planner{background:#edf4f8!important}
.swnet-ferry-planner__fields select{border-color:#afc3d2;border-radius:10px}
.swnet-ferry-planner__fields fieldset label{border:0!important;border-radius:12px;box-shadow:0 10px 30px -28px rgba(0,40,74,.5)}
.swnet-ferry-table__scroll{overflow:auto;border-top:0!important;border-radius:12px}
.swnet-ferry-modal{box-sizing:border-box;border:0!important;border-radius:16px;overflow:hidden}
.swnet-ferry-modal>[data-ferry-close]{border:0;border-radius:50%;background:#00284a;color:#fff;box-shadow:0 8px 24px rgba(0,40,74,.2)}
.swnet-ferry-modal__route li,.swnet-ferry-modal__facts>div{border-radius:8px}
.swnet-trip-monitor{background:#edf4f8!important}
.swnet-trip-monitor :is(input[type="search"],select){border-color:#afc3d2;border-radius:10px}
.swnet-trip-monitor button{border-radius:9px}
.swnet-trip-monitor__layout{overflow:hidden;border:0!important;border-radius:12px}

/* Airport and real-estate shortcodes embedded in hybrid pages. */
.swnet-airports .rp-map-side{border:0;border-radius:16px;background:#edf4f8}
.swnet-airports :is(input[type="search"],select),.re-page :is(input[type="search"],input[type="number"],select){border-color:#afc3d2!important;border-radius:10px!important}
.swnet-airports .rp-bathing__more,.re-page button{border-radius:9px}
.re-panel,.re-method,.re-calculator,.re-empty{border:0!important;border-radius:14px;box-shadow:0 16px 42px -38px rgba(0,40,74,.46)}
.re-toolbar{border:0!important;border-radius:14px;background:#edf4f8}
.re-map{overflow:hidden;border-radius:12px}

/* Product recommendations used inside otherwise editorial articles. */
.swnet-amazon-products>header{border-top:0}
.swnet-amazon-products__grid{gap:14px;border:0;background:transparent}
.swnet-amazon-card{overflow:hidden;border-radius:14px;background:#fff;box-shadow:0 16px 42px -36px rgba(0,40,74,.48)}
.swnet-amazon-card__image{box-sizing:border-box;aspect-ratio:4/3;padding:.8rem;background:#f3f6f8}
.swnet-amazon-card__image img{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.swnet-amazon-card__cta{display:flex;min-height:42px;align-items:center;justify-content:center;margin-top:1rem;padding:.65rem .8rem;border-radius:9px;background:#00284a;color:#fff;text-decoration:none!important}
.swnet-amazon-card>a:hover .swnet-amazon-card__cta,.swnet-amazon-card>a:focus-visible .swnet-amazon-card__cta{background:#fecc00;color:#00284a}

/* Shared keyboard state for data tools. */
:where(.swnet-oresund-calc,.swnet-oresund-go,.swnet-trip-monitor,.swnet-ferry-planner,.swnet-airports,.re-page) :is(input,select,button,a):focus-visible{outline:3px solid rgba(0,82,147,.22);outline-offset:2px}

@media(max-width:700px){
  :where(.swnet-oresund-calc,.swnet-oresund-traffic,.swnet-oresund-go,.swnet-oresund-history,.swnet-trip-monitor,.swnet-ferry-planner,.swnet-ferry-departures){border-radius:14px}
  .swnet-ferry-modal{width:calc(100vw - 1rem);max-width:calc(100vw - 1rem);min-width:0;border-radius:14px}
  .swnet-oresund-traffic__status{border-radius:14px 14px 0 0}
  .swnet-amazon-products__grid{gap:10px}
  .swnet-amazon-card__image{aspect-ratio:1/1;padding:.55rem}
}

/* 3.53.23: final shared language for every embedded data, feed and planning module. */
:where(.rp-insight,.rp-insight-page,.swnet-school,.swnet-ds,.swnet-archive,.nn-catalog,.swnet-camp-map,.swnet-aurora){
  --sp-navy:#00284a;--sp-blue:#005293;--sp-gold:#fecc00;--sp-soft:#f2f7fa;--sp-blue-soft:#e7f1f7;--sp-line:#c8d7e1;--sp-muted:#4a6076;
}

/* Data tools: Strom, Währung, Sprit, Klima, Dichte and municipalities. */
:where(.rp-insight,.rp-insight-page) :is(input[type="text"],input[type="search"],input[type="number"],select){
  min-height:44px;border-color:#afc3d2!important;border-radius:10px!important;background:#fff;
}
:where(.rp-insight,.rp-insight-page) :is(button,.rp-insight__related a){border-radius:9px}
.rp-insight__grid,.rp-insight__stats,.rp-fuel__cards{gap:14px}
.rp-insight__card,.rp-insight__stats>div{border:0!important;border-radius:14px;background:var(--sp-soft);box-shadow:none}
.rp-insight__card::before{content:none}
.rp-insight__card strong,.rp-insight__stats strong{font-variant-numeric:tabular-nums}
:where(.rp-insight__table-wrap,.rp-insight__price-table-wrap,.rp-insight__chart,.rp-currency__chart-wrap){overflow:auto;border:0!important;border-radius:14px;background:#fff;box-shadow:none}
.rp-insight__chart{background:var(--sp-soft)}
.rp-insight__price-intro,.rp-insight__empty,.rp-fuel__date,.rp-fuel__result{border:0!important;border-radius:12px;background:#fff7d5!important}
.rp-fuel__calculator,.rp-energy__history{padding:clamp(1rem,2.5vw,1.5rem);border:0!important;border-radius:16px;background:var(--sp-soft)}
.rp-energy__history svg{border-radius:10px}
.rp-currency{border:0!important;border-radius:16px;background:var(--sp-soft)}
.rp-currency__rates>div{border-radius:12px}
.rp-currency__calculator{border:0!important;border-radius:12px;box-shadow:none}
.rp-currency__ranges{gap:6px}.rp-currency__ranges button{min-height:40px;border:0;border-radius:8px;background:var(--sp-blue-soft)}
.rp-currency__ranges button.is-active{background:var(--sp-gold)}
.rp-currency-table{overflow:hidden;border:0!important;border-radius:14px;background:transparent;box-shadow:none}
.rp-currency-table table{border:0!important;border-collapse:separate!important;border-spacing:0 6px!important;background:transparent!important}
.rp-currency-table :is(th,td){border:0!important}
.rp-currency-table thead th{padding-block:.35rem;background:transparent!important;color:var(--sp-muted)}
.rp-currency-table tbody td{background:#f2f7fa}
.rp-currency-table tbody tr td:first-child{border-radius:9px 0 0 9px}
.rp-currency-table tbody tr td:last-child{border-radius:0 9px 9px 0}
.rp-currency-table tfoot td{border-radius:9px;background:#fff7d5!important}
.rp-density-rankings{gap:14px}
.rp-density-rankings section{border:0!important;border-radius:14px;background:var(--sp-soft)}
.rp-density-rankings button{border-bottom:0;border-radius:8px}
.rp-density-rankings button:hover,.rp-density-rankings button:focus-visible{background:#fff;text-decoration:none}
.rp-density-detail{border:0!important;border-radius:14px}
.rp-insight-bridge,.rp-oresund{border:0!important;border-radius:16px;background:var(--sp-soft)}
.rp-insight__related a{border:0;background:var(--sp-soft)}
.rp-insight__related a:hover{background:var(--sp-blue-soft)}

/* School holidays also appears as a shortcode inside an ordinary page. */
.swnet-school__filters{gap:12px;border:0!important;border-radius:14px;background:var(--sp-blue-soft)}
.swnet-school__filters :is(select,input,button){min-height:44px;border-color:#afc3d2!important;border-radius:9px!important}
.swnet-school__summary,.swnet-school__primer,.swnet-school__next,.swnet-school__legend,.swnet-school__empty{border:0!important;border-radius:12px}
.swnet-school__insights{gap:12px}
.swnet-school__insights article{border:0!important;border-radius:14px;background:var(--sp-soft)}
.swnet-school__ranking{gap:12px}
.swnet-school__ranking section{border:0!important;border-radius:14px;background:var(--sp-blue-soft)}
.swnet-school__ranking .swnet-school__basis{border:0!important;border-radius:12px;background:#fff7d5}
.swnet-school-month{border:0!important;border-radius:12px;background:var(--sp-soft)}
.swnet-school__past-toggle{border:0!important;border-radius:9px;background:var(--sp-blue-soft)}
.swnet-school__table-wrap{overflow:auto;border:0!important;border-radius:14px;background:#fff}

/* Camping/fuel maps: one calm finder beside one map, without nested frames. */
.swnet-camp-map{border:0!important;border-radius:16px;background:var(--sp-soft)}
.swnet-camp-map__layout{gap:16px;border:0!important;background:transparent}
.swnet-camp-map__side{border:0!important;border-radius:14px;background:var(--sp-soft)}
.swnet-camp-map__main,.swnet-camp-map__detail{border:0!important;border-radius:14px;background:#fff}
.swnet-camp-map__canvas{overflow:hidden;border:0!important;border-radius:14px;background:var(--sp-blue-soft)}
.swnet-camp-map :is(input[type="search"],select,button){min-height:42px;border-radius:9px!important}
.swnet-camp-map__list>*{border:0!important;border-radius:10px!important;background:#fff;box-shadow:none!important}
.swnet-camp-map__more{border:0!important;background:#fff;color:var(--sp-blue)}

/* Data stories: preserve density but remove the spreadsheet-like one-pixel matrix. */
.swnet-ds-grid,.swnet-ds-overview,.swnet-ds-leaders,.swnet-ds-region-details{gap:12px;border:0!important;background:transparent!important}
.swnet-ds-stat,.swnet-ds-leaders>a,.swnet-ds-region-details article{border:0!important;border-radius:12px;background:var(--sp-soft)}
.swnet-ds-insight,.swnet-ds-note{border:0!important;border-radius:12px}
.swnet-ds-mobility,.swnet-ds-region-index,.swnet-ds-mini-ranking,.swnet-ds-ranking-table{overflow:hidden;border:0!important;border-radius:16px;background:var(--sp-soft)}
.swnet-ds-region-index nav{gap:1px;border:0!important}
.swnet-known__list{gap:14px}
.swnet-known__list article{border:0!important;border-radius:14px;background:var(--sp-soft)}
.swnet-known__list p{border:0!important;border-radius:10px;background:#fff}
.swnet-api-region{border:0!important;border-radius:16px;background:var(--sp-soft)}
.swnet-api-region__grid{gap:12px}
.swnet-api-region__grid article{border:0!important;border-radius:12px;background:#fff!important}
.swnet-api-region__head :is(button,select){border:0!important;border-radius:9px}

/* Nordic Nest catalog, recommendations and analysis surfaces. */
.nn-page__brands a,.nn-catalog__controls :is(input,select){border-radius:9px}
.nn-catalog__controls{gap:12px;border:0!important;border-radius:14px;background:var(--sp-soft)}
.nn-catalog__grid{gap:14px;border:0!important;background:transparent}
.nn-card{overflow:hidden;border:0!important;border-radius:14px;background:#fff;box-shadow:0 18px 48px -40px rgba(0,40,74,.5)}
.nn-card button{border-radius:inherit;background:#fff}
.nn-card__image{display:flex;align-items:center;justify-content:center;padding:0;background:#fff}
.post-content .nn-card__image>img,.article__content .nn-card__image>img,.nn-card__image>img{box-sizing:border-box!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;margin:0!important;padding:.8rem!important;border:0!important;border-radius:0!important;object-fit:contain!important;box-shadow:none!important}
.nn-card__open{align-self:stretch;min-height:42px;margin:.9rem .85rem;border:0!important;border-radius:9px;background:var(--sp-navy);color:#fff}
.nn-card button:hover .nn-card__open,.nn-card button:focus-visible .nn-card__open{background:var(--sp-gold);color:var(--sp-navy)}
.nn-catalog__more,.nn-sort,.nn-stock-filter{border:0!important;border-radius:9px}
.nn-sort{background:var(--sp-blue-soft)}
.nn-stock-filter{background:var(--sp-blue-soft)}
.nn-sort-menu{overflow:hidden;border:0!important;border-radius:10px;box-shadow:0 16px 38px rgba(0,40,74,.18)}
.nn-sort-menu button{border-bottom:0!important}
.nn-insights__kpis,.nn-insights__grid,.nn-insights__colors>div,.nn-insights__groups>div{gap:12px;border:0!important;background:transparent}
.nn-insights__kpis>div,.nn-insights__panel,.nn-insights__groups,.nn-insights__colors article{border:0!important;border-radius:12px;background:var(--sp-soft)}
.nn-modal,.nn-analysis-modal{box-sizing:border-box;overflow:hidden;border:0!important;border-radius:16px}
.nn-modal__close,.nn-analysis-modal__close{border:0!important;border-radius:50%;background:var(--sp-navy);color:#fff}

/* Archive and reusable content indexes. */
.swnet-archive__filters{gap:12px;border:0!important;border-radius:14px;background:var(--sp-soft)}
.swnet-archive__filters :is(input,select){border-color:#afc3d2;border-radius:9px}
.swnet-archive__reset,.swnet-archive__more{border:0!important;border-radius:9px;background:var(--sp-navy);color:#fff}
.swnet-archive__summary{border-bottom:0}

/* Consistent states across every custom data tool. */
:where(.rp-insight,.rp-insight-page,.swnet-school,.swnet-ds,.swnet-archive,.nn-catalog,.swnet-camp-map,.swnet-aurora) :is(input,select,button,a):focus-visible{outline:3px solid rgba(0,82,147,.22);outline-offset:2px}

@media(max-width:700px){
  .rp-energy>.rp-insight__stats{grid-template-columns:1fr 1fr}
  .nn-catalog__grid{grid-template-columns:1fr 1fr;gap:10px}
  .nn-card__open{margin-inline:.65rem}
  .swnet-camp-map{border-radius:14px}
  .swnet-api-region{border-radius:14px}
  .swnet-ferry-map-filters__operators{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%;overflow:visible!important}
  .swnet-ferry-map-filters__operators>button{box-sizing:border-box;width:100%!important;min-width:0!important;max-width:none!important}
  .swnet-ferry-map-filters__operators>button img{max-width:100%;height:auto}
}
@media(max-width:480px){
  .rp-energy>.rp-insight__stats,.nn-catalog__grid{grid-template-columns:1fr}
}
