:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--accent-dark:#22d3c8;--accent-light:#0f9d91;--accent-ink-dark:#04120f;--accent-ink-light:#fff;--violet-dark:#9085e9;--violet-light:#6d28d9;--violet-ink-dark:#0e0a2e;--violet-ink-light:#fff}:root[data-accent=indigo]{--accent-dark:#6d8bff;--accent-light:#4550c9;--accent-ink-dark:#04081f;--accent-ink-light:#fff}:root[data-accent=violet]{--accent-dark:#b09aff;--accent-light:#7c3aed;--accent-ink-dark:#170a2e;--accent-ink-light:#fff}:root[data-accent=amber]{--accent-dark:#f0b429;--accent-light:#a15c00;--accent-ink-dark:#1f1400;--accent-ink-light:#fff}:root[data-accent=rose]{--accent-dark:#fb7185;--accent-light:#be123c;--accent-ink-dark:#200608;--accent-ink-light:#fff}:root[data-accent=cyan]{--accent-dark:#22b8e8;--accent-light:#0876a3;--accent-ink-dark:#041920;--accent-ink-light:#fff}:root[data-accent=emerald]{--accent-dark:#34d399;--accent-light:#059669;--accent-ink-dark:#03150f;--accent-ink-light:#fff}:root[data-accent=orange]{--accent-dark:#fb923c;--accent-light:#c2410c;--accent-ink-dark:#1f0d02;--accent-ink-light:#fff}:root[data-accent=pink]{--accent-dark:#f472b6;--accent-light:#be185d;--accent-ink-dark:#210012;--accent-ink-light:#fff}:root[data-accent=slate]{--accent-dark:#94a3b8;--accent-light:#475569;--accent-ink-dark:#0b0f16;--accent-ink-light:#fff}:root{--bg:#060a12;--sidebar:#05080f;--surface:#0d1420;--surface-raised:#121a28;--ink:#e8edf5;--muted:#8b97ab;--faint:#576177;--rule:#1c2534;--shadow:#00000073;--accent:var(--accent-dark);--accent-ink:var(--accent-ink-dark);--violet:var(--violet-dark);--violet-ink:var(--violet-ink-dark);--good:#0ca30c;--warn:#fab219;--bad:#e0605f}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f8fa;--sidebar:#eef1f5;--surface:#fff;--surface-raised:#f1f4f7;--ink:#10151c;--muted:#5b6572;--faint:#8894a2;--rule:#dde3ea;--shadow:#0f172a1f;--accent:var(--accent-light);--accent-ink:var(--accent-ink-light);--violet:var(--violet-light);--violet-ink:var(--violet-ink-light);--good:#0a7d0a;--warn:#8a6d1f;--bad:#b3231f}:root[data-theme=dim]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#15202b;--sidebar:#101922;--surface:#1c2938;--surface-raised:#23313f;--ink:#d9e1e8;--muted:#92a3b3;--faint:#66798c;--rule:#2f4258;--shadow:#00000059;--accent:var(--accent-dark);--accent-ink:var(--accent-ink-dark);--violet:var(--violet-dark);--violet-ink:var(--violet-ink-dark);--good:#0ca30c;--warn:#fab219;--bad:#e0605f}:root[data-theme=contrast]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#000;--sidebar:#000;--surface:#000;--surface-raised:#0d0d0d;--ink:#fff;--muted:#d4d4d8;--faint:#a3a3a8;--rule:#8a8f98;--shadow:#0009;--accent:var(--accent-dark);--accent-ink:var(--accent-ink-dark);--violet:var(--violet-dark);--violet-ink:var(--violet-ink-dark);--good:#22c55e;--warn:#fbbf24;--bad:#f87171}@media (prefers-color-scheme:light){:root:not([data-theme]){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f8fa;--sidebar:#eef1f5;--surface:#fff;--surface-raised:#f1f4f7;--ink:#10151c;--muted:#5b6572;--faint:#8894a2;--rule:#dde3ea;--shadow:#0f172a1f;--accent:var(--accent-light);--accent-ink:var(--accent-ink-light);--violet:var(--violet-light);--violet-ink:var(--violet-ink-light);--good:#0a7d0a;--warn:#8a6d1f;--bad:#b3231f}}:root{--accent-soft:color-mix(in srgb, var(--accent) 12%, transparent);--accent-border:color-mix(in srgb, var(--accent) 35%, transparent);--violet-soft:color-mix(in srgb, var(--violet) 14%, transparent);--violet-border:color-mix(in srgb, var(--violet) 40%, transparent);--good-soft:color-mix(in srgb, var(--good) 12%, transparent);--good-border:color-mix(in srgb, var(--good) 40%, transparent);--warn-soft:color-mix(in srgb, var(--warn) 14%, transparent);--warn-border:color-mix(in srgb, var(--warn) 40%, transparent);--bad-soft:color-mix(in srgb, var(--bad) 12%, transparent);--bad-border:color-mix(in srgb, var(--bad) 40%, transparent);--font-display:"Chakra Petch", "Segoe UI", sans-serif;--font-body:"IBM Plex Sans", -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;font-family:var(--font-body)}*{box-sizing:border-box}html,body,#root{height:100%}:root{--base-font-size:14px}:root[data-font-size=small]{--base-font-size:12.5px}:root[data-font-size=large]{--base-font-size:15.5px}body{background:var(--bg);color:var(--ink);font-size:var(--base-font-size);-webkit-font-smoothing:antialiased;margin:0;transition:background-color .15s,color .15s,font-size .1s}h1,h2,h3{font-family:var(--font-display);letter-spacing:.01em;margin:0;font-weight:600}h1{font-size:22px}h2{font-size:18px}h3{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:13px;font-weight:600}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}code,.mono{font-family:var(--font-mono);font-size:.93em}button{font:inherit;cursor:pointer;border:1px solid var(--rule);background:var(--surface-raised);color:var(--ink);border-radius:7px;padding:8px 14px;transition:border-color .12s,background .12s,box-shadow .12s}button:hover:not(:disabled){border-color:var(--faint)}button.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:600}button.primary:hover:not(:disabled){box-shadow:0 0 0 3px var(--accent-soft)}button.ai{background:var(--violet);color:var(--violet-ink);border-color:var(--violet);font-weight:600}button.ai:hover:not(:disabled){box-shadow:0 0 0 3px var(--violet-soft)}button.danger{color:var(--bad);border-color:var(--bad-border);background:0 0}button:disabled{opacity:.45;cursor:default}input,select,textarea{font:inherit;border:1px solid var(--rule);background:var(--surface);color:var(--ink);border-radius:7px;padding:8px 11px}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid var(--accent-border);outline-offset:1px}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--rule);padding:10px 12px;font-size:13.5px}th{color:var(--faint);text-transform:uppercase;letter-spacing:.06em;font-size:10.5px;font-weight:600}tbody tr:hover{background:color-mix(in srgb, var(--ink) 3%, transparent)}td.num,th.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}.panel{background:var(--surface);border:1px solid var(--rule);border-radius:12px;padding:20px}.panel-good{background:var(--good-soft);border-color:var(--good-border)}.panel-warn{background:var(--warn-soft);border-color:var(--warn-border)}.panel-bad{background:var(--bad-soft);border-color:var(--bad-border)}.panel-ai{background:var(--violet-soft);border-color:var(--violet-border)}.stack{flex-direction:column;gap:12px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.muted{color:var(--muted);font-size:13px}.text-good{color:var(--good)}.text-warn{color:var(--warn)}.text-bad{color:var(--bad)}.text-ai{color:var(--violet)}.field{flex-direction:column;gap:5px;font-size:13px;display:flex}.field label{color:var(--muted);font-size:12.5px}.pill{text-transform:uppercase;letter-spacing:.05em;border-radius:100px;align-items:center;gap:5px;padding:3px 10px;font-size:10.5px;font-weight:700;display:inline-flex}.pill:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.pill.good{background:var(--good-soft);color:var(--good)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.bad{background:var(--bad-soft);color:var(--bad)}.pill.ai{background:var(--violet-soft);color:var(--violet)}.shell{min-height:100%;display:flex}.sidebar{background:var(--sidebar);border-right:1px solid var(--rule);flex-direction:column;flex-shrink:0;width:240px;padding:18px 12px;display:flex}.sidebar-brand{align-items:center;gap:10px;padding:8px 8px 20px;display:flex}.sidebar-brand-mark{background:radial-gradient(circle at 30% 25%, color-mix(in srgb, var(--accent) 60%, white), var(--accent) 65%);width:30px;height:30px;box-shadow:0 0 16px var(--accent-soft);font-family:var(--font-display);color:var(--accent-ink);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex}.sidebar-brand-text{font-family:var(--font-display);font-size:14px;font-weight:600;line-height:1.3}.sidebar-brand-text span{color:var(--faint);font-size:10.5px;font-weight:400;font-family:var(--font-body);letter-spacing:.03em;display:block}.sidebar-group{margin-bottom:4px}.sidebar-group-label{text-transform:uppercase;letter-spacing:.09em;color:var(--faint);padding:14px 12px 6px;font-size:10px;font-weight:600}.sidebar-nav{flex-direction:column;gap:1px;display:flex}.sidebar-link{color:var(--muted);border-radius:8px;align-items:center;gap:10px;padding:8px 12px;font-size:13.5px;font-weight:500;text-decoration:none;display:flex}.sidebar-link:hover{background:color-mix(in srgb, var(--ink) 5%, transparent);color:var(--ink);text-decoration:none}.sidebar-link.current{background:var(--accent-soft);color:var(--ink)}.sidebar-link.current .sidebar-link-icon{color:var(--accent)}.sidebar-link.ai.current{background:var(--violet-soft)}.sidebar-link.ai.current .sidebar-link-icon{color:var(--violet)}.sidebar-link-icon{text-align:center;opacity:.9;width:15px;font-size:13px}.sidebar-footer{border-top:1px solid var(--rule);margin-top:auto;padding-top:12px}.sidebar-tenant{color:var(--faint);overflow-wrap:anywhere;padding:0 8px 10px;font-size:12px}.content{flex:1;min-width:0}.content-header{border-bottom:1px solid var(--rule);background:color-mix(in srgb, var(--bg) 72%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:5;justify-content:space-between;align-items:center;padding:18px 28px;display:flex;position:sticky;top:0}.content-header:after{content:"";background:linear-gradient(90deg, var(--accent-border), transparent 40%);height:1px;position:absolute;bottom:-1px;left:0;right:0}.content-body{max-width:1240px;margin:0 auto;padding:24px 28px}.content-body:has(.builder-shell){max-width:none}.content-body:has(.designer-shell){max-width:none}body.designer-fullscreen .sidebar,body.designer-fullscreen .content-header{display:none}body.designer-fullscreen .content-body{padding:10px 14px}.designer-panel-collapsed{align-items:center;overflow:hidden;width:42px!important;padding:10px 6px!important}.designer-panel-collapse-btn{flex-shrink:0}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--rule);border-radius:12px;padding:16px 18px}.stat-card-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font-size:11.5px;font-weight:500}.stat-card-value{font-family:var(--font-mono);letter-spacing:-.01em;font-size:24px;font-weight:500}.theme-switcher{position:relative}.theme-swatch{background:var(--surface-raised);border:1px solid var(--rule);border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:flex}.theme-swatch-dot{background:var(--accent);width:13px;height:13px;box-shadow:0 0 0 2px var(--surface-raised) inset;border-radius:50%}.theme-menu{z-index:20;background:var(--surface-raised);border:1px solid var(--rule);width:272px;box-shadow:0 12px 32px var(--shadow);border-radius:10px;padding:12px;position:absolute;bottom:110%;left:0}.theme-menu-label{text-transform:uppercase;letter-spacing:.08em;color:var(--faint);margin:8px 0 6px;font-size:10px;font-weight:600}.theme-menu-label:first-child{margin-top:0}.theme-mode-row{flex-wrap:wrap;gap:6px;display:flex}.theme-mode-btn{background:var(--surface);border:1px solid var(--rule);color:var(--muted);border-radius:6px;flex:30%;padding:6px 4px;font-size:12px}.theme-mode-btn.active{background:var(--accent-soft);border-color:var(--accent-border);color:var(--ink)}.theme-accent-row{flex-wrap:wrap;gap:8px;display:flex}.theme-accent-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:26px;height:26px;padding:0}.theme-accent-swatch.active{border-color:var(--ink)}.theme-accent-custom{border-style:dashed;border-color:var(--faint);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.theme-accent-custom:after{content:"+";color:#ffffffd9;text-shadow:0 1px 2px #00000080;pointer-events:none;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex;position:absolute;inset:0}.theme-accent-custom.active{border-style:solid;border-color:var(--ink)}.theme-menu-hint{color:var(--faint);margin:-4px 0 6px;font-size:11px;line-height:1.4}:root[data-density=compact] th,:root[data-density=compact] td{padding:5px 10px;font-size:12.5px}:root[data-density=compact] .panel{padding:14px}:root[data-density=compact] .builder-rail{gap:12px;padding:10px}:root[data-density=compact] .builder-toolbar{padding:8px 12px}:root[data-density=compact] .stack{gap:8px}.builder-shell{flex-direction:column;gap:0;display:flex}.builder-toolbar{background:var(--surface);border:1px solid var(--rule);border-bottom:none;border-radius:12px 12px 0 0;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;display:flex}.builder-toolbar-name{font:inherit;background:0 0;border:1px solid #0000;border-radius:6px;flex:1;min-width:160px;max-width:360px;padding:6px 8px;font-size:14.5px;font-weight:600}.builder-toolbar-name:hover,.builder-toolbar-name:focus{border-color:var(--rule);background:var(--surface-raised)}.builder-toolbar-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.builder-toolbar-actions button{padding:7px 12px;font-size:13px}.builder-workspace{border:1px solid var(--rule);border-top:none;grid-template-columns:250px minmax(0,1fr) 280px;gap:0;min-height:60vh;display:grid}@media (width<=1100px){.builder-workspace{grid-template-columns:1fr}.builder-rail{border-bottom:1px solid var(--rule);max-height:none}}.builder-rail{background:var(--surface);flex-direction:column;gap:18px;max-height:calc(100vh - 220px);padding:16px;display:flex;overflow-y:auto}.builder-rail-left{border-right:1px solid var(--rule)}.builder-rail-right{border-left:1px solid var(--rule)}.builder-rail-section{flex-direction:column;gap:8px;display:flex}.builder-rail-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--faint);align-items:center;gap:6px;font-size:10.5px;font-weight:700;display:flex}.builder-canvas{background:var(--surface-raised);flex-direction:column;gap:16px;min-width:0;padding:18px;display:flex}.builder-statusbar{background:var(--surface);border:1px solid var(--rule);color:var(--muted);border-top:none;border-radius:0 0 12px 12px;flex-wrap:wrap;align-items:center;gap:18px;padding:8px 16px;font-size:12px;display:flex}.builder-statusbar-item{white-space:nowrap;align-items:center;gap:5px;display:flex}.builder-statusbar-item strong{color:var(--ink);font-weight:600;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.builder-statusbar-message{text-overflow:ellipsis;white-space:nowrap;margin-left:auto;overflow:hidden}.builder-statusbar-loading{color:var(--accent)}.builder-statusbar-spinner{border:2px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;width:11px;height:11px;animation:.7s linear infinite builder-spin}@keyframes builder-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.builder-statusbar-spinner{animation:none}}.builder-template-item{text-align:left;border:1px solid var(--rule);width:100%;color:var(--ink);background:0 0;border-radius:8px;padding:8px 10px;font-size:12.5px;display:block}.builder-template-item:hover{border-color:var(--accent-border);background:var(--accent-soft)}.builder-template-item span{color:var(--muted);margin-top:2px;font-size:11px;display:block}.builder-empty-state{text-align:center;flex-direction:column;align-items:center;gap:2px;padding:56px 24px;display:flex}.builder-empty-state-icon{background:var(--accent-soft);width:52px;height:52px;color:var(--accent);border-radius:14px;justify-content:center;align-items:center;margin-bottom:14px;font-size:24px;display:flex}.builder-empty-state-cards{flex-wrap:wrap;justify-content:center;gap:8px;max-width:560px;margin-top:14px;display:flex}.builder-empty-state-card{border:1px solid var(--rule);background:var(--surface);color:var(--ink);border-radius:9px;align-items:center;gap:8px;padding:9px 14px;font-size:13px;font-weight:500;display:flex}.builder-empty-state-card:hover{border-color:var(--accent-border);background:var(--accent-soft)}.builder-empty-state-card-icon{color:var(--accent);font-size:14px}.builder-group-label{text-transform:uppercase;letter-spacing:.07em;color:var(--faint);margin-top:10px;font-size:10px;font-weight:600}.builder-group-label:first-child{margin-top:0}.builder-group-header{text-align:left;text-transform:uppercase;letter-spacing:.07em;width:100%;color:var(--faint);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;margin-top:10px;padding:2px 0;font-size:10px;font-weight:600;display:flex}.builder-group-header:first-child{margin-top:0}.builder-group-header:hover{color:var(--ink)}.builder-group-header .builder-group-count{text-transform:none;letter-spacing:normal;font-weight:400}.builder-group-caret{width:10px;font-size:9px;display:inline-block}.builder-available-field{text-align:left;border:1px dashed var(--rule);width:100%;color:var(--muted);background:0 0;border-radius:7px;padding:7px 10px;font-size:13px;display:block}.builder-available-field:hover{border-color:var(--accent-border);color:var(--ink);background:var(--accent-soft)}.builder-available-field-row{align-items:center;gap:2px;display:flex}.builder-available-field-row .builder-available-field{flex:1}.builder-field-star{cursor:pointer;color:var(--faint);background:0 0;border:none;border-radius:6px;padding:4px 6px;font-size:13px;line-height:1}.builder-field-star:hover{background:var(--accent-soft)}.builder-field-star.active{color:#d97706}.builder-field-type-icon{opacity:.55;font-size:11px;font-family:var(--font-mono);margin-right:4px}.builder-viewtype-panel{border:1px solid var(--rule);border-left:2px solid var(--accent-border);background:var(--surface-raised);border-radius:8px;margin-top:6px;padding:8px}.builder-viewtype-grid{grid-template-columns:repeat(2,1fr);gap:4px;display:grid}.builder-viewtype-grid button{white-space:nowrap;text-overflow:ellipsis;padding:6px 4px;font-size:11.5px;overflow:hidden}.builder-field-row{background:var(--surface-raised);border:1px solid var(--rule);border-radius:8px;padding:6px 8px;transition:border-color .12s,box-shadow .12s}.builder-field-row:hover{border-color:var(--faint)}.builder-drag-handle{cursor:grab;color:var(--faint);-webkit-user-select:none;user-select:none;padding:0 2px;font-size:15px;line-height:1}.builder-drag-handle:active{cursor:grabbing}.builder-field-rename{border:1px dashed var(--faint);color:var(--ink);background:0 0;border-radius:5px;flex:1;min-width:0;padding:3px 6px;font-size:13px}.builder-field-rename::placeholder{color:var(--ink);opacity:1}.builder-field-rename:hover{border-color:var(--accent-border);background:var(--accent-soft)}.builder-field-rename:focus{border-style:solid;border-color:var(--accent-border);background:var(--surface)}.dashboard-tabs{row-gap:8px}.dashboard-tab{background:var(--surface);border:1px solid var(--rule);color:var(--muted);border-radius:8px;padding:7px 14px;font-size:13px}.dashboard-tab:hover{border-color:var(--faint);color:var(--ink)}.dashboard-tab.active{background:var(--accent-soft);border-color:var(--accent-border);color:var(--ink);font-weight:600}.dashboard-empty{border:1px dashed var(--rule);text-align:center;background:color-mix(in srgb, var(--ink) 2%, transparent);border-radius:12px;padding:36px 20px}.dashboard-widget{box-shadow:0 1px 3px var(--shadow);transition:box-shadow .15s,transform .15s}.dashboard-widget:hover{box-shadow:0 6px 20px var(--shadow);transform:translateY(-1px)}.dashboard-widget-header{cursor:move;border-bottom:1px solid var(--rule);background:var(--surface-raised);border-radius:12px 12px 0 0;padding:10px 14px;position:sticky;top:0}.dashboard-widget-icon{opacity:.75;font-size:12px}.react-grid-item.react-grid-placeholder{border-radius:10px;background:var(--accent)!important;opacity:.18!important}.react-resizable-handle:after{border-color:var(--faint)!important}.react-grid-item.react-draggable-dragging,.react-grid-item.resizing{z-index:3;transition:none}.skeleton-block{background:var(--surface-raised);border-radius:8px;width:100%;position:relative;overflow:hidden}.skeleton-shimmer{background:linear-gradient(100deg, transparent 30%, color-mix(in srgb, var(--ink) 8%, transparent) 50%, transparent 70%);animation:1.4s ease-in-out infinite skeleton-sweep;position:absolute;inset:0}@keyframes skeleton-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.skeleton-shimmer{opacity:.6;animation:none}.react-grid-item,.dashboard-widget{transition:none}}.designer-canvas-wrap{background:var(--surface);border:1px solid var(--rule);border-radius:10px;justify-content:center;padding:28px;display:flex;overflow:auto}.designer-page{box-shadow:0 10px 34px var(--shadow);background:#fff;flex-shrink:0;position:relative;overflow:hidden}.designer-page-inner{transform-origin:0 0;position:relative}.designer-page-inner.grid{background-image:linear-gradient(90deg,#1c25340f 1px,#0000 1px),linear-gradient(#1c25340f 1px,#0000 1px);background-size:8px 8px}.designer-empty-hint{color:#9aa4b5;text-align:center;pointer-events:none;border:1.5px dashed #c7d0e0;border-radius:10px;justify-content:center;align-items:center;padding:20px;font-size:13px;display:flex;position:absolute;inset:40px}.designer-el-selected{z-index:5}.designer-el-selected>*{outline:2px solid var(--accent);outline-offset:-1px}.designer-el-locked:not(.designer-el-selected)>*{outline-offset:-1px;outline:1px dashed #b3bccd}.designer-lock-badge{color:#fff;pointer-events:none;z-index:6;background:#141a26b8;border-radius:3px;justify-content:center;align-items:center;width:15px;height:15px;font-size:9px;display:flex;position:absolute;top:2px;right:2px}.designer-marquee{background:color-mix(in srgb, var(--accent) 15%, transparent);border:1px solid var(--accent);pointer-events:none;z-index:8;position:absolute}.designer-toolbar{background:var(--surface-raised);border:1px solid var(--rule);border-radius:8px;flex-wrap:wrap;gap:4px;padding:8px 10px}.designer-toolbar .sep{background:var(--rule);align-self:stretch;width:1px;margin:0 4px}.designer-icon-btn{border:1px solid var(--rule);background:var(--surface);width:28px;height:28px;color:var(--ink);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:0;font-size:13px;line-height:1;display:inline-flex}.designer-icon-btn:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent-border)}.designer-icon-btn:disabled{opacity:.35;cursor:default}.designer-icon-btn.active{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent)}.designer-palette{grid-template-columns:1fr 1fr;gap:6px;display:grid}.designer-palette button{border:1px solid var(--rule);background:var(--surface);color:var(--muted);border-radius:8px;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;font-size:11px;display:flex}.designer-palette button:hover{background:var(--accent-soft);border-color:var(--accent-border);color:var(--ink)}.designer-palette .glyph{color:var(--ink);font-size:17px}.designer-template-item{cursor:pointer;border-left:3px solid #0000;border-radius:6px;align-items:center;gap:6px;padding:6px 8px;font-size:13px;display:flex}.designer-template-item:hover{background:var(--surface-raised)}.designer-template-item.active{border-left-color:var(--accent);background:var(--accent-soft);font-weight:600}.designer-inspector-section{border-top:1px solid var(--rule);padding-top:10px}.designer-inspector-section>strong{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:8px;font-size:11px;display:block}.designer-el-grouped:not(.designer-el-selected)>*{outline:1px dotted var(--accent-border);outline-offset:-1px}.designer-guide-v{pointer-events:none;z-index:7;border-left:1px dashed #ff4d6d;width:0;position:absolute;top:0;bottom:0}.designer-guide-h{pointer-events:none;z-index:7;border-top:1px dashed #ff4d6d;height:0;position:absolute;left:0;right:0}.designer-page-tabs{flex-wrap:wrap;gap:4px}.designer-page-tab{border:1px solid var(--rule);background:var(--surface);color:var(--muted);border-radius:6px;align-items:center;gap:6px;padding:4px 8px;font-size:12px;display:inline-flex}.designer-page-tab:hover{background:var(--accent-soft);border-color:var(--accent-border);color:var(--ink)}.designer-page-tab.active{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent);font-weight:600}.designer-page-tab-close{opacity:.55}.designer-page-tab-close:hover{opacity:1}.designer-ruler-grid{grid-template-rows:20px auto;grid-template-columns:20px auto;width:max-content;display:grid}.designer-ruler-corner{background:var(--surface-raised);border:1px solid var(--rule);border-bottom:none;border-right:none}.designer-ruler{background:var(--surface-raised);border:1px solid var(--rule);color:var(--muted);position:relative;overflow:hidden}.designer-ruler-h{border-left:none}.designer-ruler-v{border-top:none}.designer-ruler-tick{white-space:nowrap;font-size:8px;position:absolute}.designer-ruler-h .designer-ruler-tick{border-left:1px solid var(--rule);height:100%;padding-left:2px;top:3px}.designer-ruler-v .designer-ruler-tick{writing-mode:vertical-rl;border-top:1px solid var(--rule);width:100%;padding-top:2px;left:3px}.designer-modal-backdrop{z-index:60;background:#060a128c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.designer-modal{width:min(920px,100%);max-height:86vh;overflow:auto}.designer-dashboard-widget-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;display:grid}.designer-dashboard-widget-card{padding:10px}.designer-snippet-item{border-radius:4px;align-items:center;gap:6px;padding:2px 4px}.designer-snippet-item:hover{background:var(--surface-raised)}.designer-field-picker{border:1px solid var(--accent-border);background:var(--accent-soft);border-radius:8px;gap:6px;padding:8px}.designer-safe-area{pointer-events:none;z-index:1;border:1px dashed #1c253438;position:absolute;inset:24px}.designer-warn-badge{color:#fff;pointer-events:none;z-index:6;background:#d08a00;border-radius:3px;justify-content:center;align-items:center;width:15px;height:15px;font-size:9px;display:flex;position:absolute;top:2px;left:2px}@media print{.sidebar,.content-header,.builder-toolbar,.builder-rail-left,.builder-rail-right,.builder-statusbar,.builder-canvas-noprint,.no-print{display:none!important}.content-body{max-width:none;padding:0}.builder-workspace{display:block}.builder-canvas{gap:0;padding:0}.builder-canvas .panel{box-shadow:none;background:0 0;border:none;padding:0}table{border-collapse:collapse;width:100%}th,td{color:#000!important}th button{all:unset;font:inherit;color:inherit}}.react-grid-layout{transition:height .2s;position:relative}.react-grid-item{transition:left .2s,top .2s,width .2s,height .2s}.react-grid-item img{pointer-events:none;-webkit-user-select:none;user-select:none}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.resizing{z-index:1;will-change:width, height;transition:none}.react-grid-item.react-draggable-dragging{z-index:3;will-change:transform;transition:none}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{opacity:.2;z-index:2;-webkit-user-select:none;user-select:none;-o-user-select:none;background:red;transition-duration:.1s}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item>.react-resizable-handle{width:20px;height:20px;position:absolute}.react-grid-item>.react-resizable-handle:after{content:"";border-bottom:2px solid #0006;border-right:2px solid #0006;width:5px;height:5px;position:absolute;bottom:3px;right:3px}.react-resizable-hide>.react-resizable-handle{display:none}.react-grid-item>.react-resizable-handle.react-resizable-handle-sw{cursor:sw-resize;bottom:0;left:0;transform:rotate(90deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-se{cursor:se-resize;bottom:0;right:0}.react-grid-item>.react-resizable-handle.react-resizable-handle-nw{cursor:nw-resize;top:0;left:0;transform:rotate(180deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-ne{cursor:ne-resize;top:0;right:0;transform:rotate(270deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-w,.react-grid-item>.react-resizable-handle.react-resizable-handle-e{cursor:ew-resize;margin-top:-10px;top:50%}.react-grid-item>.react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-n,.react-grid-item>.react-resizable-handle.react-resizable-handle-s{cursor:ns-resize;margin-left:-10px;left:50%}.react-grid-item>.react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}.react-resizable{position:relative}.react-resizable-handle{box-sizing:border-box;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+);background-position:100% 100%;background-repeat:no-repeat;background-origin:content-box;width:20px;height:20px;padding:0 3px 3px 0;position:absolute}.react-resizable-handle-sw{cursor:sw-resize;bottom:0;left:0;transform:rotate(90deg)}.react-resizable-handle-se{cursor:se-resize;bottom:0;right:0}.react-resizable-handle-nw{cursor:nw-resize;top:0;left:0;transform:rotate(180deg)}.react-resizable-handle-ne{cursor:ne-resize;top:0;right:0;transform:rotate(270deg)}.react-resizable-handle-w,.react-resizable-handle-e{cursor:ew-resize;margin-top:-10px;top:50%}.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-resizable-handle-n,.react-resizable-handle-s{cursor:ns-resize;margin-left:-10px;left:50%}.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}
