/* Versicherungsoptimierung.de — Quick-Check, Upload, KI-Ergebnis (ergänzt style.css) */
[hidden]{display:none!important}

.skip{position:absolute;left:-9999px;top:0;background:var(--mint);color:var(--mint-ink);padding:10px 16px;z-index:100;border-radius:0 0 8px 0;font-weight:700}
.skip:focus{left:0}
.btn[disabled]{opacity:.4;cursor:not-allowed}
.btn-wa{background:#1FAF54;color:#fff}
.btn-wa:hover{background:#18934A;color:#fff}

/* Bereich */
.check-sec{background:var(--frost);padding:88px 0 80px;scroll-margin-top:76px}
.check-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:start}
.check-intro h2{font-size:clamp(30px,3.4vw,46px)}
.check-intro p{margin-top:16px;font-size:18px;line-height:1.6;color:var(--mute)}
.check-intro .facts-mini{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:10px;font-size:16px}
.check-intro .facts-mini li{display:flex;gap:10px;align-items:baseline}
.check-intro .facts-mini svg{flex:none;position:relative;top:3px}

/* Karte */
.funnel{scroll-margin-top:92px;background:var(--white);border:1px solid var(--line);border-radius:22px;box-shadow:0 30px 60px -36px rgba(13,49,52,.45);padding:28px 32px 32px;position:relative}
.f-top{display:flex;align-items:center;justify-content:space-between;min-height:32px;margin-bottom:12px}
.f-back{display:inline-flex;align-items:center;gap:6px;background:none;border:0;color:var(--mute);font:600 15px var(--sans);cursor:pointer;padding:8px 8px 8px 0;min-height:40px}
.f-back:hover{color:var(--ink)}
.f-count{margin-left:auto;font-size:14px;font-weight:600;color:var(--mute)}
.f-progress{height:6px;background:var(--frost);border-radius:3px;overflow:hidden;margin-bottom:26px}
.f-progress span{display:block;height:100%;width:8%;background:var(--pet);border-radius:3px;transition:width .35s ease}
.fstep h3{font-size:clamp(23px,2.4vw,30px);font-weight:800;font-stretch:115%;margin:0 0 8px;letter-spacing:-.02em}
.f-hint{color:var(--mute);margin:0 0 18px;font-size:16px}
.fstep > h3 + .opts{margin-top:20px}
.f-noscript{background:#FFF6D6;border:1px solid #EBCB6B;border-radius:12px;padding:14px 16px;color:#6B4E05}

/* Antwortkacheln */
.opts{display:grid;gap:10px;margin-bottom:22px}
.opts.grid-2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.opt{display:flex;flex-direction:column;justify-content:center;gap:2px;text-align:left;width:100%;background:var(--white);border:2px solid var(--line);border-radius:14px;
  padding:14px 18px;font:16px var(--sans);color:var(--ink);cursor:pointer;transition:border-color .12s,background .12s;min-height:66px}
.opt:hover{border-color:var(--pet)}
.opt b{display:block;font-size:17.5px;font-weight:700}
.opt small{display:block;color:var(--mute);font-size:14px}
.opt.row{min-height:58px}
.opt.sel{border-color:var(--pet);background:var(--pet);color:#F4FBF8}
.opt.sel small{color:var(--on-dark-3)}
.opt-none{border-style:dashed}
.fstep[data-type="multi"] .opt{position:relative;padding-right:52px}
.fstep[data-type="multi"] .opt::after{content:"";position:absolute;right:16px;top:50%;width:22px;height:22px;margin-top:-11px;border:2px solid #A9C3BB;border-radius:6px;background:#fff}
.fstep[data-type="multi"] .opt.sel::after{border-color:var(--mint);background:var(--mint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12l5 5L20 6' fill='none' stroke='%23062A1E' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/15px no-repeat}
.f-next{min-width:190px}
.f-wide{width:100%}
.linkbtn{display:block;margin:12px auto 0;background:none;border:0;color:var(--mute);font:600 15px var(--sans);text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:10px;min-height:44px}
.linkbtn:hover{color:var(--ink)}

/* Erste Einschätzung */
.res-kicker{font-size:15px;font-weight:600;color:var(--mute);margin:0 0 10px}
.res-head{margin-bottom:18px}
.meter{display:flex;gap:4px;margin:0 0 16px;max-width:360px}
.meter span{flex:1;height:10px;border-radius:5px;background:var(--frost)}
.meter[data-level="1"] span:nth-child(1){background:var(--z-lime)}
.meter[data-level="2"] span:nth-child(-n+2){background:var(--z-amber)}
.meter[data-level="3"] span{background:var(--z-red)}
.meter-legend{display:flex;justify-content:space-between;max-width:360px;font-size:13px;color:var(--mute);margin:-10px 0 16px}
.res-head h3{margin:0 0 4px}
.res-sub{margin:0;color:var(--mute);font-size:15px}
.reasons{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:0;border-top:1px solid var(--line)}
.reasons li{padding:12px 0 12px 30px;border-bottom:1px solid var(--line);font-size:16px;position:relative}
.reasons li::before{content:"";position:absolute;left:2px;top:17px;width:14px;height:14px;border-radius:50%;border:2.5px solid var(--red)}
.res-box{background:var(--frost);border-radius:14px;padding:16px 18px;font-size:16px;margin-bottom:20px}

/* Upload */
.drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;border:2px dashed #9DC2B9;border-radius:18px;
  background:var(--paper);padding:32px 18px;cursor:pointer;transition:.12s;position:relative}
.drop:hover,.drop.over{border-color:var(--pet);background:var(--frost)}
.drop input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.d-main{font-size:17px}
.d-sub{font-size:14px;color:var(--mute)}
.files{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:8px}
.files li{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-size:15px}
.files .f-ic{flex:none;width:36px;height:36px;border-radius:9px;background:var(--frost);color:var(--pet);display:flex;align-items:center;justify-content:center;font:700 11px var(--sans)}
.files .f-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
.files .f-size{color:var(--mute);font-size:14px;white-space:nowrap}
.files .f-del{background:none;border:0;color:var(--mute);font-size:22px;line-height:1;cursor:pointer;padding:6px 10px;border-radius:8px;min-width:40px;min-height:40px}
.files .f-del:hover{color:var(--red);background:#FBEDEB}
.f-err{color:#A9271E;font-size:15px;margin:10px 0 0}
.f-err:empty{display:none}
.secure{display:flex;align-items:center;gap:8px;color:var(--mute);font-size:14px;margin:14px 0 20px}

/* Kontakt */
.fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-bottom:18px}
.fld{display:flex;flex-direction:column;gap:6px;font-size:15px;font-weight:700}
.fld.full{grid-column:1/-1}
.fld em{font-style:normal;font-weight:400;color:var(--mute)}
.fld input{font:17px var(--sans);padding:14px 15px;border:2px solid var(--line);border-radius:12px;color:var(--ink);background:#fff;min-height:52px}
.fld input:focus{border-color:var(--pet);outline:none;box-shadow:0 0 0 3px rgba(61,219,164,.45)}
.fld input.bad{border-color:var(--red)}
.chk{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;color:var(--mute);margin:0 0 12px;cursor:pointer;line-height:1.55}
.chk input{flex:none;width:22px;height:22px;margin-top:1px;accent-color:var(--pet)}
.chk.bad span{color:#A9271E}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.fine{text-align:center;color:var(--mute);font-size:14px;margin:12px 0 0}
#submitBtn.loading{pointer-events:none;opacity:.85}
#submitBtn.loading::after{content:"";width:16px;height:16px;border:2.5px solid rgba(6,42,30,.3);border-top-color:var(--mint-ink);border-radius:50%;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* Danke */
.fdone{text-align:center}
.done-ic{width:64px;height:64px;border-radius:50%;background:var(--pet);display:flex;align-items:center;justify-content:center;margin:4px auto 16px}
.done-ic svg path{stroke:var(--mint)}
.timeline{list-style:none;text-align:left;margin:24px auto 26px;padding:0;max-width:460px;counter-reset:tl}
.timeline li{position:relative;padding:0 0 18px 46px;counter-increment:tl}
.timeline li::before{content:counter(tl);position:absolute;left:0;top:0;width:30px;height:30px;border-radius:50%;background:#fff;border:2px solid var(--line);
  color:var(--mute);font:700 14px var(--sans);display:flex;align-items:center;justify-content:center}
.timeline li::after{content:"";position:absolute;left:14px;top:32px;bottom:2px;width:2px;background:var(--line)}
.timeline li:last-child::after{display:none}
.timeline li.ok::before{content:"✓";background:var(--pet);border-color:var(--pet);color:var(--mint)}
.timeline b{display:block;font-size:16.5px}
.timeline span{color:var(--mute);font-size:15px}
.preview-note{background:#FFF6D6;border:1px solid #EBCB6B;color:#6B4E05;border-radius:10px;padding:8px 12px;font-size:14px;display:inline-block}
.share{border-top:1px solid var(--line);padding-top:22px;margin-top:6px}
.share p{color:var(--mute);margin:0 0 14px}
.share p b{color:var(--ink)}
.share-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.check-trust{color:var(--mute);font-size:14px;margin:22px 0 0}

/* KI-Ergebnis */
.ki-box{margin:20px 0 8px;text-align:left}
.ki-wait{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;background:var(--frost);border-radius:16px;padding:24px 18px}
.ki-wait small{color:var(--mute);font-size:14px}
.spin{width:30px;height:30px;border:3px solid var(--line);border-top-color:var(--pet);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:6px}
.ki-res .scale-card{width:100%;max-width:none;margin:0}
.ki-res .scale-pin{transition:left .9s ease}
.ki-contracts{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:0;border-top:1px solid var(--line)}
.ki-contracts li{display:flex;justify-content:space-between;gap:12px;padding:10px 2px;border-bottom:1px solid var(--line);font-size:15.5px}
.ki-contracts b{font-variant-numeric:tabular-nums}
.ki-more{font-size:14px;color:var(--mute);margin:10px 0 0}
.ki-note{font-size:14px;color:var(--mute);margin:14px 0 0}
.ki-fallback{background:var(--frost);border-radius:14px;padding:16px;font-size:16px}

/* Sticky-CTA mobil */
.sticky-cta{display:none}

@media (max-width:960px){
  .check-layout{grid-template-columns:minmax(0,1fr);gap:32px}
  .sticky-cta{display:block;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:10px 16px calc(10px + env(safe-area-inset-bottom));
    background:rgba(13,49,52,.96);border-top:1px solid var(--pet3);transform:translateY(110%);transition:transform .25s ease}
  .sticky-cta.show{transform:none}
  .sticky-cta .btn{width:100%}
  .site-footer{padding-bottom:100px}
}
@media (max-width:640px){
  .check-sec{padding:56px 0}
  .funnel{padding:20px 16px 24px;border-radius:18px}
  .opts.grid-2{grid-template-columns:minmax(0,1fr)}
  .opt{min-height:60px;padding:12px 16px}
  .fields{grid-template-columns:minmax(0,1fr)}
  .f-next{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .f-progress span,.ki-res .scale-pin{transition:none}
}
