/* =============================================================
   tf-samtal.css — /revision som ett samtal
   Porterad ur Claude Design-exporten "Revision - Tillvaxtfabriken".
   Svart scen, ett fält, en röst. Teal = efter, korall = läcka.
   Siffror står stilla när de landat; bara vägen dit rör sig.
   ============================================================= */
:root{--sm-ink:#FAF8F4;--sm-2:#c9ced4;--sm-3:#8b9096;--sm-4:#6b7076;--sm-5:#55595e;
  --sm-teal:#30cec1;--sm-coral:#ff9a7a;--sm-coral-2:#ff7a55;
  --sm-ease:cubic-bezier(.2,.7,.2,1);--sm-ease-io:cubic-bezier(.7,0,.2,1);
  --sm-sans:'Inter Tight',system-ui,sans-serif;--sm-mono:'JetBrains Mono',ui-monospace,monospace;}
html,body{margin:0;background:#000;color:var(--sm-ink);}
body.sm-body{overflow:hidden;font-family:var(--sm-sans);-webkit-font-smoothing:antialiased;}

@keyframes tfIn{0%{opacity:0;transform:translateY(14px);filter:blur(6px)}100%{opacity:1;transform:none;filter:blur(0)}}
@keyframes tfOut{0%{opacity:1;transform:none;filter:blur(0)}100%{opacity:0;transform:translateY(-14px);filter:blur(6px)}}
@keyframes tfFade{0%{opacity:0}100%{opacity:1}}
@keyframes tfSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes tfWave{0%,100%{transform:scaleY(.3)}50%{transform:scaleY(1)}}
@keyframes tfSweep{0%{transform:translateX(-120%)}100%{transform:translateX(420%)}}
@keyframes tfDraw{0%{transform:scaleX(0)}100%{transform:scaleX(1)}}
@keyframes tfGrow{0%{transform:scaleY(0)}100%{transform:scaleY(1)}}
@keyframes tfRing{0%{opacity:0;transform:scale(.96)}30%{opacity:1}100%{opacity:0;transform:scale(1.2)}}
@keyframes tfCaret{0%,49%{opacity:1}50%,100%{opacity:0}}

.sm-app{position:relative;height:100vh;height:100svh;min-height:640px;background:#000;color:var(--sm-ink);overflow:hidden;}

/* Framstegslinjen överst */
.sm-top{position:absolute;left:0;right:0;top:0;height:clamp(48px,7vh,68px);display:flex;align-items:center;
  justify-content:center;padding:0 20px;z-index:3;}
.sm-prog{display:flex;gap:5px;width:min(100%,320px);opacity:0;transition:opacity .8s var(--sm-ease);}
.sm-prog i{flex:1;height:1px;background:rgba(255,255,255,.14);transition:background .8s var(--sm-ease);}
.sm-prog i.is-on{background:#fff;}
.sm-logo{position:absolute;left:clamp(16px,3vw,32px);top:50%;transform:translateY(-50%);
  font:400 10.5px/1 var(--sm-mono);letter-spacing:.2em;text-transform:uppercase;color:#45484c;text-decoration:none;}
.sm-logo:hover{color:var(--sm-ink);}
@media (max-width:640px){.sm-logo{display:none;}}

/* Scenen */
.sm-stage{position:absolute;left:0;right:0;top:clamp(56px,8vh,76px);bottom:clamp(170px,22vh,200px);z-index:1;
  transition:bottom 1s var(--sm-ease-io);}
.sm-app.has-opts .sm-stage{bottom:clamp(250px,32vh,300px);}
.sm-app.is-idle .sm-stage{bottom:50%;}
/* Startfrågan ligger an mot fältet, inte mitt i övre halvan. */
.sm-app.is-idle .sm-layer{align-items:flex-end;padding-bottom:calc(34px + clamp(16px,3vh,28px));}
.sm-app.is-idle .sm-layer__in{margin:0;}
.sm-ask.sm-ask--start{font-size:clamp(1.9rem,4vw,2.9rem);max-width:none;}
.sm-layer{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:12px 20px;
  box-sizing:border-box;overflow-y:auto;scrollbar-width:none;}
.sm-layer::-webkit-scrollbar{display:none;}
.sm-layer.is-out{pointer-events:none;animation:tfOut .55s cubic-bezier(.6,0,.4,1) both;}
.sm-layer__in{width:100%;margin:auto 0;}
.sm-wrap{width:100%;margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center;}
.sm-center{display:flex;flex-direction:column;align-items:center;gap:10px;}
.sm-full{width:100%;}

.sm-ack{display:flex;align-items:flex-start;gap:10px;min-height:22px;max-width:620px;}
.sm-ack img{width:18px;height:18px;display:block;flex:none;margin-top:2px;border-radius:4px;}
.sm-ack__txt{font:400 15.5px/1.5 var(--sm-sans);color:var(--sm-2);text-align:left;}
.sm-caret{color:var(--sm-teal);animation:tfCaret 1s steps(1,end) infinite;}
.sm-ask{margin:0;font:500 clamp(2rem,5vw,4.2rem)/1 var(--sm-sans);letter-spacing:-.05em;max-width:16ch;text-wrap:balance;}
.sm-hero{font:500 clamp(3.2rem,10vw,8.4rem)/.9 var(--sm-sans);letter-spacing:-.06em;font-variant-numeric:tabular-nums;}
.sm-hero--xl{font-size:clamp(4.5rem,15vw,12rem);}
.sm-hero--l{font-size:clamp(3rem,8vw,6.4rem);}
.sm-hero--m{font-size:clamp(2.4rem,6.4vw,5.2rem);}
.sm-hero--grad{font-size:clamp(3.2rem,10vw,8rem);background:linear-gradient(95deg,#fff 25%,var(--sm-teal) 65%,var(--sm-coral) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:.06em;}
.is-teal{color:var(--sm-teal);}
.sm-sub{font:400 16px/1.5 var(--sm-sans);color:var(--sm-3);}
.sm-sub--smal{max-width:44ch;}
.sm-dim{color:var(--sm-4);}
.sm-mono{font:400 10.5px/1.6 var(--sm-mono);letter-spacing:.16em;text-transform:uppercase;}
.sm-mono--dim{color:var(--sm-4);}
.sm-mono--mid{color:var(--sm-3);}
.sm-mono--teal{color:var(--sm-teal);}
.sm-mono--coral{color:var(--sm-coral);}
.sm-basis{font-size:10px;line-height:1.7;color:var(--sm-5);max-width:760px;}
.sm-antag{color:var(--sm-coral);}
.sm-slut{font:500 clamp(18px,2vw,22px)/1.3 var(--sm-sans);letter-spacing:-.02em;}

/* Realtidsflödet under räknaren */
.sm-feed{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;align-items:center;gap:6px;min-height:104px;}
.sm-feed li{font:400 11.5px/1.4 var(--sm-mono);color:var(--sm-5);letter-spacing:.04em;}
.sm-feed li:last-child{color:var(--sm-teal);}
.sm-feed li.is-ny{animation:tfIn .6s var(--sm-ease) both;}

/* Kort */
.sm-grid{display:grid;gap:12px;width:100%;}
.sm-grid--3{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));}
.sm-grid--4{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));}
.sm-card{position:relative;border-radius:20px;padding:1px;
  background:linear-gradient(160deg,rgba(255,255,255,.34),rgba(255,255,255,.05) 35%,rgba(255,255,255,.03) 70%,rgba(255,255,255,.14));}
.sm-card--full{height:100%;}
.sm-card__in{border-radius:19px;background:#000;box-shadow:inset 0 1px 0 rgba(255,255,255,.14);
  padding:clamp(18px,2.4vw,26px);display:flex;flex-direction:column;gap:10px;text-align:left;height:100%;box-sizing:border-box;}
.sm-lacka{display:flex;align-items:center;gap:8px;font:400 10px/1.4 var(--sm-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--sm-coral);}
.sm-lacka i{width:6px;height:6px;border-radius:50%;background:var(--sm-coral-2);display:block;}
.sm-card__rubrik{font:500 21px/1.15 var(--sm-sans);letter-spacing:-.025em;color:#fff;}
.sm-card__rubrik--s{font-size:18px;letter-spacing:-.02em;}
.sm-card__txt{font:400 14.5px/1.5 var(--sm-sans);color:var(--sm-3);}
.sm-card__bevis{font:400 11.5px/1.4 var(--sm-mono);color:var(--sm-teal);margin-top:auto;padding-top:6px;word-break:break-word;}
.sm-card__tal{font:500 30px/1.1 var(--sm-sans);letter-spacing:-.04em;font-variant-numeric:tabular-nums;}
.sm-card__jatte{font:500 clamp(2.4rem,4.6vw,3.8rem)/.9 var(--sm-sans);letter-spacing:-.06em;font-variant-numeric:tabular-nums;}
.sm-card__plan{font:500 clamp(24px,2.6vw,30px)/1.05 var(--sm-sans);letter-spacing:-.035em;}

.sm-proof__rubrik{font:500 clamp(18px,2vw,22px)/1.3 var(--sm-sans);}
.sm-citat{margin:14px 0 0;font:italic 400 clamp(20px,2.2vw,26px)/1.3 'Playfair Display',Georgia,serif;color:var(--sm-2);}

/* Kontakt & tack */
.sm-andreas{display:flex;align-items:center;gap:14px;}
.sm-andreas img{width:56px;height:56px;border-radius:50%;object-fit:cover;filter:grayscale(1);display:block;box-shadow:0 0 0 1px rgba(255,255,255,.2);}
.sm-andreas__txt{font-size:15px;color:var(--sm-2);text-align:left;line-height:1.4;}
.sm-done{position:relative;display:grid;place-items:center;}
.sm-ring{position:absolute;width:clamp(240px,42vw,440px);aspect-ratio:1;border-radius:50%;border:1px solid rgba(48,206,193,.6);
  animation:tfRing 2.6s var(--sm-ease) .2s both;}

/* Dockan: alternativ, fältet, tillbaka */
.sm-dock{position:absolute;left:50%;top:calc(100% - clamp(96px,13vh,124px));width:min(640px,calc(100% - 32px));
  transform:translate(-50%,-50%);z-index:2;transition:top 1.1s var(--sm-ease-io);}
.sm-app.is-idle .sm-dock{top:50%;}
.sm-opts{position:absolute;left:0;right:0;bottom:calc(100% + 16px);display:flex;flex-wrap:wrap;justify-content:center;gap:8px;}
.sm-opt{position:relative;flex:none;white-space:nowrap;display:flex;align-items:center;gap:9px;height:44px;padding:0 18px;
  border-radius:999px;cursor:pointer;background:#000;border:1px solid rgba(255,255,255,.18);color:var(--sm-2);
  font:400 15px/1 var(--sm-sans);letter-spacing:-.01em;box-shadow:inset 0 1px 0 rgba(255,255,255,.14);
  transition:border-color .3s var(--sm-ease),color .3s var(--sm-ease);}
.sm-opt:hover{border-color:rgba(255,255,255,.55);color:#fff;}
.sm-opt__dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.22);display:block;transition:background .3s var(--sm-ease);}
.sm-opt.is-on{border-color:#fff;color:#fff;}
.sm-opt.is-on .sm-opt__dot{background:var(--sm-teal);}
@media (max-width:560px){.sm-opt{height:40px;padding:0 14px;font-size:14px;}}
.sm-dockrad{display:flex;align-items:center;gap:12px;}
.sm-rim{position:relative;flex:1;min-width:0;border-radius:999px;padding:1px;background:rgba(255,255,255,.1);overflow:hidden;isolation:isolate;}
.sm-rim__ljus{position:absolute;left:50%;top:50%;width:160%;aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none;z-index:0;
  background:conic-gradient(from 0deg,rgba(255,255,255,0) 0deg,rgba(255,255,255,0) 250deg,rgba(48,206,193,.7) 300deg,#fff 330deg,rgba(255,154,122,.6) 345deg,rgba(255,255,255,0) 360deg);
  animation:tfSpin 7s linear infinite;}
.sm-app.is-running .sm-rim__ljus{animation-duration:2.6s;}
.sm-app.is-done .sm-rim__ljus{animation-duration:2.2s;background:conic-gradient(from 0deg,rgba(48,206,193,.9),#fff,rgba(255,154,122,.8),rgba(48,206,193,.9));}
.sm-app.is-warn .sm-rim__ljus{background:conic-gradient(from 0deg,rgba(255,154,122,0) 0deg,rgba(255,154,122,0) 230deg,rgba(255,154,122,.9) 320deg,#fff 340deg,rgba(255,154,122,0) 360deg);}
.sm-bar{position:relative;z-index:1;height:74px;border-radius:999px;display:flex;align-items:center;gap:16px;padding:0 11px 0 30px;
  box-sizing:border-box;overflow:hidden;background:#000;box-shadow:inset 0 1px 0 rgba(255,255,255,.42),inset 0 -1px 0 rgba(255,255,255,.06);margin:0;}
.sm-bar__glans{position:absolute;left:9%;width:38%;top:0;height:1px;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.95),rgba(255,255,255,0));pointer-events:none;}
.sm-sweep{position:absolute;top:0;bottom:0;left:0;width:26%;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.07),rgba(255,255,255,0));
  animation:tfSweep 1.6s cubic-bezier(.6,0,.4,1) infinite;pointer-events:none;display:none;}
.sm-app.is-running .sm-sweep{display:block;}
.sm-input{position:relative;flex:1;min-width:0;border:0;outline:none;background:none;color:#fff;caret-color:var(--sm-teal);
  font:400 clamp(17px,2.1vw,20px)/1.2 var(--sm-sans);letter-spacing:-.015em;padding:0;}
.sm-input::placeholder{color:#8b9096;}
.sm-suffix{position:relative;font:400 11px/1 var(--sm-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--sm-4);flex:none;}
.sm-line{position:relative;flex:1;min-width:0;font:400 clamp(16px,2vw,19px)/1.2 var(--sm-sans);color:var(--sm-2);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.sm-line--next{color:#fff;font-size:clamp(17px,2vw,20px);letter-spacing:-.015em;}
.sm-wave{position:relative;display:none;align-items:center;gap:3px;height:22px;padding:0 18px;flex:none;}
.sm-app.is-running .sm-wave{display:flex;}
.sm-wave i{display:block;width:2px;height:22px;border-radius:2px;background:var(--sm-ink);animation:tfWave .8s ease-in-out infinite;}
.sm-wave i:nth-child(1){height:12px;animation-duration:.7s;}
.sm-wave i:nth-child(2){animation-duration:.83s;animation-delay:.09s;}
.sm-wave i:nth-child(3){height:15px;animation-duration:.96s;animation-delay:.18s;}
.sm-wave i:nth-child(4){height:20px;animation-duration:1.09s;animation-delay:.27s;}
.sm-wave i:nth-child(5){height:10px;animation-duration:1.22s;animation-delay:.36s;}
.sm-send{position:relative;flex:none;width:54px;height:54px;border-radius:16px;cursor:pointer;display:grid;place-items:center;border:0;padding:0;
  background:linear-gradient(160deg,rgba(255,255,255,.6) 0%,rgba(255,255,255,.06) 30%,rgba(48,206,193,.4) 62%,rgba(255,154,122,.35) 80%,rgba(255,255,255,.45) 100%);
  transition:opacity .4s var(--sm-ease);}
.sm-send:disabled{opacity:.4;cursor:default;}
.sm-send::before{content:"";position:absolute;inset:1px;border-radius:15px;background:#000;box-shadow:inset 0 1px 0 rgba(255,255,255,.5);}
.sm-send span{position:relative;font:400 20px/1 var(--sm-sans);color:#fff;}
.sm-back{flex:none;position:relative;width:54px;height:54px;border-radius:50%;cursor:pointer;display:grid;place-items:center;border:0;padding:0;
  background:rgba(255,255,255,.14);color:var(--sm-4);overflow:hidden;
  transition:opacity .6s var(--sm-ease),width .8s var(--sm-ease-io),margin-left .8s var(--sm-ease-io);}
.sm-back::before{content:"";position:absolute;inset:1px;border-radius:50%;background:#000;box-shadow:inset 0 1px 0 rgba(255,255,255,.3);}
.sm-back span{position:relative;font:400 18px/1 var(--sm-sans);}
.sm-back:hover{color:var(--sm-ink);}
.sm-back.is-dold{opacity:0;width:0;margin-left:-12px;pointer-events:none;}
.sm-hint{position:absolute;left:0;right:0;top:calc(100% + 14px);display:flex;justify-content:center;text-align:center;
  font:400 10.5px/1.6 var(--sm-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--sm-5);transition:color .4s var(--sm-ease);}
.sm-app.is-warn .sm-hint{color:var(--sm-coral);}
.sm-foot{position:absolute;left:0;right:0;bottom:0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 22px;
  padding:clamp(14px,2.4vw,24px) 20px;font:400 10px/1 var(--sm-mono);letter-spacing:.16em;text-transform:uppercase;z-index:2;}
.sm-foot a{color:#45484c;text-decoration:none;}
.sm-foot a:hover{color:var(--sm-ink);}
.sm-app:not(.is-idle) .sm-foot{display:none;}
[hidden]{display:none !important;}

@media (prefers-reduced-motion:reduce){
  .sm-rim__ljus,.sm-sweep,.sm-wave i,.sm-caret,.sm-ring{animation:none !important;}
}

/* ---------- Belagda scener (23 sep 2026) ---------------------
   Rubriken är slutsatsen, källraden sist. Vitt = nuläget,
   teal = efter/håller, korall = kostnad/bryts. */
.sm-rubrik{margin:0;font:500 clamp(1.5rem,3.4vw,2.6rem)/1.08 var(--sm-sans);letter-spacing:-.04em;max-width:24ch;text-wrap:balance;}
.sm-kalla{margin:0;font:400 10px/1.6 var(--sm-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--sm-5);max-width:760px;}
.sm-kalla b{font-weight:400;color:var(--sm-4);}

/* Citaten från sajten */
.sm-citat-rad{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%;}
.sm-citat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:10px;width:100%;max-width:900px;}
.sm-citat-kort{display:block;padding:14px 16px;border-radius:14px;border:1px solid rgba(255,255,255,.12);
  font:italic 400 15px/1.45 'Playfair Display',Georgia,serif;color:var(--sm-2);text-align:left;quotes:"”" "”";}
.sm-citat-kort::before{content:open-quote;color:var(--sm-teal);margin-right:2px;}
.sm-citat-kort::after{content:close-quote;color:var(--sm-teal);}

/* Signalerna: vad Google och Meta får veta */
.sm-signal{width:100%;display:flex;flex-direction:column;gap:8px;}
.sm-signal__rad{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(40px,1fr) auto auto auto;align-items:center;gap:14px;
  padding:12px 16px;border-radius:14px;border:1px solid rgba(255,255,255,.1);text-align:left;}
.sm-signal__namn{display:flex;flex-direction:column;gap:3px;min-width:0;}
.sm-signal__namn b{font:500 15px/1.3 var(--sm-sans);color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.sm-signal__namn .sm-mono{font-size:9.5px;}
.sm-signal__spar{position:relative;height:2px;background:rgba(255,255,255,.08);border-radius:2px;overflow:visible;}
.sm-signal__spar i{position:absolute;top:-2px;left:0;width:6px;height:6px;border-radius:50%;background:var(--sm-teal);
  animation:smFlod 1.6s linear infinite;opacity:0;}
.sm-signal__rad.is-dalig .sm-signal__spar i{background:var(--sm-coral-2);}
@keyframes smFlod{0%{left:0;opacity:0}15%{opacity:1}85%{opacity:1}100%{left:calc(100% - 6px);opacity:0}}
.sm-signal__typ{font:400 10px/1 var(--sm-mono);letter-spacing:.14em;text-transform:uppercase;padding:6px 9px;border-radius:999px;
  border:1px solid rgba(48,206,193,.5);color:var(--sm-teal);}
.sm-signal__rad.is-dalig .sm-signal__typ{border-color:rgba(255,154,122,.5);color:var(--sm-coral);}
.sm-signal__varde{font:500 18px/1 var(--sm-sans);letter-spacing:-.02em;font-variant-numeric:tabular-nums;min-width:4.5ch;text-align:right;}
.sm-signal__rad.is-dalig .sm-signal__varde{color:var(--sm-coral);}
.sm-signal__ec{font:400 10px/1 var(--sm-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--sm-5);min-width:5ch;}
.sm-signal__ec.is-pa{color:var(--sm-teal);}
@media (max-width:640px){
  .sm-signal__rad{grid-template-columns:minmax(0,1fr) auto auto;gap:8px 10px;}
  .sm-signal__spar{grid-column:1/-1;order:5;}
  .sm-signal__ec{display:none;}
}

/* Kedjan */
.sm-kedja{list-style:none;margin:0;padding:0;width:100%;display:grid;grid-template-columns:repeat(6,1fr);}
.sm-nod{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;padding:0 6px;text-align:center;}
.sm-nod::before{content:"";position:absolute;top:21px;left:-50%;width:100%;height:2px;background:var(--sm-teal);z-index:0;}
.sm-nod:first-child::before{display:none;}
.sm-nod.is-efter::before,.sm-nod.is-brott::before{background:repeating-linear-gradient(90deg,var(--sm-coral-2) 0 6px,transparent 6px 11px);}
.sm-nod__prick{position:relative;z-index:1;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;
  font:500 14px/1 var(--sm-mono);background:#000;border:2px solid var(--sm-teal);color:var(--sm-teal);}
.sm-nod--brist .sm-nod__prick{border-color:var(--sm-coral-2);color:var(--sm-coral);background:rgba(255,122,85,.1);}
.sm-nod--halv .sm-nod__prick{border-color:#e0a433;color:#e0a433;}
.sm-nod--fraga .sm-nod__prick{border-style:dashed;border-color:rgba(255,255,255,.3);color:var(--sm-4);}
.sm-nod.is-brott .sm-nod__prick{box-shadow:0 0 0 6px rgba(255,122,85,.18);animation:smPuls 2.2s ease-in-out infinite;}
@keyframes smPuls{50%{box-shadow:0 0 0 12px rgba(255,122,85,.04);}}
.sm-nod__txt{display:flex;flex-direction:column;gap:4px;}
.sm-nod__txt b{font:400 10px/1.3 var(--sm-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--sm-ink);}
.sm-nod__txt span{font:400 13px/1.4 var(--sm-sans);color:var(--sm-3);}
.sm-nod.is-brott .sm-nod__txt span{color:#fff;}
@media (max-width:860px){
  .sm-kedja{grid-template-columns:1fr;gap:12px;}
  .sm-nod{flex-direction:row;text-align:left;padding:0;}
  .sm-nod::before{top:-12px;left:21px;width:2px;height:12px;}
  .sm-nod.is-efter::before,.sm-nod.is-brott::before{background:repeating-linear-gradient(180deg,var(--sm-coral-2) 0 4px,transparent 4px 8px);}
  .sm-nod__prick{flex:0 0 44px;}
}
.sm-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;font:400 10px/1 var(--sm-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--sm-4);}
.sm-legend span{display:inline-flex;align-items:center;gap:7px;}
.sm-legend i{width:11px;height:11px;border-radius:50%;border:2px solid var(--sm-teal);display:inline-block;}
.sm-legend__brist i{border-color:var(--sm-coral-2);}
.sm-legend__halv i{border-color:#e0a433;}
.sm-legend__fraga i{border-style:dashed;border-color:rgba(255,255,255,.35);}
.sm-legend__vinst i{border:0;border-radius:0;height:2px;width:16px;background:var(--sm-teal);}
.sm-legend__arvode i{border:0;border-radius:0;height:0;width:16px;border-top:2px dashed var(--sm-coral);}

/* Sajten: varje läst sida */
.sm-sidor{width:100%;display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:6px;}
.sm-sida{position:relative;display:flex;flex-direction:column;gap:3px;padding:9px 10px;border-radius:9px;text-align:left;
  background:rgba(48,206,193,.07);border:1px solid rgba(48,206,193,.3);}
.sm-sida.is-dod{background:rgba(255,122,85,.1);border-color:rgba(255,122,85,.45);}
.sm-sida.is-halv{background:rgba(224,164,51,.08);border-color:rgba(224,164,51,.4);}
.sm-sida__kod{font:500 13px/1 var(--sm-mono);color:var(--sm-teal);}
.sm-sida.is-dod .sm-sida__kod{color:var(--sm-coral);}
.sm-sida.is-halv .sm-sida__kod{color:#e0a433;}
.sm-sida__vag{font:400 10.5px/1.3 var(--sm-mono);color:var(--sm-4);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.sm-sida__form{position:absolute;top:8px;right:8px;width:6px;height:6px;border-radius:50%;background:#fff;}
.sm-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;width:100%;background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;}
.sm-stats > div{background:#000;padding:14px 16px;display:flex;flex-direction:column;gap:5px;text-align:left;}
.sm-stats b{font:500 24px/1 var(--sm-sans);letter-spacing:-.03em;font-variant-numeric:tabular-nums;}
.sm-stats span{font:400 10px/1.3 var(--sm-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--sm-4);}

/* Annonserna: budskapet räknat */
.sm-budskap{width:100%;display:flex;flex-direction:column;gap:10px;}
.sm-budskap__rad{display:grid;grid-template-columns:minmax(0,2fr) minmax(80px,1fr) auto;align-items:center;gap:14px;text-align:left;
  padding:12px 16px;border:1px solid rgba(255,255,255,.1);border-radius:14px;}
.sm-budskap__rad q{font:italic 400 15px/1.4 'Playfair Display',Georgia,serif;color:var(--sm-2);}
.sm-budskap__bana{height:6px;border-radius:3px;background:rgba(255,154,122,.12);overflow:hidden;}
.sm-budskap__bana i{display:block;height:100%;background:var(--sm-teal);}
.sm-budskap__rad b{font:500 18px/1 var(--sm-sans);font-variant-numeric:tabular-nums;}
.sm-budskap__rad b.is-noll{color:var(--sm-coral);}

/* Marknaden: grannarna */
.sm-grannar{width:100%;display:flex;flex-direction:column;gap:8px;text-align:left;}
.sm-granne{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,2fr) 64px minmax(0,1.3fr);align-items:center;gap:12px;font-size:14px;}
.sm-granne__namn{color:var(--sm-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.sm-granne__bana{height:14px;border-radius:4px;background:rgba(255,255,255,.04);overflow:hidden;}
.sm-granne__bana i{display:block;height:100%;border-radius:4px;background:rgba(255,255,255,.55);transform-origin:left;animation:tfDraw 1.2s cubic-bezier(.2,.7,.2,1) both;}
.sm-granne.is-du .sm-granne__namn{color:#fff;font-weight:500;}
.sm-granne.is-du .sm-granne__bana i{background:var(--sm-teal);}
.sm-granne b{text-align:right;font-weight:500;font-variant-numeric:tabular-nums;}
.sm-granne__taggar{display:flex;gap:4px;flex-wrap:wrap;}
.sm-granne__taggar em{font:400 9.5px/1 var(--sm-mono);font-style:normal;letter-spacing:.08em;text-transform:uppercase;padding:4px 6px;border-radius:4px;
  border:1px solid rgba(255,255,255,.15);color:var(--sm-3);}
.sm-granne__taggar em.is-an{border-color:rgba(255,154,122,.4);color:var(--sm-coral);}
@media (max-width:640px){.sm-granne{grid-template-columns:minmax(0,1fr) 54px;}.sm-granne__bana{grid-column:1/-1;order:3;}.sm-granne__taggar{grid-column:1/-1;order:4;}}

/* Värdet: Google tror ≠ ni säger */
.sm-kontrast{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(20px,5vw,64px);}
.sm-kontrast__sida{display:flex;flex-direction:column;align-items:center;gap:8px;}
.sm-kontrast__tal{font:500 clamp(3rem,8vw,6rem)/.9 var(--sm-sans);letter-spacing:-.06em;font-variant-numeric:tabular-nums;}
.sm-kontrast__tal.is-coral{color:var(--sm-coral);}
.sm-kontrast__ar{font:300 clamp(2rem,5vw,3.6rem)/1 var(--sm-sans);color:var(--sm-5);}
.sm-kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;width:100%;background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;}
.sm-kpi > div{background:#000;padding:14px 16px;display:flex;flex-direction:column;gap:5px;text-align:left;}
.sm-kpi b{font:500 22px/1 var(--sm-sans);letter-spacing:-.03em;font-variant-numeric:tabular-nums;}
.sm-kpi span{font:400 10px/1.35 var(--sm-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--sm-4);}

/* Potentialen: vattenfall + riktmärken */
.sm-vatten{display:block;width:100%;height:auto;overflow:visible;}
.sm-vatten__bas{fill:rgba(255,255,255,.72);}
.sm-vatten__hv{fill:var(--sm-teal);}
.sm-vatten__antag{fill:#e0a433;}
.sm-vatten__ny{fill:url(#smAr);fill:#bff5ee;}
.sm-vatten__v{font:500 15px var(--sm-sans);fill:#fff;}
.sm-vatten__v.is-teal{fill:var(--sm-teal);}
.sm-vatten__n{font:400 11px var(--sm-mono);letter-spacing:.06em;fill:var(--sm-3);}
.sm-rikt{list-style:none;margin:0;padding:0;width:100%;display:flex;flex-direction:column;gap:8px;text-align:left;}
.sm-rikt li{display:flex;flex-direction:column;gap:3px;padding-left:12px;border-left:2px solid var(--sm-teal);}
.sm-rikt b{font:500 14px/1.3 var(--sm-sans);}
.sm-rikt span{font:400 12.5px/1.45 var(--sm-sans);color:var(--sm-3);}

/* Tolv månader: vinst mot arvode */
.sm-ar{display:block;width:100%;height:auto;overflow:visible;}
.sm-ar__vinst{fill:none;stroke:var(--sm-teal);stroke-width:2.5;}
.sm-ar__arvode{fill:none;stroke:var(--sm-coral);stroke-width:1.6;stroke-dasharray:5 5;}
.sm-ar__be{fill:#fff;}
.sm-ar__bet{font:400 10px var(--sm-mono);letter-spacing:.14em;fill:#fff;}
.sm-ar__axel{font:400 11px var(--sm-mono);letter-spacing:.08em;fill:var(--sm-5);}
.sm-full .sm-legend{margin-top:10px;}

@media (prefers-reduced-motion:reduce){.sm-signal__spar i,.sm-nod.is-brott .sm-nod__prick{animation:none !important;}}

/* Tolkningens mening under fynden, och villkorade hävstänger (inget syns i sidkoden) */
.sm-krok{margin:0;font:500 clamp(16px,1.7vw,19px)/1.45 var(--sm-sans);letter-spacing:-.01em;color:#fff;max-width:56ch;}
.sm-krok:empty{display:none;}
.sm-krok.is-ny{animation:tfIn .8s var(--sm-ease) both;}
.sm-rikt li.is-villkor{border-left-color:#e0a433;}
.sm-ask.sm-ask--s{font-size:clamp(1.6rem,3.4vw,2.6rem);}

/* ---------- "Gå vidare": dockan är en knapp, inte ett chattfält -------------
   När det enda man kan göra är att fortsätta ska fältet inte se ut som
   något man kan skriva i. Teal ton, etiketten som knapptext och en pil i
   en fylld cirkel. Hela raden är klickbar (se bar.click i tf-samtal.js). */
.sm-app.is-next .sm-bar{
  padding:0 10px 0 26px;cursor:pointer;
  /* Ogenomskinlig bas: kantljuset roterar BAKOM baren och får inte synas igenom. */
  background:linear-gradient(90deg,rgba(48,206,193,.18),rgba(48,206,193,.06) 55%,rgba(255,255,255,.03)),#000;
  transition:background .3s var(--sm-ease);
}
.sm-app.is-next .sm-bar:hover{background:linear-gradient(90deg,rgba(48,206,193,.28),rgba(48,206,193,.1) 55%,rgba(255,255,255,.05)),#000;}
.sm-app.is-next .sm-line--next{font-weight:500;color:#fff;}
.sm-app.is-next .sm-send{border-radius:50%;background:var(--sm-teal);}
.sm-app.is-next .sm-send::before{display:none;}
.sm-app.is-next .sm-send span{color:#04221d;font-size:22px;font-weight:600;animation:smPil 1.8s ease-in-out infinite;}
@keyframes smPil{0%,100%{transform:translateX(0)}50%{transform:translateX(3px)}}
.sm-app.is-next .sm-rim__ljus{animation-duration:3.4s;}
@media (prefers-reduced-motion:reduce){.sm-app.is-next .sm-send span{animation:none;}}
/* Adressen ser komplett ut: knappen tänds i teal. */
.sm-send{transition:background .45s var(--sm-ease),box-shadow .45s var(--sm-ease),opacity .3s var(--sm-ease);}
.sm-send::before,.sm-send span{transition:opacity .45s var(--sm-ease),color .45s var(--sm-ease);}
.sm-app.is-sajt .sm-send{background:var(--sm-teal);box-shadow:0 0 0 1px rgba(48,206,193,.5),0 0 22px rgba(48,206,193,.45);}
.sm-app.is-sajt .sm-send::before{opacity:0;}
.sm-app.is-sajt .sm-send span{color:#04221d;font-weight:600;}

/* ---------- Vattenfallet som lista (mobil) ---------------------------------- */
.sm-trappa{list-style:none;margin:0;padding:0;width:100%;display:flex;flex-direction:column;gap:8px;text-align:left;}
.sm-trappa__steg{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;align-items:baseline;font-size:13.5px;color:var(--sm-2);}
.sm-trappa__v{font-weight:500;color:#fff;font-variant-numeric:tabular-nums;}
.sm-trappa__steg--hv .sm-trappa__v{color:var(--sm-teal);}
.sm-trappa__steg--antag .sm-trappa__v{color:#e0a433;}
.sm-trappa__steg--ny{color:#fff;font-weight:500;}
.sm-trappa__bana{grid-column:1/-1;position:relative;height:10px;border-radius:3px;background:rgba(255,255,255,.05);}
.sm-trappa__bana i{position:absolute;top:0;bottom:0;border-radius:3px;background:var(--sm-teal);}
.sm-trappa__steg--bas .sm-trappa__bana i{background:rgba(255,255,255,.7);}
.sm-trappa__steg--antag .sm-trappa__bana i{background:#e0a433;}
.sm-trappa__steg--ny .sm-trappa__bana i{background:#bff5ee;}

/* ---------- Mobil -------------------------------------------------------- */
@media (max-width:640px){
  /* Mer innehåll nedanför? En tonad kant säger det utan att ta plats. */
  .sm-stage::after{content:"";position:absolute;left:0;right:0;bottom:0;height:30px;pointer-events:none;z-index:2;
    background:linear-gradient(to bottom,rgba(0,0,0,0),#000);}
  .sm-layer{padding:8px 16px 32px;}
  .sm-rubrik{font-size:1.4rem;line-height:1.12;}
  .sm-ask{font-size:2rem;}
  .sm-ask.sm-ask--s{font-size:1.45rem;}
  .sm-ask.sm-ask--start{font-size:1.75rem;}
  .sm-ack__txt{font-size:14.5px;}

  /* Fynd och plan: en svepbar rad, nästa kort tittar fram i kanten. */
  .sm-grid.sm-karusell{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;
    margin:0 -16px;padding:0 16px 4px;width:calc(100% + 32px);scrollbar-width:none;}
  .sm-grid.sm-karusell::-webkit-scrollbar{display:none;}
  .sm-grid.sm-karusell > .sm-card{flex:0 0 84%;scroll-snap-align:center;}
  .sm-card__rubrik{font-size:18px;}

  /* Bokslutsrutorna två och två. */
  .sm-grid--4{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .sm-grid--4 .sm-card__in{padding:12px 14px;gap:6px;}
  .sm-grid--4 .sm-card__tal{font-size:22px;}
  .sm-grid--4 .sm-card__txt{font-size:12px;}

  /* Tolv månader: tre rutor i rad. */
  .sm-grid--kompakt{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;}
  .sm-grid--kompakt .sm-card__in{padding:10px 9px;gap:4px;}
  .sm-grid--kompakt .sm-card__jatte{font-size:1.3rem;letter-spacing:-.04em;}
  .sm-grid--kompakt .sm-card__rubrik--s{font-size:11px;line-height:1.25;}
  .sm-grid--kompakt .sm-card__txt{display:none;}

  /* Sidrutnätet tätare. */
  .sm-sidor{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;}
  .sm-sida{padding:6px 7px;border-radius:7px;}
  .sm-sida__kod{font-size:12px;}
  .sm-sida__vag{font-size:9px;}
  .sm-stats b,.sm-kpi b{font-size:18px;}
  .sm-stats > div,.sm-kpi > div{padding:10px 12px;}
  .sm-stats{grid-template-columns:repeat(2,minmax(0,1fr));}

  /* Värdegapet sida vid sida. */
  .sm-kontrast{flex-wrap:nowrap;gap:10px;}
  .sm-kontrast__tal{font-size:clamp(2rem,11vw,3rem);}
  .sm-kontrast__ar{font-size:1.5rem;}
  .sm-kontrast .sm-sub{font-size:11.5px;line-height:1.35;}

  .sm-citat-grid{grid-template-columns:1fr;gap:6px;}
  .sm-citat-kort{padding:10px 12px;font-size:14px;}
  .sm-signal__rad{padding:10px 12px;}
  .sm-signal__varde{font-size:16px;}
  .sm-budskap__rad{grid-template-columns:minmax(0,1fr) auto;padding:10px 12px;gap:8px;}
  .sm-budskap__bana{grid-column:1/-1;order:3;}
  .sm-budskap__rad q{font-size:14px;}
  .sm-rikt span{font-size:12px;}
  .sm-kalla{font-size:9px;letter-spacing:.08em;}
  .sm-opts{gap:6px;}
  /* "Klicka eller tryck Enter" hör inte hemma på en telefon — varningar gör. */
  .sm-app:not(.is-warn) .sm-hint{display:none;}
  .sm-app.is-next .sm-line--next{font-size:16px;}
  /* Enheten står redan i frågan — suffixet åt platshållarens plats. */
  .sm-suffix{display:none !important;}
  .sm-bar{padding-left:22px;gap:12px;}
}

/* ---------- Samtyckesrutan i samtalets färger (bara på /revision) ----------
   tf-instrument.css gör den ljus med !important för de ljusa sidorna. Här
   ligger den mörk, och på mobil som ett ark nederst så att samtalet syns. */
body.sm-body .tf-consent__backdrop{background:rgba(0,0,0,.66)!important;}
body.sm-body .tf-consent__panel{width:min(560px,100%)!important;background:#000!important;color:var(--sm-ink)!important;
  border:1px solid rgba(255,255,255,.2)!important;border-radius:20px!important;
  box-shadow:0 30px 80px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.14)!important;}
body.sm-body .tf-consent__kicker{color:var(--sm-teal)!important;}
body.sm-body .tf-consent__title{color:#fff!important;}
body.sm-body .tf-consent__lead{color:var(--sm-2)!important;}
body.sm-body .tf-consent__benefits span{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.14)!important;color:var(--sm-3)!important;}
body.sm-body .tf-consent__btn{background:#000!important;border:1px solid rgba(255,255,255,.22)!important;color:var(--sm-2)!important;border-radius:999px!important;}
body.sm-body .tf-consent__btn:hover{border-color:rgba(255,255,255,.6)!important;color:#fff!important;}
body.sm-body .tf-consent__btn--primary{background:var(--sm-teal)!important;border-color:var(--sm-teal)!important;color:#04221d!important;}
body.sm-body .tf-consent__btn--primary:hover{background:#4adbcf!important;color:#04221d!important;}
body.sm-body .tf-consent__btn--subtle{background:none!important;border-color:transparent!important;color:var(--sm-4)!important;}
body.sm-body .tf-consent__more{color:var(--sm-teal)!important;}
body.sm-body .tf-consent__details{border-top-color:rgba(255,255,255,.12)!important;}
body.sm-body .tf-consent__card{background:rgba(255,255,255,.04)!important;border-color:rgba(255,255,255,.12)!important;}
body.sm-body .tf-consent__card h3{color:#fff!important;}
body.sm-body .tf-consent__card p,body.sm-body .tf-consent__meta li{color:var(--sm-3)!important;}
@media (max-width:640px){
  body.sm-body .tf-consent{place-items:end center!important;padding:0!important;}
  body.sm-body .tf-consent__panel{border-radius:20px 20px 0 0!important;max-height:80vh!important;padding:18px 16px 20px!important;
    border-bottom:0!important;}
  body.sm-body .tf-consent__benefits{display:none!important;}
}
