.fh-wall{--surface: #FFFDF8;--ink: #3B322A;--muted: #8A7E70;--hairline: rgba(120,90,60,.13);--shadow-sm: 0 2px 8px rgba(120,90,60,.08);--shadow-md: 0 8px 24px rgba(120,90,60,.12), 0 2px 6px rgba(120,90,60,.07);--shadow-lg: 0 16px 40px rgba(120,90,60,.14), 0 4px 12px rgba(120,90,60,.09);--batu: #D9824F;--batu-tint: #FDF1EA;--batu-mid: rgba(217,130,79,.18);--kaan: #4E9E97;--kaan-tint: #EAF5F4;--kaan-mid: rgba(78,158,151,.18);--onur: #6B7A8F;--onur-tint: #EDF0F4;--onur-mid: rgba(107,122,143,.18);--tugba: #C98AA0;--tugba-tint: #F9EDF2;--tugba-mid: rgba(201,138,160,.18);--r-card: 22px;--r-chip: 10px;--r-tile: 14px;width:100%;max-width:1440px;margin:0 auto;padding:44px 64px 60px;display:flex;flex-direction:column;gap:30px;font-family:"Nunito",var(--font-body, sans-serif);color:var(--ink)}.fh-wall *,.fh-wall *:before,.fh-wall *:after{box-sizing:border-box}.fh-wall .wall-header{display:flex;align-items:center;justify-content:space-between;gap:16px 24px;flex-wrap:wrap}.fh-wall .wall-header-title{display:flex;align-items:baseline;gap:18px}.fh-wall .login-strip{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fh-wall .login-chip{display:flex;align-items:center;gap:9px;padding:6px 14px 6px 7px;border-radius:999px;border:1.5px solid var(--hairline);background:var(--surface);box-shadow:var(--shadow-sm);cursor:pointer;font-family:inherit;transition:box-shadow .15s,transform .12s}.fh-wall .login-chip:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.fh-wall .login-chip-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;line-height:1;flex-shrink:0}.fh-wall .login-chip-name{font-family:"Baloo 2",sans-serif;font-size:15px;font-weight:700;line-height:1}.fh-wall .login-chip-lock{display:flex;align-items:center;opacity:.55}.fh-wall .wall-header h1{font-family:"Baloo 2",var(--font-display, sans-serif);font-size:42px;font-weight:800;color:var(--ink);letter-spacing:-.5px;line-height:1;margin:0}.fh-wall .wall-header h1 span{color:var(--batu)}.fh-wall .wall-header .date-badge{font-family:Nunito,sans-serif;font-size:18px;font-weight:600;color:var(--muted);letter-spacing:.2px;padding:6px 16px;background:var(--surface);border:1px solid var(--hairline);border-radius:40px;box-shadow:var(--shadow-sm)}.fh-wall .columns{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:30px;align-items:start}.fh-wall .left-col,.fh-wall .right-col{display:flex;flex-direction:column;gap:28px}.fh-wall .section-label{display:flex;align-items:center;gap:10px;margin-bottom:14px}.fh-wall .section-label .lbl{font-family:Nunito,sans-serif;font-size:11px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--muted)}.fh-wall .section-label svg.rule{flex:1}.fh-wall .squiggle{display:inline-block;vertical-align:middle}.fh-wall .speiseplan-wrap{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-card);box-shadow:var(--shadow-md);padding:22px 24px 20px}.fh-wall .speiseplan-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.fh-wall .meal-day{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px 14px;border-radius:var(--r-tile);background:#f7f3ed;border:1px solid transparent;transition:box-shadow .15s;text-align:center}.fh-wall .meal-day.today{background:#fdf3ec;border:2px solid var(--batu);box-shadow:0 0 0 4px #d9824f1a,var(--shadow-sm);position:relative}.fh-wall .meal-day.today:before{content:"HEUTE";position:absolute;top:-10px;left:50%;transform:translate(-50%);font-size:9px;font-weight:800;letter-spacing:1.5px;color:var(--batu);background:var(--surface);padding:2px 7px;border-radius:20px;border:1.5px solid var(--batu)}.fh-wall .meal-day .day-name{font-family:"Baloo 2",sans-serif;font-size:13px;font-weight:700;color:var(--muted);letter-spacing:.3px}.fh-wall .meal-day.today .day-name{color:var(--batu)}.fh-wall .meal-day .food-emoji{font-size:22px;line-height:1}.fh-wall .meal-day .meal-name{font-size:12px;font-weight:600;color:var(--ink);line-height:1.35}.fh-wall .aufgaben-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.fh-wall .aufgaben-offen{grid-column:1 / -1}.fh-wall .person-card{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-card);box-shadow:var(--shadow-md);overflow:hidden}.fh-wall .person-card-head{display:flex;align-items:center;gap:12px;padding:16px 20px 14px;border-bottom:1px solid var(--hairline)}.fh-wall .person-avatar{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0;line-height:1}.fh-wall .person-card-head .person-info h3{font-family:"Baloo 2",sans-serif;font-size:20px;font-weight:700;line-height:1;margin:0}.fh-wall .person-card-head .person-info .role-tag{font-size:11.5px;font-weight:600;color:var(--muted);margin-top:2px}.fh-wall .task-count-chip{margin-left:auto;font-size:12px;font-weight:700;color:var(--muted);background:#f0ebe3;padding:4px 10px;border-radius:20px}.fh-wall .person-tasks{padding:14px 20px 16px;display:flex;flex-direction:column;gap:10px}.fh-wall .task-row{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:var(--r-tile);background:#f7f3ed;border:none;width:100%;text-align:left;cursor:pointer;font-family:inherit;min-width:0}.fh-wall .task-icon-tile{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;line-height:1}.fh-wall .task-body{flex:1;min-width:0}.fh-wall .task-title{font-size:14px;font-weight:700;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fh-wall .task-title.done{text-decoration:line-through;color:var(--muted)}.fh-wall .task-meta{display:flex;align-items:center;gap:6px;margin-top:3px}.fh-wall .status-chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;padding:3px 8px;border-radius:6px}.fh-wall .status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.fh-wall .status-offen{background:#8a7e7021;color:var(--muted)}.fh-wall .status-offen .status-dot{background:var(--muted)}.fh-wall .status-uebernommen{background:#d9824f24;color:#b66a38}.fh-wall .status-uebernommen .status-dot{background:var(--batu)}.fh-wall .status-erledigt{background:#4e9e9724;color:#347771}.fh-wall .status-erledigt .status-dot{background:var(--kaan)}.fh-wall .star-chip{display:inline-flex;align-items:center;gap:3px;font-size:12px;font-weight:700;color:#a06a20;background:#dcaa3c24;padding:3px 9px;border-radius:6px}.fh-wall .offen-card{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-card);box-shadow:var(--shadow-md);overflow:hidden}.fh-wall .offen-head{display:flex;align-items:center;gap:12px;padding:16px 20px 14px;border-bottom:1px solid var(--hairline)}.fh-wall .offen-icon{width:44px;height:44px;border-radius:50%;background:#f0ebe3;display:flex;align-items:center;justify-content:center}.fh-wall .offen-head .offen-info h3{font-family:"Baloo 2",sans-serif;font-size:20px;font-weight:700;margin:0}.fh-wall .offen-head .offen-info p{font-size:12px;font-weight:600;color:var(--muted);margin-top:2px}.fh-wall .offen-tasks{padding:14px 20px 16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}.fh-wall .offen-task{display:flex;align-items:center;gap:10px;padding:11px 13px;border-radius:var(--r-tile);background:#f7f3ed;border:none;text-align:left;cursor:pointer;font-family:inherit;min-width:0}.fh-wall .offen-task-body{flex:1;min-width:0}.fh-wall .offen-task-title{font-size:13.5px;font-weight:700;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fh-wall .offen-task-due{font-size:11px;font-weight:600;color:var(--muted);margin-top:2px}.fh-wall .offen-task .star-chip{flex-shrink:0}.fh-wall .kalender-card{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-card);box-shadow:var(--shadow-md);padding:22px 24px 20px}.fh-wall .event-item{display:flex;align-items:stretch;gap:0;padding:14px 16px;border-radius:var(--r-tile);background:#f7f3ed;overflow:hidden;position:relative}.fh-wall .event-item+.event-item{margin-top:10px}.fh-wall .event-ribbon{position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:4px 0 0 4px}.fh-wall .event-body{flex:1;margin-left:12px}.fh-wall .event-who{display:flex;align-items:center;gap:6px;margin-bottom:4px}.fh-wall .event-avatar-mini{font-size:15px;line-height:1}.fh-wall .event-type-chip{font-size:10.5px;font-weight:800;letter-spacing:1px;text-transform:uppercase;padding:2px 8px;border-radius:5px}.fh-wall .event-title{font-family:"Baloo 2",sans-serif;font-size:17px;font-weight:700;color:var(--ink);line-height:1.2}.fh-wall .event-meta{font-size:12.5px;font-weight:600;color:var(--muted);margin-top:4px;display:flex;align-items:center;gap:6px}.fh-wall .event-meta svg{opacity:.6}.fh-wall .anmelden-card{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-card);box-shadow:var(--shadow-md);padding:22px 24px 20px}.fh-wall .login-list{display:flex;flex-direction:column;gap:10px}.fh-wall .login-item{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:var(--r-tile);border:1px solid var(--hairline);background:var(--surface);cursor:pointer;position:relative;overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow .15s,transform .12s;width:100%;text-align:left;font-family:inherit}.fh-wall .login-item:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.fh-wall .login-ribbon{position:absolute;left:0;top:0;bottom:0;width:5px}.fh-wall .login-avatar{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;line-height:1;flex-shrink:0;margin-left:8px}.fh-wall .login-info{flex:1}.fh-wall .login-name{font-family:"Baloo 2",sans-serif;font-size:19px;font-weight:700;line-height:1}.fh-wall .login-role{font-size:12px;font-weight:600;color:var(--muted);margin-top:2px}.fh-wall .login-lock{display:flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;color:var(--muted)}:root{--bg: #FAF6EE;--bg-2: #FFFDF8;--bg-sunk: #F2EBDD;--fg: #3B322A;--fg-muted: #8A7E70;--fg-faint: #A99E8F;--line: rgba(120,90,60,.13);--line-strong: rgba(120,90,60,.26);--accent: #D9824F;--accent-warm: #C88A20;--accent-violet: #A06A9A;--user-accent: var(--accent);--on-accent: #FFFDF8;--cal-lesson: #9A6FB0;--cal-therapy: #4E9E97;--cal-family: #C98AA0;--cal-sport: #D9824F;--state-open: #6E7F8C;--state-claimed: #D9824F;--state-done: #3E9189;--state-danger: #C25A3F;--state-open-ink: #41505B;--state-claimed-ink: #9A5A2E;--state-done-ink: #2E6B65;--state-danger-ink: #8A3A26;--state-wish-approved: #A06A9A;--state-wish-approved-ink: #6E3E68;--token: #C88A20;--text-xs: .78rem;--text-sm: .875rem;--text-base: 1rem;--text-body-lg: 1.375rem;--text-lg: 1.25rem;--text-xl: 1.6rem;--text-2xl: 2.1rem;--text-section: 2.25rem;--text-hero: 2.75rem;--text-display: 3.25rem;--text-3xl: 2.9rem;--text-jumbo: 4rem;--text-4xl: 3.8rem;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--sp-8: 64px;--radius-sm: 10px;--radius: 14px;--radius-lg: 22px;--radius-pill: 999px;--shadow-1: 0 0 0 1px rgba(120,90,60,.05), 0 2px 8px rgba(120,90,60,.08);--shadow-2: 0 0 0 1px rgba(120,90,60,.06), 0 8px 24px rgba(120,90,60,.12), 0 2px 6px rgba(120,90,60,.07);--shadow-3: 0 16px 40px rgba(120,90,60,.14), 0 4px 12px rgba(120,90,60,.08);--border-weight: 1px;--tap-min: 44px;--font-body: "Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-display: "Baloo 2", "Nunito", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-system: var(--font-body)}[data-calm=true]{--bg: #F4F1EA;--bg-2: #ffffff;--bg-sunk: #ECE8DF;--fg: #16181d;--fg-muted: #5a6470;--fg-faint: #5a6470;--line: #16181d;--line-strong: #16181d;--accent: #0066cc;--accent-warm: #ff8a00;--accent-violet: #7a33ff;--state-open: #0066cc;--state-claimed: #ff8a00;--state-done: #0088ff;--state-danger: #7a33ff;--state-open-ink: #003d80;--state-claimed-ink: #8a4a00;--state-done-ink: #00498c;--state-danger-ink: #4a0080;--state-wish-approved: #7a33ff;--state-wish-approved-ink: #3a0080;--token: #ff8a00;--text-xs: .9rem;--text-sm: 1.05rem;--text-base: 1.2rem;--text-body-lg: 1.6rem;--text-lg: 1.45rem;--text-xl: 1.85rem;--text-2xl: 2.4rem;--text-section: 2.65rem;--text-hero: 3.2rem;--text-display: 3.8rem;--text-3xl: 3.35rem;--text-jumbo: 4.7rem;--text-4xl: 4.5rem;--border-weight: 2px;--tap-min: 56px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-body);color:var(--fg);background:linear-gradient(160deg,#faf6ee,#f5efe3 55%,#f0e8da) fixed;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.028;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}#root{position:relative;z-index:1}h1,h2,h3,h4,h5{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em}
