:root{--h-bg: #f7f7f5;--h-surface: #fff;--h-ink: #1d1d1b;--h-muted: #5f5f5a;--h-accent: #33598a;--h-accent-dark: #22406a;--h-accent-soft: #e3e9f1;--h-border: #e2e2dc;--h-radius: 6px;--h-font-sans: system-ui, sans-serif;--h-font-serif: Georgia, serif}*{box-sizing:border-box}html,body{margin:0}body{background:var(--h-bg);color:var(--h-ink);font:15px/1.45 var(--h-font-sans);-webkit-font-smoothing:antialiased}a{color:var(--h-accent)}a:hover{color:var(--h-accent-dark)}button,input,textarea{font:inherit;color:inherit}.shell{max-width:440px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column}.topbar{display:flex;justify-content:space-between;align-items:center;padding:18px 20px 6px}.page{flex:1;padding:12px 20px 104px}.wordmark{font:500 26px/1 var(--h-font-serif);letter-spacing:.02em}.wordmark-img{height:28px}.tabbar{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:440px;display:grid;grid-template-columns:repeat(4,1fr);background:var(--h-surface);border-top:1px solid var(--h-border);padding:6px 8px calc(6px + env(safe-area-inset-bottom))}.tab{min-height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-decoration:none;color:var(--h-muted);font-size:12px;font-weight:500}.tab.active{color:var(--h-accent);font-weight:600}h1{margin:0;font:500 30px/1.15 var(--h-font-serif)}h2{margin:0;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--h-muted)}.h3{font:500 21px/1.2 var(--h-font-serif)}.lead{margin:0;font:16px/1.45 var(--h-font-serif);color:var(--h-muted)}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.1em;color:var(--h-muted);display:flex;gap:8px;align-items:center;flex-wrap:wrap}.small{font-size:13px}.muted{color:var(--h-muted)}.strong{font-weight:600}.center{text-align:center}.note{font-size:13px;color:var(--h-muted);margin:0}.error{margin:0;color:#9b2c1f;font-size:14px;font-weight:500}.stack{display:flex;flex-direction:column;gap:6px}.gap-s{gap:8px}.gap-m{gap:12px}.gap-l{gap:22px}.row{display:flex;align-items:center;gap:10px}.between{justify-content:space-between}.plain{list-style:none;margin:0;padding:0}.card{background:var(--h-surface);border:1px solid var(--h-border);border-radius:var(--h-radius);padding:14px 16px}.card.soft{background:var(--h-accent-soft);border-color:transparent}.card.list{list-style:none;margin:0;padding:0}.link-card{display:flex;justify-content:space-between;align-items:center;text-decoration:none;color:var(--h-ink)}.link-row{display:flex;align-items:center;gap:4px;min-height:44px;font-weight:600;text-decoration:none}.dayrow{display:flex;gap:12px;padding:12px 14px;border-top:1px solid var(--h-border)}.dayrow:first-child{border-top:0}.daylabel{width:56px;flex:none;font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--h-muted);padding-top:2px}.tone-closed{color:var(--h-muted)}.tone-guests{color:var(--h-accent-dark)}.menurow{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border-top:1px solid var(--h-border)}.menurow:first-child{border-top:0}.price{font-weight:600;white-space:nowrap}.tags{display:flex;gap:6px;margin-top:2px}.tag,.badge{font-size:11px;font-weight:600;letter-spacing:.04em;padding:2px 6px;border-radius:var(--h-radius);background:var(--h-accent-soft);color:var(--h-accent-dark)}.btn{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:var(--h-radius);border:1px solid transparent;padding:0 18px;font-weight:600;text-decoration:none;cursor:pointer}.btn.primary{background:var(--h-accent);color:#fff}.btn.primary:hover{background:var(--h-accent-dark);color:#fff}.btn.primary:disabled{opacity:.5;cursor:default}.btn.ghost{background:var(--h-surface);border-color:var(--h-accent);color:var(--h-accent)}.btn.text{background:transparent;color:var(--h-accent);min-height:44px}.btn.small{min-height:40px;padding:0 12px;font-size:13px}.btn.icon{width:50px;padding:0;flex:none}.pw{font:600 15px ui-monospace,monospace}.option{min-height:52px;text-align:left;padding:0 16px;border-radius:var(--h-radius);border:1px solid var(--h-border);background:var(--h-surface);font-weight:500;cursor:pointer}.option.selected{border:2px solid var(--h-accent);background:var(--h-accent-soft);color:var(--h-accent-dark);font-weight:600}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{min-height:44px;padding:0 14px;border-radius:999px;border:1px solid var(--h-border);background:var(--h-surface);font-size:14px;font-weight:500;cursor:pointer}.chip.selected{border-color:var(--h-accent);background:var(--h-accent);color:#fff}.plain-fieldset{border:0;padding:0;margin:0}.field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--h-muted)}.field input,.field textarea,.composer input{border:1px solid var(--h-border);border-radius:var(--h-radius);background:var(--h-surface);padding:12px;font-size:16px;color:var(--h-ink);min-height:48px}.code-input{letter-spacing:.4em;font-weight:600;font-size:20px!important;text-align:center}.chat{display:flex;flex-direction:column;gap:14px}.bubbles{display:flex;flex-direction:column;gap:10px}.bubble{max-width:85%;padding:10px 12px;border-radius:12px;display:flex;flex-direction:column;gap:3px;background:var(--h-surface);border:1px solid var(--h-border)}.bubble.guest{align-self:flex-end;background:var(--h-accent);color:#fff;border-color:transparent}.bubble.team{border-color:var(--h-accent)}.bubble .who{font-size:11px;font-weight:600;opacity:.75}.handover{font-size:12px;font-weight:600;color:var(--h-accent-dark)}.suggestions{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.suggestions .chip{white-space:nowrap}.composer{display:flex;gap:8px}.composer input{flex:1}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.tabbar.three{grid-template-columns:repeat(3,1fr)}.admin{--h-bg: #f6f6f4;--h-accent: #2f5d8a;--h-accent-dark: #1f4268;--h-accent-soft: #e4ebf3;--h-radius: 8px;--h-font-serif: system-ui, sans-serif}.admin h1{font:650 26px/1.2 system-ui,sans-serif;letter-spacing:-.01em}.admin .h3{font:600 17px/1.3 system-ui,sans-serif}.brand{font-weight:700;font-size:17px;letter-spacing:-.01em}.brand .muted{font-weight:500}.back{display:inline-flex;align-items:center;gap:2px;min-height:44px;font-weight:600;text-decoration:none}.demo-badge{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#8a5a00;background:#fff3d6;padding:3px 8px;border-radius:999px}.tabbar.five{grid-template-columns:repeat(5,1fr)}.tab-icon{position:relative;display:inline-flex}.count{position:absolute;top:-6px;right:-10px;min-width:18px;height:18px;border-radius:9px;background:#b3261e;color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 5px}.alert{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:var(--h-radius);background:#fdecea;color:#7a1d16;text-decoration:none}.alert.warn{background:#fff3d6;color:#6b4600}.alert .stack{gap:2px}.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.kpi{background:var(--h-surface);border:1px solid var(--h-border);border-radius:var(--h-radius);padding:10px 12px;display:flex;flex-direction:column}.kpi b{font-size:24px}.kpi span{font-size:12px;color:var(--h-muted)}.listrow{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border-top:1px solid var(--h-border);text-decoration:none;color:var(--h-ink);min-height:52px}.listrow:first-child{border-top:0}.dot{width:8px;height:8px;border-radius:4px;background:#b3261e;flex:none}.pill{font-size:11px;font-weight:600;padding:2px 7px;border-radius:999px;background:#ececea;color:#45453f;white-space:nowrap}.pill.ok{background:#e3f1e5;color:#1f5a2a}.pill.err{background:#fdecea;color:#7a1d16}.pill.wait{background:#fff3d6;color:#6b4600}.pill.hausgastapp{background:var(--h-accent-soft);color:var(--h-accent-dark)}.seg{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--h-border);border-radius:var(--h-radius);overflow:hidden}.seg button{min-height:40px;border:0;border-left:1px solid var(--h-border);background:var(--h-surface);font-size:13px;font-weight:500;cursor:pointer}.seg button:first-child{border-left:0}.seg button[aria-pressed=true]{background:var(--h-accent);color:#fff;font-weight:600}.calday{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border-top:1px solid var(--h-border)}.calday:first-child{border-top:0}.mealrow{display:grid;grid-template-columns:52px 1fr;align-items:center;gap:8px;font-size:13px;color:var(--h-muted)}.steps{display:flex;gap:6px}.steps span{flex:1;height:4px;border-radius:2px;background:var(--h-border)}.steps span.on{background:var(--h-accent)}.dropzone{border:1.5px dashed var(--h-border);border-radius:var(--h-radius);padding:18px;text-align:center;background:var(--h-surface);display:flex;flex-direction:column;gap:6px;align-items:center;cursor:pointer}.swatch{width:28px;height:28px;border-radius:6px;border:1px solid rgba(0,0,0,.12);flex:none;padding:0}.finding{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:10px 14px;border-top:1px solid var(--h-border)}.finding:first-child{border-top:0}.finding .src{grid-column:1 / -1;font-size:12px;color:var(--h-muted)}.preview{border-radius:10px;overflow:hidden;border:1px solid var(--h-border)}.preview .p-body{padding:16px;display:flex;flex-direction:column;gap:8px}.spinner{width:28px;height:28px;border-radius:50%;border:3px solid var(--h-accent-soft);border-top-color:var(--h-accent);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation:none}}.dns{width:100%;border-collapse:collapse;font-size:13px}.dns th{text-align:left;font-weight:600;color:var(--h-muted);padding:6px 0;width:64px;vertical-align:top}.dns td{padding:6px 0;word-break:break-all}.mono{font-family:ui-monospace,monospace;font-size:13px}pre.snippet{margin:0;background:#1d1d1b;color:#f0efe9;padding:12px;border-radius:var(--h-radius);font-size:12px;white-space:pre-wrap;word-break:break-all}.stepper{display:flex;align-items:center;gap:4px}.stepper button{width:38px;height:38px;border-radius:var(--h-radius);border:1px solid var(--h-border);background:var(--h-surface);font-weight:600;cursor:pointer}.stepper span{min-width:64px;text-align:center;font-weight:600;font-size:13px}.switch{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--h-muted);min-height:32px}.switch input{width:20px;height:20px;margin:0;accent-color:var(--h-accent)}
