@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root,[data-theme=light]{--font-scale:.6;--font:"Inter", system-ui, -apple-system, sans-serif;--text:#374151;--text-muted:#6b7280;--text-heading:#111827;--bg:#fafafa;--bg-card:#fff;--border:#e5e7eb;--border-focus:#334155;--accent:#334155;--accent-hover:#1e293b;--accent-muted:#3341551a;--accent-contrast:#fff;--radius:8px;--radius-lg:12px;--shadow-sm:0 1px 2px #0000000d;--shadow:0 1px 3px #00000014;--error:#dc2626;--error-bg:#dc262614;--success:#059669;--warning:#d97706;--input-bg:lightgrey;--surface:#f3f4f6;--code-bg:var(--bg-card);--text-h:var(--text-heading)}[data-theme=dark]{--input-bg:#2a2a2a;--text:#a3a3a3;--text-muted:#737373;--text-heading:#fafafa;--bg:#1a1a1a;--bg-card:#1f1f1f;--border:#2f2f2f;--border-focus:#cbd5e1;--accent:#cbd5e1;--accent-hover:#e2e8f0;--accent-muted:#94a3b82e;--accent-contrast:#0f172a;--shadow-sm:0 1px 2px #0003;--shadow:0 1px 3px #0000004d;--surface:#262626}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--input-bg:#2a2a2a;--text:#a3a3a3;--text-muted:#737373;--text-heading:#fafafa;--bg:#1a1a1a;--bg-card:#1f1f1f;--border:#2f2f2f;--border-focus:#cbd5e1;--accent:#cbd5e1;--accent-hover:#e2e8f0;--accent-muted:#94a3b82e;--accent-contrast:#0f172a;--shadow-sm:0 1px 2px #0003;--shadow:0 1px 3px #0000004d;--surface:#262626}}[data-palette=graphit]{--accent:#334155;--accent-hover:#1e293b;--accent-muted:#3341551a;--accent-contrast:#fff;--border-focus:#334155}[data-palette=blau]{--accent:#1d4ed8;--accent-hover:#1e40af;--accent-muted:#1d4ed81a;--accent-contrast:#fff;--border-focus:#1d4ed8}[data-palette=teal]{--accent:#0f766e;--accent-hover:#115e59;--accent-muted:#0f766e1a;--accent-contrast:#fff;--border-focus:#0f766e}[data-palette=stein]{--accent:#57534e;--accent-hover:#44403c;--accent-muted:#57534e1a;--accent-contrast:#fff;--border-focus:#57534e}[data-theme=dark][data-palette=graphit]{--accent:#cbd5e1;--accent-hover:#e2e8f0;--accent-muted:#94a3b82e;--accent-contrast:#0f172a;--border-focus:#cbd5e1}[data-theme=dark][data-palette=stein]{--accent:#d6d3d1;--accent-hover:#e7e5e4;--accent-muted:#d6d3d12e;--accent-contrast:#1c1917;--border-focus:#d6d3d1}[data-theme=dark][data-palette=blau]{--accent:#60a5fa;--accent-hover:#93c5fd;--accent-muted:#60a5fa2e;--accent-contrast:#0b1220;--border-focus:#60a5fa}[data-theme=dark][data-palette=teal]{--accent:#2dd4bf;--accent-hover:#5eead4;--accent-muted:#2dd4bf2e;--accent-contrast:#04201c;--border-focus:#2dd4bf}@media (prefers-color-scheme:dark){:root:not([data-theme=light])[data-palette=graphit]{--accent:#cbd5e1;--accent-hover:#e2e8f0;--accent-muted:#94a3b82e;--accent-contrast:#0f172a;--border-focus:#cbd5e1}:root:not([data-theme=light])[data-palette=stein]{--accent:#d6d3d1;--accent-hover:#e7e5e4;--accent-muted:#d6d3d12e;--accent-contrast:#1c1917;--border-focus:#d6d3d1}:root:not([data-theme=light])[data-palette=blau]{--accent:#60a5fa;--accent-hover:#93c5fd;--accent-muted:#60a5fa2e;--accent-contrast:#0b1220;--border-focus:#60a5fa}:root:not([data-theme=light])[data-palette=teal]{--accent:#2dd4bf;--accent-hover:#5eead4;--accent-muted:#2dd4bf2e;--accent-contrast:#04201c;--border-focus:#2dd4bf}}*{box-sizing:border-box}html{font-size:60%}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:.9375rem;line-height:1.5}#root{flex-direction:column;min-height:100vh;display:flex}h1,h2,h3{color:var(--text-heading);margin:0;font-weight:600}h1{letter-spacing:-.02em;font-size:1.5rem}h2{font-size:1.125rem}h3{font-size:1rem}p{margin:0}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button svg,a svg{vertical-align:-.125em}.grundstuecke-add-btn,.grundstuecke-view-btn,.grundstuecke-filter-reset,.gesuche-btn-new,.gesuche-filter-reset,.crm-kontakte-add-btn,.crm-deals-add-btn,.crm-deals-view-btn,.crm-aktivitaeten-add-btn,.crm-termine-add-btn,.konzepte-filter-reset,.pd-btn,.cde-btn,.cde-quicklink,.data-import-btn-outline,.data-import-btn-primary,.grundstueck-form-expose-btn,.grundstueck-form-btn-save,.dup-btn{align-items:center;gap:.375rem;display:inline-flex}.sb-layout{background:var(--bg,var(--bg-page,#0b0b0c));min-height:100vh;display:flex;position:relative}.sb-unauth{min-height:100vh}.sb-sidebar{background:var(--sb-sidebar-bg,#1a1a1a);border-right:1px solid var(--sb-sidebar-border,#262626);z-index:1200;will-change:width;box-sizing:border-box;flex-direction:column;align-items:stretch;width:56px;height:100vh;padding:8px 0 12px;transition:width .2s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;left:0;overflow:hidden}.sb-sidebar.expanded{width:240px;box-shadow:4px 0 16px #00000026}[data-theme=light] .sb-sidebar.expanded,:root:not([data-theme]) .sb-sidebar.expanded{box-shadow:4px 0 16px #0000000f}[data-theme=light] .sb-sidebar,:root:not([data-theme]) .sb-sidebar{background:var(--sb-sidebar-bg-light,#fafafa);border-right-color:#e5e5e5}@media (prefers-color-scheme:light){:root:not([data-theme]) .sb-sidebar{background:#fafafa;border-right-color:#e5e5e5}}.sb-brand{white-space:nowrap;border-radius:6px;justify-content:flex-start;align-items:center;gap:10px;height:40px;margin:0 8px 12px;padding:0 8px;text-decoration:none;display:flex;overflow:hidden}.sb-brand-mark{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-hover) 100%);color:#fff;width:28px;height:28px;font-weight:700;font-size:calc(14px * var(--font-scale));letter-spacing:-.5px;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sb-brand-text{font-weight:600;font-size:calc(14px * var(--font-scale));color:var(--text-heading,#f5f5f5);opacity:0;white-space:nowrap;transition:opacity .15s 50ms}[data-theme=light] .sb-brand-text,:root:not([data-theme]) .sb-brand-text{color:#171717}.sb-sidebar.expanded .sb-brand-text{opacity:1}.sb-nav{flex-direction:column;flex:1;gap:2px;padding:4px 8px;display:flex;overflow:hidden auto}.sb-nav::-webkit-scrollbar{width:4px}.sb-nav::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.sb-sidebar-bottom{border-top:1px solid var(--sb-sidebar-border,#262626);flex-direction:column;flex-shrink:0;gap:2px;margin:0 8px;padding:8px 0;display:flex}[data-theme=light] .sb-sidebar-bottom,:root:not([data-theme]) .sb-sidebar-bottom{border-top-color:#e5e5e5}.sb-nav-item-wrap{width:100%;position:relative}.sb-nav-item{width:100%;height:36px;color:var(--sb-icon,#9ca3af);cursor:pointer;font:inherit;text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:6px;outline:none;align-items:center;gap:10px;padding:0 8px;text-decoration:none;transition:background .12s,color .12s;display:flex;position:relative;overflow:hidden}.sb-nav-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.sb-nav-icon{flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.sb-nav-label{font-size:calc(13px * var(--font-scale));opacity:0;text-overflow:ellipsis;flex:1;font-weight:500;transition:opacity .15s 50ms;overflow:hidden}.sb-sidebar.expanded .sb-nav-label{opacity:1}.sb-nav-chevron{opacity:0;color:currentColor;align-items:center;margin-left:auto;transition:opacity .15s 50ms,transform .15s;display:flex}.sb-sidebar.expanded .sb-nav-chevron{opacity:.5}.sb-nav-item.active .sb-nav-chevron,.sb-nav-item.hovered .sb-nav-chevron{opacity:1;transform:rotate(90deg)}.sb-nav-item:hover{background:var(--sb-icon-hover-bg,#ffffff0f);color:var(--sb-icon-hover,#fff);text-decoration:none}.sb-nav-item.active{background:var(--sb-icon-active-bg,var(--accent-muted));color:var(--sb-icon-active,var(--accent))}[data-theme=light] .sb-nav-item,:root:not([data-theme]) .sb-nav-item{color:#525252}[data-theme=light] .sb-nav-item:hover,:root:not([data-theme]) .sb-nav-item:hover{color:#111;background:#e5e5e5}[data-theme=light] .sb-nav-item.active,:root:not([data-theme]) .sb-nav-item.active{background:var(--accent-muted);color:var(--accent)}.sb-subnav{border-left:1px solid var(--sb-sidebar-border,#2f2f2f);flex-direction:column;gap:1px;margin:2px 0 4px 30px;padding-left:10px;display:flex}[data-theme=light] .sb-subnav,:root:not([data-theme]) .sb-subnav{border-left-color:#e5e5e5}.sb-subnav-item{font-size:calc(12.5px * var(--font-scale));color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;border-radius:4px;padding:6px 10px;text-decoration:none;overflow:hidden}.sb-subnav-item:hover{color:var(--text,#e5e5e5);background:#ffffff0a;text-decoration:none}.sb-subnav-item.active{color:var(--accent);background:var(--accent-muted)}[data-theme=light] .sb-subnav-item:hover,:root:not([data-theme]) .sb-subnav-item:hover{color:#111;background:#f5f5f5}.sb-tooltip{color:#f5f5f5;font-size:calc(12px * var(--font-scale));white-space:nowrap;pointer-events:none;opacity:0;z-index:1300;background:#1f1f1f;border:1px solid #333;border-radius:4px;padding:4px 10px;transition:opacity .15s;position:absolute;top:50%;left:calc(100% + 8px);transform:translateY(-50%);box-shadow:0 4px 10px #0000004d}.sb-nav-item:hover>.sb-tooltip,.sb-nav-item-wrap:hover>.sb-nav-item>.sb-tooltip{opacity:1}[data-theme=light] .sb-tooltip{color:#f5f5f5;background:#1f1f1f;border-color:#333}.sb-flyout{z-index:1300;background:var(--sb-flyout-bg,#1f1f1f);color:var(--text);border:1px solid var(--sb-flyout-border,#333);z-index:1250;border-radius:6px;flex-direction:column;gap:1px;min-width:200px;padding:6px;display:flex;position:fixed;box-shadow:0 8px 24px #00000059}[data-theme=light] .sb-flyout,:root:not([data-theme]) .sb-flyout{background:#fff;border-color:#e5e5e5;box-shadow:0 8px 24px #0000001f}.sb-flyout-title{font-size:calc(11px * var(--font-scale));color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--sb-flyout-border,#333);margin-bottom:4px;padding:6px 10px 8px;font-weight:600}[data-theme=light] .sb-flyout-title,:root:not([data-theme]) .sb-flyout-title{color:#737373;border-bottom-color:#e5e5e5}.sb-flyout-item{font-size:calc(13px * var(--font-scale));color:var(--sb-flyout-item,#e5e5e5);border-radius:4px;padding:7px 10px;text-decoration:none;transition:background .1s;display:block}.sb-flyout-item:hover{background:var(--sb-flyout-item-hover,#ffffff0f);color:#fff;text-decoration:none}.sb-flyout-item.active{background:var(--accent-muted);color:var(--accent)}[data-theme=light] .sb-flyout-item,:root:not([data-theme]) .sb-flyout-item{color:#262626}[data-theme=light] .sb-flyout-item:hover,:root:not([data-theme]) .sb-flyout-item:hover{color:#111;background:#f5f5f5}[data-theme=light] .sb-flyout-item.active,:root:not([data-theme]) .sb-flyout-item.active{background:var(--accent-muted);color:var(--accent)}.sb-main{flex-direction:column;flex:1;min-width:0;margin-left:56px;display:flex}.sb-topbar{border-bottom:1px solid var(--border);background:var(--bg-card);z-index:1100;justify-content:space-between;align-items:center;height:48px;padding:0 16px;display:flex;position:sticky;top:0}.sb-breadcrumb{font-size:calc(13px * var(--font-scale));align-items:center;gap:6px;min-width:0;display:flex;overflow:hidden}.sb-breadcrumb-org{color:var(--text-heading,var(--text));white-space:nowrap;font-weight:600;text-decoration:none}.sb-breadcrumb-crumb{color:var(--text-muted);white-space:nowrap;text-decoration:none}.sb-breadcrumb-crumb:hover{color:var(--text);text-decoration:none}.sb-breadcrumb-current{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.sb-breadcrumb-sep{color:var(--text-muted);opacity:.6;align-items:center;display:flex}.sb-topbar-right{align-items:center;gap:12px;display:flex}.sb-user-email{font-size:calc(12px * var(--font-scale));color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.sb-content{box-sizing:border-box;flex:1;min-width:0;max-width:100%;padding:2rem clamp(1rem,3vw,2.5rem)}@media (width<=768px){.sb-sidebar{width:48px}.sb-main{margin-left:48px}.sb-content{padding:1rem .75rem}.sb-user-email{max-width:140px;font-size:calc(11px * var(--font-scale))}}.layout-main{padding:2rem clamp(1rem,3vw,2.5rem)}.auth-page{box-sizing:border-box;color:#0f172a;background:radial-gradient(1200px 600px at 85% 110%,#e2e8f0,#0000 60%),linear-gradient(#eef1f5 0%,#e6eaf0 100%);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.auth-shell{background:#fff;border-radius:18px;width:100%;max-width:420px;overflow:hidden;box-shadow:0 24px 70px #0f172a2e}.auth-panel{background:#fff;flex-direction:column;justify-content:center;padding:2.6rem 2.4rem;display:flex}.auth-panel h1{color:#0f172a;margin:0 0 .35rem;font-size:1.4rem}.auth-intro,.auth-panel>p{color:#64748b;margin:0 0 1.25rem;font-size:.92rem;line-height:1.5}.auth-panel label{color:#475569;margin-bottom:.35rem;font-size:.8rem;font-weight:600;display:block}.auth-panel input{color:#0f172a;box-sizing:border-box;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;width:100%;margin-bottom:1rem;padding:.72rem .9rem;font-size:.95rem;transition:border-color .15s,box-shadow .15s}.auth-panel input::placeholder{color:#94a3b8}.auth-panel input:focus{border-color:#334155;outline:none;box-shadow:0 0 0 3px #3341551f}.auth-panel button{cursor:pointer;border:none;border-radius:10px;width:100%;margin-top:.25rem;padding:.75rem 1rem;font-size:.95rem;font-weight:600;transition:background .2s,opacity .2s}.auth-panel button[type=submit]{color:#fff;background:#0f172a}.auth-panel button[type=submit]:hover:not(:disabled){background:#1e293b}.auth-panel button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.auth-error{color:#b91c1c;background:#dc262614;border:1px solid #dc262633;border-radius:10px;margin:0 0 1rem;padding:.7rem .8rem;font-size:.85rem;line-height:1.4}.auth-forgot{text-align:center;margin-top:.9rem;font-size:.9rem}.auth-forgot a,.auth-footer a{color:#334155;font-weight:600;text-decoration:none}.auth-forgot a:hover,.auth-footer a:hover{text-decoration:underline}.auth-footer{text-align:center;color:#64748b;margin-top:1.25rem;font-size:.9rem}@media (width<=480px){.auth-panel{padding:2rem 1.5rem}}.dash{flex-direction:column;gap:1.5rem;width:100%;max-width:1200px;margin:0 auto;display:flex}.dash-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.dash-greeting{color:var(--text-h);margin:0;font-size:1.6rem;font-weight:700}.dash-date{color:var(--text);opacity:.7;margin:.25rem 0 0;font-size:.9rem}.dash-stats{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.85rem;display:grid}.dash-stat{background:var(--code-bg);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:.15rem;padding:1rem 1.15rem;text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative;overflow:hidden}.dash-stat:before{content:"";background:var(--stat-color,var(--accent));width:4px;position:absolute;top:0;bottom:0;left:0}.dash-stat:hover{box-shadow:var(--shadow);border-color:var(--stat-color,var(--accent));transform:translateY(-2px)}.dash-stat-value{color:var(--text-h);font-size:1.9rem;font-weight:700;line-height:1.1}.dash-stat-label{color:var(--text);font-size:.85rem;font-weight:500}.dash-stat-hint{color:var(--text);opacity:.6;font-size:.75rem}.dash-grid{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}.dash-side{flex-direction:column;gap:1.25rem;display:flex}.dash-card{background:var(--code-bg);border:1px solid var(--border);border-radius:16px;padding:1.25rem 1.35rem}.dash-card-head{justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.9rem;display:flex}.dash-card-head h2{color:var(--text-h);margin:0;font-size:1.05rem;font-weight:600}.dash-card-sub{color:var(--text);opacity:.6;font-size:.8rem}.dash-card-link{color:var(--accent);white-space:nowrap;font-size:.82rem;font-weight:500;text-decoration:none}.dash-card-link:hover{text-decoration:underline}.dash-empty{color:var(--text);opacity:.6;margin:.5rem 0;font-size:.9rem}.dash-feed{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.dash-feed-item{border-radius:10px;align-items:center;gap:.85rem;padding:.65rem .5rem;text-decoration:none;transition:background .12s;display:flex}.dash-feed-item:hover{background:#7f7f7f14}.dash-feed-icon{width:34px;height:34px;color:var(--accent);background:var(--accent-muted);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.dash-feed-main{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.dash-feed-title{color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;font-size:.92rem;font-weight:500;overflow:hidden}.dash-feed-meta{align-items:center;gap:.5rem;min-width:0;display:flex}.dash-feed-badge{white-space:nowrap;color:var(--text-muted);background:var(--surface);border-radius:9999px;padding:.1rem .5rem;font-size:.7rem;font-weight:600}.dash-feed-subtitle{color:var(--text);opacity:.7;white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;overflow:hidden}.dash-feed-owner{white-space:nowrap;color:var(--accent);background:var(--accent-muted);border-radius:9999px;padding:.1rem .5rem;font-size:.72rem;font-weight:600}.dash-shared{border-left:3px solid var(--accent)}.dash-shared .dash-feed-icon{color:var(--text-muted);background:var(--surface)}.dash-feed-time{color:var(--text);opacity:.55;white-space:nowrap;flex-shrink:0;font-size:.76rem}.dash-tasks{flex-direction:column;gap:.15rem;margin:0;padding:0;list-style:none;display:flex}.dash-task{border-bottom:1px solid var(--border);align-items:center;gap:.6rem;padding:.5rem .25rem;display:flex}.dash-task:last-child{border-bottom:none}.dash-task-prio{background:#94a3b8;border-radius:50%;flex-shrink:0;width:8px;height:8px}.dash-task-prio-1{background:#ef4444}.dash-task-prio-2{background:#f59e0b}.dash-task-prio-3{background:#6b7280}.dash-task-body{flex-direction:column;gap:.1rem;min-width:0;display:flex}.dash-task-title{color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;overflow:hidden}.dash-task-due{color:#b45309;font-size:.74rem}.dash-defects{flex-direction:column;gap:.15rem;margin:0;padding:0;list-style:none;display:flex}.dash-defect{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem .25rem;text-decoration:none;display:flex}.dash-defect:last-child{border-bottom:none}.dash-defect:hover .dash-defect-name{color:var(--accent)}.dash-defect-name{color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;overflow:hidden}.dash-defect-count{color:var(--text);opacity:.7;flex-shrink:0;font-size:.82rem}.dash-defect-count strong{color:#ef4444;opacity:1}.dash-quick{flex-wrap:wrap;gap:.6rem;display:flex}.dash-quick-btn{border:1px solid var(--border);background:var(--bg-card,transparent);color:var(--text-h);border-radius:9999px;padding:.5rem 1rem;font-size:.85rem;font-weight:500;text-decoration:none;transition:background .12s,border-color .12s,color .12s}.dash-quick-btn:hover{border-color:var(--accent);color:var(--accent);background:#3b82f60f}@media (width<=860px){.dash-grid{grid-template-columns:1fr}}.nz-page{flex-direction:column;gap:20px;max-width:1000px;margin:0 auto;padding:24px 28px;display:flex}.nz-head h1{font-size:calc(22px * var(--font-scale));color:var(--text-h,inherit);margin:0 0 4px;font-weight:700}.nz-sub{font-size:calc(13px * var(--font-scale));color:var(--text-muted);margin:0}.nz-note{font-size:calc(13px * var(--font-scale));cursor:pointer;border-radius:8px;padding:10px 14px}.nz-note-err{background:var(--error-bg);color:var(--error);border:1px solid var(--error)}.nz-muted{color:var(--text-muted);font-size:calc(12px * var(--font-scale))}.nz-err-inline{color:var(--error);font-size:calc(12px * var(--font-scale))}.nz-composer{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow);flex-direction:column;gap:12px;padding:18px 20px 16px;transition:border-color .2s;display:flex;position:relative;overflow:hidden}.nz-composer:before{content:"";background:var(--accent);height:3px;position:absolute;top:0;left:0;right:0}.nz-composer-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.nz-seg{border:1px solid var(--border);background:var(--surface);border-radius:999px;display:inline-flex;overflow:hidden}.nz-seg button{color:var(--text-muted);cursor:pointer;font-size:calc(12px * var(--font-scale));background:0 0;border:none;align-items:center;gap:6px;padding:7px 14px;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.nz-seg button.is-on{background:var(--accent);color:var(--accent-contrast)}.nz-seg-lg button{font-size:calc(13px * var(--font-scale));padding:8px 18px}.nz-mic{border:1px solid var(--border);cursor:pointer;background:var(--surface);color:var(--text-h,inherit);font-size:calc(13px * var(--font-scale));border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-weight:600;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.nz-mic:hover{border-color:var(--accent);color:var(--accent)}.nz-mic.is-on{background:var(--error);border-color:var(--error);color:#fff;animation:1.4s ease-in-out infinite nz-pulse}@keyframes nz-pulse{0%,to{box-shadow:0 0 #dc262673}50%{box-shadow:0 0 0 8px #dc262600}}.nz-textarea,.nz-input{border:1px solid var(--border);font-size:calc(13px * var(--font-scale));background:var(--bg-card);color:inherit;border-radius:10px;width:100%;padding:10px 12px;font-family:inherit;transition:border-color .15s,box-shadow .15s}.nz-textarea{resize:vertical;min-height:84px;font-size:calc(15px * var(--font-scale));line-height:1.45}.nz-textarea:focus,.nz-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted);outline:none}.nz-input-sm{font-size:calc(12px * var(--font-scale));width:auto;padding:6px 8px}.nz-quickrow{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.nz-due{font-size:calc(12px * var(--font-scale));color:var(--text-muted);align-items:center;gap:6px;font-weight:600;display:inline-flex}.nz-quick-themes{flex-wrap:wrap;gap:6px;display:flex}.nz-quick-theme{border:1px solid var(--border);font-size:calc(12px * var(--font-scale));background:var(--bg-card);color:var(--text-muted);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:4px 11px;transition:transform .1s,box-shadow .15s;display:inline-flex}.nz-quick-theme:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.nz-quick-theme.is-on{font-weight:600}.nz-aihint{background:var(--accent-muted);border:1px solid var(--accent);color:var(--accent);font-size:calc(12px * var(--font-scale));border-radius:8px;padding:8px 12px;font-weight:500}.nz-more{color:var(--text-muted);cursor:pointer;font-size:calc(12px * var(--font-scale));background:0 0;border:none;align-self:flex-start;align-items:center;gap:6px;padding:2px 0;font-weight:600;display:inline-flex}.nz-more:hover{color:var(--accent)}.nz-draft{border-top:1px dashed var(--border);flex-direction:column;gap:12px;padding-top:12px;display:flex}.nz-draft-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.nz-field{font-size:calc(12px * var(--font-scale));flex-direction:column;gap:6px;display:flex}.nz-field>span{color:var(--text-muted);font-weight:600}.nz-composer-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.nz-spacer{flex:1}.nz-btn{border:1px solid var(--border);background:var(--bg-card);color:inherit;cursor:pointer;font-size:calc(13px * var(--font-scale));border-radius:9px;align-items:center;gap:7px;padding:9px 16px;font-weight:600;transition:background .15s,border-color .15s,color .15s,transform .1s;display:inline-flex}.nz-btn:hover:not(:disabled){border-color:var(--accent)}.nz-btn:disabled{opacity:.5;cursor:not-allowed}.nz-btn-primary{background:var(--accent);color:var(--accent-contrast);border-color:var(--accent)}.nz-btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);transform:translateY(-1px)}.nz-btn-ai{color:var(--accent);border-color:var(--accent);background:var(--accent-muted)}.nz-btn-ghost{color:var(--text-muted);background:0 0;font-weight:500}.nz-save{padding-right:12px}.nz-kbd{opacity:.8;border:1px solid;border-radius:5px;margin-left:2px;padding:1px 5px;font-size:10px;font-weight:700}.nz-themes{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);padding:16px 20px}.nz-themes-head{flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:12px;display:flex}.nz-themes-head h2{font-size:calc(15px * var(--font-scale));color:var(--text-h,inherit);margin:0;font-weight:700}.nz-themes-row{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.nz-theme-chip{font-size:calc(12px * var(--font-scale));border:1px solid;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.nz-theme-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px;display:inline-block}.nz-theme-dot-btn{cursor:pointer;border:none;padding:0;transition:transform .1s;box-shadow:inset 0 0 0 1px #00000026}.nz-theme-dot-btn:hover{transform:scale(1.25)}.nz-recolor{border-left:1px solid var(--border);gap:4px;margin-left:2px;padding:2px 4px;display:inline-flex}.nz-theme-del{cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:0 0 0 2px;font-size:16px;line-height:1}.nz-theme-del:hover{color:var(--error)}.nz-theme-add{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.nz-swatches{gap:5px;display:inline-flex}.nz-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:22px;height:22px;padding:0;transition:transform .1s;box-shadow:inset 0 0 0 1px #00000014}.nz-swatch:hover{transform:scale(1.12)}.nz-swatch.is-on{border-color:var(--text-h,#111);transform:scale(1.12)}.nz-theme-add .nz-input{max-width:220px}.nz-list{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);padding:16px 20px}.nz-list-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.nz-list-head h2{font-size:calc(15px * var(--font-scale));color:var(--text-h,inherit);align-items:center;gap:8px;margin:0;font-weight:700;display:inline-flex}.nz-count{font-size:calc(11px * var(--font-scale));color:var(--accent);background:var(--accent-muted);border-radius:999px;padding:1px 9px;font-weight:700}.nz-filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.nz-pills{background:var(--surface);border-radius:999px;gap:4px;padding:3px;display:inline-flex}.nz-pill{color:var(--text-muted);font-size:calc(12px * var(--font-scale));cursor:pointer;background:0 0;border:none;border-radius:999px;padding:5px 12px;font-weight:600;transition:background .15s,color .15s}.nz-pill:hover{color:var(--accent)}.nz-pill.is-on{background:var(--accent);color:var(--accent-contrast)}.nz-empty{text-align:center;color:var(--text-muted);flex-direction:column;align-items:center;gap:8px;padding:28px 16px;display:flex}.nz-empty-emoji{font-size:34px}.nz-empty p{font-size:calc(13px * var(--font-scale));max-width:30rem;margin:0}.nz-items{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.nz-item{border:1px solid var(--border);border-left:3px solid var(--nz-accent,var(--border));background:var(--bg-card);border-radius:10px;align-items:flex-start;gap:10px;padding:12px 14px;transition:box-shadow .15s,transform .1s,border-color .15s;display:flex;position:relative}.nz-item:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.nz-item.is-done{opacity:.55}.nz-item.is-done .nz-item-title{text-decoration:line-through}.nz-check{cursor:pointer;width:18px;height:18px;accent-color:var(--accent);flex-shrink:0;margin-top:2px}.nz-item-body{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.nz-item-top{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.nz-item-title{font-weight:600;font-size:calc(14px * var(--font-scale));color:var(--text-h,inherit)}.nz-item-text{font-size:calc(13px * var(--font-scale));color:var(--text-muted);white-space:pre-wrap;margin:0}.nz-item-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.nz-kind{font-size:calc(10px * var(--font-scale));text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--border);border-radius:5px;padding:2px 7px;font-weight:700}.nz-kind-aufgabe{background:var(--surface);color:var(--text-h,inherit)}.nz-kind-notiz{background:var(--accent-muted);color:var(--accent);border-color:#0000}.nz-chip{border:1px solid var(--border);font-size:calc(11px * var(--font-scale));border-radius:999px;align-items:center;gap:5px;padding:2px 9px;display:inline-flex}.nz-chip-proj{background:var(--surface)}.nz-chip-date{background:var(--surface);color:var(--text-muted)}.nz-chip-date.is-overdue{background:var(--error-bg);border-color:var(--error);color:var(--error)}.nz-mini-select{border:1px dashed var(--border);color:var(--text-muted);font-size:calc(11px * var(--font-scale));cursor:pointer;background:0 0;border-radius:999px;padding:2px 6px}.nz-mini-select:hover{border-color:var(--accent);color:var(--accent)}.nz-item-del{cursor:pointer;color:var(--text-muted);background:0 0;border:none;flex-shrink:0;padding:0 4px;font-size:20px;line-height:1}.nz-item-del:hover{color:var(--error)}@media (width<=820px){.nz-draft-grid{grid-template-columns:1fr}.nz-list-head{align-items:flex-start}}.profile-page{width:100%;max-width:600px}.profile-page h1{color:var(--text-h);margin:0 0 1.5rem;font-size:1.5rem}.profile-form{flex-direction:column;gap:.75rem;display:flex}.profile-form label{color:var(--text);font-size:.9rem;font-weight:500}.profile-input,.profile-input-disabled{border:1px solid var(--border);background:var(--input-bg);color:var(--text-h);border-radius:8px;padding:.6rem .9rem;font-size:1rem}.profile-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg);outline:none}.profile-input-disabled{background:var(--input-bg);color:var(--text-muted);cursor:not-allowed}.profile-error{color:#dc2626;background:#ef444426;border-radius:8px;margin:0;padding:.75rem;font-size:.9rem}.profile-success{color:#16a34a;background:#22c55e26;border-radius:8px;margin:0;padding:.75rem;font-size:.9rem}.profile-submit{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;align-self:flex-start;margin-top:.5rem;padding:.75rem 1.25rem;font-size:1rem;font-weight:600}.profile-submit:hover:not(:disabled){filter:brightness(1.05)}.profile-submit:disabled{opacity:.7;cursor:not-allowed}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.data-import-overlay{z-index:200;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.data-import-modal{background:var(--bg-card,#fff);border-radius:12px;flex-direction:column;width:100%;max-width:720px;max-height:90vh;display:flex;box-shadow:0 8px 32px #0003}.data-import-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.data-import-header h3{color:var(--text-heading);margin:0;font-size:1.125rem}.data-import-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:.25rem;font-size:1.25rem}.data-import-body{flex:1;padding:1.25rem;overflow-y:auto}.data-import-hint{color:var(--text-muted);margin:0 0 .75rem;font-size:.8125rem}.data-import-templates{flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem;display:flex}.data-import-btn-outline{color:var(--text);border:1px solid var(--border);border-radius:var(--radius,6px);cursor:pointer;background:0 0;padding:.5rem 1rem;font-family:inherit;font-size:.8125rem;transition:border-color .15s,color .15s}.data-import-btn-outline:hover{border-color:var(--accent);color:var(--accent)}.data-import-btn-primary{background:var(--accent);color:#fff;border-radius:var(--radius,6px);cursor:pointer;border:none;padding:.5rem 1.25rem;font-family:inherit;font-size:.875rem;font-weight:600}.data-import-btn-primary:hover{opacity:.9}.data-import-dropzone{border:2px dashed var(--border);text-align:center;cursor:pointer;border-radius:8px;padding:2rem;transition:border-color .15s,background .15s}.data-import-dropzone:hover{border-color:var(--accent);background:var(--accent-muted,#3b82f60d)}.data-import-dropzone p{margin:.25rem 0}.data-import-mapping{flex-direction:column;gap:.5rem;max-height:400px;margin-bottom:1rem;display:flex;overflow-y:auto}.data-import-mapping-row{align-items:center;gap:.75rem;display:flex}.data-import-mapping-label{color:var(--text);flex:0 0 180px;font-size:.8125rem;font-weight:500}.data-import-mapping-select{border:1px solid var(--border);border-radius:var(--radius,6px);background:var(--input-bg,var(--bg));color:var(--text);flex:1;padding:.375rem .5rem;font-family:inherit;font-size:.8125rem}.data-import-actions{justify-content:flex-end;gap:.75rem;margin-top:1rem;display:flex}.data-import-preview-wrap{border:1px solid var(--border);border-radius:6px;margin-bottom:.75rem;overflow-x:auto}.data-import-preview-table{border-collapse:collapse;width:100%;font-size:.75rem}.data-import-preview-table th{background:var(--surface,var(--bg));text-align:left;border-bottom:2px solid var(--border);white-space:nowrap;padding:.4rem .5rem;font-weight:600}.data-import-preview-table td{border-bottom:1px solid var(--border);text-overflow:ellipsis;white-space:nowrap;max-width:150px;padding:.35rem .5rem;overflow:hidden}.data-import-progress{background:var(--border);border-radius:4px;height:8px;margin:1rem 0 .5rem;overflow:hidden}.data-import-progress-bar{background:var(--accent);border-radius:4px;height:100%;transition:width .3s}.data-import-errors{background:#ef444414;border:1px solid #ef44444d;border-radius:6px;margin-top:.75rem;padding:.75rem}.data-import-errors p{color:#ef4444;margin:.25rem 0;font-size:.75rem}@media (width<=640px){.data-import-mapping-row{flex-direction:column;align-items:stretch;gap:.25rem}.data-import-mapping-label{flex:none}}.btn-icon-trash{min-width:2rem;min-height:2rem;color:var(--text-secondary,#64748b);border-color:color-mix(in srgb, var(--text-secondary,#64748b) 40%, var(--border,#e5e7eb));background:0 0;justify-content:center;align-items:center;padding:.35rem;line-height:0;transition:color .15s,border-color .15s,background .15s,opacity .15s;display:inline-flex}.btn-icon-trash:hover{color:#ef4444;opacity:1;background:#ef444414;border-color:#ef4444}.btn-icon-trash:focus-visible{outline:2px solid var(--accent,#3b82f6);outline-offset:2px}.pam-wrap{flex-shrink:0;display:inline-flex;position:relative}.pam-trigger{border:1px solid var(--border,#d1d5db);background:var(--surface,#fff);height:30px;color:var(--text,#374151);font-size:calc(12px * var(--font-scale));cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:5px;padding:0 10px;font-weight:600;transition:background .12s,border-color .12s;display:inline-flex}.pam-trigger:hover{background:var(--bg-muted,#f3f4f6)}.pam-trigger.open{border-color:var(--accent,#24b47e);color:var(--accent,#24b47e);background:var(--accent-muted,#24b47e14)}.pam-menu{z-index:200;background:var(--bg-card,#fff);border:1px solid var(--border,#e5e7eb);border-radius:10px;flex-direction:column;gap:2px;min-width:190px;max-width:min(280px,90vw);padding:5px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 28px #00000024}.pam-item{text-align:left;width:100%;font-size:calc(13px * var(--font-scale));color:var(--text,#374151);cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:8px;padding:8px 10px;font-weight:500;text-decoration:none;transition:background .1s;display:flex}.pam-item:hover:not(:disabled){background:var(--bg-muted,#f3f4f6)}.pam-item:disabled{opacity:.45;cursor:not-allowed}.pam-item.active,.pam-item.primary{color:var(--accent,#24b47e);font-weight:600}.pam-item-icon{opacity:.85;flex-shrink:0;align-items:center;display:flex}.pam-item-icon svg{width:15px;height:15px}.pam-check{font-size:calc(12px * var(--font-scale));color:var(--accent,#24b47e);margin-left:auto}@media (width<=768px){.pam-trigger{height:28px;font-size:calc(11px * var(--font-scale));padding:0 8px}.pam-trigger-label{display:none}.pam-menu{min-width:175px}.pam-item{font-size:calc(12px * var(--font-scale));padding:9px 10px}}.grundstuecke-page{flex-direction:column;width:100%;max-width:100%;display:flex}.grundstuecke-page--map{height:calc(100vh - 85px);overflow:hidden}.grundstuecke-page--map .grundstuecke-header,.grundstuecke-page--map .grundstuecke-filter-bar{flex-shrink:0;margin-bottom:.5rem}.grundstuecke-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.grundstuecke-header h1{margin:0;font-size:1.5rem;font-weight:600}.grundstuecke-header-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.grundstuecke-view-btn{background:var(--surface);color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:6px;padding:.4rem .75rem;font-size:.8125rem;font-weight:500;transition:background .15s,color .15s}.grundstuecke-view-btn:hover{background:var(--border)}.grundstuecke-view-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.grundstuecke-add-btn{background:var(--accent);color:#fff;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;text-decoration:none}.grundstuecke-add-btn:hover{opacity:.9}.grundstuecke-error{color:var(--error);background:#dc262614;border-radius:6px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem}.grundstuecke-filter-bar{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.grundstuecke-filter-input{border:1px solid var(--border);background:var(--surface);min-width:120px;max-width:220px;color:var(--text);border-radius:6px;outline:none;flex:1;padding:.375rem .625rem;font-size:.8125rem;transition:border-color .15s}.grundstuecke-filter-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px #2563eb26}.grundstuecke-filter-select{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:6px;outline:none;padding:.375rem .5rem;font-size:.75rem}.grundstuecke-filter-select:focus{border-color:var(--accent)}.grundstuecke-group-select{border-color:var(--accent);font-weight:500}.grundstuecke-filter-count{color:var(--text-muted);white-space:nowrap;font-size:.75rem}.grundstuecke-filter-reset{color:var(--error,#dc2626);border:1px solid var(--error,#dc2626);cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;padding:.3rem .625rem;font-size:.75rem;font-weight:500}.grundstuecke-filter-reset:hover{background:#dc262614}.th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.th-sortable:hover{color:var(--accent)}.grundstuecke-group-row td{border-bottom:1px solid var(--border)}.grundstuecke-group-cell{color:var(--accent);text-transform:uppercase;letter-spacing:.03em;background:#2563eb0f;font-size:.8125rem;font-weight:700;padding:.5rem 1rem!important}.grundstuecke-group-count{color:var(--text-muted);text-transform:none;letter-spacing:0;font-weight:400}.grundstuecke-table-wrap{border:1px solid var(--border);-webkit-overflow-scrolling:touch;border-radius:8px;overflow-x:auto}.grundstuecke-table{border-collapse:collapse;width:100%;min-width:800px}.grundstuecke-table th,.grundstuecke-table td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:.75rem 1rem}.grundstuecke-table td.td-right{text-align:right;font-variant-numeric:tabular-nums}.grundstuecke-table th{color:var(--text-muted);background:var(--surface);z-index:1;font-size:.8125rem;font-weight:600;position:sticky;top:0}.grundstuecke-table tbody tr:last-child td{border-bottom:none}.grundstuecke-row-clickable{cursor:pointer}.grundstuecke-row-clickable:hover{background:var(--surface)}.grundstuecke-empty{text-align:center;color:var(--text-muted);padding:3rem 2rem;font-size:.9375rem}.grundstuecke-empty a{color:var(--accent)}.grundstuecke-btn-promote{background:var(--bg);color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:6px;padding:.375rem .75rem;font-size:.8125rem;font-weight:500}.grundstuecke-btn-promote:hover{background:var(--surface);border-color:var(--accent);color:var(--accent)}.grundstuecke-btn-promote.btn-icon-trash{color:var(--text-secondary,#64748b);border-color:color-mix(in srgb, var(--text-secondary,#64748b) 40%, var(--border));min-width:2rem;padding:.35rem}.grundstuecke-btn-promote.btn-icon-trash:hover{color:#ef4444;background:#ef444414;border-color:#ef4444}.grundstuecke-link{color:var(--accent);font-size:.6125rem;text-decoration:none}.grundstuecke-link:hover{text-decoration:underline}.grundstuecke-bplan-links{gap:.375rem;display:inline-flex}.grundstuecke-tags{flex-wrap:wrap;gap:.25rem;margin-left:.5rem;display:inline-flex}.tag-badge{letter-spacing:.02em;border-radius:8px;padding:.0625rem .35rem;font-size:.5rem;font-weight:600;line-height:1.4;display:inline-block}.tag-badge-eco-field{color:#15803d;background:#dcfce7}.tag-badge-eco-craft{color:#1d4ed8;background:#dbeafe}.tag-badge-multi-use{color:#7e22ce;background:#f3e8ff}.prio-badge{border:2px solid;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.8125rem;font-weight:700;display:inline-flex}.prio-none{color:var(--text-muted);border-color:var(--border);background:0 0;font-weight:400}.grundstuecke-table td.td-center{text-align:center}.grundstuecke-map-container{border:1px solid var(--border);border-radius:8px;flex-direction:column;flex:1;display:flex;overflow:hidden}.grundstuecke-map-container .leaflet-container{flex:1}.grundstuecke-map-legend{background:var(--surface);border-bottom:1px solid var(--border);color:var(--text);flex-wrap:wrap;align-items:center;gap:1.25rem;padding:.625rem 1rem;font-size:.8125rem;display:flex}.map-legend-item{align-items:center;gap:.375rem;display:flex}.map-legend-dot{border:2px solid #fff;border-radius:50%;width:14px;height:14px;display:inline-block;box-shadow:0 0 2px #0000004d}.map-legend-size{color:var(--text-muted);font-style:italic}.grundstuecke-map-geocoding{color:#2563eb;background:#2563eb0f;margin:0;padding:.5rem 1rem;font-size:.8125rem;animation:1.5s ease-in-out infinite pulse-geo}@keyframes pulse-geo{0%,to{opacity:1}50%{opacity:.6}}.map-hover-tooltip{max-width:400px!important;font-size:calc(12px * var(--font-scale))!important;border-radius:8px!important;padding:8px 10px!important;box-shadow:0 4px 16px #0003!important}.td-kontakt{min-width:100px}.grundstuecke-kontakt-link{color:var(--accent);flex-direction:column;gap:1px;font-size:.8125rem;font-weight:500;text-decoration:none;display:flex}.grundstuecke-kontakt-link:hover{text-decoration:underline}.grundstuecke-kontakt-primary{white-space:nowrap;text-overflow:ellipsis;max-width:180px;overflow:hidden}.grundstuecke-kontakt-secondary{color:var(--text-muted,#6b7280);white-space:nowrap;text-overflow:ellipsis;max-width:180px;font-size:.7rem;font-weight:400;overflow:hidden}@media (width<=768px){.grundstuecke-header{margin-bottom:1rem}.grundstuecke-header h1{width:100%;font-size:1.25rem}.grundstuecke-table th,.grundstuecke-table td{padding:.5rem .625rem;font-size:.8125rem}}.expose-upload{margin-top:1rem}.expose-upload-input{opacity:0;width:0;height:0;position:absolute;overflow:hidden}.expose-upload-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:500}.expose-upload-btn:hover:not(:disabled){opacity:.9}.expose-upload-btn:disabled{opacity:.6;cursor:not-allowed}.expose-upload-error{color:var(--error);margin:.5rem 0 0;font-size:.875rem}.expose-upload-hint{color:var(--text-muted);margin:.5rem 0 0;font-size:.8125rem}.expose-summary{border:1px solid var(--border);background:var(--surface);border-radius:8px;margin-top:1rem;overflow:hidden}.expose-summary-header{border-bottom:1px solid var(--border);background:#3b82f614;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.expose-summary-title{color:var(--text-heading);margin:0;font-size:.875rem;font-weight:600}.expose-summary-exports{flex-wrap:wrap;gap:.5rem;display:flex}.expose-summary-export-btn{background:var(--surface);color:var(--accent);border:1px solid var(--accent);cursor:pointer;border-radius:5px;padding:.35rem .75rem;font-size:.75rem;font-weight:500;line-height:1.4;text-decoration:none;transition:background .15s,color .15s;display:inline-block}.expose-summary-export-btn:hover{background:var(--accent);color:#fff}.expose-summary-scroll{-webkit-overflow-scrolling:touch;max-height:600px;overflow-y:auto}.expose-summary-table{border-collapse:collapse;width:100%;font-size:.8125rem}.expose-summary-table tr:not(:last-child){border-bottom:1px solid var(--border)}.expose-summary-table tr:hover{background:#ffffff08}.expose-summary-label{color:var(--text);white-space:nowrap;vertical-align:top;width:40%;padding:.5rem 1rem;font-weight:500}.expose-summary-value{color:var(--text-heading,var(--text));word-break:break-word;padding:.5rem 1rem}.expose-summary-table-detailed{min-width:600px}.expose-summary-table-detailed thead{z-index:1;position:sticky;top:0}.expose-summary-th-kat,.expose-summary-th-prop,.expose-summary-th-val{text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);background:var(--surface);border-bottom:2px solid var(--border);text-align:left;padding:.5rem .75rem;font-size:.75rem;font-weight:600}.expose-summary-th-kat{width:20%}.expose-summary-th-prop{width:30%}.expose-summary-th-val{width:50%}.expose-summary-kat{color:var(--accent);text-transform:uppercase;letter-spacing:.02em;vertical-align:top;white-space:nowrap;padding:.4rem .75rem;font-size:.75rem;font-weight:600}.expose-summary-table-detailed .expose-summary-label{width:auto;padding:.4rem .75rem;font-size:.8125rem}.expose-summary-table-detailed .expose-summary-value{padding:.4rem .75rem;font-size:.8125rem}.expose-row-new-kat{border-top:2px solid var(--border)!important}.expose-row-new-kat .expose-summary-kat{padding-top:.75rem}@media (width<=640px){.expose-summary-header{flex-direction:column;align-items:flex-start}.expose-summary-scroll{overflow-x:auto}.expose-summary-label{white-space:normal;width:auto}.expose-summary-kat{white-space:normal}}.grundstueck-form-page{--bg:#f4f6f9;--surface:#fff;--border:#dde1e9;--text:#2d3748;--text-heading:#1a202c;--text-muted:#718096;--input-bg:#fff;--accent:#3b82f6;background:var(--bg);width:100%;max-width:100%}.grundstueck-form-header{margin-bottom:2rem}.grundstueck-form-sticky-header{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff;border-bottom:1px solid #dde1e9;align-items:center;gap:1rem;margin:-1rem -1rem 1.5rem;padding:.75rem 1rem;display:flex;position:sticky;top:0;box-shadow:0 1px 6px #0000000f}.grundstueck-form-sticky-header .grundstueck-form-back{white-space:nowrap;flex-shrink:0;margin-bottom:0}.grundstueck-form-sticky-title{text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;font-size:1.125rem;font-weight:600;overflow:hidden}.gs-tab-nav{flex-shrink:0;align-items:center;gap:.4rem;margin-left:auto;display:flex}.gs-tab-btn{color:#374151;background:#f8fafc;border:1px solid #dde1e9;border-radius:7px;align-items:center;gap:.4rem;padding:.35rem .75rem;font-size:.8rem;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.gs-tab-btn:hover{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}.gs-tab-badge{color:#fff;background:#3b82f6;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.7rem;font-weight:700;display:inline-flex}.grundstueck-form-back{color:var(--accent);margin-bottom:.75rem;font-size:.875rem;display:inline-block}.grundstueck-form-back:hover{text-decoration:underline}.grundstueck-form-header h1{margin:0;font-size:1.5rem;font-weight:600}.grundstueck-form-collapsible{background:#fff;border:1px solid #dde1e9;border-radius:10px;margin-bottom:1rem;overflow:hidden;box-shadow:0 1px 4px #0000000d}.grundstueck-form-collapsible-title{color:#2d3748;cursor:pointer;-webkit-user-select:none;user-select:none;background:#f8fafc;border-bottom:1px solid #dde1e9;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.92rem;font-weight:700;list-style:none;display:flex}.grundstueck-form-collapsible-title::-webkit-details-marker{display:none}.grundstueck-form-collapsible-title:before{content:"▸";font-size:1.5rem;transition:transform .2s;display:inline-block}.grundstueck-form-collapsible[open]>.grundstueck-form-collapsible-title:before{transform:rotate(90deg)}.grundstueck-form-collapsible-title:hover{color:#3b82f6;background:#f0f4ff}.grundstueck-form-collapsible[open]>.grundstueck-form-collapsible-title{border-bottom-color:#dde1e9}.collapsible-stat-badge{white-space:nowrap;border-radius:10px;margin-left:auto;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.stat-complete{color:#16a34a;background:#16a34a1f}.stat-incomplete{color:#ea580c;background:#ea580c1a}.grundstueck-form-collapsible-body{padding:0 1.25rem 1.25rem}.grundstueck-form-collapsible-body.grundstueck-form-fields{flex-direction:column;gap:.5rem;display:flex}.grundstueck-form-expose-section{border:1px solid var(--border);background:var(--surface);border-radius:8px;margin-bottom:2rem;padding:1.25rem}.grundstueck-form-expose-actions{margin-bottom:.75rem}.grundstueck-form-text-input{flex-direction:column;gap:.5rem;margin-top:.75rem;display:flex}.grundstueck-form-extracting{color:#2563eb;background:#2563eb0f;border-radius:6px;margin:.5rem 0;padding:.5rem .75rem;font-size:.8125rem;font-weight:500;animation:1.5s ease-in-out infinite pulse-extract}@keyframes pulse-extract{0%,to{opacity:1}50%{opacity:.6}}.grundstueck-form{flex-direction:column;gap:.75rem;display:flex}.grundstueck-form-fieldset{border:1px solid var(--border);border-radius:8px;margin:0 0 1rem;padding:1rem 1.25rem 1.25rem}.grundstueck-form-fieldset legend{color:var(--accent);text-transform:uppercase;letter-spacing:.03em;padding:0 .5rem;font-size:.8125rem;font-weight:600}.grundstueck-form-fieldset{grid-template-columns:1fr 1fr;gap:.25rem 1.5rem;display:grid}.grundstueck-form-fieldset legend{grid-column:1/-1}.grundstueck-form-fieldset label{grid-column:auto}.grundstueck-form-fieldset textarea,.grundstueck-form-fieldset .grundstueck-form-computed{grid-column:1/-1}.grundstueck-form label{color:var(--text);margin-top:1rem;margin-bottom:.375rem;font-size:.8125rem;font-weight:500;display:block}.grundstueck-form label:first-of-type{margin-top:0}.grundstueck-form input{border:1px solid var(--border);background:var(--input-bg);width:100%;color:var(--text-heading);box-sizing:border-box;border-radius:6px;padding:.5rem .75rem;font-size:.9375rem}.grundstueck-form input:focus{border-color:var(--accent);outline:none}.grundstueck-form-textarea{border:1px solid var(--border);background:var(--input-bg);width:100%;color:var(--text-heading);box-sizing:border-box;resize:vertical;border-radius:6px;min-height:4em;padding:.5rem .75rem;font-family:inherit;font-size:.9375rem}.grundstueck-form-textarea:focus{border-color:var(--accent);outline:none}.grundstueck-form-hint{color:var(--text);opacity:.8;margin:0 0 .5rem;font-size:.8125rem}.grundstueck-form-expose{border:1px dashed var(--border);border-radius:6px;margin-top:1.5rem;padding:1rem}.grundstueck-form-expose-btn{background:var(--surface);color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:6px;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:background .15s}.grundstueck-form-expose-btn:hover:not(:disabled){background:var(--border)}.grundstueck-form-expose-btn:disabled{opacity:.5;cursor:not-allowed}.grundstueck-form-expose-upload{margin-top:.75rem}.grundstueck-form-error{color:var(--error);background:#dc262614;border-radius:6px;margin-top:1rem;padding:.75rem 1rem;font-size:.875rem}.grundstueck-form-actions{gap:.75rem;margin-top:1.5rem;display:flex}.grundstueck-form-btn-cancel{color:var(--text);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;padding:.5rem 1rem;font-size:.875rem}.grundstueck-form-btn-cancel:hover{background:var(--surface)}.grundstueck-form-btn-cancel.btn-icon-trash{color:var(--text-secondary,#64748b);border-color:color-mix(in srgb, var(--text-secondary,#64748b) 45%, var(--border))}.grundstueck-form-btn-cancel.btn-icon-trash:hover{color:#ef4444;background:#ef444414;border-color:#ef4444}.grundstueck-form-btn-save{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:.5rem 1.25rem;font-size:.875rem;font-weight:500}.grundstueck-form-btn-save:hover:not(:disabled){opacity:.9}.grundstueck-form-btn-save:disabled{opacity:.6;cursor:not-allowed}.duplicate-modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.duplicate-modal{background:var(--bg,#fff);border:1px solid var(--border);border-radius:12px;width:100%;max-width:520px;padding:2rem;box-shadow:0 24px 48px #0003}.duplicate-modal h2{margin:0 0 .75rem;font-size:1.25rem;font-weight:600}.duplicate-modal-info{color:var(--text);margin:0 0 1rem;font-size:.9375rem}.duplicate-modal-match{color:var(--text-heading,var(--text));background:#eab30814;border:1px solid #eab3084d;border-radius:8px;margin-bottom:1rem;padding:1rem;font-size:.9375rem}.duplicate-modal-date{color:var(--text-muted);margin-top:.375rem;font-size:.8125rem}.duplicate-modal-hint{color:var(--text-muted);margin:0 0 1.5rem;font-size:.8125rem;font-style:italic}.duplicate-modal-actions{flex-direction:column;gap:.625rem;display:flex}.duplicate-btn{cursor:pointer;text-align:left;border:1px solid var(--border);border-radius:8px;flex-direction:column;align-items:flex-start;padding:.75rem 1rem;font-size:.9375rem;font-weight:500;transition:background .15s;display:flex}.duplicate-btn-sub{opacity:.7;margin-top:.125rem;font-size:.75rem;font-weight:400;display:block}.duplicate-btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.duplicate-btn-primary:hover{opacity:.9}.duplicate-btn-primary .duplicate-btn-sub{color:#fffc}.duplicate-btn-secondary{background:var(--surface);color:var(--text)}.duplicate-btn-secondary:hover{background:var(--border)}.duplicate-btn-tertiary{color:var(--text-muted);background:0 0;border-color:#0000;padding:.5rem 1rem;font-size:.8125rem}.duplicate-btn-tertiary:hover{color:var(--text);background:var(--surface)}.grundstueck-form-text-actions{flex-wrap:wrap;gap:.5rem;display:flex}.rawtext-modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.rawtext-modal{background:var(--bg,#fff);border:1px solid var(--border);border-radius:12px;flex-direction:column;width:100%;max-width:800px;max-height:80vh;display:flex;box-shadow:0 24px 48px #0003}.rawtext-modal-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.rawtext-modal-header h3{margin:0;font-size:1rem;font-weight:600}.rawtext-modal-close{border:1px solid var(--border);cursor:pointer;width:32px;height:32px;color:var(--text);background:0 0;border-radius:6px;justify-content:center;align-items:center;font-size:1.125rem;display:flex}.rawtext-modal-close:hover{background:var(--surface)}.rawtext-modal-textarea{white-space:pre-wrap;word-break:break-word;color:var(--text);background:var(--surface,#f8f9fa);resize:none;border:none;outline:none;flex:1;min-height:200px;margin:0;padding:1.25rem;font-family:SF Mono,Menlo,Consolas,monospace;font-size:.8125rem;line-height:1.6}.rawtext-modal-footer{border-top:1px solid var(--border);flex-shrink:0;justify-content:flex-end;gap:.5rem;padding:.75rem 1.25rem;display:flex}.prio-select-group{gap:.5rem;display:flex}.prio-select-btn{cursor:pointer;background:0 0;border:2px solid;border-radius:50%;width:30px;height:30px;font-size:.7rem;font-weight:700;transition:transform .15s,box-shadow .15s}.prio-select-btn:hover{transform:scale(1.1)}.prio-select-1{color:#16a34a;border-color:#16a34a}.prio-select-1.prio-selected{color:#fff;background:#16a34a;box-shadow:0 0 0 3px #16a34a40}.prio-select-2{color:#ea580c;border-color:#ea580c}.prio-select-2.prio-selected{color:#fff;background:#ea580c;box-shadow:0 0 0 3px #ea580c40}.prio-select-3{color:#9ca3af;border-color:#9ca3af}.prio-select-3.prio-selected{color:#fff;background:#9ca3af;box-shadow:0 0 0 3px #9ca3af40}.tag-toggle-group{flex-wrap:wrap;gap:.5rem;display:flex}.tag-toggle{cursor:pointer;letter-spacing:.02em;background:0 0;border:2px solid;border-radius:14px;padding:.25rem .6rem;font-size:.5625rem;font-weight:600;transition:background .15s,color .15s,box-shadow .15s}.tag-toggle:hover{transform:scale(1.03)}.tag-eco-field{color:#16a34a;border-color:#16a34a}.tag-eco-field.tag-active{color:#fff;background:#16a34a;box-shadow:0 0 0 3px #16a34a33}.tag-eco-craft{color:#2563eb;border-color:#2563eb}.tag-eco-craft.tag-active{color:#fff;background:#2563eb;box-shadow:0 0 0 3px #2563eb33}.tag-multi-use{color:#9333ea;border-color:#9333ea}.tag-multi-use.tag-active{color:#fff;background:#9333ea;box-shadow:0 0 0 3px #9333ea33}.bplan-search-box{border:1px solid var(--border);background:var(--surface);border-radius:8px;margin-bottom:.75rem;padding:.75rem .875rem}.bplan-search-box-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:.25rem;font-size:.8125rem;font-weight:600}.bplan-search-box-hint{color:var(--text-muted);margin:0 0 .625rem;font-size:.75rem}.bplan-search-links{flex-wrap:wrap;align-items:center;gap:.375rem;display:flex}.bplan-search-link{color:var(--accent);border:1px solid var(--accent);white-space:nowrap;background:0 0;border-radius:14px;align-items:center;gap:.35rem;padding:.3rem .7rem;font-size:.75rem;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.bplan-search-link:after{content:"↗";opacity:.7;font-size:.7rem}.bplan-search-link:hover{background:var(--accent);color:var(--bg)}.bplan-search-results{border:1px solid var(--border);background:var(--surface);border-radius:8px;margin:.75rem 0;overflow:hidden}.bplan-search-results-head{border-bottom:1px solid var(--border);background:var(--bg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.625rem .875rem;display:flex}.bplan-search-results-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;display:inline-flex}.bplan-count{background:var(--accent);min-width:20px;height:18px;color:var(--bg);letter-spacing:0;text-transform:none;border-radius:10px;justify-content:center;align-items:center;padding:0 6px;font-size:.7rem;font-weight:600;display:inline-flex}.bplan-search-meta{flex-wrap:wrap;align-items:center;gap:.4rem;display:inline-flex}.bplan-meta-chip{border:1px solid var(--border);color:var(--text-muted);background:var(--surface);white-space:nowrap;border-radius:10px;padding:2px 8px;font-size:.68rem}.bplan-meta-chip-cache{color:#b78a00;background:#eab30814;border-color:#eab30859}.bplan-meta-chip-live{color:var(--accent);background:#22c55e14;border-color:#22c55e66}.bplan-search-results-list{margin:0;padding:0;list-style:none}.bplan-search-item{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.6rem .875rem;display:flex}.bplan-search-item:last-child{border-bottom:none}.bplan-search-item-high{box-shadow:inset 3px 0 0 var(--accent);background:#22c55e0a}.bplan-search-item-medium{box-shadow:inset 3px 0 #eab30880}.bplan-search-item-suggested{outline:2px solid var(--accent);outline-offset:-2px;background:#22c55e12}.bplan-deep-btn{border-color:var(--accent)}.bplan-deep-match{margin-bottom:.75rem}.bplan-deep-outcome{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:.75rem .875rem}.bplan-deep-outcome-heuristik,.bplan-deep-outcome-claude{border-left:3px solid var(--accent)}.bplan-deep-outcome-keiner{border-left:3px solid #94a3b8}.bplan-deep-outcome-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.35rem;display:flex}.bplan-deep-method{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.75rem;font-weight:600}.bplan-deep-confidence{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.72rem}.bplan-deep-begruendung{color:var(--text);margin:0 0 .5rem;font-size:.8125rem;line-height:1.45}.bplan-deep-best{flex-wrap:wrap;align-items:center;gap:.35rem;margin-top:.35rem;font-size:.85rem;display:flex}.bplan-deep-details{color:var(--text-muted);margin-top:.5rem;font-size:.78rem}.bplan-deep-scanned{margin:.35rem 0 0 1rem;padding:0;list-style:outside}.bplan-deep-h{font-variant-numeric:tabular-nums;min-width:2rem;color:var(--accent);font-weight:600;display:inline-block}.bplan-search-item-main{flex-direction:column;flex:1;gap:4px;min-width:260px;display:flex}.bplan-search-item-name{color:var(--text);font-size:.85rem;font-weight:500;line-height:1.35;text-decoration:none}.bplan-search-item-name:hover{color:var(--accent);text-decoration:underline}.bplan-search-item-meta{flex-wrap:wrap;align-items:center;gap:.375rem;display:inline-flex}.bplan-search-item-host{color:var(--text-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem}.bplan-chip{border:1px solid var(--border);background:var(--bg);color:var(--text-muted);white-space:nowrap;border-radius:10px;padding:1px 7px;font-size:.68rem;font-weight:500}.bplan-chip-source[data-source=Gemeinde]{color:var(--accent);background:#22c55e1a;border-color:#22c55e66}.bplan-chip-source[data-source=Bauleitplanung-online]{color:#2563eb;background:#3b82f61a;border-color:#3b82f666}.bplan-chip-pdf{color:#dc2626;background:#ef444414;border-color:#ef444466;font-weight:600}.bplan-chip-score-high{color:var(--accent);background:#22c55e1f;border-color:#22c55e80;font-weight:600}.bplan-chip-score-medium{color:#b78a00;background:#eab3081a;border-color:#eab30866}.bplan-search-item-link{color:var(--accent);border:1px solid var(--accent);white-space:nowrap;border-radius:14px;padding:4px 10px;font-size:.75rem;text-decoration:none}.bplan-search-item-link:hover{background:var(--accent);color:var(--bg)}.bplan-wfs-results{border:1px solid var(--accent);background:#2563eb0a;border-radius:8px;margin:.75rem 0;padding:.75rem}.bplan-wfs-title{color:var(--accent);margin:0 0 .5rem;font-size:.8125rem;font-weight:600}.bplan-wfs-item{border-bottom:1px solid #2563eb1a;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.375rem 0;display:flex}.bplan-wfs-item:last-child{border-bottom:none}.bplan-wfs-name{color:var(--text-heading,var(--text));font-size:.875rem;font-weight:500}.bplan-wfs-status{color:#15803d;background:#16a34a1a;border-radius:10px;padding:.125rem .5rem;font-size:.6875rem}.bplan-wfs-gemeinde{color:var(--text-muted);font-size:.75rem}.bplan-wfs-link{color:var(--accent);margin-left:auto;font-size:.75rem}.input-with-unit{align-items:center;gap:0;display:flex}.input-with-unit input{border-top-right-radius:0;border-bottom-right-radius:0;flex:1}.input-unit{color:var(--text-muted);background:var(--surface);border:1px solid var(--border);white-space:nowrap;border-left:none;border-radius:0 6px 6px 0;padding:.5rem .625rem;font-size:.8125rem;font-weight:500}.grundstueck-form-computed{color:var(--accent);border:1px solid var(--border);font-variant-numeric:tabular-nums;background:#2563eb0f;border-radius:6px;padding:.625rem .75rem;font-size:1.125rem;font-weight:600}@media (width<=640px){.grundstueck-form-fieldset{grid-template-columns:1fr}.grundstueck-form-fieldset textarea,.grundstueck-form-fieldset .grundstueck-form-computed{grid-column:1}.grundstueck-form-expose-section{padding:.75rem}.grundstueck-form-actions{flex-direction:column}.duplicate-modal{padding:1.25rem}}.kontakt-rel-list{flex-direction:column;gap:.25rem;display:flex}.kontakt-rel-item{color:inherit;background:#00000005;border-radius:8px;align-items:center;gap:.6rem;padding:.5rem .75rem;text-decoration:none;transition:background .15s;display:flex}.kontakt-rel-item:hover{background:#3b82f60f}.kontakt-rel-item-static{cursor:default}.kontakt-rel-item-static:hover{background:#00000005}.kontakt-rel-icon{flex-shrink:0;font-size:1.1rem}.kontakt-rel-content{flex-direction:column;flex:1;min-width:0;display:flex}.kontakt-rel-title{color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:500;overflow:hidden}.kontakt-rel-done{opacity:.6;text-decoration:line-through}.kontakt-rel-meta{color:var(--text-muted,#6b7280);font-size:.78rem}.kontakt-rel-arrow{color:var(--accent);flex-shrink:0;font-size:.9rem}.gs-konz-list{flex-direction:column;gap:.375rem;margin-bottom:.25rem;display:flex}.gs-konz-row{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);flex-direction:column;gap:.25rem;padding:.625rem .75rem;text-decoration:none;transition:border-color .15s,background .15s;display:flex}.gs-konz-row:hover{border-color:var(--accent);background:var(--surface);text-decoration:none}.gs-konz-main{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.gs-konz-name{color:var(--text-heading);font-size:.9375rem;font-weight:600}.gs-konz-status{white-space:nowrap;border:1px solid;border-radius:999px;padding:2px 8px;font-size:.75rem;font-weight:500}.gs-konz-meta{color:var(--text-muted);flex-wrap:wrap;gap:.75rem;font-size:.8125rem;display:flex}.gs-konz-gen{color:var(--text-muted)}.gs-lage-grid{grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);align-items:stretch;gap:1rem;display:grid}@media (width<=900px){.gs-lage-grid{grid-template-columns:1fr}}.gs-lage-map-col{flex-direction:column;gap:.75rem;min-width:0;display:flex}.gs-lage-map{border:1px solid var(--border);background:var(--surface);border-radius:8px;height:360px;overflow:hidden}.gs-iso-results{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:.75rem .875rem}.gs-iso-results-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.625rem;display:flex}.gs-iso-results-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0;font-size:.8125rem;font-weight:600}.gs-iso-results-actions{align-items:center;gap:.625rem;display:inline-flex}.gs-iso-results-stamp{color:var(--text-muted);font-size:.7rem}.gs-iso-results-refresh{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:999px;padding:3px 10px;font-size:.75rem}.gs-iso-results-refresh:hover{background:var(--surface-hover,#0000000a);border-color:var(--text-muted)}.gs-iso-results-refresh:disabled{opacity:.6;cursor:not-allowed}.gs-iso-zones{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.5rem;display:grid}.gs-iso-zone{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:.5rem .625rem}.gs-iso-zone-head{color:var(--text-muted);align-items:center;gap:.375rem;font-size:.75rem;font-weight:500;display:inline-flex}.gs-iso-zone-dot{opacity:.7;border-radius:2px;width:10px;height:10px}.gs-iso-zone-pop{color:var(--text);font-variant-numeric:tabular-nums;margin-top:2px;font-size:1.125rem;font-weight:600;line-height:1.2}.gs-iso-zone-meta{color:var(--text-muted);margin-top:2px;font-size:.7rem}.gs-lage-map-wrapper{height:100%;position:relative}.gs-lage-map-empty{background:var(--surface);color:var(--text-muted);border-radius:8px;justify-content:center;align-items:center;font-size:.875rem;display:flex}.gs-lage-map-hint{color:#374151;pointer-events:none;z-index:500;background:#ffffffeb;border-radius:999px;padding:4px 10px;font-size:.75rem;position:absolute;bottom:8px;left:50%;transform:translate(-50%);box-shadow:0 1px 4px #00000026}.gs-lage-map-controls{z-index:1100;flex-wrap:wrap;gap:6px;display:flex;position:absolute;top:10px;left:10px}.gs-lage-fs-btn{z-index:1100;color:#374151;cursor:pointer;background:#fffffff2;border:1px solid #00000026;border-radius:6px;justify-content:center;align-items:center;width:30px;height:30px;padding:0;transition:color .15s,background .15s,border-color .15s;display:inline-flex;position:absolute;top:10px;right:56px;box-shadow:0 1px 4px #0000001a}.gs-lage-fs-btn:hover{color:var(--accent);background:#fff;border-color:#00000038}:-webkit-any(.gs-lage-map-wrapper:fullscreen,.gs-lage-map-wrapper:-webkit-full-screen){background:var(--surface);border-radius:0;width:100%;height:100%;max-height:100%}:is(.gs-lage-map-wrapper:fullscreen,.gs-lage-map-wrapper:fullscreen){background:var(--surface);border-radius:0;width:100%;height:100%;max-height:100%}.gs-lage-map-wrapper--fs .leaflet-container{border-radius:0}.gs-lage-layer-footnote{z-index:1050;color:var(--text-muted,#64748b);text-shadow:0 0 4px #ffffffe6;pointer-events:none;max-width:22rem;font-size:.65rem;line-height:1.35;position:absolute;top:48px;left:10px;right:52px}.gs-lage-map-wrapper--fs .gs-lage-layer-footnote{text-shadow:0 0 6px #00000059;color:#e2e8f0}.gs-lage-toggle{color:#374151;cursor:pointer;background:#fffffff2;border:1px solid #00000026;border-radius:999px;padding:4px 12px;font-size:.75rem;font-weight:500;transition:all .15s;box-shadow:0 1px 4px #0000001a}.gs-lage-toggle:hover{color:var(--text);background:#fff}.gs-lage-toggle.active{background:var(--accent);border-color:var(--accent);color:#fff}.gs-lage-toggle:disabled{opacity:.6;cursor:not-allowed}.gs-lage-iso-legend{color:#374151;z-index:500;pointer-events:none;background:#ffffffeb;border-radius:6px;flex-wrap:wrap;gap:10px;padding:6px 10px;font-size:.7rem;display:flex;position:absolute;bottom:8px;left:8px;right:8px;box-shadow:0 1px 4px #0000001a}.gs-lage-iso-legend-item{align-items:center;gap:4px;display:inline-flex}.gs-lage-iso-legend-dot{opacity:.7;border-radius:2px;width:10px;height:10px}.gs-lage-params{background:var(--surface);border:1px solid var(--border);border-radius:8px;flex-direction:column;min-height:0;padding:.875rem 1rem;font-size:.875rem;display:flex}.gs-lage-params-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:.75rem 0 .375rem;font-size:.75rem;font-weight:600}.gs-lage-params-title:first-child{margin-top:0}.gs-lage-params-stamp{color:var(--text-muted);text-transform:none;letter-spacing:0;font-size:.7rem;font-weight:400}.gs-lage-params-list{margin:0;padding:0}.gs-lage-param{border-bottom:1px dotted var(--border);justify-content:space-between;gap:.75rem;padding:.25rem 0;display:flex}.gs-lage-param:last-child{border-bottom:none}.gs-lage-param dt{color:var(--text-muted);flex-shrink:0;font-weight:500}.gs-lage-param dd{text-align:right;color:var(--text);word-break:break-word;margin:0}.gs-lage-coords{color:var(--text-muted);text-align:right;margin:.75rem 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem}.kmz-map-wrapper{border:1px solid var(--border);background:var(--surface);border-radius:8px;flex-direction:column;margin-top:.75rem;display:flex;position:relative;overflow:hidden}.kmz-map-leaflet-shell{min-height:200px;position:relative}.kmz-map-wrapper--fs .kmz-map-leaflet-shell{flex:1;height:auto;min-height:0}:-webkit-any(.kmz-map-wrapper:fullscreen,.kmz-map-wrapper:-webkit-full-screen){border-radius:0;width:100%;height:100%;max-height:100%;margin-top:0}:is(.kmz-map-wrapper:fullscreen,.kmz-map-wrapper:fullscreen){border-radius:0;width:100%;height:100%;max-height:100%;margin-top:0}.kmz-map-wrapper--fs .leaflet-container{border-radius:0}.kmz-map-fs-btn{z-index:1100;top:8px;right:10px}.kmz-map-alt-legend{background:var(--surface);border-top:1px solid var(--border);flex-shrink:0;align-items:center;gap:8px;padding:6px 10px;font-size:.75rem;display:flex}.kmz-map-alt-gradient{border-radius:4px;width:80px;height:10px;display:inline-block}.dup-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.dup-modal{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;width:100%;max-width:560px;max-height:85vh;padding:1.5rem;overflow-y:auto;box-shadow:0 8px 32px #00000040}.dup-title{color:var(--text-heading);margin:0 0 .5rem;font-size:1.15rem}.dup-subtitle{color:var(--text-secondary);margin:0 0 1rem;font-size:.85rem;line-height:1.4}.dup-matches{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.dup-match-card{border:1px solid var(--border);background:var(--bg);border-radius:8px;padding:.7rem}.dup-match-main{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.dup-match-label{color:var(--text-heading);font-size:.88rem;font-weight:600}.dup-match-sim{color:#f59e0b;white-space:nowrap;background:#f59e0b22;border-radius:4px;padding:.15rem .4rem;font-size:.7rem;font-weight:600}.dup-match-details{color:var(--text-secondary);margin-top:.2rem;font-size:.78rem}.dup-match-date{color:var(--text-secondary);opacity:.7;margin-top:.2rem;font-size:.72rem}.dup-match-actions{gap:.4rem;margin-top:.5rem;display:flex}.dup-actions{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.dup-btn{border:1px solid var(--border);cursor:pointer;background:var(--bg);color:var(--text);border-radius:8px;padding:.5rem .9rem;font-size:.82rem;transition:all .15s}.dup-btn:hover{border-color:var(--accent,#3b82f6)}.dup-btn-open{background:var(--accent,#3b82f6);color:#fff;border-color:var(--accent,#3b82f6)}.dup-btn-open:hover{opacity:.9}.dup-btn-vb{background:var(--accent-muted);color:var(--accent);border-color:var(--accent)}.dup-btn-vb:hover{background:var(--accent);color:#fff}.dup-btn-edit{flex:1}.dup-btn-force{opacity:.7;font-size:.78rem}.dup-btn-force:hover{opacity:1;color:#f59e0b;border-color:#f59e0b}.dup-btn-cancel{opacity:.6;font-size:.78rem}.dup-btn-cancel:hover{opacity:1}.dup-vb-form{flex-direction:column;gap:.4rem;margin-bottom:1rem;display:flex}.dup-vb-form label{color:var(--text-secondary);margin-top:.3rem;font-size:.78rem;font-weight:600}.dup-vb-form input,.dup-vb-form textarea{border:1px solid var(--border);background:var(--input-bg);color:var(--text);border-radius:6px;padding:.45rem .6rem;font-size:.85rem}.dup-vb-done{text-align:center;padding:1rem 0}.dup-vb-done p{margin:.5rem 0;font-size:.9rem}.dup-vb-hint{color:var(--text-secondary);font-size:.82rem;font-style:italic}.konzepte-page{--bg:#f4f6f9;--surface:#fff;--border:#dde1e9;--text:#2d3748;--text-heading:#1a202c;--text-muted:#718096;--input-bg:#fff;--accent:#3b82f6;background:var(--bg);width:100%;max-width:100%;padding:1.5rem 1.75rem 3rem}.konzepte-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.konzepte-header-left{align-items:baseline;gap:.75rem;display:flex}.konzepte-title{color:#2d3748;letter-spacing:-.02em;margin:0;font-size:1.5rem;font-weight:800}.konzepte-count{color:var(--text-muted);background:var(--surface);border-radius:10px;padding:.1875rem .625rem;font-size:.8125rem}.konzepte-btn-new-top{color:#fff;background:var(--accent);cursor:pointer;border:none;border-radius:8px;padding:.5rem 1.25rem;font-size:.875rem;font-weight:600;transition:opacity .15s}.konzepte-btn-new-top:hover{opacity:.9}.konzepte-stats{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem;margin-bottom:1.25rem;display:grid}.konzepte-stat-card{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:10px;flex-direction:column;align-items:center;gap:.125rem;padding:.75rem .5rem;transition:border-color .15s,box-shadow .15s,transform .1s;display:flex}.konzepte-stat-card:hover{border-color:var(--stat-color);transform:translateY(-1px)}.konzepte-stat-card.konzepte-stat-active{border-color:var(--stat-color);box-shadow:0 0 0 2px color-mix(in srgb, var(--stat-color) 25%, transparent);background:color-mix(in srgb, var(--stat-color) 6%, var(--surface))}.konzepte-stat-num{color:var(--stat-color);font-variant-numeric:tabular-nums;font-size:1.375rem;font-weight:700}.konzepte-stat-label{color:var(--text-muted);text-align:center;font-size:.6875rem;font-weight:500}.konzepte-filter-bar{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1.25rem;display:flex}.konzepte-filter-input{border:1px solid var(--border);background:var(--input-bg);min-width:180px;color:var(--text);border-radius:6px;flex:1;padding:.5rem .75rem;font-size:.875rem}.konzepte-filter-input:focus{border-color:var(--accent);outline:none}.konzepte-filter-select{border:1px solid var(--border);background:var(--input-bg);color:var(--text);border-radius:6px;padding:.5rem .75rem;font-size:.8125rem}.konzepte-filter-reset{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;padding:.375rem .75rem;font-size:.75rem}.konzepte-filter-reset:hover{background:var(--surface)}.konzepte-filter-count{color:var(--text-muted);margin-left:auto;font-size:.75rem}.konzepte-groups{flex-direction:column;gap:1.25rem;display:flex}.konzepte-group{background:#fff;border:1px solid #dde1e9;border-radius:12px;overflow:hidden;box-shadow:0 1px 4px #0000000d}.konzepte-group-header{background:#f8fafc;border-bottom:1px solid #dde1e9;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.konzepte-group-left{align-items:center;gap:.5rem;min-width:0;display:flex}.konzepte-group-icon{flex-shrink:0;font-size:1.125rem}.konzepte-group-adresse{color:var(--text-heading);text-overflow:ellipsis;white-space:nowrap;font-size:.9375rem;font-weight:600;text-decoration:none;overflow:hidden}.konzepte-group-adresse:hover{color:var(--accent);text-decoration:underline}.konzepte-group-count{color:var(--text-muted);background:var(--bg);border:1px solid var(--border);white-space:nowrap;border-radius:10px;flex-shrink:0;padding:.125rem .5rem;font-size:.6875rem}.konzepte-group-add{color:var(--accent);border:1px dashed var(--accent);cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;flex-shrink:0;padding:.3rem .75rem;font-size:.75rem;font-weight:600;transition:background .15s}.konzepte-group-add:hover{background:#2563eb0f}.konzepte-group-table-wrap{overflow-x:auto}.konzepte-group-table{border-collapse:collapse;width:100%;font-size:.8125rem}.konzepte-group-table thead{background:var(--surface)}.konzepte-group-table th{text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border);white-space:nowrap;padding:.5rem .75rem;font-size:.6875rem;font-weight:600}.konzepte-group-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:.625rem .75rem}.konzepte-row{cursor:pointer;transition:background .1s}.konzepte-row:hover{background:#f0f4ff}.konzepte-row:last-child td{border-bottom:none}.konzepte-cell-name{flex-direction:column;gap:.125rem;min-width:140px;display:flex}.konzepte-name{color:var(--text-heading);font-weight:600}.konzepte-desc{color:var(--text-muted);-webkit-line-clamp:1;-webkit-box-orient:vertical;font-size:.6875rem;display:-webkit-box;overflow:hidden}.konzepte-badge{white-space:nowrap;border:1px solid;border-radius:12px;padding:.1875rem .5rem;font-size:.6875rem;font-weight:600;display:inline-block}.konzepte-cell-num{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.konzepte-cell-date{color:var(--text-muted);white-space:nowrap;font-size:.6875rem}.konzepte-cell-actions{white-space:nowrap}.konzepte-btn-icon{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;width:26px;height:26px;font-size:.75rem;transition:background .1s;display:inline-flex}.konzepte-btn-icon:hover{background:var(--surface);border-color:var(--border)}.konzepte-btn-del{color:var(--text-secondary,#64748b)}.konzepte-btn-del:hover{color:#ef4444;background:#ef444414;border-color:#ef444459}.konzepte-loading{text-align:center;color:var(--text-muted);padding:3rem 0}.konzepte-empty{text-align:center;color:#718096;background:#fff;border:1px dashed #c8cdd8;border-radius:12px;padding:3rem 1rem}.konzepte-empty-sub{color:var(--text-muted);margin-top:.5rem;font-size:.875rem}.konzepte-error{color:var(--error);background:#dc262614;border-radius:6px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem}.konzepte-dialog-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.konzepte-dialog{background:var(--bg,#fff);border:1px solid var(--border);border-radius:14px;width:100%;max-width:480px;padding:2rem;box-shadow:0 24px 48px #0000002e}.konzepte-dialog-title{margin:0 0 1.25rem;font-size:1.25rem;font-weight:700}.konzepte-dialog-label{color:var(--text);margin-bottom:1rem;font-size:.8125rem;font-weight:500;display:block}.konzepte-dialog-select,.konzepte-dialog-input{border:1px solid var(--border);background:var(--input-bg);width:100%;color:var(--text);box-sizing:border-box;border-radius:6px;margin-top:.375rem;padding:.5rem .75rem;font-size:.9375rem;display:block}.konzepte-dialog-select:focus,.konzepte-dialog-input:focus{border-color:var(--accent);outline:none}.konzepte-dialog-actions{justify-content:flex-end;gap:.625rem;margin-top:1.5rem;display:flex}.konzepte-dialog-cancel{color:var(--text);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;padding:.5rem 1rem;font-size:.875rem}.konzepte-dialog-cancel:hover{background:var(--surface)}.konzepte-dialog-save{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:.5rem 1.25rem;font-size:.875rem;font-weight:600}.konzepte-dialog-save:hover:not(:disabled){opacity:.9}.konzepte-dialog-save:disabled{opacity:.5;cursor:not-allowed}.konzepte-dialog-info{color:#2d3748;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;grid-template-columns:auto 1fr;gap:.25rem .75rem;margin:.25rem 0 .5rem;padding:.625rem .875rem;font-size:.8rem;display:grid}.konzepte-dialog-info span{color:#718096}.konzepte-dialog-info strong{color:#1e40af;font-weight:600}@media (width<=768px){.konzepte-stats{grid-template-columns:repeat(3,1fr)}.konzepte-group-table{font-size:.75rem}}@media (width<=480px){.konzepte-stats{grid-template-columns:repeat(2,1fr)}.konzepte-group-header{flex-direction:column;align-items:flex-start}}.skk-page{--skk-bg:#f4f6f9;--skk-surface:#fff;--skk-surface-2:#f8fafc;--skk-border:#dde1e9;--skk-border-2:#c8cdd8;--skk-text:#2d3748;--skk-text-muted:#718096;--skk-text-light:#a0aec0;--skk-accent:#3b82f6;--skk-accent-bg:#eff6ff;--skk-green:#059669;--skk-green-bg:#ecfdf5;--skk-amber:#d97706;--skk-amber-bg:#fffbeb;--skk-group-bg:var(--accent-muted);--skk-group-text:var(--accent);--skk-hover:#f0f4ff;--skk-total-bg:#1e3a5f;--skk-total-text:#fff;background:var(--skk-bg);max-width:1400px;min-height:100%;margin:0 auto;padding:1.5rem 1.75rem 3rem}.skk-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.skk-header-left{flex-wrap:wrap;align-items:baseline;gap:.75rem;display:flex}.skk-title{color:var(--skk-text);letter-spacing:-.02em;margin:0;font-size:1.5rem;font-weight:800}.skk-count{color:var(--skk-text-muted);font-size:.8rem;font-weight:500}.skk-header-right{align-items:center;gap:.5rem;display:flex}.skk-btn-add{background:var(--skk-accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.55rem 1.2rem;font-size:.82rem;font-weight:700;transition:all .15s;box-shadow:0 1px 3px #3b82f64d}.skk-btn-add:hover{background:#2563eb;box-shadow:0 2px 8px #3b82f666}.skk-btn-quickcheck{color:#92400e;cursor:pointer;white-space:nowrap;background:#fffbeb;border:1.5px solid #f59e0b;border-radius:7px;align-items:center;gap:.3rem;padding:.45rem 1rem;font-size:.82rem;font-weight:700;text-decoration:none;transition:all .15s;display:inline-flex}.skk-btn-quickcheck:hover{color:#78350f;background:#fef3c7;border-color:#d97706;box-shadow:0 2px 6px #d9770640}.skk-btn-back{background:var(--skk-surface);border:1px solid var(--skk-border-2);color:var(--skk-text-muted);cursor:pointer;border-radius:7px;padding:.45rem .9rem;font-size:.78rem;font-weight:600;transition:all .15s}.skk-btn-back:hover{border-color:var(--skk-accent);color:var(--skk-accent);background:var(--skk-accent-bg)}.skk-breadcrumb{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.skk-breadcrumb-sep{color:var(--skk-text-light);font-size:1rem}.skk-breadcrumb-konzept{color:var(--skk-text);font-size:.88rem;font-weight:700}.skk-breadcrumb-adresse{color:var(--skk-text-muted);font-size:.75rem}.skk-konzept-selector{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:1rem;display:flex}.skk-konzept-selector-label{color:var(--skk-text-muted);font-size:.8rem;font-weight:600}.skk-stats{flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem;display:flex}.skk-stat-card{background:var(--skk-surface);border:1px solid var(--skk-border);border-radius:12px;flex-direction:column;flex:160px;gap:.25rem;padding:1rem 1.25rem;display:flex;box-shadow:0 1px 4px #0000000f}.skk-stat-total{border-left:4px solid var(--skk-accent);background:var(--skk-accent-bg)}.skk-stat-value{color:var(--skk-text);letter-spacing:-.02em;font-size:1.35rem;font-weight:800}.skk-stat-total .skk-stat-value{color:var(--skk-accent)}.skk-stat-label{color:var(--skk-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:600}.skk-filter-select,.skk-filter-input{background:var(--skk-surface);border:1px solid var(--skk-border);color:var(--skk-text);border-radius:8px;padding:.5rem .75rem;font-size:.82rem;box-shadow:0 1px 2px #0000000a}.skk-filter-select{min-width:240px}.skk-filter-input{flex:1;min-width:180px}.skk-filter-select:focus,.skk-filter-input:focus{outline:2px solid var(--skk-accent);border-color:var(--skk-accent)}.skk-konzept-info-bar{background:var(--skk-accent-bg);color:var(--skk-text-muted);border:1px solid #bfdbfe;border-radius:8px;align-items:center;gap:.5rem;margin-bottom:.85rem;padding:.55rem .9rem;font-size:.8rem;display:flex}.skk-konzept-info-bar strong{color:var(--skk-text)}.skk-sep{opacity:.35}.skk-error{color:#dc2626;background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;margin-bottom:.75rem;padding:.65rem .9rem;font-size:.82rem}.skk-loading{text-align:center;color:var(--skk-text-muted);padding:3rem 1rem}.skk-empty{text-align:center;color:var(--skk-text-muted);background:var(--skk-surface);border:1px dashed var(--skk-border-2);border-radius:12px;padding:3rem 1rem}.skk-empty p{margin-bottom:.5rem}.skk-empty-hint{color:var(--skk-text-light)!important;font-size:.75rem!important}.skk-table-wrap{border:1px solid var(--skk-border);background:var(--skk-surface);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000f}.skk-table{border-collapse:collapse;width:100%;font-size:.83rem}.skk-th-gruppe{width:220px;min-width:180px}.skk-th-position{min-width:200px}.skk-th-num{width:110px}.skk-th-einheit{width:80px}.skk-th-gesamt{width:140px}.skk-th-del{width:36px}.skk-table thead th{text-align:left;letter-spacing:.05em;text-transform:uppercase;color:var(--skk-text-muted);background:var(--skk-surface-2);border-bottom:2px solid var(--skk-border);white-space:nowrap;padding:.75rem .85rem;font-size:.7rem;font-weight:700}.skk-table th.skk-th-num,.skk-table th.skk-th-gesamt{text-align:right}.skk-group-row td{background:var(--skk-group-bg);text-transform:uppercase;letter-spacing:.05em;color:var(--skk-group-text);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:.45rem .85rem;font-size:.72rem;font-weight:700}.skk-group-label{text-align:left}.skk-group-sum{text-align:right;color:var(--skk-group-text);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:800}.skk-row td{border-bottom:1px solid var(--skk-border);vertical-align:middle;color:var(--skk-text);background:var(--skk-surface);padding:.45rem .85rem}.skk-row:last-child td{border-bottom:none}.skk-row:hover td{background:var(--skk-hover)}.skk-saving td{opacity:.55}.skk-td-num,.skk-td-gesamt{text-align:right;font-variant-numeric:tabular-nums}.skk-td-gesamt{color:var(--skk-text);font-size:.87rem;font-weight:700}.skk-td-del{text-align:center}.skk-kg-select{width:100%;color:var(--skk-text);cursor:pointer;appearance:auto;background:0 0;border:1px solid #0000;border-radius:6px;padding:.3rem .4rem;font-size:.8rem;transition:all .12s}.skk-kg-select:hover{background:var(--skk-surface-2);border-color:var(--skk-border-2)}.skk-kg-select:focus{outline:2px solid var(--skk-accent);border-color:var(--skk-accent);background:#fff}.skk-gst-select{width:100%;color:var(--skk-text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;padding:.25rem .3rem;font-size:.78rem}.skk-gst-select:hover,.skk-gst-select:focus{border-color:var(--skk-border-2);background:var(--skk-surface-2);color:var(--skk-text);outline:none}.skk-btn-del{color:#ef4444;cursor:pointer;opacity:.55;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;transition:all .15s;display:flex}.skk-row:hover .skk-btn-del{opacity:1}.skk-btn-del:hover{color:#dc2626;opacity:1;background:#fee2e2;border-color:#f87171;transform:scale(1.08);box-shadow:0 1px 4px #dc262633}.skk-btn-del:active{transform:scale(.96)}.skk-cell-view{cursor:text;white-space:nowrap;text-overflow:ellipsis;min-height:1.7rem;color:var(--skk-text);border-radius:5px;padding:.28rem .4rem;line-height:1.4;transition:background .1s;display:block;overflow:hidden}.skk-cell-view:hover{background:var(--skk-surface-2);outline:1px solid var(--skk-border-2)}.skk-cell-view.skk-empty{color:var(--skk-text-light);font-style:italic}.skk-cell-view.skk-right,.skk-cell-input.skk-right{text-align:right}.skk-cell-input{border:2px solid var(--skk-accent);width:100%;color:var(--skk-text);background:#fff;border-radius:5px;outline:none;padding:.28rem .4rem;font-size:.83rem;box-shadow:0 0 0 3px #3b82f61f}.skk-table-footer{background:var(--skk-surface-2);border-top:1px solid var(--skk-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.55rem .85rem;display:flex}.skk-btn-add-row{color:var(--skk-accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:.78rem;font-weight:700}.skk-btn-add-row:hover{text-decoration:underline}.skk-table-hint{color:var(--skk-text-light);font-size:.68rem}.skk-empty-cell{text-align:center;color:var(--skk-text-muted);padding:1.75rem;font-size:.83rem}.skk-link-btn{color:var(--skk-accent);cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0;font-weight:700}.skk-link-btn:hover{text-decoration:underline}.skk-total-row td{background:var(--skk-total-bg);padding:.75rem .85rem}.skk-total-label{text-transform:uppercase;letter-spacing:.05em;color:#ffffffa6;font-size:.72rem;font-weight:700}.skk-total-value{text-align:right;color:#fff;font-variant-numeric:tabular-nums;font-size:1.05rem;font-weight:800}.skk-nk-panel{border:1px solid var(--skk-border);background:var(--skk-surface);border-radius:12px;margin-bottom:1.25rem;overflow:hidden;box-shadow:0 1px 4px #0000000d}.skk-nk-header{background:var(--accent-muted);border-bottom:1px solid var(--border);align-items:baseline;gap:.75rem;padding:.85rem 1.1rem;display:flex}.skk-nk-title{color:var(--accent);font-size:.92rem;font-weight:800}.skk-nk-sub{color:var(--accent);font-size:.75rem}.skk-nk-loading{color:var(--skk-text-muted);padding:1rem;font-size:.8rem}.skk-nk-grid{padding:0}.skk-nk-row{border-bottom:1px solid var(--skk-border);grid-template-columns:1fr 120px 140px;align-items:center;gap:.5rem;padding:.6rem 1.1rem;display:grid}.skk-nk-row:last-of-type{border-bottom:none}.skk-nk-row-main,.skk-nk-row-sub{background:#f8fafc}.skk-nk-row-total{background:var(--skk-total-bg);color:var(--skk-total-text)}.skk-nk-row-total .skk-nk-label{color:#cbd5e1;font-weight:700}.skk-nk-label{color:var(--skk-text);font-size:.8125rem;font-weight:500}.skk-nk-label-wrap{flex-direction:column;gap:.2rem;display:flex}.skk-nk-bl-select{color:var(--skk-text-muted);border:1px solid var(--skk-border);background:#fff;border-radius:4px;max-width:180px;padding:.1rem .3rem;font-size:.7rem}.skk-nk-input-wrap{align-items:center;gap:.25rem;display:flex}.skk-nk-input{text-align:right;border:1px solid var(--skk-border);width:72px;color:var(--skk-text);background:#fff;border-radius:5px;padding:.3rem .5rem;font-size:.8125rem}.skk-nk-input:focus{border-color:var(--skk-accent);outline:none}.skk-nk-unit{color:var(--skk-text-muted);font-size:.72rem}.skk-nk-value{text-align:right;font-variant-numeric:tabular-nums;color:var(--skk-text);font-size:.875rem;font-weight:600}.skk-nk-kaufpreis{color:var(--skk-accent);font-size:1rem;font-weight:800}.skk-nk-total{color:#fff;font-size:1.05rem;font-weight:800}.skk-nk-divider{background:var(--skk-border-2);height:1px;margin:.25rem 0}.skk-nk-footer{background:var(--skk-surface-2);border-top:1px solid var(--skk-border);align-items:center;gap:1rem;padding:.7rem 1.1rem;display:flex}.skk-nk-save-btn{background:var(--skk-accent);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:.4rem 1rem;font-size:.8rem;font-weight:700}.skk-nk-save-btn:hover{background:#2563eb}.skk-nk-hint{color:var(--skk-text-muted);font-size:.72rem}.skk-global-wrap{flex-direction:column;gap:1.25rem;display:flex}.skk-konzept-block{border:1px solid var(--skk-border);background:var(--skk-surface);border-radius:12px;overflow:hidden;box-shadow:0 1px 4px #0000000d}.skk-konzept-block-header{background:var(--skk-surface-2);border-bottom:1px solid var(--skk-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.1rem;display:flex}.skk-konzept-block-title{flex-direction:column;gap:.15rem;display:flex}.skk-konzept-block-name{color:var(--skk-text);font-size:.92rem;font-weight:700}.skk-konzept-block-addr{color:var(--skk-text-muted);font-size:.72rem}.skk-konzept-block-meta{align-items:center;gap:.75rem;display:flex}.skk-konzept-block-sum{color:var(--skk-accent);font-variant-numeric:tabular-nums;font-size:1rem;font-weight:800}.skk-btn-open{background:var(--skk-accent);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:7px;padding:.4rem .9rem;font-size:.75rem;font-weight:700;transition:background .15s;box-shadow:0 1px 3px #3b82f64d}.skk-btn-open:hover{background:#2563eb}.skk-mini-table-wrap{overflow-x:auto}.skk-mini-table{border-collapse:collapse;width:100%;font-size:.77rem}.skk-mini-table th{background:var(--skk-surface-2);color:var(--skk-text-muted);text-align:left;border-bottom:1px solid var(--skk-border);white-space:nowrap;text-transform:uppercase;letter-spacing:.04em;padding:.35rem .7rem;font-size:.68rem;font-weight:700}.skk-mini-table td{border-bottom:1px solid var(--skk-border);color:var(--skk-text);padding:.35rem .7rem}.skk-mini-table tr:last-child td{border-bottom:none}.skk-mini-table .skk-right{text-align:right;font-variant-numeric:tabular-nums}.skk-mini-table .skk-gp{color:var(--skk-text);font-weight:700}.skk-more-row td{text-align:center;color:var(--skk-text-light);background:var(--skk-surface-2);padding:.45rem;font-size:.7rem}.skk-confirm-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:9999;background:#0f172a73;justify-content:center;align-items:center;animation:.15s skk-fade-in;display:flex;position:fixed;inset:0}@keyframes skk-fade-in{0%{opacity:0}to{opacity:1}}.skk-confirm-dialog{background:#fff;border-radius:16px;flex-direction:column;align-items:center;gap:.6rem;width:calc(100% - 2rem);max-width:360px;padding:2rem 2rem 1.5rem;animation:.18s skk-slide-up;display:flex;box-shadow:0 20px 60px #0000002e,0 4px 16px #00000014}@keyframes skk-slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.skk-confirm-icon{color:#dc2626;background:#fef2f2;border:2px solid #fecaca;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:.25rem;display:flex}.skk-confirm-title{color:#1e293b;text-align:center;margin:0;font-size:1.05rem;font-weight:700}.skk-confirm-text{color:#64748b;text-align:center;margin:0;font-size:.82rem;line-height:1.5}.skk-confirm-actions{gap:.65rem;width:100%;margin-top:.75rem;display:flex}.skk-confirm-cancel{color:#475569;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:9px;flex:1;padding:.6rem 1rem;font-size:.85rem;font-weight:600;transition:all .12s}.skk-confirm-cancel:hover{background:#f1f5f9;border-color:#cbd5e1}.skk-confirm-ok{color:#fff;cursor:pointer;background:#dc2626;border:none;border-radius:9px;flex:1;padding:.6rem 1rem;font-size:.85rem;font-weight:700;transition:all .12s;box-shadow:0 2px 8px #dc26264d}.skk-confirm-ok:hover{background:#b91c1c;box-shadow:0 3px 12px #dc262666}.skk-kz-panel{background:var(--skk-surface);border:1px solid var(--skk-border);border-radius:12px;margin-bottom:1rem;padding:1.1rem 1.4rem}.skk-kz-title{text-transform:uppercase;letter-spacing:.06em;color:var(--skk-text-muted);margin-bottom:.85rem;font-size:.8rem;font-weight:700}.skk-kz-hint{text-transform:none;letter-spacing:0;color:var(--skk-text-light);margin-left:.35rem;font-size:.78rem;font-weight:400}.skk-kz-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.65rem 1rem;display:grid}.skk-kz-item{background:var(--skk-surface-2);border:1px solid var(--skk-border);border-radius:8px;flex-direction:column;gap:.15rem;padding:.55rem .75rem;display:flex}.skk-kz-label{color:var(--skk-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:500}.skk-kz-value{color:var(--skk-text);font-size:.95rem;font-weight:600}.skk-kz-highlight{color:var(--skk-accent)}@media (width<=768px){.skk-page{padding:1rem}.skk-stats{flex-direction:column}.skk-header{flex-direction:column;align-items:flex-start}.skk-th-gesamt,.skk-td-gesamt{min-width:100px}}.skd-page-root,.grundstueck-form-page .skd-status-row,:root{--skd-bg:#f4f6f9;--skd-surface:#fff;--skd-border:#dde1e9;--skd-text:#2d3748;--skd-muted:#718096;--skd-accent:#3b82f6}.skd-calc-card{background:#f8fafc!important;border-color:#dde1e9!important}.skd-calc-card:hover{box-shadow:0 4px 12px #3b82f614!important}.skd-export-btn{color:#2d3748!important;background:#fff!important;border-color:#dde1e9!important}.skd-export-btn:hover{background:#f0f4ff!important;border-color:#3b82f6!important}.skd-status-row,.skd-gen-row{flex-wrap:wrap;gap:.375rem;margin-top:.25rem;display:flex}.skd-status-btn{cursor:pointer;border:2px solid var(--sc,var(--border));color:var(--sc,var(--text));background:0 0;border-radius:14px;padding:.3rem .625rem;font-size:.6875rem;font-weight:600;transition:background .15s,color .15s,box-shadow .15s}.skd-status-btn:hover{transform:scale(1.03)}.skd-status-btn.skd-status-active{background:var(--sc);color:#fff;box-shadow:0 0 0 3px color-mix(in srgb, var(--sc) 25%, transparent)}.skd-gen-btn{cursor:pointer;border:2px solid #0000;border-radius:14px;padding:.3rem .625rem;font-size:.6875rem;font-weight:600;transition:background .15s,transform .1s}.skd-gen-btn:hover{transform:scale(1.03)}.skd-gen-btn.skd-gen-active{border-width:2px;font-weight:700;box-shadow:0 0 0 2px}.skd-adresse-link{color:var(--text-muted);background:var(--surface);border:1px solid var(--border);white-space:nowrap;text-overflow:ellipsis;border-radius:10px;flex-shrink:1;max-width:250px;padding:.1875rem .625rem;font-size:.8125rem;text-decoration:none;overflow:hidden}.skd-adresse-link:hover{color:var(--accent);border-color:var(--accent)}.skd-progress-bar{align-items:center;gap:.75rem;margin-bottom:1.25rem;padding:0 .25rem;display:flex}.skd-progress-track{background:var(--border);border-radius:3px;flex:1;height:6px;overflow:hidden}.skd-progress-fill{background:var(--accent);border-radius:3px;min-width:2px;height:100%;transition:width .3s}.skd-progress-label{color:var(--text-muted);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.75rem}.skd-calc-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.625rem;margin-bottom:.75rem;display:grid}.skd-calc-card{background:var(--bg);border:1px solid var(--border);text-align:center;border-radius:8px;padding:.75rem;transition:transform .15s,box-shadow .15s}.skd-calc-card:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000000f}.skd-calc-card-value{color:var(--text-heading,var(--text));font-variant-numeric:tabular-nums;font-size:1.125rem;font-weight:700;line-height:1.2}.skd-calc-card-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-top:.25rem;font-size:.6875rem}.skd-calc-accent .skd-calc-card-value{color:var(--accent)}.skd-calc-accent{border-color:color-mix(in srgb, var(--accent) 30%, var(--border));background:color-mix(in srgb, var(--accent) 4%, var(--bg))}.skd-calc-warn .skd-calc-card-value{color:#ea580c}.skd-calc-warn{background:#ea580c0a;border-color:#ea580c4d}.skd-calc-params{color:var(--text-muted);border-top:1px solid var(--border);flex-wrap:wrap;gap:.5rem 1.25rem;padding:.5rem .25rem 0;font-size:.75rem;display:flex}.skd-export-row{flex-wrap:wrap;gap:.5rem;display:flex}.skd-export-btn{cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:6px;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:background .15s,transform .1s}.skd-export-btn:hover{background:var(--border);transform:translateY(-1px)}.skd-export-btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.skd-export-btn-primary:hover{opacity:.9;background:var(--accent)}@media (width<=640px){.skd-calc-grid{grid-template-columns:repeat(2,1fr)}.skd-export-row{flex-direction:column}}.skd-kalkulation-link{color:#f59e0b;background:#f59e0b1f;border:1px solid #f59e0b44;border-radius:8px;align-items:center;gap:.3rem;margin-left:auto;padding:.3rem .75rem;font-size:.75rem;font-weight:700;text-decoration:none;transition:all .15s;display:inline-flex}.skd-kalkulation-link:hover{background:#f59e0b38;border-color:#f59e0b88}.skd-oeko-badge{text-transform:uppercase;letter-spacing:.04em;color:#22c55e;vertical-align:middle;background:linear-gradient(90deg,#22c55e33,#3b82f633);border:1px solid #22c55e66;border-radius:10px;margin-left:.5rem;padding:.1rem .5rem;font-size:.65rem;font-weight:700;display:inline-block}.skd-oeko-body{padding:0!important}.moep-root{background:var(--color-surface,#0f1117);border-radius:0 0 8px 8px;flex-direction:column;gap:0;display:flex;overflow:hidden}.moep-header{border-bottom:1px solid var(--border,#2a2a3e);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.25rem .75rem;display:flex}.moep-header-left{flex-direction:column;gap:.2rem;display:flex}.moep-title{color:var(--text,#e2e8f0);margin:0;font-size:1rem;font-weight:700}.moep-subtitle{color:var(--text-muted,#64748b);margin:0;font-size:.7rem}.moep-view-tabs{background:var(--bg,#0a0a12);border:1px solid var(--border,#2a2a3e);border-radius:8px;gap:.25rem;padding:3px;display:flex}.moep-view-tab{cursor:pointer;color:var(--text-muted,#64748b);background:0 0;border:none;border-radius:6px;padding:.35rem .9rem;font-size:.75rem;font-weight:600;transition:all .15s}.moep-view-tab.active{background:var(--accent,#3b82f6);color:#fff}.massing2d-placeholder{text-align:center;color:var(--text-muted,#64748b);padding:2rem}.massing2d-wrap{flex-wrap:wrap;gap:1rem;padding:1rem;display:flex}.massing2d-svg-wrap{border:1px solid var(--border,#2a2a3e);border-radius:8px;flex:300px;min-width:260px;overflow:hidden}.massing2d-svg{width:100%;display:block}.massing2d-table{flex:0 0 240px;min-width:200px}.massing2d-table-title{color:var(--text,#e2e8f0);border-bottom:1px solid var(--border,#2a2a3e);margin:0 0 .5rem;padding-bottom:.3rem;font-size:.8rem;font-weight:700}.massing2d-table-grid{grid-template-columns:1fr auto;align-items:center;gap:.15rem .5rem;display:grid}.massing2d-fl-label{color:var(--text-muted,#64748b);padding:.1rem 0;font-size:.7rem}.massing2d-fl-value{color:var(--text,#e2e8f0);text-align:right;white-space:nowrap;font-size:.7rem;font-weight:600}.massing2d-fl-value small{color:var(--text-muted,#64748b);margin-left:2px;font-size:.6rem;font-weight:400}.massing2d-fl-highlight{color:#3b82f6!important;font-weight:700!important}.moep-oeko{flex-direction:column;gap:0;padding:0;display:flex}.moep-section{border-bottom:1px solid var(--border,#2a2a3e);padding:1rem 1.25rem}.moep-section-title{color:var(--text,#e2e8f0);margin:0 0 .25rem;font-size:.85rem;font-weight:700}.moep-section-sub{color:var(--text-muted,#64748b);margin:0 0 .75rem;font-size:.7rem}.moep-gwp-meter{border-bottom:1px solid var(--border,#2a2a3e);background:var(--bg,#0a0a12);padding:1rem 1.25rem}.moep-gwp-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.moep-gwp-title{color:var(--text-muted,#64748b);font-size:.8rem;font-weight:600}.moep-gwp-value{font-size:1.5rem;font-weight:800;line-height:1}.moep-gwp-value small{color:var(--text-muted,#64748b);margin-left:4px;font-size:.7rem;font-weight:400}.moep-gwp-bar-wrap{margin-bottom:.5rem}.moep-gwp-bar-bg{background:var(--border,#2a2a3e);border-radius:6px;height:12px;margin-bottom:4px;display:flex;position:relative;overflow:hidden}.moep-gwp-zone{height:100%;transition:width .3s}.moep-gwp-pointer{border-radius:3px;width:6px;height:18px;transition:left .3s;position:absolute;top:-3px;transform:translate(-50%);box-shadow:0 0 6px}.moep-gwp-labels{color:var(--text-muted,#64748b);justify-content:space-between;gap:.25rem;font-size:.6rem;display:flex}.moep-gwp-label{text-align:center;flex:1}.moep-gwp-legend{background:color-mix(in srgb, currentColor 6%, transparent);color:var(--text-muted,#64748b);border-left:3px solid;border-radius:0 6px 6px 0;flex-direction:column;gap:.1rem;margin-top:.5rem;padding:.5rem .75rem;font-size:.75rem;display:flex}.moep-bauteil-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem;display:grid}.moep-bauteil-card{background:var(--bg,#0a0a12);border:1px solid var(--border,#2a2a3e);border-radius:8px;flex-direction:column;gap:.4rem;padding:.75rem;display:flex}.moep-bauteil-header{align-items:center;gap:.4rem;display:flex}.moep-bauteil-icon{font-size:1rem}.moep-bauteil-label{color:var(--text,#e2e8f0);font-size:.75rem;font-weight:700}.moep-bauteil-select{background:var(--color-surface,#1a1a2e);border:1px solid var(--border,#2a2a3e);color:var(--text,#e2e8f0);cursor:pointer;border-radius:6px;padding:.3rem .5rem;font-size:.72rem}.moep-bauteil-detail{color:var(--text-muted,#64748b);flex-wrap:wrap;gap:.4rem;font-size:.65rem;display:flex}.moep-qng-badge{color:#22c55e;background:#22c55e22;border:1px solid #22c55e44;border-radius:4px;padding:0 .3rem;font-size:.6rem;font-weight:700}.moep-energy-card{border-bottom:1px solid var(--border,#2a2a3e);background:#3b82f608;padding:1rem 1.25rem}.moep-energy-row{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.75rem;margin-bottom:.5rem;display:grid}.moep-energy-item{background:var(--bg,#0a0a12);border:1px solid var(--border,#2a2a3e);border-radius:6px;flex-direction:column;gap:.1rem;padding:.5rem .75rem;display:flex}.moep-energy-total{background:#3b82f61a;border-color:#3b82f666}.moep-energy-label{color:var(--text-muted,#64748b);font-size:.62rem;line-height:1.2}.moep-energy-value{color:var(--text,#e2e8f0);font-size:1.2rem;font-weight:800;line-height:1}.moep-energy-unit{color:var(--text-muted,#64748b);font-size:.62rem}.moep-energy-note{color:var(--text-muted,#64748b);background:var(--bg,#0a0a12);border:1px solid var(--border,#2a2a3e);border-radius:6px;margin:0;padding:.4rem .5rem;font-size:.68rem}.moep-table-wrap{overflow-x:auto}.moep-table{border-collapse:collapse;width:100%;font-size:.72rem}.moep-table th{text-align:left;color:var(--text-muted,#64748b);border-bottom:1px solid var(--border,#2a2a3e);white-space:nowrap;padding:.4rem .6rem;font-weight:600}.moep-table td{border-bottom:1px solid var(--border,#2a2a3e);color:var(--text,#e2e8f0);padding:.4rem .6rem}.moep-table tbody tr:hover td{background:var(--bg,#0a0a12)}.moep-table-total td{color:#3b82f6;border-top:2px solid var(--border,#2a2a3e);border-bottom:none;padding-top:.5rem;font-weight:700}.moep-cta{border-top:1px solid var(--border,#2a2a3e);background:linear-gradient(90deg,#22c55e08,#3b82f608);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.875rem 1.25rem;display:flex}.moep-cta-info{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.moep-cta-badge{color:#fff;border-radius:12px;padding:.25rem .75rem;font-size:.7rem;font-weight:700;display:inline-block}.moep-cta-text{color:var(--text-muted,#64748b);font-size:.75rem}.moep-cta-btn{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:8px;padding:.6rem 1.25rem;font-size:.82rem;font-weight:700;transition:all .15s;box-shadow:0 2px 8px #22c55e33}.moep-cta-btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px #22c55e44}@media (width<=640px){.massing2d-wrap{flex-direction:column}.moep-bauteil-grid{grid-template-columns:1fr}.moep-cta{flex-direction:column;align-items:stretch}.moep-cta-btn{text-align:center}}.sk-page{--bg:#f4f6f9;--surface:#fff;--border:#dde1e9;--text:#2d3748;--text-heading:#1a202c;--text-muted:#718096;--input-bg:#fff;--accent:#3b82f6;background:var(--bg);width:100%;max-width:100%;padding:1.5rem 1.75rem 3rem}.sk-sticky-header{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff;border-bottom:1px solid #dde1e9;align-items:center;gap:1rem;margin:-1rem -1rem 1.5rem;padding:.75rem 1rem;display:flex;position:sticky;top:0;box-shadow:0 1px 6px #0000000f}.sk-back{color:var(--accent);white-space:nowrap;flex-shrink:0;font-size:.875rem}.sk-back:hover{text-decoration:underline}.sk-sticky-title{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.125rem;font-weight:600;overflow:hidden}.sk-error{color:var(--error);background:#dc262614;border-radius:6px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem}.sk-loading{text-align:center;color:var(--text-muted);padding:3rem 0}.sk-empty{text-align:center;color:var(--text);padding:3rem 1rem}.sk-empty-hint{color:var(--text-muted);max-width:500px;margin:.5rem auto 0;font-size:.875rem}.sk-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.sk-card{cursor:pointer;background:#fff;border:1px solid #dde1e9;border-radius:12px;flex-direction:column;gap:.75rem;padding:1.25rem;transition:border-color .15s,box-shadow .15s,transform .1s;display:flex;box-shadow:0 1px 4px #0000000d}.sk-card:hover{border-color:#3b82f6;transform:translateY(-1px);box-shadow:0 4px 16px #3b82f61f}.sk-card-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.sk-card-name{color:var(--text-heading);margin:0;font-size:1.0625rem;font-weight:600}.sk-card-status{white-space:nowrap;border:1px solid;border-radius:12px;padding:.1875rem .625rem;font-size:.6875rem;font-weight:600}.sk-card-desc{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.8125rem;display:-webkit-box;overflow:hidden}.sk-card-details{grid-template-columns:1fr 1fr;gap:.375rem 1rem;display:grid}.sk-card-detail{color:var(--text);align-items:center;gap:.375rem;font-size:.8125rem;display:flex}.sk-label{color:var(--text-muted);white-space:nowrap;font-size:.75rem;font-weight:500}.sk-gen-badge{border-radius:10px;padding:.125rem .5rem;font-size:.6875rem;font-weight:500}.sk-gen-offen{color:#64748b;background:#94a3b826}.sk-gen-beantragt{color:#d97706;background:#f59e0b1f}.sk-gen-in_bearbeitung{color:#2563eb;background:#3b82f61f}.sk-gen-genehmigt{color:#16a34a;background:#22c55e1f}.sk-gen-abgelehnt{color:#dc2626;background:#ef44441f}.sk-gen-auflagen{color:#ea580c;background:#f59e0b1f}.sk-card-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:auto;padding-top:.5rem;display:flex}.sk-card-date{color:var(--text-muted);font-size:.75rem}.sk-card-actions{gap:.25rem;display:flex}.sk-btn-icon{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-size:.875rem;transition:background .15s;display:flex}.sk-btn-icon:hover{background:#f4f6f9;border-color:#dde1e9}.sk-btn-delete{color:var(--text-secondary,#64748b)}.sk-btn-delete:hover{color:#ef4444;background:#ef444414;border-color:#ef444459}.sk-btn-new{color:#3b82f6;cursor:pointer;background:#fff;border:2px dashed #93c5fd;border-radius:12px;width:100%;padding:.875rem;font-size:.9375rem;font-weight:600;transition:background .15s,border-color .15s;display:block}.sk-btn-new:hover:not(:disabled){background:#eff6ff;border-color:#3b82f6}.sk-btn-new:disabled{opacity:.5;cursor:not-allowed}.sk-dialog-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.sk-dialog{background:#fff;border:1px solid #dde1e9;border-radius:14px;width:100%;max-width:440px;padding:2rem;box-shadow:0 24px 48px #0000002e}.sk-dialog-title{color:#2d3748;margin:0 0 1.25rem;font-size:1.2rem;font-weight:700}.sk-dialog-label{color:#2d3748;margin-bottom:.875rem;font-size:.8125rem;font-weight:500;display:block}.sk-dialog-input,.sk-dialog-select{color:#2d3748;box-sizing:border-box;background:#fff;border:1px solid #dde1e9;border-radius:6px;width:100%;margin-top:.3rem;padding:.5rem .75rem;font-size:.9375rem;display:block}.sk-dialog-input:focus,.sk-dialog-select:focus{border-color:#3b82f6;outline:none}.sk-dialog-info{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;grid-template-columns:auto 1fr;gap:.25rem .75rem;margin:.25rem 0 .75rem;padding:.625rem .875rem;font-size:.8rem;display:grid}.sk-dialog-info span{color:#718096}.sk-dialog-info strong{color:#1e40af;font-weight:600}.sk-dialog-actions{justify-content:flex-end;gap:.625rem;margin-top:1.5rem;display:flex}.sk-dialog-cancel{color:#2d3748;cursor:pointer;background:0 0;border:1px solid #dde1e9;border-radius:6px;padding:.5rem 1rem;font-size:.875rem}.sk-dialog-cancel:hover{background:#f4f6f9}.sk-dialog-save{color:#fff;cursor:pointer;background:#3b82f6;border:none;border-radius:6px;padding:.5rem 1.25rem;font-size:.875rem;font-weight:600}.sk-dialog-save:hover:not(:disabled){background:#2563eb}.sk-dialog-save:disabled{opacity:.5;cursor:not-allowed}@media (width<=640px){.sk-grid,.sk-card-details{grid-template-columns:1fr}}.qc-page{max-width:900px;margin:0 auto;padding:1.25rem 1rem 4rem}@media (width<=480px){.qc-page{padding:1rem .75rem 3rem}}.qc-list-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.qc-page-title{color:var(--color-text,#111827);letter-spacing:-.02em;margin:0 0 .2rem;font-size:1.4rem;font-weight:800}@media (width<=480px){.qc-page-title{font-size:1.2rem}}.qc-page-sub{color:var(--color-text-muted,#6b7280);margin:0;font-size:.82rem}.qc-new-btn{color:#101010;cursor:pointer;white-space:nowrap;background:#4aa464;border:none;border-radius:8px;flex-shrink:0;padding:.6rem 1.1rem;font-size:.84rem;font-weight:700;transition:background .15s}.qc-new-btn:hover{background:#3a8050}.qc-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:1rem;padding:.6rem 1rem;font-size:.84rem}.qc-create-card{background:#f8fff8;border:1.5px solid #c0f0d0;border-radius:10px;margin-bottom:1rem;padding:1rem 1.25rem}.qc-create-title{color:#3a8050;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.75rem;font-size:.82rem;font-weight:700}.qc-create-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.qc-create-input{min-width:180px;height:40px;color:var(--color-text,#111827);background:#fff;border:1.5px solid #d1d5db;border-radius:7px;outline:none;flex:1;padding:0 .75rem;font-size:.9rem}.qc-create-input:focus{border-color:#3b82f6}.qc-create-ok{color:#101010;cursor:pointer;background:#4aa464;border:none;border-radius:7px;height:40px;padding:0 1rem;font-size:.84rem;font-weight:700}.qc-create-cancel{color:#6b7280;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:7px;height:40px;padding:0 1rem;font-size:.84rem}.qc-loading{text-align:center;color:#9ca3af;padding:2rem;font-size:.9rem}.qc-empty{text-align:center;color:#9ca3af;padding:4rem 1rem}.qc-empty-icon{margin-bottom:.5rem;font-size:3rem}.qc-empty p{margin-bottom:1.5rem;font-size:.9rem}.qc-list{flex-direction:column;gap:.75rem;display:flex}.qc-list-card{background:var(--color-surface,#fff);border:1px solid var(--color-border,#e5e7eb);border-radius:10px;justify-content:space-between;align-items:stretch;gap:.75rem;padding:.9rem 1rem;transition:box-shadow .15s;display:flex}.qc-list-card:hover{box-shadow:0 2px 8px #0000000f}.qc-list-card-main{cursor:pointer;flex:1;min-width:0}.qc-list-card-name{color:var(--color-text,#111827);white-space:nowrap;text-overflow:ellipsis;margin-bottom:.2rem;font-size:.95rem;font-weight:700;overflow:hidden}.qc-list-card-meta{color:var(--color-text-muted,#6b7280);margin-bottom:.5rem;font-size:.76rem}.qc-list-card-kpis{flex-wrap:wrap;gap:1rem;display:flex}.qc-list-kpi{flex-direction:column;gap:1px;display:flex}.qc-list-kpi-label{text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;font-size:.68rem;font-weight:600}.qc-list-kpi-val{color:#4aa464;font-size:.85rem;font-weight:700}.qc-list-card-actions{flex-direction:column;flex-shrink:0;justify-content:center;align-items:flex-end;gap:.4rem;display:flex}.qc-list-open-btn{color:#4aa464;cursor:pointer;white-space:nowrap;background:#f0f4ff;border:1px solid #e0ffe8;border-radius:6px;padding:.35rem .85rem;font-size:.76rem;font-weight:600}.qc-list-open-btn:hover{background:#e0ffe8}.qc-list-del-btn{color:#ef4444;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #fecaca;border-radius:6px;padding:.35rem .85rem;font-size:.76rem;font-weight:600}.qc-list-del-btn:hover{background:#fef2f2}.qc-overlay{z-index:999;background:#0006;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.qc-dialog{background:#fff;border-radius:12px;width:100%;max-width:400px;padding:1.5rem 1.75rem;box-shadow:0 20px 60px #0003}.qc-dialog h3{color:#111827;margin:0 0 .5rem;font-size:1rem;font-weight:700}.qc-dialog p{color:#6b7280;margin:0 0 1.25rem;font-size:.84rem}.qc-dialog-actions{justify-content:flex-end;gap:.5rem;display:flex}.qc-dialog-cancel{cursor:pointer;color:#374151;background:#fff;border:1px solid #d1d5db;border-radius:7px;padding:.5rem 1rem;font-size:.84rem}.qc-dialog-ok{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:7px;padding:.5rem 1rem;font-size:.84rem;font-weight:700}.qc-editor{flex-direction:column;height:100%;min-height:0;display:flex}.qc-editor-header{z-index:20;background:#f3f4f6;flex-shrink:0;padding:.8rem 1rem .9rem;position:sticky;top:0}.qc-editor-header-top{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.qc-back-btn{color:#374151;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #0000002e;border-radius:7px;flex-shrink:0;padding:.4rem .75rem;font-size:.8rem;font-weight:600}.qc-name-input{color:#111827;background:0 0;border:none;border-bottom:1.5px solid #0003;outline:none;flex:1;min-width:120px;padding:.2rem 0;font-size:.95rem;font-weight:700}.qc-name-input::placeholder{color:#0000004d}.qc-header-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.4rem;display:flex}.qc-view-toggle{border:1px solid #00000026;border-radius:7px;display:flex;overflow:hidden}.qc-view-btn{color:#6b7280;cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:.35rem .7rem;font-size:.75rem;font-weight:600;transition:all .15s}.qc-view-btn:first-child{border-right:1px solid #0000001f}.qc-view-btn.active{color:#101010;background:#4aa464}.qc-view-btn:hover:not(.active){background:#0000000d}.qc-header-logo-wrap{background:#fff;border-radius:6px;flex-shrink:0;align-items:center;padding:2px 7px;display:flex}.qc-header-logo{object-fit:contain;flex-shrink:0;width:auto;height:30px;display:block}@media (width<=480px){.qc-header-logo-wrap{display:none}}.qc-pdf-btn{color:#4aa464;cursor:pointer;white-space:nowrap;background:#4aa4641f;border:1.5px solid #4aa464;border-radius:7px;padding:.35rem .75rem;font-size:.75rem;font-weight:700;transition:background .15s}.qc-pdf-btn:hover{background:#4aa46438}.qc-save-btn{color:#374151;cursor:pointer;white-space:nowrap;background:#fff;border:1.5px solid #0000002e;border-radius:7px;flex-shrink:0;padding:.35rem .8rem;font-size:.75rem;font-weight:700;transition:background .15s}.qc-save-btn.saved{background:#10b981;border-color:#10b981}.qc-save-btn.error{background:#ef4444;border-color:#ef4444}.qc-params{background:#0000000a;border-radius:7px;flex-wrap:wrap;gap:.75rem;margin-top:.65rem;padding:.55rem .8rem;display:flex}.qc-param{flex:1;justify-content:space-between;align-items:center;gap:.6rem;min-width:140px;display:flex}.qc-param label{text-transform:uppercase;letter-spacing:.06em;color:#374151;white-space:nowrap;font-size:.7rem;font-weight:600}.qc-param-input{background:#fff;border:1.5px solid #00000026;border-radius:6px;align-items:center;width:90px;height:34px;padding:0 .5rem;display:flex}.qc-param-input input{color:#111827;text-align:right;background:0 0;border:none;outline:none;width:52px;font-size:.88rem;font-weight:700}.qc-param-input span{color:#4aa464bf;margin-left:3px;font-size:.78rem}.qc-editor-body{flex:1;min-height:0;display:flex;overflow:hidden}.qc-editor-main{-webkit-overflow-scrolling:touch;flex:1;min-width:0;overflow-y:auto}.qc-editor-side{border-left:1px solid var(--color-border,#e5e7eb);background:var(--color-surface,#fff);-webkit-overflow-scrolling:touch;flex-shrink:0;width:340px;display:none;overflow-y:auto}@media (width>=900px){.qc-editor-side{display:block}}.qc-mobile-summary{border-top:1px solid var(--color-border,#e5e7eb);display:block}@media (width>=900px){.qc-mobile-summary{display:none}}.qc-side-content{padding:.75rem}.qc-side-kpi-row{grid-template-columns:repeat(2,1fr);gap:.5rem;margin-bottom:.75rem;display:grid}.qc-side-kpi{background:#f3f4f6;border-radius:7px;padding:.55rem .7rem}.qc-side-kpi-label{text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin-bottom:2px;font-size:.62rem;font-weight:600}.qc-side-kpi-value{color:#111827;font-size:.8rem;font-weight:700}.qc-side-summary{background:#f3f4f6;border-radius:9px;margin-bottom:.75rem;padding:.9rem}.qc-side-summary-title{letter-spacing:.08em;text-transform:uppercase;color:#4aa464;margin-bottom:.65rem;font-size:.67rem;font-weight:700}.qc-side-row{color:#374151;border-bottom:1px solid #00000012;justify-content:space-between;padding:3px 0;font-size:.78rem;display:flex}.qc-side-row span:last-child{color:#111827;font-weight:600}.qc-side-total{color:#111827;border-top:2px solid #0000001f;justify-content:space-between;margin-top:3px;padding:7px 0 3px;font-size:.9rem;font-weight:800;display:flex}.qc-side-total span:last-child{color:#4aa464}.qc-side-sub{color:#4aa464;justify-content:space-between;margin-top:2px;font-size:.72rem;display:flex}.qc-side-mieten{background:var(--color-surface,#fff);border:1px solid var(--color-border,#e5e7eb);border-radius:9px;margin-bottom:.75rem;overflow:hidden}.qc-side-mieten-title{color:var(--color-text,#111827);background:#f8fff8;border-bottom:1px solid #e5e7eb;align-items:center;gap:.5rem;padding:.6rem .9rem;font-size:.82rem;font-weight:700;display:flex}.qc-side-mieten-hint{color:#3a8050;background:#f0fff0;border:1px solid #c0f0d0;border-radius:6px;margin:.65rem .9rem;padding:.35rem .7rem;font-size:.72rem}.qc-side-miet-card{border:1px solid #e5e7eb;border-radius:7px;margin:0 .9rem .4rem;overflow:hidden}.qc-side-miet-top{background:#fafafa;justify-content:space-between;align-items:flex-start;gap:.5rem;padding:.55rem .75rem;display:flex}.qc-side-exit{border:1px solid #e5e7eb;border-radius:8px;margin-bottom:.75rem;overflow:hidden}.qc-side-exit-title{color:#00425b;background:#f0f9ff;border-bottom:1px solid #e5e7eb;align-items:center;gap:.5rem;padding:.6rem .9rem;font-size:.82rem;font-weight:700;display:flex}.qc-side-profit,.qc-side-profit-pct{border-top:1px solid #e5e7eb;justify-content:space-between;padding:.45rem .9rem;font-size:.82rem;font-weight:700;display:flex}.qc-side-profit.pos{color:#166534;background:#f0fdf4}.qc-side-profit.neg{color:#991b1b;background:#fef2f2}.qc-side-profit-pct.pos{color:#166534;background:#f0fdf4;font-size:.78rem}.qc-side-profit-pct.neg{color:#991b1b;background:#fef2f2;font-size:.78rem}.qc-sections{padding:.6rem .75rem}.qc-section{border:1px solid var(--color-border,#e5e7eb);border-radius:9px;margin-bottom:.5rem;overflow:hidden}.qc-section-header{background:var(--color-surface,#fff);cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;width:100%;padding:.75rem .9rem;transition:background .1s;display:flex}.qc-section-header.open{border-bottom-color:var(--color-border,#e5e7eb);background:#f8fff8}.qc-section-header:hover{background:#f8fff8}.qc-section-left,.qc-section-right{align-items:center;gap:.55rem;display:flex}.qc-section-bar{border-radius:2px;flex-shrink:0;width:3px;height:18px}.qc-section-title{color:var(--color-text,#111827);font-size:.86rem;font-weight:700}.qc-section-badge{font-size:.78rem;font-weight:600}.qc-section-chevron{color:#9ca3af;font-size:.62rem}.qc-section-body{background:var(--color-surface,#fff);padding:.8rem .9rem}.qc-field{flex-direction:column;gap:3px;display:flex}.qc-label{text-transform:uppercase;letter-spacing:.06em;color:#6b7280;font-size:.66rem;font-weight:600}.qc-num-wrap{background:#fff;border:1.5px solid #d1d5db;border-radius:6px;align-items:center;gap:5px;height:40px;padding:0 .55rem;display:flex;box-shadow:0 1px 2px #0000000a}.qc-num-wrap.small{height:34px}.qc-num-wrap.readonly{box-shadow:none;background:#f9fafb;border-color:#e5e7eb}.qc-num-input,.qc-num-display,.qc-num-ro{text-align:right;color:#111827;flex:1;min-width:0;font-size:.88rem;font-weight:600}.qc-num-ro{color:#6b7280;font-weight:500}.qc-num-input{background:0 0;border:none;outline:none}.qc-num-display{cursor:text;-webkit-user-select:none;user-select:none}.qc-num-suffix{color:#9ca3af;white-space:nowrap;flex-shrink:0;font-size:.7rem}.qc-text-input{height:40px;color:var(--color-text,#111827);background:var(--color-surface,#fff);box-sizing:border-box;border:1.5px solid #d1d5db;border-radius:6px;outline:none;width:100%;padding:0 .6rem;font-size:.86rem;font-weight:500;box-shadow:0 1px 2px #0000000a}.qc-text-input:focus{border-color:#3b82f6}.qc-select{height:40px;color:var(--color-text,#111827);background:var(--color-surface,#fff);cursor:pointer;border:1.5px solid #d1d5db;border-radius:6px;outline:none;width:100%;padding:0 .6rem;font-size:.86rem;font-weight:500}.qc-rbox{background:#f8fff8;border:1px solid #e0ffe8;border-radius:8px;margin-top:.65rem;padding:.55rem .85rem}.qc-rrow{color:var(--color-text,#374151);justify-content:space-between;padding:3px 0;font-size:.8rem;display:flex}.qc-rrow.sub{color:#9ca3af;padding-left:.75rem;font-size:.72rem}.qc-rrow.bold{border-top:1.5px solid #d1d5db;margin-top:3px;padding-top:6px;font-size:.86rem;font-weight:700}.qc-rrow.bold span:last-child{color:#4aa464}.qc-freipositionen{border-top:1px dashed #e5e7eb;margin-top:.65rem;padding-top:.65rem}.qc-frei-title{text-transform:uppercase;color:#6b7280;margin-bottom:.5rem;font-size:.68rem;font-weight:700}.qc-frei-card{background:#fafafa;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:.5rem;padding:.7rem}.qc-frei-card-head{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.qc-del-btn{cursor:pointer;color:#ef4444;background:0 0;border:none;padding:2px 4px;font-size:.85rem;line-height:1}.qc-add-btn{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:1.5px dashed;border-radius:8px;width:100%;margin-top:.5rem;padding:.5rem;font-size:.8rem;font-weight:600}.qc-nut-card{background:#fafafa;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:.55rem;padding:.7rem}.qc-nut-card.frei{border-color:var(--border);background:var(--surface)}.qc-nut-card.aussen{background:#fffbeb;border-color:#fde68a}.qc-nut-head{justify-content:space-between;align-items:center;margin-bottom:.55rem;display:flex}.qc-nut-pos{color:var(--accent);text-transform:uppercase;font-size:.68rem;font-weight:700}.qc-badge{border-radius:4px;padding:2px 6px;font-size:.62rem;font-weight:600}.qc-badge.amber{color:#78350f;background:#fde68a}.qc-badge.violet{background:var(--accent-muted);color:var(--accent)}.qc-nut-total{background:var(--accent-muted);color:var(--accent);border-radius:6px;justify-content:space-between;margin-top:4px;padding:5px 9px;font-size:.8rem;display:flex}.qc-nut-total.amber{color:#78350f;background:#fef3c7}.qc-nut-total-val{font-weight:700}.qc-tga-info{color:#065f46;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:7px;margin-bottom:.65rem;padding:.4rem .7rem;font-size:.76rem}.qc-tga-row{background:var(--color-surface,#fff);cursor:pointer;-webkit-tap-highlight-color:transparent;border:1.5px solid #e5e7eb;border-radius:8px;align-items:center;gap:.65rem;margin-bottom:.4rem;padding:.6rem .85rem;transition:border-color .1s;display:flex}.qc-tga-row.active{background:#ecfdf5;border-color:#10b981;border-radius:8px 8px 0 0;margin-bottom:0}.qc-checkbox{width:20px;height:20px;font-size:calc(12px * var(--font-scale));color:#fff;background:#fff;border:2px solid #d1d5db;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.qc-checkbox.checked{background:#10b981;border-color:#10b981}.qc-tga-info-wrap{flex:1}.qc-tga-label{color:var(--color-text,#111827);font-size:.84rem;font-weight:600}.qc-tga-sub{color:#6b7280;margin-top:1px;font-size:.68rem}.qc-tga-betrag{color:#059669;white-space:nowrap;font-size:.8rem;font-weight:700}.qc-tga-detail{background:#f9fafb;border:1.5px solid #10b981;border-top:none;border-radius:0 0 8px 8px;margin-bottom:.4rem;padding:.6rem .85rem}.qc-nk-section{margin-top:.5rem}.qc-nk-card{background:#fff5f5;border:1px solid #fecaca;border-radius:8px;margin-bottom:.5rem;padding:.7rem}.qc-nk-type-toggle{gap:.4rem;margin-bottom:.5rem;display:flex}.qc-type-btn{color:#6b7280;cursor:pointer;background:#fff;border:1.5px solid #e5e7eb;border-radius:6px;flex:1;padding:.38rem .5rem;font-size:.78rem;font-weight:600;transition:all .1s}.qc-type-btn.active{color:#991b1b;background:#fee2e2;border-color:#dc2626}.qc-exit-toggle{gap:.5rem;margin-bottom:.7rem;display:flex}.qc-exit-btn{color:#6b7280;cursor:pointer;background:#fff;border:2px solid #e5e7eb;border-radius:7px;flex:1;padding:.55rem .5rem;font-size:.8rem;font-weight:700;transition:all .1s}.qc-exit-btn.active{color:#92400e;background:#fffbeb;border-color:#d97706}.qc-fin-laufzeit{background:#f8fff8;border:1px solid #c0f0d0;border-radius:9px;margin-bottom:.7rem;padding:.75rem .9rem .6rem}.qc-fin-laufzeit-label{text-transform:uppercase;letter-spacing:.06em;color:#374151;margin-bottom:.45rem;font-size:.7rem;font-weight:700;display:block}.qc-fin-laufzeit-input{align-items:center;gap:.75rem;display:flex}.qc-fin-slider{appearance:none;cursor:pointer;accent-color:#4aa464;background:#e5e7eb;border-radius:2px;outline:none;flex:1;height:4px}.qc-fin-slider::-webkit-slider-thumb{-webkit-appearance:none;cursor:pointer;background:#4aa464;border:2px solid #fff;border-radius:50%;width:18px;height:18px;box-shadow:0 1px 3px #0003}.qc-fin-slider::-moz-range-thumb{cursor:pointer;background:#4aa464;border:2px solid #fff;border-radius:50%;width:18px;height:18px;box-shadow:0 1px 3px #0003}.qc-fin-laufzeit-val{text-align:right;color:#00425b;white-space:nowrap;min-width:52px;font-size:.95rem;font-weight:800}.qc-fin-laufzeit-marks{justify-content:space-between;margin-top:.3rem;display:flex}.qc-fin-mark{color:#9ca3af;cursor:pointer;text-align:center;-webkit-user-select:none;user-select:none;border-radius:3px;width:18px;padding:2px 0;font-size:.65rem;transition:all .1s}.qc-fin-mark:hover{color:#4aa464}.qc-fin-mark.active{color:#fff;background:#4aa464;font-weight:700}.qc-fin-hint{color:#78350f;background:#fffbeb;border:1px solid #fde68a;border-radius:7px;margin-bottom:.7rem;padding:.38rem .7rem;font-size:.76rem}.qc-miet-card{border:1px solid #e5e7eb;border-radius:8px;margin:0 .9rem .4rem;overflow:hidden}.qc-miet-top{background:#fafafa;justify-content:space-between;align-items:flex-start;gap:.6rem;padding:.6rem .85rem;display:flex}.qc-miet-label{color:var(--color-text,#111827);font-size:.86rem;font-weight:700}.qc-miet-sub{color:#6b7280;margin-top:2px;font-size:.68rem}.qc-miet-rate{text-align:right;flex-shrink:0}.qc-miet-main{color:#4aa464;font-size:1.05rem;font-weight:800}.qc-miet-unit{color:#9ca3af;font-size:.62rem}.qc-miet-jahres{color:#00425b;background:#f0ffe8;border-top:1px solid #d0ffe0;justify-content:space-between;padding:4px .85rem;font-size:.72rem;display:flex}.qc-miet-jahres span:last-child{font-weight:600}.qc-miet-total{background:#f3f4f6;border-radius:8px;margin:0 .9rem .9rem;padding:.7rem .9rem}.qc-miet-total-row{justify-content:space-between;font-size:.8rem;display:flex}.qc-miet-total-row span:first-child{color:#6b7280}.qc-miet-total-row span:last-child{color:#111827;font-weight:700}.qc-miet-total-row.sub{margin-top:4px}.qc-miet-total-row.sub span:last-child{color:#4aa464}.qc-pdf-dialog{background:#fff;border-radius:14px;flex-direction:column;width:100%;max-width:480px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 24px 80px #00000040}.qc-pdf-dialog-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:flex-start;padding:1.25rem 1.25rem .75rem;display:flex}.qc-pdf-dialog-header h3{color:#111827;margin:0 0 .2rem;font-size:1rem;font-weight:700}.qc-pdf-dialog-header p{color:#6b7280;margin:0;font-size:.8rem}.qc-pdf-close{cursor:pointer;color:#9ca3af;background:0 0;border:none;flex-shrink:0;margin-top:2px;padding:0;font-size:1.1rem;line-height:1}.qc-pdf-close:hover{color:#374151}.qc-pdf-presets{grid-template-columns:1fr 1fr;gap:.6rem;padding:.9rem 1.25rem 0;display:grid}.qc-pdf-preset{cursor:pointer;text-align:left;background:#fff;border:2px solid #e5e7eb;border-radius:9px;align-items:center;gap:.6rem;padding:.75rem .8rem;transition:all .15s;display:flex}.qc-pdf-preset:hover:not(.active){background:#f8fff8;border-color:#c0f0d0}.qc-pdf-preset-icon{flex-shrink:0;font-size:1.5rem}.qc-pdf-preset-title{color:#111827;font-size:.84rem;font-weight:700}.qc-pdf-preset-sub{color:#6b7280;margin-top:1px;font-size:.72rem}.qc-pdf-fields-title{text-transform:uppercase;letter-spacing:.06em;color:#6b7280;padding:.75rem 1.25rem .35rem;font-size:.72rem;font-weight:700}.qc-pdf-fields{flex:1;padding:0 1.25rem;overflow-y:auto}.qc-pdf-field-row{cursor:pointer;border-bottom:1px solid #f3f4f6;align-items:center;gap:.6rem;padding:.5rem 0;display:flex}.qc-pdf-field-row:last-child{border-bottom:none}.qc-pdf-checkbox{cursor:pointer;accent-color:#4aa464;flex-shrink:0;width:16px;height:16px}.qc-pdf-field-label{color:#374151;-webkit-user-select:none;user-select:none;font-size:.84rem}.qc-pdf-footer{border-top:1px solid #e5e7eb;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.9rem 1.25rem;display:flex}.qc-pdf-count{color:#6b7280;font-size:.78rem}.qc-pdf-footer-btns{gap:.5rem;display:flex}.qc-pdf-cancel{cursor:pointer;color:#374151;background:#fff;border:1px solid #d1d5db;border-radius:7px;padding:.5rem 1rem;font-size:.84rem}.qc-pdf-generate{color:#fff;cursor:pointer;background:#4aa464;border:none;border-radius:7px;padding:.5rem 1.25rem;font-size:.84rem;font-weight:700;transition:background .15s}.qc-pdf-generate:hover:not(:disabled){background:#3a8050}.qc-pdf-generate:disabled{cursor:not-allowed;background:#4aa464bf}.qc-mieter-wrap{-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}.qc-mieter{max-width:680px;margin:0 auto;padding:1.25rem 1rem 3rem}@media (width<=480px){.qc-mieter{padding:1rem .75rem 2rem}}.qc-mieter-header{background:#f3f4f6;border-radius:12px;margin-bottom:1rem;padding:1.25rem 1.25rem 1rem}.qc-mieter-badge{color:#3a8050;text-transform:uppercase;letter-spacing:.08em;background:#4aa46426;border-radius:5px;margin-bottom:.5rem;padding:2px 8px;font-size:.68rem;font-weight:700;display:inline-block}.qc-mieter-title{color:#111827;margin:0 0 .25rem;font-size:1.25rem;font-weight:800}.qc-mieter-sub{color:#4aa464;margin:0;font-size:.78rem}.qc-mieter-card{background:var(--color-surface,#fff);border:1px solid var(--color-border,#e5e7eb);border-radius:10px;margin-bottom:.75rem;overflow:hidden}.qc-mieter-card-title{text-transform:uppercase;letter-spacing:.06em;color:#374151;background:#f8fff8;border-bottom:1px solid #e5e7eb;padding:.65rem 1rem;font-size:.78rem;font-weight:700}.qc-mieter-table{padding:0 .75rem .75rem}.qc-mieter-thead{text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;border-bottom:1px solid #e5e7eb;justify-content:space-between;margin-bottom:.25rem;padding:.5rem .25rem .25rem;font-size:.68rem;font-weight:600;display:flex}.qc-mieter-row{color:#374151;border-bottom:1px solid #f3f4f6;justify-content:space-between;align-items:center;padding:.55rem .25rem;font-size:.86rem;display:flex}.qc-mieter-row:last-child{border-bottom:none}.qc-mieter-row.total{color:#111827;border-top:2px solid #e5e7eb;margin-top:2px;padding-top:.6rem;font-weight:700}.qc-mieter-hint{color:#3a8050;background:#f0fff0;border:1px solid #c0f0d0;border-radius:7px;margin:.75rem .75rem .5rem;padding:.4rem .75rem;font-size:.76rem}.qc-mieter-miet-card{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;gap:.5rem;padding:.85rem .9rem;display:flex}.qc-mieter-miet-card:last-of-type{border-bottom:none}.qc-mieter-miet-left{flex:1;min-width:0}.qc-mieter-miet-label{color:#111827;font-size:.88rem;font-weight:700}.qc-mieter-miet-fl{color:#6b7280;margin-top:2px;font-size:.72rem}.qc-mieter-miet-right{text-align:right;flex-shrink:0}.qc-mieter-miet-preis{color:#4aa464;font-size:1.2rem;font-weight:800}.qc-mieter-miet-unit{color:#9ca3af;font-size:.65rem}.qc-mieter-total-box{background:#f3f4f6;border-radius:8px;margin:.75rem;padding:.8rem .9rem}.qc-mieter-total-row{justify-content:space-between;font-size:.86rem;display:flex}.qc-mieter-total-row span{color:#6b7280}.qc-mieter-total-row .val{color:#111827;font-weight:700}.qc-mieter-total-row.sub{margin-top:5px}.qc-mieter-total-row.sub .val{color:#4aa464;font-weight:600}.qc-mieter-empty{text-align:center;color:#9ca3af;background:var(--color-surface,#fff);border:1px solid var(--color-border,#e5e7eb);border-radius:10px;margin-bottom:.75rem;padding:2rem 1rem;font-size:.86rem;line-height:1.7}.qc-mieter-disclaimer{text-align:center;color:#9ca3af;padding:.5rem;font-size:.72rem}.qc-plan-dropzone{text-align:center;cursor:pointer;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:10px;padding:2rem 1rem;transition:border-color .15s,background .15s}.qc-plan-dropzone:hover,.qc-plan-dropzone.drag{background:#f0fff0;border-color:#4aa464}.qc-plan-dropzone.drag{border-style:solid}.qc-plan-dz-icon{margin-bottom:.5rem;font-size:2rem}.qc-plan-dz-text{color:#374151;margin-bottom:.3rem;font-size:.9rem;font-weight:600}.qc-plan-dz-sub{color:#9ca3af;font-size:.74rem}.qc-plan-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;margin-top:.5rem;padding:.4rem .75rem;font-size:.8rem}.qc-plan-preview{flex-direction:column;gap:.6rem;display:flex}.qc-plan-preview-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.qc-plan-preview-name{color:#374151;font-size:.8rem;font-weight:600}.qc-plan-remove{color:#ef4444;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #fecaca;border-radius:6px;padding:.3rem .7rem;font-size:.76rem;font-weight:600}.qc-plan-remove:hover{background:#fef2f2}.qc-plan-img{object-fit:contain;cursor:zoom-in;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;width:100%;max-height:320px;display:block}.qc-plan-replace{margin-top:.25rem}@media (width<=640px){.qc-section-header{min-height:48px;padding:.7rem .75rem}.qc-tga-row{min-height:48px}.qc-exit-btn,.qc-type-btn,.qc-view-btn{min-height:40px}.qc-num-wrap{height:44px}.qc-num-wrap.small{height:38px}.qc-text-input,.qc-select,.qc-create-ok,.qc-create-cancel{height:44px}}.qc-pdf-autosave-row{color:#374151;cursor:pointer;background:#f0fff0;border-top:1px solid #c0f0d0;align-items:center;gap:.5rem;padding:.6rem 1.25rem;font-size:.82rem;display:flex}.qc-pdf-autosave-row input[type=checkbox]{accent-color:#00425b;width:15px;height:15px}.qc-pdfdocs-empty{color:#6b7280;padding:.75rem .5rem;font-size:.82rem;font-style:italic}.qc-pdfdocs-list{flex-direction:column;gap:0;display:flex}.qc-pdfdoc-row{border-bottom:1px solid #f3f4f6;justify-content:space-between;align-items:center;gap:.75rem;padding:.6rem .5rem;transition:background .1s;display:flex}.qc-pdfdoc-row:last-child{border-bottom:none}.qc-pdfdoc-row:hover{background:#f8fff8}.qc-pdfdoc-info{flex-direction:column;gap:2px;min-width:0;display:flex}.qc-pdfdoc-name{color:#1f2937;white-space:nowrap;text-overflow:ellipsis;font-size:.83rem;font-weight:600;overflow:hidden}.qc-pdfdoc-meta{color:#9ca3af;font-size:.72rem}.qc-pdfdoc-preset{text-transform:uppercase;letter-spacing:.04em;border-radius:3px;padding:1px 5px;font-size:.68rem;font-weight:700;display:inline-block}.qc-pdfdoc-preset.intern{color:#00425b;background:#00425b1f}.qc-pdfdoc-preset.mieter{color:#20acca;background:#20acca1f}.qc-pdfdoc-actions{flex-shrink:0;gap:.3rem;display:flex}.qc-pdfdoc-dl{color:#00425b;cursor:pointer;background:#fff;border:1px solid #00425b;border-radius:5px;padding:.25rem .6rem;font-size:.85rem;font-weight:700;transition:background .12s}.qc-pdfdoc-dl:hover{background:#e8f5fa}.qc-pdfdoc-del{color:#ef4444;cursor:pointer;background:#fff;border:1px solid #fecaca;border-radius:5px;padding:.25rem .55rem;font-size:.8rem;transition:background .12s}.qc-pdfdoc-del:hover{background:#fef2f2}.qc-mieter-badge{color:#4aa464;background:#4aa46426;border:1px solid #4aa46459;border-radius:12px;align-items:center;gap:.35rem;padding:.2rem .7rem;font-size:.75rem;font-weight:700;display:inline-flex}.qc-pdf-preset.active{background:#e8f5fa!important;border-color:#00425b!important}.qc-pdf-preset.active .qc-pdf-preset-title{color:#00425b}.ui-modal-overlay{z-index:2000;background:#0f172a8c;justify-content:center;align-items:flex-start;padding:4vh 1rem;animation:.12s ease-out ui-modal-fade;display:flex;position:fixed;inset:0;overflow-y:auto}@keyframes ui-modal-fade{0%{opacity:0}to{opacity:1}}.ui-modal{background:#fff;border-radius:16px;padding:1.25rem 1.4rem 1.6rem;animation:.16s ease-out ui-modal-rise;box-shadow:0 20px 60px #0000004d}@keyframes ui-modal-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.ui-modal-head{border-bottom:1px solid #eef2f6;justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:.75rem;display:flex}.ui-modal-titles h3{color:#0f172a;margin:0;font-size:1.25rem}.ui-modal-sub{color:#64748b;margin:.2rem 0 0;font-size:.82rem}.ui-modal-close{cursor:pointer;color:#94a3b8;background:0 0;border:none;padding:0 .3rem;font-size:1.7rem;line-height:1}.ui-modal-close:hover{color:#0f172a}.ui-modal-body{margin-top:1rem}.rv-page{max-width:1280px;margin:0 auto;padding:24px 28px}.rv-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.rv-header h1{font-size:calc(22px * var(--font-scale));margin:0 0 4px;font-weight:700}.rv-sub{font-size:calc(13px * var(--font-scale));color:var(--text-muted,#6b7280);margin:0}.rv-sub strong{color:var(--text,#111)}.rv-search{border:1px solid var(--border,#e5e7eb);font-size:calc(13px * var(--font-scale));background:var(--bg,#fff);min-width:220px;color:inherit;border-radius:8px;padding:8px 12px}.rv-error{color:#b91c1c;font-size:calc(13px * var(--font-scale));background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:16px;padding:10px 14px}.rv-loading,.rv-empty{text-align:center;color:var(--text-muted,#6b7280);padding:40px}.rv-accounts{margin-bottom:28px}.rv-accounts-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.rv-accounts-head h2,.rv-matrix-title{font-size:calc(16px * var(--font-scale));margin:0;font-weight:700}.rv-matrix-title{margin:4px 0 12px}.rv-create-btn{background:var(--accent,var(--accent));color:#fff;font-size:calc(13px * var(--font-scale));cursor:pointer;border:0;border-radius:8px;padding:8px 14px;font-weight:600}.rv-create-btn:disabled{opacity:.5;cursor:not-allowed}.rv-acc-table-wrap{border:1px solid var(--border,#e5e7eb);border-radius:12px;overflow-x:auto}.rv-acc-table{border-collapse:collapse;width:100%;font-size:calc(13px * var(--font-scale))}.rv-acc-table thead th{background:var(--bg-subtle,#f9fafb);border-bottom:1px solid var(--border,#e5e7eb);font-weight:600;font-size:calc(11px * var(--font-scale));color:var(--text-muted,#6b7280);text-align:left;white-space:nowrap;padding:10px 12px}.rv-acc-table tbody td{border-bottom:1px solid var(--border-subtle,#f1f1f1);vertical-align:middle;padding:9px 12px}.rv-acc-table tbody tr:hover{background:var(--bg-subtle,#f9fafb)}.rv-date{color:var(--text-muted,#6b7280);white-space:nowrap}.rv-acc-actions{flex-wrap:wrap;gap:6px;display:flex}.rv-acc-btn{border:1px solid var(--border,#e5e7eb);background:var(--bg,#fff);color:inherit;font-size:calc(12px * var(--font-scale));cursor:pointer;border-radius:7px;padding:5px 10px}.rv-acc-btn:hover:not(:disabled){background:var(--bg-subtle,#f9fafb)}.rv-acc-btn.danger{color:#dc2626;border-color:#fecaca}.rv-acc-btn:disabled{opacity:.45;cursor:not-allowed}.rv-form{flex-direction:column;gap:14px;display:flex}.rv-form label{font-size:calc(12px * var(--font-scale));color:var(--text-muted,#6b7280);flex-direction:column;gap:5px;font-weight:600;display:flex}.rv-form-input{border:1px solid var(--border,#e5e7eb);font-size:calc(14px * var(--font-scale));background:var(--bg,#fff);color:inherit;border-radius:8px;padding:9px 12px}.rv-form-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.rv-form-check{color:var(--text,inherit);align-items:flex-start;gap:8px;font-weight:500;line-height:1.4;flex-direction:row!important}.rv-form-check input{margin-top:2px}.rv-share-controls{flex-wrap:wrap;gap:16px;margin-bottom:14px;display:flex}.rv-share-controls label{font-size:calc(12px * var(--font-scale));color:var(--text-muted,#6b7280);flex-direction:column;gap:5px;min-width:240px;font-weight:600;display:flex}.rv-switch{cursor:pointer;font-size:calc(12px * var(--font-scale));color:var(--text-muted,#6b7280);align-items:center;gap:8px;display:inline-flex}.rv-switch input{cursor:pointer;width:16px;height:16px}.rv-table-wrap{border:1px solid var(--border,#e5e7eb);border-radius:12px;overflow-x:auto}.rv-table{border-collapse:collapse;width:100%;font-size:calc(13px * var(--font-scale))}.rv-table thead th{background:var(--bg-subtle,#f9fafb);border-bottom:1px solid var(--border,#e5e7eb);font-weight:600;font-size:calc(11px * var(--font-scale));color:var(--text-muted,#6b7280);text-align:center;white-space:nowrap;padding:10px 8px;position:sticky;top:0}.rv-col-user{min-width:220px;text-align:left!important}.rv-col-mod span{max-width:110px;line-height:1.2;display:inline-block}.rv-table tbody td{border-bottom:1px solid var(--border-subtle,#f1f1f1);text-align:center;vertical-align:middle;padding:8px}.rv-table tbody tr:hover{background:var(--bg-subtle,#f9fafb)}.rv-admin-row{background:var(--accent-muted)}.rv-user{text-align:left;align-items:center;gap:10px;display:flex}.rv-avatar{background:var(--accent);color:#fff;width:32px;height:32px;font-size:calc(11px * var(--font-scale));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.rv-userinfo{flex-direction:column;min-width:0;display:flex}.rv-name{align-items:center;gap:6px;font-weight:600;display:flex}.rv-email{font-size:calc(11px * var(--font-scale));color:var(--text-muted,#6b7280)}.rv-admin-badge{background:var(--accent);color:#fff;font-size:calc(9px * var(--font-scale));border-radius:10px;padding:1px 6px;font-weight:700}.rv-cell{gap:4px;display:inline-flex}.rv-cell.busy{opacity:.5;pointer-events:none}.rv-chip{border:1px solid var(--border,#e5e7eb);background:var(--bg,#fff);color:#9ca3af;width:26px;height:26px;font-size:calc(11px * var(--font-scale));cursor:pointer;border-radius:6px;font-weight:700;transition:all .12s}.rv-chip:hover:not(:disabled){border-color:var(--accent)}.rv-chip.read.on{color:#059669;background:#ecfdf5;border-color:#6ee7b7}.rv-chip.write.on{color:#2563eb;background:#eff6ff;border-color:#93c5fd}.rv-chip:disabled{cursor:default}.rv-full{font-size:calc(11px * var(--font-scale));color:var(--accent);font-weight:600}.rv-bulk{gap:4px;display:inline-flex}.rv-bulk-btn{border:1px solid var(--border,#e5e7eb);background:var(--bg,#fff);color:inherit;font-size:calc(10px * var(--font-scale));cursor:pointer;white-space:nowrap;border-radius:6px;padding:3px 7px;font-weight:600}.rv-bulk-btn:hover{border-color:var(--accent);background:var(--accent-muted)}.rv-bulk-btn.danger:hover{color:#b91c1c;background:#fef2f2;border-color:#fca5a5}.rv-legend{font-size:calc(12px * var(--font-scale));color:var(--text-muted,#6b7280);flex-wrap:wrap;align-items:center;gap:18px;margin-top:16px;display:flex}.rv-legend .rv-chip{width:20px;height:20px}.rv-legend-note{font-style:italic}.rv-toasts{z-index:1000;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:20px;right:20px}.rv-toast{font-size:calc(13px * var(--font-scale));color:#fff;border-radius:8px;padding:10px 16px;box-shadow:0 4px 12px #00000026}.rv-toast.ok{background:#059669}.rv-toast.err{background:#dc2626}.gs-page{max-width:920px;margin:0 auto;padding:24px 28px}.gs-header{margin-bottom:20px}.gs-header h1{font-size:calc(22px * var(--font-scale));margin:0 0 4px;font-weight:700}.gs-sub{font-size:calc(13px * var(--font-scale));color:var(--text-muted,#6b7280);margin:0}.gs-sub strong{color:var(--text,#111)}.gs-note{font-size:calc(13px * var(--font-scale));border-radius:8px;margin-bottom:16px;padding:10px 14px}.gs-note-ok{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.gs-note-err{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.gs-card{border:1px solid var(--border,#e5e7eb);background:var(--bg,#fff);border-radius:12px;padding:20px}.gs-card h2{font-size:calc(15px * var(--font-scale));margin:0 0 4px;font-weight:700}.gs-card-sub{font-size:calc(12px * var(--font-scale));color:var(--text-muted,#6b7280);margin:0 0 18px}.gs-row{flex-wrap:wrap;gap:28px;display:flex}.gs-color{flex-direction:column;gap:8px;display:flex}.gs-color-label{font-size:calc(12px * var(--font-scale));color:var(--text-muted,#6b7280);font-weight:600}.gs-color-control{align-items:center;gap:8px;display:inline-flex}.gs-color input[type=color]{border:1px solid var(--border,#e5e7eb);cursor:pointer;background:0 0;border-radius:8px;width:44px;height:36px;padding:0}.gs-color-hex{border:1px solid var(--border,#e5e7eb);width:92px;font-size:calc(12px * var(--font-scale));background:var(--bg,#fff);color:inherit;text-transform:lowercase;border-radius:8px;padding:7px 10px;font-family:ui-monospace,monospace}.gs-preview{align-items:center;gap:12px;margin:22px 0 6px;display:flex}.gs-preview-vol{border-radius:8px;width:40px;height:40px;display:inline-block}.gs-preview-label{font-size:calc(12px * var(--font-scale));color:var(--text-muted,#6b7280)}.gs-subhead{font-size:calc(12px * var(--font-scale));color:var(--text,#111);margin:18px 0 10px;font-weight:700}.gs-muted{color:var(--text-muted,#6b7280);font-weight:400}.gs-select{border:1px solid var(--border,#e5e7eb);font-size:calc(12px * var(--font-scale));background:var(--bg,#fff);color:inherit;border-radius:8px;min-width:280px;padding:8px 10px}.gs-slider{min-width:200px}.gs-slider-control{align-items:center;gap:10px;display:inline-flex}.gs-slider-control input[type=range]{width:120px}.gs-slider-val{font-size:calc(12px * var(--font-scale));color:var(--text-muted,#6b7280);font-variant-numeric:tabular-nums;min-width:46px}.gs-modes{grid-template-columns:220px 1fr;align-items:start;gap:22px;display:grid}.gs-modes-list{flex-direction:column;gap:4px;display:flex}.gs-mode-item{text-align:left;cursor:pointer;color:inherit;background:0 0;border:1px solid #0000;border-radius:8px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.gs-mode-item:hover{background:var(--bg-subtle,#f3f4f6)}.gs-mode-item.is-active{background:var(--accent-muted);border-color:var(--accent)}.gs-mode-name{font-size:calc(13px * var(--font-scale));font-weight:600}.gs-mode-hint{font-size:calc(11px * var(--font-scale));color:var(--text-muted,#6b7280);line-height:1.25}.gs-modes-editor{border-left:1px solid var(--border,#e5e7eb);min-height:220px;padding-left:22px}.gs-modes-editor .gs-subhead:first-child{margin-top:0}.gs-check{font-size:calc(13px * var(--font-scale));cursor:pointer;align-items:center;gap:8px;display:inline-flex}.gs-check input{cursor:pointer;width:16px;height:16px}.gs-bg{flex-direction:column;gap:12px;display:flex}@media (width<=720px){.gs-modes{grid-template-columns:1fr}.gs-modes-editor{border-left:none;border-top:1px solid var(--border,#e5e7eb);padding-top:16px;padding-left:0}.gs-modes-list{flex-flow:wrap}}.gs-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.gs-actions-sticky{background:var(--bg,#fff);border-top:1px solid var(--border,#e5e7eb);margin-top:16px;padding:12px 0;position:sticky;bottom:0}.gs-btn{background:var(--accent,#2563eb);color:var(--accent-contrast,#fff);font-size:calc(13px * var(--font-scale));cursor:pointer;border:none;border-radius:8px;padding:9px 18px;font-weight:600}.gs-btn:disabled{opacity:.5;cursor:not-allowed}.gs-btn-ghost{color:var(--text-muted,#6b7280);border:1px solid var(--border,#e5e7eb);font-size:calc(13px * var(--font-scale));cursor:pointer;background:0 0;border-radius:8px;padding:9px 16px}.gs-btn-ghost:disabled{opacity:.5;cursor:not-allowed}.gs-card{margin-bottom:16px}.gs-palettes{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.gs-palette{text-align:left;border:1px solid var(--border,#e5e7eb);background:var(--bg-card,#fff);cursor:pointer;color:inherit;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex;position:relative}.gs-palette:hover:not(:disabled){box-shadow:var(--shadow);transform:translateY(-1px)}.gs-palette:disabled{opacity:.6;cursor:default}.gs-palette.is-active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-muted)}.gs-palette-swatch{color:#fff;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.gs-palette-check{font-size:18px;font-weight:700;line-height:1}.gs-palette-text{flex-direction:column;gap:2px;min-width:0;display:flex}.gs-palette-name{font-size:calc(13px * var(--font-scale));color:var(--text-heading,#111);font-weight:700}.gs-palette-desc{font-size:calc(11px * var(--font-scale));color:var(--text-muted,#6b7280);line-height:1.3}.gs-palette-saving{font-size:calc(11px * var(--font-scale));color:var(--text-muted,#6b7280);position:absolute;top:8px;right:10px}.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#777;--xy-background-pattern-lines-color-default:#777;--xy-background-pattern-cross-color-default:#777;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}.sd-root{background:#f0efe9;flex-direction:column;height:calc(100vh - 56px);display:flex;overflow:hidden}.sd-body{flex:1;display:flex;position:relative;overflow:hidden}.sd-canvas-wrap{flex:1;position:relative;overflow:hidden}.sd-toolbar{background:#fff;border-bottom:1px solid #00000014;flex-shrink:0;align-items:center;gap:2px;height:46px;padding:0 12px;display:flex;overflow-x:auto}.sd-toolbar-group{background:#f5f5f5;border-radius:8px;align-items:center;gap:1px;padding:2px;display:flex}.sd-toolbar-sep{background:#0000001a;flex-shrink:0;width:1px;height:22px;margin:0 4px}.sd-tb-btn{height:32px;font-size:calc(12px * var(--font-scale));color:#444;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:6px;flex-shrink:0;align-items:center;gap:5px;padding:5px 10px;font-weight:500;transition:background .1s,color .1s;display:flex}.sd-tb-btn:hover{background:#ebebeb}.sd-tb-btn.active{color:var(--accent);background:#fff;font-weight:600;box-shadow:0 1px 3px #0000001f}.sd-toolbar-hint{background:var(--surface);font-size:calc(11px * var(--font-scale));color:#3b82f6;white-space:nowrap;border:1px solid #dbeafe;border-radius:20px;flex-shrink:0;align-items:center;gap:6px;margin-left:4px;padding:5px 12px;font-weight:500;display:flex}.sd-toolbar-hint.pan{color:#059669;background:#f0fdf4;border-color:#bbf7d0}.sd-tb-btn.danger:hover{color:#dc2626;background:#fee2e2}.sd-tb-btn.export{background:var(--accent);color:#fff;border-radius:7px;margin-left:4px;padding:5px 14px}.sd-tb-btn.export:hover{background:var(--accent-hover)}.sd-canvas{background:#f0efe9!important}.sd-canvas.relation-cursor .react-flow__pane{cursor:crosshair!important}.sd-canvas.pan-cursor .react-flow__pane{cursor:grab!important}.react-flow__controls{overflow:hidden;border-radius:8px!important;box-shadow:0 2px 8px #0000001a!important}.react-flow__controls-button{background:#fff!important;border-color:#00000014!important}.sd-mode-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:calc(12px * var(--font-scale));color:#555;pointer-events:none;background:#ffffffe6;border:1px solid #0000001a;border-radius:20px;padding:4px 14px;font-weight:600;position:absolute;top:12px;left:50%;transform:translate(-50%)}.sd-mode-badge.relation{color:#d85a30;background:#fff3ed;border-color:#d85a30}.sd-hint{font-size:calc(12px * var(--font-scale));color:#999;pointer-events:none;position:absolute;bottom:60px;left:50%;transform:translate(-50%)}.sd-sidebar{background:#fff;border-left:1px solid #00000014;flex-direction:column;flex-shrink:0;width:240px;display:flex;overflow-y:auto}.sd-sidebar.closed{display:none}.sd-sidebar-bar{font-size:calc(11px * var(--font-scale));text-transform:uppercase;letter-spacing:.06em;color:#6b7280;z-index:1;background:#fafafa;border-bottom:1px solid #0000000f;justify-content:space-between;align-items:center;padding:8px 12px;font-weight:700;display:flex;position:sticky;top:0}.sd-sidebar-close{cursor:pointer;color:#6b7280;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;display:flex}.sd-sidebar-close:hover{color:#111;background:#ececec}.sd-panel-toggle{color:#444;font-size:calc(13px * var(--font-scale));cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-weight:600;display:flex}.sd-panel-toggle:hover{background:#f3f4f6}.sd-panel-toggle.active{border-color:var(--accent);color:var(--accent)}.sd-sidebar-backdrop{display:none}.sd-fab-panel{z-index:40;background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;display:none;position:absolute;bottom:16px;right:14px;box-shadow:0 6px 18px #00000047}.sd-fab-panel:active{transform:scale(.96)}@media (width<=900px){.sd-sidebar{z-index:60;width:min(86vw,320px);height:100%;position:absolute;top:0;bottom:0;right:0;box-shadow:-8px 0 24px #0000002e}.sd-sidebar-backdrop{z-index:55;background:#00000059;display:block;position:absolute;inset:0}.sd-toolbar-hint{display:none}.sd-back-btn{padding:6px 10px;font-size:0}.sd-back-btn:before{content:"←";font-size:calc(16px * var(--font-scale))}.sd-save-status{display:none}.react-flow__controls,.react-flow__minimap{display:none!important}.sd-fab-panel{display:flex}}.sd-sidebar-section{border-bottom:1px solid #0000000f}.sd-sidebar-head{font-size:calc(11px * var(--font-scale));text-transform:uppercase;letter-spacing:.07em;color:#6b7280;background:#fafafa;align-items:center;gap:6px;padding:10px 12px;font-weight:700;display:flex}button.sd-sidebar-head.toggle{cursor:pointer;border:none;justify-content:flex-start;width:100%}button.sd-sidebar-head.toggle:hover{background:#f3f4f6}.sd-sidebar-empty{font-size:calc(11px * var(--font-scale));color:#aaa;padding:8px 12px}.sd-table-list{padding:4px 0}.sd-table-item{font-size:calc(12px * var(--font-scale));color:#374151;align-items:center;gap:7px;padding:5px 12px;display:flex}.sd-table-dot{border-radius:50%;flex-shrink:0;align-self:flex-start;width:8px;height:8px;margin-top:4px}.sd-table-label-wrap{flex-direction:column;flex:1;min-width:0;display:flex}.sd-table-label{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.sd-table-owner{font-size:calc(10px * var(--font-scale));color:var(--accent);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sd-table-count{font-size:calc(10px * var(--font-scale));color:#9ca3af;flex-shrink:0;align-self:flex-start;margin-top:2px}.sd-owner-bar{background:#fafafe;border-bottom:1px solid #f1f1f1;align-items:center;gap:6px;padding:4px 8px;display:flex}.sd-owner-icon{color:#9ca3af;flex-shrink:0}.sd-owner-select{color:#9ca3af;min-width:0;font-size:calc(11px * var(--font-scale));cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:5px;flex:1;padding:2px 4px}.sd-owner-select.set{color:var(--accent);border-color:var(--border);background:var(--accent-muted);font-weight:600}.sd-owner-select:focus{border-color:var(--accent);outline:none}.sd-rel-list{padding:4px 0}.sd-rel-item{font-size:calc(11px * var(--font-scale));align-items:center;gap:6px;padding:4px 12px;display:flex}.sd-rel-badge{font-size:calc(9px * var(--font-scale));background:var(--accent-muted);color:var(--accent);border-radius:4px;flex-shrink:0;padding:1px 5px;font-weight:700}.sd-rel-names{color:#374151;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.sd-rel-del{cursor:pointer;color:#d1d5db;background:0 0;border:none;flex-shrink:0;padding:2px}.sd-rel-del:hover{color:#ef4444}.sd-sql-import{padding:10px 12px}.sd-sql-textarea{width:100%;height:120px;font-size:calc(11px * var(--font-scale));resize:vertical;color:#111;box-sizing:border-box;background:#fafafa;border:1.5px solid #e5e7eb;border-radius:7px;outline:none;padding:8px;font-family:Fira Code,Cascadia Code,monospace}.sd-sql-textarea:focus{border-color:var(--accent)}.sd-sql-error{font-size:calc(11px * var(--font-scale));color:#dc2626;margin:4px 0}.sd-sql-btn{background:var(--accent);color:#fff;font-size:calc(12px * var(--font-scale));cursor:pointer;border:none;border-radius:7px;justify-content:center;align-items:center;gap:5px;width:100%;margin-top:8px;padding:6px 12px;font-weight:600;display:flex}.sd-sql-btn:disabled{opacity:.4;cursor:not-allowed}.sd-sql-btn:not(:disabled):hover{background:var(--accent-hover)}.sd-table-node{cursor:default;background:#fff;border:1.5px solid #00000014;border-radius:10px;min-width:240px;max-width:300px;transition:box-shadow .15s;position:relative;box-shadow:0 2px 8px #00000012}.sd-table-node.selected{border-color:var(--accent);box-shadow:0 0 0 2.5px var(--accent), 0 4px 16px #5352bb33}.sd-table-node.pending-src{border-color:#d85a30;box-shadow:0 0 0 2.5px #d85a30}.sd-table-node.relation-mode{cursor:pointer}.sd-table-node.relation-mode:hover{box-shadow:0 0 0 2px #d85a30}.react-flow__handle{pointer-events:all!important}.react-flow__handle:hover{transform:scale(1.5)!important;box-shadow:0 0 0 5px #5352bb40!important}.react-flow__handle.connectingto{box-shadow:0 0 0 5px #10b98166!important}.react-flow__handle-right:after{content:"ziehen →";font-size:calc(9px * var(--font-scale));color:#9ca3af;white-space:nowrap;pointer-events:none;opacity:0;font-weight:600;transition:opacity .15s;position:absolute;top:50%;right:22px;transform:translateY(-50%)}.react-flow__handle-right:hover:after{opacity:1}.sd-grip{cursor:grab;height:18px;font-size:calc(8px * var(--font-scale));letter-spacing:1px;color:#0003;-webkit-user-select:none;user-select:none;background:#fafafa;border-bottom:1px solid #0000000d;border-radius:10px 10px 0 0;justify-content:center;align-items:center;display:flex}.sd-grip:active{cursor:grabbing}.sd-node-header{align-items:center;gap:6px;padding:6px 10px 6px 8px;display:flex}.sd-color-wrap{position:relative}.sd-color-dot{cursor:pointer;border:none;border-radius:50%;outline:2px solid #0000;flex-shrink:0;width:12px;height:12px;transition:outline-color .1s}.sd-color-dot:hover{outline-color:#0003}.sd-color-picker{z-index:1000;background:#fff;border:1px solid #0000001a;border-radius:8px;grid-template-columns:repeat(4,16px);gap:4px;padding:6px;display:grid;position:absolute;top:18px;left:0;box-shadow:0 4px 16px #0000001f}.sd-color-swatch{cursor:pointer;border:none;border-radius:50%;width:16px;height:16px}.sd-table-name{font-size:calc(12px * var(--font-scale));color:#111;background:0 0;border:none;outline:none;flex:1;min-width:0;font-weight:600}.sd-table-name:focus{background:#f3f4f6;border-radius:4px;padding:1px 4px}.sd-prompt-btn{color:#d1d5db;cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;align-items:center;padding:2px;display:flex}.sd-prompt-btn:hover,.sd-prompt-btn.active{color:var(--accent)}.sd-prompt-btn.open{background:var(--accent-muted);color:var(--accent)}.sd-prompt-box{background:var(--surface);border-bottom:1px solid #0000000f;padding:6px 10px 8px}.sd-prompt-input{box-sizing:border-box;width:100%;font-size:calc(11px * var(--font-scale));color:#111;resize:vertical;background:#fff;border:1px solid #e5e7eb;border-radius:6px;outline:none;padding:6px 8px;font-family:inherit;line-height:1.4}.sd-prompt-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px #5352bb1f}.sd-del-table{color:#d1d5db;cursor:pointer;background:0 0;border:none;flex-shrink:0;align-items:center;padding:2px;display:flex}.sd-del-table:hover{color:#ef4444}.sd-field-row{border-left:3px solid #0000;align-items:center;gap:4px;min-height:28px;padding:3px 6px 3px 8px;display:flex;position:relative}.sd-field-row.pk{background:#fffbeb;border-left-color:#f59e0b}.sd-field-row:hover{background:#f9fafb}.sd-field-row.pk:hover{background:#fef3c7}.sd-pk-btn{cursor:pointer;color:#9ca3af;background:#fff;border:1px solid #e5e7eb;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;padding:0;display:flex}.sd-pk-btn.active{color:#d97706;background:#fef3c7;border-color:#f59e0b}.sd-field-name{font-size:calc(11px * var(--font-scale));color:#111;background:0 0;border:none;outline:none;flex:1;min-width:0;font-weight:400}.sd-field-name:focus{background:#f3f4f6;border-radius:3px;padding:0 3px}.sd-field-type{font-size:calc(10px * var(--font-scale));color:#9ca3af;cursor:pointer;background:0 0;border:none;outline:none;flex-shrink:0;max-width:80px}.sd-field-type:focus{background:#f3f4f6;border-radius:3px}.sd-badge{font-size:calc(9px * var(--font-scale));color:#9ca3af;cursor:pointer;letter-spacing:.03em;background:0 0;border:1px solid #e5e7eb;border-radius:3px;flex-shrink:0;padding:1px 4px;font-weight:700}.sd-badge.active{color:#1d4ed8;background:#dbeafe;border-color:#93c5fd}.sd-fx-btn{font-size:calc(9px * var(--font-scale));color:#9ca3af;cursor:pointer;background:0 0;border:1px solid #e5e7eb;border-radius:3px;flex-shrink:0;padding:1px 5px;font-family:Georgia,Times New Roman,serif;font-style:italic;font-weight:800}.sd-fx-btn:hover{border-color:var(--accent);color:var(--accent)}.sd-fx-btn.active{background:var(--accent-muted);border-color:var(--accent);color:var(--accent)}.sd-field-row.computed{background:var(--surface)}.sd-field-row.computed .sd-field-name{color:var(--accent)}.sd-del-field{cursor:pointer;color:#d1d5db;background:0 0;border:none;flex-shrink:0;align-items:center;padding:2px;display:flex}.sd-del-field:hover{color:#ef4444}.sd-divider{background:#0000000f;height:1px;margin:2px 0}.sd-add-field{width:100%;font-size:calc(11px * var(--font-scale));color:#9ca3af;cursor:pointer;background:0 0;border:none;border-top:1px dashed #00000014;border-radius:0 0 10px 10px;align-items:center;gap:4px;padding:6px 10px;display:flex}.sd-add-field:hover{color:var(--accent);background:#f9fafb}.sd-relation-overlay{pointer-events:none;z-index:5;background:#5352bb12;border-radius:10px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.sd-rel-overlay-label{font-size:calc(11px * var(--font-scale));color:var(--accent);border:1.5px solid var(--accent);background:#ffffffeb;border-radius:20px;padding:3px 10px;font-weight:700}.sd-rel-overlay-label.src{color:#d85a30;background:#fff3ed;border-color:#d85a30}.sd-rel-picker-overlay{z-index:3000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000040;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.sd-rel-picker-box{background:#fff;border-radius:14px;min-width:300px;overflow:hidden;box-shadow:0 16px 48px #0003}.sd-rel-picker-header{background:#fafafa;border-bottom:1px solid #00000012;padding:16px 18px 12px}.sd-rel-picker-title{font-size:calc(11px * var(--font-scale));text-transform:uppercase;letter-spacing:.07em;color:#9ca3af;margin-bottom:6px;font-weight:700}.sd-rel-picker-tables{font-size:calc(14px * var(--font-scale));align-items:center;gap:8px;display:flex}.sd-rel-picker-arrow{color:#9ca3af;font-size:calc(16px * var(--font-scale))}.sd-rel-option-btn{cursor:pointer;text-align:left;background:0 0;border:none;border-bottom:1px solid #0000000d;align-items:center;gap:14px;width:100%;padding:12px 18px;transition:background .1s;display:flex}.sd-rel-option-btn:hover{background:var(--accent-muted)}.sd-rel-option-badge{font-size:calc(13px * var(--font-scale));color:var(--accent);background:var(--accent-muted);text-align:center;border-radius:8px;flex-shrink:0;min-width:52px;padding:5px 10px;font-family:monospace;font-weight:800}.sd-rel-option-text{flex:1}.sd-rel-option-name{font-size:calc(13px * var(--font-scale));color:#111;margin-bottom:2px;font-weight:600}.sd-rel-option-hint{font-size:calc(11px * var(--font-scale));color:#9ca3af}.sd-rel-cancel-btn{width:100%;font-size:calc(12px * var(--font-scale));color:#9ca3af;cursor:pointer;text-align:center;background:#fafafa;border:none;padding:10px;display:block}.sd-rel-cancel-btn:hover{color:#374151;background:#f3f4f6}.sd-edge-label-wrap{align-items:center;gap:3px;display:flex;position:relative}.sd-edge-label{font-size:calc(11px * var(--font-scale));cursor:pointer;white-space:nowrap;letter-spacing:.03em;-webkit-user-select:none;user-select:none;background:#fff;border:2px solid;border-radius:10px;padding:3px 9px;font-family:monospace;font-weight:800;transition:transform .1s;box-shadow:0 1px 5px #00000021}.sd-edge-label-wrap.hovered .sd-edge-label,.sd-edge-label:hover{transform:scale(1.08);box-shadow:0 3px 10px #0000002e}.sd-edge-del{color:#ef4444;cursor:pointer;background:#fff;border:1.5px solid #fecaca;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;padding:0;display:flex;box-shadow:0 1px 4px #0000001a}.sd-edge-del:hover{background:#fef2f2}.sd-edge-picker{z-index:9999;background:#fff;border:1px solid #0000001a;border-radius:10px;min-width:200px;position:absolute;top:calc(100% + 6px);left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 8px 32px #0000002e}.sd-edge-picker-title{font-size:calc(10px * var(--font-scale));text-transform:uppercase;letter-spacing:.07em;color:#9ca3af;border-bottom:1px solid #0000000f;padding:8px 12px 5px;font-weight:700}.sd-edge-picker-opt{cursor:pointer;text-align:left;background:0 0;border:none;border-bottom:1px solid #0000000a;align-items:center;gap:9px;width:100%;padding:9px 12px;transition:background .1s;display:flex}.sd-edge-picker-opt:hover{background:var(--accent-muted)}.sd-edge-picker-opt.active{background:var(--surface)}.sd-edge-picker-badge{font-size:calc(10px * var(--font-scale));border:1.5px solid;border-radius:6px;flex-shrink:0;padding:2px 7px;font-family:monospace;font-weight:800}.sd-edge-picker-desc{font-size:calc(12px * var(--font-scale));color:#374151;flex:1;font-weight:500}.sd-edge-picker-check{font-size:calc(12px * var(--font-scale));color:#10b981;font-weight:700}.sd-edge-picker-close{width:100%;font-size:calc(11px * var(--font-scale));color:#9ca3af;cursor:pointer;text-align:center;background:#fafafa;border:none;padding:7px;display:block}.sd-edge-picker-close:hover{color:#6b7280;background:#f3f4f6}.sd-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:2000;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.sd-export-dialog{background:#fff;border-radius:14px;flex-direction:column;width:680px;max-width:95vw;max-height:85vh;display:flex;overflow:hidden;box-shadow:0 24px 72px #0003}.sd-export-header{border-bottom:1px solid #00000012;justify-content:space-between;align-items:center;padding:16px 20px 12px;display:flex}.sd-export-title{font-size:calc(15px * var(--font-scale));color:#111;font-weight:700}.sd-export-close{cursor:pointer;color:#9ca3af;background:0 0;border:none;padding:2px}.sd-export-close:hover{color:#374151}.sd-export-tabs{border-bottom:1px solid #00000012;gap:0;padding:10px 20px 0;display:flex}.sd-export-tab{font-size:calc(13px * var(--font-scale));color:#9ca3af;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:7px 18px;font-weight:600}.sd-export-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.sd-export-code{font-family:Fira Code,Cascadia Code,Consolas,monospace;font-size:calc(12px * var(--font-scale));color:#1e293b;white-space:pre-wrap;word-break:break-all;background:#f8fafc;flex:1;margin:0;padding:16px 20px;line-height:1.7;overflow-y:auto}.sd-export-actions{border-top:1px solid #00000012;justify-content:flex-end;gap:8px;padding:12px 20px;display:flex}.sd-export-btn{font-size:calc(13px * var(--font-scale));color:#374151;cursor:pointer;background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;align-items:center;gap:6px;padding:7px 16px;font-weight:600;display:flex}.sd-export-btn:hover{background:#f9fafb}.sd-export-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.sd-export-btn.primary:hover{background:var(--accent-hover)}.sd-export-btn.pdf{color:#fff;background:#4aa464;border-color:#4aa464}.sd-export-btn.pdf:hover{background:#3d8b54}.sd-export-btn.pdf:disabled{opacity:.45;cursor:not-allowed}.sd-schemas-page{max-width:1200px;margin:0 auto;padding:32px}.sd-schemas-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:32px;display:flex}.sd-schemas-header h1{font-size:calc(22px * var(--font-scale));color:#1e293b;margin:0 0 4px;font-weight:700}.sd-schemas-header p{font-size:calc(14px * var(--font-scale));color:#6b7280;margin:0}.sd-schemas-new-btn{background:var(--accent);color:#fff;font-size:calc(14px * var(--font-scale));cursor:pointer;border:none;border-radius:10px;flex-shrink:0;padding:10px 20px;font-weight:600;transition:background .15s}.sd-schemas-new-btn:hover{background:var(--accent-hover)}.sd-schemas-error{color:#dc2626;font-size:calc(13px * var(--font-scale));background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;margin-bottom:20px;padding:12px 16px}.sd-schemas-loading,.sd-schemas-empty{text-align:center;color:#9ca3af;font-size:calc(14px * var(--font-scale));padding:40px}.sd-schemas-empty button{color:var(--accent);font-size:calc(14px * var(--font-scale));cursor:pointer;background:0 0;border:none;text-decoration:underline}.sd-schemas-section-title{font-size:calc(13px * var(--font-scale));text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;margin:0 0 14px;font-weight:700}.sd-schemas-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.sd-schema-card{cursor:pointer;background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;flex-direction:column;transition:box-shadow .18s,border-color .18s,transform .15s;display:flex;overflow:hidden}.sd-schema-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 8px 24px #0000001a}.sd-schema-card-preview{background:linear-gradient(135deg, var(--accent-muted) 0%, var(--surface) 100%);justify-content:center;align-items:center;height:100px;padding:16px;display:flex}.sd-schema-card-icon{align-items:flex-end;gap:8px;display:flex}.sd-card-mini-table{background:var(--accent);opacity:.6;border-radius:5px;width:36px;height:44px}.sd-card-mini-table:first-child{opacity:.9;height:52px}.sd-card-mini-table:nth-child(2){opacity:.7;height:44px}.sd-card-mini-table:nth-child(3){opacity:.5;height:36px}.sd-card-mini-table:nth-child(4){opacity:.35;height:28px}.sd-card-mini-empty{font-size:calc(12px * var(--font-scale));color:#9ca3af;font-style:italic}.sd-schema-card-body{flex:1;padding:14px 16px 10px}.sd-schema-card-body h3{font-size:calc(15px * var(--font-scale));color:#1e293b;white-space:nowrap;text-overflow:ellipsis;margin:0 0 6px;font-weight:600;overflow:hidden}.sd-schema-card-meta{font-size:calc(12px * var(--font-scale));color:#6b7280;gap:6px;margin-bottom:4px;display:flex}.sd-schema-card-date{font-size:calc(11px * var(--font-scale));color:#9ca3af}.sd-schema-shared-badge{background:var(--surface);color:#3b82f6;font-size:calc(11px * var(--font-scale));border-radius:99px;margin-top:6px;padding:2px 8px;font-weight:600;display:inline-block}.sd-schema-card-actions{border-top:1px solid #f3f4f6;gap:6px;padding:10px 16px;display:flex}.sd-card-btn{font-size:calc(12px * var(--font-scale));color:#374151;cursor:pointer;background:#fff;border:1.5px solid #e5e7eb;border-radius:7px;flex:1;padding:6px 10px;font-weight:600;transition:background .12s}.sd-card-btn:hover{background:#f9fafb}.sd-card-btn.share{color:var(--accent);border-color:var(--border);background:var(--accent-muted)}.sd-card-btn.share:hover{background:var(--surface)}.sd-card-btn.danger{color:#dc2626;border-color:#fca5a5}.sd-card-btn.danger:hover{background:#fef2f2}.sd-new-schema-form{padding:8px 20px 0}.sd-new-schema-form input{width:100%;font-size:calc(14px * var(--font-scale));box-sizing:border-box;border:1.5px solid #e5e7eb;border-radius:8px;outline:none;margin-bottom:16px;padding:10px 12px;transition:border-color .15s}.sd-new-schema-form input:focus{border-color:var(--accent)}.sd-header{background:#fff;border-bottom:1px solid #00000014;flex-shrink:0;align-items:center;gap:12px;height:48px;padding:0 16px;display:flex}.sd-back-btn{font-size:calc(13px * var(--font-scale));color:#374151;cursor:pointer;white-space:nowrap;background:#f5f5f5;border:1.5px solid #e5e7eb;border-radius:7px;padding:5px 12px;font-weight:600;transition:background .12s}.sd-back-btn:hover{background:#ebebeb}.sd-schema-name-area{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.sd-schema-name-btn{font-size:calc(15px * var(--font-scale));color:#1e293b;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;border-radius:6px;align-items:center;gap:6px;max-width:400px;padding:4px 6px;font-weight:700;transition:background .12s;display:flex;overflow:hidden}.sd-schema-name-btn:hover{background:#f0f0f0}.sd-name-edit-icon{font-size:calc(12px * var(--font-scale));color:#9ca3af}.sd-schema-name-input{font-size:calc(15px * var(--font-scale));color:#1e293b;border:1.5px solid var(--accent);background:#fff;border-radius:7px;outline:none;width:280px;padding:4px 10px;font-weight:700}.sd-save-status{font-size:calc(12px * var(--font-scale));white-space:nowrap;font-weight:500}.sd-save-status.saved{color:#10b981}.sd-save-status.saving{color:#f59e0b}.sd-save-status.unsaved{color:#9ca3af}.sd-header-actions{align-items:center;gap:8px;display:flex}.sd-header-actions-wrap{align-items:center;display:flex;position:relative}.sd-menu-btn{color:#666;cursor:pointer;background:#fff;border:1px solid #e0e0e0;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.sd-menu-btn:hover{color:#333;background:#f3f4f6}.sd-menu-backdrop{z-index:65;background:0 0;position:fixed;inset:0}.sd-header-menu{z-index:70;background:#fff;border:1px solid #0000001f;border-radius:10px;flex-direction:column;gap:2px;min-width:170px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 30px #00000038}.sd-menu-item{text-align:left;width:100%;font-size:calc(13px * var(--font-scale));color:#374151;cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:6px;padding:9px 12px;font-weight:600;display:flex}.sd-menu-item:hover:not(:disabled){background:#f3f4f6}.sd-menu-item:disabled{opacity:.45;cursor:not-allowed}.sd-share-btn{background:var(--accent);color:#fff;font-size:calc(13px * var(--font-scale));cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:7px 16px;font-weight:600;transition:background .15s}.sd-share-btn:hover{background:var(--accent-hover)}.sd-db-error{color:#dc2626;font-size:calc(13px * var(--font-scale));background:#fef2f2;border-bottom:1px solid #fca5a5;justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.sd-db-error button{color:#dc2626;cursor:pointer;font-size:calc(14px * var(--font-scale));background:0 0;border:none;padding:0 4px}.sd-loading-state{color:#9ca3af;height:calc(100vh - 56px);font-size:calc(14px * var(--font-scale));justify-content:center;align-items:center;display:flex}.share-dialog{flex-direction:column;width:560px;max-height:80vh;display:flex}.sd-dialog-sub{font-size:calc(13px * var(--font-scale));color:#6b7280;margin:2px 0 0}.sd-share-error{color:#dc2626;font-size:calc(13px * var(--font-scale));background:#fef2f2;border-bottom:1px solid #fca5a5;padding:8px 20px}.sd-share-loading,.sd-share-empty{text-align:center;color:#9ca3af;font-size:calc(14px * var(--font-scale));padding:32px 20px}.sd-share-matrix{border:1.5px solid #e5e7eb;border-radius:10px;flex:1;margin:16px 20px 0;overflow-y:auto}.sd-share-matrix-head{font-size:calc(12px * var(--font-scale));color:#6b7280;text-transform:uppercase;letter-spacing:.04em;background:#f8fafc;border-bottom:1px solid #e5e7eb;grid-template-columns:1fr 100px 100px;padding:10px 14px;font-weight:700;display:grid}.sd-share-matrix-body{divide-y:1px solid #f3f4f6}.sd-share-row{border-bottom:1px solid #f3f4f6;grid-template-columns:1fr 100px 100px;align-items:center;padding:10px 14px;transition:background .12s;display:grid}.sd-share-row:last-child{border-bottom:none}.sd-share-row:hover{background:#fafafa}.col-user{align-items:center;gap:10px;min-width:0;display:flex}.col-perm{justify-content:center;align-items:center;display:flex}.sd-share-avatar{background:linear-gradient(135deg, var(--accent), #7c6fcd);width:32px;height:32px;font-size:calc(12px * var(--font-scale));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.sd-share-userinfo{flex-direction:column;min-width:0;display:flex}.sd-share-name{font-size:calc(13px * var(--font-scale));color:#1e293b;white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.sd-share-email{font-size:calc(11px * var(--font-scale));color:#9ca3af;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sd-share-toggle{cursor:pointer;display:inline-block;position:relative}.sd-share-toggle input{opacity:0;width:0;height:0;position:absolute}.sd-share-check{background:#fff;border:2px solid #d1d5db;border-radius:5px;width:20px;height:20px;transition:all .15s;display:block;position:relative}.sd-share-toggle input:checked~.sd-share-check{background:var(--accent);border-color:var(--accent)}.sd-share-toggle input:checked~.sd-share-check:after{content:"";border:2px solid #fff;border-top:none;border-left:none;width:5px;height:9px;position:absolute;top:2px;left:5px;transform:rotate(45deg)}.sd-share-toggle input:disabled~.sd-share-check{opacity:.5;cursor:not-allowed}.sd-share-toggle:hover input:not(:disabled)~.sd-share-check{border-color:var(--accent)}.sd-share-hint{background:var(--accent-muted);font-size:calc(12px * var(--font-scale));color:var(--accent);border-radius:8px;margin:12px 20px 0;padding:10px 14px;line-height:1.5}.sd-dialog-overlay{z-index:2000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.sd-dialog{background:#fff;border-radius:14px;flex-direction:column;min-width:360px;max-width:90vw;max-height:85vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #00000040}.sd-dialog-header{border-bottom:1px solid #f3f4f6;justify-content:space-between;align-items:flex-start;padding:20px 20px 16px;display:flex}.sd-dialog-header h2{font-size:calc(16px * var(--font-scale));color:#1e293b;margin:0;font-weight:700}.sd-dialog-close{font-size:calc(16px * var(--font-scale));color:#9ca3af;cursor:pointer;background:0 0;border:none;padding:0 4px;line-height:1}.sd-dialog-close:hover{color:#374151}.sd-dialog-footer{border-top:1px solid #f3f4f6;justify-content:flex-end;gap:8px;padding:14px 20px;display:flex}.sd-dialog-btn{font-size:calc(13px * var(--font-scale));color:#374151;cursor:pointer;background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;padding:8px 18px;font-weight:600;transition:background .12s}.sd-dialog-btn:hover{background:#f9fafb}.sd-dialog-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.sd-dialog-btn.primary:hover{background:var(--accent-hover)}.sd-dialog-btn:disabled{opacity:.5;cursor:not-allowed}.sd-help-panel{z-index:100;background:#fff;border:1.5px solid #e5e7eb;border-radius:14px;flex-direction:column;width:340px;max-height:calc(100% - 24px);animation:.18s sd-help-in;display:flex;position:absolute;top:12px;right:12px;overflow:hidden;box-shadow:0 8px 32px #00000024}@keyframes sd-help-in{0%{opacity:0;transform:translateY(-8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.sd-help-header{background:#fafafa;border-bottom:1px solid #f3f4f6;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.sd-help-title{font-size:calc(13px * var(--font-scale));color:#1e293b;font-weight:700}.sd-help-close{font-size:calc(11px * var(--font-scale));color:#6b7280;cursor:pointer;background:0 0;border:1.5px solid #e5e7eb;border-radius:7px;padding:4px 10px;font-weight:600;transition:background .12s,color .12s}.sd-help-close:hover{color:#dc2626;background:#fef2f2;border-color:#fca5a5}.sd-help-list{flex-direction:column;gap:6px;padding:10px 12px;display:flex;overflow-y:auto}.sd-help-card{background:#f8fafc;border:1px solid #f1f5f9;border-radius:9px;gap:10px;padding:10px 12px;transition:background .12s;display:flex}.sd-help-card:hover{background:var(--surface);border-color:var(--border)}.sd-help-card-icon{font-size:calc(18px * var(--font-scale));flex-shrink:0;line-height:1.4}.sd-help-card-title{font-size:calc(12px * var(--font-scale));color:#1e293b;margin-bottom:3px;font-weight:700}.sd-help-card-text{font-size:calc(11.5px * var(--font-scale));color:#4b5563;line-height:1.55}.sd-share-tabs{border-bottom:1px solid #f3f4f6;flex-shrink:0;gap:0;padding:0 20px;display:flex}.sd-share-tab{font-size:calc(13px * var(--font-scale));color:#9ca3af;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:10px 16px;font-weight:600;transition:color .12s;display:flex}.sd-share-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.sd-share-tab-badge{background:var(--accent);color:#fff;font-size:calc(10px * var(--font-scale));text-align:center;border-radius:99px;min-width:18px;padding:1px 6px;font-weight:700}.sd-share-matrix-head,.sd-share-row{grid-template-columns:1fr 80px 90px 110px}.col-email-status{justify-content:center;align-items:center;display:flex}.sd-share-last-email{font-size:calc(10px * var(--font-scale));margin-top:2px;display:block}.sd-share-last-email.sent{color:#10b981}.sd-share-last-email.failed{color:#ef4444}.sd-email-badge{font-size:calc(11px * var(--font-scale));white-space:nowrap;border-radius:99px;padding:3px 8px;font-weight:600}.sd-email-badge.sending{color:#f59e0b;font-size:calc(14px * var(--font-scale));animation:1s linear infinite sd-spin;display:inline-block}.sd-email-badge.sent{color:#10b981;background:#d1fae5}.sd-email-badge.none{color:#d1d5db}@keyframes sd-spin{to{transform:rotate(360deg)}}.sd-email-resend-btn{font-size:calc(11px * var(--font-scale));color:var(--accent);cursor:pointer;white-space:nowrap;background:0 0;border:1.5px solid #e5e7eb;border-radius:7px;padding:4px 8px;font-weight:600;transition:background .12s}.sd-email-resend-btn:hover{background:var(--accent-muted);border-color:var(--border)}.sd-email-log{flex:1;padding:12px 20px;overflow-y:auto}.sd-log-table{border-collapse:collapse;width:100%;font-size:calc(12px * var(--font-scale))}.sd-log-table th{text-align:left;color:#6b7280;font-weight:700;font-size:calc(11px * var(--font-scale));text-transform:uppercase;letter-spacing:.04em;background:#f8fafc;border-bottom:1.5px solid #e5e7eb;padding:8px 10px}.sd-log-table td{color:#374151;vertical-align:top;border-bottom:1px solid #f3f4f6;padding:9px 10px}.sd-log-row:hover td{background:#fafafa}.sd-log-perm{font-size:calc(11px * var(--font-scale));border-radius:99px;padding:2px 8px;font-weight:600;display:inline-block}.sd-log-perm.edit{background:var(--accent-muted);color:var(--accent)}.sd-log-perm.view{color:#3b82f6;background:#dbeafe}.sd-log-status{font-weight:600;font-size:calc(11px * var(--font-scale));display:inline-block}.sd-log-status.sent{color:#10b981}.sd-log-status.failed{color:#ef4444}.sd-log-error-msg{font-size:calc(10px * var(--font-scale));color:#ef4444;word-break:break-word;max-width:120px;margin-top:2px}.sd-log-date{color:#9ca3af;white-space:nowrap}.sd-toast-container{z-index:3000;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:24px;right:24px}.sd-toast{font-size:calc(13px * var(--font-scale));pointer-events:none;border-radius:10px;max-width:320px;padding:12px 18px;font-weight:600;animation:.2s sd-toast-in,.3s 3.7s forwards sd-toast-out;box-shadow:0 4px 20px #00000026}.sd-toast.success{color:#4ade80;background:#1e293b}.sd-toast.error{color:#f87171;background:#1e293b}@keyframes sd-toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes sd-toast-out{0%{opacity:1}to{opacity:0}}.sd-formula-dialog{background:#fff;border-radius:12px;flex-direction:column;width:min(820px,94vw);max-height:88vh;display:flex;overflow:hidden;box-shadow:0 18px 60px #0000004d}.sd-formula-dialog-lg{width:min(720px,95vw);height:84vh;max-height:84vh}.sd-formula-fieldspanel{flex-direction:column;flex:1;min-height:0;display:flex}.sd-formula-own{flex-direction:column;min-height:0;max-height:42%;display:flex}.sd-formula-own-head{font-size:calc(11px * var(--font-scale));color:#6b7280;background:#fbfbfd;border-bottom:1px solid #f1f1f1;flex-shrink:0;padding:8px 14px}.sd-formula-own-head strong{color:#111}.sd-formula-own-list{padding:6px 10px;overflow-y:auto}.sd-formula-ownfield{width:100%;font-size:calc(12px * var(--font-scale));color:#111;cursor:pointer;text-align:left;background:#fff;border:1px solid #0000;border-radius:6px;align-items:center;gap:8px;margin-bottom:2px;padding:6px 9px;display:flex}.sd-formula-ownfield:hover{border-color:var(--accent);background:var(--accent-muted)}.sd-formula-ownfield .sd-tree-field-name{flex:1}.sd-formula-more-toggle{background:var(--accent-muted);color:var(--accent);font-size:calc(12px * var(--font-scale));cursor:pointer;border:1px solid #eee;border-left:none;border-right:none;flex-shrink:0;align-items:center;gap:7px;padding:9px 14px;font-weight:700;display:flex}.sd-formula-more-toggle:hover{background:var(--accent-muted)}.sd-formula-more-toggle.open{color:#374151;background:#fbfbfd}.sd-formula-top{border-bottom:1px solid #eee;flex-direction:column;flex-shrink:0;gap:9px;padding:14px 16px;display:flex}.sd-formula-input{box-sizing:border-box;width:100%;font-size:calc(14px * var(--font-scale));color:#111;resize:vertical;border:1px solid #e5e7eb;border-radius:8px;outline:none;padding:10px 12px;font-family:SF Mono,Menlo,Consolas,monospace;line-height:1.5}.sd-formula-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #5352bb1f}.sd-formula-ops{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.sd-formula-chip{font-size:calc(12px * var(--font-scale));cursor:pointer;color:#374151;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:4px 9px;font-family:SF Mono,Menlo,Consolas,monospace}.sd-formula-chip:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-muted)}.sd-formula-chip.fn{font-size:calc(11px * var(--font-scale))}.sd-formula-chip.own{background:var(--accent-muted);color:var(--accent);border-color:#d8d6f7}.sd-formula-divider{background:#e5e7eb;width:1px;height:18px;margin:0 2px}.sd-formula-analysis{font-size:calc(12px * var(--font-scale));min-height:18px}.sd-formula-ok{color:#16a34a;align-items:center;gap:5px;display:inline-flex}.sd-formula-warn{color:#d97706;align-items:center;gap:5px;display:inline-flex}.sd-formula-bottom{flex:1;grid-template-columns:1fr 320px;min-height:0;display:grid}.sd-formula-graph{border-right:1px solid #eee;flex-direction:column;min-width:0;display:flex}.sd-formula-graph-head{font-size:calc(11px * var(--font-scale));text-transform:uppercase;letter-spacing:.03em;color:#6b7280;background:#fbfbfd;border-bottom:1px solid #f1f1f1;justify-content:space-between;align-items:center;padding:8px 12px;font-weight:700;display:flex}.sd-formula-refresh{cursor:pointer;color:#9ca3af;background:0 0;border:none;padding:2px;display:flex}.sd-formula-refresh:hover{color:var(--accent)}.sd-spin{animation:1s linear infinite sd-spin}.sd-formula-graph-canvas{background:#fafafa;flex:1;min-height:0;position:relative}.sd-cat-flow{width:100%;height:100%}.sd-formula-center{font-size:calc(13px * var(--font-scale));color:#9ca3af;text-align:center;justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0}.sd-formula-err{color:#dc2626}.sd-cat-node{font-size:calc(12px * var(--font-scale));color:#111;cursor:pointer;white-space:nowrap;background:#fff;border:2px solid #64748b;border-radius:8px;align-items:center;gap:6px;padding:5px 10px;font-weight:600;transition:box-shadow .1s,transform .1s,opacity .15s;display:flex;box-shadow:0 1px 4px #00000014}.sd-cat-node:hover{box-shadow:0 3px 10px #00000029}.sd-cat-node.selected{box-shadow:0 0 0 3px #5352bb40,0 3px 10px #0000002e}.sd-cat-node.dim{opacity:.35}.sd-cat-node-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.sd-cat-node-name{text-overflow:ellipsis;max-width:170px;overflow:hidden}.sd-cat-node-count{font-size:calc(9px * var(--font-scale));color:#94a3b8;background:#f1f5f9;border-radius:4px;padding:1px 5px;font-weight:700}.sd-formula-tree{background:#fbfbfd;flex-direction:column;flex:1;min-height:0;display:flex}.sd-formula-search{color:#9ca3af;border-bottom:1px solid #eee;align-items:center;gap:6px;padding:8px 10px;display:flex}.sd-formula-search input{font-size:calc(12px * var(--font-scale));color:#111;background:0 0;border:none;outline:none;width:100%}.sd-formula-tree-scroll{flex:1;padding:6px;overflow-y:auto}.sd-tree-mod{margin-bottom:2px}.sd-tree-mod.relevant{background:var(--surface);border:1px solid #e4e1fb;border-radius:8px;margin-bottom:8px;padding:2px 2px 4px}.sd-tree-mod.relevant>.sd-tree-mod-head{color:var(--accent)}.sd-tree-mod-head{cursor:pointer;width:100%;font-size:calc(12px * var(--font-scale));color:#374151;background:0 0;border:none;align-items:center;gap:6px;padding:5px 4px;font-weight:800;display:flex}.sd-tree-dot{border-radius:50%;width:9px;height:9px}.sd-tree-count{font-size:calc(9px * var(--font-scale));color:#94a3b8;background:#eef0f3;border-radius:4px;margin-left:auto;padding:1px 5px;font-weight:700}.sd-tree-tbl{border-radius:6px;margin:1px 0 1px 8px}.sd-tree-tbl.active{background:var(--accent-muted)}.sd-tree-tbl-head{cursor:pointer;width:100%;font-size:calc(12px * var(--font-scale));background:0 0;border:none;align-items:center;gap:5px;padding:4px;font-weight:600;display:flex}.sd-tree-tbl-name{text-overflow:ellipsis;font-family:SF Mono,Menlo,Consolas,monospace;overflow:hidden}.sd-tree-field{width:calc(100% - 22px);font-size:calc(12px * var(--font-scale));color:#111;cursor:pointer;text-align:left;background:#fff;border:1px solid #0000;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;margin:2px 0 2px 22px;padding:4px 8px;display:flex}.sd-tree-field:hover{border-color:var(--accent);background:var(--accent-muted)}.sd-tree-field-name{text-overflow:ellipsis;font-family:SF Mono,Menlo,Consolas,monospace;overflow:hidden}.sd-tree-field-type{font-size:calc(9px * var(--font-scale));color:#9ca3af;flex-shrink:0}.sd-formula-empty{font-size:calc(12px * var(--font-scale));color:#9ca3af;text-align:center;padding:12px}.sd-formula-hint-text{font-size:calc(11px * var(--font-scale));color:#9ca3af;margin-right:auto}@media (width<=760px){.sd-formula-bottom{grid-template-rows:1fr 1fr;grid-template-columns:1fr}.sd-formula-graph{border-bottom:1px solid #eee;border-right:none}}.sd-import-dialog{background:#fff;border-radius:12px;flex-direction:column;width:min(620px,95vw);height:82vh;max-height:82vh;display:flex;overflow:hidden;box-shadow:0 18px 60px #0000004d}.sd-import-search{color:#9ca3af;border-bottom:1px solid #eee;align-items:center;gap:8px;padding:10px 14px;display:flex}.sd-import-search input{font-size:calc(13px * var(--font-scale));color:#111;background:0 0;border:none;outline:none;width:100%}.sd-import-scroll{flex:1;padding:8px 10px;overflow-y:auto}.sd-import-mod-head{font-size:calc(12px * var(--font-scale));color:#374151;align-items:center;gap:6px;padding:8px 4px 4px;font-weight:800;display:flex}.sd-import-tbl{border-radius:7px;margin:1px 0 1px 6px}.sd-import-tbl.on{background:var(--accent-muted)}.sd-import-tbl-head{align-items:center;gap:7px;padding:4px 6px;display:flex}.sd-import-tbl-head input[type=checkbox]{cursor:pointer;width:15px;height:15px;accent-color:var(--accent)}.sd-import-tbl-toggle{cursor:pointer;font-size:calc(13px * var(--font-scale));text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:5px;min-width:0;padding:2px 0;font-weight:600;display:flex}.sd-import-fields{flex-direction:column;gap:1px;padding:2px 0 6px 30px;display:flex}.sd-import-field{font-size:calc(12px * var(--font-scale));cursor:pointer;color:#111;border-radius:5px;align-items:center;gap:7px;padding:3px 6px;display:flex}.sd-import-field:hover{background:#ececf8}.sd-import-field input[type=checkbox]{cursor:pointer;width:13px;height:13px;accent-color:var(--accent)}.sd-import-field .sd-tree-field-name{flex:1}.sd-export-btn.primary:disabled{opacity:.45;cursor:not-allowed}.sd-deploy-btn{color:#fff;font-size:calc(13px * var(--font-scale));cursor:pointer;background:#4aa464;border:1px solid #4aa464;border-radius:8px;padding:6px 14px;font-weight:600}.sd-deploy-btn:hover:not(:disabled){background:#3d8a53}.sd-deploy-btn:disabled{opacity:.45;cursor:not-allowed}.sd-deploy-tabs{border-bottom:1px solid #eee;gap:0;padding:0 14px;display:flex}.sd-deploy-tab{font-size:calc(12px * var(--font-scale));color:#6b7280;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:10px 14px;font-weight:600;display:inline-flex}.sd-deploy-tab:hover{color:#111}.sd-deploy-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.sd-deploy-tab.danger.active{color:#dc2626;border-bottom-color:#dc2626}.sd-deploy-warn.danger{color:#991b1b;background:#fef2f2;border-color:#fecaca}.sd-deploy-hint{font-size:calc(11px * var(--font-scale));color:#6b7280;margin:0;line-height:1.45}.sd-deploy-hint.danger-text{color:#b91c1c}.sd-export-btn.danger-btn{color:#fff;background:#dc2626;border-color:#dc2626}.sd-export-btn.danger-btn:hover{background:#b91c1c}.sd-schemas-header-actions{flex-wrap:wrap;gap:8px;display:flex}.sd-schemas-epix-btn{border:1px solid var(--accent);background:var(--accent-muted);color:var(--accent);font-size:calc(13px * var(--font-scale));cursor:pointer;border-radius:8px;padding:.5rem .9rem;font-weight:600}.sd-schemas-epix-btn:hover:not(:disabled){background:var(--accent-muted)}.sd-schemas-epix-btn:disabled{opacity:.5;cursor:not-allowed}.sd-deploy-dialog{background:#fff;border-radius:12px;flex-direction:column;width:min(1080px,96vw);height:86vh;max-height:86vh;display:flex;overflow:hidden;box-shadow:0 18px 60px #0000004d}.sd-deploy-body{flex:1;grid-template-columns:1fr 360px;min-height:0;display:grid}.sd-deploy-left{border-right:1px solid #eee;flex-direction:column;gap:10px;min-width:0;padding:14px;display:flex}.sd-deploy-right{background:#fbfbfd;flex-direction:column;gap:10px;padding:16px;display:flex;overflow-y:auto}.sd-deploy-fileinfo{flex-direction:column;gap:3px;display:flex}.sd-deploy-filelabel{font-size:calc(10px * var(--font-scale));text-transform:uppercase;letter-spacing:.04em;color:#6b7280;font-weight:800}.sd-deploy-filepath{font-size:calc(12px * var(--font-scale));color:var(--accent);background:var(--accent-muted);border-radius:6px;padding:5px 8px;font-family:SF Mono,Menlo,Consolas,monospace}.sd-deploy-warn{color:#92400e;font-size:calc(12px * var(--font-scale));background:#fffbeb;border:1px solid #fde68a;border-radius:8px;gap:8px;padding:8px 10px;display:flex}.sd-deploy-warn ul{margin:0;padding-left:16px}.sd-deploy-ok{color:#16a34a;font-size:calc(12px * var(--font-scale));align-items:center;gap:6px;display:flex}.sd-deploy-code{flex:1;min-height:0;margin:0;overflow:auto}.sd-deploy-actions-row{gap:8px;display:flex}.sd-deploy-gh-head{font-size:calc(14px * var(--font-scale));color:#111;align-items:center;gap:7px;font-weight:700;display:flex}.sd-deploy-gh-info{font-size:calc(12px * var(--font-scale));color:#6b7280;margin:0;line-height:1.5}.sd-deploy-gh-info code,.sd-deploy-gh-hint code{font-size:calc(11px * var(--font-scale));background:#eef0f3;border-radius:4px;padding:1px 4px}.sd-deploy-field{font-size:calc(11px * var(--font-scale));color:#6b7280;text-transform:uppercase;letter-spacing:.03em;flex-direction:column;gap:4px;font-weight:700;display:flex}.sd-deploy-field input{font-size:calc(13px * var(--font-scale));color:#111;text-transform:none;letter-spacing:0;border:1px solid #e5e7eb;border-radius:8px;outline:none;padding:8px 10px;font-family:SF Mono,Menlo,Consolas,monospace;font-weight:400}.sd-deploy-field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #5352bb1f}.sd-deploy-pr-btn{justify-content:center}.sd-deploy-pr-link{color:#16a34a;font-size:calc(13px * var(--font-scale));align-items:center;gap:6px;font-weight:600;text-decoration:none;display:inline-flex}.sd-deploy-pr-link:hover{text-decoration:underline}.sd-deploy-gh-error{font-size:calc(12px * var(--font-scale));color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:8px 10px}.sd-deploy-gh-hint{font-size:calc(11px * var(--font-scale));color:#9ca3af;margin:auto 0 0;line-height:1.5}@media (width<=820px){.sd-deploy-body{grid-template-rows:1fr auto;grid-template-columns:1fr}.sd-deploy-left{border-bottom:1px solid #eee;border-right:none}}.sd-field-row{position:relative}.sd-field-drag{cursor:grab;color:#b6bcc6;opacity:.4;flex-shrink:0;justify-content:center;align-items:center;width:13px;transition:opacity .12s,color .12s;display:inline-flex}.sd-field-row:hover .sd-field-drag{opacity:1;color:var(--accent)}.sd-field-drag:active{cursor:grabbing}.sd-field-handle.react-flow__handle{opacity:1;pointer-events:all;z-index:6;cursor:crosshair;background:#fff;border:2px solid #9aa1ad;border-radius:50%;width:9px;min-width:0;height:9px;min-height:0}.sd-field-row.referenced .sd-field-handle.react-flow__handle{background:#eafaf0;border-color:#4aa464}.sd-field-ref-badge{color:#4aa464;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.sd-edge-ref-dot{color:#9ca3af;opacity:.7;background:#fff;border:1px solid #d1d5db;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex}.sd-edge-ref-mid:hover .sd-edge-ref-dot{opacity:1}.sd-field-row.referenced{background:#4aa46412}.sd-field-row.referenced .sd-field-name{color:#2f6b43}.sd-table-node.drop-active{box-shadow:0 0 0 3px #4aa46473,0 8px 22px #0000002e}.sd-table-node.drop-active:after{content:"Feld hier ablegen → Referenz";text-align:center;font-size:calc(10px * var(--font-scale));color:#4aa464;font-weight:700;position:absolute;bottom:-22px;left:0;right:0}.ak-module{--ak-bg:#fff;--ak-bg-soft:#f8fafc;--ak-border:#e5e7eb;--ak-text:#111827;--ak-muted:#6b7280;--ak-accent:#00425b;--ak-pos:#16a34a;--ak-neg:#dc2626;color:var(--ak-text)}[data-theme=dark] .ak-module{--ak-bg:#161b22;--ak-bg-soft:#1c2129;--ak-border:#2d333b;--ak-text:#e6edf3;--ak-muted:#9ca3af}.ak-subnav{border-bottom:1px solid var(--ak-border);flex-wrap:wrap;align-items:center;gap:.25rem;margin-bottom:1.25rem;display:flex}.ak-subnav-item{color:var(--ak-muted);border-bottom:2px solid #0000;margin-bottom:-1px;padding:.6rem .9rem;font-size:.9rem;font-weight:600;text-decoration:none}.ak-subnav-item:hover{color:var(--ak-text)}.ak-subnav-item.active{color:var(--ak-accent);border-bottom-color:var(--ak-accent)}.ak-admin-tag{letter-spacing:.04em;color:var(--ak-accent);background:#00425b1a;border-radius:4px;margin-left:auto;padding:.2rem .5rem;font-size:.7rem;font-weight:700}.ak-page{padding-bottom:3rem}.ak-gate{justify-content:center;padding:3rem 1rem;display:flex}.ak-gate-card{text-align:center;background:var(--ak-bg-soft,#f8fafc);border:1px solid #e5e7eb;border-radius:12px;max-width:460px;padding:2rem}.ak-gate-card h2{margin:0 0 .5rem}.ak-gate-card p{color:#6b7280;line-height:1.5}.ak-page-head{margin-bottom:1.25rem}.ak-page-head h1{margin:0;font-size:1.5rem}.ak-page-sub{color:var(--ak-muted);margin:.25rem 0 0;font-size:.9rem}.ak-live-status{color:var(--ak-muted);align-items:center;gap:.35rem;margin:.35rem 0 0;font-size:.82rem;display:flex}.ak-live-dot{border-radius:50%;flex-shrink:0;width:.5rem;height:.5rem}.ak-live-dot.on{background:var(--ak-pos);box-shadow:0 0 0 2px #16a34a40}.ak-live-dot.busy{background:#f59e0b;animation:1s ease-in-out infinite ak-live-pulse}.ak-live-hint{opacity:.75}.ak-detail-live{justify-content:flex-end;margin:.25rem 0 0;font-size:.78rem}@keyframes ak-live-pulse{0%,to{opacity:1}50%{opacity:.45}}.ak-row-flash .ak-price-cell{animation:1.2s ease-out ak-price-flash}@keyframes ak-price-flash{0%{background:#00425b2e}to{background:0 0}}.ak-section-title{margin:1.5rem 0 .75rem;font-size:1.1rem}.ak-card-meta{font-size:.78rem}.ak-intraday{width:100%}.ak-btn{border:1px solid var(--ak-border);background:var(--ak-bg);color:var(--ak-text);cursor:pointer;border-radius:7px;padding:.5rem .9rem;font-size:.85rem;font-weight:600}.ak-btn:hover{background:var(--ak-bg-soft)}.ak-btn:disabled{opacity:.5;cursor:not-allowed}.ak-btn-primary{background:var(--ak-accent);border-color:var(--ak-accent);color:#fff}.ak-btn-primary:hover{background:#00354a}.ak-btn-sm{padding:.3rem .6rem;font-size:.78rem}.ak-btn-danger{color:var(--ak-neg);border-color:#dc262666}.ak-btn-danger:hover{background:#dc262614}.ak-input{border:1px solid var(--ak-border);background:var(--ak-bg);color:var(--ak-text);border-radius:7px;width:100%;padding:.5rem .65rem;font-size:.9rem}.ak-filter{max-width:240px}.ak-ingest{background:var(--ak-bg-soft);border:1px solid var(--ak-border);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:.75rem 1rem;display:flex}.ak-ingest-label{font-size:.85rem;font-weight:600}.ak-ingest-meta{color:var(--ak-muted);margin-left:.5rem;font-size:.8rem}.ak-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.85rem;margin-bottom:1rem;display:grid}.ak-kpi{background:var(--ak-bg-soft);border:1px solid var(--ak-border);border-radius:10px;padding:.9rem 1rem}.ak-kpi-label{color:var(--ak-muted);margin-bottom:.35rem;font-size:.78rem}.ak-kpi-value{font-size:1.35rem;font-weight:700}.ak-kpi-value.ak-kpi-small{font-size:.95rem;font-weight:600;line-height:1.4}.ak-mini-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem;display:grid}.ak-mini-card{background:var(--ak-bg-soft);border:1px solid var(--ak-border);border-radius:10px;padding:.7rem .8rem}.ak-mini-top,.ak-mini-bottom{justify-content:space-between;align-items:center;font-size:.82rem;display:flex}.ak-mini-ticker{font-weight:700}.ak-mini-chg{font-weight:600}.ak-mini-bottom{color:var(--ak-muted);margin-top:.35rem}.ak-spark{margin:.35rem 0;display:block}.ak-spark-empty{color:var(--ak-muted);font-size:.8rem}.ak-card{background:var(--ak-bg);border:1px solid var(--ak-border);border-radius:12px;margin-bottom:1.25rem;padding:1.1rem 1.2rem}.ak-card h2{margin:0 0 .85rem;font-size:1.05rem}.ak-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.ak-card-head h2{margin:0}.ak-card-hint{font-size:.78rem}.ak-table-wrap{border:1px solid var(--ak-border);border-radius:10px;overflow-x:auto}.ak-table{border-collapse:collapse;width:100%;font-size:.85rem}.ak-table th,.ak-table td{text-align:right;border-bottom:1px solid var(--ak-border);white-space:nowrap;padding:.6rem .75rem}.ak-table th:first-child,.ak-table td:first-child{text-align:left}.ak-table thead th{background:var(--ak-bg-soft);color:var(--ak-muted);font-weight:600;position:sticky;top:0}.ak-th-sort{cursor:pointer;-webkit-user-select:none;user-select:none}.ak-th-sort:hover{color:var(--ak-text)}.ak-th-sort.active{color:var(--ak-accent)}.ak-th-wide{min-width:130px}.ak-row-click{cursor:pointer}.ak-row-click:hover{background:var(--ak-bg-soft)}.ak-cell-ticker{font-weight:700}.ak-cell-name{color:var(--ak-muted);font-size:.75rem}.ak-actions{justify-content:flex-end;gap:.4rem;display:flex}.ak-holding-edit-row>td{background:var(--ak-bg-soft,#f4f6f8);padding:.5rem .75rem}.ak-holding-edit{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.ak-holding-edit label{color:var(--ak-muted);flex-direction:column;gap:.2rem;font-size:.72rem;font-weight:600;display:flex}.ak-holding-edit .ak-input{width:9rem}.pos{color:var(--ak-pos)}.neg{color:var(--ak-neg)}.neutral{color:var(--ak-muted)}.ak-verdict{border-radius:5px;padding:.22rem .5rem;font-size:.72rem;font-weight:700;display:inline-block}.ak-verdict.pos{color:var(--ak-pos);background:#16a34a1f}.ak-verdict.neg{color:var(--ak-neg);background:#dc26261f}.ak-verdict.neutral{color:var(--ak-muted);background:#6b72801f}.ak-scorebar{background:var(--ak-bg-soft);border-radius:5px;min-width:110px;height:18px;position:relative;overflow:hidden}.ak-scorebar-fill{opacity:.85;position:absolute;top:0;bottom:0;left:0}.ak-scorebar-fill.pos{background:var(--ak-pos)}.ak-scorebar-fill.neutral{background:#f59e0b}.ak-scorebar-fill.neg{background:var(--ak-neg)}.ak-scorebar-val{font-size:.72rem;font-weight:700;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.ak-help{background:var(--ak-bg-soft);border:1px solid var(--ak-border);border-radius:10px;margin-bottom:1.25rem;padding:1rem 1.2rem;font-size:.88rem;line-height:1.55}.ak-help ul{margin:.5rem 0 0;padding-left:1.1rem}.ak-empty{background:var(--ak-bg-soft);border:1px dashed var(--ak-border);text-align:center;color:var(--ak-muted);border-radius:10px;padding:1.5rem}.ak-error{color:var(--ak-neg);font-size:.85rem}.ak-muted{color:var(--ak-muted)}.ak-disclaimer{color:var(--ak-muted);margin-top:2rem;font-size:.75rem}.ak-compare-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.ak-compare-toolbar-actions{gap:.5rem;display:flex}.ak-chips{flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;display:flex}.ak-chip{border:1px solid var(--ak-border);background:var(--ak-bg);color:var(--ak-text);cursor:pointer;border-radius:20px;align-items:center;gap:.35rem;padding:.35rem .8rem;font-size:.82rem;font-weight:600;display:inline-flex}.ak-chip.active{background:var(--ak-accent);border-color:var(--ak-accent);color:#fff}.ak-chip-tag{opacity:.7;border:1px solid;border-radius:3px;padding:0 .2rem;font-size:.62rem}.ak-range{gap:.25rem;display:inline-flex}.ak-range-btn{border:1px solid var(--ak-border);background:var(--ak-bg);color:var(--ak-muted);cursor:pointer;border-radius:6px;padding:.25rem .55rem;font-size:.78rem;font-weight:600}.ak-range-btn.active{background:var(--ak-accent);border-color:var(--ak-accent);color:#fff}.ak-scatter-tip{background:var(--ak-bg);border:1px solid var(--ak-border);border-radius:8px;padding:.5rem .7rem;font-size:.78rem}.ak-scatter-tip-name{color:var(--ak-muted);margin-bottom:.3rem}.ak-peg-legend{color:var(--ak-muted);flex-wrap:wrap;gap:.9rem;margin:0 0 .6rem;font-size:.78rem;display:flex}.ak-peg-legend span{align-items:center;gap:.35rem;display:inline-flex}.ak-peg-legend i{border-radius:3px;width:11px;height:11px;display:inline-block}.ak-peg-note{margin:.5rem 0 0;font-size:.78rem}.ak-back{color:var(--ak-muted);margin-bottom:.85rem;font-size:.85rem;text-decoration:none;display:inline-block}.ak-back:hover{color:var(--ak-text)}.ak-detail-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.ak-detail-head h1{align-items:center;gap:.6rem;margin:0;font-size:1.6rem;display:flex}.ak-detail-price{text-align:right}.ak-detail-price-val{font-size:1.5rem;font-weight:700}.ak-list-tag{border-radius:4px;padding:.18rem .45rem;font-size:.68rem;font-weight:700}.ak-list-tag.holding{color:var(--ak-accent);background:#00425b1f}.ak-list-tag.watchlist{color:#2f7d4d;background:#4aa46426}.ak-candle{width:100%}.ak-metric-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.85rem;display:grid}.ak-metric{background:var(--ak-bg-soft);border:1px solid var(--ak-border);border-radius:8px;padding:.6rem .75rem}.ak-metric-label{color:var(--ak-muted);margin-bottom:.25rem;font-size:.74rem}.ak-metric-value{font-size:1rem;font-weight:700}.ak-form-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.85rem;margin-bottom:.85rem;display:grid}.ak-form label{color:var(--ak-muted);flex-direction:column;gap:.3rem;font-size:.8rem;font-weight:600;display:flex}.ak-search-label{margin-bottom:.85rem}.ak-search{position:relative}.ak-search-spin{color:var(--ak-muted);font-size:1rem;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.ak-search-results{z-index:30;background:var(--ak-card,#fff);border:1px solid var(--ak-border,#e5e7eb);border-radius:10px;max-height:320px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 32px #00000024}.ak-search-item{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:7px;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:8px 10px;display:flex}.ak-search-item:hover{background:var(--ak-hover,#f3f4f6)}.ak-search-name{color:var(--ak-text,#111);font-size:.85rem;font-weight:600}.ak-search-meta{align-items:center;gap:8px;font-size:.72rem;font-weight:500;display:flex}.ak-search-symbol{color:var(--ak-accent,#2563eb);font-weight:700}.ak-search-exch,.ak-search-type{color:var(--ak-muted,#6b7280)}.ak-search-empty{color:var(--ak-muted,#6b7280);padding:10px;font-size:.8rem;font-weight:500}.ak-prediction{margin-top:.25rem}.ak-pred-disclaimer{border-left:3px solid #f59e0b;margin-bottom:1rem}.ak-pred-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;margin-bottom:1.25rem;display:grid}.ak-pred-card{border:1px solid var(--ak-border);background:var(--ak-bg);border-left:3px solid var(--ak-muted);border-radius:10px;padding:.85rem 1rem}.ak-pred-outlook-aufwärts{border-left-color:var(--ak-pos)}.ak-pred-outlook-abwärts{border-left-color:var(--ak-neg)}.ak-pred-outlook-seitwärts{border-left-color:#f59e0b}.ak-pred-card-head{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.6rem;display:flex}.ak-pred-symbol{color:var(--ak-accent);font-size:.95rem;font-weight:800}.ak-pred-outlook{font-size:.82rem;font-weight:700}.ak-pred-conf{color:var(--ak-muted);background:var(--ak-bg-soft);border-radius:4px;margin-left:auto;padding:.15rem .45rem;font-size:.72rem}.ak-pred-scenario{grid-template-columns:repeat(2,1fr);gap:.35rem .75rem;margin-bottom:.65rem;font-size:.82rem;display:grid}.ak-pred-scenario-label{color:var(--ak-muted);font-size:.68rem;display:block}.ak-pred-bias{grid-template-columns:6.5rem 1fr 2.5rem;align-items:center;gap:.4rem;margin-bottom:.35rem;font-size:.75rem;display:grid}.ak-pred-bias-label{color:var(--ak-muted)}.ak-pred-bias-track{background:var(--ak-bg-soft);border-radius:4px;height:8px;position:relative;overflow:hidden}.ak-pred-bias-fill{opacity:.85;border-radius:4px;position:absolute;top:0;bottom:0}.ak-pred-bias-fill.pos{background:var(--ak-pos)}.ak-pred-bias-fill.neg{background:var(--ak-neg)}.ak-pred-bias-zero{background:#00000026;width:1px;position:absolute;top:0;bottom:0;left:50%}.ak-pred-bias-val{text-align:right;font-weight:700}.ak-pred-meta{color:var(--ak-muted);margin:.4rem 0 0;font-size:.72rem}.ak-pred-drivers{color:var(--ak-muted);margin:.45rem 0 0;padding-left:1rem;font-size:.78rem;line-height:1.4}.ak-pred-chart-title{margin:.5rem 0 .25rem;font-size:.95rem}.ak-pred-chart-hint{margin:0 0 .75rem;font-size:.78rem}.ak-pred-news{margin-top:.55rem}.ak-pred-news-title{text-transform:uppercase;letter-spacing:.03em;color:var(--ak-muted);font-size:.72rem;font-weight:700}.ak-pred-news-list{margin:.3rem 0 0;padding:0;list-style:none}.ak-pred-news-item{border-left:3px solid #0000001f;margin-bottom:.3rem;padding:.25rem 0 .25rem .5rem;font-size:.78rem;line-height:1.35}.ak-pred-news-item.cs-dir-bullish{border-left-color:var(--ak-pos,#16a34a)}.ak-pred-news-item.cs-dir-bearish{border-left-color:var(--ak-neg,#dc2626)}.ak-pred-news-item a{color:var(--ak-accent,#00425b);text-decoration:none}.ak-pred-news-item a:hover{text-decoration:underline}.ak-pred-news-meta{color:var(--ak-muted);margin-top:.1rem;font-size:.68rem;display:block}.ak-pred-model{color:var(--ak-muted);margin:.25rem 0 .75rem;font-size:.78rem}.ak-page-head-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.pt-toggle{color:var(--ak-muted);cursor:pointer;align-items:center;gap:.4rem;font-size:.82rem;display:inline-flex}.pt-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin:1rem 0;display:grid}.pt-kpi{background:var(--ak-card-bg,#fff);border:1px solid var(--ak-border,#e2e8f0);border-radius:12px;padding:.85rem 1rem}.pt-kpi-label{color:var(--ak-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.74rem}.pt-kpi-value{margin:.25rem 0 .1rem;font-size:1.6rem;font-weight:700}.pt-kpi-value.pt-kpi-small{font-size:1.2rem}.pt-kpi-sub{color:var(--ak-muted);font-size:.72rem}.pt-table-wrap{overflow-x:auto}.pt-table{border-collapse:collapse;width:100%;font-size:.82rem}.pt-table th{text-align:left;text-transform:uppercase;letter-spacing:.03em;color:var(--ak-muted);border-bottom:1px solid var(--ak-border,#e2e8f0);padding:.4rem .6rem;font-size:.72rem}.pt-table td{border-bottom:1px solid #0000000d;padding:.45rem .6rem}.pt-table td.pos,.pt-table td.neg,.pt-table td.neutral{font-weight:600}.pt-sym{font-weight:700}.pt-badge{border-radius:999px;padding:.1rem .5rem;font-size:.7rem;font-weight:700;display:inline-block}.pt-badge-hit{color:#16a34a;background:#16a34a26}.pt-badge-miss{color:#dc2626;background:#dc262626}.pt-badge-open{color:#64748b;background:#64748b26}.pt-badge-wait{color:#b45309;background:#f59e0b2e}.pt-table-click tbody tr{cursor:pointer;transition:background .12s}.pt-table-click tbody tr:hover{background:#00425b0f}.pt-row-active{background:#00425b1a!important}.pt-chevron{color:var(--ak-muted);text-align:right;font-size:1.1rem}.pt-sec-hint{margin:.1rem 0 .6rem;font-size:.76rem}.pt-log-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.pt-log-controls{flex-wrap:wrap;align-items:center;gap:.6rem;margin-left:auto;display:inline-flex}.pt-chip{border:1px solid var(--ak-border,#e2e8f0);cursor:pointer;color:var(--ak-accent,#00425b);background:#00425b14;border-radius:999px;padding:.15rem .6rem;font-size:.74rem}.pt-chip:hover{background:#00425b29}.pt-modal-overlay{z-index:1000;background:#0f172a8c;justify-content:center;align-items:flex-start;padding:4vh 1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.pt-modal{background:var(--ak-card-bg,#fff);border-radius:16px;width:min(680px,100%);padding:1.25rem 1.4rem 1.6rem;box-shadow:0 20px 60px #0000004d}.pt-modal-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.pt-modal-head h3{margin:0;font-size:1.25rem}.pt-modal-trend{margin-left:.4rem;font-size:.95rem;font-weight:700}.pt-modal-name{color:var(--ak-muted);font-size:.95rem;font-weight:500}.pt-modal-head p{margin:.2rem 0 0;font-size:.8rem}.pt-modal-close{cursor:pointer;color:var(--ak-muted);background:0 0;border:none;padding:0 .3rem;font-size:1.6rem;line-height:1}.pt-modal-close:hover{color:#111}.pt-sec{margin-top:1.1rem}.pt-sec h4{margin:0 0 .35rem;font-size:.95rem}.pt-detail-table{border-collapse:collapse;width:100%;font-size:.82rem}.pt-detail-table th{text-align:left;text-transform:uppercase;letter-spacing:.03em;color:var(--ak-muted);border-bottom:1px solid var(--ak-border,#e2e8f0);padding:.3rem .5rem;font-size:.7rem}.pt-detail-table td{border-bottom:1px solid #0000000d;padding:.4rem .5rem}.pt-detail-total td{border-top:2px solid var(--ak-border,#e2e8f0);font-weight:700}.pt-contrib-cell{align-items:center;gap:.5rem;display:flex}.pt-cbar{flex:1;min-width:60px}.pt-cbar-track{background:#00000012;border-radius:4px;height:8px;position:relative}.pt-cbar-track:after{content:"";background:#0003;width:1px;position:absolute;top:0;bottom:0;left:50%}.pt-cbar-fill{border-radius:4px;position:absolute;top:0;bottom:0}.pt-cbar-fill.pos{background:var(--ak-pos,#16a34a)}.pt-cbar-fill.neg{background:var(--ak-neg,#dc2626)}.pt-detail-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.6rem 1rem;display:grid}.pt-detail-grid>div{flex-direction:column;display:flex}.pt-detail-grid span{font-size:.72rem}.pt-detail-grid b{font-size:1rem}.ak-mini-click{cursor:pointer;transition:box-shadow .12s,transform .12s}.ak-mini-click:hover{transform:translateY(-1px);box-shadow:0 4px 16px #0000001a}.ak-kpi-click{cursor:pointer;text-align:left;border:1px solid var(--ak-border,#e2e8f0);font:inherit;transition:box-shadow .12s,transform .12s;position:relative}.ak-kpi-click:hover{transform:translateY(-1px);box-shadow:0 4px 16px #0000001a}.ak-kpi-more{color:var(--ak-accent,#00425b);margin-top:.4rem;font-size:.7rem;font-weight:600;display:block}.ak-detail-sec{margin-top:1.1rem}.ak-detail-sec h4{margin:0 0 .4rem;font-size:.95rem}.ak-detail-spark{flex-direction:column;gap:.25rem;margin-bottom:.5rem;display:flex}.ak-detail-spark span{font-size:.72rem}.ak-detail-cta{width:100%;margin-top:1.2rem}.ak-pred-card{border-left:4px solid #0000}.ak-pred-dot{vertical-align:baseline;border-radius:50%;width:10px;height:10px;margin-right:.4rem;display:inline-block}.ak-pred-symbol{align-items:center;display:inline-flex}.ak-pred-company{color:var(--ak-muted);margin-top:.1rem;font-size:.74rem;font-weight:500;display:block}.pt-name{color:var(--ak-muted);font-size:.84rem}.ak-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;margin:.25rem 0 .5rem;display:flex}.ak-toolbar-filters{flex-wrap:wrap;gap:.4rem;display:inline-flex}.ak-filter-chip{border:1px solid var(--ak-border,#e2e8f0);cursor:pointer;color:#334155;background:#fff;border-radius:999px;padding:.3rem .85rem;font-size:.82rem;transition:background .12s,color .12s,border-color .12s}.ak-filter-chip:hover{background:#00425b0f}.ak-filter-chip.active{background:var(--ak-accent,#00425b);border-color:var(--ak-accent,#00425b);color:#fff}.ak-toolbar-controls{flex-wrap:wrap;align-items:center;gap:.6rem;display:inline-flex}.ak-toolbar-search{min-width:200px}.ak-toolbar-sort{color:var(--ak-muted);align-items:center;gap:.4rem;font-size:.82rem;display:inline-flex}.ak-toolbar-count{margin:0 0 .6rem;font-size:.78rem}.ak-chart-tip{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:.5rem .65rem;font-size:.8rem;box-shadow:0 8px 24px #0000001f}.ak-chart-tip-date{color:#0f172a;margin-bottom:.3rem;font-weight:700}.ak-chart-tip-row{align-items:center;gap:.45rem;padding:.1rem 0;display:flex}.ak-chart-tip-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.ak-chart-tip-sym{min-width:56px;font-weight:600}.ak-chart-tip-name{color:var(--ak-muted);text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:.78rem;overflow:hidden}.ak-chart-tip-val{font-variant-numeric:tabular-nums;margin-left:auto;padding-left:.6rem}.ak-pred-card-click{cursor:pointer;transition:box-shadow .12s,transform .12s}.ak-pred-card-click:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000001a}.ak-pred-more{color:var(--ak-accent,#00425b);text-align:right;margin-top:.6rem;font-size:.72rem;font-weight:600;display:block}@media (width<=640px){.ak-detail-head h1{font-size:1.3rem}.ak-kpi-value{font-size:1.15rem}}.cs-feed{padding-bottom:2rem}.cs-live-hint{color:var(--ak-muted,#6b7280);margin:.35rem 0 0;font-size:.78rem}.cs-filter{min-width:140px;max-width:160px}.cs-list{flex-direction:column;gap:.65rem;display:flex}.cs-row{background:var(--ak-bg,#fff);border:1px solid var(--ak-border,#e5e7eb);border-left:3px solid var(--ak-muted,#9ca3af);border-radius:10px;padding:.85rem 1rem}.cs-dir-bullish{border-left-color:var(--ak-pos,#16a34a)}.cs-dir-bearish{border-left-color:var(--ak-neg,#dc2626)}.cs-dir-neutral{border-left-color:var(--ak-muted,#9ca3af)}.cs-row-top{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.4rem;display:flex}.cs-ticker{letter-spacing:.03em;color:var(--ak-accent,#00425b);min-width:3.2rem;font-size:.82rem;font-weight:700}.cs-score-bar{background:var(--ak-bg-soft,#f8fafc);border-radius:4px;flex:1;min-width:100px;max-width:180px;height:1.1rem;position:relative;overflow:hidden}.cs-score-fill{background:linear-gradient(90deg,#00425b,#16a34a);border-radius:4px;height:100%;transition:width .3s}.cs-score-num{color:#111;justify-content:center;align-items:center;font-size:.68rem;font-weight:700;display:flex;position:absolute;inset:0}.cs-velocity{color:var(--ak-muted);white-space:nowrap;font-size:.75rem;font-weight:600}.cs-direction{text-transform:uppercase;letter-spacing:.04em;border-radius:4px;padding:.15rem .45rem;font-size:.68rem;font-weight:700}.cs-direction-bullish{color:#16a34a;background:#16a34a1f}.cs-direction-bearish{color:#dc2626;background:#dc26261a}.cs-direction-neutral{color:#6b7280;background:#6b72801f}.cs-headline{margin:0 0 .35rem;font-size:.95rem;font-weight:600;line-height:1.35}.cs-headline a{color:inherit;text-decoration:none}.cs-headline a:hover{color:var(--ak-accent);text-decoration:underline}.cs-rationale{color:var(--ak-muted);margin:0 0 .4rem;font-size:.82rem;line-height:1.4}.cs-row-meta{color:var(--ak-muted);flex-wrap:wrap;gap:.5rem .85rem;font-size:.72rem;display:flex}.cs-priced-in{color:#b45309;font-weight:600}.cs-horizon{text-transform:capitalize}.cs-empty,.cs-error{text-align:center;border:1px dashed var(--ak-border);background:var(--ak-bg-soft,#f8fafc);border-radius:10px;padding:2rem 1rem}.cs-error{color:var(--ak-neg,#dc2626);background:#dc26260d;border-color:#dc26264d}[data-theme=dark] .cs-score-num{color:#e6edf3}.cs-row-click{cursor:pointer;transition:box-shadow .12s,transform .12s}.cs-row-click:hover{transform:translateY(-1px);box-shadow:0 4px 16px #0000001a}.cs-row-more{color:var(--ak-accent,#00425b);margin-left:auto;font-weight:600}.cs-company{color:var(--ak-muted);font-size:.78rem;font-weight:500}.cs-detail-company{color:var(--ak-muted);font-size:.9rem;font-weight:500}.cs-detail-headline{margin:0 0 .5rem;font-size:1.05rem;line-height:1.35}.cs-detail-headline a{color:var(--ak-accent,#00425b);text-decoration:none}.cs-detail-headline a:hover{text-decoration:underline}.cs-detail-summary{margin:0 0 .6rem;font-size:.9rem;line-height:1.5}.cs-detail-rationale{background:var(--ak-bg-soft,#f8fafc);border-radius:8px;margin:0 0 .6rem;padding:.55rem .7rem;font-size:.85rem}.cs-detail-sec{margin-top:1.1rem}.cs-detail-sec h4{margin:0 0 .35rem;font-size:.95rem}.cs-detail-hint{margin:0 0 .55rem;font-size:.76rem}.cs-detail-table{border-collapse:collapse;width:100%;font-size:.84rem}.cs-detail-table td{border-bottom:1px solid #0000000d;padding:.4rem .5rem}.cs-detail-table td:nth-child(2){text-align:right;white-space:nowrap;font-weight:700}.cs-detail-table td:nth-child(3){font-size:.76rem}.cs-detail-total td{border-top:2px solid var(--ak-border,#e2e8f0);font-weight:800}.cs-detail-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.6rem 1rem;display:grid}.cs-detail-grid>div{flex-direction:column;display:flex}.cs-detail-grid span{font-size:.72rem}.cs-detail-grid b{text-transform:capitalize;font-size:1rem}.pt-refresh{margin-bottom:1rem}.pt-refresh-row{flex-wrap:wrap;align-items:flex-end;gap:1.25rem 2rem;display:flex}.pt-refresh-block{flex-direction:column;gap:.5rem;display:flex}.pt-refresh-label{text-transform:uppercase;letter-spacing:.04em;color:var(--ak-muted,#64748b);font-size:.72rem;font-weight:700}.pt-refresh-chips{flex-wrap:wrap;gap:.4rem;display:flex}.pt-refresh-hint{margin:.75rem 0 0;font-size:.78rem}.pt-refresh-msg{color:var(--ak-text,#1e293b);background:#3b82f61a;border-radius:8px;margin:.5rem 0 0;padding:.5rem .7rem;font-size:.82rem}.pk-module{--pk-accent:#4aa464;--pk-accent-hover:#3d8b53;--pk-danger:#c0392b;width:100%}.pk-page{max-width:1200px;margin:0 auto;padding:1.25rem 1.25rem 4rem}.pk-back{color:var(--text-muted);margin-bottom:.75rem;font-size:.85rem;text-decoration:none;display:inline-block}.pk-back:hover{color:var(--pk-accent)}.pk-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.pk-head h1{color:var(--text-heading);margin:0;font-size:1.5rem}.pk-sub,.pk-muted{color:var(--text-muted);margin:.25rem 0 0;font-size:.85rem}.pk-head-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.pk-title-input{color:var(--text-heading);background:0 0;border:none;border-bottom:2px solid #0000;flex:1;min-width:200px;padding:.2rem 0;font-size:1.4rem;font-weight:700}.pk-title-input:focus{border-bottom-color:var(--pk-accent);outline:none}.pk-btn{border:1px solid var(--border);background:var(--bg-card);color:var(--text);cursor:pointer;border-radius:8px;padding:.5rem .9rem;font-size:.85rem;transition:all .15s}.pk-btn:hover{border-color:var(--pk-accent);color:var(--pk-accent)}.pk-btn-primary{background:var(--pk-accent);border-color:var(--pk-accent);color:#fff}.pk-btn-primary:hover{background:var(--pk-accent-hover);border-color:var(--pk-accent-hover);color:#fff}.pk-btn-danger:hover{border-color:var(--pk-danger);color:var(--pk-danger)}.pk-btn-sm{padding:.3rem .6rem;font-size:.78rem}.pk-btn-xs{padding:.15rem .45rem;font-size:.78rem;line-height:1}.pk-input{border:1px solid var(--border);background:var(--bg-card);color:var(--text);border-radius:8px;width:100%;padding:.45rem .6rem;font-size:.88rem}.pk-input:focus{border-color:var(--pk-accent);outline:none}.pk-input:disabled{background:var(--bg);color:var(--text-muted)}.pk-input-sm{width:auto;padding:.45rem .6rem}.pk-input-xs{padding:.3rem .4rem;font-size:.8rem}.pk-input-num{text-align:right;min-width:80px}.pk-input-text{min-width:160px}.pk-create{gap:.5rem;max-width:520px;margin-bottom:1.25rem;display:flex}.pk-create .pk-input{flex:1}.pk-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;margin-bottom:1rem;padding:1.1rem 1.25rem}.pk-card h2{color:var(--text-heading);margin:0 0 .9rem;font-size:1.05rem}.pk-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.9rem;display:flex}.pk-card-head h2{margin:0}.pk-form-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.8rem;display:grid}.pk-form-grid label{color:var(--text-muted);flex-direction:column;gap:.3rem;font-size:.8rem;display:flex}.pk-check{align-items:center;flex-direction:row!important;gap:.4rem!important}.pk-inline-sum{border-top:1px dashed var(--border);color:var(--text-muted);flex-wrap:wrap;gap:.4rem 1.2rem;margin-top:.9rem;padding-top:.8rem;font-size:.85rem;display:flex}.pk-inline-sum b{color:var(--text-heading)}.pk-hint{color:var(--text-muted);margin:.8rem 0 0;font-size:.8rem}.pk-hint b{color:var(--text-heading)}.pk-table-wrap{overflow-x:auto}.pk-table{border-collapse:collapse;width:100%;font-size:.85rem}.pk-table th{text-align:left;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);border-bottom:2px solid var(--border);padding:.5rem .6rem;font-size:.72rem}.pk-table td{border-bottom:1px solid var(--border);padding:.45rem .6rem}.pk-table-pos td{padding:.3rem .4rem}.pk-cell-strong{color:var(--text-heading);font-weight:600}.pk-row-click{cursor:pointer}.pk-row-click:hover td{background:var(--accent-muted)}.pk-actions{text-align:right;white-space:nowrap}.pk-center{text-align:center}.pk-kg-sums{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.pk-kg-sum{background:var(--bg);border:1px solid var(--border);border-radius:8px;align-items:center;gap:.5rem;padding:.4rem .7rem;font-size:.8rem;display:flex}.pk-kg-sum b{color:var(--text-heading)}.pk-kg-total{background:var(--pk-accent);border-color:var(--pk-accent);color:#fff}.pk-kg-total b{color:#fff}.pk-kpi-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.8rem;margin-bottom:1rem;display:grid}.pk-kpi{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:.9rem 1rem}.pk-kpi-label{text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);font-size:.72rem}.pk-kpi-val{color:var(--text-heading);margin-top:.3rem;font-size:1.25rem;font-weight:700}.pk-card-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.9rem;display:grid}.pk-proj-card{background:var(--bg-card);border:1px solid var(--border);cursor:pointer;border-radius:12px;padding:1rem 1.1rem;transition:all .15s}.pk-proj-card:hover{border-color:var(--pk-accent);transform:translateY(-2px)}.pk-proj-name{color:var(--text-heading);font-size:1.05rem;font-weight:700}.pk-proj-meta{color:var(--text-muted);margin-top:.3rem;font-size:.8rem}.pk-proj-foot{justify-content:space-between;align-items:center;margin-top:.9rem;display:flex}.pk-result-grid{flex-direction:column;gap:.1rem;display:flex}.pk-result-row{border-bottom:1px solid var(--border);justify-content:space-between;padding:.45rem 0;font-size:.9rem;display:flex}.pk-result-row span:first-child{color:var(--text-muted)}.pk-result-row span:last-child{color:var(--text-heading)}.pk-result-row.bold span{font-weight:700}.pk-result-row.accent span:last-child{color:var(--pk-accent);font-size:1.05rem}.pk-result-sep{height:.5rem}.pk-seg{border:1px solid var(--border);border-radius:8px;display:inline-flex;overflow:hidden}.pk-seg-btn{background:var(--bg-card);color:var(--text-muted);cursor:pointer;border:none;padding:.4rem .8rem;font-size:.8rem}.pk-seg-btn.active{background:var(--pk-accent);color:#fff}.pk-empty{text-align:center;color:var(--text-muted);border:1px dashed var(--border);background:var(--bg-card);border-radius:12px;padding:2.5rem 1rem}.pk-error{color:var(--pk-danger);margin:0 0 1rem;font-size:.85rem}.pk-catalog-form .pk-btn-primary{margin-top:.9rem}@media (width<=640px){.pk-page{padding:1rem .8rem 4rem}.pk-head{flex-direction:column;align-items:flex-start}}.st-module{--st-accent:#00425b;--st-surface:var(--surface,#fff);--st-border:var(--border,#e2e8f0);--st-muted:var(--text-muted,#64748b)}.st-page{flex-direction:column;gap:1.25rem;display:flex}.st-page-head h1{margin:0 0 .25rem;font-size:1.5rem}.st-sub,.st-muted{color:var(--st-muted)}.st-sub{margin:0;font-size:.9rem}.st-muted{font-size:.85rem}.st-card{background:var(--st-surface);border:1px solid var(--st-border);border-radius:12px;padding:1.1rem 1.25rem}.st-card h2{margin:0 0 .9rem;font-size:1.05rem}.st-input{border:1px solid var(--st-border);background:var(--st-surface);width:100%;color:inherit;font:inherit;border-radius:8px;padding:.5rem .65rem}.st-input-sm{width:5.5rem;padding:.3rem .45rem}.st-btn{border:1px solid var(--st-border);background:var(--st-surface);color:inherit;font:inherit;cursor:pointer;border-radius:8px;padding:.5rem .9rem}.st-btn:hover{background:#00425b0f}.st-btn:disabled{opacity:.55;cursor:not-allowed}.st-btn-primary{background:var(--st-accent);border-color:var(--st-accent);color:#fff}.st-btn-primary:hover{background:#00354a}.st-btn-danger{color:#dc2626;border-color:#dc262666}.st-btn-danger:hover{background:#dc262614}.st-btn-sm{padding:.35rem .65rem;font-size:.82rem}.st-error{color:#dc2626;margin:.25rem 0;font-size:.85rem}.st-upload-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem;margin-bottom:.9rem;display:grid}.st-upload-grid label{flex-direction:column;gap:.3rem;font-size:.85rem;display:flex}.st-progress{margin:.6rem 0 .4rem}.st-progress-bar{background:#00000014;border-radius:999px;height:8px;overflow:hidden}.st-progress-fill{background:var(--st-accent);border-radius:999px;height:100%;transition:width .15s}.st-progress-label{color:var(--st-muted,#64748b);font-variant-numeric:tabular-nums;margin-top:.35rem;font-size:.8rem;display:block}.st-model-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;display:grid}.st-model-card{border:1px solid var(--st-border);background:var(--bg-card,#fff);border-radius:12px;flex-direction:column;transition:box-shadow .15s,transform .15s,border-color .15s;display:flex;overflow:hidden}.st-model-card:hover{box-shadow:var(--shadow);border-color:var(--accent);transform:translateY(-2px)}.st-model-thumb-link{text-decoration:none;display:block}.st-model-thumb{aspect-ratio:4/3;background:linear-gradient(135deg, var(--surface) 0%, var(--bg-card,#fff) 100%);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.st-model-thumb img{object-fit:cover;width:100%;height:100%;display:block}.st-model-thumb-empty{color:var(--st-muted);text-align:center;flex-direction:column;align-items:center;gap:.4rem;padding:.5rem;display:flex}.st-model-thumb-cube{color:var(--accent);opacity:.5;font-size:2.6rem;line-height:1}.st-model-thumb-hint{max-width:12rem;font-size:.72rem}.st-model-badge{letter-spacing:.04em;color:#fff;background:#0f172ab8;border-radius:5px;padding:.12rem .45rem;font-size:.66rem;font-weight:700;position:absolute;top:8px;left:8px}.st-model-badge-shared{background:#15803dd9;left:auto;right:8px}.st-model-body{flex-direction:column;gap:.25rem;padding:.7rem .8rem .2rem;display:flex}.st-model-name{color:var(--text-heading,inherit);font-weight:600;text-decoration:none}.st-model-name:hover{color:var(--accent);text-decoration:none}.st-model-meta{color:var(--st-muted);font-size:.76rem}.st-model-cost{font-size:.8rem;font-weight:600}.st-model-actions{flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:auto;padding:.5rem .8rem .8rem;display:flex}.st-model-actions .st-btn{flex:none}.st-btn-shared{border-color:var(--st-accent);color:var(--st-accent);background:#00425b1a;font-weight:600}.st-model-shared-badge{letter-spacing:.03em;color:#15803d;background:#15803d1f;border-radius:999px;padding:.15rem .5rem;font-size:.72rem;font-weight:600}.st-readonly-badge{color:var(--st-muted);background:#0000000d;border-radius:8px;padding:.35rem .7rem;font-size:.78rem}.st-viewer-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.st-viewer-head h1{margin:.25rem 0 0;font-size:1.4rem}.st-back{color:var(--st-muted);font-size:.85rem;text-decoration:none}.st-back:hover{color:var(--st-accent)}.st-viewer-head-actions{align-items:center;gap:.75rem;display:flex}.st-unit{color:var(--st-muted);align-items:center;gap:.4rem;font-size:.82rem;display:flex}.st-unit .st-input{width:auto}.st-viewer-page{height:calc(100vh - 48px - 4rem);min-height:460px}.st-viewer-layout{flex:auto;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) 360px;align-items:stretch;gap:1.1rem;min-height:0;display:grid}.st-viewer-layout.panel-collapsed{grid-template-columns:1fr}.st-viewer-layout.panel-collapsed .st-panel{display:none}.st-viewer-main{flex-direction:column;gap:.5rem;min-height:0;display:flex}@media (width<=1100px){.st-viewer-page{height:auto}.st-viewer-layout{flex:none;grid-template-rows:auto;grid-template-columns:1fr}.st-viewer-main{height:auto}}.st-viewer-canvas{border:1px solid var(--st-border);background:#eef2f6;border-radius:12px;width:100%;height:100%;overflow:hidden}.st-viewer-placeholder{color:var(--st-muted);justify-content:center;align-items:center;height:100%;display:flex}.st-viewer-banner{color:#92400e;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;margin-bottom:.6rem;padding:.6rem .8rem;font-size:.85rem}.st-viewer-banner-ok{color:#15803d;background:#15803d1f;border-color:#15803d66}.st-hint{margin:.5rem 0 0;font-size:.8rem}.st-viewer-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.6rem;display:flex}.st-mode-switch{border:1px solid var(--st-border);background:var(--st-surface);border-radius:9px;display:inline-flex;overflow:hidden}.st-mode-btn{font:inherit;cursor:pointer;color:var(--st-muted);border:none;border-right:1px solid var(--st-border);background:0 0;padding:.42rem .8rem;font-size:.82rem}.st-mode-btn:last-child{border-right:none}.st-mode-btn:hover{color:var(--st-text,#1f2937);background:#00425b0d}.st-mode-btn.active{background:var(--st-accent);color:#fff}.st-exposure{color:var(--st-muted);border:1px solid var(--st-border);background:var(--st-surface);border-radius:9px;align-items:center;gap:.5rem;padding:.3rem .7rem;font-size:.8rem;display:inline-flex}.st-exposure input[type=range]{width:120px;accent-color:var(--st-accent)}.st-exposure-val{font-variant-numeric:tabular-nums;text-align:right;min-width:2.4em;color:var(--st-text,#1f2937)}.st-view-toolbar{margin-top:-.2rem}.st-view-switch{border:1px solid var(--st-border);background:var(--st-surface);border-radius:9px;flex-wrap:wrap;display:inline-flex;overflow:hidden}.st-view-switch .st-mode-btn:disabled{opacity:.45;cursor:not-allowed}.st-section-ctrl{border:1px solid var(--st-border);background:var(--st-surface);color:var(--st-muted);border-radius:9px;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.3rem .6rem;font-size:.8rem;display:inline-flex}.st-section-toggle{cursor:pointer;align-items:center;gap:.35rem;display:inline-flex}.st-section-slider{width:150px;accent-color:var(--st-accent)}.st-section-dirs{flex-wrap:wrap;gap:.25rem;display:inline-flex}.st-section-dir{cursor:pointer;border:1px solid var(--st-border);color:var(--st-text,#1f2937);background:#fff;border-radius:7px;align-items:center;gap:.28rem;padding:.3rem .5rem;font-size:.76rem;font-weight:600;line-height:1;display:inline-flex}.st-section-dir:hover{border-color:var(--st-accent)}.st-section-dir.active{background:var(--st-accent);border-color:var(--st-accent);color:#fff}.st-section-dir-icon{font-size:.85rem}.st-note{resize:vertical;min-height:3.2em;font:inherit;line-height:1.35}.st-stage{border-radius:14px;flex:auto;min-height:0;position:relative;overflow:hidden}.st-stage .st-viewer-canvas{border-radius:14px}@media (width<=1100px){.st-stage{min-height:70vh}}.st-stage-tr{z-index:5;flex-direction:column;align-items:flex-end;gap:.5rem;display:flex;position:absolute;top:12px;right:12px}.st-stage-tl{z-index:5;flex-wrap:wrap;align-items:center;gap:.5rem;display:inline-flex;position:absolute;top:12px;left:12px}.st-stage-bc{z-index:5;flex-wrap:wrap;justify-content:center;align-items:center;gap:.6rem;max-width:calc(100% - 24px);display:inline-flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.st-fab{-webkit-backdrop-filter:blur(8px);font:inherit;color:var(--st-text,#1f2937);cursor:pointer;background:#ffffffeb;border:1px solid #0f172a1f;border-radius:10px;padding:.45rem .75rem;font-size:.82rem;box-shadow:0 4px 14px #0f172a1f}.st-fab:hover{background:#fff}.st-fab.active{border-color:var(--st-accent);color:var(--st-accent)}.st-fab:disabled{opacity:.5;cursor:not-allowed}.st-views{position:relative}.st-views-menu{-webkit-backdrop-filter:blur(8px);z-index:10;background:#fffffff7;border:1px solid #0f172a1f;border-radius:12px;flex-direction:column;min-width:210px;padding:.35rem;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 30px #0f172a2e}.st-views-item{font:inherit;text-align:left;cursor:pointer;color:var(--st-text,#1f2937);background:0 0;border:none;border-radius:8px;padding:.5rem .7rem;font-size:.85rem}.st-views-item:hover{background:#00425b12}.st-views-item.checked{color:var(--st-accent);font-weight:600}.st-views-item:disabled{opacity:.45;cursor:not-allowed}.st-views-sep{background:#0f172a1a;height:1px;margin:.3rem .2rem}.st-stage-bc .st-mode-switch,.st-stage-bc .st-exposure{-webkit-backdrop-filter:blur(8px);background:#ffffffeb;box-shadow:0 4px 14px #0f172a1f}.st-stage-bc .st-exposure{padding:.35rem .7rem}.st-stage-bc .st-exposure input[type=range]{width:90px}.st-section-label{color:var(--st-text,#1f2937);font-size:.8rem;font-weight:600}.st-stage-tl.st-section-ctrl{-webkit-backdrop-filter:blur(8px);background:#ffffffeb;border-color:#0f172a1f;box-shadow:0 4px 14px #0f172a1f}@media (width<=640px){.st-stage-bc{gap:.4rem;bottom:8px}.st-stage-bc .st-mode-btn{padding:.36rem .55rem;font-size:.78rem}.st-fab{padding:.4rem .6rem;font-size:.78rem}}.st-sec-popup{max-height:76vh;padding-right:.25rem;overflow:auto}.st-sec-popup .st-parts{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));align-items:start;gap:.75rem;display:grid}.st-sec-popup .st-layers{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));align-items:start;gap:.6rem;display:grid}@media (width<=700px){.st-sec-popup .st-parts,.st-sec-popup .st-layers{grid-template-columns:1fr}}.st-dock{background:var(--st-surface);border-left:1px solid var(--st-border);z-index:1500;flex-direction:column;width:min(680px,96vw);height:100vh;animation:.16s ease-out st-dock-in;display:flex;position:fixed;top:0;right:0;box-shadow:-16px 0 40px #0f172a2e}@keyframes st-dock-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.st-dock-head{border-bottom:1px solid var(--st-border);justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 1rem;display:flex}.st-dock-head h3{margin:0;font-size:1.05rem}.st-dock-close{cursor:pointer;color:var(--st-muted);background:0 0;border:none;padding:0 .3rem;font-size:1.6rem;line-height:1}.st-dock-close:hover{color:var(--st-accent)}.st-dock-body{flex:auto;min-height:0;margin-top:0;padding:.9rem 1rem 1.1rem;overflow:auto}.st-dock-body .st-pb-tablewrap{max-height:none}.st-pb-toolbar{flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.6rem;display:flex}.st-pb-search{border:1px solid var(--st-border);min-width:130px;font:inherit;background:var(--st-surface);color:inherit;border-radius:8px;flex:150px;padding:.4rem .6rem;font-size:.82rem}.st-pb-groupby{color:var(--st-muted);align-items:center;gap:.3rem;font-size:.76rem;display:inline-flex}.st-pb-groupby .st-input{width:auto;padding:.3rem .45rem;font-size:.8rem}.st-chip{border:1px solid var(--st-border);background:var(--st-surface);font:inherit;cursor:pointer;color:inherit;white-space:nowrap;border-radius:999px;padding:.32rem .62rem;font-size:.75rem}.st-chip:hover{border-color:var(--st-accent)}.st-chip.on{background:var(--st-accent);border-color:var(--st-accent);color:#fff}.st-pb-count{color:var(--st-muted);margin-left:auto;font-size:.75rem}.st-pb-table-actions{justify-content:flex-end;margin-bottom:.4rem;display:flex}.st-pb-tablewrap{border:1px solid var(--st-border);border-radius:10px;max-height:62vh;overflow:auto}.st-pb-table{border-collapse:collapse;width:100%;font-size:.8rem}.st-pb-table thead th{z-index:1;background:var(--st-surface);text-align:left;border-bottom:1px solid var(--st-border);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;padding:.5rem .55rem;font-weight:600;position:sticky;top:0}.st-pb-table thead th:hover{color:var(--st-accent)}.st-pb-table th.c-num,.st-pb-table td.c-num{text-align:right;white-space:nowrap}.st-pb-table th.c-eye,.st-pb-table td.c-eye{text-align:center;width:30px;padding-left:4px;padding-right:4px}.st-pb-table tbody td{border-bottom:1px solid var(--st-border);padding:.34rem .55rem}.st-pb-table tbody tr{cursor:pointer}.st-pb-table tbody tr:hover{background:#00425b0f}.st-pb-table tbody tr.selected{background:#00425b1f}.st-pb-table tbody tr.hidden td{opacity:.5}.st-pb-table td.c-name{text-overflow:ellipsis;white-space:nowrap;max-width:260px;overflow:hidden}.st-pb-table tfoot td{background:var(--st-surface);border-top:2px solid var(--st-border);padding:.5rem .55rem;position:sticky;bottom:0}.st-pb-table .st-swatch{vertical-align:middle;border-radius:2px;width:10px;height:10px;margin-right:4px;display:inline-block}.st-nav{z-index:5;flex-direction:column;align-items:flex-start;gap:.5rem;display:flex;position:absolute;bottom:14px;left:12px}.st-nav-group{-webkit-backdrop-filter:blur(8px);background:#ffffffeb;border:1px solid #0f172a1f;border-radius:12px;gap:4px;padding:4px;display:inline-flex;box-shadow:0 4px 14px #0f172a1f}.st-nav-btn{min-width:30px;height:30px;font:inherit;color:var(--st-text,#1f2937);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0 6px;font-size:.9rem;line-height:1;display:inline-flex}.st-nav-btn:hover{background:#0f172a12}.st-nav-btn.active{background:var(--st-accent,#2563eb);color:#fff}.st-nav-btn.wide{gap:4px;padding:0 10px;font-size:.78rem}.st-nav-pill{-webkit-backdrop-filter:blur(8px);font:inherit;color:var(--st-text,#1f2937);cursor:pointer;background:#ffffffeb;border:1px solid #0f172a1f;border-radius:12px;align-items:center;gap:4px;padding:.45rem .75rem;font-size:.82rem;display:inline-flex;box-shadow:0 4px 14px #0f172a1f}.st-nav-pill:hover{background:#fff}.st-nav-pill.active{border-color:var(--st-accent);color:var(--st-accent)}.st-views-up .st-views-menu{inset:auto auto calc(100% + 6px) 0}.st-nav-dpad{grid-template-rows:repeat(3,15px);grid-template-columns:repeat(3,15px);gap:2px;padding:5px;display:grid}.st-nav-dpad .st-nav-btn{border-radius:5px;width:15px;min-width:15px;height:15px;padding:0;font-size:.55rem}.st-nav-dpad .up{grid-area:1/2}.st-nav-dpad .left{grid-area:2/1}.st-nav-dpad .center{grid-area:2/2}.st-nav-dpad .right{grid-area:2/3}.st-nav-dpad .down{grid-area:3/2}@media (width<=640px){.st-nav{gap:.35rem}.st-nav-btn{min-width:26px;height:26px;font-size:.82rem}.st-nav-dpad .st-nav-btn{width:15px;min-width:15px;height:15px;font-size:.55rem}}.st-rt-status{z-index:6;color:#fff;font-variant-numeric:tabular-nums;-webkit-backdrop-filter:blur(8px);background:#111827d1;border-radius:999px;padding:.4rem .9rem;font-size:.8rem;position:absolute;top:12px;left:50%;transform:translate(-50%);box-shadow:0 4px 14px #0f172a40}.st-rt-status.warn{background:#b45309eb}.st-walk-overlay{z-index:6;pointer-events:none;justify-content:center;align-items:flex-end;padding-bottom:64px;display:flex;position:absolute;inset:0}.st-walk-card{pointer-events:auto;-webkit-backdrop-filter:blur(8px);text-align:center;background:#fffffff0;border:1px solid #0f172a1f;border-radius:12px;flex-direction:column;align-items:center;gap:.4rem;max-width:440px;padding:.7rem 1rem;font-size:.82rem;display:flex;box-shadow:0 10px 28px #0f172a33}.st-walk-card span{color:var(--st-muted);line-height:1.4}.st-panel{flex-direction:column;gap:1rem;min-height:0;padding-right:.4rem;display:flex;overflow-y:auto}@media (width<=1100px){.st-panel{overflow:visible}}.st-sec{background:var(--st-surface);border:1px solid var(--st-border);border-radius:12px;padding:.9rem 1rem}.st-sec h3{margin:0 0 .7rem;font-size:.95rem}.st-sec-head{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.st-sec-head h3{margin:0 0 .7rem}.st-collapsible .st-sec-head{align-items:center}.st-sec-toggle{min-width:0;font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:none;flex:auto;align-items:center;gap:.45rem;padding:0;display:flex}.st-sec-toggle h3{margin:0}.st-sec-caret{color:var(--st-muted);flex:none;font-size:.75rem;line-height:1;transition:transform .15s}.st-collapsible.is-open .st-sec-caret{transform:rotate(90deg)}.st-sec-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.st-sec-body{margin-top:.7rem}.st-link-btn{color:var(--st-accent);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-size:.78rem}.st-link-btn:hover{text-decoration:underline}.st-field{flex-direction:column;gap:.3rem;margin-top:.6rem;font-size:.82rem;display:flex}.st-selected-name{margin-bottom:.2rem;font-weight:600}.st-layers{flex-direction:column;gap:.25rem;max-height:220px;display:flex;overflow-y:auto}.st-layer{border:1px solid var(--st-border);border-radius:8px;flex-direction:column;gap:.35rem;padding:.35rem .55rem;display:flex}.st-layer-head{grid-template-columns:auto 1fr auto auto;align-items:center;gap:.5rem;display:grid}.st-layer-mat{width:100%}.st-layer.selected{background:#2563eb0f;border-color:#2563eb;box-shadow:inset 0 0 0 1px #2563eb}.st-layer-name{text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;font-weight:600;overflow:hidden}.st-layer-select{font:inherit;text-align:left;cursor:pointer;color:inherit;background:0 0;border:none;padding:0}.st-layer-select:hover{color:var(--st-accent);text-decoration:underline}.st-layer-meta{font-variant-numeric:tabular-nums;font-size:.74rem}.st-layer-count{color:var(--st-muted);font-variant-numeric:tabular-nums;background:#0000000d;border-radius:999px;padding:.05rem .45rem;font-size:.72rem}.st-eye{cursor:pointer;opacity:.9;filter:grayscale(.2);background:0 0;border:none;padding:.1rem .2rem;font-size:.95rem;line-height:1}.st-eye:hover{opacity:1}.st-eye.off{opacity:.5}.st-eye.partial{opacity:.75}.st-parts{flex-direction:column;gap:.3rem;max-height:280px;display:flex;overflow-y:auto}.st-part-row{grid-template-columns:auto 1fr;align-items:center;gap:.35rem;display:grid}.st-part-row.hidden .st-part{opacity:.5}.st-part{text-align:left;border:1px solid var(--st-border);background:var(--st-surface);cursor:pointer;font:inherit;border-radius:8px;grid-template-columns:1fr auto;gap:.1rem .5rem;padding:.45rem .6rem;display:grid}.st-part:hover{background:#00425b0d}.st-part.active{background:#2563eb14;border-color:#2563eb;box-shadow:inset 0 0 0 1px #2563eb}.st-part-row.selected .st-part{background:#2563eb14;border-color:#2563eb}.st-part-row.flash .st-part{animation:1.2s ease-out st-row-flash}@keyframes st-row-flash{0%{background:#2563eb73;box-shadow:0 0 0 2px #2563eb}to{background:#2563eb14;box-shadow:0 0 #2563eb00}}.st-note-flag{margin-right:.25rem}.st-part-name{font-size:.85rem;font-weight:600}.st-part-area{color:var(--st-muted);text-align:right;align-self:center;font-size:.8rem}.st-part-meta{color:var(--st-muted);grid-column:1/-1;align-items:center;gap:.35rem;font-size:.78rem;display:flex}.st-swatch{border:1px solid #00000026;border-radius:3px;width:11px;height:11px;display:inline-block}.st-equip-add{gap:.5rem;margin-bottom:.7rem;display:flex}.st-equip-add .st-input{flex:1}.st-equip-list{flex-direction:column;gap:.5rem;display:flex}.st-equip{border:1px solid var(--st-border);border-radius:8px;padding:.5rem .6rem}.st-equip-label{margin-bottom:.35rem;font-size:.85rem;font-weight:600}.st-equip-fields{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.st-equip-unit,.st-equip-eur,.st-equip-x{color:var(--st-muted);font-size:.8rem}.st-equip-del{color:#dc2626;cursor:pointer;background:0 0;border:none;margin-left:auto;padding:0 .2rem;font-size:1.1rem;line-height:1}.st-mat-head-actions{align-items:center;gap:.5rem;display:flex}.st-mat-hint{margin:0}.st-modal-backdrop{z-index:1000;background:#0f172a73;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.st-modal{background:#fff;border-radius:14px;flex-direction:column;width:min(960px,100%);max-height:88vh;display:flex;overflow:hidden;box-shadow:0 24px 60px #0000004d}.st-modal-head{border-bottom:1px solid var(--st-border);justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.1rem;display:flex}.st-modal-head h3{margin:0;font-size:1rem}.st-modal-body{padding:.9rem 1.1rem;overflow:auto}.st-modal-foot{border-top:1px solid var(--st-border);align-items:center;gap:.6rem;padding:.7rem 1.1rem;display:flex}.st-modal-foot-status{margin-right:auto;font-size:.8rem}.st-modal-close{color:var(--st-muted);cursor:pointer;background:0 0;border:none;padding:0 .3rem;font-size:1.4rem;line-height:1}.st-modal-close:hover{color:#111}.st-mat-table{flex-direction:column;gap:.35rem;min-width:720px;display:flex}.st-mat-row{grid-template-columns:32px minmax(140px,1.6fr) minmax(96px,1fr) 68px 68px 130px 130px 84px 76px;align-items:center;gap:.4rem;display:grid}.st-mat-row-head{color:var(--st-muted);text-transform:uppercase;letter-spacing:.03em;padding:0 .1rem;font-size:.7rem}.st-mat-row-head span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.st-mat-color{border:1px solid var(--st-border);cursor:pointer;background:0 0;border-radius:6px;width:32px;height:30px;padding:0}.st-mat-row .st-input-sm{width:100%;min-width:0;padding:.3rem .4rem}.st-mat-price{align-items:center;gap:.25rem;display:flex}.st-mat-unit{color:var(--st-muted);white-space:nowrap;font-size:.72rem}.st-mat-del{color:#dc2626;cursor:pointer;white-space:nowrap;background:#fef2f2;border:1px solid #fca5a5;border-radius:6px;padding:.3rem .4rem;font-size:.75rem}.st-mat-del:hover{background:#fee2e2}.st-clash-controls{align-items:flex-end;gap:.6rem;margin-bottom:.6rem;display:flex}.st-clash-tol{flex:none;margin:0}.st-clash-tol-input{align-items:center;gap:.3rem;display:flex}.st-clash-tol-input .st-input-sm{width:64px}.st-clash-unit{color:var(--st-muted);font-size:.8rem}.st-clash-controls .st-btn{margin-left:auto}.st-clash-summary{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.5rem;font-size:.85rem;display:flex}.st-clash-count{color:#dc2626;font-weight:700}.st-clash-ok{color:#15803d;font-weight:600}.st-clash-list{flex-direction:column;gap:.3rem;max-height:280px;display:flex;overflow-y:auto}.st-clash-item{text-align:left;border:1px solid var(--st-border);background:var(--st-surface);cursor:pointer;font:inherit;border-radius:8px;grid-template-columns:auto 1fr;align-items:center;gap:.5rem;padding:.4rem .55rem;display:grid}.st-clash-item:hover{background:#dc26260f}.st-clash-item.active{border-color:#dc2626;box-shadow:inset 0 0 0 1px #dc2626}.st-clash-idx{color:#fff;background:#dc2626;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:.75rem;font-weight:700;display:flex}.st-clash-pair{align-items:center;gap:.35rem;min-width:0;font-size:.82rem;display:flex}.st-clash-a,.st-clash-b{white-space:nowrap;text-overflow:ellipsis;flex:1 1 0;overflow:hidden}.st-clash-vs{color:var(--st-muted);flex:none}.st-clash-hint{margin-top:.5rem;font-size:.76rem}.st-cost-group{margin-bottom:.7rem}.st-cost-group-head{border-bottom:1px solid var(--st-border);justify-content:space-between;padding-bottom:.25rem;font-size:.85rem;font-weight:600;display:flex}.st-cost-row{grid-template-columns:1fr auto;gap:0 .5rem;padding:.25rem 0;font-size:.8rem;display:grid}.st-cost-row-detail{grid-column:1/-1;font-size:.74rem}.st-cost-row-amount{font-variant-numeric:tabular-nums}.st-cost-total{border-top:2px solid var(--st-accent);justify-content:space-between;align-items:center;margin-top:.6rem;padding-top:.6rem;font-size:1.05rem;display:flex}.st-cost-total b{color:var(--st-accent)}.st-qty{color:var(--st-muted);flex-wrap:wrap;gap:.25rem 1rem;margin:.2rem 0 .1rem;font-size:.82rem;display:flex}.st-qty b{color:var(--st-text,#1f2937);font-variant-numeric:tabular-nums}.st-qty-src{margin-top:.15rem;font-size:.74rem}.st-group{border:1px solid var(--st-border);border-radius:8px;overflow:hidden}.st-group-head{background:#00425b0d;grid-template-columns:auto auto 1fr auto;align-items:center;gap:.5rem;padding:.35rem .55rem;display:grid}.st-group-caret{cursor:pointer;color:var(--st-muted);background:0 0;border:none;padding:0 .1rem;font-size:.75rem;line-height:1;transition:transform .15s}.st-group:not(.is-collapsed) .st-group-caret{transform:rotate(90deg)}.st-group-head.selected{background:#00425b24}.st-group-name{font:inherit;text-align:left;cursor:pointer;color:inherit;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;padding:0;font-size:.84rem;font-weight:700;overflow:hidden}.st-group-name:hover{color:var(--st-accent);text-decoration:underline}.st-group-count{color:var(--st-muted);font-weight:500}.st-group-qty{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.74rem}.st-group .st-part-row{padding:.15rem .4rem}.st-group .st-part-row:first-of-type{padding-top:.35rem}.st-group .st-part-row:last-child{padding-bottom:.35rem}.st-takeoff-hint{margin:0 0 .6rem;font-size:.78rem}.st-takeoff{flex-direction:column;gap:.45rem;max-height:300px;display:flex;overflow-y:auto}.st-takeoff-row{border:1px solid var(--st-border);border-radius:8px;padding:.45rem .55rem}.st-takeoff-head{justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.35rem;display:flex}.st-takeoff-name{font:inherit;text-align:left;cursor:pointer;color:inherit;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;padding:0;font-size:.84rem;font-weight:600;overflow:hidden}.st-takeoff-name:hover{color:var(--st-accent);text-decoration:underline}.st-takeoff-qty{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.78rem}.st-takeoff-fields{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.st-takeoff-fields .st-input-sm{flex:0 auto;width:auto;min-width:4.5rem}.st-takeoff-fields input.st-input-sm{width:5rem}.st-takeoff-eur{color:var(--st-muted);font-size:.8rem}.st-takeoff-amount{font-variant-numeric:tabular-nums;margin-left:auto;font-size:.84rem;font-weight:600}.st-meas-label{color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;background:#2563eb;border-radius:6px;padding:.18rem .42rem;font:600 .74rem/1 inherit;box-shadow:0 2px 8px #0f172a4d}.st-meas-label-dim{background:#0f766e}.st-meas-label-preview{opacity:.85}.st-meas-dot{pointer-events:none;background:#2563eb;border:2px solid #fff;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 1px #0f172a40}.st-meas-dot-dim{background:#0f766e}.st-meas-snap{pointer-events:none;background:#f59e0b2e;border:2px solid #f59e0b;border-radius:50%;width:16px;height:16px;box-shadow:0 0 0 1px #ffffffb3}.st-meas-snap.on{background:#16a34a38;border-color:#16a34a}.st-meas-banner{z-index:6;color:#fff;-webkit-backdrop-filter:blur(8px);background:#111827db;border-radius:999px;padding:.4rem .9rem;font-size:.8rem;position:absolute;top:12px;left:50%;transform:translate(-50%);box-shadow:0 4px 14px #0f172a40}.st-meas-toolrow{gap:.5rem;margin-bottom:.6rem;display:flex}.st-meas-toolrow .st-btn{flex:1}.st-meas-layer-toggle{color:var(--st-text,#1f2937);cursor:pointer;align-items:center;gap:.4rem;margin-bottom:.6rem;font-size:.82rem;display:flex}.st-meas-layer-toggle input{accent-color:var(--st-accent)}.st-meas-empty,.st-meas-note{margin:0}.st-meas-note{margin-top:.5rem;font-size:.74rem}.st-meas-list{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.st-meas-item{border:1px solid var(--st-border);border-radius:8px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:.5rem;padding:.4rem .55rem;display:grid}.st-meas-icon{font-size:.9rem}.st-meas-main{flex-direction:column;min-width:0;display:flex}.st-meas-len{font-variant-numeric:tabular-nums;font-size:.86rem;font-weight:600}.st-meas-delta{font-variant-numeric:tabular-nums;font-size:.72rem}.st-meas-no{color:var(--st-muted);font-variant-numeric:tabular-nums;font-size:.72rem}.st-meas-del{color:#dc2626;cursor:pointer;background:0 0;border:none;padding:0 .2rem;font-size:1.1rem;line-height:1}.st-meas-del:hover{color:#b91c1c}.st-anno-pin{background:var(--st-accent);color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;border:2px solid #fff;border-radius:999px;justify-content:center;align-items:center;min-width:1.55rem;height:1.55rem;padding:0 .35rem;font:700 .78rem/1 inherit;transition:transform .12s,background .12s;display:flex;transform:translateY(-2px);box-shadow:0 3px 10px #0f172a59}.st-anno-pin:after{content:"";border:5px solid #0000;border-top-color:#fff;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)}.st-anno-pin:hover{transform:translateY(-4px)scale(1.05)}.st-anno-pin.is-active{background:#0f172a;box-shadow:0 0 0 3px #0f172a40,0 3px 12px #0f172a66}.st-anno-pin.is-task{background:#b45309;border-radius:7px}.st-anno-pin.is-task.is-active{background:#0f172a}.st-anno-pin.is-done{opacity:.72;background:#15803d}.st-anno-form{z-index:7;-webkit-backdrop-filter:blur(8px);background:#fffffff7;border:1px solid #0f172a24;border-radius:12px;flex-direction:column;gap:.5rem;width:min(340px,90%);padding:.75rem;display:flex;position:absolute;top:56px;left:50%;transform:translate(-50%);box-shadow:0 14px 34px #0f172a38}.st-anno-form-head{font-size:.9rem;font-weight:700}.st-anno-form .st-input{width:100%}.st-anno-form-actions{justify-content:flex-end;gap:.5rem;display:flex}.st-anno-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.st-anno-item{border:1px solid var(--st-border);border-radius:10px;overflow:hidden}.st-anno-item.is-active{border-color:var(--st-accent)}.st-anno-row{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;grid-template-columns:auto 1fr;align-items:center;gap:.55rem;padding:.5rem .6rem;display:grid}.st-anno-row:hover{background:var(--st-surface)}.st-anno-no{background:var(--st-accent);color:#fff;border-radius:999px;flex:none;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:.76rem;font-weight:700;display:flex}.st-anno-no.is-task{background:#b45309;border-radius:6px}.st-anno-no.is-done{background:#15803d}.st-anno-main{flex-direction:column;min-width:0;display:flex}.st-anno-title{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:600;overflow:hidden}.st-anno-title.is-done{color:var(--st-muted);text-decoration:line-through}.st-anno-meta{font-size:.72rem}.st-anno-tag{letter-spacing:.02em;text-transform:uppercase;background:var(--st-surface);border:1px solid var(--st-border);color:var(--st-muted);border-radius:999px;padding:.02rem .4rem;font-size:.66rem;font-weight:700;display:inline-block}.st-anno-tag.is-task{color:#b45309;background:#b453091f;border-color:#b4530959}.st-anno-kind-seg{border:1px solid var(--st-border);border-radius:8px;gap:0;display:flex;overflow:hidden}.st-anno-kind-seg button{background:var(--st-surface);color:inherit;font:inherit;cursor:pointer;border:none;flex:1;padding:.4rem .6rem;font-size:.82rem}.st-anno-kind-seg button+button{border-left:1px solid var(--st-border)}.st-anno-kind-seg button.is-on{background:var(--st-accent);color:#fff}.st-anno-pop-meta{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.st-anno-assignee{color:var(--st-muted);font-size:.78rem}.st-anno-done{cursor:pointer;align-items:center;gap:.45rem;font-size:.86rem;display:flex}.st-anno-done input{accent-color:#15803d;width:1.05rem;height:1.05rem}.st-anno-done.is-done span{color:#15803d;font-weight:600}.st-anno-detail{flex-direction:column;gap:.5rem;padding:0 .6rem .6rem;display:flex}.st-anno-body{white-space:pre-wrap;margin:0;font-size:.84rem}.st-anno-comments{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.st-anno-comment{background:var(--st-surface);border-radius:8px;flex-direction:column;gap:.15rem;padding:.4rem .55rem;display:flex}.st-anno-comment-body{white-space:pre-wrap;font-size:.82rem}.st-anno-comment-meta{align-items:center;gap:.4rem;font-size:.7rem;display:flex}.st-anno-comment-del{color:#dc2626;cursor:pointer;background:0 0;border:none;margin-left:auto;padding:0;font-size:.95rem;line-height:1}.st-anno-comment-empty{font-size:.76rem}.st-anno-add{gap:.4rem;display:flex}.st-anno-add .st-input{flex:1;width:auto;min-width:0}.st-anno-detail-actions{align-items:center;gap:.9rem;display:flex}.st-anno-detail-actions .st-link-btn{font-size:.82rem}.st-anno-del{color:#dc2626}.st-anno-pop{flex-direction:column;gap:.85rem;display:flex}.st-anno-pop .st-field,.st-anno-pop .st-input{width:100%}.st-anno-pop-title{margin:0;font-size:1rem}.st-anno-pop .st-anno-body{white-space:pre-wrap;margin:0;font-size:.9rem}.st-anno-pop-comments{border-top:1px solid var(--st-border);flex-direction:column;gap:.5rem;padding-top:.75rem;display:flex}.st-anno-pop-comments h5{color:var(--st-muted);margin:0;font-size:.82rem}.st-anno-pop-foot{border-top:1px solid var(--st-border);justify-content:flex-end;padding-top:.75rem;display:flex}.mv-module{--mv-accent:#00425b;--mv-surface:var(--surface,#fff);--mv-border:var(--border,#e2e8f0);--mv-muted:var(--text-muted,#64748b)}.mv-page{flex-direction:column;gap:1.25rem;display:flex}.mv-page-head h1{margin:0 0 .25rem;font-size:1.5rem}.mv-sub,.mv-muted{color:var(--mv-muted)}.mv-sub{margin:0;font-size:.9rem}.mv-muted{font-size:.85rem}.mv-card{background:var(--mv-surface);border:1px solid var(--mv-border);border-radius:12px;padding:1.1rem 1.25rem}.mv-card h2{margin:0 0 .9rem;font-size:1.05rem}.mv-input{border:1px solid var(--mv-border);background:var(--mv-surface);width:100%;color:inherit;font:inherit;border-radius:8px;padding:.5rem .65rem}.mv-textarea{resize:vertical}.mv-btn{border:1px solid var(--mv-border);background:var(--mv-surface);color:inherit;font:inherit;cursor:pointer;white-space:nowrap;border-radius:8px;padding:.5rem .9rem}.mv-btn:hover{background:#00425b0f}.mv-btn:disabled{opacity:.55;cursor:not-allowed}.mv-btn-primary{background:var(--mv-accent);border-color:var(--mv-accent);color:#fff}.mv-btn-primary:hover{background:#00354a}.mv-btn-danger{color:#dc2626;border-color:#dc262666}.mv-btn-danger:hover{background:#dc262614}.mv-btn-sm{padding:.35rem .65rem;font-size:.82rem}.mv-btn-active{background:var(--mv-accent);border-color:var(--mv-accent);color:#fff}.mv-error{color:#dc2626;margin:.25rem 0;font-size:.85rem}.mv-link{color:var(--mv-accent);cursor:pointer;font:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.mv-open{color:#dc2626}.mv-seg{border:1px solid var(--mv-border);border-radius:8px;margin-bottom:.9rem;display:inline-flex;overflow:hidden}.mv-seg-btn{font:inherit;cursor:pointer;color:inherit;background:0 0;border:none;padding:.5rem .9rem}.mv-seg-btn.active{background:var(--mv-accent);color:#fff}.mv-create-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem;margin-bottom:.9rem;display:grid}.mv-create-grid label,.mv-editor label,.mv-locate-field{flex-direction:column;gap:.3rem;font-size:.85rem;display:flex}.mv-project-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.9rem;display:grid}.mv-project-card{border:1px solid var(--mv-border);border-radius:10px;flex-direction:column;gap:.6rem;padding:.85rem;display:flex}.mv-project-main{color:inherit;flex-direction:column;gap:.3rem;text-decoration:none;display:flex}.mv-project-name{font-weight:600}.mv-project-addr{color:var(--mv-muted);font-size:.82rem}.mv-project-meta{color:var(--mv-muted);font-size:.78rem}.mv-project-badge{color:var(--mv-accent);background:#00425b1a;border-radius:5px;align-self:flex-start;padding:.1rem .45rem;font-size:.7rem;font-weight:600}.mv-project-actions{justify-content:flex-end;display:flex}.mv-detail-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.mv-detail-head h1{margin:.3rem 0 .15rem;font-size:1.4rem}.mv-back{color:var(--mv-accent);font-size:.85rem;text-decoration:none}.mv-back:hover{text-decoration:underline}.mv-head-right{flex-direction:column;align-items:flex-end;gap:.6rem;display:flex}.mv-head-stats{gap:1rem;display:flex}.mv-stat{color:var(--mv-muted);font-size:.85rem}.mv-stat strong{color:var(--text,inherit);font-size:1.1rem}.mv-stat.mv-open strong{color:#dc2626}.mv-export-btns{gap:.4rem;display:flex}.mv-export-err{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin:.6rem 0 0;padding:.5rem .75rem;font-size:.85rem}.mv-detail-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:1.1rem;display:grid}@media (width<=900px){.mv-detail-grid{grid-template-columns:1fr}}.mv-plan-col{flex-direction:column;gap:.7rem;display:flex}.mv-plan-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.mv-plan-tabs{flex-wrap:wrap;gap:.4rem;display:flex}.mv-plan-tab{border:1px solid var(--mv-border);border-radius:8px;align-items:center;display:inline-flex;overflow:hidden}.mv-plan-tab.active{border-color:var(--mv-accent)}.mv-plan-tab-btn{font:inherit;cursor:pointer;color:inherit;background:0 0;border:none;padding:.35rem .6rem}.mv-plan-tab.active .mv-plan-tab-btn{background:var(--mv-accent);color:#fff}.mv-plan-tab-del{cursor:pointer;color:var(--mv-muted);background:0 0;border:none;padding:0 .45rem;font-size:1rem}.mv-plan-tab-del:hover{color:#dc2626}.mv-plan-toolbar-actions{gap:.4rem;display:flex}.mv-placement-hint{border:1px dashed var(--mv-accent);color:var(--mv-accent);background:#00425b14;border-radius:8px;align-items:center;gap:.75rem;padding:.5rem .75rem;font-size:.85rem;display:flex}.mv-viewer{flex-direction:column;gap:.5rem;display:flex}.mv-viewer-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.mv-zoom,.mv-pagenav{align-items:center;gap:.4rem;display:flex}.mv-zoom-val{color:var(--mv-muted);text-align:center;font-variant-numeric:tabular-nums;min-width:3.2rem;font-size:.8rem}.mv-zoom-hint{color:var(--mv-muted);white-space:nowrap;-webkit-user-select:none;user-select:none;font-size:.72rem}@media (width<=640px){.mv-zoom-hint{display:none}}.mv-viewer-scroll{border:1px solid var(--mv-border);scrollbar-gutter:stable;touch-action:pan-x pan-y;background:repeating-conic-gradient(#f8fafc 0% 25%,#eef2f6 0% 50%) 0 0/22px 22px;border-radius:12px;max-height:calc(100vh - 240px);overflow:auto}.mv-viewer-scroll.placing{cursor:crosshair;outline:2px solid var(--mv-accent);outline-offset:-2px}.mv-stage{margin:0 auto;line-height:0;position:relative}.mv-stage.marquee-zoom{cursor:crosshair}.mv-stage-canvas,.mv-stage-img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;display:block}.mv-marquee{z-index:30;pointer-events:none;border:1.5px solid var(--mv-accent,#2563eb);background:#2563eb1f;border-radius:2px;position:absolute;box-shadow:0 0 0 9999px #0f172a0f}.mv-pin{cursor:pointer;box-sizing:border-box;border:3px solid #fff;border-radius:50%;place-items:center;width:24px;height:24px;padding:0;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 4px #00000073}.mv-pin .mv-pin-dot{color:#fff;text-shadow:0 1px 1px #0006;place-items:center;font-size:10px;font-weight:700;line-height:1;display:grid}.mv-pin.selected{z-index:3;box-shadow:0 0 0 3px #00425b73,0 1px 4px #00000073}.mv-empty-plan{text-align:center;padding:2rem 1rem}.mv-pin-callout{z-index:20;white-space:nowrap;background:#111827;border-radius:8px;align-items:center;padding:4px;display:flex;position:absolute;transform:translate(18px,-50%);box-shadow:0 4px 14px #0000004d}.mv-pin-callout:before{content:"";border:6px solid #0000;border-left:0;border-right-color:#111827;position:absolute;top:50%;left:-6px;transform:translateY(-50%)}.mv-pin-callout .mv-btn{padding:.25rem .55rem;font-size:.72rem}.mv-legend{color:var(--mv-muted);flex-wrap:wrap;align-items:center;gap:.35rem .9rem;font-size:.76rem;display:flex}.mv-legend-group{font-weight:600}.mv-legend-item{align-items:center;gap:.35rem;display:inline-flex}.mv-legend-dot{box-sizing:border-box;width:14px;height:14px;box-shadow:0 0 0 1px var(--mv-border);border:3px solid #fff;border-radius:50%}.mv-list-head{justify-content:space-between;align-items:center;margin-bottom:.7rem;display:flex}.mv-list-head h2{margin:0}.mv-filter{flex-wrap:wrap;gap:.35rem;margin-bottom:.8rem;display:flex}.mv-chip{border:1px solid var(--mv-border);background:var(--mv-surface);color:inherit;cursor:pointer;border-radius:999px;padding:.25rem .6rem;font-size:.78rem}.mv-chip.active{border-color:var(--mv-accent);font-weight:600}.mv-chip-dot{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:4px;display:inline-block}.mv-defect-list{flex-direction:column;gap:.4rem;max-height:calc(100vh - 320px);margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.mv-defect-row{border:1px solid var(--mv-border);cursor:pointer;border-radius:8px;align-items:center;gap:.6rem;padding:.55rem .65rem;display:flex}.mv-defect-row:hover{background:#00425b0a}.mv-defect-row.selected{border-color:var(--mv-accent);box-shadow:0 0 0 1px var(--mv-accent) inset}.mv-sev-dot{border-radius:50%;flex:none;width:12px;height:12px}.mv-defect-num{color:var(--mv-muted);font-variant-numeric:tabular-nums;flex:none;min-width:1.8rem;font-size:.8rem;font-weight:700}.mv-defect-texts{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.mv-defect-title{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;overflow:hidden}.mv-defect-meta{color:var(--mv-muted);font-size:.75rem}.mv-status-badge{color:#fff;border-radius:999px;flex:none;padding:.15rem .45rem;font-size:.68rem;font-weight:600}.mv-editor{flex-direction:column;gap:.8rem;display:flex}.mv-editor-row{grid-template-columns:1fr 1fr;gap:.8rem;display:grid}.mv-field-label{color:var(--mv-muted);font-size:.85rem}.mv-locate-field{justify-content:flex-start}.mv-editor-actions{align-items:center;gap:.5rem;margin-top:.4rem;display:flex}.mv-spacer{flex:1}.mv-photos{border-top:1px solid var(--mv-border);padding-top:.8rem}.mv-photos-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.6rem;display:flex}.mv-photos-btns{gap:.4rem;display:flex}.mv-photo-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:.5rem;display:grid}.mv-photo-thumb{aspect-ratio:1;border:1px solid var(--mv-border);border-radius:8px;position:relative;overflow:hidden}.mv-photo-thumb img{object-fit:cover;width:100%;height:100%;display:block}.mv-photo-loading{background:#0000000f;width:100%;height:100%}.mv-photo-del{color:#fff;cursor:pointer;background:#0000008c;border:none;border-radius:50%;width:20px;height:20px;font-size:.9rem;line-height:1;position:absolute;top:3px;right:3px}.mv-photo-del:hover{background:#dc2626}.mv-cam-overlay{z-index:1200;background:#000c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.mv-cam{color:#fff;background:#111;border-radius:12px;flex-direction:column;width:min(560px,100%);display:flex;overflow:hidden}.mv-cam-head{justify-content:space-between;align-items:center;padding:.7rem 1rem;font-size:.9rem;display:flex}.mv-cam-close{color:#fff;cursor:pointer;background:0 0;border:none;font-size:1.4rem;line-height:1}.mv-cam-stage{aspect-ratio:3/4;background:#000;place-items:center;max-height:60vh;display:grid;overflow:hidden}.mv-cam-video{object-fit:contain;width:100%;height:100%}.mv-cam-error{color:#fca5a5;text-align:center;padding:1.5rem;font-size:.9rem}.mv-cam-actions{justify-content:space-between;align-items:center;gap:.75rem;padding:.9rem 1rem;display:flex}.mv-cam-shutter{cursor:pointer;background:#fff;border:4px solid #fff6;border-radius:50%;width:62px;height:62px;box-shadow:inset 0 0 0 2px #111}.mv-cam-shutter:disabled{opacity:.5;cursor:not-allowed}.app-loading,.auth-loading{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.app-loading p,.auth-loading p{color:var(--text)}.no-access{justify-content:center;align-items:center;min-height:60vh;padding:32px;display:flex}.no-access-card{text-align:center;background:var(--bg,#fff);border:1px solid var(--border,#e5e7eb);border-radius:14px;max-width:440px;padding:32px 28px;box-shadow:0 8px 24px #0000000f}.no-access-card h2{font-size:calc(18px * var(--font-scale));color:var(--text,#111);margin:0 0 10px}.no-access-card p{font-size:calc(14px * var(--font-scale));color:var(--text-muted,#6b7280);margin:0;line-height:1.5}.counter{font-size:calc(16px * var(--font-scale));color:var(--accent);background:var(--accent-bg);border:2px solid #0000;border-radius:5px;margin-bottom:24px;padding:5px 10px;transition:border-color .3s}.counter:hover{border-color:var(--accent-border)}.counter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero{position:relative}.hero .base,.hero .framework,.hero .vite{margin:0 auto;inset-inline:0}.hero .base{z-index:0;width:170px;position:relative}.hero .framework,.hero .vite{position:absolute}.hero .framework{z-index:1;height:28px;top:34px;transform:perspective(2000px)rotate(300deg)rotateX(44deg)rotateY(39deg)scale(1.4)}.hero .vite{z-index:0;width:auto;height:26px;top:107px;transform:perspective(2000px)rotate(300deg)rotateX(40deg)rotateY(39deg)scale(.8)}#center{flex-direction:column;flex-grow:1;place-content:center;place-items:center;gap:25px;display:flex}@media (width<=1024px){#center{gap:18px;padding:32px 20px 24px}}#next-steps{border-top:1px solid var(--border);text-align:left;display:flex}#next-steps>div{flex:1 1 0;padding:32px}@media (width<=1024px){#next-steps>div{padding:24px 20px}}#next-steps .icon{width:22px;height:22px;margin-bottom:16px}@media (width<=1024px){#next-steps{text-align:center;flex-direction:column}}#docs{border-right:1px solid var(--border)}@media (width<=1024px){#docs{border-right:none;border-bottom:1px solid var(--border)}}#next-steps ul{gap:8px;margin:32px 0 0;padding:0;list-style:none;display:flex}#next-steps ul .logo{height:18px}#next-steps ul a{color:var(--text-h);font-size:calc(16px * var(--font-scale));background:var(--social-bg);border-radius:6px;align-items:center;gap:8px;padding:6px 12px;text-decoration:none;transition:box-shadow .3s;display:flex}#next-steps ul a:hover{box-shadow:var(--shadow)}#next-steps ul a .button-icon{width:18px;height:18px}@media (width<=1024px){#next-steps ul{flex-wrap:wrap;justify-content:center;margin-top:20px}#next-steps ul li{flex:calc(50% - 8px)}#next-steps ul a{box-sizing:border-box;justify-content:center;width:100%}}#spacer{border-top:1px solid var(--border);height:88px}@media (width<=1024px){#spacer{height:48px}}@media (width<=768px){.sb-content [class*=-actions],.sb-content [class*=header-actions],.sb-content [class*=-header]{flex-wrap:wrap;gap:6px}.sb-content button,.sb-content a[class*=btn],.sb-content a[class*=-add]{font-size:calc(12px * var(--font-scale));border-radius:8px;gap:5px;padding:7px 10px;line-height:1.15}.sb-content button svg,.sb-content a[class*=btn] svg,.sb-content a[class*=-add] svg{flex-shrink:0;width:15px;height:15px}.sb-content button[class*=icon],.sb-content button[class*=-del],.sb-content button[class*=trash]{min-width:32px;min-height:32px;padding:6px}.sb-content [class*=filter-bar]{flex-wrap:wrap;gap:6px}.sb-content [class*=filter-input],.sb-content [class*=filter-select],.sb-content select,.sb-content input[type=text],.sb-content input[type=search]{font-size:calc(12px * var(--font-scale));padding:6px 8px}.sb-content td[class*=actions]{white-space:nowrap}}.ticks{width:100%;position:relative}.ticks:before,.ticks:after{content:"";border:5px solid #0000;position:absolute;top:-4.5px}.ticks:before{border-left-color:var(--border);left:0}.ticks:after{border-right-color:var(--border);right:0}
