/* HinausHaus – Werkzeuge */
.hh-tool{font-family:var(--hh-schrift);color:var(--hh-text);display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(20px,3vw,40px);align-items:start;min-height:320px}
.hh-tool[data-hh-kompakt]{grid-template-columns:minmax(0,4fr) minmax(0,8fr)}
.hh-er-eingaben{background:#fff;border-radius:var(--hh-r3);padding:clamp(18px,2.4vw,28px);display:grid;gap:18px}
.hh-er-feld{display:grid;gap:8px}
.hh-er-label{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--hh-leise);margin:0}
.hh-tool select{width:100%;min-height:48px;border:2px solid var(--hh-linie);border-radius:14px;padding:0 14px;font:600 16px var(--hh-schrift);color:var(--hh-tinte);background:#fff}
.hh-tool select:focus,.hh-er-chip:focus-visible,.hh-tool input:focus-visible{outline:3px solid var(--hh-sonne);outline-offset:2px}
.hh-er-wahl{display:flex;flex-wrap:wrap;gap:8px}
.hh-er-chip{font:600 15px var(--hh-schrift);color:var(--hh-tinte);background:#fff;border:2px solid var(--hh-linie);border-radius:14px;padding:10px 14px;min-height:46px;cursor:pointer;text-align:left;transition:border-color .15s,background .15s,transform .15s}
.hh-er-chip:hover{border-color:var(--hh-wiese);transform:translateY(-1px)}
.hh-er-chip.hh-an{border-color:var(--hh-blatt);background:var(--hh-minze)}
.hh-er-chip b{display:block;font-weight:800} .hh-er-chip small{display:block;font-weight:500;font-size:13px;color:var(--hh-leise)}
.hh-er-regler{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center;font-size:15px;font-weight:600;color:var(--hh-tinte)}
.hh-er-regler input{grid-column:1/-1;width:100%;accent-color:var(--hh-blatt);height:28px}
.hh-er-regler output{font-weight:800;grid-row:1;grid-column:2}
.hh-er-fin{display:grid;gap:12px;background:var(--hh-sand);border-radius:16px;padding:16px}
.hh-er-ergebnis{display:grid;gap:16px}
.hh-er-kopf{background:linear-gradient(150deg,#FFE48A 0%,var(--hh-sonne) 55%,#F3B31A 100%);border-radius:var(--hh-r3);padding:clamp(20px,2.6vw,32px);display:grid;gap:8px;color:var(--hh-tinte)}
.hh-er-kopf span{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.hh-er-kopf strong{font-size:clamp(20px,2.2vw,28px);font-weight:600;line-height:1.2;letter-spacing:-.02em}
.hh-er-kopf strong b{font-weight:800;font-size:1.25em;white-space:nowrap}
.hh-er-kopf small{font-size:14.5px}
.hh-er-drei{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.hh-er-szen{background:#fff;border-radius:var(--hh-r2);padding:18px;display:grid;gap:2px;border-top:6px solid var(--hh-linie)}
.hh-er-szen.hh-s1{border-color:var(--hh-holz)} .hh-er-szen.hh-s2{border-color:var(--hh-wiese)} .hh-er-szen.hh-s3{border-color:var(--hh-sonne)}
.hh-er-szen span{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--hh-leise)}
.hh-er-szen b{font-size:clamp(20px,2vw,26px);font-weight:800;letter-spacing:-.03em;color:var(--hh-tinte);margin-top:6px}
.hh-er-szen i{font-style:normal;font-weight:700;font-size:18px;color:var(--hh-blatt);margin-top:10px} .hh-er-szen i.hh-minus{color:#B4532A}
.hh-er-szen small{font-size:12.5px;color:var(--hh-leise);line-height:1.3}
.hh-er-zeile{display:flex;justify-content:space-between;gap:16px;align-items:baseline;background:#fff;border-radius:14px;padding:14px 18px;font-size:15.5px}
.hh-er-zeile b{font-weight:800;color:var(--hh-tinte);white-space:nowrap}
.hh-er-monate{display:grid;grid-template-columns:repeat(12,1fr);gap:6px;align-items:end;height:150px;background:#fff;border-radius:var(--hh-r2);padding:16px 14px 10px}
.hh-er-monate div{display:grid;grid-template-rows:1fr auto;height:100%;gap:6px;justify-items:center}
.hh-er-monate i{align-self:end;width:100%;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,var(--hh-fruehling),var(--hh-wiese));transition:height .5s var(--hh-weich)}
.hh-er-monate span{font-size:11.5px;color:var(--hh-leise)}
.hh-er-hinweis{font-size:13.5px;line-height:1.5;color:var(--hh-leise);margin:0;border-left:4px solid var(--hh-sonne);padding-left:14px}
.hh-er-hinweis b{color:var(--hh-tinte)}
.hh-er-mehr{font-weight:700;color:var(--hh-blatt);text-underline-offset:3px}
@media (max-width:900px){.hh-tool,.hh-tool[data-hh-kompakt]{grid-template-columns:1fr}.hh-er-drei{grid-template-columns:1fr}}

/* Konfigurator */
.hh-kf-klein{display:block;font-size:12.5px;font-weight:500;color:var(--hh-leise);line-height:1.35}
.hh-er-zeile span{display:grid;gap:2px}
.hh-er-abzuege{display:grid;gap:3px}
.hh-er-abzuege .hh-er-zeile{padding:9px 16px;font-size:14.5px;border-radius:10px}
.hh-er-abzuege .hh-er-summe{background:var(--hh-sonne-hell);font-weight:700}
.hh-kf-offen b{font-weight:600;color:var(--hh-leise)}
.hh-kf-laufend{background:var(--hh-minze)}
.hh-kf-bild{margin:0}
.hh-kf-bild img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--hh-r3);display:block}
.hh-kf-bild figcaption{font-size:12px;color:var(--hh-leise);margin-top:6px}
.hh-kf-tipp{margin:0;background:var(--hh-sonne-hell);border-radius:14px;padding:12px 16px;font-size:14.5px;line-height:1.45}
.hh-kf-aktionen{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center}
.hh-tool button.hh-kf-haupt{background:var(--hh-sonne);color:var(--hh-tinte);box-shadow:0 6px 0 -2px var(--hh-sonne-dunkel);cursor:pointer}
.hh-tool button.hh-kf-haupt:hover{background:#FFD24F;transform:translateY(-2px)}
.hh-kf-nurdruck{display:none}
/* Druck: Der Knopf legt eine Kopie des Ergebnisses als eigenes Blatt direkt unter body (hh.js, HHDrucken).
   Gedruckt wird nur dieses Blatt. Ohne den Knopf (Strg+P) druckt die Seite wie gewohnt. */
.hh-druckblatt{display:none}
@media print{
  html.hh-druckt,html.hh-druckt body{background:#fff!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important}
  html.hh-druckt body>*:not(.hh-druckblatt){display:none!important}
  html.hh-druckt .hh-druckblatt{display:block!important;font-family:var(--hh-schrift);color:var(--hh-text);font-size:15px;line-height:1.5}
  .hh-druckblatt .hh-er-ergebnis{position:static!important;display:block;width:auto;max-width:none;padding:0;margin:0;top:auto}
  .hh-druckblatt .hh-er-ergebnis>*{margin:0 0 12px}
  .hh-druckblatt .hh-er-kopf,.hh-druckblatt .hh-so-kopf,.hh-druckblatt .hh-er-zeile,.hh-druckblatt .hh-so-punkt,.hh-druckblatt .hh-fp-punkt,.hh-druckblatt .hh-kf-bild,.hh-druckblatt .hh-kf-tipp,.hh-druckblatt .hh-er-hinweis,.hh-druckblatt .hh-so-klaeren,.hh-druckblatt .hh-fp-achse{break-inside:avoid;page-break-inside:avoid}
  .hh-druckblatt .hh-so-liste>*,.hh-druckblatt .hh-fp-liste>*{margin-bottom:8px}
  .hh-kf-aktionen{display:none!important}
  .hh-kf-nurdruck{display:block;font-weight:700;margin:0 0 8px}
  .hh-er-kopf{background:#FDF1C4!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .hh-er-zeile{border:1px solid #E6DFC9}
  .hh-kf-bild img{max-height:70mm;width:auto;max-width:100%}
  /* Das Theme setzt im Druck jeden Hintergrund auf durchsichtig. Farben, die etwas bedeuten, werden hier ausdrücklich gesetzt. */
  .hh-druckblatt .hh-fp-balken,.hh-druckblatt .hh-fp-balken i,.hh-druckblatt .hh-so-punkt>i,.hh-druckblatt .hh-so-zaehler i::before,.hh-druckblatt .hh-fp-punkt input,.hh-druckblatt .hh-kf-tipp{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .hh-druckblatt .hh-fp-balken{background:#EFE9D8!important}
  .hh-druckblatt .hh-fp-b1{background:var(--hh-holz)!important} .hh-druckblatt .hh-fp-b2{background:var(--hh-sonne)!important} .hh-druckblatt .hh-fp-b3{background:var(--hh-sonne-dunkel)!important}
  .hh-druckblatt .hh-fp-b4{background:var(--hh-wiese)!important} .hh-druckblatt .hh-fp-b5{background:var(--hh-blatt)!important} .hh-druckblatt .hh-fp-b6{background:var(--hh-tinte)!important}
  .hh-druckblatt .hh-fp-achse{padding:0 0 4px}
  .hh-druckblatt .hh-so-punkt>i,.hh-druckblatt .hh-so-zaehler i::before{background:#CFC8B4!important}
  .hh-druckblatt .hh-so-punkt.hh-so-gruen>i,.hh-druckblatt .hh-so-zaehler .hh-so-gruen::before{background:var(--hh-wiese)!important}
  .hh-druckblatt .hh-so-punkt.hh-so-gelb>i,.hh-druckblatt .hh-so-zaehler .hh-so-gelb::before{background:var(--hh-sonne-dunkel)!important}
  .hh-druckblatt .hh-so-punkt.hh-so-rot>i,.hh-druckblatt .hh-so-zaehler .hh-so-rot::before{background:#C8582B!important}
  .hh-druckblatt .hh-so-zaehler i{padding-left:0}
  .hh-druckblatt .hh-fp-punkt input:checked{background:var(--hh-blatt) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.5 9.4l3 3L13.5 6' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat!important}
  .hh-druckblatt .hh-kf-tipp{background:#FDF1C4!important}
  @page{margin:14mm}
}

/* Knöpfe dürfen umbrechen (das Theme setzt nowrap), Eingabespalte darf schrumpfen */
.hh-er-chip,.hh-tool button.hh-kf-haupt{white-space:normal}
.hh-er-eingaben,.hh-er-ergebnis,.hh-er-feld,.hh-er-wahl{min-width:0}
.hh-er-chip{max-width:100%}

/* Standort-Check */
.hh-so-frage{border-top:1px solid var(--hh-linie);padding-top:16px}
.hh-so-text{margin:0;font-size:16px;font-weight:600;line-height:1.4;color:var(--hh-tinte)}
.hh-so-ergebnis{align-self:stretch;align-content:start}
.hh-so-kopf{position:sticky;top:92px;z-index:2;box-shadow:0 10px 24px rgba(32,54,42,.10)}
.hh-so-kopf{border-radius:var(--hh-r3);padding:clamp(20px,2.6vw,30px);display:grid;gap:8px;color:var(--hh-tinte);background:#fff;border-left:10px solid var(--hh-linie)}
.hh-so-kopf>span{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--hh-leise)}
.hh-so-kopf strong{font-size:clamp(20px,2.2vw,28px);font-weight:800;line-height:1.2;letter-spacing:-.02em}
.hh-so-kopf small{font-size:14.5px;line-height:1.45}
.hh-so-kopf.hh-so-gruen{background:var(--hh-minze);border-color:var(--hh-wiese)}
.hh-so-kopf.hh-so-gelb{background:var(--hh-sonne-hell);border-color:var(--hh-sonne)}
.hh-so-kopf.hh-so-rot{background:#FBE5DA;border-color:#C8582B}
.hh-so-zaehler{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.hh-so-zaehler i{font-style:normal;font-size:13px;font-weight:700;border-radius:999px;padding:5px 12px;background:#fff}
.hh-so-zaehler i::before{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:7px;background:var(--hh-linie)}
.hh-so-zaehler .hh-so-gruen::before{background:var(--hh-wiese)} .hh-so-zaehler .hh-so-gelb::before{background:var(--hh-sonne-dunkel)} .hh-so-zaehler .hh-so-rot::before{background:#C8582B}
.hh-so-liste{display:grid;gap:8px}
.hh-so-punkt{display:grid;grid-template-columns:18px 1fr;gap:12px;align-items:start;background:#fff;border-radius:14px;padding:12px 16px}
.hh-so-punkt>i{width:14px;height:14px;border-radius:50%;margin-top:4px;background:var(--hh-linie)}
.hh-so-punkt.hh-so-gruen>i{background:var(--hh-wiese)} .hh-so-punkt.hh-so-gelb>i{background:var(--hh-sonne-dunkel)} .hh-so-punkt.hh-so-rot>i{background:#C8582B}
.hh-so-punkt b{color:var(--hh-tinte);font-weight:800;margin-right:8px}
.hh-so-punkt em{font-style:normal;font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--hh-leise)}
.hh-so-punkt.hh-so-rot em{color:#A8431C}
.hh-so-punkt span{display:block;font-size:14.5px;line-height:1.45;margin-top:3px}
.hh-so-punkt.hh-so-offen{background:transparent;padding:6px 16px}
.hh-so-klaeren{background:#fff;border-radius:var(--hh-r2);padding:16px 20px;font-size:14.5px;line-height:1.5}
.hh-so-klaeren b{color:var(--hh-tinte)}
.hh-so-klaeren ul{margin:8px 0 0;padding-left:18px;display:grid;gap:6px}
@media (max-width:900px){.hh-so-kopf{position:static;box-shadow:none}}
@media print{.hh-so-kopf{position:static;box-shadow:none}.hh-so-punkt{border:1px solid #E6DFC9}.hh-so-kopf{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

.hh .hh-so-punkt em,.hh-so-punkt em{font-family:var(--hh-schrift);font-style:normal;font-weight:700;color:var(--hh-leise);letter-spacing:.06em}
.hh .hh-so-punkt.hh-so-rot em{color:#A8431C}

/* Projektfahrplan */
.hh-fp-datum{display:grid;grid-template-columns:3fr 2fr;gap:8px}
.hh-fp-achse{background:#fff;border-radius:var(--hh-r2);padding:18px 18px 12px}
.hh-fp-balken{position:relative;height:26px;border-radius:999px;background:var(--hh-sand);overflow:hidden}
.hh-fp-balken i{position:absolute;top:0;bottom:0;border-right:2px solid #fff}
.hh-fp-b1,.hh-fp-p1>div>b::before{background:var(--hh-holz)} .hh-fp-b2{background:var(--hh-sonne)} .hh-fp-b3{background:var(--hh-sonne-dunkel)} .hh-fp-b4{background:var(--hh-wiese)} .hh-fp-b5{background:var(--hh-blatt)} .hh-fp-b6{background:var(--hh-tinte)}
.hh-fp-skala{display:flex;justify-content:space-between;font-size:12.5px;color:var(--hh-leise);margin-top:6px}
.hh-fp-liste{display:grid;gap:8px}
.hh-fp-punkt{display:grid;grid-template-columns:26px 1fr;gap:14px;align-items:start;background:#fff;border-radius:14px;padding:14px 16px;cursor:pointer;border-left:8px solid var(--hh-linie)}
.hh-fp-p1{border-color:var(--hh-holz)} .hh-fp-p2{border-color:var(--hh-sonne)} .hh-fp-p3{border-color:var(--hh-sonne-dunkel)} .hh-fp-p4{border-color:var(--hh-wiese)} .hh-fp-p5{border-color:var(--hh-blatt)} .hh-fp-p6{border-color:var(--hh-tinte)}
.hh-fp-punkt input{-webkit-appearance:none;appearance:none;width:24px;height:24px;border-radius:8px;border:2px solid var(--hh-wiese);background:#fff;margin:2px 0 0;cursor:pointer}
.hh-fp-punkt input:checked{border-color:var(--hh-blatt);background:var(--hh-blatt) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.5 9.4l3 3L13.5 6' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.hh-fp-punkt b{display:block;color:var(--hh-tinte);font-weight:800}
.hh .hh-fp-punkt em,.hh-fp-punkt em{display:block;font-family:var(--hh-schrift);font-style:normal;font-weight:600;font-size:14px;color:var(--hh-blatt-dunkel);margin-top:2px}
.hh-fp-punkt span{display:block;font-size:14px;line-height:1.45;color:var(--hh-leise);margin-top:4px}
.hh-fp-fertig{background:var(--hh-minze)} .hh-fp-fertig b{text-decoration:line-through;text-decoration-thickness:2px}
@media print{.hh-fp-punkt{border-top:1px solid #E6DFC9;border-bottom:1px solid #E6DFC9;border-right:1px solid #E6DFC9}.hh-fp-balken i{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
