
.sushi-app.sushi-front{max-width:none;padding:0;}
/* BREDDE, den sikre vej: forsiden er et dashboard og vil have mere plads end sitets 1240 px
   TEKST-container. Det gaelder ved at haeve containerens max-width, ikke ved at regne negative
   margins paa forsidens rod: bleed-formlen (100vw - sidebar - 100%) holder kun for den
   centrerede indholdskolonne, og paa roden gav den live en hero der var SMALLERE end
   containeren, med indhold der floed ud til venstre og blev klippet.
   Selectorerne spejler 48s EGNE tre former (basis, ast-narrow-container, page-builder), for
   de er alle !important og mere specifikke end en enkelt body-regel. :has() rammer forsiden
   uanset body-klasse. Matcher intet af det, staar siden bare i 1240 som alle andre sider. */
body.sushi-shell:has(.sushi-front) .ast-container,
body.sushi-shell:has(.sushi-front) .entry-content,
body.sushi-shell.ast-narrow-container:has(.sushi-front) #content .ast-container,
body.sushi-shell.ast-narrow-container:has(.sushi-front) .site-content .ast-container,
body.sushi-shell.ast-page-builder-template:has(.sushi-front) #content .ast-container,
body.sushi-shell.ast-page-builder-template:has(.sushi-front) .site-content .ast-container{
  max-width:1520px!important;}
body.sushi-shell:has(.sushi-front) .entry-content{
  --wp--style--global--content-size:1520px;--wp--style--global--wide-size:1520px;}
/* Header-containeren er undtaget i 48 (logoet skal staa helt til venstre): den maa ikke
   trækkes med her. */
body.sushi-shell:has(.sushi-front) .site-header .ast-container,
body.sushi-shell:has(.sushi-front) #masthead .ast-container{max-width:none!important;}
/* INGEN understregning paa forsiden. Temaets egen .entry-content a{text-decoration:underline}
   har SAMME specificitet (0,1,1) som .sushi-front a og staar senere i kaskaden, saa den vandt:
   hvert eneste kort-link stod med streg under baade label, tal og undertekst. Samme greb som
   snippet 50 bruger til knapper og overskrifter. Hover markeres med farve, ikke med en streg. */
.sushi-app.sushi-front a,.sushi-app.sushi-front a:hover,.sushi-app.sushi-front a:focus{
  text-decoration:none!important;}
/* Indholdet staar i sitets EGEN container (48 capper den paa 1240). Rammen er
   min(1400px,100%): loftet maa aldrig kunne blive bredere end foraelderen, for saa flyder
   sektionerne ud over kanten. Det var praecis det der skete, da forsidens rod selv var bleed. */
.sushi-front>*:not(.sf-hero){max-width:min(1400px,100%);margin-left:auto;margin-right:auto;
  box-sizing:border-box;}
/* ⚠️ FORSIDEN SKAL HAVE EN SIDEMARGEN PAA TELEFONEN (ejer-fund sep 2026, ordret: "det er
   for meget i venstre kant. HELT I venstre kant staar den nu"). Under 560 px saetter 50
   ``.sushi-app{padding:24px 0}`` med den udtrykkelige begrundelse "ingen ekstra
   side-padding", saa forsidens kort laa med temaets ~8 px og intet andet: et kort der
   roerer skaermkanten laeser som om det er faldet ud af siden.
   Gulvet staar paa RODEN, ikke paa boernene. Begge de andre veje blev proevet og MAALT,
   og begge gjorde ingenting: en sektion som ``.sf-kpis`` har sin egen regel med samme
   specificitet (0,2,0) laengere nede i filen og vinder derfor over baade en margin og en
   padding paa ``.sushi-front`` + universal-selektoren. Roden har kun ÉN konkurrent,
   ``.sushi-app.sushi-front`` herover, og den her regel staar efter den.
   Og heroen bliver ved med at naa kanten: ``.sushi-bleed`` regner paa rodens
   INDHOLDSbredde, som netop bliver 2p smallere, saa udbruddet vokser med praecis p i hver
   side. Maalt: hero-bredden er lig viewporten ved 320, 360, 390, 430 og 560 px. */
@media (max-width:560px){
  .sushi-app.sushi-front{padding-left:var(--s-gutter);padding-right:var(--s-gutter);}
}
.sushi-front .sf-h2{font-size:1.05rem;font-weight:700;letter-spacing:-.01em;margin:0;color:var(--s-ink);}

/* ── HERO ────────────────────────────────────────────────────────────────── */
/* Top-udbruddet svarer til #content padding-top (48 ejer siderne via .sushi-bleed). */
.sushi-front .sf-hero{position:relative;margin-top:-26px;padding:0;background:#0a1410 center/cover no-repeat;overflow:hidden;}
/* Gradienten skal goere teksten laesbar, ikke skjule billedet: mockuppen viser stadion og
   bold tydeligt i hoejre side. Tung til venstre bag teksten, naesten klar til hoejre. */
.sushi-front .sf-hero::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(100deg,rgba(6,14,10,.94) 0%,rgba(6,14,10,.88) 26%,rgba(6,14,10,.55) 46%,rgba(6,14,10,.14) 68%,rgba(6,14,10,0) 88%);}
/* Kompakt hero: mockuppens er ~340 px hoej, ikke en halv skaerm. Hoejre padding giver
   signaturen luft, saa den aldrig lander oven paa loefterne. */
.sushi-front .sf-hero-in{position:relative;z-index:2;max-width:min(1240px,100%);margin:0 auto;
  padding:40px 30px 28px;box-sizing:border-box;}
