/* urval.css — urvalssidan som steg. Samis ja på förslagskort 131, 2026-10-14.
   Läses efter tool.css och skriver över layouten i Hitta företag:
   - filtren är fem numrerade steg, och varje steg visar vad som är valt
   - antalet träffar är sidans största siffra
   - orderrutan är en högerspalt på desktop och en smal list längst ned i mobilen
   - förhandsvisningen blir kort när resultatrutan är smal (container query)
   - djup med yta och skugga i stället för ramar i ramar (AGENTS.md: diskret kant och skugga)
   Rörelse och hover står i rorelse.css. */

/* ── Yta och rubrik ─────────────────────────────────────────────────────── */
body:has(.tool-main){background:var(--yta-2)}
.tool-panel{scroll-margin-top:calc(var(--header-height,72px) + 12px)}
.tool-main:has(#panel-find:not([hidden])) .tool-title>.knapp{display:none}
.tool-main .demo-notice{background:var(--yta);border-color:var(--hairline)}
#product-mode:empty{display:none}

/* ── Stegen ─────────────────────────────────────────────────────────────── */
#panel-find .filter-rail,#panel-find .result-area,#panel-find .order-bar{
  background:var(--yta);border:1px solid var(--hairline);border-radius:14px;box-shadow:var(--skugga)}
#panel-find .filter-rail{padding:0}
#panel-find .rail-heading{min-height:0;padding:18px 22px 16px;border-radius:14px 14px 0 0}
#panel-find .rail-heading h2{font-size:17px}
#panel-find .filter-body{padding:0 22px 6px;background:none}
#panel-find .filter-rail form{display:block}

#panel-find .filter-body .steg{margin:0;padding:18px 0 20px;border:0;border-bottom:1px solid var(--hairline);border-radius:0;background:none;box-shadow:none;min-width:0}
#panel-find .filter-body .steg:last-child{border-bottom:0}
#panel-find .filter-body .steg>legend,#panel-find .filter-body .steg>summary{
  float:left;width:100%;display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:1px 12px;align-items:center;
  margin:0 0 12px;padding:0;font-size:inherit;background:none;border:0}
#panel-find .filter-body .steg>legend+*{clear:both}
#panel-find .filter-body details.steg>summary{margin:0;float:none}
#panel-find .filter-body details.steg[open]>summary{margin-bottom:12px;padding-bottom:0;border-bottom:0}
#panel-find .filter-body details.steg>summary::before{grid-column:3;grid-row:1/span 2;justify-self:end;margin:0 4px 0 0}
#panel-find .filter-body details.steg>:not(summary){clear:both}

.steg-nr{grid-row:1/span 2;align-self:start;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;
  border:1.5px solid var(--yta-ton);color:var(--text-svag);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;background:var(--yta)}
