/* ── Partyfotobox – kompakter Verfügbarkeitskalender ───────────────────────── */
.pfbk{--k-rot:#8B0000;--k-orange:#F06000;--k-gruen:#2e7d32;--k-gruen-bg:#e8f5e9;--k-grau:#718096;--k-linie:#e2e8f0;--k-hell:#f7f7f7;
  max-width:340px;width:100%;margin:0 auto;font-family:"Segoe UI",system-ui,-apple-system,sans-serif;color:#1a202c;text-align:left;user-select:none;}
.pfbk *,.pfbk *::before,.pfbk *::after{box-sizing:border-box;}
.pfbk-kopf{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;}
.pfbk-monat{font-weight:700;font-size:1rem;color:var(--k-rot);}
.pfbk-nav{width:34px;height:34px;border:1px solid var(--k-linie);border-radius:6px;background:#fff;color:#1a202c;font-size:1.1rem;line-height:1;cursor:pointer;padding:0;}
.pfbk-nav:hover:not(:disabled){border-color:var(--k-orange);color:var(--k-orange);}
.pfbk-nav:disabled{opacity:.3;cursor:default;}
.pfbk-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;}
.pfbk-wt{font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--k-grau);text-align:center;padding:.2rem 0;}
.pfbk-tag{aspect-ratio:1/1;min-height:32px;border:1px solid transparent;border-radius:6px;background:transparent;font:inherit;font-size:.85rem;color:#1a202c;padding:0;display:flex;align-items:center;justify-content:center;}
.pfbk-tag.frei{background:#fff;border-color:var(--k-linie);cursor:pointer;}
.pfbk-tag.frei:hover{border-color:var(--k-orange);color:var(--k-orange);}
.pfbk-tag.belegt{background:var(--k-hell);color:#b8b8b8;text-decoration:line-through;cursor:pointer;}
.pfbk-tag.vergangen{visibility:hidden;}   /* Vergangenheit nicht anzeigen */
.pfbk-tag.leer{visibility:hidden;}
.pfbk-tag.gewaehlt{background:var(--k-orange)!important;border-color:var(--k-orange)!important;color:#fff!important;font-weight:700;text-decoration:none;}
.pfbk-tag:focus-visible{outline:2px solid var(--k-rot);outline-offset:1px;}
.pfbk-legende{display:flex;gap:1rem;justify-content:center;margin-top:.5rem;font-size:.72rem;color:var(--k-grau);}
.pfbk-legende span{display:inline-flex;align-items:center;gap:.35rem;}
.pfbk-legende i{display:inline-block;width:11px;height:11px;border-radius:3px;border:1px solid var(--k-linie);}
.pfbk-legende .l-frei{background:#fff;}
.pfbk-legende .l-belegt{background:var(--k-hell);}
.pfbk-legende .l-gewaehlt{background:var(--k-orange);border-color:var(--k-orange);}
.pfbk-meldung{margin-top:.6rem;font-size:.85rem;padding:.55rem .75rem;border-radius:6px;text-align:center;}
.pfbk-meldung:empty{display:none;}
.pfbk-meldung.ok{background:var(--k-gruen-bg);color:var(--k-gruen);font-weight:600;}
.pfbk-meldung.nein{background:#fdecec;color:var(--k-rot);}
.pfbk-laden{font-size:.85rem;color:var(--k-grau);text-align:center;padding:1rem 0;}
