:root{--bg:#f7f1e6;--surface:#fffdf8;--ink:#1d2a23;--muted:#6b6f64;--line:#e6dccb;--accent:#1f4d3a;--accent-ink:#fffdf8;--brass:#b0813a;--user:#1f4d3a;--user-ink:#fbf6ec;--series-1:#1f4d3a;--series-2:#c08a3e;--series-3:#5b7fa6;--series-4:#b35c4a;--radius:18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#121b16;--surface:#1a2620;--ink:#ece6d8;--muted:#9ea597;--line:#2b3a32;--accent:#7fc4a0;--accent-ink:#0f1713;--brass:#d6a75c;--user:#2a4a3b;--user-ink:#f1ece0;--series-1:#7fc4a0;--series-2:#e0ac5f;--series-3:#8fb2da;--series-4:#e08b78;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font:16px/1.55 Inter,system-ui,-apple-system,Segoe UI,sans-serif}button{font:inherit;cursor:pointer}.shell{grid-template-rows:1fr auto;max-width:860px;height:100dvh;margin:0 auto;padding:0 16px;display:grid}.log{scroll-behavior:smooth;padding:28px 0 24px;overflow-y:auto}.shell-brand{border-bottom:1px solid var(--line);padding:18px 0 10px}.shell-brand img{width:auto;height:22px;display:block}.theme-augustus,.theme-livia{grid-template-rows:auto 1fr auto auto}.who{letter-spacing:.04em;color:var(--brass);margin:0 0 6px;font:600 .78rem/1 Fraunces,Georgia,serif;display:block}.msg.staff .who{color:var(--series-3)}.msg{max-width:100%;margin:14px 0;animation:.25s ease-out rise}.msg.user{background:var(--user);width:fit-content;max-width:82%;color:var(--user-ink);border-radius:var(--radius) var(--radius) 6px var(--radius);margin-left:auto;padding:10px 16px}.msg.assistant{padding-right:4%}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md p{margin:0 0 .7em}.md ul,.md ol{margin:0 0 .7em;padding-left:1.3em}.md strong{font-weight:600}.md h1,.md h2,.md h3{margin:.9em 0 .4em;font-family:Fraunces,Georgia,serif;font-weight:600;line-height:1.25}.md h1{font-size:1.35rem}.md h2{font-size:1.2rem}.md h3{font-size:1.05rem}.md code{background:color-mix(in srgb, var(--line) 60%, transparent);border-radius:5px;padding:1px 5px;font-size:.9em}.md table{border-collapse:collapse;margin:.6em 0;font-size:.92rem;display:block;overflow-x:auto}.md th,.md td{border-bottom:1px solid var(--line);text-align:left;padding:6px 10px}.status{color:var(--muted);align-items:center;gap:8px;margin:6px 0 0;font-size:.9rem;display:flex}.dot{background:var(--brass);border-radius:50%;width:8px;height:8px;animation:1.1s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.3;transform:scale(.8)}}.chart,.report{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:12px 0;padding:14px 16px 10px;position:relative}.chart figcaption,.report figcaption{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-bottom:6px;font-size:.95rem;display:flex}.legend{color:var(--muted);gap:12px;font-size:.82rem;display:flex}.legend i,.chart-tip i{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:5px;display:inline-block}.chart svg{width:100%;height:auto;display:block}.chart .grid{stroke:var(--line);stroke-width:1px}.chart .tick{fill:var(--muted);font-size:11px}.chart .cursor{stroke:var(--muted);stroke-dasharray:3 3}.chart-tip{color:var(--muted);border-top:1px dashed var(--line);flex-wrap:wrap;gap:4px 14px;margin-top:4px;padding-top:8px;font-size:.85rem;display:flex}.chart-tip b{color:var(--ink);font-weight:600}.report .scroll{max-height:420px;overflow-x:auto}.report table{border-collapse:collapse;width:100%;font-size:.9rem}.report th{background:var(--surface);text-align:left;border-bottom:2px solid var(--line);white-space:nowrap;padding:8px 10px;font-weight:600;position:sticky;top:0}.report td{border-bottom:1px solid var(--line);padding:7px 10px}.report td.num{text-align:right;font-variant-numeric:tabular-nums}.composer{background:var(--surface);border:1px solid var(--line);border-radius:26px;align-items:flex-end;gap:10px;margin:0 0 16px;padding:10px 10px 10px 18px;display:flex;box-shadow:0 8px 30px -18px #1d2a2359}.composer:focus-within{border-color:var(--brass)}.composer textarea,.composer input{resize:none;color:var(--ink);font:inherit;field-sizing:content;background:0 0;border:0;outline:0;flex:1;max-height:160px;padding:8px 0}.composer textarea::placeholder,.composer input::placeholder{color:var(--muted)}.composer button{background:var(--accent);width:42px;height:42px;color:var(--accent-ink);border:0;border-radius:50%;flex:none;place-items:center;transition:opacity .15s,transform .15s;display:grid}.composer button:disabled{opacity:.35;cursor:default}.composer button:not(:disabled):hover{transform:scale(1.05)}.composer .attach{color:var(--muted);background:0 0;width:36px;height:42px;margin-left:-8px}.composer .attach:not(:disabled):hover{color:var(--ink);transform:none}.shell-footer{justify-content:center;gap:18px;margin:-6px 0 14px;display:flex}.shell-footer button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:4px 6px;font-size:.85rem;display:inline-flex}.shell-footer button:hover:not(:disabled){color:var(--ink);text-underline-offset:3px;text-decoration:underline}.shell-footer button:disabled{opacity:.5;cursor:default}@media (max-width:560px){.shell{padding:0 12px}.msg.user{max-width:90%}}.ghost{border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:999px;padding:6px 12px;font-size:.85rem}.ghost:hover{color:var(--ink);border-color:var(--muted)}.status .dot+.dot{animation-delay:.15s}.status .dot+.dot+.dot{animation-delay:.3s}.theme-livia{--bg:#fff6f0;--surface:#fff;--ink:#2b2220;--muted:#7d6b66;--line:#f1ddd3;--accent:#e2674f;--accent-ink:#fff;--brass:#e2674f;--user:#e2674f;--user-ink:#fff}@media (prefers-color-scheme:dark){.theme-livia{--bg:#1d1514;--surface:#281e1c;--ink:#f6ebe6;--muted:#b9a49d;--line:#3a2c29;--accent:#ff8a72;--accent-ink:#1d1514;--brass:#ff8a72;--user:#a9493a;--user-ink:#fff4f0}}body:has(.theme-livia){background:var(--bg)}.theme-livia{background:var(--bg);color:var(--ink);max-width:680px}.theme-livia .who{letter-spacing:.02em;font-family:Inter,system-ui,sans-serif}.theme-livia .msg.user{border-radius:22px 22px 6px}.theme-livia .composer{border-radius:30px}.theme-lane{--bg:#0e1412;--surface:#17201c;--ink:#f7f3ea;--muted:#a9b3ab;--line:#2a3832;--accent:#ff8a72;--accent-ink:#0e1412;--brass:#ff8a72;--user:#2f4a3f;--user-ink:#f7f3ea;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body:has(.theme-lane){overscroll-behavior:none;background:#0e1412}.theme-lane{background:var(--bg);color:var(--ink);max-width:1100px;padding:0 32px;font-size:clamp(22px,2.6vw,34px);line-height:1.35}.theme-lane .log{padding-top:6vh}.theme-lane .msg{margin:.7em 0}.theme-lane .msg.assistant .md{font-family:Fraunces,Georgia,serif;font-size:1.25em;font-weight:500}.theme-lane .who{font-size:.55em}.theme-lane .msg.user{padding:.45em .8em}.theme-lane .composer{border-radius:40px;margin-bottom:4vh;padding:14px 14px 14px 28px}.theme-lane .composer textarea,.theme-lane .composer input{font-size:1em}.theme-lane .composer button{width:64px;height:64px}.theme-lane .dot{width:14px;height:14px}.pay-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;max-width:440px;margin:10px 0 4px;padding:16px;box-shadow:0 10px 30px -22px #00000073}.pay-card header{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.pay-what{color:var(--muted);font-size:.9rem;line-height:1.3}.pay-amount{letter-spacing:-.01em;font-size:1.5rem}.pay-methods{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.pay-methods button{border:1px solid var(--line);color:var(--ink);font:inherit;cursor:pointer;background:0 0;border-radius:999px;flex:auto;padding:8px 10px;font-size:.85rem}.pay-methods button.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.pay-express{margin-bottom:10px}.pay-go{background:var(--accent);width:100%;color:var(--accent-ink);font:inherit;cursor:pointer;border:0;border-radius:14px;margin-top:14px;padding:13px;font-weight:600}.pay-go:disabled{opacity:.5;cursor:default}.pay-note{color:var(--muted);margin:10px 0 0;font-size:.8rem;line-height:1.4}.pay-error{color:#b3261e;margin:10px 0 0;font-size:.9rem}.pay-done{color:#2e7d4f;margin:0;font-weight:600}.pay-btc iframe{background:#fff;border:0;border-radius:12px;width:100%;height:600px}.pay-zelle p{margin:0 0 8px}.pay-zelle dl{grid-template-columns:auto 1fr;gap:6px 12px;margin:0;display:grid}.pay-zelle dt{color:var(--muted)}.pay-zelle dd{word-break:break-all;margin:0}.pay-zelle dd button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;border-radius:999px;margin-left:6px;padding:2px 8px;font-size:.75rem}.fp{border:1px solid var(--line);background:var(--surface);border-radius:16px;margin:10px 0;overflow:hidden}.fp-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.fp-head strong{display:block}.fp-sum{color:var(--muted);margin-top:2px;font-size:.85rem;display:block}.fp-warn{color:#b3261e;font-weight:600}.fp-actions{flex:none;align-items:center;gap:10px;display:flex}.fp-live{color:#1f9d55;letter-spacing:.04em;font-size:.78rem;animation:2s ease-in-out infinite fp-pulse}@keyframes fp-pulse{50%{opacity:.45}}.fp-tools{background:color-mix(in srgb, var(--brass) 8%, var(--surface));border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px 14px;padding:8px 14px;font-size:.85rem;display:flex}.fp-tools button,.fp-pal-actions button,.fp-tools select{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:999px;padding:4px 10px;font-size:.8rem}.fp-selbar,.fp-savebar{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.fp-savebar{margin-left:auto}.fp-save{background:var(--accent)!important;color:var(--accent-ink)!important;border-color:var(--accent)!important}.fp-save:disabled{opacity:.45;cursor:default}.fp-body{display:flex}.fp-stage{-webkit-user-select:none;user-select:none;touch-action:none;background:#f4f2ee;flex:1;min-width:0;position:relative}.fp-stage img{object-fit:contain;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.fp-arranging{cursor:crosshair;outline:2px dashed var(--brass);outline-offset:-2px}.fp-bay,.fp-dev{cursor:pointer;background:0 0;border:0;align-items:center;gap:2px;padding:0;line-height:1;display:inline-flex;position:absolute;transform:translate(-50%,-50%)}.fp-arranging .fp-bay,.fp-arranging .fp-dev{cursor:grab}.fp-bay.sel,.fp-dev.sel{outline:2px solid var(--brass);outline-offset:2px;border-radius:6px}.fp-car{filter:drop-shadow(0 1px 1px #00000040);display:block}.fp-ind{color:#fff;border-radius:999px;place-items:center;min-width:12px;height:12px;padding:0 2px;font-size:8px;font-weight:700;display:inline-grid;box-shadow:0 0 0 1.5px #fff}.fp-dev-icon{background:#fff;border-radius:50%;place-items:center;width:24px;height:24px;font-size:13px;display:grid}.fp-lock{font-size:9px;position:absolute;top:-8px;right:-8px}.fp-palette{border-left:1px solid var(--line);flex:none;width:230px;max-height:520px;padding:10px;font-size:.82rem;overflow:auto}.fp-palette ul{gap:4px;margin:8px 0 0;padding:0;list-style:none;display:grid}.fp-palette li button{text-align:left;width:100%;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:6px;padding:5px 8px;display:flex}.fp-palette li button.on{border-color:var(--brass);background:color-mix(in srgb, var(--brass) 12%, transparent)}.fp-pal-actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.fp-legend{color:var(--muted);border-top:1px solid var(--line);flex-wrap:wrap;gap:6px 14px;padding:10px 14px;font-size:.78rem;display:flex}.fp-legend span{align-items:center;gap:5px;display:inline-flex}.fp-legend i{color:#fff;border-radius:999px;place-items:center;min-width:12px;height:12px;font-size:8px;font-style:normal;font-weight:700;display:inline-grid}.fp-legend-dev b{background:#fff;border-radius:50%;width:10px;height:10px;display:inline-block}@media (max-width:720px){.fp-body{flex-direction:column}.fp-palette{border-left:0;border-top:1px solid var(--line);width:auto;max-height:260px}}.led{background:#0b0b0b;border:2px solid #222;border-radius:8px;flex-direction:column;align-items:center;gap:4px;padding:10px 16px;display:inline-flex;box-shadow:inset 0 0 12px #000c}.led-text{letter-spacing:.12em;color:#39ff6a;text-shadow:0 0 6px #39ff6acc;font-family:DejaVu Sans Mono,ui-monospace,monospace;font-size:1.8rem;font-weight:700}.led-full{color:#ff3b30;text-shadow:0 0 6px #ff3b30cc}.led-types{gap:10px;font-family:ui-monospace,monospace;font-size:.8rem;font-weight:700;display:flex}.led-compact{border-width:1px;border-radius:4px;padding:2px 6px}.led-compact .led-text{letter-spacing:.06em;font-size:.72rem}.dl-backdrop{z-index:50;background:#0a0e0c8c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.dl{background:var(--surface);width:min(720px,100%);max-height:92vh;color:var(--ink);border-radius:16px;padding:16px;overflow:auto;box-shadow:0 20px 60px -20px #0009}.dl header{align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.dl h3{margin:0;font-size:1.05rem}.dl header p{color:var(--muted);margin:2px 0 0;font-size:.85rem}.dl-icon{font-size:22px}.dl-close{color:var(--muted);cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:26px;line-height:1}.dl-facts{grid-template-columns:auto 1fr;gap:6px 14px;margin:14px 0 0;font-size:.88rem;display:grid}.dl-facts dt{color:var(--muted)}.dl-facts dd{margin:0}.dot-h{vertical-align:middle;border-radius:50%;width:9px;height:9px;margin-right:4px;display:inline-block}.dl-events{color:var(--muted);margin:12px 0 0;padding-left:18px;font-size:.82rem}.cam-frame{aspect-ratio:16/9;background:#111;border:0;border-radius:10px;place-items:center;width:100%;display:grid;position:relative;overflow:hidden}.cam-frame img{object-fit:contain;width:100%;height:100%;display:block}.cam-wait{color:#bbb;text-align:center;padding:12px;font-size:.85rem}.cam-live{color:#fff;background:#dc2626e6;border-radius:4px;padding:2px 6px;font-size:.7rem;font-weight:700;position:absolute;top:8px;left:8px}.lw{background:var(--bg);max-width:1600px;min-height:100vh;color:var(--ink);margin:0 auto;padding:16px}.lw-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.lw-head h1{margin:0;font-family:Fraunces,Georgia,serif;font-size:1.6rem}.lw-filters{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.lw-filters select,.lw-filters button{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:.85rem}.lw-filters button.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.lw-signs{flex-wrap:wrap;gap:12px;margin-bottom:16px;display:flex}.lw-sign,.lw-tile{border:1px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;color:var(--ink);font:inherit;border-radius:12px;flex-direction:column;gap:6px;padding:8px;display:flex}.lw-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:12px;display:grid}.lw-cap{align-items:center;gap:6px;font-size:.85rem;font-weight:600;display:flex}.lw-cap i{border-radius:50%;flex:none;width:8px;height:8px}.lw-cap small{color:var(--muted);margin-left:auto;font-weight:400}.install{left:50%;top:calc(env(safe-area-inset-top,0px) + 10px);z-index:50;background:var(--surface,#fff);width:min(560px,100vw - 32px);color:var(--ink,#222);border:1px solid var(--line,#ddd);border-radius:14px;align-items:center;gap:10px;padding:8px 8px 8px 10px;font:500 .9rem/1.35 Inter,system-ui,sans-serif;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 6px 24px #0000001f}.install img{border-radius:7px;flex:none}.install span{flex:1}.install-go{background:var(--accent,#1f4d3a);color:var(--accent-ink,#fff);cursor:pointer;border:0;border-radius:999px;padding:7px 16px;font:600 .9rem Inter,system-ui,sans-serif}.install-x{color:var(--muted,#777);cursor:pointer;background:0 0;border:0;padding:4px 8px;font-size:1.3rem;line-height:1}