/* Siffran fylls inifrån när steget har ett val (.glans-rund i design/glans.css). */
.steg-satt .steg-nr{--glans-rund:1;border-color:var(--accent);color:var(--pa-accent)}
.steg-namn{grid-column:2;font-size:15px;font-weight:600;color:var(--text);letter-spacing:-.01em;line-height:1.3}
.steg-val{grid-column:2;font-size:12px;font-weight:400;color:var(--text-svag);line-height:1.45;min-width:0;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.steg-val:empty{display:none}
.steg-satt .steg-val{color:var(--text);font-weight:500}
#panel-find .filter-body .steg .field-help{margin-top:8px}
#panel-find .filter-body .steg>.field-help:first-of-type{margin-top:0}

/* Förfina kontakturvalet: en länkrad med pil, inte en ruta i rutan. */
#panel-find .filter-body #contact-options{margin:6px 0 0;padding:0;border:0;background:none}
#panel-find .filter-body #contact-options>summary{display:flex;align-items:center;padding:8px 0;margin:0;border:0;font-size:12px;font-weight:600;color:var(--accent-text)}
#panel-find .filter-body #contact-options[open]>summary{margin-bottom:4px}

/* ── Resultatet ─────────────────────────────────────────────────────────── */
#panel-find .result-area{container:resultat/inline-size;overflow:hidden}
#panel-find .result-toolbar{min-height:0;padding:22px 24px 10px;align-items:flex-start;border:0;background:none}
#match-title{font-size:clamp(24px,2.4vw,32px);font-weight:700;letter-spacing:-.02em;line-height:1.15;margin:0 0 6px;font-variant-numeric:tabular-nums}
#match-description{margin:0;font-size:13px;color:var(--text-svag)}
#panel-find .filter-summary{padding:6px 24px 12px;min-height:0}
#panel-find .filter-summary span{font-size:var(--steg-mikro);padding:4px 8px;border-radius:6px;background:var(--yta-2);border-color:var(--hairline)}
#panel-find .selection-actions{padding:0 24px 14px}
#panel-find .result-coverage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;padding:0 24px;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);background:none}
#panel-find .result-coverage>span{display:flex;flex-direction:column-reverse;gap:2px;padding:14px 0;font-size:12px;color:var(--text-svag)}
#panel-find .result-coverage strong{font-size:20px;font-weight:600;color:var(--text);margin:0;font-variant-numeric:tabular-nums}
/* Stapeln under varje tal visar andelen av listan (Glans.stapel i tool.js). */
#panel-find .result-coverage .glans-stapel{width:min(calc(100% - 20px),150px);margin-top:8px}
#panel-find .preview-notice{margin:16px 24px 12px}
#panel-find .tool-table th:first-child,#panel-find .tool-table td:first-child{padding-left:24px}
#panel-find .preview-explanation{margin:22px 24px}
#panel-find .result-bottom{padding:16px 24px 18px;flex-wrap:wrap;gap:10px 18px}
#panel-find .result-bottom #catalog-freshness{flex-basis:100%;margin:0;font-size:var(--steg-mikro)}

/* Köp och bekräftelse: visa bara innehåll som hör till den aktuella handlingen. */
.tool-main:has(#panel-checkout:not([hidden])) .tool-title>div>p,
.tool-main:has(#panel-checkout:not([hidden])) .account-strip,
.tool-main:has(#panel-checkout:not([hidden])) #product-mode,
.tool-main:has(#panel-checkout:not([hidden])) .tool-tabs,
.tool-main:has(#panel-status:not([hidden])) .tool-title>div>p,
.tool-main:has(#panel-status:not([hidden])) .account-strip,
.tool-main:has(#panel-status:not([hidden])) #product-mode,
.tool-main:has(#panel-status:not([hidden])) .tool-tabs{display:none}
.tool-main:has(#panel-checkout:not([hidden])) .tool-title,
.tool-main:has(#panel-status:not([hidden])) .tool-title{align-items:flex-start;margin-bottom:8px}
#panel-checkout .checkout-layout{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:18px}
#panel-checkout .checkout-card{min-width:0}
#panel-checkout .checkout-card .check-line{align-items:flex-start;gap:10px;line-height:1.55}
#panel-checkout .check-line input{width:20px;height:20px;flex:none;margin-top:1px;accent-color:var(--accent)}
/* Abonnemang (abonnemang.js): valet En gång / Varje månad överst i kassan och abonnemangen överst i Mina listor. */
#panel-checkout .kopsatt{display:grid;grid-template-columns:1fr 1fr;gap:8px;border:0;padding:0;margin:0 0 20px;min-width:0}
#panel-checkout .kopsatt legend{padding:0;margin:0 0 6px;font-size:12px}
#panel-checkout .checkout-card .kopsatt .check-line{margin:0;align-items:center}
#panel-lists .abonnemang-rubrik{font-size:15px;margin:24px 0 0}
#panel-lists #abonnemang-lista{margin-top:12px}
#panel-lists .abonnemang-urval{margin:0 0 4px;color:var(--text)}
#panel-lists .abonnemang-varning{color:var(--text);text-wrap:pretty;font-variant-numeric:tabular-nums}
#panel-lists .abonnemang-meddelande{color:var(--text);font-weight:600}
#panel-lists .breddning{margin-top:16px;padding-top:16px;border-top:1px solid var(--hairline)}
#panel-lists .breddning>p{margin:0;color:var(--text)}
#panel-lists .breddning-lista{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:14px}
#panel-lists .breddning-lista li{display:grid;justify-items:start;gap:6px}
#panel-lists .breddning-lista p{margin:0;font-variant-numeric:tabular-nums;text-wrap:pretty}
#panel-checkout .purchase-terms-links{display:flex;flex-wrap:wrap;gap:8px 12px;margin:8px 0 16px}
#panel-checkout .purchase-terms-links a{display:inline-flex;align-items:center;min-height:44px;padding:0 6px;border-radius:5px;color:var(--accent-text);font-weight:600;text-underline-offset:3px}
#panel-checkout .purchase-terms-links a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
#panel-checkout .dialog-actions{gap:10px;flex-wrap:wrap}
#panel-checkout .dialog-actions .knapp{min-height:44px;padding-inline:14px;white-space:normal}
#panel-checkout .purchase-data-scope{margin-top:16px;padding-top:12px;border-top:1px solid var(--hairline)}
#panel-checkout .purchase-data-scope summary{min-height:44px;display:flex;align-items:center;color:var(--accent-text);font-weight:600}
#panel-status .order-completion-layout{display:block;margin-top:8px}
#panel-status .order-status-card{max-width:920px;margin:0 auto;padding:clamp(20px,4vw,38px)}
#panel-status .order-status-card .dialog-actions .knapp{min-height:48px;padding-inline:18px}
#panel-status .order-reference{align-items:center;flex-wrap:wrap}
#panel-status #order-check-again{min-height:44px;padding:8px 10px}
@media(max-width:760px){
  #panel-checkout .checkout-layout{grid-template-columns:minmax(0,1fr);gap:12px}
  #panel-checkout .checkout-layout>form{grid-row:1}
  #panel-checkout .checkout-layout>aside{grid-row:2;order:2;padding:14px 16px}
  #panel-checkout .checkout-card{padding:18px}
  #panel-checkout .checkout-card .order-details{grid-template-columns:minmax(88px,.65fr) minmax(0,1fr);gap:8px 12px}
  #panel-checkout .checkout-card .dialog-actions{display:grid;grid-template-columns:minmax(0,1fr);}
  #panel-checkout .dialog-actions .knapp{width:100%;min-height:48px}
  #panel-checkout .purchase-terms-links{gap:4px 8px}
  #panel-status .order-status-card{padding:20px 18px}
  #panel-status .order-status-heading{min-width:0}
  #panel-status .order-status-heading>div{min-width:0}
  #panel-status .order-status-card .dialog-actions{gap:8px}
  #panel-status .order-status-card .dialog-actions .knapp{width:100%;min-height:48px}
  #panel-status .delivery-summary{grid-template-columns:minmax(0,1fr);gap:14px;padding:18px 0;margin:20px 0}
  #panel-status #order-account-login{display:inline-flex;align-items:center;min-height:44px;margin-top:8px}
}

/* Smal resultatruta: varje träff blir ett kort med etiketter i stället för en tabell att scrolla i sidled. */
@container resultat (max-width:560px){
  #panel-find .preview-scroll{overflow:visible}
  #panel-find .tool-table,#panel-find .tool-table tbody{display:block;width:100%;min-width:0;white-space:normal}
  #panel-find .tool-table thead{display:none}
  #panel-find .tool-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;padding:16px 20px;border-bottom:1px solid var(--hairline)}
  #panel-find .tool-table td{display:flex;flex-direction:column;gap:2px;padding:0!important;border:0;max-width:none;min-width:0;font-size:12px;font-weight:500}
  #panel-find .tool-table td::before{content:attr(data-label);font-size:var(--steg-mikro);font-weight:400;color:var(--text-svag)}
  #panel-find .tool-table td:first-child{grid-column:1/-1;font-size:13px;font-weight:600}
  #panel-find .tool-table td:first-child::before{content:none}
  #panel-find .result-coverage{padding:0 20px}
  #panel-find .result-toolbar,#panel-find .filter-summary,#panel-find .selection-actions,#panel-find .result-bottom{padding-left:20px;padding-right:20px}
  #panel-find .preview-notice,#panel-find .preview-explanation{margin-left:20px;margin-right:20px}
}

/* ── Orderrutan ─────────────────────────────────────────────────────────── */
#panel-find .order-bar strong{font-variant-numeric:tabular-nums}
#selection-of{font-size:var(--steg-mikro);color:var(--text-svag)}

/* Desktop: högerspalt som följer med, i stället för en list ovanpå filter och tabell. */
@media (min-width:1100px){
  #panel-find .tool-grid{grid-template-columns:minmax(272px,316px) minmax(0,1fr) 268px;gap:20px;align-items:start}
  #panel-find .filter-rail{grid-row:auto}
  #panel-find .order-bar{position:sticky;top:calc(var(--header-height,72px) + 16px);bottom:auto;left:auto;transform:none;width:auto;margin:0;
    grid-column:3;grid-row:1;display:flex;flex-direction:column;align-items:stretch;gap:14px;padding:22px}
  #panel-find .order-bar .order-total{order:-1;align-items:flex-start;padding-bottom:16px;border-bottom:1px solid var(--hairline)}
  #panel-find .order-bar .order-total strong{font-size:32px;font-weight:700;letter-spacing:-.02em}
  #panel-find .order-bar .order-count{flex-direction:row;align-items:baseline;gap:6px;margin-top:-4px}
  #panel-find .order-bar .order-count strong{font-size:15px;font-weight:600}
  #panel-find .order-bar .knapp{width:100%;justify-content:center}
  #panel-find .order-bar #selection-order-mode{margin:0;text-align:center}
}

/* Platta och mobil: en smal list längst ned. Antalet väljs till vänster med träffarna under,
   priset till höger, knappen längst till höger på plattan och över hela bredden i mobilen. */
@media (max-width:1099px){
  #panel-find{padding-bottom:150px}
  #panel-find .order-bar{position:fixed;bottom:12px;padding:12px 18px;gap:4px 20px;grid-template-columns:minmax(0,220px) minmax(0,1fr) auto;
    border-color:var(--yta-ton);box-shadow:0 10px 32px rgb(6 26 87 / .16)}
  #panel-find .order-bar .order-quantity{grid-column:1;grid-row:1}
  #panel-find .order-bar .order-quantity label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  #panel-find .order-bar .order-quantity .falt{padding:8px 26px 8px 10px;font-size:13px}
  #panel-find .order-bar .order-count{display:flex;grid-column:1;grid-row:2;flex-direction:row;align-items:baseline;gap:5px}
  #panel-find .order-bar .order-count strong{font-size:12px;font-weight:600}
  #panel-find .order-bar .order-total{grid-column:2;grid-row:1/span 2;align-items:flex-end;justify-content:center;text-align:right}
  #panel-find .order-bar .order-total strong{font-size:24px;font-weight:700}
  #panel-find .order-bar .order-total span{white-space:nowrap}
  #panel-find .order-bar .knapp{grid-column:3;grid-row:1/span 2;align-self:center}
  #panel-find .order-bar #selection-order-mode{display:none}
  #panel-find .order-bar .kod-text{grid-column:1/-1}
}
@media (min-width:761px) and (max-width:1099px){
  #panel-find .tool-grid{grid-template-columns:minmax(250px,290px) minmax(0,1fr);align-items:start}
}
@media (max-width:760px){
  .tool-main{padding:18px 14px 40px}
  .tool-title{flex-direction:row;flex-wrap:wrap;align-items:flex-start;gap:12px}
  .tool-title>div:first-child{flex:1 1 220px}
  .tool-title h1{font-size:25px;letter-spacing:-.6px;margin-bottom:4px}
  .tool-title p{font-size:13px;line-height:1.5}
  .tool-main .demo-notice{margin:14px 0 12px;padding:10px 12px;font-size:var(--steg-mikro);line-height:1.55}
  .account-strip{margin-bottom:10px;gap:4px 14px}
  #panel-find .tool-grid{grid-template-columns:minmax(0,1fr);gap:14px}
  #panel-find .rail-heading{padding:16px 18px 14px}
  #panel-find .filter-body{padding:0 18px 4px}

  /* Listen: knappen över hela bredden under antal och pris. */
  #panel-find .order-bar{left:0;right:0;bottom:0;width:100%;transform:none;border-radius:16px 16px 0 0;border-width:1px 0 0;
    grid-template-columns:minmax(0,1fr) auto;gap:4px 14px;padding:10px 16px calc(12px + env(safe-area-inset-bottom))}
  #panel-find .order-bar .order-total strong{font-size:22px}
  #panel-find .order-bar .order-total .order-monthly{display:none}
  #panel-find .order-bar .knapp{grid-column:1/-1;grid-row:auto;width:100%;justify-content:center;margin-top:6px;min-height:46px}

  /* Granskningen: vad du köper och priset först, sedan uppgifterna. */
  #panel-checkout .checkout-layout{grid-template-columns:minmax(0,1fr)}
  #panel-checkout .checkout-layout>aside{order:-1}
  #panel-checkout .checkout-card .order-details{grid-template-columns:110px minmax(0,1fr);gap:6px 12px;padding:12px 0}
  #panel-checkout .checkout-card .order-details dd{margin:0}
}

/* ── Mobilen kortare (Sami 2026-10-14) ─────────────────────────────────────
   Flikarna får plats på en rad utan att scrolla: korta namn i mobilen, de långa finns kvar för
   skärmläsare. Toppen tar mindre plats, och stegen är ett dragspel med ett steg öppet åt gången
   (steg.js); antal och pris står hela tiden i listen längst ned. */
.flik-kort{display:none}
.tool-tabs .flik-lang,.tool-tabs .flik-kort{background:none;padding:0;border-radius:0;font-size:inherit}
#panel-find .result-area,#panel-find .steg{scroll-margin-top:calc(var(--header-height,62px) + 12px)}
@media(max-width:760px){
  .tool-title p{display:none}
  .tool-title h1{margin-bottom:0}
  .tool-main .demo-notice{margin:10px 0 8px;padding:8px 12px;font-size:var(--steg-mikro);line-height:1.5}
  .tool-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;overflow:visible}
  .tool-tabs button{display:flex;justify-content:center;align-items:center;gap:5px;padding:13px 2px;font-size:13px;white-space:nowrap;min-width:0}
  .tool-tabs .flik-lang{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .tool-tabs .flik-kort{display:inline}
  .tool-tabs #list-badge{margin:0}

  /* Dragspelet */
  #panel-find .filter-body.steg-dragspel .steg{display:flow-root;padding:14px 0}
  #panel-find .filter-body.steg-dragspel fieldset.steg:not(.steg-oppen)>:not(legend){display:none}
  #panel-find .filter-body.steg-dragspel fieldset.steg>legend{display:block}
  #panel-find .filter-body.steg-dragspel fieldset.steg:not(.steg-oppen)>legend{margin-bottom:0}
  #panel-find .filter-body.steg-dragspel details.steg:not([open])>summary{margin-bottom:0}
  .steg-knapp{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:1px 12px;align-items:center;width:100%;min-height:44px;padding:0;
    border:0;background:none;font:inherit;color:inherit;text-align:left;cursor:pointer}
  .steg-knapp::after{content:"";grid-column:3;grid-row:1/span 2;justify-self:end;width:.42em;height:.42em;margin:0 6px 0 0;
    border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg)}
  .steg-oppen>legend>.steg-knapp::after{transform:rotate(45deg)}
  #panel-find .filter-body.steg-dragspel details.steg>summary{min-height:44px}
  .steg-nasta{display:flex;width:100%;justify-content:center;margin-top:16px}
  #panel-find .filter-body.steg-dragspel .steg:last-child .steg-nasta{margin-bottom:4px}
}

/* ── Info-knappar (design/info.*, Samis ja på förslagskort 173) ────────────
   Instruktioner och detaljer ligger bakom (i). Synligt står bara det som påverkar köpet:
   inte verifierad/inget samtycke, exkl. moms, förfrågan inte bindande, vad som inte ingår,
   och kartans källa (SCB:s öppna data kräver att källan anges). */
.falt-med-info{display:flex;align-items:center;gap:8px;clear:both}
.falt-med-info>.industry-open{flex:1;min-width:0}
.falt-med-info>.info-knapp{margin:0 2px}
.karta-etikett{display:inline-flex;align-items:center;min-width:0}
.map-frame{position:relative}
.karta-kalla{position:absolute;left:8px;bottom:8px;margin:0;padding:3px 8px;border-radius:6px;font-size:10.5px;line-height:1.4;
  color:var(--text-svag);background:color-mix(in srgb,var(--yta) 85%,transparent);pointer-events:auto}
.karta-kalla a{color:inherit}
#panel-find .result-bottom .katalog-rad{display:block;flex-basis:100%;margin:0;font-size:var(--steg-mikro)}
#panel-find .result-bottom #catalog-freshness{font-size:inherit}
.map-tools .info-knapp{min-width:0;width:22px;height:22px;padding:0;border-radius:50%;background:var(--yta)}
.map-tools .info-knapp.info-oppen{background:var(--accent)}

/* Tryckytorna i köpvägen: Logga in, Har du en kod?, Rensa och Kopiera urvalslänk var 19-33 px höga (granska.py 2026-10-23,
   LISTOR-P1-01). Ytan växer med ett osynligt pseudoelement på höjden, så att texten och understrykningen står kvar. */
.account-strip #tool-login,.account-strip #kod-har,.account-strip #tool-logout,#reset-tool,#tool-share{position:relative}
.account-strip #tool-login::after,.account-strip #kod-har::after,.account-strip #tool-logout::after,#reset-tool::after,#tool-share::after{content:"";position:absolute;left:0;right:0;top:50%;height:40px;transform:translateY(-50%)}
@media(max-width:700px){.account-strip #tool-login::after,.account-strip #kod-har::after,.account-strip #tool-logout::after,#reset-tool::after,#tool-share::after{height:44px}}
.manad-inloggning .knapp{margin-top:10px}