.sushi-front .sf-flag{display:inline-flex;align-items:center;gap:.6ch;position:absolute;top:16px;right:30px;z-index:3;
  background:rgba(10,22,16,.72);border:1px solid rgba(255,255,255,.16);border-radius:12px;padding:.6em .95em;
  color:#e9f3ec;font-size:.78rem;line-height:1.25;backdrop-filter:blur(6px);}
.sushi-front .sf-flag i{width:8px;height:8px;border-radius:50%;background:#42e08a;flex:0 0 auto;}
.sushi-front .sf-flag span{display:block;color:#9fb3a8;font-size:.72rem;}
.sushi-front .sf-kicker{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#42e08a;margin:0 0 .8em;}
/* To linjer, som i mockuppen ("Honest football" / "probabilities, powered by AI."). Bruddet
   er eksplicit: en ch-baseret max-width braekker forskelligt pr. skrifttype og gav tre linjer. */
.sushi-front .sf-h1{font-size:clamp(1.95rem,3.9vw,3rem);font-weight:780;letter-spacing:-.032em;line-height:1.07;
  margin:0 0 .38em;color:#fff;}
.sushi-front .sf-h1 br{display:inline;}
.sushi-front .sf-h1 em{font-style:normal;color:#42e08a;}
.sushi-front .sf-lede{color:#c6d4cc;font-size:1rem;line-height:1.5;max-width:56ch;margin:0 0 1.35em;}
.sushi-front .sf-cta{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 1.6em;}
.sushi-front .sf-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6ch;font-weight:680;font-size:.98rem;
  padding:.88em 1.6em;border-radius:999px;border-bottom:0!important;transition:transform .15s,box-shadow .15s,border-color .15s,color .15s;}
.sushi-front .sf-btn svg{width:17px;height:17px;flex:0 0 auto;}
.sushi-front .sf-btn--green{background:#1f7a4d;color:#fff;box-shadow:0 8px 20px rgba(12,60,36,.42);}
.sushi-front .sf-btn--ghost{background:#fff;color:var(--s-ink);}
@media(hover:hover){.sushi-front .sf-btn--green:hover{transform:translateY(-1px);box-shadow:0 11px 26px rgba(12,60,36,.5);}
  .sushi-front .sf-btn--ghost:hover{color:#1f7a4d;transform:translateY(-1px);}}
/* Bredere spor + mindre undertekst: "55.104 matches graded, misses included" braekkede til to
   linjer i 260 px-sporet og gjorde raekken hoej og rodet. */
.sushi-front .sf-trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px 30px;max-width:1000px;}
.sushi-front .sf-tr{display:flex;align-items:flex-start;gap:11px;min-width:0;}
.sushi-front .sf-tr .ic{width:34px;height:34px;border-radius:9px;background:rgba(66,224,138,.14);color:#42e08a;
  display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.sushi-front .sf-tr .ic svg{width:18px;height:18px;}
.sushi-front .sf-tr .tx{min-width:0;}
.sushi-front .sf-tr b{display:block;color:#fff;font-size:.9rem;font-weight:650;line-height:1.25;}
.sushi-front .sf-tr span{display:block;color:#9fb3a8;font-size:.775rem;line-height:1.35;margin-top:.15em;}

/* ══ MOBIL-HERO: PRODUKT FOER MARKEDSFOERING (redesign sep 2026) ═══════════════════════
   ⚠️ Maalt paa et skaermbillede ved 390 px: heroen fyldte ca. 60 % af foerste visning med
   overskrift, broedtekst og to fuldbredde kapsel-knapper, foer laeseren saa ét eneste tal.
   Briefen er praecis her: "users should immediately see useful product content. Not: 300
   words explaining Road2Sushi."
   Budskabet bliver - men i app-maalestok - saa kampprogram og noegletal naar foerste skaerm. */
@media(max-width:560px){
  .sushi-front .sf-hero-in{padding:var(--s-5,24px) var(--s-gutter,16px) var(--s-4,16px);}
  .sushi-front .sf-kicker{font-size:var(--s-t-caption,.6875rem);letter-spacing:.11em;
    margin:0 0 var(--s-2,8px);}
  /* 2rem i stedet for ~3rem: en overskrift, ikke en plakat. */
  .sushi-front .sf-h1{font-size:1.65rem;line-height:1.15;letter-spacing:-.02em;
    margin:0 0 var(--s-2,8px);}
  /* ⚠️ ``br{display:none}`` LIMEDE ORDENE SAMMEN: "footballprobabilities". Et <br> er et
     ORDSKEL her, saa det bliver staaende - overskriften bryder bare naturligt. */
  /* ⚠️ INGEN LINE-CLAMP. Leden stod med ``-webkit-line-clamp:2`` og endte som
     "... no interest other than beating the...": saetningen blev klippet midt i, og det
     eneste sitet siger om sig selv paa foerste skaerm var altsaa ufaerdigt. Ellipsis
     fjerner information uden at sige det, og forsiden skjuler aldrig tekst for at faa
     noget til at passe (samme regel som medaljerne og agent-panelet). Den bryder. */
  .sushi-front .sf-lede{font-size:var(--s-t-small,.8125rem);line-height:1.5;
    margin:0 0 var(--s-4,16px);}
  /* ⚠️ KNAPPER, IKKE KAPSLER. To fuldbredde 999px-piller stablet lodret er ca. 140 px og
     laeser som en landingsside. En fintech-kontrol er kompakt og har en maalt radius. */
  .sushi-front .sf-cta{margin:0 0 var(--s-4,16px);}
  /* De tre loefter er TAELLINGER, ikke en funktionsliste: én kolonne, ikoner vaek, smaa tal. */
  .sushi-front .sf-trust{grid-template-columns:1fr;gap:var(--s-2,8px);}
  .sushi-front .sf-tr .ic{display:none;}
  /* ⚠️ KPI-FLISERNE VAR KORT MED IKON-CIRKLER. Fire fliser a ~110 px med en 44 px cirkel,
     en etiket, et stort tal og en underlinje: to raekker af dem fyldte halvdelen af
     skaermen for at sige fire tal. Et tal har ikke brug for et ikon i en cirkel for at
     vaere et tal. Nu: to spor, ingen cirkel, taettere typografi, og tallet er stjernen. */
  .sushi-front .sf-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;
    margin-top:var(--s-3,12px);background:var(--s-line);border:1px solid var(--s-line);
    border-radius:var(--s-r-md,10px);overflow:hidden;}
  .sushi-front .sf-kpi{border:0!important;border-radius:0!important;box-shadow:none!important;
    padding:var(--s-3,12px)!important;gap:var(--s-2,8px);align-items:flex-start;}
  .sushi-front .sf-kpi .ic{display:none;}
  .sushi-front .sf-kpi .go{display:none;}      /* hele flisen er klikbar */
  .sushi-front .sf-kpi .k{font-size:var(--s-t-caption,.6875rem);letter-spacing:.07em;}
  .sushi-front .sf-kpi .v{font-size:1.35rem;}
  .sushi-front .sf-kpi .v.sm{font-size:var(--s-t-body,.9375rem);}
  .sushi-front .sf-kpi .l{font-size:var(--s-t-caption,.6875rem);margin-top:1px;}
  /* Soegefeltet er en KONTROL, ikke en hero: app-hoejde og maalt radius. */
  .sushi-front .sushi-cmd input,.sushi-front .sc-input{min-height:var(--s-tap,44px)!important;
    border-radius:var(--s-r-md,10px)!important;font-size:16px!important;}
  .sushi-front .sf-tr{gap:0;}
  .sushi-front .sf-tr b{font-size:var(--s-t-small,.8125rem);display:inline;}
  .sushi-front .sf-tr span{display:inline;font-size:var(--s-t-caption,.6875rem);
    margin-left:.5ch;}
  .sushi-front .sf-flag{position:static;margin:0 0 var(--s-3,12px);border-radius:var(--s-r-md,10px);
    font-size:var(--s-t-caption,.6875rem);padding:.5em .7em;}
}
/* ⚠️ SIGNATUREN ER ABSOLUT, SAA VAERTEN SKAL RESERVERE LUFTEN (samme regel som plusset).
   Uden reservationen laa "Numbers find value." OVEN PAA tredje loefte-kolonne: maalt med et
   sweep hver 20. px stod der 116 px vandret overlap ved 33 af 33 bredder fra 780 til 1420,
   altsaa HELE baerbar-omraadet inkl. 1280 og 1366. Under 761 px er signaturen skjult og over
   1440 er der luft af sig selv, saa den var usynlig i praecis de to bredder man plejer at
   teste. Banen er signaturens bredde (116) + dens hoejre-offset (38) + luft. */
@media(min-width:761px){ .sushi-front .sf-trust{padding-right:172px;} }
.sushi-front .sf-sign{position:absolute;right:38px;bottom:30px;z-index:2;color:#eaf6ef;text-align:center;
  /* Ingen af de tre findes paa Android eller Linux, saa den faldt til generisk `cursive`,
     som varierer voldsomt. Vi accepterer det bevidst (signaturen er dekoration, ikke data),
     men saetter en laesbar sidste udvej i stedet for at lade browseren vaelge frit. */
  font-family:"Segoe Script","Bradley Hand","Snell Roundhand","Comic Sans MS",cursive,var(--s-font);
  font-size:1.6rem;line-height:1.15;transform:rotate(-6deg);}
.sushi-front .sf-sign i{display:block;height:2px;width:74%;margin:.35em auto 0;border-radius:2px;background:#42e08a;}

/* ── KPI ROW ─────────────────────────────────────────────────────────────── */
.sushi-front .sf-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px;}
.sushi-front .sf-kpi{display:flex;align-items:center;gap:13px;background:var(--s-surface);border:1px solid var(--s-line);
  border-radius:16px;box-shadow:var(--s-e1);padding:16px 16px;color:inherit;min-width:0;transition:transform .15s,box-shadow .15s;}
@media(hover:hover){.sushi-front a.sf-kpi:hover{transform:translateY(-2px);box-shadow:var(--s-e2);}}
/* Ikonerne baerer flisens BETYDNING, som i mockuppen: maanedens agent er guld, ikke endnu en
   groen cirkel. Fire ens ikoner gjorde raekken flad og lignede en skabelon. */
.sushi-front .sf-kpi .ic{width:44px;height:44px;border-radius:14px;background:var(--s-accent-soft);color:var(--s-accent);
  display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.sushi-front .sf-kpi.k-gold .ic{background:rgba(214,158,46,.16);color:#a9781a;}
.sushi-front .sf-kpi.k-blue .ic{background:rgba(43,108,176,.13);color:#2b6cb0;}
.sushi-front .sf-kpi .ic svg{width:21px;height:21px;}
.sushi-front .sf-kpi .bd{min-width:0;flex:1 1 auto;}
/* .k/.v/.l er <span> (et <a> maa ikke indeholde blok-elementer): de SKAL saettes til block,
   ellers loeber label, tal og undertekst sammen paa én linje (EDGES0matches with value). */
.sushi-front .sf-kpi .k,.sushi-front .sf-kpi .v,.sushi-front .sf-kpi .l{display:block;}
.sushi-front .sf-kpi .k{font-size:var(--s-fs-min);font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--s-faint);}
.sushi-front .sf-kpi .v{font-size:1.7rem;font-weight:760;letter-spacing:-.03em;line-height:1.1;color:var(--s-ink);
  font-variant-numeric:tabular-nums;margin-top:.1em;overflow-wrap:anywhere;}
.sushi-front .sf-kpi .v.sm{font-size:1.06rem;letter-spacing:-.01em;}
.sushi-front .sf-kpi .l{color:var(--s-muted);font-size:.8rem;margin-top:.15em;line-height:1.3;}
.sushi-front .sf-kpi .go{color:var(--s-faint);flex:0 0 auto;}
.sushi-front .sf-kpi .go svg{width:16px;height:16px;}
.sushi-front .sf-kpi .av{display:flex;align-items:center;gap:.5ch;}
.sushi-front .sf-kpi .av img,.sushi-front .sf-kpi .av .sushi-pavatar{height:24px!important;width:24px!important;border-radius:7px;margin:0!important;vertical-align:middle!important;}

/* ── THREE LIVE PANELS ───────────────────────────────────────────────────── */
.sushi-front .sf-cols{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr) minmax(0,.86fr);gap:14px;margin-top:14px;align-items:start;}
.sushi-front .sf-panel{background:var(--s-surface);border:1px solid var(--s-line);border-radius:16px;box-shadow:var(--s-e1);overflow:hidden;}
/* Hovedet wrapper. Uden det klemte "View predictions" titlen sammen, saa "Strongest reads"
   braekkede midt over i to linjer ved siden af linket (ejer-fund paa det live site). */
.sushi-front .sf-phead{display:flex;align-items:center;flex-wrap:wrap;gap:.7ch;padding:15px 16px 12px;}
.sushi-front .sf-phead .sf-h2{flex:1 1 auto;min-width:0;}
.sushi-front .sf-phead .ic{color:var(--s-accent);display:flex;flex:0 0 auto;}
.sushi-front .sf-phead .ic svg{width:19px;height:19px;}
/* Tap-maal: 24 px er gulvet (Q-01-scanneren). Uden padding maalte disse links 22-23 px. */
.sushi-front .sf-phead .more{margin-left:auto;font-size:.82rem;font-weight:600;color:var(--s-accent);
  white-space:nowrap;padding:.25em 0;min-height:var(--s-tap-sm);display:inline-flex;align-items:center;}
.sushi-front .sf-empty{padding:0 16px 18px;color:var(--s-muted);font-size:.86rem;line-height:1.5;margin:0;}

/* fixtures panel */
/* Fanerne WRAPPER. Med overflow-x laa den sidste liga ("Premier League") uden for kanten paa
   desktop: der var ingen scrollbar at se, saa den saa bare afskaaret ud (ejer-fund). En ekstra
   linje faner koster 26 px; en skjult liga koster laeseren en liga. */
/* ⚠️ KARRUSEL, IKKE FEM LINJER FANER (ejer-dom sep 2026: "billede 1 er grimt og
   uoverskueligt med ligaerne.. Goer det som karrusel og saa med logo for ligaerne ogsaa").
   Femten ligaer wrappede til FEM linjer paa en telefon, altsaa 130 px faner over et panel
   der viser tre kampe. Den gamle note herover afviste en scroller fordi den saa afskaaret
   ud UDEN en synlig scrollbar: den indvending er loest, ikke ignoreret. Baren har nu sin
   EGEN tynde scrollbar (3 px, accent-farvet) paa pegeudstyr, og logoerne goer det
   oejeblikkeligt tydeligt at raekken fortsaetter. Snap-punkter gør at en fane aldrig
   stopper halvt inde. */
.sushi-front .ff-tabs{display:flex;flex-wrap:nowrap;gap:0 2px;padding:0 10px;
  border-bottom:1px solid var(--s-line);overflow-x:auto;overflow-y:hidden;
  scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:thin;
  scrollbar-color:var(--s-line) transparent;overscroll-behavior-x:contain;}
.sushi-front .ff-tabs::-webkit-scrollbar{height:3px;}
.sushi-front .ff-tabs::-webkit-scrollbar-thumb{background:var(--s-line);border-radius:999px;}
.sushi-front .ff-tabs::-webkit-scrollbar-track{background:transparent;}
.sushi-front .ff-tabs label{scroll-snap-align:start;flex:0 0 auto;display:inline-flex;
  align-items:center;gap:.45ch;}
/* Liga-maerket i fanen: lille, og det maa ALDRIG skubbe teksten ned. */
.sushi-front .ff-tabs label img,.sushi-front .ff-tabs label svg,
.sushi-front .ff-tabs label .sushi-lgb{flex:0 0 auto;margin:0!important;vertical-align:middle!important;}
/* Strammere end resten af forsidens tekst med vilje: seks ligaer fylder 449 px ved .82rem og
   wrappede derfor i et 432 px panel; ved .775rem fylder de 379 px og staar paa ÉN linje.
   Wrappen ovenfor er stadig sikkerhedsnettet, den udloeses bare foerst ved en syvende liga. */
.sushi-front .ff-tabs label{padding:.58em .5em;min-height:var(--s-tap-sm);box-sizing:border-box;font-size:.775rem;font-weight:600;color:var(--s-muted);cursor:pointer;
  white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-1px;}
.sushi-front .sf-panel input.ff-r{position:absolute;opacity:0;pointer-events:none;width:0;height:0;}
.sushi-front .ff-list{padding:2px 0 6px;}
.sushi-front .ff-day{padding:.9em 14px .35em;font-size:var(--s-fs-min);font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--s-faint);}
/* INGEN ellipsis paa holdnavne. Et navn der er for langt BRYDER; det er en linje mere, ikke
   et tabt navn ("Union Be... v Schalk..." stod paa det live site, ogsaa paa desktop). */
/* ══ FORSIDENS FIXTURE-RAEKKE: samme grammatik som /fixtures/ ═══════════════════════════ */
.sushi-front .ff-row{display:flex;align-items:center;gap:var(--s-3,12px);
  padding:var(--s-2,8px) var(--s-3,12px);color:inherit;min-width:0;
  width:100%;box-sizing:border-box;      /* se 40_predictions: krymper ellers til indhold */
  min-height:var(--s-row-h-lg,64px);}
.sushi-front .ff-when{flex:0 0 46px;display:flex;flex-direction:column;line-height:1.1;}
.sushi-front .ff-when b{font-size:var(--s-t-body,.9375rem);font-weight:var(--s-w-bold,650);
  font-variant-numeric:tabular-nums lining-nums;}
.sushi-front .ff-when>span{font-size:var(--s-t-caption,.6875rem);color:var(--s-faint);
  font-weight:var(--s-w-med,560);letter-spacing:.04em;}
.sushi-front .ff-when .dt{font-size:var(--s-t-caption,.6875rem);color:var(--s-faint);}
/* Kampen: to holdlinjer + liga som metadata. ``min-width:0`` er det der lader navnet give
   sig i stedet for at skubbe raekken ud over kanten. */
.sushi-front .ff-fix{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:1px;}
.sushi-front .ff-fix .s-team{font-size:var(--s-t-body,.9375rem);
  font-weight:var(--s-w-med,560);color:var(--s-ink);line-height:1.3;}
.sushi-front .ff-meta{display:flex;align-items:center;gap:6px;margin-top:2px;
  font-size:var(--s-t-caption,.6875rem);color:var(--s-muted);min-width:0;}
.sushi-front .ff-meta>span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
@media(hover:hover){.sushi-front a.ff-row:hover{background:var(--s-bg);}}
/* Et KLOKKESLET maa aldrig braekke. "19:30" stod som "19:3 / 0" paa mobil, fordi kolonnen var
   laast til 40 px og tiden bare wrappede (ejer-fund sep 2026). nowrap skjuler intet her: tiden
   er fem tegn, og kolonnen faar den bredde den skal have i stedet for en fast px-vaerdi. */
.sushi-front .ff-when{flex:0 0 auto;min-width:40px;text-align:left;line-height:1.1;}
.sushi-front .ff-when b{display:block;font-size:.86rem;font-weight:680;font-variant-numeric:tabular-nums;
  color:var(--s-ink);white-space:nowrap;}
.sushi-front .ff-when span{display:block;font-size:var(--s-fs-min);color:var(--s-faint);white-space:nowrap;}
.sushi-front .ff-teams{display:flex;align-items:center;flex-wrap:wrap;gap:.15em .4ch;min-width:0;flex:1 1 auto;
  font-size:.84rem;font-weight:600;line-height:1.25;color:var(--s-ink);}
.sushi-front .ff-teams .t{display:inline-flex;align-items:center;gap:.3ch;min-width:0;}
.sushi-front .ff-teams .t span{min-width:0;}
.sushi-front .ff-teams em{font-style:normal;color:var(--s-faint);font-weight:500;flex:0 0 auto;}
.sushi-front .ff-teams img,.sushi-front .ff-teams .sushi-badge{height:18px!important;width:auto!important;margin:0!important;vertical-align:middle!important;flex:0 0 auto;}
.sushi-front .ff-lg{flex:0 0 auto;display:inline-flex;align-items:center;gap:.4ch;font-size:var(--s-fs-min);font-weight:600;
  color:var(--s-muted);background:var(--s-bg);border-radius:999px;padding:.3em .6em .3em .35em;white-space:nowrap;}
.sushi-front .ff-lg img,.sushi-front .ff-lg svg{flex:0 0 auto;margin:0!important;vertical-align:middle!important;}
.sushi-front .ff-row .dt{display:none;}
/* Chevron KUN paa raekker der faktisk foerer et sted hen (ejer-oenske: man skal kunne klikke
   videre paa den enkelte kamp). En raekke uden kampside beholder ingen pil. */
.sushi-front .ff-go{flex:0 0 auto;color:var(--s-faint);display:flex;align-items:center;}
.sushi-front .ff-go svg{width:15px;height:15px;}
@media(hover:hover){.sushi-front a.ff-row:hover .ff-go,.sushi-front a.od-row:hover .ff-go{color:var(--s-accent);}}

/* agents panel */
/* Rangliste som i mockuppen: rigtige kolonner (#, agent, hit rate, W-L, bankroll, P/L).
   Det der braekkede foer var IKKE tabellen, men nowrap + ellipsis + fire media queries der
   skjulte kolonner: "Calibration Cou..." stod klippet paa det live site. Her er reglen i
   stedet: TALLENE er korte og staar paa én linje, og NAVNET er den eneste kolonne der giver
   sig, ved at BRYDE. Saa kan intet klippes, og ingen kolonne behoever at forsvinde. */
.sushi-front .ag-tbl{width:100%;border-collapse:collapse;font-size:.79rem;table-layout:auto;}
.sushi-front .ag-tbl th{font-size:var(--s-fs-min);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--s-faint);
  text-align:right;padding:.5em .3em;border-bottom:1px solid var(--s-line);white-space:nowrap;}
.sushi-front .ag-tbl th:first-child,.sushi-front .ag-tbl th:nth-child(2){text-align:left;}
.sushi-front .ag-tbl th:first-child{padding-left:16px;} .sushi-front .ag-tbl th:last-child{padding-right:16px;}
.sushi-front .ag-tbl td{padding:.55em .3em;border-bottom:1px solid var(--s-line-soft);text-align:right;
  white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--s-ink);vertical-align:middle;}
.sushi-front .ag-tbl tr:last-child td{border-bottom:0;}
@media(hover:hover){.sushi-front .ag-tbl tbody tr:hover td{background:var(--s-bg);}}
.sushi-front .ag-tbl td:first-child{padding-left:16px;width:1.9em;text-align:left;font-size:.9rem;color:var(--s-faint);font-weight:700;}
.sushi-front .ag-tbl td:last-child{padding-right:16px;}
/* Navnet: eneste kolonne der maa give sig, og den goer det ved at BRYDE (aldrig klippe). */
.sushi-front .ag-nm{text-align:left!important;white-space:normal!important;width:99%;}
.sushi-front .ag-nm a{color:inherit!important;display:flex;align-items:center;gap:.55ch;min-width:0;min-height:var(--s-tap-sm);
  font-weight:640;line-height:1.25;}
.sushi-front .ag-nm span{min-width:0;overflow-wrap:anywhere;}
.sushi-front .ag-nm img,.sushi-front .ag-nm .sushi-pavatar{height:24px!important;width:24px!important;
  border-radius:7px;margin:0!important;vertical-align:middle!important;flex:0 0 auto;}
.sushi-front .ag-hit{min-width:3.6em;font-weight:600;}
.sushi-front .ag-bar{display:block;height:3px;border-radius:3px;background:var(--s-line);overflow:hidden;margin-top:.3em;}
.sushi-front .ag-bar>i{display:block;height:100%;background:var(--s-accent);border-radius:3px;}
.sushi-front .ag-pl.pos{color:var(--s-pos);font-weight:700;}
.sushi-front .ag-pl.neg{color:var(--s-risk);font-weight:700;}

/* odds panel */
.sushi-front .od-row{display:flex;align-items:center;gap:9px;padding:.6em 16px;color:inherit;min-width:0;}
@media(hover:hover){.sushi-front a.od-row:hover{background:var(--s-bg);}}
.sushi-front .od-prob{flex:0 0 auto;min-width:3.2em;text-align:center;font-size:.78rem;font-weight:700;
  color:var(--s-accent-ink);background:var(--s-accent-soft);border-radius:999px;padding:.35em .55em;font-variant-numeric:tabular-nums;}
.sushi-front .od-bdg{flex:0 0 auto;display:flex;align-items:center;}
.sushi-front .od-bdg img,.sushi-front .od-bdg .sushi-badge{height:20px!important;width:auto!important;margin:0!important;vertical-align:middle!important;}
.sushi-front .od-mid{min-width:0;flex:1 1 auto;}
/* Kampnavnet er selve informationen ("Bayern Munich vs Union..." sagde intet). Den bryder. */
.sushi-front .od-mid b{display:block;font-size:.85rem;font-weight:640;color:var(--s-ink);line-height:1.25;}
.sushi-front .od-mid span{display:block;font-size:.72rem;color:var(--s-faint);line-height:1.3;margin-top:.1em;}
.sushi-front .od-odds{flex:0 0 auto;font-size:.86rem;font-weight:700;color:var(--s-accent-ink);background:var(--s-accent-soft);
  border-radius:9px;padding:.4em .6em;font-variant-numeric:tabular-nums;}

/* ── COUPONS (tre risiko-niveauer) + NICHE (hjoerner/kort/skud) ───────────── */
/* Begge blokke er DATA-GATED paa payloadens "front": mangler den, staar sektionerne slet
   ikke (aldrig 0-fyld). Tallene er motorens egne; fair odds er 1/p uden margin. */
.sushi-front .cp3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.sushi-front .cp{background:var(--s-surface);border:1px solid var(--s-line);border-radius:16px;
  box-shadow:var(--s-e1);overflow:hidden;display:flex;flex-direction:column;}
.sushi-front .cp-top{display:flex;align-items:center;flex-wrap:wrap;gap:.6ch;padding:13px 15px 11px;border-bottom:1px solid var(--s-line-soft);}
.sushi-front .cp-risk{font-size:var(--s-fs-min);font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  border-radius:999px;padding:.34em .7em;flex:0 0 auto;}
.sushi-front .cp-risk.r1{background:var(--s-accent-soft);color:var(--s-accent-ink);}
.sushi-front .cp-risk.r2{background:rgba(214,158,46,.14);color:#8a6108;}
.sushi-front .cp-risk.r3{background:rgba(197,48,48,.12);color:#9b2c2c;}
.sushi-front .cp-odds{margin-left:auto;font-size:1.25rem;font-weight:760;letter-spacing:-.02em;
  color:var(--s-ink);font-variant-numeric:tabular-nums;}
.sushi-front .cp-odds small{display:block;font-size:.6rem;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;color:var(--s-faint);text-align:right;}
.sushi-front .cp-legs{list-style:none;margin:0;padding:0;flex:1 1 auto;}
.sushi-front .cp-legs li{border-bottom:1px solid var(--s-line-soft);}
.sushi-front .cp-leg{display:flex;align-items:flex-start;gap:10px;padding:.7em 15px;color:inherit;min-width:0;}
@media(hover:hover){.sushi-front a.cp-leg:hover{background:var(--s-bg);}}
.sushi-front .cp-p{flex:0 0 auto;min-width:3.4em;text-align:center;font-size:.78rem;font-weight:700;
  color:var(--s-accent-ink);background:var(--s-accent-soft);border-radius:999px;padding:.32em .5em;font-variant-numeric:tabular-nums;}
.sushi-front .cp-bd{min-width:0;flex:1 1 auto;}
.sushi-front .cp-bd b,.sushi-front .cp-bd span{display:block;}
.sushi-front .cp-bd b{font-size:.85rem;font-weight:640;color:var(--s-ink);line-height:1.25;}
.sushi-front .cp-bd span{font-size:.72rem;color:var(--s-faint);line-height:1.3;margin-top:.1em;}
.sushi-front .cp-mk{font-size:var(--s-fs-min);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--s-muted);}
.sushi-front .cp-foot{padding:11px 15px 13px;color:var(--s-muted);font-size:.76rem;line-height:1.45;}
.sushi-front .cp-note{color:var(--s-faint);font-size:.8rem;line-height:1.5;margin:12px 0 0;}
.sushi-front .cp-amber{color:#8a6108;font-weight:600;}

.sushi-front .nz{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.sushi-front .nz .sf-panel{display:flex;flex-direction:column;}
/* ── RISIKO-TRIN i et markeds-panel (ejer-oenske 11/9 2026) ────────────────────────────
   Etiketten skal kunne skimmes UDEN at laese: en farvet prik + et kort ord. Farven er den
   samme skala sitet bruger i forvejen (groen = sikker, gul = midt, orange = laengst ude), og
   den staar ALDRIG alene: ordet ("Low risk") baerer betydningen, prikken er kun et hurtigt
   spor. ⚠️ Baandene er haarde, saa et manglende baand betyder at markedet ikke HAR et tip
   der langt ude, ikke at vi skjulte det. */
.sushi-front .nz-tier{display:flex;align-items:baseline;flex-wrap:wrap;gap:.15em .6ch;
  padding:11px 0 7px;border-top:1px solid var(--s-line-soft);}
.sushi-front .nz-list + .nz-tier{margin-top:2px;}
.sushi-front .sf-phead + .nz-tier{border-top:0;padding-top:4px;}
.sushi-front .nz-tl{display:inline-flex;align-items:center;gap:.5ch;flex:0 0 auto;
  font-size:.68rem;font-weight:750;letter-spacing:.07em;text-transform:uppercase;
  color:var(--s-ink);}
.sushi-front .nz-tl::before{content:"";width:8px;height:8px;border-radius:50%;
  background:var(--s-faint);flex:0 0 auto;}
/* ⚠️ Sitets EGEN risiko-stige, ikke tre nye hex. Boardet bruger allerede praecis den her
   traekant (40: .eb-s-low/.eb-s-med/.eb-s-high = --s-accent/--s-warn/--s-risk), saa lav,
   mellem og hoej risiko skal have SAMME farve her som der. Jeg skrev #2f7d54/#c98a12/#c2571f,
   som er naesten-men-ikke tokens: den slags gaar aldrig i stykker, den driver bare fra
   hinanden i stilhed naar paletten aendres (audit 11/9 2026). */
.sushi-front .nz-t-safe .nz-tl::before{background:var(--s-accent);}
.sushi-front .nz-t-balanced .nz-tl::before{background:var(--s-warn);}
.sushi-front .nz-t-longshot .nz-tl::before{background:var(--s-risk);}
/* Beskrivelsen BRYDER (forsidens kanon: ingen ellipsis nogen steder). */
.sushi-front .nz-tb{flex:1 1 16em;min-width:0;font-size:.72rem;line-height:1.4;
  color:var(--s-faint);overflow-wrap:anywhere;}
/* Under ~560 px er der aldrig plads ved siden af etiketten, og en ombrudt linje der haenger
   indrykket under den laeser som en fejl. Saa faar beskrivelsen sin egen linje. */

}
.sushi-front .nz-list{list-style:none;margin:0;padding:0;flex:1 1 auto;}
.sushi-front .nz-list li{border-bottom:1px solid var(--s-line-soft);}
.sushi-front .nz-list li:last-child{border-bottom:0;}
.sushi-front .nz-row{display:flex;align-items:center;gap:10px;padding:.6em 16px;color:inherit;min-width:0;}
@media(hover:hover){.sushi-front a.nz-row:hover{background:var(--s-bg);}}
.sushi-front .nz-p{flex:0 0 auto;min-width:3.4em;text-align:center;font-size:.78rem;font-weight:700;
  color:var(--s-accent-ink);background:var(--s-accent-soft);border-radius:999px;padding:.32em .5em;font-variant-numeric:tabular-nums;}
.sushi-front .nz-bd{min-width:0;flex:1 1 auto;}
.sushi-front .nz-bd b,.sushi-front .nz-bd span{display:block;}
.sushi-front .nz-bd b{font-size:.84rem;font-weight:640;color:var(--s-ink);line-height:1.25;}
.sushi-front .nz-bd span{font-size:.72rem;color:var(--s-faint);line-height:1.3;margin-top:.1em;}
.sushi-front .nz-mt{display:flex!important;align-items:center;gap:.4ch;}
.sushi-front .nz-mt img,.sushi-front .nz-mt svg{flex:0 0 auto;margin:0!important;vertical-align:middle!important;}
.sushi-front .nz-odds{flex:0 0 auto;font-size:.84rem;font-weight:700;color:var(--s-accent-ink);
  background:var(--s-accent-soft);border-radius:9px;padding:.36em .55em;font-variant-numeric:tabular-nums;}

/* ── U-02: PULS · UENIGHED · BEDSTE KALD · RADAR ─────────────────────────── */
/* Alle fire grids er auto-fit, aldrig et fast spor-antal: indholdet kommer fra payloaden, og
   et fast grid efterlader et tomt hul den dag et marked mangler (samme fejl som rc6 havde).
   Og INGEN af dem klipper tekst: forsiden bryder linjen, den skjuler aldrig et navn (U-01). */
/* ⚠️ INGEN AF DE HER RAEKKER MAA EFTERLADE ET TOMT HUL (ejer-fund 9/9 2026, samme klage som
   paa predictions-boardet). Et auto-fit-grid med et VARIABELT antal fliser giver et hul i
   sidste raekke saa snart antallet ikke gaar op i spor-antallet (fem pulse-fliser i fire spor
   = 4+1). Loesningen afhaenger af blokken:
     - variabelt antal (puls, uenighed): FLEX, hvor sidste raekkes fliser vokser og fylder ud.
     - fast antal (seks markeder): faste spor der GAAR OP, 2 paa mobil og 3 fra 720 px. */
.sushi-front .pzrow{display:flex;flex-wrap:wrap;gap:10px;}
.sushi-front .pzrow>.pz{flex:1 1 158px;}
.sushi-front .pz{background:var(--s-surface);border:1px solid var(--s-line);border-radius:14px;
  box-shadow:var(--s-e1);padding:14px 15px;}
.sushi-front .pz-v{display:block;font-size:1.6rem;font-weight:780;letter-spacing:-.03em;line-height:1.1;
  color:var(--s-ink);font-variant-numeric:tabular-nums;}
.sushi-front .pz-v .u{font-size:.9rem;font-weight:700;margin-left:.1ch;color:var(--s-muted);}
.sushi-front .pz-k{display:block;margin-top:.3em;font-size:.78rem;font-weight:660;color:var(--s-ink);line-height:1.35;}
.sushi-front .pz-s{display:block;margin-top:.15em;font-size:.74rem;color:var(--s-faint);line-height:1.4;}

/* ⚠️ SEKS OPLYSNINGER I ÉN 232 PX KASSE (ejer-fund 15/9 2026: "se hvor meget info der
   presses sammen"). Kortet bar forskel, ligamaerke, kald, kamp, to procenter OG en pris i
   syv vandrette baand. To ting er lavet om: fliserne har et stoerre gulv, saa de aldrig
   bliver saa smalle igen, og de fire stoerrelser under sitets eget skrift-gulv (0,66-0,72
   rem = 10,6-11,5 px) er hjemme paa ``--s-t-caption``. Et tal der baerer data staar aldrig
   under gulvet, uanset hvor lidt plads kortet har. */
.sushi-front .dgrid{display:flex;flex-wrap:wrap;gap:var(--s-3,12px);}
.sushi-front .dgrid>.dg{flex:1 1 min(300px,100%);}
.sushi-front .dg{display:block;background:var(--s-surface);border:1px solid var(--s-line);border-radius:14px;
  box-shadow:var(--s-e1);padding:var(--s-3,12px) var(--s-4,16px) var(--s-3,12px);color:inherit;}
@media(hover:hover){.sushi-front a.dg:hover{transform:translateY(-2px);box-shadow:var(--s-e2);}}
.sushi-front .dg-top{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.sushi-front .dg-gap{font-size:var(--s-t-caption,.6875rem);font-weight:800;letter-spacing:.02em;color:#1d6b45;
  background:#e6f3ec;border-radius:999px;padding:.3em .7em;font-variant-numeric:tabular-nums;}
.sushi-front .dg-lg img,.sushi-front .dg-lg svg{height:16px!important;width:auto!important;vertical-align:middle;}
.sushi-front .dg-pick{margin-top:.55em;font-size:var(--s-t-body,.9375rem);font-weight:720;line-height:1.3;color:var(--s-ink);}
.sushi-front .dg-m{margin-top:.2em;font-size:var(--s-t-small,.8125rem);color:var(--s-muted);line-height:1.4;}
/* De to procenter er blokkens indhold, saa de faar plads: to LIGE spor, fulde navne og
   samme talstoerrelse. Ingen af dem klippes; tallene er korte, og labelen bryder hellere. */
.sushi-front .dg-cmp{display:flex;flex-wrap:wrap;gap:var(--s-2,8px) var(--s-3,12px);margin-top:.8em;
  padding-top:.7em;border-top:1px solid var(--s-line-soft);}
.sushi-front .dg-c{flex:1 1 110px;min-width:0;display:flex;flex-direction:column;gap:2px;}
.sushi-front .dg-c i{font-style:normal;font-size:var(--s-t-caption,.6875rem);font-weight:700;letter-spacing:.04em;
  text-transform:uppercase;color:var(--s-faint);line-height:1.3;}
.sushi-front .dg-c b{font-size:1.18rem;font-weight:770;letter-spacing:-.02em;color:var(--s-muted);
  font-variant-numeric:tabular-nums;line-height:1.15;}
.sushi-front .dg-c--us b{color:var(--s-ink);}
/* Prisen er en RAEKKE, ikke tre stumper der wrapper: etiket til venstre, tal til hoejre,
   markedsnavnet paa sin egen linje naar det er langt. */
.sushi-front .dg-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:.2em .6ch;margin-top:.7em;
  padding-top:.6em;border-top:1px solid var(--s-line-soft);}
.sushi-front .dg-price i{font-style:normal;font-size:var(--s-t-caption,.6875rem);font-weight:700;letter-spacing:.04em;
  text-transform:uppercase;color:var(--s-faint);margin-right:auto;}
.sushi-front .dg-price b{font-size:var(--s-t-metric,1.0625rem);font-weight:740;color:var(--s-accent-ink,var(--s-accent));
  font-variant-numeric:tabular-nums;}
.sushi-front .dg-price span{flex:1 1 100%;font-size:var(--s-t-caption,.6875rem);color:var(--s-faint);}

.sushi-front .bcgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
@media(min-width:720px){.sushi-front .bcgrid{grid-template-columns:repeat(3,minmax(0,1fr));}}
.sushi-front .bc{display:flex;flex-direction:column;gap:.18em;background:var(--s-surface);
  border:1px solid var(--s-line);border-radius:14px;box-shadow:var(--s-e1);padding:13px 14px 12px;color:inherit;}
@media(hover:hover){.sushi-front a.bc:hover{transform:translateY(-2px);box-shadow:var(--s-e2);}}
.sushi-front .bc-h{display:flex;align-items:center;gap:.5ch;}
.sushi-front .bc-h .ic{display:inline-flex;width:22px;height:22px;align-items:center;justify-content:center;
  border-radius:7px;background:var(--s-accent-soft);color:var(--s-accent);flex:0 0 auto;}
.sushi-front .bc-h .ic svg{width:13px;height:13px;}
.sushi-front .bc-t{font-size:0.68rem;font-weight:750;letter-spacing:.07em;text-transform:uppercase;color:var(--s-faint);}
.sushi-front .bc-pick{margin-top:.35em;font-size:1rem;font-weight:720;line-height:1.3;color:var(--s-ink);}
.sushi-front .bc-m{font-size:.78rem;color:var(--s-muted);line-height:1.4;}
.sushi-front .bc-f{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-top:.6em;
  padding-top:.55em;border-top:1px solid var(--s-line-soft);}
.sushi-front .bc-p{font-size:1.15rem;font-weight:780;color:var(--s-accent);font-variant-numeric:tabular-nums;}
.sushi-front .bc-o{font-size:1rem;font-weight:740;color:var(--s-ink);font-variant-numeric:tabular-nums;}
.sushi-front .bc-o i{font-style:normal;display:block;font-size:0.62rem;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--s-faint);text-align:right;}

/* Radaren er BRED med vilje. Den scroller inde i sin EGEN kasse, saa siden aldrig faar en
   vandret scrollbar (samme regel som alle andre brede tabeller paa sitet). */
.sushi-front .rdwrap{background:var(--s-surface);border:1px solid var(--s-line);border-radius:16px;
  box-shadow:var(--s-e1);overflow-x:auto;-webkit-overflow-scrolling:touch;}
.sushi-front table.rd{width:100%;border-collapse:collapse;min-width:640px;font-variant-numeric:tabular-nums;}
.sushi-front table.rd th{position:sticky;top:0;background:var(--s-surface);text-align:left;
  font-size:0.66rem;font-weight:750;letter-spacing:.07em;text-transform:uppercase;color:var(--s-faint);
  padding:11px 12px;border-bottom:1px solid var(--s-line);white-space:nowrap;z-index:1;}
.sushi-front table.rd td{padding:9px 12px;border-bottom:1px solid var(--s-line-soft);vertical-align:middle;}
.sushi-front table.rd tr:last-child td{border-bottom:0;}
@media(hover:hover){.sushi-front table.rd tbody tr:hover{background:var(--s-bg);}}
.sushi-front .rd-m{min-width:190px;}
/* Tap-maalet er LINKET, ikke raekken: en 17 px hoej tekstlinje er for lille en traefflade
   paa mobil (390 px-gennemgangen). Blok + luft loefter den over 24 px uden at flytte noget. */
.sushi-front .rd-m a{display:inline-block;padding:5px 0;font-weight:680;color:var(--s-ink)!important;}
.sushi-front .rd-m .v{color:var(--s-faint);font-weight:500;}
.sushi-front .rd-sub{display:flex;align-items:center;gap:.5ch;margin-top:2px;font-size:.72rem;color:var(--s-faint);}
.sushi-front .rd-sub img,.sushi-front .rd-sub svg{height:14px!important;width:auto!important;}
.sushi-front .rd-c{position:relative;min-width:96px;}
.sushi-front .rd-c b{display:block;font-size:.92rem;font-weight:740;color:var(--s-ink);}
.sushi-front .rd-c span{display:block;font-size:.72rem;color:var(--s-muted);line-height:1.35;}
.sushi-front .rd-c i{display:block;height:3px;border-radius:3px;background:var(--s-accent);opacity:.55;margin-top:4px;}
.sushi-front .rd-na{color:var(--s-faint);text-align:center;}

/* ── PUBLIC RECORD (track_record.by_market) ──────────────────────────────── */
/* Sitets centrale loefte er en OFFENTLIG rekord med fejlene i. Den stod kun paa
   track-record-siden. Tallene er payloadens egne (n, best_hit, calib_err, recent). */
/* auto-fit, ikke seks faste spor: antallet af markeder kommer fra payloaden, og fem fliser i
   et 6-spors grid efterlod et tomt hul i hoejre side paa det live site. */
/* ══ RAPPORTKORTET SOM RAEKKER ══════════════════════════════════════════════════════════
   ⚠️ ``.rc .m`` var INLINE mens ``.h`` og ``.n`` var block, saa etiketten, det store tal og
   billedteksten laa oven i hinanden paa en telefon: "DOUBLE CHANCE 75.8% 55,462 calls
   graded, calibration error 0.0097" stod som ét sammenfiltret felt (ejer-fund).
   Nu er hvert marked en RAEKKE i husets grammatik: navn til venstre, tal til hoejre,
   daempet detalje under. Baren er vaek - den tegnede praecis det tal der stod ved siden af,
   og tre gengivelser af ét tal er reglen vi har fjernet alle andre steder. */
.sushi-front .rc6{display:grid;grid-template-columns:1fr;gap:0;
  background:var(--s-surface);border:1px solid var(--s-line);
  border-radius:var(--s-r-md,10px);overflow:hidden;}
/* ⚠️ ``!important`` paa display: reglen TABTE naar ``.entry-content`` staod paa roden,
   altsaa i praecis den tilstand sitet koerer i live (dumpen uden temaets klasse loej og
   viste et pent grid). Raekken faldt tilbage til flex og lagde etiket, tal og billedtekst
   side om side. Et layout-kontrakt for en gentaget raekke skal ikke kunne tabes. */
.sushi-front .rc{display:grid!important;grid-template-columns:minmax(0,1fr) auto;
  align-items:baseline;column-gap:var(--s-3,12px);row-gap:2px;
  width:100%;box-sizing:border-box;padding:var(--s-3,12px) var(--s-4,16px);
  color:inherit;background:none;border:0;border-radius:0;box-shadow:none;
  border-bottom:1px solid var(--s-line-soft);}
.sushi-front .rc:last-child{border-bottom:0;}
@media(hover:hover){.sushi-front a.rc:hover{transform:none;box-shadow:none;background:var(--s-bg);}}
.sushi-front .rc .m{grid-column:1;font-size:var(--s-t-body,.9375rem);font-weight:var(--s-w-med,560);
  letter-spacing:0;text-transform:none;color:var(--s-ink);min-width:0;
  overflow-wrap:break-word;word-break:normal;}
.sushi-front .rc .h{grid-column:2;grid-row:1;font-size:var(--s-t-metric,1.0625rem);
  font-weight:var(--s-w-bold,650);letter-spacing:0;line-height:1.2;color:var(--s-ink);
  font-variant-numeric:tabular-nums lining-nums;margin:0;text-align:right;}
.sushi-front .rc .n{grid-column:1 / -1;grid-row:2;color:var(--s-muted);
  font-size:var(--s-t-caption,.6875rem);line-height:1.35;margin:0;}
/* Baren fjernes helt: tallet staar allerede der. */
.sushi-front .rc-bar{display:none;}
.sushi-front .gc{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;margin-top:12px;}
.sushi-front .gc-row{display:flex;align-items:center;gap:10px;padding:.62em 14px;color:inherit;min-width:0;
  background:var(--s-surface);border:1px solid var(--s-line);border-radius:12px;}
@media(hover:hover){.sushi-front a.gc-row:hover{background:var(--s-bg);}}
.sushi-front .gc-v{flex:0 0 auto;font-size:var(--s-fs-min);font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  border-radius:999px;padding:.34em .6em;}
.sushi-front .gc-v.hit{background:var(--s-accent-soft);color:var(--s-accent-ink);}
.sushi-front .gc-v.miss{background:rgba(197,48,48,.12);color:#9b2c2c;}
.sushi-front .gc-bd{min-width:0;flex:1 1 auto;}
.sushi-front .gc-bd b,.sushi-front .gc-bd span{display:block;}
.sushi-front .gc-bd b{font-size:.82rem;font-weight:640;color:var(--s-ink);line-height:1.25;}
.sushi-front .gc-bd span{font-size:.71rem;color:var(--s-faint);line-height:1.3;margin-top:.1em;}
.sushi-front .gc-c{flex:0 0 auto;font-size:.78rem;font-weight:700;color:var(--s-muted);font-variant-numeric:tabular-nums;}

/* ── YOUR DAY (favoritter) · BEST BETS · VALUE FINDER ────────────────────── */
/* Alle tre er DATA-GATEDE: mangler payload-blokken (eller har brugeren ingen favoritter),
   staar sektionen slet ikke der. Aldrig en tom kasse, aldrig 0-fyld. */
/* ⚠️ De tre nye sektions-hoveder skriver "sec sf-lead", ikke bare "sec", og det er IKKE
   kosmetik: smoke-testen taeller forsidens tre levende paneler i strengen MELLEM
   div.sf-cols og det FOERSTE bare div.sec. Et bart sec-hoved OVER .sf-cols ville give den
   laas en negativ laengde og goere den groen (eller roed) af helt forkerte grunde.
   Modifieren giver samtidig toppen sin egen, lidt strammere luft. */
.sushi-front .sec.sf-lead{margin-top:calc(var(--s-gap) - 2px);}
/* Den diskrete invitation er en LINJE, ikke en kasse: en tom personaliserings-boks er
   praecis den slags stoej der skubber sidens indhold ned uden at sige noget. */
.sushi-front .sf-pref{display:flex;align-items:center;flex-wrap:wrap;gap:.2em .7ch;margin-top:14px;
  padding:0 2px;color:var(--s-muted);font-size:.82rem;line-height:1.45;}
.sushi-front .sf-pref .ic{color:var(--s-faint);display:inline-flex;flex:0 0 auto;}
.sushi-front .sf-pref .ic svg{width:15px;height:15px;}
.sushi-front .sf-pref a{color:var(--s-accent)!important;font-weight:640;padding:.2em 0;min-height:var(--s-tap-sm);
  display:inline-flex;align-items:center;}
/* VARIABELT antal kolonner (0 til 3, afhaengigt af hvad brugeren har valgt OG hvad runden
   baerer): FLEX med flex-basis, saa sidste kolonne vokser og fylder raekken ud. Et grid med
   faste spor ville efterlade et tomt felt hver gang der kun er to kolonner. */
.sushi-front .yd{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px;}
.sushi-front .yd>.ydc{flex:1 1 250px;min-width:0;background:var(--s-surface);border:1px solid var(--s-line);
  border-radius:14px;box-shadow:var(--s-e1);overflow:hidden;}
.sushi-front .yd-h{display:flex;align-items:center;gap:.55ch;padding:12px 14px 9px;font-size:var(--s-fs-min);
  font-weight:750;letter-spacing:.07em;text-transform:uppercase;color:var(--s-faint);}
.sushi-front .yd-h .ic{color:var(--s-accent);display:inline-flex;flex:0 0 auto;}
.sushi-front .yd-h .ic svg{width:15px;height:15px;}
.sushi-front .yd-r{display:flex;align-items:center;gap:9px;padding:.55em 14px;color:inherit;min-width:0;
  border-top:1px solid var(--s-line-soft);}
@media(hover:hover){.sushi-front a.yd-r:hover{background:var(--s-bg);}}
.sushi-front .yd-v{flex:0 0 auto;min-width:3.4em;text-align:center;font-size:.76rem;font-weight:700;
  color:var(--s-accent-ink);background:var(--s-accent-soft);border-radius:999px;padding:.3em .5em;
  font-variant-numeric:tabular-nums;}
.sushi-front .yd-bd{min-width:0;flex:1 1 auto;}
.sushi-front .yd-bd>b,.sushi-front .yd-bd>span{display:block;}
.sushi-front .yd-bd b{font-size:.82rem;font-weight:650;color:var(--s-ink);line-height:1.3;overflow-wrap:anywhere;}
.sushi-front .yd-bd>span{font-size:.71rem;color:var(--s-faint);line-height:1.35;margin-top:.1em;}
.sushi-front .yd-bd .yd-mt{display:flex;align-items:center;flex-wrap:wrap;gap:.15em .4ch;}
.sushi-front .yd-bd .yd-mt img,.sushi-front .yd-bd .yd-mt svg{flex:0 0 auto;margin:0!important;vertical-align:middle!important;}

/* BEST BETS: ÉN liste, ingen fold-ud, ingen pynt. Raekker MED en rigtig pris og raekker UDEN
   maa ikke ligne hinanden: en model-procent uden en pris er en anden slags paastand end en
   forskel maalt mod en pris nogen faktisk tilbyder. Forskellen staar tre steder paa raekken
   (venstre kant, hoejre etiket, legenden nedenunder), aldrig kun i en farve. */
.sushi-front .bblist{display:flex;flex-direction:column;gap:8px;}
.sushi-front .bb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:.7em 14px;color:inherit;
  min-width:0;background:var(--s-surface);border:1px solid var(--s-line);border-left:3px solid var(--s-line);
  border-radius:12px;box-shadow:var(--s-e1);}
.sushi-front .bb--priced{border-left-color:var(--s-accent);}
@media(hover:hover){.sushi-front a.bb:hover{background:var(--s-bg);}}
.sushi-front .bb-p{flex:0 0 auto;min-width:3.6em;text-align:center;font-size:.8rem;font-weight:700;
  color:var(--s-accent-ink);background:var(--s-accent-soft);border-radius:999px;padding:.36em .55em;
  font-variant-numeric:tabular-nums;}
.sushi-front .bb-bd{min-width:0;flex:1 1 190px;}
.sushi-front .bb-bd>b{display:block;font-size:.9rem;font-weight:660;color:var(--s-ink);line-height:1.3;
  overflow-wrap:anywhere;}
.sushi-front .bb-mt{display:flex;align-items:center;flex-wrap:wrap;gap:.15em .5ch;margin-top:.18em;
  font-size:.75rem;color:var(--s-muted);line-height:1.35;overflow-wrap:anywhere;}
.sushi-front .bb-mt img,.sushi-front .bb-mt svg{flex:0 0 auto;margin:0!important;vertical-align:middle!important;}
.sushi-front .bb-hd{display:flex;align-items:center;gap:.4em 1ch;flex-wrap:wrap;}
.sushi-front .bb-hd img,.sushi-front .bb-hd svg{flex:0 0 auto;margin:0!important;vertical-align:middle!important;}
.sushi-front .bb-k{margin-left:auto;font-size:var(--s-fs-min);font-weight:700;letter-spacing:.04em;
  color:var(--s-faint);white-space:nowrap;font-variant-numeric:tabular-nums;}
.sushi-front .bb-k .sm{display:none;}
.sushi-front .bb-mk{display:block;font-size:var(--s-fs-min);font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--s-faint);line-height:1.3;}
.sushi-front .bb-why{display:block;margin-top:.2em;font-size:.74rem;color:var(--s-faint);line-height:1.4;}
.sushi-front .bb-rt{flex:0 0 auto;margin-left:auto;display:flex;align-items:center;gap:9px;}
.sushi-front .bb-o{display:flex;flex-direction:column;align-items:flex-end;gap:1px;}
.sushi-front .bb-o b{font-size:.98rem;font-weight:760;color:var(--s-ink);font-variant-numeric:tabular-nums;line-height:1.1;}
.sushi-front .bb-o i{font-style:normal;font-size:.6rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--s-faint);}
.sushi-front .bb-o i .sm{display:none;}
.sushi-front .bb-e{flex:0 0 auto;font-size:.74rem;font-weight:700;border-radius:999px;padding:.32em .6em;
  font-variant-numeric:tabular-nums;background:#e6f3ec;color:#1d6b45;}
.sushi-front .bb-e--none{background:var(--s-bg);color:var(--s-muted);font-weight:660;}
.sushi-front .bb-note{color:var(--s-faint);font-size:.8rem;line-height:1.5;margin:12px 0 0;}
.sushi-front .bb-key{display:inline-flex;align-items:center;gap:.45ch;margin-right:1ch;font-weight:640;color:var(--s-muted);}
.sushi-front .bb-key i{font-style:normal;width:3px;height:13px;border-radius:2px;background:var(--s-accent);display:inline-block;}
.sushi-front .bb-key.k-model i{background:var(--s-line);}

/* VALUE FINDER: en tabel sorteret paa den kolonne den siger den er sorteret paa. Den er bred
   med vilje og scroller i SIN EGEN kasse (.rdwrap), saa siden aldrig faar vandret scroll. */
.sushi-front table.vf{min-width:600px;}
.sushi-front table.vf .rd-m{min-width:158px;}
.sushi-front .vf-call b{display:block;font-size:.84rem;font-weight:680;color:var(--s-ink);line-height:1.3;}
.sushi-front .vf-call span{display:block;font-size:var(--s-fs-min);font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--s-faint);margin-top:.1em;}
.sushi-front .vf-cmp{white-space:normal;min-width:200px;}
.sushi-front .vf-cmp .mk,.sushi-front .vf-cmp .us{display:inline-block;font-variant-numeric:tabular-nums;}
.sushi-front .vf-cmp .mk{color:var(--s-muted);}
.sushi-front .vf-cmp .us{color:var(--s-ink);font-weight:740;}
.sushi-front .vf-gap{font-size:.86rem;font-weight:780;color:#1d6b45;font-variant-numeric:tabular-nums;}
.sushi-front .vf-gap.neg{color:var(--s-muted);}
.sushi-front .vf-pr b{display:block;font-size:.9rem;font-weight:740;color:var(--s-ink);font-variant-numeric:tabular-nums;}
.sushi-front .vf-pr span{display:block;font-size:.68rem;color:var(--s-faint);}

/* ── TODAY CARDS (kept: what the engine actually produced) ───────────────── */
/* ⚠️ INFO-IKONET FALDER ALDRIG NED UNDER TITLEN (ejer-dom sep 2026: "ikon er ikke til
   hoejre. Det skal det altid vaere"). Raekken var ``flex-wrap:nowrap``, saa h2 blev klemt og
   knappen inde i den braekkede ned paa sin egen linje, mens "All matches" stod pænt til
   hoejre. Nu wrapper RAEKKEN: bliver der for lidt plads, er det LINKET der gaar ned paa
   naeste linje, aldrig ikonet. Titlen og dens ikon er ét stykke. */
.sushi-front .sec{margin:calc(var(--s-gap) + 4px) auto .2em;display:flex;align-items:baseline;
  gap:.2em .8ch;flex-wrap:wrap;}
.sushi-front .sec>h2{flex:1 1 auto;min-width:0;}
.sushi-front .sec>.more{margin-left:auto;}
.sushi-front .sec h2{font-size:1.15rem;font-weight:700;letter-spacing:-.01em;margin:0;}
.sushi-front .sec .more{margin-left:auto;font-size:.88rem;font-weight:600;color:var(--s-accent);
  padding:.25em 0;min-height:var(--s-tap-sm);display:inline-flex;align-items:center;}
.sushi-front .sub{color:var(--s-faint);font-size:.85rem;margin:.3em 0 1em;}
.sushi-front .card{background:var(--s-surface);border:1px solid var(--s-line);border-radius:var(--s-radius);box-shadow:var(--s-shadow);padding:var(--s-pad);}
.sushi-front .cards3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.sushi-front .pcard{position:relative;background:var(--s-surface);border:1px solid var(--s-line);border-radius:16px;box-shadow:var(--s-e1);padding:0;overflow:hidden;}
.sushi-front .pcard .sushi-add{top:9px;right:12px;}
.sushi-front a.pcard{display:block;color:inherit!important;transition:transform .15s ease,box-shadow .15s ease;}
@media (hover:hover){.sushi-front a.pcard:hover{transform:translateY(-2px);box-shadow:var(--s-e2);}}
.sushi-front .pc-head{display:flex;align-items:center;gap:.5ch;padding:13px 54px 9px 16px;min-height:50px;box-sizing:border-box;font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--s-muted);}
.sushi-front .pc-head .when{margin-left:auto;color:var(--s-faint);font-weight:600;text-transform:none;letter-spacing:0;}
.sushi-front .pc-hero{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:20px 14px;color:#fff;}
.sushi-front .pc-hero .t{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;font-weight:700;font-size:.94rem;min-width:0;}
.sushi-front .pc-hero .t span{max-width:100%;overflow-wrap:anywhere;}
.sushi-front .pc-hero .t img,.sushi-front .pc-hero .t .sushi-badge{height:44px!important;width:auto!important;margin:0!important;vertical-align:middle!important;}
.sushi-front .pc-hero .vs{width:30px;height:30px;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.07);display:flex;align-items:center;justify-content:center;font-size:0.68rem;font-weight:700;letter-spacing:.04em;color:rgba(255,255,255,.85);}
.sushi-front .pc-inner{padding:14px 16px 16px;}
.sushi-front .pc-pill{position:relative;display:flex;align-items:center;gap:.55ch;font-size:.82rem;font-weight:600;border-radius:10px;padding:.6em .85em;margin-bottom:1em;line-height:1.3;}
.sushi-front .pc-pill .dot{width:.5em;height:.5em;border-radius:50%;flex:0 0 auto;}
.sushi-front .pc-pill--green{background:#e9f4ec;color:#1f7a4d;} .sushi-front .pc-pill--green .dot{background:#1f7a4d;}
.sushi-front .pc-pill--pick{background:var(--s-bg);color:var(--s-ink);} .sushi-front .pc-pill--pick .dot{background:var(--s-accent);}
.sushi-front .pc-pill--pick .lab{font-size:0.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--s-faint);}
.sushi-front .pc-pill--pick .sel{color:var(--s-ink);font-weight:600;} .sushi-front .pc-pill--pick b{margin-left:auto;color:var(--s-ink);font-weight:760;font-variant-numeric:tabular-nums;}
.sushi-front .pc-pill--green b{font-weight:760;}
.sushi-front .pc-pickrow{display:flex;align-items:center;gap:9px;margin-bottom:1em;}
.sushi-front .pc-pickrow .pc-pill{flex:1 1 auto;margin-bottom:0;}
.sushi-front .pc-i{margin-left:auto;width:18px;height:18px;border-radius:50%;border:1px solid currentColor;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;font-style:normal;cursor:pointer;flex:0 0 auto;opacity:.7;line-height:1;}
.sushi-front .pc-i:hover,.sushi-front .pc-i:focus{opacity:1;}
.sushi-front .pc-i:focus-visible{outline:2px solid var(--s-accent);outline-offset:2px;}
.sushi-front .pc-tip{display:none;position:absolute;right:0;top:calc(100% + 6px);z-index:5;width:max-content;max-width:240px;background:var(--s-ink);color:#fff;font-weight:500;font-size:.78rem;line-height:1.35;padding:.55em .7em;border-radius:8px;box-shadow:0 6px 22px rgba(28,27,23,.22);}
.sushi-front .pc-i:hover .pc-tip,.sushi-front .pc-i:focus .pc-tip{display:block;}
.sushi-front .pc-lab{font-size:0.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--s-faint);margin:0 0 .5em;}
.sushi-front .pc-grid{display:grid;gap:8px;margin-bottom:1.1em;}
.sushi-front .pc-grid.g3{grid-template-columns:repeat(3,minmax(0,1fr));} .sushi-front .pc-grid.g2{grid-template-columns:repeat(2,minmax(0,1fr));}
.sushi-front .pc-cell{border:1px solid var(--s-line-soft);border-radius:10px;padding:.55em .4em .5em;text-align:center;}
.sushi-front .pc-cell .k{font-size:0.68rem;color:var(--s-faint);}
.sushi-front .pc-cell .v{font-weight:680;font-size:1.05rem;font-variant-numeric:tabular-nums;margin:.1em 0 .45em;}
.sushi-front .pc-bar{height:3px;border-radius:3px;background:var(--s-line);overflow:hidden;margin-top:.1em;}
.sushi-front .pc-bar>i{display:block;height:100%;background:var(--s-data);border-radius:3px;}

/* ── WHY ─────────────────────────────────────────────────────────────────── */
.sushi-front .sf-explore{margin-top:calc(var(--s-gap) + 4px);padding:18px 20px;background:var(--s-surface);border:1px solid var(--s-line);border-radius:16px;}
.sushi-front .sf-explore h2{margin:0;font-size:18px;line-height:1.3;}
.sushi-front .sf-explore>.sf-section-head{border-bottom:1px solid var(--s-line);padding-bottom:12px;margin:0 0 16px;}
.sushi-front .sf-explore .sushi-data-dir{border:0;padding:0;font-size:13px;}
.sushi-front .sf-why{margin-top:calc(var(--s-gap) + 4px);background:var(--s-surface);border:1px solid var(--s-line);
  border-radius:18px;box-shadow:var(--s-e1);padding:22px 24px 24px;}
.sushi-front .sf-why-top{display:flex;align-items:flex-start;gap:13px;flex-wrap:wrap;}
.sushi-front .sf-why-top .ic{width:38px;height:38px;border-radius:10px;background:var(--s-accent-soft);color:var(--s-accent);
  display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.sushi-front .sf-why-top .ic svg{width:20px;height:20px;}
.sushi-front .sf-why-top .tx{min-width:0;flex:1 1 320px;}
.sushi-front .sf-why-top h2{font-size:1.28rem;font-weight:740;letter-spacing:-.02em;margin:0;color:var(--s-ink);}
.sushi-front .sf-why-top p{color:var(--s-muted);font-size:.9rem;margin:.25em 0 0;}
.sushi-front .sf-mission{flex:0 1 400px;display:flex;align-items:center;gap:14px;justify-content:flex-end;margin-left:auto;}
.sushi-front .sf-mission .tx{text-align:right;min-width:0;}
.sushi-front .sf-mission b{display:block;font-size:var(--s-fs-min);font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--s-faint);}
.sushi-front .sf-mission span{display:block;color:var(--s-muted);font-size:.86rem;line-height:1.4;margin-top:.15em;}
.sushi-front .sf-learn{flex:0 0 auto;display:inline-flex;align-items:center;gap:.5ch;font-size:.86rem;font-weight:650;
  color:var(--s-ink);border:1px solid var(--s-line);border-radius:999px;padding:.6em 1.05em;}
@media(hover:hover){.sushi-front .sf-learn:hover{border-color:var(--s-accent);color:var(--s-accent);}}
.sushi-front .sf-why-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:20px;}
.sushi-front .sf-wcard{background:var(--s-bg);border-radius:13px;padding:15px 15px 16px;}
.sushi-front .sf-wcard .ic{color:var(--s-accent);display:flex;margin-bottom:9px;}
.sushi-front .sf-wcard .ic svg{width:20px;height:20px;}
.sushi-front .sf-wcard b{display:block;font-size:.9rem;font-weight:680;color:var(--s-ink);}
.sushi-front .sf-wcard span{display:block;color:var(--s-muted);font-size:.82rem;line-height:1.45;margin-top:.3em;}

/* ── RESPONSIVE ──────────────────────────────────────────────────────────── */
/* Her stod fire media queries der SKJULTE indhold (W-L, bankroll, liga-pillen) for at faa
   tabellen til at passe. Efter listen og de brydende navne er der intet at skjule: alle
   felter staar paa alle bredder. Et skjult felt er ikke et design, det er en mangel. */
/* Tre paneler side om side kraever bredde: under ~1300 px begyndte holdnavne og agent-navne
   at klippe, og ved 1024 px stak et element ud. Mellemtrinnet er TO kolonner (kampprogram +
   agenter), hvor prispanelet faar hele bredden, i stedet for at springe direkte til én. */
@media (max-width:1360px){
  /* Fire KPI-kort paa en raekke kraever bredde: derunder klippede underteksten
     ("matches with value", "+9.4u, paper units"). To spor giver dem plads. */
  .sushi-front .sf-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}
  .sushi-front .sf-cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
  .sushi-front .sf-cols>section:last-child{grid-column:1 / -1;}
}
@media (max-width:1160px){
  .sushi-front .cp3,.sushi-front .nz{grid-template-columns:repeat(2,minmax(0,1fr));}

  .sushi-front .cp3>*:last-child,.sushi-front .nz>*:last-child{grid-column:1 / -1;}
}
@media (max-width:720px){
  .sushi-front .cp3,.sushi-front .nz{grid-template-columns:1fr;}
  .sushi-front .cp3>*:last-child,.sushi-front .nz>*:last-child{grid-column:auto;}
}
/* Liga-pillen ryger i de smalle trin: ligaen staar i fanerne lige ovenfor, holdnavnet kun her. */
@media (max-width:1240px) and (min-width:1061px){ .sushi-front .ff-lg{display:none;} }
@media (max-width:1060px){
  .sushi-front .sf-cols{grid-template-columns:1fr;}
  .sushi-front .sf-cols>section:last-child{grid-column:auto;}
  .sushi-front .sf-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}
  .sushi-front .sf-why-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .sushi-front .cards3{grid-template-columns:repeat(2,minmax(0,1fr));}
  .sushi-front .sf-mission{margin-left:0;justify-content:flex-start;flex-basis:100%;}
  .sushi-front .sf-mission .tx{text-align:left;}
}
@media (max-width:760px){
  .sushi-front a,.sushi-front button{-webkit-tap-highlight-color:transparent;}
  .sushi-front .sf-hero{margin-top:-18px;}
  .sushi-front .sf-hero::after{background:linear-gradient(180deg,rgba(6,14,10,.72) 0%,rgba(6,14,10,.86) 46%,rgba(6,14,10,.95) 100%);}
  .sushi-front .sf-flag{display:none;}      /* staar i app-barens header paa mobil */
  .sushi-front .sf-h1{max-width:none;}
  /* ⚠️ HER LAA DEN. To fuldbredde-knapper stablet lodret er ca. 140 px af foerste skaerm og
     laeser som en landingsside, ikke som en app. De staar nu SIDE OM SIDE i app-maalestok.
     (Reglen stod i en SENERE media query end kompressionen laengere oppe og vandt derfor
     paa raekkefoelge: den skal rettes HER, ikke duplikeres ovenfor.) */
  .sushi-front .sf-cta{flex-direction:row;gap:var(--s-2,8px);}
  /* ⚠️ ``nowrap`` KLIPPEDE KNAPTEKSTEN paa 320-330 px (maalt: 146 px tekst i 140 px
     knap). En knap der ikke kan sige hvad den goer er ikke en knap: teksten bryder, og
     knappen vokser i hoejden i stedet for at skjule et ord. */
  .sushi-front .sf-btn{flex:1 1 0;width:auto;min-width:0;white-space:normal;
    padding:var(--s-2,8px) var(--s-3,12px);min-height:var(--s-tap,44px);line-height:1.2;
    font-size:var(--s-t-small,.8125rem);border-radius:var(--s-r-md,10px);box-shadow:none;}
  .sushi-front .sf-btn svg{display:none;}
  .sushi-front .sf-btn:active{transform:scale(.985);}
  .sushi-front .sf-trust{gap:var(--s-2,8px);}
  .sushi-front .sf-tr{flex-direction:row;gap:0;}
  .sushi-front .sf-tr .ic{display:none;}
  .sushi-front .sf-tr b{font-size:.8rem;}
  .sushi-front .sf-tr span{font-size:.72rem;}
  .sushi-front .sf-sign{display:none;}
  .sushi-front .sf-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px;}
  .sushi-front .sf-kpi .bd{min-width:0;overflow:hidden;}
  .sushi-front .sf-kpi .av{min-width:0;overflow:hidden;}
  .sushi-front .sf-kpi .av img,.sushi-front .sf-kpi .av .sushi-pavatar{flex:0 0 auto;}
  .sushi-front .sf-kpi{flex-direction:column;align-items:flex-start;gap:8px;padding:13px 12px 14px;border-radius:14px;}
  .sushi-front .sf-kpi .ic{width:32px;height:32px;} .sushi-front .sf-kpi .ic svg{width:17px;height:17px;}
  .sushi-front .sf-kpi .v{font-size:1.35rem;} .sushi-front .sf-kpi .v.sm{font-size:.92rem;}
  .sushi-front .sf-kpi .k{font-size:var(--s-fs-min);} .sushi-front .sf-kpi .l{font-size:.72rem;}
  .sushi-front .sf-kpi .go{display:none;}
  .sushi-front .sf-kpi--wide{grid-column:span 3;flex-direction:row;align-items:center;}
  .sushi-front .sf-kpi--wide .go{display:flex;}
  .sushi-front .sec{margin-top:26px;} .sushi-front .sec h2{font-size:1.05rem;}
  .sushi-front .cards3{gap:11px;}
  .sushi-front .sf-why{padding:18px 16px 20px;border-radius:16px;}
  .sushi-front .sf-why-grid{gap:10px;margin-top:16px;}
}
/* Liga-pillen ryger foer holdnavnet, ogsaa lige over 430 px hvor den ellers klemte det. */
/* Tre KPI-spor kraever ~620 px: derunder loeb avatar og agent-navn ud over kortet. */
@media (max-width:620px){
  .sushi-front .sf-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}
  .sushi-front .sf-kpi--wide{grid-column:span 2;}
}
@media (max-width:430px){
  .sushi-front .sf-kpi--wide{grid-column:span 2;}
  .sushi-front .sf-why-grid{grid-template-columns:1fr;}
  .sushi-front .cards3{grid-template-columns:1fr;}
  .sushi-front .sf-h1{font-size:1.72rem;}
}
@media (max-width:380px){
  .sushi-front .ff-when{min-width:36px;}
  .sushi-front .ff-row{gap:6px;padding-left:11px;padding-right:11px;}
  .sushi-front .ff-day{padding-left:11px;}
  .sushi-front .od-row{padding-left:11px;padding-right:11px;gap:7px;}
  /* 320 px (iPhone SE / split screen): teksten skaleres, informationen bliver staaende. */
  .sushi-front .ff-teams{font-size:.79rem;}
  .sushi-front .ag-tbl{font-size:.75rem;}
  .sushi-front .ag-tbl td,.sushi-front .ag-tbl th{padding-left:.22em;padding-right:.22em;}
  .sushi-front .ag-tbl td:first-child,.sushi-front .ag-tbl th:first-child{padding-left:11px;}
  .sushi-front .ag-tbl td:last-child,.sushi-front .ag-tbl th:last-child{padding-right:11px;}
}

.sushi-front .sf-record{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;margin:14px auto 0;padding:10px 16px;border:1px solid var(--s-line-soft);border-radius:var(--s-r-md);background:var(--s-surface);color:var(--s-ink);font-size:14px;line-height:1.35;}
.sushi-front .sf-record-k{color:var(--s-muted);font-weight:650;font-size:12px;letter-spacing:.06em;text-transform:uppercase;}
.sushi-front .sf-record-item b{font-variant-numeric:tabular-nums;font-weight:700;}
.sushi-front .sf-record-floor{color:var(--s-muted);}
.sushi-app.sushi-front .sf-record-link{margin-left:auto;display:inline-flex;align-items:center;min-height:var(--s-tap);font-weight:650;color:var(--s-accent-ink)!important;box-shadow:none!important;}
.sushi-front .sf-best-tablist{margin:0 0 14px;padding:0;border:0;min-width:0;}
/* Radioen (sushi-sr er absolut) skal bo i sin egen fane: ellers ligger den oeverst paa siden, og et klik paa
   fanen fokuserer den og ruller siden derop. */
.sushi-front .sf-best-tab{position:relative;}
/* Ejer 24/10 2026: de tre faner staar paa ÉN raekke, ogsaa paa mobil. Raekken er et <fieldset>, som er en blok,
   saa den faelles segment-stil (flex) virkede ikke og den tredje fane faldt ned. Lige brede celler; en lang etiket
   bryder INDE i sin egen celle, aldrig ned paa en ny raekke. */
.sushi-app.sushi-front .sf-best-tablist.sushi-tabs-segment{display:flex;flex-wrap:nowrap;align-items:stretch;overflow:visible;}
.sushi-app.sushi-front .sf-best-tablist>.sf-best-tab{display:flex;flex:1 1 0;min-width:0;}
.sushi-app.sushi-front .sf-best-tablist .sf-best-tab>.sushi-control-item{display:flex;align-items:center;justify-content:center;width:100%;white-space:normal;line-height:1.25;}
.sushi-front .sf-best-tab .sf-tab-s{display:none;}
@media(max-width:560px){.sushi-app.sushi-front .sf-best-tablist .sf-best-tab>.sushi-control-item{padding:6px 6px;font-size:13px;}.sushi-front .sf-best-tab .sf-tab-l{display:none;}.sushi-front .sf-best-tab .sf-tab-s{display:inline;}}
.sushi-front .sf-best-panels,.sushi-front .sf-best-panel{min-width:0;}
.sushi-front .sf-best-tabs:has(.sf-best-tablist input[value="singles"]:checked) .sf-best-panel:not([data-sf-best-tab="singles"]),
.sushi-front .sf-best-tabs:has(.sf-best-tablist input[value="slips"]:checked) .sf-best-panel:not([data-sf-best-tab="slips"]),
.sushi-front .sf-best-tabs:has(.sf-best-tablist input[value="niche"]:checked) .sf-best-panel:not([data-sf-best-tab="niche"]){display:none;}
.sushi-front .sf-best-panel>.sf-compact-panel{container:front-section / inline-size;}
.sushi-app.sushi-front .sf-best-niche .sf-market-grid{display:grid;column-count:auto;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:14px;align-items:start;}
.sushi-app.sushi-front .sf-best-niche .sf-market-grid>*{break-inside:auto;margin:0;}
.sushi-front #front-panels .sf-panels-grid:has(>:only-child){grid-template-columns:minmax(0,1fr);}
.sushi-front .sf-today-note{margin:0 0 10px;color:var(--s-muted);font-size:14px;}
.sushi-front .sf-result-more>summary{display:flex;align-items:center;min-height:var(--s-tap);cursor:pointer;font-weight:650;color:var(--s-accent-ink);}
.sushi-front .sf-result-list{list-style:none!important;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.sushi-front .sf-result{list-style:none!important;margin:0;padding:0 0 10px;border-bottom:1px solid var(--s-line-soft);}
.sushi-app.sushi-front .sf-result-row{display:flex;align-items:center;gap:12px;min-height:var(--s-tap);color:var(--s-ink)!important;box-shadow:none!important;}
.sushi-front .sf-result-match{flex:1 1 auto;min-width:0;}
.sushi-front .sf-result-score{flex:0 0 auto;font-weight:750;font-variant-numeric:tabular-nums;font-size:16px;}
.sushi-front .sf-result-tally{flex:0 0 auto;min-width:3ch;text-align:right;color:var(--s-muted);font-variant-numeric:tabular-nums;font-size:13px;}
.sushi-front .sf-result-calls{list-style:none!important;display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 0;padding:0;}
.sushi-front .sf-result-call{list-style:none!important;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--s-line-soft);border-radius:999px;font-size:13px;line-height:1.3;background:var(--s-bg);color:var(--s-ink);}
.sushi-front .sf-result-p{color:var(--s-muted);font-variant-numeric:tabular-nums;}
.sushi-front .sf-result-verdict .sushi-chip{margin:0;}
.sushi-front .sf-result-more>.sf-result-list{margin-top:10px;}
.sushi-front .sf-invite{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:24px auto 0;padding:14px 18px;border:1px solid var(--s-line-soft);border-radius:var(--s-r-md);background:var(--s-surface);color:var(--s-ink);font-size:15px;line-height:1.45;}
.sushi-front .sf-invite-text{flex:1 1 280px;min-width:0;}
@media (max-width:560px){
  .sushi-front .sf-record{gap:4px 12px;padding:8px 12px;font-size:13px;}
  .sushi-app.sushi-front .sf-record-link{margin-left:0;}
  .sushi-app.sushi-front .sf-result-row{gap:8px;}
}
