:root{--bg: #ffffff;--bg-secondary: #f2f2f7;--bg-card: #ffffff;--border: #d1d1d6;--text: #1c1c1e;--text-secondary: #6c6c70;--text-dim: #aeaeb2;--accent: #cc0000;--accent-dark: #990000;--accent-dim: #ff3333;--green: #34c759;--orange: #ff9500;--red: #ff3b30;--blue: #007aff;--brand: #ff3b30;--brand-bg: #fff1f0;--waldbrand: #ff9500;--waldbrand-bg: #fff8f0;--th: #007aff;--th-bg: #f0f4ff;--abc: #af52de;--abc-bg: #f8f0ff;--vu: #ff6b00;--vu-bg: #fff4ee;--allgemein: #6c6c70;--allgemein-bg: #f2f2f7;--tap-target: 60px;--radius: 12px;--radius-sm: 8px;--shadow: 0 2px 12px rgba(0,0,0,.08);--shadow-lg: 0 8px 32px rgba(0,0,0,.12);--nav-height: 72px;--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-top: env(safe-area-inset-top, 0px);--transition: .15s ease}[data-theme=nacht]{--bg: #0a0a0a;--bg-secondary: #141414;--bg-card: #1a1a1a;--border: #2c2c2c;--text: #e5e5e5;--text-secondary: #8a8a8a;--text-dim: #5a5a5a;--accent: #aa0000;--accent-dark: #880000;--accent-dim: #cc2222;--green: #28a745;--orange: #d97f00;--red: #cc2222;--blue: #0062cc;--brand: #cc2222;--brand-bg: #1a0808;--waldbrand: #d97f00;--waldbrand-bg: #1a1000;--th: #0062cc;--th-bg: #080f1a;--abc: #8a3db8;--abc-bg: #0f0818;--vu: #cc5500;--vu-bg: #1a0c05;--allgemein: #5a5a5a;--allgemein-bg: #141414;--shadow: 0 2px 12px rgba(0,0,0,.4);--shadow-lg: 0 8px 32px rgba(0,0,0,.6)}@media (prefers-color-scheme: dark){[data-theme=auto]{--bg: #0a0a0a;--bg-secondary: #141414;--bg-card: #1a1a1a;--border: #2c2c2c;--text: #e5e5e5;--text-secondary: #8a8a8a;--text-dim: #5a5a5a;--accent: #cc2222;--accent-dark: #aa0000;--accent-dim: #dd3333;--green: #30d158;--orange: #ff9f0a;--red: #ff453a;--blue: #0a84ff;--brand: #ff453a;--brand-bg: #1a0808;--waldbrand: #ff9f0a;--waldbrand-bg: #1a1000;--th: #0a84ff;--th-bg: #080f1a;--abc: #bf5af2;--abc-bg: #0f0818;--vu: #ff6b00;--vu-bg: #1a0c05;--allgemein: #636366;--allgemein-bg: #1c1c1e;--shadow: 0 2px 12px rgba(0,0,0,.4);--shadow-lg: 0 8px 32px rgba(0,0,0,.6)}}@media (min-width: 768px){:root{--tap-target: 68px;--screen-max: 680px;--screen-pad: 32px;--nav-height: 80px}}@media (min-width: 1024px){:root{--screen-max: 780px;--screen-pad: 48px}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html{font-size:16px;height:100%;overscroll-behavior:none}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,sans-serif;background:var(--bg);color:var(--text);height:100%;overflow:hidden;transition:background var(--transition),color var(--transition)}#root{height:100%;display:flex;flex-direction:column}.screen{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding-top:calc(var(--safe-top) + 16px);padding-bottom:calc(var(--nav-height) + var(--safe-bottom) + 16px);padding-left:16px;padding-right:16px}@media (min-width: 768px){.screen{padding-left:var(--screen-pad, 32px);padding-right:var(--screen-pad, 32px)}.screen>*{max-width:var(--screen-max, 680px);margin-left:auto;margin-right:auto}.btn{font-size:18px}.card{padding:20px}}@media (hover: none) and (pointer: coarse){.btn:hover{opacity:1}}@media (hover: hover) and (pointer: fine){.btn:hover{opacity:.88}}.btn{display:flex;align-items:center;justify-content:center;gap:8px;min-height:var(--tap-target);padding:0 24px;border-radius:var(--radius);border:none;font-size:17px;font-weight:600;cursor:pointer;transition:opacity var(--transition),transform var(--transition);user-select:none;-webkit-user-select:none;width:100%}.btn:active{opacity:.8;transform:scale(.98)}.btn-primary{background:var(--accent);color:#fff}.btn-secondary{background:var(--bg-secondary);color:var(--text);border:1px solid var(--border)}.btn-danger{background:var(--red);color:#fff}.btn-ghost{background:transparent;color:var(--accent);border:2px solid var(--accent)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}.section-title{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.spinner{width:24px;height:24px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.pulsing{animation:pulse 1s ease-in-out infinite}
