/* Public check: the same paper, forest and type system as the marketing journey. */
@font-face{font-family:"Fraunces";src:url("/fonts/fraunces-var.woff2") format("woff2");font-weight:500 600;font-style:normal;font-display:swap}
@font-face{font-family:"Source Sans 3";src:url("/fonts/source-sans-3-var.woff2") format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
:root{color-scheme:light;--bg:#FBF8F1;--surface:#fff;--surface2:#F1EBDD;--line:#E2DAC8;--line2:#C9BFA8;--text:#26211A;--muted:#5E5747;--accent:#2E5C41;--accent-ink:#fff;--good:#1F6B3E;--bad:#A63D1F;--sans:"Source Sans 3",system-ui,"Segoe UI",sans-serif;--serif:"Fraunces",Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--text);font:18px/1.6 var(--sans);overflow-wrap:anywhere;-webkit-font-smoothing:antialiased}
[hidden]{display:none!important}button,input,select,textarea{font:inherit}a{color:var(--accent);text-underline-offset:.2em}a:hover{text-decoration-thickness:2px}
h1,h2{font-family:var(--serif);font-weight:500;line-height:1.2}p{margin:0 0 16px}
:where(a,button,input,select,summary,[tabindex]):focus-visible{outline:3px solid #7D5E20;outline-offset:4px}
.wrap{max-width:1120px;margin:auto;padding:0 24px}.site-header{padding:18px 0;border-bottom:1px solid var(--line)}
.logo{font:600 28px/1.2 var(--serif);letter-spacing:-.03em;color:var(--accent)!important}.logo .dot{color:#7D5E20}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--accent);color:white;padding:12px 18px;z-index:100}.skip-link:focus{left:16px}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.eyebrow{display:block;font-size:12px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:#7D5E20}
.muted{color:var(--muted)}label{display:block;margin-bottom:6px;font-size:16px;font-weight:600}
:where(input[type=text],input[type=email],input[type=tel],input[type=url],input[type=number],select){width:100%;min-width:0;min-height:48px;padding:11px 13px;background:white;color:var(--text);border:1px solid var(--line2);border-radius:9px;font-size:16px}
input::placeholder{color:var(--muted);opacity:1}
.btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:48px;max-width:100%;padding:11px 20px;border:1px solid var(--accent);border-radius:10px;background:var(--accent);color:white;font-size:16px;font-weight:700;text-decoration:none;line-height:1.4;cursor:pointer;text-align:center}
.btn:hover{background:#1F4933}.btn.soft{background:transparent;color:var(--accent);border-color:var(--line2)}.btn.soft:hover{background:var(--surface2)}.btn:disabled{opacity:.65;cursor:wait}
summary{cursor:pointer;min-height:44px;padding:10px 0;font-weight:650;font-size:16px}.check-disclosure{border-top:1px solid var(--line);margin-top:16px;padding-top:6px}
.check-disclosure p{font-size:16px}.check-disclosure[open]>summary{margin-bottom:12px}
.check-cut{max-width:760px;margin:28px auto;padding:32px;background:white;border:1px solid var(--line);border-radius:20px}
.check-result-actions{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}
.score-context{font-size:15px;color:var(--muted)}
.site-footer{max-width:1060px;margin:48px auto 24px;padding:24px;border-top:1px solid var(--line);text-align:center}
.site-footer nav{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 20px;margin:12px 0;font-size:15px}
.check-signature{font:500 21px/1.4 var(--serif);color:var(--accent)}
.thinking{display:none;align-items:center;gap:10px;color:var(--muted);font-size:16px;margin:16px 0}.thinking.on{display:flex}
.dots{display:flex;gap:3px;flex:none}.dots i{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:pulse 1s infinite}.dots i:nth-child(2){animation-delay:.2s}.dots i:nth-child(3){animation-delay:.4s}@keyframes pulse{50%{opacity:.3}}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--accent);color:white;border-radius:10px;padding:12px 18px;max-width:90vw;opacity:0;pointer-events:none;z-index:50;font-size:16px}.toast.on{opacity:1}
#checkError,#leadError{padding:14px;border-left:3px solid var(--bad);background:#fff3ee;color:#73301e}
#candidateZeile .btn{display:block;width:100%;margin:8px 0;text-align:left;justify-content:flex-start}
  .nav{display:flex;justify-content:space-between;align-items:center;padding:4px 0 0}
  .nav .links{display:flex;gap:18px;align-items:center;font-size:14px}
  .nav a{text-decoration:none;color:var(--muted)}
  .check-mobile-menu{display:none}
  @media(max-width:600px){
    .nav{display:flex;align-items:center;flex-wrap:nowrap}
    .nav .links{display:none}
    .check-mobile-menu{display:block;position:relative;flex:none}
    .check-mobile-menu summary{display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;cursor:pointer;font-size:14px;font-weight:700;list-style:none}
    .check-mobile-menu summary::-webkit-details-marker{display:none}
    .check-mobile-menu summary::after{content:"+";color:var(--accent)}
    .check-mobile-menu[open] summary::after{content:"−"}
    .check-mobile-menu .check-menu-links{position:absolute;z-index:30;right:0;top:calc(100% + 8px);width:min(21rem,calc(100vw - 32px));padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 34px rgba(0,0,0,.24)}
    .check-mobile-menu .check-menu-links a{display:flex;align-items:center;min-height:44px;padding:10px 12px;color:var(--text);border-radius:8px}
    .check-mobile-menu .check-menu-links a:hover{background:var(--surface2)}
  }
  .hero{text-align:center;max-width:62ch;margin:38px auto 8px}
  .hero h1{font-size:clamp(25px,4.5vw,36px);margin:0 0 12px;letter-spacing:-.01em;text-wrap:balance;line-height:1.2}
  .hero p{color:var(--muted);font-size:15px;line-height:1.6}
  .box{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:26px;max-width:640px;margin:22px auto}
  .srow{display:flex;gap:10px}
  .srow input{flex:1}
  .thinking{justify-content:center}

  /* Stufe 1: Score */
  .stufe{display:none}
  .stufe.on{display:block;animation:auf .45s ease}
  @keyframes auf{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
  @media(prefers-reduced-motion:reduce){.stufe.on{animation:none}}
  .score-head{text-align:center;margin:18px 0 6px}
  .ring{width:150px;height:150px;margin:0 auto 10px;position:relative}
  .ring svg{transform:rotate(-90deg)}
  .ring .val{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
             font-size:38px;font-weight:800;font-variant-numeric:tabular-nums}
  .ring .val small{font-size:14px;color:var(--muted);font-weight:600;margin-left:2px}
  .verdict{font-size:16px;font-weight:800;margin:2px 0 0}
  .bizline{color:var(--muted);font-size:12.5px;margin:4px 0 0}
  .item{display:flex;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);font-size:13.5px;text-align:left}
  .item .ic{flex:0 0 20px;font-weight:800}
  .item .ic.ok{color:var(--good)} .item .ic.no{color:var(--bad)} .item .ic.unknown{color:var(--muted)}
  .item .hint{color:var(--muted);font-size:12.5px;margin-top:3px;line-height:1.5}
  .item .pts{margin-left:auto;color:var(--muted);font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}
  /* Mangel → Optimalfall → Nutzen: der Wirt soll nicht nur sehen, WAS fehlt,
     sondern wie es aussieht, wenn es stimmt, und was ihm das bringt. */
  .detail{margin-top:8px;border-left:2px solid var(--line2);padding-left:12px}
  .detail .zeile{margin-bottom:7px;font-size:12.5px;line-height:1.55}
  .detail .kopf{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
                display:block;margin-bottom:2px}
  .detail .soll .kopf{color:var(--good)}
  .detail .nutz .kopf{color:var(--accent)}
  .detail .tun .kopf{color:var(--muted)}
  .detail .zeile span:not(.kopf){color:var(--text)}
  .detail .tun span:not(.kopf){color:var(--muted)}
  .top3{background:linear-gradient(150deg,rgba(228,163,60,.13),rgba(228,163,60,.04));
        border:1px solid rgba(228,163,60,.45);border-radius:14px;padding:18px;margin:18px 0}
  .top3 ol{margin:10px 0 0;padding-left:20px;font-size:13.5px;line-height:1.7}
  .top3 li{margin-bottom:6px}
  .top3 li b{color:var(--text)}

  /* Stufe 2: Umfeld */
  .umfeld{background:var(--surface2);border:1px solid var(--line2);border-radius:14px;padding:16px 18px;margin-top:18px}
  .umfeld .zahl{font-size:26px;font-weight:800;color:var(--accent);font-variant-numeric:tabular-nums}

  /* Stufe 3: Verlust */
  .rechner{margin-top:16px}
  .rechner label{display:block;font-size:13px;font-weight:600;margin-bottom:8px}
  .slider-row{display:flex;gap:14px;align-items:center}
  input[type=range]{flex:1;accent-color:var(--accent)}
  .umsatz-val{font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:110px;text-align:right}
  /* Gewinngerahmt (grün), nicht Verlust (rot): O'Keefe & Jensen zeigen keinen Vorteil
     für Verlustframing – Gewinnframing erzeugt sogar leicht mehr Engagement. */
  .verlust-box{background:linear-gradient(150deg,rgba(111,191,143,.13),rgba(111,191,143,.04));
               border:1px solid rgba(111,191,143,.4);border-radius:14px;padding:20px;margin-top:16px;text-align:center}
  .verlust-box .gross{font-size:30px;font-weight:800;color:var(--good);font-variant-numeric:tabular-nums;margin:4px 0}
  .verlust-box .klein{font-size:13px;color:var(--muted)}
  .verlust-box.warnung{background:linear-gradient(150deg,rgba(228,163,60,.14),rgba(228,163,60,.04));
                       border-color:rgba(228,163,60,.5);text-align:left}
  .verlust-box.warnung .gross{font-size:15px;color:var(--accent);font-weight:700;line-height:1.5;margin:0}
  .fussnote{font-size:11px;color:var(--muted);line-height:1.55;margin-top:12px;text-align:left}
  .gegen{background:var(--surface2);border-radius:10px;padding:12px 14px;margin-top:14px;font-size:13.5px}
  .gegen b{color:var(--good)}

  /* Stufe 4: Soll */
  .soll{background:linear-gradient(150deg,rgba(111,191,143,.12),rgba(111,191,143,.03));
        border:1px solid rgba(111,191,143,.4);border-radius:14px;padding:20px;margin-top:18px;text-align:center}

  /* Stufe 5: Ausgänge */
  .exits{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}
  @media(max-width:640px){.exits{grid-template-columns:1fr}}
  .exit{background:var(--surface2);border:1.5px solid var(--line2);border-radius:14px;padding:18px;text-align:left}
  .exit.stark{border-color:var(--accent)}
  .exit b{display:block;font-size:14.5px;margin-bottom:4px}
  .exit p{margin:0 0 12px;font-size:12.5px;color:var(--muted);line-height:1.5}
  .exit input{margin-bottom:8px}
  .consent{display:flex;gap:8px;align-items:flex-start;font-size:11px;color:var(--muted);
           line-height:1.45;margin:6px 0 10px;cursor:pointer}
  .consent input{width:auto;margin:2px 0 0;flex:0 0 auto}
  .kapazitaet{font-size:12.5px;color:var(--muted);text-align:center;margin-top:16px}
  .kapazitaet b{color:var(--accent)}
  .danke{display:none;background:rgba(111,191,143,.12);border:1px solid rgba(111,191,143,.45);
         color:var(--good);border-radius:12px;padding:14px 16px;font-size:14px;margin-top:14px}
  .danke.on{display:block}

/* Compact cuts; optional detail never precedes the main finding or next action. */
.nav .links{gap:16px}.nav .links .btn{color:white}.nav a[aria-current]{text-decoration:underline}
.hero{max-width:650px;margin:38px auto 26px;text-align:left}.hero h1{font-size:clamp(30px,4.6vw,44px);font-weight:500;margin:10px 0 14px;line-height:1.15}.hero p{font-size:17px}
.box{max-width:760px;padding:28px;margin:0 auto 28px;box-shadow:0 6px 28px #14231b08}
.box>.srow+p{margin-top:14px}.box>.muted,#websiteHinweis{font-size:14px!important}
.score-head{text-align:left;display:flow-root}.ring{float:right;margin:0 0 16px 24px;width:112px;height:112px}.ring svg{width:112px;height:112px}.ring .val{font-size:32px}
.verdict{font:500 clamp(25px,3.5vw,34px)/1.2 var(--serif);margin:0 0 12px}.bizline{font-size:15px;line-height:1.6}
.item{font-size:16px;gap:10px}.item>span:nth-child(2){min-width:0}.item .hint{font-size:14px}.item .pts{font-size:13px}.detail .zeile{font-size:15px}.detail .kopf{font-size:11px}
.detail .soll{background:none;border:0;padding:0;text-align:left}.top3{background:#F8F1DF;border-color:var(--line)}.top3 ol{font-size:16px}
.umfeld{padding:0;border:0;border-top:1px solid var(--line);border-radius:0;background:none}.umfeld .zahl{font-size:24px}
.exit{background:var(--bg);padding:20px}.exit b{font-size:20px}.exit p{font-size:16px}.consent{font-size:14px}.consent input{margin-top:5px}
.soll{background:var(--bg);border-color:var(--line);text-align:left;margin:0}.fussnote{font-size:14px}.kapazitaet{font-size:15px}
#s2 h2,#s4 h2{font:500 28px/1.2 var(--serif)!important}#s2 .muted,#exitIntro{font-size:16px!important}#s2 hr,#s4 hr{display:none}
#personalisierungFreigabe{max-width:none;margin-top:16px}#personalisierungFreigabe p,#personalisierungStatus{font-size:15px!important}
#communicationPreferences{padding:0!important;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;font-size:16px}
#communicationPreferences summary{font-size:15px}#communicationPreferences table{display:block;overflow-x:auto;font-size:14px}
@media(max-width:900px){.nav .links{display:none}.check-mobile-menu{display:block;position:relative}.check-mobile-menu summary{border:1px solid var(--line);border-radius:9px;padding:8px 12px}.check-menu-links{position:absolute;right:0;z-index:30;min-width:230px;background:white;padding:12px;border:1px solid var(--line);border-radius:12px}.check-menu-links a{display:block;min-height:44px;padding:9px}}
@media(max-width:600px){.wrap{padding:0 16px}.site-header{padding:14px 0}.logo{font-size:25px}.hero{margin:26px auto 22px}.hero h1{font-size:30px}.hero p{font-size:16px}.box,.check-cut{padding:20px;border-radius:16px}.check-cut{margin:20px auto}.srow{flex-direction:column}.srow .btn{width:100%}.ring{width:90px;height:90px;margin-left:12px}.ring svg{width:90px;height:90px}.ring .val{font-size:26px}.ring .val small{font-size:11px}.item{flex-wrap:wrap}.item .pts{margin-left:30px}.check-result-actions{display:grid}.score-context{clear:both}.slider-row{flex-wrap:wrap}.site-footer{padding:24px 16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.stufe.on,.dots i{animation:none}.ring circle{transition:none!important}}
