:root{--papier: #faf6f0;--karte: #ffffff;--tinte: #3d3229;--tinte-sanft: #7d7266;--akzent: #c9683f;--akzent-dunkel: #a75330;--akzent-hell: #f6e3d8;--gruen: #4a7c59;--gruen-hell: #e4efe7;--gelb-hell: #faf0d7;--gelb-dunkel: #8a6d1e;--rot: #a94436;--rot-hell: #f7e3e0;--linie: #eadfd3;--radius: 14px;--schatten: 0 1px 3px rgba(61, 50, 41, .08), 0 4px 16px rgba(61, 50, 41, .06)}*{box-sizing:border-box}body{margin:0;background:var(--papier);color:var(--tinte);font-family:Segoe UI,system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.5}h1,h2,h3{line-height:1.25;margin:0 0 .5rem}h1{font-size:1.6rem}h2{font-size:1.25rem}h3{font-size:1.05rem}p{margin:.25rem 0 .75rem}a{color:var(--akzent-dunkel)}.hinweis-sanft{color:var(--tinte-sanft);font-size:.9rem}.anwendung{max-width:1080px;margin:0 auto;padding:0 1rem 4rem}.kopfleiste{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding:1rem 0}.kopfleiste .haus-titel{font-weight:650;font-size:1.15rem;display:flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--tinte)}.hauptmenue{display:flex;gap:.25rem;flex-wrap:wrap;margin-left:auto}.hauptmenue a{padding:.45rem .9rem;border-radius:999px;text-decoration:none;color:var(--tinte-sanft);font-weight:550;font-size:.95rem}.hauptmenue a:hover{background:var(--akzent-hell);color:var(--akzent-dunkel)}.hauptmenue a.aktiv{background:var(--akzent);color:#fff}.karte{background:var(--karte);border-radius:var(--radius);box-shadow:var(--schatten);padding:1.25rem;margin-bottom:1rem}.karten-raster{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;margin-bottom:1rem}.karte.klickbar{cursor:pointer;transition:transform .08s ease;border:2px solid transparent}.karte.klickbar:hover{transform:translateY(-2px)}.karte.klickbar.gewaehlt{border-color:var(--akzent)}.marke{display:inline-block;padding:.15rem .6rem;border-radius:999px;font-size:.8rem;font-weight:600;white-space:nowrap}.marke.gruen{background:var(--gruen-hell);color:var(--gruen)}.marke.gelb{background:var(--gelb-hell);color:var(--gelb-dunkel)}.marke.rot{background:var(--rot-hell);color:var(--rot)}.marke.neutral{background:var(--akzent-hell);color:var(--akzent-dunkel)}label{display:block;font-weight:600;font-size:.9rem;margin-bottom:.2rem}input,select,textarea{width:100%;padding:.55rem .75rem;border:1px solid var(--linie);border-radius:10px;font:inherit;background:#fff;color:var(--tinte);margin-bottom:.75rem}input:focus,select:focus,textarea:focus{outline:2px solid var(--akzent);outline-offset:1px;border-color:var(--akzent)}input[type=checkbox]{width:auto;margin:0 .4rem 0 0}.formular-zeile{display:flex;gap:.75rem;flex-wrap:wrap}.formular-zeile>*{flex:1;min-width:140px}button{font:inherit;font-weight:600;border:none;border-radius:10px;padding:.55rem 1.1rem;cursor:pointer;background:var(--akzent);color:#fff}button:hover{background:var(--akzent-dunkel)}button:disabled{opacity:.5;cursor:not-allowed}button.zweitrangig{background:transparent;color:var(--akzent-dunkel);border:1px solid var(--akzent)}button.zweitrangig:hover{background:var(--akzent-hell)}button.leise{background:transparent;color:var(--tinte-sanft);padding:.35rem .6rem}button.leise:hover{background:var(--linie);color:var(--tinte)}.tabellen-rahmen{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.95rem}th,td{text-align:left;padding:.5rem .75rem;border-bottom:1px solid var(--linie)}th{font-size:.82rem;text-transform:uppercase;letter-spacing:.03em;color:var(--tinte-sanft)}td.zahl,th.zahl{text-align:right;font-variant-numeric:tabular-nums}tr.summenzeile td{font-weight:700;border-top:2px solid var(--tinte)}.meldung{padding:.75rem 1rem;border-radius:10px;margin-bottom:1rem;font-weight:550}.meldung.fehler{background:var(--rot-hell);color:var(--rot)}.meldung.erfolg{background:var(--gruen-hell);color:var(--gruen)}.meldung.warnung{background:var(--gelb-hell);color:var(--gelb-dunkel)}.anmelde-buehne{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem}.anmelde-karte{width:100%;max-width:420px}.anmelde-karte .haus-symbol{font-size:3rem;text-align:center;margin-bottom:.5rem}.naechste-schritte li{margin-bottom:.4rem}.wohnungs-karte .bewohner{font-size:1.05rem;font-weight:650}.dialog-hintergrund{position:fixed;inset:0;background:#3d322973;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:20}.dialog{background:var(--karte);border-radius:var(--radius);box-shadow:var(--schatten);padding:1.5rem;width:100%;max-width:520px;max-height:90vh;overflow-y:auto}@media(max-width:640px){body{font-size:15px}.kopfleiste{padding:.6rem 0}.hauptmenue{margin-left:0;width:100%;overflow-x:auto;flex-wrap:nowrap}}
