@import url('https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;500;600;700&display=swap');

.editor-launch{display:flex;align-items:center;gap:10px;margin:0 0 10px;padding:11px 12px;border:1px solid #dedede;border-radius:11px;background:#fff;text-align:left;cursor:pointer;transition:.2s;font-family:"Source Sans 3",sans-serif}
.editor-launch:hover{border-color:rgba(227,6,19,.55);box-shadow:0 8px 22px rgba(20,20,20,.07);transform:translateY(-1px)}
.editor-launch-icon{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;background:#fff0f1;color:var(--red);font-size:15px}
.editor-launch>span:nth-child(2){flex:1}
.editor-launch b,.editor-launch small{display:block}
.editor-launch b{font-size:13px;font-weight:600}
.editor-launch small{font-size:11px;color:#666;margin-top:2px}
.editor-launch i{font-style:normal;color:var(--red)}
.empty-editor-launch{width:230px;margin-top:14px}

dialog.dashboard-editor{width:100vw;max-width:none;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;margin:0;border:0;border-radius:0;background:#e8eaed;overflow:hidden;padding:0;overscroll-behavior:none}
.dashboard-editor::backdrop{background:rgba(10,12,14,.78);backdrop-filter:blur(2px)}
.editor-shell{height:100%;max-height:100%;display:flex;flex-direction:column;overflow:hidden;color:#17191c;font-family:"Source Sans 3",system-ui,sans-serif;font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.editor-topbar{min-height:56px;height:auto;flex:0 0 auto;background:#fff;border-bottom:1px solid #dedfe2;display:grid;grid-template-columns:minmax(140px,240px) minmax(0,1fr) auto;align-items:center;padding:8px 16px;gap:10px 14px;position:relative;z-index:5;overflow:visible;box-sizing:border-box}
.lbl-short{display:none}
.lbl-full{display:inline}
.editor-brand{display:flex;align-items:center;gap:10px;min-width:0}
.editor-brand small,.editor-brand b{display:block}
.editor-brand small{font-size:10px;letter-spacing:.14em;color:#555;font-weight:700;line-height:1}
.editor-brand b{font:700 15px/1.15 "Source Sans 3";margin-top:2px}
.editor-doc{display:flex;align-items:center;justify-content:center;gap:10px;min-width:0}
.editor-name-label{flex:0 0 auto;font-size:11px;letter-spacing:.08em;font-weight:700;color:#6b7280;text-transform:uppercase;line-height:1}
.editor-title-wrap{display:flex;align-items:center;gap:6px;min-width:0;max-width:min(420px,100%)}
.editor-doc input{border:1px solid #e5e7eb;background:#f3f4f6;text-align:left;font:600 14px/1.2 "Source Sans 3";width:min(360px,100%);min-width:0;height:36px;outline:none;border-radius:8px;padding:0 12px;color:#111827;box-sizing:border-box;cursor:default}
.editor-doc input[readonly]{color:#1f2937}
.editor-doc input:not([readonly]){border-color:#e77b82;background:#fff;cursor:text;box-shadow:0 0 0 3px rgba(227,6,19,.08)}
.editor-doc input::placeholder{color:#9ca3af;font-weight:500}
#editorTitleEdit{flex:0 0 auto;width:36px;height:36px;min-height:36px;padding:0;border:1px solid #d5d7db;border-radius:8px;background:#fff;color:#374151;font-size:15px;line-height:1;cursor:pointer}
#editorTitleEdit:hover{border-color:#e77b82;color:#b8000b;background:#fff7f8}
.editor-title-wrap.is-editing #editorTitleEdit{border-color:#e30613;background:#fff0f1;color:#b8000b}
.editor-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:36px;justify-content:flex-end;max-width:100%}
.editor-actions button,.editor-stagebar button,.editor-section-head button,.inspector-head button,.compact{border:1px solid #c5c9d0;background:#fff;border-radius:8px;height:36px;min-height:36px;max-height:36px;margin:0;padding:0 13px;font:600 13px/1 "Source Sans 3",sans-serif;cursor:pointer;color:#111827;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;line-height:1;transform:none;box-shadow:none;position:static;top:auto}
.editor-actions button:disabled{opacity:.35;cursor:not-allowed}
.editor-actions button.primary,#editorSave{background:#e30613;border:1px solid #e30613;color:#fff;padding:0 16px;font-weight:700;height:36px;min-height:36px;max-height:36px;margin:0;line-height:1;transform:none!important;box-shadow:none!important;align-self:center}
.editor-actions button.primary:hover,#editorSave:hover{background:#c80510;transform:none!important}
.editor-actions button.danger,#editorClearDashboard{border-color:#f1aeb5;background:#fff5f6;color:#9f1239}
.editor-actions button.danger:hover,#editorClearDashboard:hover{border-color:#e30613;background:#ffe8ea;color:#b8000b}
#editorUndo,#editorRedo{width:36px;padding:0;font-size:16px}
.editor-body{min-height:0;flex:1 1 auto;display:grid;grid-template-columns:minmax(220px,260px) minmax(0,1fr) minmax(250px,310px);overflow:hidden;align-items:stretch;height:100%;position:relative}

.editor-library,.editor-inspector{background:#fff;position:relative;z-index:2;min-height:0;height:100%;max-height:100%;display:flex;flex-direction:column;overflow:hidden;overscroll-behavior:contain}
.editor-library{border-right:1px solid #dedfe2;padding:0}
.editor-inspector{border-left:1px solid #dedfe2;padding:0}
.editor-library-scroll,.editor-inspector-scroll{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;padding:12px 14px 28px;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}
.editor-section-head,.inspector-head{display:flex;align-items:center;justify-content:space-between;flex:0 0 52px;height:52px;padding:0 14px;box-sizing:border-box;border-bottom:1px solid #eee}
.editor-section-head small,.dashboard-settings>small,.inspector-head small{font-size:11px;letter-spacing:.12em;font-weight:700;color:#555}
.editor-section-head button{font-size:18px;width:30px;padding:0}
.editor-search{flex:0 0 auto;min-height:42px;border:1px solid #b8bcc4;border-radius:10px;display:flex;align-items:center;gap:8px;padding:0 12px;margin:0 0 12px;background:#fff;box-sizing:border-box;position:sticky;top:0;z-index:3;box-shadow:0 8px 12px -8px rgba(17,24,39,.12)}
.editor-search span{color:#4b5563;font-size:16px;line-height:1}
.editor-search input{border:0;outline:0;width:100%;font:600 15px/1.3 "Source Sans 3";color:#111827;background:transparent}
.editor-search input::placeholder{color:#4b5563;opacity:1;font-weight:500}
.widget-palette{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:8px 0 12px;align-items:stretch}
.palette-group{grid-column:1/-1;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#5f6368;margin:4px 0 0;padding:8px 2px 0}
.palette-group:first-child{margin-top:0;padding-top:0}
.palette-item{border:1px solid #c5c9d0;border-radius:10px;padding:12px 10px;background:#fff;cursor:grab;transition:.18s;user-select:none;min-height:108px;height:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start}
.palette-item:hover{border-color:#e30613;background:#fffafb;transform:translateY(-1px);box-shadow:0 8px 18px rgba(20,20,20,.06)}
.palette-item:active{cursor:grabbing}
.palette-item i{display:grid;place-items:center;width:28px;height:28px;border-radius:7px;background:#f3f4f6;color:#e30613;font-style:normal;font-size:14px;flex:0 0 auto}
.palette-item b,.palette-item span{display:block;width:100%}
.palette-item b{font-size:13px;font-weight:700;margin-top:8px;color:#111827;line-height:1.25}
.palette-item span{font-size:12px;color:#4b5563;margin-top:auto;padding-top:6px;line-height:1.35;min-height:2.7em}
.editor-library-note{margin-top:14px;border-radius:10px;background:#f4f5f7;padding:12px}
.editor-library-note b,.editor-library-note span{display:block}
.editor-library-note b{font-size:12px;font-weight:600}
.editor-library-note span{font-size:11px;line-height:1.45;color:#5f6368;margin-top:4px}
.aria-query-box{margin:0 0 14px;padding:12px;border:1px solid #d8dbe0;border-radius:12px;background:linear-gradient(180deg,#fff,#f8f9fb);text-align:left}
.aria-query-box>small{display:block;font-size:10px;letter-spacing:.12em;font-weight:700;color:#555;margin-bottom:8px}
.aria-generate-box{border-color:#e3b4b8;background:linear-gradient(180deg,#fff,#fff7f7)}
.aria-generate-box>small{color:#b8000b}
.aria-generate-intro{margin:0 0 10px;font:500 12px/1.45 "Source Sans 3",sans-serif;color:#4b5563}
.aria-generate-status{margin-top:10px;padding:9px 10px;border-radius:8px;font:500 12px/1.4 "Source Sans 3",sans-serif;border:1px solid #e5e7eb;background:#fff;color:#374151}
.aria-generate-status[hidden]{display:none!important}
.aria-generate-status.is-loading{border-color:#c7d7fe;background:#f5f8ff;color:#1e3a8a}
.aria-generate-status.is-ok{border-color:#b7e4c7;background:#f3fbf6;color:#166534}
.aria-generate-status.is-error{border-color:#f1aeb5;background:#fff5f6;color:#9f1239}
.aria-generate-status b{display:block;font-weight:700;margin-bottom:2px}
.aria-generate-box .primary:disabled{opacity:.65;cursor:wait}
.aria-guide-steps{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-wrap:wrap;gap:4px}
.aria-guide-steps li{font-size:10px;font-weight:700;color:#6b7280;background:#eef0f3;border-radius:999px;padding:4px 8px}
.aria-guide-steps li.current{background:#fff0f1;color:#b8000b}
.aria-guide-steps li.done{background:#e7f7ee;color:#16854e}
.aria-query-type{display:block;font-size:11px;font-weight:600;color:#374151;margin:0 0 8px;text-align:left}
.aria-query-type select{display:block;width:100%;margin-top:5px;border:1px solid #c5c9d0;border-radius:8px;padding:8px 10px;font:600 13px "Source Sans 3",sans-serif;color:#111827;background:#fff;outline:none;box-sizing:border-box}
.aria-query-examples{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 8px}
.aria-query-examples button{border:1px solid #d5d7db;background:#fff;border-radius:999px;padding:4px 8px;font:600 10px "Source Sans 3";color:#374151;cursor:pointer}
.aria-query-examples button:hover{border-color:#e77b82;color:#b8000b}
.aria-query-box textarea{display:block;width:100%;box-sizing:border-box;border:1px solid #c5c9d0;border-radius:8px;padding:9px 10px;font:500 13px "Source Sans 3",sans-serif;color:#111827;resize:vertical;min-height:72px;outline:none;background:#fff}
.aria-query-box textarea:focus{border-color:#e77b82;box-shadow:0 0 0 3px rgba(227,6,19,.08)}
.aria-query-box .primary{margin-top:8px}
.aria-query-result{margin-top:10px;padding-top:10px;border-top:1px solid #e5e7eb}
.aria-query-meta{display:flex;flex-direction:column;gap:2px;margin-bottom:6px}
.aria-query-meta b{font-size:13px;font-weight:700;color:#111827}
.aria-query-meta span{font-size:11px;color:#4b5563;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.aria-query-sql{margin:8px 0;padding:10px;border-radius:8px;background:#17191c;color:#e8eaed;font:500 11px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre-wrap;word-break:break-word;max-height:160px;overflow:auto}
.aria-query-advice{display:grid;gap:6px;margin:8px 0}
.aria-advice{border-radius:8px;padding:8px 9px;text-align:left;border:1px solid #e5e7eb;background:#fff}
.aria-advice.ok{border-color:#b7e4c7;background:#f3fbf6}
.aria-advice.info{border-color:#c7d7fe;background:#f5f8ff}
.aria-advice.warning{border-color:#f5c26b;background:#fff8eb}
.aria-advice.error{border-color:#f1aeb5;background:#fff5f6}
.aria-advice b{display:block;font-size:11px;font-weight:700;color:#111827}
.aria-advice span,.aria-advice small{display:block;font-size:11px;line-height:1.4;color:#4b5563;margin-top:2px}
.aria-query-preview-head{display:flex;align-items:center;gap:8px;margin:10px 0 6px;flex-wrap:wrap}
.aria-query-preview-head b{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#555}
.aria-query-preview-head span{font-size:11px;color:#6b7280;flex:1}
.aria-query-preview{border:1px solid #e5e7eb;border-radius:8px;overflow:auto;max-height:160px;background:#fff;margin-bottom:8px}
.aria-query-preview table{width:100%;border-collapse:collapse;font-size:10px}
.aria-query-preview th,.aria-query-preview td{padding:5px 6px;border-bottom:1px solid #eee;text-align:left;white-space:nowrap}
.aria-query-preview th{background:#f4f5f7;position:sticky;top:0;font-weight:700;color:#555}
.aria-query-preview .empty{padding:12px;color:#6b7280;font-size:11px}
.aria-query-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.editor-library.collapsed .aria-query-box{display:none}

.editor-stage{min-width:0;min-height:0;height:100%;max-height:100%;overflow:hidden;background:
  radial-gradient(circle at 12% 18%,rgba(227,6,19,.05),transparent 28%),
  radial-gradient(circle at 88% 10%,rgba(37,99,235,.05),transparent 24%),
  #e7e9ec;
  display:flex;flex-direction:column}
.editor-stagebar{height:auto;min-height:52px;flex:0 0 auto;background:#f3f4f6;border-bottom:1px solid #dedfe2;display:flex;flex-wrap:wrap;align-items:center;padding:8px 12px;gap:8px 10px;box-sizing:border-box}
.editor-stagebar .device-group,.editor-stagebar .grid-controls,.stagebar-center,.stagebar-panels,.canvas-meta{display:flex;align-items:center;gap:8px;min-width:0}
.stagebar-panels{display:none;flex:0 0 auto}
.stagebar-panels button{border:1px solid #c5c9d0;background:#fff;border-radius:8px;height:32px;padding:0 10px;font:600 12px/1 "Source Sans 3";cursor:pointer;color:#111827}
.stagebar-panels button[aria-pressed="true"]{border-color:#e30613;background:#fff5f5;color:#b8000b}
.stagebar-center{flex:1 1 220px;justify-content:flex-start;flex-wrap:wrap;gap:8px;overflow:hidden}
.editor-status{font-size:12px;font-weight:600;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(260px,100%);padding:0 8px 0 0;border-right:1px solid #d5d7db;margin-right:2px;line-height:1.2}
.editor-stagebar .device-group{flex:0 0 auto;background:#e8eaed;border-radius:9px;padding:3px;gap:2px}
.editor-stagebar .device-group button{border:0;background:transparent;color:#6b7280;height:30px;min-height:30px;padding:0 12px;border-radius:7px;font:600 12px/1 "Source Sans 3"}
.editor-stagebar .device-group button.active{background:#fff;color:#111827;box-shadow:0 1px 4px rgba(0,0,0,.08)}
.grid-controls{flex:0 1 auto;flex-wrap:wrap}
.grid-controls label{display:inline-flex;align-items:center;gap:6px;height:32px;font-size:11px;font-weight:700;color:#6b7280;margin:0}
.grid-controls select,.grid-controls input{border:1px solid #d5d7db;border-radius:7px;background:#fff;height:32px;padding:0 8px;font:600 13px/1 "Source Sans 3";color:#17191c;outline:none;box-sizing:border-box}
.grid-controls select{width:56px}
.grid-controls input{width:64px}
#stackColumn{border:1px solid #d5d7db!important;background:#fff!important;color:#17191c!important;border-radius:8px!important;height:32px!important;min-height:32px!important;padding:0 12px!important;font:600 12px/1 "Source Sans 3"!important}
.canvas-meta{flex:0 0 auto;margin-left:auto;gap:10px;font-size:12px;font-weight:600;color:#5f6368;white-space:nowrap;height:32px}
.canvas-meta span{display:inline-flex;align-items:center;gap:6px;line-height:1}
.canvas-meta i{width:7px;height:7px;border-radius:50%;background:#18a05e;box-shadow:0 0 0 3px rgba(24,160,94,.12);flex:0 0 auto}
.studio-backdrop{display:none;position:absolute;inset:0;border:0;padding:0;margin:0;background:rgba(17,24,39,.35);z-index:8;cursor:pointer}
.editor-scroll{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;padding:24px;position:relative;overscroll-behavior:contain;scrollbar-gutter:stable}
.webix-host{width:100%;max-width:100%;min-height:240px;margin:0 auto;border-radius:16px;overflow:hidden;box-shadow:0 18px 50px rgba(22,24,27,.12);background:#f7f8f9;border:1px solid #d9dcdf;box-sizing:border-box;padding:0}
.webix-host.drag-over{outline:2px solid var(--red);outline-offset:4px}
.canvas-empty{position:absolute;inset:80px 40px auto;left:50%;transform:translateX(-50%);width:min(420px,80%);z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;color:#5f6368;text-align:center;padding:28px;border:1px dashed #c8ccd0;border-radius:14px;background:rgba(255,255,255,.72)}
.canvas-empty.hidden{display:none}
.canvas-empty b{font:700 18px "Source Sans 3";color:#3c4043}
.canvas-empty span{font-size:14px;margin-top:6px;line-height:1.45}
.editor-brand .mascot-avatar{width:34px;height:34px;border-radius:10px;object-fit:contain;object-position:center top;background:#fff;border:1px solid #ececec;box-shadow:none;filter:none!important;flex:0 0 34px;padding:1px;box-sizing:border-box}
.mascot--studio{display:block;width:min(220px,70%);max-height:140px;object-fit:contain;margin:0 auto 10px;filter:none!important;animation:studio-mascot-float 4.8s ease-in-out infinite}
@keyframes studio-mascot-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@media(prefers-reduced-motion:reduce){.mascot--studio{animation:none}}
.studio-missing{padding:40px;color:#a11;font:700 14px "Source Sans 3"}

/* Webix dashboard theming */
.studio-dashboard,.studio-dashboard .webix_view{background:transparent!important;font-family:"Source Sans 3",sans-serif!important}
.studio-dashboard .webix_dashboard{
  background:
    linear-gradient(rgba(0,0,0,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,0,0,.035) 1px,transparent 1px),
    #f4f5f7!important;
  background-size:var(--cell-w,8.333%) var(--cell-h,90px),var(--cell-w,8.333%) var(--cell-h,90px),auto!important;
  border-radius:16px;padding:0!important;margin:0!important;overflow:hidden!important;box-sizing:border-box!important}
/* Do NOT force width:auto — Webix sets pixel widths; auto lets charts spill past the boxed host */
.studio-panel{border:1px solid #cfd3d8!important;border-radius:14px!important;overflow:hidden!important;box-shadow:0 8px 22px rgba(20,22,25,.05);background:#fff!important;transition:box-shadow .15s,border-color .15s;box-sizing:border-box!important;max-width:100%!important}
.studio-panel.selected{border-color:#e30613!important;box-shadow:inset 0 0 0 2px rgba(227,6,19,.28),0 8px 18px rgba(0,0,0,.06)!important}
.studio-dashboard,.studio-dashboard>.webix_view,.studio-dashboard .webix_dashboard{max-width:100%!important;overflow:hidden!important;box-sizing:border-box!important}
.studio-dashboard .webix_view{overflow:hidden!important}
.studio-panel .webix_template{padding:0!important;overflow:hidden!important;border-radius:13px;max-width:100%!important;box-sizing:border-box!important}
.studio-panel .webix_view{max-width:100%!important;overflow:hidden!important;box-sizing:border-box!important}
.studio-chart-host .fusioncharts-container,.studio-chart-host>span{width:100%!important;height:100%!important;max-width:100%!important;overflow:hidden!important}
.studio-panel .webix_drag_handle,.studio-panel .webix_panel_drag{opacity:.7}
.studio-panel .webix_resizer{
  background:transparent!important;
  z-index:6!important;
}
.studio-panel .webix_resize_handle,
.studio-panel .webix_resizer_bottom,
.studio-panel .webix_resizer_right,
.studio-panel [class*="resizer"]{
  z-index:7!important;
}
.studio-panel:after{
  content:"";
  position:absolute;
  right:4px;bottom:4px;
  width:14px;height:14px;
  border-right:2px solid #e30613;
  border-bottom:2px solid #e30613;
  border-radius:0 0 3px 0;
  opacity:.55;
  pointer-events:none;
  z-index:5;
}
.editor-preview .studio-panel:after,
.editor-preview .studio-panel .webix_resizer{display:none!important}
.appearance-flat{box-shadow:none!important;background:#f8f9fa!important}
.appearance-plain{box-shadow:none!important;background:transparent!important;border-color:transparent!important}
.appearance-contrast{background:#1d1f22!important;border-color:#1d1f22!important;color:#fff}
.is-annotation .studio-widget{padding:6px}
.is-annotation .studio-widget-meta,.is-annotation .studio-widget-foot{display:none}
.is-annotation .studio-widget-visual{margin-top:0}
.appearance-contrast .studio-widget-meta small,.appearance-contrast .studio-widget-foot{color:#9aa0a6!important}
.appearance-contrast .studio-widget-meta b{color:#fff!important}
.appearance-contrast .studio-table-head,.appearance-contrast .studio-table>div{border-color:#333!important}

.studio-widget{height:100%;min-height:100%;max-width:100%;display:flex;flex-direction:column;padding:12px 12px 8px;box-sizing:border-box;overflow:hidden;--widget-color:#e30613}
.studio-widget-meta small{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#5f6368;font-weight:600}
.studio-widget-meta b{display:block;font:700 15px "Source Sans 3";margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#171717}
.studio-widget-visual{flex:1;min-height:0;min-width:0;margin-top:8px;position:relative;overflow:hidden}
.studio-widget-foot{display:flex;justify-content:space-between;gap:8px;font-size:10px;color:#5f6368;margin-top:6px;padding-top:6px;border-top:1px solid #f0f1f2}
.studio-chart-host{width:100%!important;height:100%!important;max-width:100%!important;overflow:hidden!important;position:relative}
.studio-chart-host>span,.studio-chart-host>div,.studio-chart-host svg,.studio-chart-host canvas{max-width:100%!important;max-height:100%!important}
.studio-chart-host,.studio-chart-host>span,.studio-chart-host svg{width:100%!important;height:100%!important}
.studio-chart-fallback{height:100%;display:grid;place-items:center;color:#666;font-size:12px}
.studio-kpi{height:100%;display:flex;flex-direction:column;justify-content:center;gap:4px}
.studio-kpi strong{font:700 34px/1 "Source Sans 3";color:var(--c,#e30613)}
.studio-kpi span{font-size:12px;color:#168b55;font-weight:600}
.studio-kpi small{font-size:11px;color:#5f6368;text-transform:uppercase;letter-spacing:.06em}
.studio-table{display:grid;gap:0;font-size:12px;height:100%;align-content:start;overflow:auto}
.studio-table-head,.studio-table>div{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:10px;padding:8px 4px;border-bottom:1px solid #eee;min-width:0}
.studio-table-head{font-weight:700;color:#5f6368;font-size:11px;text-transform:uppercase;letter-spacing:.04em;position:sticky;top:0;background:#fff;z-index:1}
.studio-table span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.studio-alerts{display:grid;gap:7px}
.studio-alerts>div{display:grid;grid-template-columns:8px 1fr;gap:8px;align-items:start;background:#fff7f7;border-radius:8px;padding:8px}
.studio-alerts i{width:7px;height:7px;border-radius:50%;margin-top:4px}
.studio-alerts b{display:block;font-size:12px}
.studio-alerts span{display:block;font-size:11px;color:#5f6368;margin-top:2px}
.studio-text{font-size:13px;line-height:1.5;color:#3c4043;padding:4px 2px}
.studio-label{height:100%;display:flex;align-items:center;justify-content:inherit;padding:2px 4px;line-height:1.2;word-break:break-word;font-family:"Source Sans 3",sans-serif}
.studio-shape-wrap{height:100%;width:100%;min-height:24px;position:relative;touch-action:none}
.studio-shape{width:100%;height:100%;display:block;overflow:visible}
.studio-shape-line,.studio-shape-arrow{min-height:18px}
.shape-rotate-handle{position:absolute;top:4px;right:4px;width:30px;height:30px;border:1px solid #d5d7db;border-radius:999px;background:#fff;color:#111827;font-size:15px;line-height:1;cursor:grab;z-index:8;box-shadow:0 4px 12px rgba(0,0,0,.12);padding:0;display:grid;place-items:center;user-select:none}
.shape-rotate-handle:hover{border-color:#e30613;color:#b8000b}
.shape-rotate-handle:active{cursor:grabbing;background:#fff5f5}
.studio-panel.selected .shape-rotate-handle{border-color:#e30613}
.shape-rotate-badge{position:absolute;left:8px;bottom:6px;font:700 10px/1 "Source Sans 3";color:#5f6368;background:rgba(255,255,255,.92);border-radius:999px;padding:3px 7px;border:1px solid #e5e7eb;z-index:7;pointer-events:none}
.studio-shape-wrap.is-rotating .shape-rotate-badge{color:#b8000b;border-color:#f0b4b8}
.rotate-controls{display:grid;grid-template-columns:1fr 64px 14px;gap:6px;align-items:center;margin-top:6px}
.rotate-controls input[type="range"]{width:100%}
.rotate-controls input[type="number"]{height:32px;border:1px solid #d5d7db;border-radius:7px;padding:0 6px;font:600 13px "Source Sans 3"}
.rotate-unit{font-size:12px;font-weight:700;color:#6b7280}
.rotate-presets{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 4px}
.rotate-presets button{border:1px solid #d5d7db;background:#fff;border-radius:7px;height:28px;padding:0 8px;font:600 11px "Source Sans 3";cursor:pointer;color:#374151}
.rotate-presets button:hover{border-color:#e77b82;color:#b8000b}
.color-options button.swatch-light{box-shadow:inset 0 0 0 1px #d0d5dd}
.annotation-fields{margin-bottom:4px}
.inspector-tabs button.hidden{display:none}

.inspector-empty{height:38%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#5f6368;padding:10px}
.inspector-empty>span{width:43px;height:43px;border-radius:12px;background:#f3f3f3;display:grid;place-items:center;font-size:20px}
.inspector-empty b{font:700 15px "Source Sans 3";color:#222;margin-top:12px}
.inspector-empty p{font-size:13px;line-height:1.5;max-width:210px}
.inspector-head{justify-content:flex-start;gap:5px;margin-bottom:4px}
.inspector-head>div{flex:1}
.inspector-head b{display:block;font:700 16px "Source Sans 3";margin-top:3px}
.inspector-head .danger{color:#d90010}
.inspector-tabs{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #e5e5e5;margin:14px 0 12px}
.inspector-tabs button{border:0;background:none;font-size:13px;font-weight:600;padding:10px 2px;color:#555;border-bottom:2px solid transparent;cursor:pointer;font-family:inherit}
.inspector-tabs button.active{color:#171717;border-color:var(--red)}
.inspector-panel{display:none}
.inspector-panel.active{display:block}
.inspector-panel label,.dashboard-settings label{display:block;font-size:12px;font-weight:600;color:#374151;margin:0 0 11px}
.inspector-panel input,.inspector-panel textarea,.inspector-panel select,.dashboard-settings textarea,.dashboard-settings select,.dashboard-settings input{display:block;width:100%;border:1px solid #cfd2d6;border-radius:8px;background:#fff;padding:9px 10px;margin-top:5px;font:400 14px "Source Sans 3";outline:none;box-sizing:border-box;color:#111827}
.inspector-panel input:focus,.inspector-panel textarea:focus,.inspector-panel select:focus,.dashboard-settings textarea:focus,.dashboard-settings select:focus,.dashboard-settings input:focus{border-color:#e77b82;box-shadow:0 0 0 3px rgba(227,6,19,.07)}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.color-options{display:flex;gap:7px;margin-top:7px;flex-wrap:wrap}
.color-options button{width:25px;height:25px;border-radius:50%;border:3px solid #fff;background:var(--swatch);box-shadow:0 0 0 1px #ddd;cursor:pointer}
.color-options button.active{box-shadow:0 0 0 2px var(--swatch)}
.toggle-field{display:flex!important;align-items:center;justify-content:space-between;border-top:1px solid #eee;padding-top:11px}
.toggle-field b,.toggle-field small{display:block}
.toggle-field small{font-size:11px;color:#666;margin-top:2px}
.toggle-field input{width:auto;margin:0}
.dashboard-settings{border-top:1px solid #e5e5e5;margin-top:16px;padding-top:14px}
.dashboard-settings>label:first-of-type{margin-top:10px}
.chip-list{display:grid;gap:6px;margin:8px 0 10px}
.chip-row{display:grid;grid-template-columns:1fr auto;gap:4px 8px;align-items:center;background:#f6f7f8;border-radius:8px;padding:8px 8px 8px 10px}
.chip-row b{font-size:12px}
.chip-row span{grid-column:1;font-size:11px;color:#5f6368}
.chip-row button{grid-row:1/span 2;border:0;background:transparent;font-size:14px;cursor:pointer;color:#666}
.muted{font-size:11px;color:#5f6368;line-height:1.45;margin:0 0 8px}
.ghost.wide.compact{width:100%;margin-top:4px}
.hidden{display:none!important}

.editor-library.collapsed{width:54px;min-width:54px}
.editor-library.collapsed .editor-search,
.editor-library.collapsed .palette-item b,
.editor-library.collapsed .palette-item span,
.editor-library.collapsed .editor-library-note,
.editor-library.collapsed .editor-section-head small,
.editor-library.collapsed .aria-query-box{display:none}
.editor-library.collapsed .editor-library-scroll{padding:8px}
.editor-library.collapsed .widget-palette{grid-template-columns:1fr}
.editor-body.library-collapsed{grid-template-columns:54px minmax(0,1fr) minmax(240px,300px)}
.editor-body.inspector-collapsed{grid-template-columns:minmax(220px,260px) minmax(0,1fr) 0}
.editor-body.library-collapsed.inspector-collapsed{grid-template-columns:54px minmax(0,1fr) 0}
.editor-body.inspector-collapsed .editor-inspector{display:none}

@media(max-width:1360px){
  .editor-topbar{grid-template-columns:minmax(120px,180px) minmax(0,1fr) auto;padding:8px 12px;gap:8px 10px}
  .editor-brand b{font-size:14px}
  .editor-name-label{display:none}
  .editor-actions{gap:6px}
  .editor-actions button{padding:0 10px}
  .editor-body{grid-template-columns:minmax(200px,230px) minmax(0,1fr) minmax(230px,270px)}
  .editor-body.library-collapsed{grid-template-columns:54px minmax(0,1fr) minmax(230px,270px)}
  .editor-status{max-width:160px}
  .meta-hint{display:none}
}

@media(max-width:1180px){
  .lbl-full{display:none}
  .lbl-short{display:inline}
  .editor-topbar{grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto}
  .editor-brand{grid-column:1}
  .editor-actions{grid-column:2;justify-self:end}
  .editor-doc{grid-column:1/-1;justify-content:stretch}
  .editor-title-wrap{max-width:none;width:100%}
  .editor-doc input{width:100%}
  .editor-body{grid-template-columns:minmax(190px,220px) minmax(0,1fr) minmax(220px,250px)}
  .editor-body.library-collapsed{grid-template-columns:54px minmax(0,1fr) minmax(220px,250px)}
  .editor-scroll{padding:14px}
  .editor-status{display:none}
  .grid-controls label span{display:none}
  .editor-stagebar .device-group button{padding:0 8px}
}

@media(max-width:960px){
  .stagebar-panels{display:flex}
  .editor-body{grid-template-columns:minmax(0,1fr)!important}
  .editor-library,.editor-inspector{
    position:absolute;top:0;bottom:0;z-index:9;width:min(320px,88vw);max-width:88vw;
    box-shadow:0 18px 50px rgba(15,23,42,.22);transform:translateX(-105%);transition:transform .2s ease;
  }
  .editor-library{left:0}
  .editor-inspector{right:0;left:auto;transform:translateX(105%);border-left:1px solid #dedfe2}
  .editor-body.drawer-library .editor-library,
  .editor-body.library-collapsed.drawer-library .editor-library{transform:translateX(0);width:min(320px,88vw)}
  .editor-body.drawer-inspector .editor-inspector{display:flex;transform:translateX(0)}
  .editor-body.drawer-library .studio-backdrop,
  .editor-body.drawer-inspector .studio-backdrop{display:block}
  .editor-library.collapsed{width:min(320px,88vw)}
  .editor-library.collapsed .editor-search,
  .editor-library.collapsed .palette-item b,
  .editor-library.collapsed .palette-item span,
  .editor-library.collapsed .editor-library-note,
  .editor-library.collapsed .editor-section-head small,
  .editor-library.collapsed .aria-query-box{display:revert}
  .editor-library.collapsed .aria-query-box{display:block}
  .editor-library.collapsed .widget-palette{grid-template-columns:1fr 1fr}
  .editor-library.collapsed .editor-library-scroll{padding:12px 14px 28px}
  .canvas-meta{margin-left:0}
  .stagebar-center{flex:1 1 100%;order:3}
  .editor-stagebar{gap:8px}
}

@media(max-width:700px){
  dialog.dashboard-editor{overflow:hidden}
  .editor-shell{min-width:0;width:100%}
  .editor-topbar{position:sticky;top:0;z-index:6}
  .editor-brand>div small{display:none}
  .editor-actions button{padding:0 8px;font-size:12px}
  #editorUndo,#editorRedo{width:32px}
  .editor-scroll{padding:10px}
  .webix-host{border-radius:12px}
  .canvas-empty{inset:48px 16px auto;width:min(360px,90%);padding:18px}
  .mascot--studio{max-height:100px}
}
