@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(../media/c7f47671e39f7787-s.0klc_mi0-5f4_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(../media/f06bf9da926bae75-s.p.2874ccu1_u7jf.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Sans Fallback;src:local(Arial);ascent-override:94.42%;descent-override:24.33%;line-gap-override:0.0%;size-adjust:102.74%}.instrument_sans_dd0ece85-module__hccXaq__className{font-family:Instrument Sans,Instrument Sans Fallback;font-style:normal}.instrument_sans_dd0ece85-module__hccXaq__variable{--font-sans:"Instrument Sans", "Instrument Sans Fallback"}
@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_9e08a83a-module__6Zgl0W__className{font-family:Fraunces,Fraunces Fallback;font-style:normal}.fraunces_9e08a83a-module__6Zgl0W__variable{--font-fraunces:"Fraunces", "Fraunces Fallback"}
:root{--page-title-size:34px;--bg:#0f1a16;--surface:#15231d;--surface-container-low:#182720;--surface-2:#1b2c25;--surface-3:#22352d;--border:#2a3c34;--border-2:#3b5247;--border-accent:var(--border-2);--border-accent-strong:#5aa07c;--outline:#3b5247;--outline-focus:#8fd46b;--text:#eaf1ec;--text-strong:#f5faf6;--text-dim:#b3c3b9;--muted:#93a79c;--muted-2:#93a79c;--primary:#7fd1a0;--primary-hover:#66bd89;--primary-container:#1f3b2e;--on-primary-container:#c4efd6;--accent:#7fd1a0;--accent-tint:#1f3b2e;--secondary:#7fd1a0;--secondary-tint:#1f3b2e;--ink:#7fd1a0;--on-ink:#0b1f16;--nav-bg:#0b1310;--nav-text:#eaf1ec;--nav-muted:#8ea398;--nav-border:#1b2c25;--nav-active-bg:#1f3b2e;--nav-active-text:#c4efd6;--nav-hover-bg:#15231d;--ok:#7fd1a0;--ok-bg:#15281f;--ok-border:#245040;--warn:#f0a45c;--warn-bg:#3a2a17;--warn-border:#5a4023;--crit:#f28b82;--crit-bg:#3d1f1d;--crit-border:#5c2f2b;--off:#93a79c;--off-bg:#1b2c25;--off-border:#2a3c34;--radius:12px;--radius-sm:6px;--radius-input:9999px;--radius-btn:9999px;--radius-pill:9999px;--radius-nav:8px;--font-body:var(--font-sans), "Instrument Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:var(--font-fraunces), Georgia, serif;--mono:ui-monospace, "SF Mono", "Cascadia Mono", Menlo, monospace;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;font-size:16px;line-height:1.55}.num{font-family:var(--mono);font-variant-numeric:tabular-nums}a{color:var(--primary);font-weight:500;text-decoration:none}a:hover{text-decoration:underline}.card-link,.card-link:hover{text-decoration:none}.app{align-items:stretch;min-height:100vh;display:flex}.sidebar{background:var(--nav-bg);border-right:1px solid var(--nav-border);flex-direction:column;flex:0 0 248px;width:248px;height:100vh;padding:16px 12px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-brand{flex-direction:column;padding:6px 8px 28px;display:flex}.brand-lockup{align-items:center;gap:12px;display:flex}.brand-logo{background:var(--nav-active-bg);width:30px;height:30px;color:var(--nav-active-text);border-radius:8px;flex:none;justify-content:center;align-items:center;display:flex}.brand-logo svg{width:19px;height:19px}.brand-meta{flex-direction:column;min-width:0;display:flex}.sidebar-brand .brand{font-family:var(--font-display);letter-spacing:.01em;color:var(--nav-text);font-size:22px;font-weight:400;line-height:1.2}.sidebar-nav{flex-direction:column;flex:1;gap:3px;display:flex}.sidebar-nav a{border-radius:var(--radius-nav);color:var(--nav-text);border:1px solid #0000;align-items:center;gap:12px;padding:9px 14px;font-size:15px;font-weight:500;transition:all .15s cubic-bezier(.2,0,0,1);display:flex}.sidebar-nav a svg{width:19px;height:19px;color:var(--nav-muted);flex:none;transition:color .15s}.sidebar-nav a:hover{background:var(--nav-hover-bg);color:var(--nav-text);text-decoration:none}.sidebar-nav a:hover svg{color:var(--nav-text)}.sidebar-nav a[aria-current=page]{background:var(--nav-active-bg);border-color:var(--nav-active-bg);color:var(--nav-active-text);font-weight:500}.sidebar-nav a[aria-current=page] svg{color:var(--nav-active-text)}.sidebar-status{background:var(--nav-hover-bg);border:1px solid var(--nav-border);border-radius:var(--radius-pill);color:var(--nav-muted);align-items:center;gap:8px;margin:10px 4px 4px;padding:6px 12px;font-size:13px;font-weight:500;display:flex}.sidebar-status .status-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.language-choice{justify-content:center;padding:6px 0 2px;display:flex}.lang-switch{border:1px solid var(--nav-border);border-radius:var(--radius-pill);background:var(--nav-hover-bg);gap:2px;padding:3px;display:inline-flex}.lang-switch button{border-radius:var(--radius-pill);min-width:44px;color:var(--nav-text);font:inherit;letter-spacing:.04em;cursor:pointer;background:0 0;border:0;padding:4px 12px;font-size:13px;font-weight:600}.lang-switch button:hover{background:var(--nav-border)}.lang-switch button[aria-pressed=true]{background:var(--nav-active-bg);color:var(--nav-active-text);cursor:default}.lang-switch button:focus-visible{outline:2px solid var(--outline-focus);outline-offset:1px}.sidebar-footer{border-top:1px solid var(--nav-border);align-items:center;gap:10px;margin-top:6px;padding:12px 6px 4px;display:flex}.avatar{border:1px solid var(--nav-border);width:34px;height:34px;color:var(--nav-text);letter-spacing:.02em;background:0 0;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.sidebar-footer .who{flex-direction:column;flex:1;min-width:0;display:flex}.sidebar-footer .name{color:var(--nav-text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.sidebar-footer .role{color:var(--nav-muted);font-size:13px}.sidebar-footer button.sidebar-logout{border-radius:var(--radius-btn);flex:none;padding:4px 12px;font-size:13px}.main-area{flex:1;min-width:0}.shell{max-width:1200px;margin:0 auto;padding:32px 32px 64px}.spacer{flex:1}@media (max-width:860px){.app{flex-direction:column}.sidebar{flex-flow:wrap;flex:none;align-items:center;gap:8px;width:auto;height:auto;padding:12px 16px;position:static}.sidebar-brand{flex:none;padding:0 4px}.palette-open{flex:140px;margin:0}.palette-open kbd{display:none}.sidebar-nav{z-index:80;padding:6px 4px calc(6px + env(safe-area-inset-bottom));background:var(--nav-bg,var(--surface));border-top:1px solid var(--nav-border);flex-direction:row;gap:0;position:fixed;bottom:0;left:0;right:0}.sidebar-nav a{text-align:center;flex-direction:column;flex:1 1 0;justify-content:center;gap:2px;min-width:0;min-height:44px;padding:6px 2px;font-size:11px}.sidebar-nav a span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.sidebar-status{display:none}.shell{padding:20px 16px calc(40px + 64px + env(safe-area-inset-bottom))}}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.page-head h1{font-family:var(--font-display);font-weight:400;font-size:var(--page-title-size);letter-spacing:.01em;color:var(--text-strong);margin:0;line-height:1.13}.page-head .sub{color:var(--muted);margin-top:2px;font-size:14px;font-weight:500}.grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start;gap:16px;display:grid}.card{background:var(--surface);border:1px solid var(--border-accent);border-radius:var(--radius);padding:20px 24px;transition:border-color .2s}.card:hover{border-color:var(--border-accent-strong)}.card h2{font-family:var(--font-display);letter-spacing:.01em;text-transform:none;color:var(--text-strong);margin:0 0 16px;font-size:22px;font-weight:400}.karte-kopf{cursor:pointer;text-align:left;width:100%;color:inherit;font:inherit;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:0;display:flex}.karte-kopf h2{margin:0}.karte-kopf:hover h2{color:var(--text-strong)}.karte-pfeil{color:var(--muted);flex:none;font-size:13px}.karte-inhalt{margin-top:16px}.tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:2px;margin-bottom:20px;display:flex}.tab{color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;align-items:center;gap:7px;padding:9px 14px;font-size:14px;font-weight:500;transition:color .2s cubic-bezier(.2,0,0,1),border-color .2s cubic-bezier(.2,0,0,1);display:inline-flex}.tab:hover:not(.active){color:var(--text);border-bottom-color:var(--border)}.tab.active{color:var(--primary);border-bottom-color:var(--primary)}.tab-gesperrt{cursor:not-allowed;color:var(--muted-2);text-decoration:line-through;-webkit-text-decoration-color:var(--primary);text-decoration-color:var(--primary);text-decoration-thickness:2px}.tab-badge{font-variant-numeric:tabular-nums;color:var(--primary);border:1px solid var(--border-accent);border-radius:999px;padding:3px 7px;font-size:11px;font-weight:600;line-height:1}.page-col{flex-direction:column;gap:16px;max-width:720px;display:flex}.pair{grid-template-columns:1fr 1fr;align-items:start;gap:16px;display:grid}@media (max-width:640px){.pair{grid-template-columns:1fr}}.page-col.wide{max-width:none}.card.locked{background:0 0;border-style:dashed}.card.locked h2{color:var(--muted)}.rows.capped{border:1px solid var(--border);border-radius:8px;max-height:420px;padding:0 12px;overflow-y:auto}.card>details.adder{border-top:1px solid var(--border);margin-top:16px;padding-top:4px}.card>details.adder>summary{cursor:pointer;color:var(--primary);align-items:center;gap:8px;padding:10px 0 2px;font-size:14px;font-weight:500;list-style:none;display:flex}.card>details.adder>summary::-webkit-details-marker{display:none}.card>details.adder>summary:before{content:"+";border:1px solid var(--border-accent);border-radius:50%;flex:none;justify-content:center;align-items:center;width:18px;height:18px;font-size:15px;line-height:1;display:inline-flex}.card>details.adder[open]>summary:before{content:"−"}.card>details.adder>summary:hover{color:var(--text-strong)}.card>details.adder>summary:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:4px}.growhead{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:24px;display:flex}.growhead>span:first-child,.growhead .number{font-family:var(--font-display);font-weight:400;font-size:var(--page-title-size);letter-spacing:.01em;color:var(--text-strong)}.reading{border-bottom:1px solid var(--surface-2);grid-template-columns:1fr auto;gap:2px 14px;padding:10px 0;display:grid}.reading:last-child{border-bottom:none}.reading .name{color:var(--text);font-size:16px;font-weight:500}.reading .figure{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;color:var(--text);font-size:20px;font-weight:600}.reading .figure .unit{color:var(--muted);margin-left:3px;font-size:13px;font-weight:400}.reading .target{color:var(--muted);font-size:13px;font-family:var(--mono);grid-column:1/-1}.reading.out .figure{color:var(--warn)}.reading.stale .figure{color:var(--off)}.range{background:var(--surface-2);border-radius:var(--radius-pill);grid-column:1/-1;height:4px;margin-top:6px;position:relative}.range .marker{background:var(--accent);border-radius:2px;width:4px;height:10px;position:absolute;top:-3px;transform:translate(-2px)}.range .marker.out{background:var(--warn)}.device{border-bottom:1px solid var(--surface-2);padding:10px 0}.device:last-child{border-bottom:none}.device .line{align-items:center;gap:10px;display:flex}.device .name{color:var(--text);flex:1;font-size:16px;font-weight:500}.device .out{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:16px;font-weight:600}.bar{background:var(--surface-2);border-radius:var(--radius-pill);height:6px;margin-top:8px;overflow:hidden}.bar>span{background:var(--primary);border-radius:var(--radius-pill);height:100%;transition:width .4s cubic-bezier(.2,0,0,1);display:block}.dot{border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.dot.ok{background:var(--ok);box-shadow:0 0 0 2px var(--ok-bg)}.dot.degraded,.dot.warning{background:var(--warn);box-shadow:0 0 0 2px var(--warn-bg)}.dot.down,.dot.critical,.dot.unreachable,.dot.failed{background:var(--crit);box-shadow:0 0 0 2px var(--crit-bg)}.dot.not_configured,.dot.off{background:var(--off);box-shadow:0 0 0 2px var(--off-bg)}.tag{letter-spacing:.04em;text-transform:uppercase;border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-dim);border:1px solid var(--border);align-items:center;padding:3px 10px;font-size:13px;font-weight:600;display:inline-flex}.tag.critical{background:var(--crit-bg);color:var(--crit);border-color:var(--crit-border)}.tag.warning{background:var(--warn-bg);color:var(--warn);border-color:var(--warn-border)}.tag.info,.tag.ok,.tag.applied{background:var(--ok-bg);color:var(--ok);border-color:var(--ok-border)}.tag.blocked{background:var(--crit-bg);color:var(--crit);border-color:var(--crit-border)}.table-wrap{margin:0 -24px;padding:0 24px;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:640px;font-size:15px}thead{background:var(--surface-2)}th{text-align:left;white-space:nowrap;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);border-bottom:1px solid var(--border);padding:10px 14px;font-size:13px;font-weight:600}td{border-bottom:1px solid var(--border);vertical-align:middle;color:var(--text);padding:11px 14px}tr:hover td{background:var(--surface-2)}tr:last-child td{border-bottom:none}td.num,th.num{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right;padding-left:20px}.muted{color:var(--muted)}.small{font-size:13px}.rows{margin:0;padding:0;list-style:none}.rowitem{border-top:1px solid var(--border);padding:12px 0}.rule-row-head{grid-template-columns:12px minmax(0,1fr) 96px auto;align-items:start;column-gap:14px;display:grid}.rule-row-head>.dot{margin-top:7px}.rule-row-meta{text-align:right;white-space:nowrap;flex-direction:column;gap:2px;display:flex}.rule-row-actions{white-space:nowrap;justify-content:flex-end;gap:8px;display:flex}@media (max-width:720px){.rule-row-head{grid-template-columns:12px minmax(0,1fr)}.rule-row-meta{text-align:left;flex-direction:row;grid-column:2;gap:10px;margin-top:6px}.rule-row-actions{grid-column:2;justify-content:flex-start;margin-top:8px}}.rowitem:first-child{border-top:none;padding-top:0}.empty{color:var(--muted);padding:8px 0;font-size:15px}.notice{border:1px solid var(--border);border-left:4px solid var(--warn);background:var(--warn-bg);color:var(--text);border-radius:var(--radius-sm);margin-bottom:16px;padding:12px 18px;font-size:15px;line-height:1.5}.notice.error{border-left-color:var(--crit);background:var(--crit-bg)}.notice.ok{border-left-color:var(--ok);background:var(--ok-bg)}button{font:inherit;font-family:var(--font-body);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-btn);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:7px 18px;font-size:14px;font-weight:500;transition:all .2s cubic-bezier(.2,0,0,1);display:inline-flex}button:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}button:disabled{opacity:.45;cursor:default}button.ghost{background:var(--surface);border-color:var(--border);color:var(--text)}button.ghost:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}button.ghost.active{border-color:var(--primary);color:var(--primary);background:var(--surface-2)}button.primary{background:var(--ink);border-color:var(--ink);color:var(--on-ink);font-weight:600}button.primary:hover:not(:disabled){background:color-mix(in srgb, var(--ink) 85%, var(--primary));border-color:color-mix(in srgb, var(--ink) 85%, var(--primary));color:var(--on-ink)}button.danger{color:var(--crit);border-color:var(--crit-border)}button.danger:hover:not(:disabled){background:var(--crit-bg);border-color:var(--crit);color:var(--crit)}button.delete-confirm{border-radius:var(--radius-sm);border-color:var(--crit-border);width:auto;min-width:0;color:var(--crit);white-space:nowrap;flex-shrink:0}.delete-warning{color:var(--warn);flex:0 0 100%;order:99;margin:4px 0 0}.notice.delete-warning{color:inherit}select{font:inherit;font-family:var(--font-body);color:var(--text);background:var(--surface-2);border:1px solid var(--border-2);border-radius:var(--radius-input);padding:7px 14px;font-size:14px;transition:all .2s}select:focus{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb, var(--primary) 28%, transparent);background:var(--surface-3);outline:none}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.chart svg{width:100%;height:auto;display:block;overflow:visible}.chart .grid{stroke:var(--border);stroke-width:1px}.chart .axis{fill:var(--muted);font-size:13px;font-family:var(--mono)}.chart .marker-line{stroke:var(--muted-2);stroke-width:1px;stroke-dasharray:3 3;opacity:.8}.chart .marker-dot{fill:var(--primary)}.chart .cursor-line{stroke:var(--primary);stroke-width:1.5px;opacity:.5}.chart-legend{flex-wrap:wrap;gap:16px;margin-top:12px;display:flex}.chart-readout{border-top:1px solid var(--border);flex-wrap:wrap;gap:16px;margin-top:10px;padding-top:10px;display:flex}.swatch{border-radius:2px;width:12px;height:4px;display:inline-block}.swatch.marker{background:var(--muted-2)}ol.timeline{margin:0;padding:0;list-style:none}ol.timeline li{border-bottom:1px solid var(--border);gap:18px;padding:12px 0;display:flex}ol.timeline li:last-child{border-bottom:none}ol.timeline .day{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;flex:0 0 74px;padding-top:2px;font-size:14px}ol.timeline .body{flex-direction:column;gap:3px;display:flex}ol.timeline .title{font-size:16px;font-weight:500}.field{flex-direction:column;gap:5px;margin-bottom:16px;display:flex}.field .label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);font-size:13px;font-weight:600}.field .hint{color:var(--muted);font-size:13px}input[type=text],input[type=number],input[type=password],input[type=datetime-local],input[type=time],input[type=search],input:not([type]),textarea{font:inherit;font-family:var(--font-body);color:var(--text);background:var(--surface-2);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border:1px solid var(--border-2);border-radius:var(--radius-input);width:100%;padding:9px 14px;font-size:16px;transition:all .2s cubic-bezier(.2,0,0,1)}input[type=text]::placeholder,input[type=number]::placeholder,input[type=password]::placeholder,input:not([type])::placeholder,textarea::placeholder{color:var(--muted-2)}input[type=text]:focus,input[type=number]:focus,input[type=password]:focus,input[type=datetime-local]:focus,input[type=time]:focus,input[type=search]:focus,input:not([type]):focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb, var(--primary) 28%, transparent);background:var(--surface-3);outline:none}input[type=file]{color:var(--text);font:inherit}input[type=file]::file-selector-button{color:var(--text);background:var(--surface-2);border:1px solid var(--border-2);border-radius:var(--radius-btn);cursor:pointer;margin-right:10px;padding:8px 12px}input[type=checkbox]{accent-color:var(--primary);cursor:pointer;width:16px;height:16px}input[type=number]{font-family:var(--mono);font-variant-numeric:tabular-nums}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 18px;display:grid}.actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}ol.steps{counter-reset:step;margin:0;padding:0;list-style:none}ol.steps li{border-bottom:1px solid var(--border);align-items:baseline;gap:14px;padding:10px 0;display:flex}ol.steps li:last-child{border-bottom:none}ol.steps .mark{text-align:center;font-family:var(--mono);flex:0 0 20px;font-weight:600}ol.steps li.done .mark{color:var(--ok)}ol.steps li.open .mark{color:var(--warn)}ol.steps .what{flex:1}.thumb-broken{border:1px dashed var(--border-2);border-radius:var(--radius-sm);padding:8px 10px;display:inline-block}.framebox{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);justify-content:center;align-items:center;height:320px;display:flex;position:relative;overflow:hidden}.framebox img{object-fit:contain;max-width:100%;max-height:100%}.framelabel{border-radius:var(--radius-pill);color:#fff;letter-spacing:.02em;background:#000000b3;padding:4px 12px;font-size:13px;position:absolute;bottom:10px;left:10px}.frame-player:fullscreen{background:#000;flex-direction:column;gap:10px;padding:16px;display:flex}.frame-player:fullscreen .framebox{flex:1;height:auto}.comparison{grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;display:grid}.comparison img{border-radius:var(--radius-sm);border:1px solid var(--border);width:100%;margin-top:4px;display:block}.gallery{flex-wrap:wrap;gap:8px;display:flex}.gallery img{border-radius:var(--radius-sm);border:1px solid var(--border);width:auto;height:80px;display:block}.gallery figure{margin:0;position:relative}.gallery figcaption{border-radius:0 0 var(--radius-sm) var(--radius-sm);color:var(--text);opacity:0;pointer-events:none;background:#000000d1;flex-direction:column;gap:1px;padding:5px 7px;font-size:11px;line-height:1.3;transition:opacity .12s ease-in-out;display:flex;position:absolute;bottom:0;left:0;right:0}.gallery figure:hover figcaption,.gallery figure:focus-within figcaption{opacity:1}@media (prefers-reduced-motion:reduce){.gallery figcaption{transition:none}}code{font-family:var(--mono);background:var(--surface-2);color:var(--text-dim);border-radius:4px;padding:2px 6px;font-size:13px}pre{font-family:var(--mono);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);padding:14px;font-size:13px;overflow-x:auto}details{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:8px;padding:10px 14px}summary{cursor:pointer;color:var(--text-dim);font-weight:500}@media (max-width:640px){.shell,.page-col,.card,.row,.growhead{min-width:0}.shell{padding-left:14px;padding-right:14px}.card{padding:14px}.form-grid{grid-template-columns:1fr;gap:0}.table-wrap{margin:0 -14px;padding:0 14px}button,.tabs a,.tabs button,select,input,textarea{min-height:44px}code,.small,.muted{overflow-wrap:anywhere}.growhead{flex-wrap:wrap;gap:8px}.gallery{grid-template-columns:1fr}.card{overflow-x:auto}.grid{grid-template-columns:1fr}}@media (max-width:400px){.shell{padding-left:10px;padding-right:10px}.sidebar{padding:8px 10px}}.chat{flex-direction:column;gap:12px;max-height:min(58vh,560px);padding-right:4px;display:flex;overflow-y:auto}.chat-zeile{border:1px solid var(--border);background:var(--surface-2);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:14px;max-width:82%;padding:10px 14px}.chat-zeile.von-mir{background:var(--accent-tint);border-color:var(--border-accent);align-self:flex-end}.chat-zeile.fehler{border-color:var(--crit-border);background:var(--crit-bg)}.chat-zeile p{margin:0}.chat-zeile .herkunft{margin-top:6px;display:block}.chat-eingabe{align-items:flex-end;gap:8px;margin-top:14px;display:flex}.chat-eingabe textarea{resize:none;max-height:200px;overflow-y:auto}@media (max-width:640px){.chat-zeile{max-width:94%}}.device-page-toolbar{margin-bottom:20px}.device-view-tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:4px;padding-bottom:16px}.device-overview{max-width:920px}.device-overview-heading{padding:24px 0 22px}.device-overview-heading h1{color:var(--text-strong);font-family:var(--font-display);letter-spacing:-.02em;margin:8px 0 6px;font-size:42px;font-weight:400;line-height:1.15}.device-overview-summary{color:var(--text-dim);margin:0;font-size:17px}.device-overview-warning{border-left:4px solid var(--warn);border-radius:var(--radius);background:var(--warn-bg);color:var(--warn);align-items:flex-start;gap:12px;margin-bottom:28px;padding:14px 16px;display:flex}.device-overview-warning svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:22px;height:22px}.device-overview-warning p{color:var(--text);margin:3px 0 0;font-size:14px}.device-toolbar-row{justify-content:space-between;align-items:center;gap:16px;margin:24px 0 20px;display:flex}.device-back-link{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:0;font-size:14px;font-weight:500}.device-search{width:320px;max-width:100%;position:relative}.device-search svg{fill:none;width:16px;height:16px;stroke:var(--muted);stroke-width:2px;pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.device-search input{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:999px;padding:11px 16px 11px 40px;font-size:14px}.device-search input:focus{border-color:var(--outline-focus);outline:none}.device-role-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;display:grid}.device-role-tile{border:1px solid var(--border);background:var(--surface-container-low);color:var(--text);text-align:left;cursor:pointer;border-radius:14px;flex-direction:column;align-items:flex-start;gap:8px;padding:20px;font-family:inherit;transition:border-color .15s;display:flex}.device-role-tile:hover{border-color:var(--border-accent-strong)}.device-role-tile-icon{background:var(--secondary-tint);width:36px;height:36px;color:var(--secondary);border-radius:10px;place-items:center;display:grid}.device-role-tile-icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.device-role-tile strong{font-size:16px;font-weight:600}.device-role-tile-count{color:var(--muted);font-size:13px}.device-role-tile-status{color:var(--ok);font-size:12px}.device-role-tile-status.attention{color:var(--warn)}.device-overview-item-focus .device-overview-row{border-radius:var(--radius-sm);outline:2px solid var(--primary);outline-offset:4px}.device-overview-list{flex-direction:column;display:flex}.device-overview-item{border-bottom:1px solid var(--border)}.device-overview-row{grid-template-columns:40px minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:17px 0;display:grid}.device-quick-actions{justify-content:flex-end}.device-quick-actions button{min-width:3rem}.target-band-focus{outline:2px solid var(--primary);outline-offset:2px}.device-overview-icon{background:var(--secondary-tint);width:38px;height:38px;color:var(--secondary);border-radius:10px;place-items:center;display:grid}.device-overview-icon svg{fill:none;stroke:currentColor;stroke-width:1.65px;stroke-linecap:round;stroke-linejoin:round;width:21px;height:21px}.device-overview-name{flex-direction:column;min-width:0;display:flex}.device-overview-name strong{color:var(--text-strong);font-size:16px;font-weight:600}.device-overview-name>span,.device-overview-name small,.device-overview-state small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.device-overview-name>span{color:var(--text-dim)}.device-overview-state{text-align:right;min-width:132px}.device-overview-state strong{color:var(--text-strong);font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:center;gap:7px;font-size:15px;display:flex}.device-overview-state.unknown strong{color:var(--warn)}.device-overview-state.inactive strong{color:var(--muted)}.device-overview-details{padding:0 0 14px 54px}.device-overview-details>.card{border-color:var(--border);background:var(--surface-container-low);padding:13px 16px}.device-overview-details>.card:hover{border-color:var(--border-2)}.device-overview-details .karte-kopf h2{color:var(--secondary);font-family:var(--font-body);font-size:13px;font-weight:600}.device-controls{margin-bottom:14px}.device-card-role{align-items:center;gap:8px;margin-top:14px;display:flex}.device-card-role select{flex:1}.device-technical-identity{margin:12px 0}.device-card-manage{margin-top:20px}@media (max-width:620px){.device-overview-heading{padding-top:14px}.device-overview-heading h1{font-size:34px}.device-overview-row{grid-template-columns:34px minmax(0,1fr) auto;gap:10px}.device-quick-actions{grid-column:2/-1;justify-content:flex-start}.device-overview-icon{width:32px;height:34px}.device-overview-state{min-width:86px}.device-overview-state strong{font-size:13px}.device-overview-state small{white-space:normal}.device-overview-details{padding-left:44px}}.monitor-page-head{justify-content:space-between;align-items:flex-start}.monitor-page-head>div{min-width:0}.monitor-phase{color:var(--muted);margin:7px 0 0;font-size:15px}.monitor-charts{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:20px 24px}.monitor-charts>h2{color:var(--text-strong);margin:0 0 14px;font-family:inherit;font-size:18px;font-weight:600}.monitor-page{gap:20px}.monitor-summary{border:1px solid var(--border-accent);background:var(--accent-tint);border-radius:12px;align-items:flex-start;gap:14px;padding:18px 20px;display:flex}.monitor-summary.attention{color:var(--warn);border-color:var(--warn-border);background:var(--warn-bg)}.monitor-summary.incomplete,.monitor-summary.stale{border-color:var(--border);background:var(--surface-2)}.monitor-summary-icon{width:24px;height:24px;color:var(--primary);border:1px solid;border-radius:50%;flex:0 0 24px;justify-content:center;align-items:center;margin-top:1px;font-weight:600;display:inline-flex}.monitor-summary.attention .monitor-summary-icon{color:var(--warn)}.monitor-summary.incomplete .monitor-summary-icon,.monitor-summary.stale .monitor-summary-icon{color:var(--muted)}.monitor-summary h1{color:var(--text-strong);margin:0;font-family:inherit;font-size:18px;font-weight:600;line-height:1.35}.monitor-summary p{color:var(--text);margin:4px 0 0;font-size:15px;line-height:1.55}.monitor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.monitor-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.monitor-metric{border:1px solid var(--border-accent);background:var(--surface);border-radius:16px;min-width:0;transition:border-color .2s;overflow:hidden}.monitor-metric:hover{border-color:var(--border-accent-strong)}.monitor-metric.out{border-color:var(--warn-border)}.monitor-metric-main{padding:23px 24px 21px}.monitor-metric-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.monitor-metric-head h2{color:var(--text-strong);margin:0;font-family:inherit;font-size:18px;font-weight:600}.monitor-state{color:var(--primary);background:var(--accent-tint);border-radius:7px;flex:none;align-items:center;gap:6px;padding:5px 9px;font-size:14px;font-weight:500;display:inline-flex}.monitor-metric.out .monitor-state{color:var(--warn);background:var(--warn-bg)}.monitor-value{color:var(--text-strong);font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.06em;margin:16px 0 10px;font-size:clamp(29px,4vw,42px);font-weight:600;line-height:1.08}.monitor-value span{color:var(--muted);letter-spacing:-.02em;margin-left:8px;font-family:inherit;font-size:.46em;font-weight:500}.monitor-target{color:var(--muted);margin:0;font-size:15px}.monitor-target strong{color:var(--text);font-weight:600}.monitor-history{border-top:1px solid var(--border);align-items:center;gap:16px;min-height:86px;padding:17px 24px;display:flex}.monitor-share{color:var(--text-strong);font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.04em;flex:none;font-size:32px;line-height:1}.monitor-history>span{color:var(--muted);font-size:14px;line-height:1.4}.monitor-history>span strong{color:var(--text);font-weight:600;display:block}.monitor-details{border-top:1px solid var(--border)}.monitor-details summary{min-height:52px;color:var(--text);cursor:pointer;justify-content:space-between;align-items:center;padding:14px 24px;font-size:16px;font-weight:500;list-style:none;display:flex}.monitor-details summary::-webkit-details-marker{display:none}.monitor-details summary:after{content:"+";color:var(--muted);font-size:22px;font-weight:400}.monitor-details[open] summary:after{content:"−"}.monitor-details summary:focus-visible{outline:2px solid var(--primary);outline-offset:-3px}.monitor-detail-body{color:var(--text);padding:0 24px 22px;font-size:16px;line-height:1.6}.monitor-detail-body>p{margin:0 0 16px}.monitor-detail-body dl{margin:0}.monitor-detail-body dl>div{border-top:1px solid var(--border);justify-content:space-between;gap:14px;padding:9px 0;display:flex}.monitor-detail-body dt{color:var(--muted)}.monitor-detail-body dd{color:var(--text-strong);font-variant-numeric:tabular-nums;text-align:right;margin:0}.monitor-missing{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:20px 24px}.monitor-missing>h2{color:var(--text-strong);margin:0 0 8px;font-family:inherit;font-size:18px;font-weight:600}.monitor-gap{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;padding:16px 0;display:flex}.monitor-gap:first-of-type{border-top:0}.monitor-gap p{color:var(--muted);margin:4px 0 0;font-size:15px;line-height:1.55}.monitor-gap a{flex:none}.monitor-footer{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 24px;padding:4px 2px 0;font-size:13px;display:flex}.monitor-footer p{border-top:1px solid var(--border);flex-basis:100%;margin:8px 0 0;padding-top:14px}@media (max-width:760px){.monitor-grid{grid-template-columns:1fr}.monitor-page-head{align-items:stretch}}@media (max-width:480px){.monitor-metric-main,.monitor-history,.monitor-detail-body,.monitor-details summary{padding-left:18px;padding-right:18px}.monitor-metric-head,.monitor-gap{flex-direction:column;align-items:flex-start}.monitor-value{font-size:clamp(23px,8vw,34px)}}.device-stepper{align-items:center;gap:8px;display:flex}.device-stepper-btn{border:1px solid var(--border-2);background:var(--surface-2);width:44px;height:44px;min-height:44px;color:var(--text);cursor:pointer;border-radius:10px;flex:none;justify-content:center;align-items:center;font-size:20px;line-height:1;display:flex}.device-stepper-btn:disabled{opacity:.4;cursor:default}.device-stepper-btn:not(:disabled):active{border-color:var(--primary);color:var(--primary)}.device-stepper-value,.device-stepper-input{text-align:center;border:1px solid var(--border);background:var(--surface);min-width:84px;height:44px;min-height:44px;color:var(--text);border-radius:10px;flex:1;font-size:14px;font-weight:600}.device-stepper-value{cursor:pointer}.device-stepper-value:disabled{opacity:.6;cursor:default}.device-stepper-input{padding:0 8px}.device-stepper-input::-webkit-outer-spin-button{appearance:none;margin:0}.device-stepper-input::-webkit-inner-spin-button{appearance:none;margin:0}:root{--h1-size:var(--page-title-size);--h2-size:22px;--h3-size:16px}html body h1{font-family:var(--font-display)!important;font-size:var(--h1-size)!important;letter-spacing:.01em!important;font-weight:400!important;line-height:1.13!important}html body h2{font-family:var(--font-display)!important;font-size:var(--h2-size)!important;letter-spacing:.01em!important;font-weight:400!important;line-height:1.2!important}html body h3{font-family:var(--font-body)!important;font-size:var(--h3-size)!important;letter-spacing:0!important;font-weight:600!important;line-height:1.3!important}.palette-open{border:1px solid var(--nav-border);border-radius:var(--radius-nav);color:var(--nav-muted);cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:8px;margin:0 0 12px;padding:9px 14px;font-size:14px;display:flex}.palette-open:hover{background:var(--nav-hover-bg);color:var(--nav-text)}.palette-open kbd{font:600 11px var(--font-body);border:1px solid var(--border-2);border-radius:5px;padding:1px 6px}.palette-scrim{z-index:100;background:#0009;justify-content:center;align-items:flex-start;padding:12vh 16px 0;display:flex;position:fixed;inset:0}.palette{background:var(--surface-2);border:1px solid var(--border-2);border-radius:18px;width:min(560px,100%);overflow:hidden}.palette-input{border:0;border-bottom:1px solid var(--border);width:100%;color:var(--text);background:0 0;border-radius:0;padding:16px 18px;font-size:16px}.palette-list{max-height:50vh;margin:0;padding:6px;list-style:none;overflow-y:auto}.palette-list li{cursor:pointer;color:var(--text);border-radius:10px;justify-content:space-between;gap:12px;padding:11px 12px;display:flex}.palette-list li.on{background:var(--primary-container);color:var(--on-primary-container)}.palette-group,.palette-empty{color:var(--muted);font-size:13px}.palette-empty{cursor:default;padding:12px}@media (max-width:720px){.palette-scrim{padding:0}.palette{border-radius:0;width:100%;height:100%}.palette-list{max-height:none}}.device-md{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (min-width:1001px){.device-md{grid-template-columns:minmax(320px,2fr) minmax(0,3fr)}.device-md-detail{position:sticky;top:16px}}.device-overview-item.selected{border-color:var(--primary);background:var(--primary-container)}.device-overview-row[role=button]{cursor:pointer}.device-md-detail .device-overview-details{padding:0}.drawer-scrim{z-index:200;background:#0000008c;justify-content:flex-end;display:flex;position:fixed;inset:0}.app:has(.drawer-scrim) .sidebar{display:none}.card.drawer{border-radius:18px 0 0 18px;flex-direction:column;width:min(480px,100%);height:100%;margin:0;display:flex;overflow-y:auto}.card.drawer .actions{background:var(--surface);margin-top:auto;padding:10px 0 2px;position:sticky;bottom:0}@media (max-width:720px){.drawer-scrim{align-items:flex-end}.card.drawer{border-radius:18px 18px 0 0;width:100%;height:auto;max-height:90dvh}}.timeline-art-filter{flex-wrap:wrap;margin-bottom:10px}
.eyebrow{color:var(--muted);font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;margin-bottom:5px;font-size:11px;font-weight:700;display:block}.setup-nudge{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-container-low);justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px;padding:12px 16px;display:flex}.setup-nudge>div{flex-direction:column;gap:2px;display:flex}.setup-nudge span{color:var(--muted);font-size:14px}.home-zones{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.home-zone{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-container-low);padding:0 16px}.home-zone[open]{padding-bottom:14px}.home-zones-empty{border:1px solid var(--border-accent);border-radius:var(--radius);background:var(--surface);justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:16px 18px;display:flex}.home-zones-empty div{flex-direction:column;gap:2px;display:flex}.home-zones-empty span{color:var(--muted);font-size:14px}.section-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.section-heading h2,.card .section-heading h2{color:var(--text-strong);margin:0;font-size:24px}.section-heading>a{flex:none;margin-top:7px;font-size:13px}.chart.compact .chart-legend{margin-top:8px}.chart.compact .axis{font-size:11px}.empty-state{max-width:680px;margin:9vh auto 0;padding:36px}.empty-state h1{color:var(--text-strong);font-family:var(--font-display);margin:0 0 12px;font-size:38px;font-weight:400}.button-link{border:1px solid var(--border);border-radius:var(--radius-btn);justify-content:center;align-items:center;min-height:42px;padding:7px 18px;text-decoration:none;display:inline-flex}.button-link.primary{border-color:var(--ink);background:var(--ink);color:var(--on-ink)}.button-link:hover{text-decoration:none}.compact-empty p{margin-top:0}.insight-evidence{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin:0 0 16px;display:grid}.insight-evidence>div{border:1px solid var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--surface-2) 55%, transparent);flex-direction:column;gap:4px;min-width:0;padding:10px 12px;display:flex}.insight-evidence dt{color:var(--muted);font-size:13px}.insight-evidence dd{color:var(--text-strong);font-family:var(--font-body);margin:0;font-size:13px}@media (max-width:860px){body{padding-bottom:calc(74px + env(safe-area-inset-bottom))}.app{display:block}.sidebar{z-index:100;width:auto;height:calc(68px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);padding:0 0 env(safe-area-inset-bottom);border:0;border-top:1px solid var(--border);background:color-mix(in srgb, var(--surface) 96%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:block;position:fixed;inset:auto 0 0;overflow:visible}.sidebar-brand,.sidebar-status,.sidebar>.language-choice,.sidebar-footer{display:none!important}.sidebar-nav{grid-template-columns:repeat(6,1fr);gap:0;height:100%;display:grid}.sidebar-nav a{border:0;border-radius:0;flex-direction:column;justify-content:center;gap:3px;min-width:0;padding:6px 2px 5px;font-size:10px;display:flex}.sidebar-nav a span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.sidebar-nav a svg{width:20px;height:20px}.sidebar-nav a[aria-current=page]{color:var(--primary);background:0 0;border:0}.sidebar-nav a[aria-current=page] svg{color:var(--primary)}.main-area{width:100%}.shell{padding-bottom:20px}.setup-nudge,.home-zones-empty{flex-direction:column;align-items:flex-start}}@media (max-width:520px){.section-heading h2,.card .section-heading h2{font-size:21px}}
.camera-home-grid{grid-template-columns:minmax(0,1.6fr) minmax(280px,.65fr);align-items:start;gap:18px;display:grid}.camera-main,.camera-side{flex-direction:column;gap:16px;min-width:0;display:flex}.camera-hero{border:1px solid var(--border-accent);border-radius:var(--radius);background:var(--surface);overflow:hidden}.camera-photo{background:#060708;justify-content:center;align-items:center;min-height:460px;display:flex;position:relative;overflow:hidden}.camera-photo a{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.camera-photo img{object-fit:contain;width:100%;height:100%;max-height:68vh;display:block}.camera-photo-meta{border:1px solid color-mix(in srgb, var(--border) 70%, transparent);border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000c7;justify-content:space-between;align-items:flex-end;gap:12px;padding:10px 13px;display:flex;position:absolute;bottom:16px;left:16px;right:16px}.camera-photo-meta span{color:#d6d8de;text-transform:uppercase;letter-spacing:.08em;font-size:12px}.camera-photo-meta strong{color:#fff;font-size:13px;font-weight:600}.camera-caption{color:var(--text-dim);margin:0;padding:12px 16px}.camera-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.camera-strip figure{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);aspect-ratio:1;margin:0;position:relative;overflow:hidden}.camera-strip-item{border-radius:var(--radius-sm);display:block}.camera-strip-item:hover figure,.camera-strip-item:focus-visible figure{border-color:var(--border-accent-strong);box-shadow:0 0 0 1px var(--border-accent-strong)}.camera-strip img{object-fit:cover;width:100%;height:100%}.camera-strip figcaption{color:#fff;background:#000000c2;padding:5px 7px;font-size:10px;position:absolute;bottom:0;left:0;right:0}.camera-live-frame img{border-radius:var(--radius-sm);object-fit:contain;background:#060708;width:100%;max-height:50vh;margin-top:8px;display:block}.camera-live-frame:fullscreen{background:#000;flex-direction:column;gap:10px;padding:16px;display:flex}.camera-live-frame:fullscreen img{flex:1;height:0;min-height:0;max-height:none}.camera-actions-card nav{flex-direction:column;display:flex}.camera-actions-card nav a{border-bottom:1px solid var(--border);color:var(--text);grid-template-columns:1fr auto;gap:2px 12px;padding:12px 0;text-decoration:none;display:grid}.camera-actions-card nav a:last-child{border-bottom:0}.camera-actions-card strong{color:var(--text-strong);font-size:14px}.camera-actions-card small{color:var(--muted);font-size:12px}.camera-actions-card nav a>span{color:var(--muted);grid-area:1/2/3;align-self:center}.camera-actions-card nav a:hover strong,.camera-actions-card nav a:hover>span{color:var(--primary)}@media (max-width:980px){.camera-home-grid{grid-template-columns:1fr}.camera-side{grid-template-columns:1fr 1fr;display:grid}}@media (max-width:700px){.camera-photo{min-height:300px}.camera-side{display:flex}.camera-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.camera-photo-meta{flex-direction:column;align-items:flex-start}}.device-view-tabs+.camera-home-grid{margin-top:24px}.camera-capture{flex-wrap:wrap;gap:12px 16px;padding:12px 16px;display:flex}.capture-button{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}
.timeline-product-layout{flex-direction:column;gap:18px;display:flex}.timeline-add-trigger-row{justify-content:flex-end;display:flex}.timeline-add-trigger{border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--muted);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:6px 14px;font-size:13px;transition:color .15s,border-color .15s;display:inline-flex}.timeline-add-trigger:hover{color:var(--primary);border-color:var(--border-accent-strong)}.timeline-event-form{max-width:860px}.timeline-form-icon{color:var(--primary);font-size:30px}.timeline-story{max-width:100%}.timeline-story ol{margin:0;padding:0;list-style:none}.timeline-story-row{grid-template-columns:84px 38px minmax(0,1fr);gap:12px;min-height:92px;display:grid}.timeline-story-time{flex-direction:column;align-items:flex-end;padding-top:15px;display:flex}.timeline-story-time strong{color:var(--text);font-family:var(--mono);font-size:15px}.timeline-story-time span{color:var(--muted);font-size:12px}.timeline-story-marker{justify-content:center;display:flex;position:relative}.timeline-story-marker:after{content:"";background:var(--border);width:1px;position:absolute;top:40px;bottom:-1px}.timeline-story-row:last-child .timeline-story-marker:after{display:none}.timeline-story-marker>span{z-index:1;border:1px solid var(--border-accent);background:var(--bg);width:34px;height:34px;color:var(--primary);border-radius:50%;justify-content:center;align-items:center;margin-top:8px;font-size:14px;display:flex;position:relative}.timeline-story-content{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-width:0;margin-bottom:14px;padding:16px 20px}.timeline-story-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.timeline-story-head>div{flex-direction:column;min-width:0;display:flex}.timeline-story-head strong{color:var(--text-strong);font-size:17px}.timeline-story-head span{color:var(--muted);font-size:12px}.timeline-story-content>p{color:var(--text-dim);margin:9px 0 0;font-size:15px}.timeline-product-layout .tabs{gap:4px}.timeline-product-layout .tab{padding:11px 18px;font-size:16px}.timeline-photo-row{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.timeline-photo-row img{object-fit:cover;border:1px solid var(--border);border-radius:var(--radius-sm);width:84px;height:84px;display:block}.timeline-edit{border-top:1px solid var(--border);margin-top:14px;padding-top:14px}.timeline-empty{margin-top:0}@media (max-width:560px){.timeline-story-row{grid-template-columns:48px 28px minmax(0,1fr);gap:6px}.timeline-story-time strong{font-size:11px}.timeline-story-time span{font-size:10px}.timeline-story-marker>span{width:25px;height:25px}.timeline-story-marker:after{top:31px}.timeline-story-content{padding:11px 12px}}
.onboarding-shell{max-width:780px;margin:4vh auto 0}.onboarding-head{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:14px;display:flex}.onboarding-head strong{color:var(--text-strong);font-family:var(--font-display);font-size:24px;font-weight:400;display:block}.onboarding-progress{color:var(--muted);font-size:12px}.onboarding-bar{background:var(--border);border-radius:2px;height:3px;margin-bottom:22px;overflow:hidden}.onboarding-bar span{background:var(--primary);height:100%;transition:width .2s;display:block}.onboarding-card{border:1px solid var(--border-accent);border-radius:var(--radius);background:var(--surface);min-height:430px;padding:clamp(24px,5vw,46px)}.onboarding-step h1{color:var(--text-strong);font-family:var(--font-display);margin:0 0 8px;font-size:clamp(30px,5vw,44px);font-weight:400;line-height:1.14}.onboarding-step>p{max-width:620px;color:var(--muted);margin:0}.onboarding-content{margin-top:30px}.onboarding-input{border-radius:var(--radius-input);width:100%;min-height:54px;padding:10px 18px;font-size:17px}.onboarding-choices{gap:10px;display:grid}.onboarding-choices.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.onboarding-choices>button{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-container-low);text-align:left;flex-direction:column;justify-content:center;align-items:flex-start;min-height:78px;padding:14px 46px 14px 16px;display:flex;position:relative}.onboarding-choices>button:hover,.onboarding-choices>button.selected{border-color:var(--primary);background:var(--primary-container)}.onboarding-choices strong{color:var(--text-strong);font-size:15px}.onboarding-choices small{color:var(--muted);margin-top:3px;font-size:12px;line-height:1.4}.choice-mark{color:var(--primary);position:absolute;top:50%;right:16px;transform:translateY(-50%)}.onboarding-two{grid-template-columns:1fr 1fr;gap:12px;margin-top:18px;display:grid}.onboarding-two label{color:var(--muted);flex-direction:column;gap:6px;font-size:12px;display:flex}.onboarding-two input{width:100%}.onboarding-summary{flex-direction:column;display:flex}.onboarding-summary>div{border-bottom:1px solid var(--border);justify-content:space-between;gap:20px;padding:11px 0;display:flex}.onboarding-summary span{color:var(--muted)}.onboarding-summary strong{color:var(--text-strong);text-align:right}.onboarding-actions{margin-top:16px;display:flex}@media (max-width:700px){.onboarding-shell{margin-top:0}.onboarding-head{align-items:flex-start}.onboarding-card{min-height:0;padding:22px 18px}.onboarding-choices.compact,.onboarding-two{grid-template-columns:1fr}.onboarding-actions{padding-bottom:8px}}
.more-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.more-group{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:20px}.more-group h2{color:var(--primary);font-family:var(--font-display);margin:0 0 12px;font-size:22px;font-weight:400}.more-links{flex-direction:column;display:flex}.more-link{border-bottom:1px solid var(--border);color:var(--text);justify-content:space-between;align-items:center;gap:16px;padding:13px 0;text-decoration:none;display:flex}.more-link:last-child{border-bottom:0}.more-link:hover{text-decoration:none}.more-link:hover strong,.more-link:hover .more-arrow{color:var(--primary)}.more-link>span:first-child{flex-direction:column;gap:2px;min-width:0;display:flex}.more-link strong{color:var(--text-strong);font-size:15px}.more-link small{color:var(--muted);font-size:13px;line-height:1.45}.more-arrow{color:var(--muted);font-size:18px}@media (max-width:760px){.more-groups{grid-template-columns:1fr}}
.detail-navigation{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;margin:0 0 24px;padding:0 0 20px;display:flex}.detail-back{border:1px solid var(--border);border-radius:var(--radius-sm);min-height:44px;color:var(--text-strong);align-items:center;gap:8px;padding:8px 14px;font-size:14px;display:inline-flex}.detail-back:hover{background:var(--surface);border-color:var(--primary);text-decoration:none}.detail-breadcrumb{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.detail-breadcrumb a{color:var(--primary)}.detail-surface .growhead{border-bottom:1px solid var(--border);margin-bottom:20px;padding-bottom:16px}.detail-surface .page-col{max-width:100%}.phase-targets .section-heading{margin-bottom:8px}.phase-workspace-heading{align-items:flex-end;gap:20px;padding:20px 0;display:flex}.phase-select-label{min-width:0;color:var(--muted);flex:1;gap:8px;font-size:13px;display:grid}.phase-select-label select{border-radius:var(--radius-sm);width:100%;min-width:0;min-height:48px;padding:12px;font-size:16px}.phase-workspace-heading .phase-status{margin-bottom:10px}.phase-targets .phase-target-editor{background:0 0;padding:20px 0 0}.phase-targets .target-duration input,.phase-targets .target-editor-options select,.phase-targets .target-band-values input{border-radius:8px}.insight-data-links{flex-wrap:wrap;gap:12px 24px;margin-top:16px;display:flex}.insight-data-links a{align-items:center;min-height:44px;font-size:13px;display:inline-flex}.phase-status{color:var(--muted);border:1px solid var(--border);text-align:center;border-radius:20px;padding:5px 10px;font-size:11px}.phase-status.active{color:var(--primary);border-color:var(--primary)}.phase-target-editor{border-top:1px solid var(--border);background:var(--surface);padding:20px}.phase-target-editor fieldset{border:0;min-width:0;margin:0;padding:0}.target-bands{gap:10px;display:grid}.target-band{border:1px solid var(--border);border-radius:var(--radius-sm);grid-template-columns:minmax(130px,1fr) minmax(0,2fr);align-items:center;gap:20px;padding:14px;display:grid}.target-band-name{flex-direction:row;justify-content:space-between;align-items:center;gap:10px;font-size:14px;display:flex}.target-band-name>div{flex-direction:column;gap:4px;display:flex}.target-band-remove{flex:none;padding:6px 10px}.target-band-name span{color:var(--muted);font-size:12px}.target-band-values{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.target-band-values label,.target-duration{min-width:0;color:var(--muted);flex-direction:column;gap:6px;font-size:12px;display:flex}.target-band-values input,.target-duration input{width:100%;min-width:0;min-height:44px;font-family:var(--mono);padding:10px}.target-band-values label:nth-child(2) input{border-color:var(--primary)}.target-editor-options{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:18px;margin-top:20px;display:grid}.target-editor-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:12px;margin-top:20px;padding-top:16px;display:flex}.target-editor-actions button{min-height:44px}@media (max-width:700px){.detail-navigation{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:20px}.phase-workspace-heading{flex-wrap:wrap;gap:12px}.phase-select-label{flex-basis:100%}.phase-target-editor{padding:12px}.target-band{grid-template-columns:1fr;gap:12px;padding:12px}.target-band-name,.target-band-values{gap:8px}.target-editor-options{grid-template-columns:1fr;gap:12px}.target-editor-actions{flex-wrap:wrap}.target-editor-actions button{flex:1}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.gallery.companion-gallery{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px;display:grid}.companion-gallery figure{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:0;overflow:hidden}.companion-gallery img{aspect-ratio:4/3;object-fit:cover;border:0;border-radius:0;width:100%;height:auto}.companion-gallery figcaption{opacity:1;pointer-events:auto;overflow-wrap:anywhere;background:0 0;gap:5px;padding:12px;position:static}.gallery-delete-actions{flex-wrap:wrap;gap:6px;display:flex}.gallery-delete-actions button{flex:none}@media (max-width:380px){.gallery.companion-gallery{grid-template-columns:1fr}}
