/* Rechtsrahmen und Unterlagen-Check (Vorschauseiten, noindex) */
.fc-intro{padding-bottom:40px}.fc-intro h1{font-size:clamp(38px,4.2vw,60px)}.fc-intro .intro{max-width:760px;margin-top:22px}.fc-intro .quiet-note{max-width:760px;margin-top:14px}.fc-intro .hero-actions{margin-top:28px}

/* Rechtsrahmen-Seite */
.fc-types,.fc-docs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.fc-card{background:var(--white);border:1px solid var(--line);border-radius:8px;padding:26px;min-width:0}.fc-card h3{font-size:25px;margin:12px 0 10px;hyphens:auto;overflow-wrap:anywhere}.fc-card p{font-size:15px;color:var(--muted);margin-top:10px}
.fc-card a,.fc-law a,.fc-chron a,.fc-timeline a,.fc-boundary a{text-decoration:underline;text-underline-offset:4px;color:var(--green);overflow-wrap:anywhere}
.fc-card details{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.fc-card summary{font-size:14px;font-weight:600;cursor:pointer}
.fc-tag{display:inline-block;font-size:13px;line-height:1.5;letter-spacing:.02em;padding:3px 11px;background:var(--sage);border-radius:20px;color:var(--ink);vertical-align:middle;font-weight:400}.fc-tag.soft{background:#f1ede4;border:1px solid var(--line)}
.fc-for{font-size:13px!important}.fc-law{font-size:14px;color:var(--muted)}
.fc-timeline{list-style:none;padding:0;margin:0}.fc-timeline li{display:grid;grid-template-columns:110px 1fr;gap:24px;border-top:1px solid var(--line);padding:22px 0}.fc-timeline li:last-child{border-bottom:1px solid var(--line)}.fc-date{font:italic 20px var(--serif);color:var(--clay)}.fc-timeline h3{font-size:20px;line-height:1.35}.fc-timeline p{font-size:15px;color:var(--muted);margin-top:8px}.fc-meta{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.fc-subhead{font-size:26px;margin:40px 0 12px}
.fc-boundary{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin-top:34px;max-width:900px}

/* Unterlagen-Check: Rahmen und Fortschritt */
.fc-check{padding-bottom:70px}
.fc-form{max-width:980px;margin:0 auto}
.fc-progress{list-style:none;margin:0 0 34px;padding:0;display:flex;align-items:center;gap:12px}
.fc-progress li{display:flex;align-items:center;gap:10px;font-size:15px;color:var(--muted);white-space:nowrap}
.fc-progress li+li::before{content:'';display:block;width:clamp(24px,8vw,120px);height:2px;background:var(--line);margin-right:2px}
.fc-progress li.is-done+li::before{background:var(--green)}
.fc-progress li span{width:30px;height:30px;border-radius:50%;border:1.5px solid #c7cfc3;display:grid;place-items:center;font-size:15px;box-sizing:border-box;background:var(--paper)}
.fc-progress li[aria-current]{color:var(--ink);font-weight:600}.fc-progress li[aria-current] span{border:2px solid var(--green);color:var(--green);background:var(--white)}
.fc-progress li.is-done span{background:var(--green);border-color:var(--green);color:transparent;position:relative}.fc-progress li.is-done span::after{content:'✓';position:absolute;inset:0;display:grid;place-items:center;color:var(--white)}

.fc-step{border:0;margin:0;padding:0;min-width:0}
.fc-step>legend,.fc-step>h2{font:400 clamp(30px,3.4vw,42px)/1.15 var(--serif);margin:0 0 10px;padding:0;float:left;width:100%}
.fc-step>legend+*{clear:both}
.fc-help{font-size:16px;color:var(--muted);margin:0 0 22px;max-width:680px}
.fc-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;clear:both}.fc-head .fc-help{margin-bottom:24px}
.fc-count{font-size:15px;color:var(--muted);white-space:nowrap;margin:0 0 24px}
.fc-kicker{font-size:13px;letter-spacing:.08em;color:var(--muted);margin:0 0 4px}

/* Auswahlknöpfe: gleich große Segmente */
.fc-seg{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:8px;margin:0;max-width:640px}
.fc-seg-opt{position:relative;display:block;margin:0;cursor:pointer}
.fc-form .fc-seg-opt input{position:absolute;inset:0;width:100%;height:100%;min-height:0;max-width:none;max-height:none;margin:0;padding:0;border:0;opacity:0;cursor:pointer;-webkit-appearance:none;appearance:none}
.fc-seg-opt span{display:flex;align-items:center;justify-content:center;text-align:center;min-height:46px;padding:6px 10px;border:1.5px solid #c7cfc3;border-radius:8px;background:var(--white);font-size:15px;line-height:1.25;transition:background .15s,border-color .15s,color .15s}
.fc-seg-opt:hover span{border-color:var(--green)}
.fc-seg-opt input:checked+span{background:var(--green);border-color:var(--green);color:var(--white);font-weight:600}
.fc-seg-opt input:focus-visible+span{outline:3px solid var(--clay);outline-offset:3px}

/* Schritt 1: Einrichtungsart */
.fc-choice{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;clear:both}
.fc-choice.fc-missing{outline:2px solid var(--clay);outline-offset:8px;border-radius:12px}
.fc-type{background:var(--white);border:1.5px solid var(--line);border-radius:12px;display:flex;flex-direction:column;transition:border-color .15s,box-shadow .15s}
.fc-type:hover{border-color:#9fb0a5}
.fc-type:has(input:checked){border:2px solid var(--green);box-shadow:0 0 0 4px var(--sage)}
.fc-type>label{position:relative;display:flex;flex-direction:column;gap:8px;padding:20px 20px 14px;cursor:pointer;margin:0}
.fc-form .fc-type input{position:absolute;inset:0;width:100%;height:100%;min-height:0;max-width:none;max-height:none;margin:0;padding:0;border:0;opacity:0;cursor:pointer;-webkit-appearance:none;appearance:none}
.fc-type-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.fc-type-head strong{font-size:17px;line-height:1.35}
.fc-dot{flex:none;width:22px;height:22px;border-radius:50%;border:1.5px solid #8e9a92;box-sizing:border-box;margin-top:1px;display:grid;place-items:center}
.fc-type input:checked+.fc-type-head .fc-dot{border:2px solid var(--green)}.fc-type input:checked+.fc-type-head .fc-dot::after{content:'';width:10px;height:10px;border-radius:50%;background:var(--green)}
.fc-type input:focus-visible+.fc-type-head .fc-dot{outline:3px solid var(--clay);outline-offset:3px}
.fc-type details{border-top:1px solid #e3e6dc;margin:0 20px;padding:10px 0 14px;font-size:14px}
.fc-type summary{cursor:pointer;color:var(--green);font-weight:600}
.fc-traits{display:block;font-size:14px;color:var(--muted);margin:6px 0 0;line-height:1.5}ul.fc-traits{padding-left:18px}ul.fc-traits li{margin-top:4px}

.fc-panel{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:22px 26px;margin-top:22px;display:flex;flex-direction:column;gap:18px}
.fc-question{border:0;margin:0;padding:0;min-width:0}.fc-question legend,.fc-q legend{font-size:15px;font-weight:600;padding:0;margin-bottom:10px;line-height:1.45}
.fc-select{display:flex;flex-direction:column;gap:8px;font-size:15px;font-weight:600;max-width:520px;margin:0}
.fc-select select{margin:0;font-weight:400;min-height:46px;padding:0 12px;border:1.5px solid #c7cfc3;border-radius:8px;background:var(--white);font-size:15px}

/* Schritt 2: Unterlagen */
.fc-docgroup{margin-top:10px}
.fc-docgroup+.fc-docgroup{margin-top:30px}
.fc-docgroup>h3{font:400 24px/1.3 var(--serif);margin:0 0 14px;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px}
.fc-docgroup>h3 span{font:14px var(--sans);color:var(--muted)}
.fc-doc{position:relative;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:24px 28px 18px;margin:0 0 14px;min-width:0;display:flex;flex-direction:column;gap:18px}
.fc-doc>legend{float:left;width:100%;margin:0;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:0 120px 0 0}
.fc-doc>legend+*{clear:both}
.fc-docname{display:block;font-size:18px;font-weight:600;line-height:1.35}
.fc-done{position:absolute;top:24px;right:28px;font-size:14px;font-weight:600;color:var(--green);visibility:hidden}.fc-doc.is-done .fc-done{visibility:visible}
.fc-q{border:0;margin:0;padding:0;min-width:0}
.fc-detail{background:#f6f4ee;border-radius:10px;padding:18px 20px;display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:20px 24px;align-items:start}
.fc-detail[hidden]{display:none}
.fc-law-foot{border-top:1px solid #e3e6dc;padding-top:12px;margin:0;font-size:14px;color:var(--muted)}

.fc-nav{display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center;margin-top:26px}
.fc-nav-end{justify-content:flex-end}
.fc-nav .text-link,.fc-actions .text-link{background:none;border:0;padding:0;font:inherit;font-size:15px;cursor:pointer;color:var(--green);text-decoration:underline;text-underline-offset:5px}
.fc-sticky{position:sticky;bottom:12px;z-index:5;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:12px 18px;box-shadow:0 -6px 24px #243c3514;justify-content:space-between}
.fc-nav-note{font-size:14px;color:var(--muted);flex:1;text-align:right}
.fc-form .button,.fc-form .fc-ghost{border:0;cursor:pointer;font-size:15px;width:auto;margin:0}.fc-form .fc-ghost{border:1.5px solid var(--green)}

/* Schritt 3: Übersicht */
.fc-summary{font:400 20px/1.5 var(--serif);margin:0 0 22px;max-width:780px;clear:both}
.fc-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:10px}
.fc-tile{display:block;background:var(--white);border:1px solid var(--line);border-top:4px solid var(--line);border-radius:10px;padding:14px 18px;font-size:15px;color:var(--ink);text-decoration:none}
.fc-tile span{display:block;font:400 34px/1.1 var(--serif);margin-bottom:2px}
.fc-tile:hover{border-color:#9fb0a5}
.fc-t-fehlt{border-top-color:var(--clay)}.fc-t-fehlt span{color:#8a4c37}
.fc-t-pruefen{border-top-color:#b0843a}.fc-t-pruefen span{color:#7a5a22}
.fc-t-klaeren{border-top-color:#6f7f86}.fc-t-klaeren span{color:#4b5a60}
.fc-t-sinnvoll{border-top-color:#9fb0a5}
.fc-t-ok{border-top-color:var(--green)}.fc-t-ok span{color:var(--green)}
.fc-group{margin-top:30px;scroll-margin-top:20px}.fc-group>h3{font:400 24px var(--serif);margin:0 0 12px}
.fc-res{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:20px 24px 14px;margin-bottom:12px;display:flex;flex-direction:column;gap:12px}
.fc-res p{font-size:15px;margin:0;line-height:1.55}
.fc-res-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}
.fc-year{font-size:14px;color:var(--muted)}
.fc-chron{background:#f6f4ee;border-radius:10px;padding:12px 16px;font-size:15px}
.fc-chron summary{cursor:pointer;font-weight:600}
.fc-chron ul{padding-left:18px;margin:8px 0}.fc-chron li{margin-top:6px;line-height:1.55}.fc-chron p{font-size:15px;margin-top:8px}
.fc-muted{color:var(--muted)}
.fc-akut{font-size:15px!important;border-left:3px solid var(--clay);padding-left:12px}
.fc-bridge{background:var(--sage);border-radius:14px;padding:28px 30px;margin-top:34px}.fc-bridge h3{font:400 26px var(--serif)}.fc-bridge p{font-size:15px;margin-top:10px;line-height:1.6;max-width:720px}
.fc-actions{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;margin-top:20px}
.fc-ghost{min-height:48px;padding:0 22px;border-radius:8px;border:1.5px solid var(--green);background:transparent;color:var(--green);font:600 15px var(--sans);cursor:pointer}

@media(max-width:850px){
  .fc-types,.fc-docs{grid-template-columns:1fr}
  .fc-timeline li{grid-template-columns:1fr;gap:6px}
  .fc-detail{grid-template-columns:1fr}
  .fc-progress li{font-size:0;gap:0}.fc-progress li[aria-current]{font-size:15px;gap:10px}
  .fc-head{display:block}
  .fc-doc{padding:20px 18px 14px}.fc-doc>legend{padding-right:0}.fc-done{position:static;order:-1}
  .fc-nav-note{display:none}
  .fc-sticky{flex-wrap:nowrap;padding:10px 12px}.fc-sticky .button{padding:12px 16px;font-size:15px}
}
@media(max-width:560px){
  .fc-seg{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fc-detail .fc-seg,.fc-question .fc-seg{grid-template-columns:repeat(3,minmax(0,1fr))}
}
#fc-printout{display:none}
@page{size:A4;margin:12mm 15mm}
@media print{
  body>*:not(#fc-printout){display:none!important}
  body{background:#fff}
  #fc-printout{display:block;color:var(--ink);font-size:11pt}
  .fc-print-table{width:100%;border-collapse:collapse}
  .fc-print-table td{padding:0}
  .fc-print-head{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:18px}
  .fc-print-logo{height:34px;width:auto}
  .fc-print-head div{text-align:right;display:flex;flex-direction:column;gap:2px;font-size:9.5pt;color:var(--muted)}
  .fc-print-head strong{color:var(--green);font:400 13pt var(--serif)}
  .fc-print-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;border-top:1px solid var(--line);padding-top:8px;margin-top:18px;font-size:8.5pt;color:var(--muted)}
  .fc-print-body h1{font:400 24pt/1.15 var(--serif);margin:0 0 10px}
  .fc-print-meta{display:grid;grid-template-columns:auto 1fr;gap:3px 14px;margin:0 0 12px;font-size:10pt}.fc-print-meta dt{color:var(--muted)}.fc-print-meta dd{margin:0;font-weight:600}
  .fc-print-body .fc-summary{font-size:13pt;margin-bottom:14px}
  .fc-print-body .fc-tiles{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
  .fc-print-body .fc-tile{padding:8px 10px;font-size:9pt}.fc-print-body .fc-tile span{font-size:20pt}
  .fc-print-body .fc-group{margin-top:18px}.fc-print-body .fc-group>h3{font-size:16pt;break-after:avoid}.fc-print-body .fc-res-head,.fc-print-body .fc-res-head+p{break-after:avoid}.fc-print-body .fc-chron li,.fc-print-body .fc-law-foot,.fc-print-body .fc-tiles{break-inside:avoid}
  .fc-print-body .fc-res{break-inside:auto;border:1px solid var(--line);padding:12px 14px;gap:8px;margin-bottom:8px}
  .fc-print-body .fc-res p{font-size:10.5pt}
  .fc-print-body .fc-chron{background:#f6f4ee;border:0;padding:8px 12px;font-size:9.5pt}
  .fc-print-body .fc-chron summary{list-style:none}.fc-print-body .fc-chron summary::-webkit-details-marker{display:none}
  .fc-print-body a{color:var(--green);text-decoration:none}
  .fc-print-bridge{break-inside:avoid;background:var(--sage);border-radius:8px;padding:12px 14px;margin-top:18px;font-size:10.5pt;line-height:1.5}
  .fc-print-body .fc-boundary{font-size:8.5pt;margin-top:16px}
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
@media print{.fc-print-foot{flex-direction:column;align-items:flex-start;gap:3px}.fc-print-foot strong{color:var(--ink);font-size:9.5pt}}
