/* Arquivo de estilos locais do projeto */
:root{
  --brand-primary:#0d6efd;
  --brand-primary-rgb:13,110,253;
  --brand-selection:#eef4ff;
  --bg:#f6f7f9;
  --text:#1f2933;
  --muted:#667085;
  --line:#e5e7eb;
}
body{font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-kerning:normal;}
.btn-primary{--bs-btn-bg:var(--brand-primary);--bs-btn-border-color:var(--brand-primary);--bs-btn-hover-bg:color-mix(in srgb,var(--brand-primary) 86%,#000);--bs-btn-hover-border-color:color-mix(in srgb,var(--brand-primary) 86%,#000);--bs-btn-active-bg:color-mix(in srgb,var(--brand-primary) 78%,#000);}
.btn-outline-primary{--bs-btn-color:var(--brand-primary);--bs-btn-border-color:color-mix(in srgb,var(--brand-primary) 55%,#fff);--bs-btn-hover-bg:var(--brand-primary);--bs-btn-hover-border-color:var(--brand-primary);}
a{color:var(--brand-primary);}
:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px;}
.theme-swatch{width:12px;height:12px;border-radius:3px;background:var(--swatch);box-shadow:0 0 0 1px rgba(16,24,40,.15);}
.dropdown-item.active,.dropdown-item:active{background:var(--brand-selection);color:var(--brand-primary);}

/* Consolidated project studio */
.studio-page,.workflow-studio{max-width:1600px;margin:0 auto;color:#1f2933;}
.studio-page-header,.workflow-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px;}
.studio-page-header h1,.workflow-header h1{font-size:1.75rem;line-height:1.2;font-weight:700;margin:6px 0;color:#101828;}
.studio-page-header p,.workflow-header p{margin:0;color:#667085;max-width:68ch;}
.studio-breadcrumb{display:flex;align-items:center;gap:8px;color:#667085;font-size:.75rem;}
.studio-breadcrumb i{font-size:.6rem;color:#98a2b3;}
.studio-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;}
.studio-header-actions .btn{min-height:40px;display:inline-flex;align-items:center;}
.studio-feedback{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid;border-radius:6px;margin-bottom:16px;font-size:.875rem;}
.studio-feedback.is-success{background:#ecfdf3;border-color:#abefc6;color:#067647;}
.studio-feedback.is-error{background:#fef3f2;border-color:#fecdca;color:#b42318;}
.studio-tabs{display:flex;align-items:center;gap:24px;border-bottom:1px solid #e5e7eb;margin-bottom:16px;min-height:42px;}
.studio-tabs a,.studio-tabs button{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 2px;border:0;background:transparent;color:#475467;text-decoration:none;font-size:.875rem;font-weight:550;}
.studio-tabs a:hover,.studio-tabs button:hover{color:#101828;}
.studio-tabs .active{color:var(--brand-primary);}
.studio-tabs .active::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--brand-primary);}
.studio-tabs a span,.studio-tabs button span{min-width:20px;padding:1px 6px;border-radius:10px;background:#f2f4f7;color:#475467;font-size:.7rem;text-align:center;}
.studio-filterbar{display:flex;align-items:center;gap:8px;margin-bottom:16px;}
.studio-filterbar .studio-search{flex:1 1 360px;}
.studio-filterbar .form-select{min-width:150px;}
.studio-search{position:relative;display:block;}
.studio-search>i{position:absolute;z-index:2;left:12px;top:50%;transform:translateY(-50%);color:#667085;font-size:.8rem;}
.studio-search .form-control,.studio-search input{padding-left:36px;}
.studio-search.compact input{width:100%;height:34px;border:1px solid #d0d5dd;border-radius:5px;background:#fff;font-size:.78rem;}
.studio-table-shell,.workflow-list-surface{overflow:hidden;border:1px solid #e4e7ec;border-radius:8px;background:#fff;}
.studio-table-heading{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #e4e7ec;font-size:.8rem;}
.studio-table-heading span{color:#667085;}
.studio-table thead th{padding:10px 16px;background:#f9fafb;color:#667085;border-bottom:1px solid #e4e7ec;font-size:.72rem;font-weight:650;white-space:nowrap;}
.studio-table tbody td{padding:12px 16px;border-color:#f0f2f5;font-size:.8rem;vertical-align:middle;}
.studio-table tbody tr:hover{background:#fcfcfd;}
.studio-asset-name{display:block;color:#101828;font-size:.875rem;font-weight:650;text-decoration:none;}
.studio-table td>small{display:block;color:#667085;margin-top:2px;}
.asset-kind,.asset-flow,.studio-state{display:inline-flex;align-items:center;gap:7px;}
.asset-kind{font-weight:600;color:#344054;}
.asset-kind.is-ingestao i{color:#12805c}.asset-kind.is-transformacao i{color:#5b5bd6;}
.asset-flow{max-width:360px;color:#667085;white-space:nowrap;}
.asset-flow span,.asset-flow strong{overflow:hidden;text-overflow:ellipsis;}
.asset-flow i{font-size:.65rem;color:#98a2b3;}
.asset-flow strong{color:#344054;}
.studio-state{font-size:.75rem;font-weight:600;text-transform:capitalize;white-space:nowrap;}
.studio-state>i{width:7px;height:7px;border-radius:50%;background:#98a2b3;}
.studio-state.is-success{color:#067647}.studio-state.is-success>i{background:#12b76a;}
.studio-state.is-error{color:#b42318}.studio-state.is-error>i{background:#f04438;}
.studio-state.is-ready{color:var(--brand-primary)}.studio-state.is-ready>i{background:var(--brand-primary);}
.studio-state.is-muted{color:#667085}.studio-state.is-muted>i{background:#98a2b3;}
.tag-color--slate{--tag-bg:#f2f4f7;--tag-border:#d0d5dd;--tag-ink:#344054}
.tag-color--blue{--tag-bg:#eff8ff;--tag-border:#b2ddff;--tag-ink:#175cd3}
.tag-color--indigo{--tag-bg:#eef4ff;--tag-border:#c7d7fe;--tag-ink:#3538cd}
.tag-color--teal{--tag-bg:#ecfdf8;--tag-border:#a9e8db;--tag-ink:#0e5f5a}
.tag-color--amber{--tag-bg:#fffaeb;--tag-border:#fedf89;--tag-ink:#7a4e00}
.tag-color--rose{--tag-bg:#fff1f3;--tag-border:#fecdd3;--tag-ink:#9f1239}
.tag-color--violet{--tag-bg:#f5f3ff;--tag-border:#ddd6fe;--tag-ink:#6d28d9}
.asset-tags{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-top:5px}
.asset-tag{display:inline-flex;align-items:center;min-height:20px;padding:2px 7px;border:1px solid var(--tag-border);border-radius:10px;background:var(--tag-bg);color:var(--tag-ink);font-size:.65rem;font-weight:650;line-height:1.2;text-decoration:none;white-space:nowrap}
.asset-tag:hover{border-color:color-mix(in srgb,var(--tag-ink) 42%,var(--tag-border));color:var(--tag-ink)}
.asset-tag-editor{display:flex;align-items:center;gap:18px;padding:9px 12px;border-bottom:1px solid #dfe3e8;background:#fbfcfd}
.asset-tag-editor-heading{display:flex;flex:0 0 190px;flex-direction:column;gap:2px}
.asset-tag-editor-heading strong{display:flex;align-items:center;gap:7px;color:#344054;font-size:.73rem}
.asset-tag-editor-heading strong i{color:#667085}
.asset-tag-editor-heading span,.asset-tag-create small{color:#667085;font-size:.66rem;line-height:1.35}
.asset-tag-editor-controls{display:flex;align-items:center;gap:14px;min-width:0;flex:1}
.asset-tag-picker{display:flex;align-items:center;flex:1;flex-wrap:wrap;gap:5px;min-width:160px}
.asset-tag-picker-empty{color:#667085;font-size:.72rem}
.asset-tag-option{position:relative;margin:0;cursor:pointer}
.asset-tag-option input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}
.asset-tag-option span{display:inline-flex;align-items:center;gap:5px;min-height:26px;padding:3px 8px;border:1px solid #d0d5dd;border-radius:13px;background:#fff;color:#475467;font-size:.7rem;font-weight:600;transition:background-color .16s ease,border-color .16s ease,color .16s ease}
.asset-tag-option span i{width:6px;height:6px;border-radius:50%;background:var(--tag-ink)}
.asset-tag-option:hover span{border-color:var(--tag-border);background:var(--tag-bg);color:var(--tag-ink)}
.asset-tag-option input:checked+span{border-color:var(--tag-border);background:var(--tag-bg);color:var(--tag-ink);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--tag-ink) 16%,transparent)}
.asset-tag-option input:focus-visible+span{outline:2px solid var(--brand-primary);outline-offset:2px}
.asset-tag-create{display:grid;grid-template-columns:auto minmax(180px,260px);align-items:center;gap:3px 8px;margin:0}
.asset-tag-create>span{color:#475467;font-size:.68rem;font-weight:650;white-space:nowrap}
.asset-tag-create .form-control{grid-row:1 / span 2;grid-column:2;min-height:30px;font-size:.72rem}
.asset-tag-create small{grid-column:1;max-width:110px}
.asset-tag-editor--compact{display:block;padding:0;border:0;background:transparent}
.asset-tag-editor--compact .asset-tag-editor-heading{display:none}
.asset-tag-editor--compact .asset-tag-editor-controls{flex-direction:row;gap:6px;min-width:0}
.asset-tag-editor--compact .asset-tag-picker{min-width:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}
.asset-tag-editor--compact .asset-tag-option{flex:0 0 auto}
.asset-tag-editor--compact .asset-tag-option span{min-height:30px;padding:3px 7px;font-size:.65rem}
.asset-tag-editor--compact .asset-tag-create{display:block;min-width:130px;max-width:170px}
.asset-tag-editor--compact .asset-tag-create>span,.asset-tag-editor--compact .asset-tag-create small{display:none}
.asset-tag-editor--compact .asset-tag-create .form-control{width:100%;min-height:30px;height:30px;padding:3px 7px;font-size:.68rem}
.studio-empty{display:flex;align-items:center;justify-content:center;gap:16px;min-height:180px;padding:32px;color:#667085;}
.studio-empty>i{display:grid;place-items:center;width:42px;height:42px;border-radius:8px;background:#f2f4f7;color:#475467;font-size:1rem;}
.studio-empty strong{display:block;color:#101828;}
.studio-empty p{margin:3px 0 0;font-size:.8rem;}
.studio-empty.compact{min-height:110px;justify-content:flex-start;}
.studio-panel{border:1px solid #e4e7ec;border-radius:8px;background:#fff;}
.studio-panel-body{padding:20px;}
.studio-note{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid #e4e7ec;border-radius:8px;background:#f9fafb;color:#475467;font-size:.8rem;margin-bottom:16px;}
.studio-note i{margin-top:2px;color:#667085;}
.studio-note strong{display:block;color:#101828;font-size:.8rem;}

/* Workflow studio: workspace integrado ao mesmo shell da aplicação */
.main-content.is-workspace{min-width:0;}
.main-content.is-workspace>.workspace-content{display:flex;min-width:0;min-height:0;padding:20px!important;overflow:hidden;}
.workflow-studio{display:flex;width:100%;min-width:0;height:calc(100vh - 40px);margin:0;max-width:none;flex-direction:column;overflow:hidden;border:1px solid #e4e7ec;border-radius:8px;background:#fff;}
@media(min-width:769px){
  html:has(body.workspace-page),body.workspace-page{overflow:hidden;}
  .app-wrapper:has(.main-content.is-workspace),.main-content.is-workspace{height:100vh;min-height:0;}
  .main-content.is-workspace>.workspace-content{height:100%;}
  .main-content.is-workspace .workflow-studio{height:100%;}
}
.workflow-header{padding:20px 24px 14px;margin:0;border-bottom:1px solid #e4e7ec;}
.workflow-title-row{display:flex;align-items:center;gap:12px;}
.workflow-title-row h1{font-size:1.5rem;margin:7px 0 3px;}
.workflow-active-state{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border:1px solid #d0d5dd;border-radius:16px;color:#667085;font-size:.72rem;}
.workflow-active-state i{width:7px;height:7px;border-radius:50%;background:#98a2b3;}
.workflow-active-state.is-active{background:#f0fdf4;border-color:#bbf7d0;color:#067647}.workflow-active-state.is-active i{background:#12b76a;}
.workflow-tabs{padding:0 24px;margin:0;}
.workflow-validation{margin-left:auto;display:inline-flex;align-items:center;gap:6px;color:#067647;font-size:.75rem;}
.workflow-panel{display:none;min-height:0}.workflow-panel.active{display:block;overflow:auto}.workflow-panel[data-workflow-panel="flow"].active{display:flex;flex:1 1 auto;overflow:hidden;}
.workflow-workbench{display:grid;width:100%;min-height:0;grid-template-columns:264px minmax(0,1fr);overflow:hidden;}
.asset-library{position:relative;display:flex;min-height:0;flex-direction:column;border-right:1px solid #e4e7ec;background:#fcfcfd;padding:12px;overflow:hidden;}
.asset-library-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:.8rem;}
.asset-library-head button{width:30px;height:30px;border:0;background:transparent;color:#667085;border-radius:4px;}
.asset-library-head button:hover{background:#f2f4f7;color:#101828;}
.asset-library .studio-search{flex:0 0 auto;}
.asset-library-scroll{min-height:0;flex:1 1 auto;margin-top:2px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;}
.asset-library-group{margin-top:16px;}
.asset-library-group h2{display:flex;justify-content:space-between;margin:0 4px 6px;color:#475467;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;}
.asset-library-group h2 span{font-variant-numeric:tabular-nums;}
.asset-library-item{display:flex;align-items:stretch;gap:2px;border-radius:5px;}
.asset-library-item:hover{background:#f2f4f7;}
.asset-library-item-add{display:flex;align-items:flex-start;gap:9px;min-height:46px;flex:1 1 auto;min-width:0;padding:8px;border:0;background:transparent;color:#344054;text-align:left;border-radius:5px;cursor:pointer;}
.asset-library-item-add:hover{color:#101828;}
.asset-library-item-add>i:first-child{width:18px;margin-top:2px;text-align:center}.asset-library-item-add>i.is-ingestion{color:#12805c}.asset-library-item-add>i.is-transformation{color:#5b5bd6;}
.asset-library-item-add span{min-width:0;flex:1 1 auto}.asset-library-item-add strong,.asset-library-item-add small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.asset-library-item-add strong{font-size:.76rem;font-weight:600}.asset-library-item-add small{margin-top:2px;color:#667085;font-size:.66rem;}
.asset-library-item-add-hint{align-self:center;width:16px;text-align:center;color:#12805c;opacity:0;transition:opacity .12s ease;}
.asset-library-item:hover .asset-library-item-add-hint{opacity:1;}
.asset-library-item-edit{display:flex;align-items:center;justify-content:center;width:26px;flex:0 0 auto;align-self:center;color:#98a2b3;text-decoration:none;border-radius:4px;opacity:0;transition:opacity .12s ease;}
.asset-library-item:hover .asset-library-item-edit{opacity:1;}
.asset-library-item-edit:hover{background:#e4e7ec;color:#101828;}
.asset-library-actions{display:grid;flex:0 0 auto;gap:7px;padding:12px 8px 0;border-top:1px solid #e4e7ec;margin-top:12px;font-size:.75rem;}
.asset-library.is-collapsed{width:52px;padding:12px 10px;overflow:hidden;}
.asset-library.is-collapsed .asset-library-head strong,.asset-library.is-collapsed .studio-search,.asset-library.is-collapsed .asset-library-scroll,.asset-library.is-collapsed .asset-library-actions{display:none;}
.workflow-workbench:has(.asset-library.is-collapsed){grid-template-columns:52px minmax(0,1fr);}
.workflow-canvas-shell{display:grid;min-width:0;min-height:0;grid-template-rows:auto minmax(0,1fr);background:#fff;overflow:hidden;}
.workflow-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:7px 12px;border-bottom:1px solid #e4e7ec;background:#fff;}
.workflow-picker{display:flex;align-items:center;gap:8px}.workflow-picker label{color:#667085;font-size:.72rem}.workflow-picker .form-select{width:220px;}
.workflow-toolbar-actions{display:flex;gap:4px}.workflow-toolbar-actions button,.workflow-toolbar-actions a{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:34px;height:34px;padding:0 9px;border:1px solid #d0d5dd;border-radius:5px;background:#fff;color:#475467;text-decoration:none;font-size:.72rem;}
.workflow-toolbar-actions button:disabled{opacity:.4}.workflow-toolbar-actions a:hover{background:#f9fafb;color:#101828;}
.workflow-view-switch{display:inline-flex;padding:3px;border:1px solid #d0d5dd;border-radius:6px;background:#f9fafb;}
.workflow-toolbar-actions .workflow-view-switch button{height:26px;min-width:auto;padding:0 9px;border:0;border-radius:4px;background:transparent;color:#667085;}
.workflow-toolbar-actions .workflow-view-switch button:hover{background:#fff;color:#344054;}
.workflow-toolbar-actions .workflow-view-switch button.active{background:#fff;color:var(--brand-primary);box-shadow:0 1px 3px rgba(16,24,40,.12);}
.workflow-task-list{display:flex;min-width:0;min-height:0;flex-direction:column;background:#f8fafc;}
.workflow-task-list[hidden]{display:none;}
.workflow-task-list-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-bottom:1px solid #e4e7ec;background:#fff;}
.workflow-task-list-head strong,.workflow-task-list-head span{display:block}.workflow-task-list-head strong{font-size:.86rem;color:#101828}.workflow-task-list-head span{margin-top:2px;color:#667085;font-size:.7rem;}
.workflow-task-list-body{display:flex;min-width:0;min-height:0;flex:1 1 auto;}
.workflow-task-list-scroll{min-height:0;min-width:0;flex:1 1 auto;padding:14px 18px 24px;overflow:auto;overscroll-behavior:contain;}
.workflow-list-inspector{flex:0 0 320px;min-height:0;padding:18px;border-left:1px solid #e4e7ec;background:#fff;overflow:auto;}
.workflow-list-inspector-empty{display:flex;height:100%;min-height:220px;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#98a2b3;text-align:center;font-size:.74rem;line-height:1.5;}
.workflow-list-inspector-empty i{font-size:1.3rem;color:#c3c9d4;}
.workflow-task-row{cursor:pointer;}
.workflow-task-row.is-selected{background:#f5f6ff;box-shadow:inset 2px 0 0 var(--brand-primary);}
.workflow-task-group{margin-bottom:14px;border:1px solid #e1e6ec;border-radius:8px;background:#fff;overflow:hidden;}
.workflow-task-group>header{display:flex;align-items:center;gap:10px;min-height:54px;padding:9px 14px;border-bottom:1px solid #e7ebf0;background:#fbfcfd;}
.workflow-task-stage-icon{display:grid;place-items:center;width:30px;height:30px;border:1px solid #d7dee6;border-radius:6px;background:#fff;color:#667085;}
.workflow-task-group.is-bronze .workflow-task-stage-icon{border-color:#efd1b7;background:#fff7ed;color:#9a5c2f}.workflow-task-group.is-silver .workflow-task-stage-icon{background:#f3f5f7;color:#596779}.workflow-task-group.is-gold .workflow-task-stage-icon{border-color:#ead79c;background:#fff8df;color:#8a6710}.workflow-task-group.is-outputs .workflow-task-stage-icon{border-color:#c7d9e9;background:#edf5fb;color:#173b63}
.workflow-task-group>header div{min-width:0;flex:1}.workflow-task-group>header strong,.workflow-task-group>header small{display:block}.workflow-task-group>header strong{font-size:.78rem;color:#273342}.workflow-task-group>header small{margin-top:2px;color:#667085;font-size:.66rem}.workflow-task-group>header em{font-style:normal;color:#667085;font-size:.72rem;font-variant-numeric:tabular-nums;}
.workflow-task-table-header,.workflow-task-row{display:grid;grid-template-columns:minmax(220px,1.35fr) minmax(120px,.7fr) minmax(180px,1fr) 82px 70px;align-items:center;gap:14px;}
.workflow-task-table-header{min-height:34px;padding:5px 14px;border-bottom:1px solid #edf0f3;background:#f8fafc;color:#667085;font-size:.64rem;font-weight:650;}
.workflow-task-row{min-height:58px;padding:8px 14px;border-bottom:1px solid #edf0f3;color:#344054;font-size:.72rem}.workflow-task-row:last-child{border-bottom:0}.workflow-task-row:hover{background:#fcfdff;}
.workflow-task-name{display:flex;align-items:center;min-width:0;gap:9px}.workflow-task-name>span{display:grid;place-items:center;width:28px;height:28px;flex:0 0 auto;border-radius:6px;background:#f2f4f7;color:#475467}.workflow-task-name div{min-width:0}.workflow-task-name strong,.workflow-task-name small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workflow-task-name strong{color:#101828;font-size:.75rem}.workflow-task-name small{margin-top:2px;color:#667085;font-size:.62rem;}
.workflow-task-executor{overflow:hidden;color:#475467;text-overflow:ellipsis;white-space:nowrap;}
.workflow-task-dependencies{display:flex;min-width:0;flex-wrap:wrap;gap:4px}.workflow-task-dependencies span{overflow:hidden;max-width:170px;padding:3px 6px;border:1px solid #d9e0e7;border-radius:10px;background:#fff;color:#475467;font-size:.62rem;text-overflow:ellipsis;white-space:nowrap}.workflow-task-dependencies span.is-system{border-style:dashed;background:#f9fafb;color:#667085;}
.workflow-task-row .studio-state{font-size:.66rem;}
.workflow-task-actions{display:flex;justify-content:flex-end;gap:4px}.workflow-task-actions button,.workflow-task-actions a{display:grid;place-items:center;width:30px;height:30px;border:1px solid #d0d5dd;border-radius:5px;background:#fff;color:#475467;text-decoration:none}.workflow-task-actions button:hover,.workflow-task-actions a:hover{border-color:#98a2b3;background:#f9fafb;color:#101828}.workflow-task-actions button:disabled{opacity:.5;}
.workflow-task-group-empty{padding:18px 52px;color:#667085;font-size:.72rem;}
.workflow-canvas{display:grid;min-height:0;grid-template-columns:repeat(4,minmax(180px,1fr));overflow:auto;overscroll-behavior:contain;background-color:#fbfcfd;background-image:radial-gradient(#d9dee7 0.7px,transparent 0.7px);background-size:14px 14px;}
.workflow-stage{position:relative;min-width:190px;padding:14px;border-right:1px dashed #d0d5dd;}
.workflow-stage:last-child{border-right:0;}
.workflow-stage>header{display:flex;align-items:flex-start;gap:8px;min-height:46px;margin-bottom:12px;color:#344054;}
.workflow-stage>header>i{width:20px;margin-top:3px;color:#667085;text-align:center;}
.workflow-stage>header strong,.workflow-stage>header small{display:block}.workflow-stage>header strong{font-size:.75rem;text-transform:uppercase;letter-spacing:.03em}.workflow-stage>header small{margin-top:2px;color:#667085;font-size:.66rem;}
.workflow-stage-items{display:flex;flex-direction:column;gap:18px;}
.workflow-node{position:relative;display:flex;align-items:center;gap:9px;width:100%;min-height:58px;padding:9px 10px;border:1px solid #cfd6df;border-radius:6px;background:#fff;color:#344054;text-align:left;box-shadow:0 1px 2px rgba(16,24,40,.04);}
.workflow-node::after{content:"";position:absolute;left:100%;top:50%;width:15px;border-top:1px solid #98a2b3;}
.workflow-stage:last-child .workflow-node::after{display:none;}
.workflow-node:hover{border-color:var(--brand-primary);box-shadow:0 0 0 2px rgba(var(--brand-primary-rgb),.08);}
.workflow-node.is-selected{border-color:var(--brand-primary);box-shadow:0 0 0 2px rgba(var(--brand-primary-rgb),.12);}
.workflow-node>i{width:18px;color:#5b5bd6;text-align:center}.workflow-stage.is-bronze .workflow-node>i{color:#12805c}.workflow-stage.is-outputs .workflow-node>i{color:var(--brand-primary);}
.workflow-node span{min-width:0;flex:1}.workflow-node strong,.workflow-node small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workflow-node strong{font-size:.74rem}.workflow-node small{margin-top:3px;color:#667085;font-size:.63rem;}
.node-state{display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:#ecfdf3;color:#067647;font-size:.55rem;font-style:normal;}
.workflow-stage-empty{padding:14px 8px;border:1px dashed #d0d5dd;border-radius:6px;color:#98a2b3;text-align:center;font-size:.7rem;background:rgba(255,255,255,.75);}
.workflow-inspector{min-height:112px;border-top:1px solid #e4e7ec;background:#fff;}
.workflow-inspector-empty{display:flex;align-items:center;justify-content:center;gap:10px;min-height:112px;color:#667085;font-size:.78rem;}
.workflow-inspector-content{padding:12px 16px;}
.inspector-title{display:flex;align-items:center;gap:10px}.inspector-title>i{color:#5b5bd6}.inspector-title span{flex:1}.inspector-title strong,.inspector-title small{display:block}.inspector-title strong{font-size:.86rem}.inspector-title small{color:#667085;font-size:.7rem}.inspector-title button{border:0;background:transparent;color:#667085;width:32px;height:32px;}
.workflow-inspector dl{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;margin:12px 0 0;padding-top:10px;border-top:1px solid #eaecf0}.workflow-inspector dl div{min-width:0}.workflow-inspector dt{color:#667085;font-size:.65rem}.workflow-inspector dd{overflow:hidden;margin:3px 0 0;color:#344054;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.workflow-last-execution dd{display:grid;gap:2px;overflow:visible;white-space:normal}.workflow-last-execution dd>small{overflow:hidden;color:#667085;font-size:.64rem;text-overflow:ellipsis;white-space:nowrap}.workflow-execution-status{display:inline-flex;align-items:center;gap:6px;width:max-content;color:#475467}.workflow-execution-status i{width:7px;height:7px;border-radius:50%;background:#98a2b3}.workflow-execution-status.is-sucesso{color:#067647}.workflow-execution-status.is-sucesso i{background:#12b76a}.workflow-execution-status.is-erro{color:#b42318}.workflow-execution-status.is-erro i{background:#f04438}.workflow-execution-status.is-em_execucao,.workflow-execution-status.is-na_fila{color:#175cd3}.workflow-execution-status.is-em_execucao i,.workflow-execution-status.is-na_fila i{background:#2e90fa}.workflow-execution-empty{color:#667085;font-size:.7rem}.workflow-execution-loading{display:grid;width:100%;gap:5px}.workflow-execution-loading i,.workflow-execution-loading span{display:block;height:7px;border-radius:3px;background:#e4e7ec;animation:workflow-execution-pulse 1.2s ease-in-out infinite}.workflow-execution-loading span{width:70%}.workflow-execution-detail{max-height:90px;margin-top:9px;padding:8px 10px;overflow:auto;border:1px solid #d0d5dd;border-radius:5px;background:#f9fafb;color:#475467;font-size:.7rem;line-height:1.45;white-space:pre-wrap}.workflow-execution-detail.is-error{border-color:#fecdca;background:#fef3f2;color:#912018}@keyframes workflow-execution-pulse{50%{opacity:.45}}
.workflow-inspector-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:12px;padding-top:10px;border-top:1px solid #eaecf0}.workflow-run-upstream{display:inline-flex;align-items:center;gap:7px;margin:0;color:#475467;font-size:.72rem;cursor:pointer}.workflow-run-upstream input{margin:0;accent-color:var(--brand-primary)}.workflow-run-node-hint{margin-right:auto;color:#667085;font-size:.68rem}.workflow-inspector-actions .btn{min-height:32px}
.workflow-secondary-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px;max-width:1200px;margin:auto}.workflow-secondary-head h2{font-size:1.1rem;margin:0 0 3px}.workflow-secondary-head p{margin:0;color:#667085;font-size:.8rem;}
.workflow-panel>.workflow-list-surface{max-width:1152px;margin:0 auto 24px;}
.workflow-list-row,.workflow-plan-row,.workflow-run-row{display:flex;align-items:center;gap:14px;min-height:52px;padding:10px 16px;border-bottom:1px solid #f0f2f5;color:#344054;text-decoration:none;font-size:.78rem}.workflow-list-row:last-child,.workflow-plan-row:last-child,.workflow-run-row:last-child{border-bottom:0;}
.workflow-list-row>span,.workflow-plan-row>em{margin-left:auto}.workflow-plan-row>span{flex:1}.workflow-plan-row strong,.workflow-plan-row small{display:block}.workflow-plan-row small{margin-top:3px;color:#667085}.workflow-plan-row em{font-style:normal;color:#067647;}.workflow-plan-row em.is-muted{color:#98a2b3;}
.workflow-plan-row-link{flex:1;display:flex;align-items:center;min-width:0;color:inherit;text-decoration:none;}
.workflow-plan-row-link strong,.workflow-plan-row-link small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.workflow-plan-row-link:hover strong{color:var(--brand-primary);}
.workflow-plan-row-chevron{flex:0 0 auto;color:#98a2b3;padding:4px;}
.workflow-plan-row-badges{display:flex;align-items:center;gap:6px;flex:0 0 auto;}
.workflow-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:12px;background:#f2f4f7;color:#475467;font-size:.7rem;font-weight:600;white-space:nowrap;}
.workflow-badge i{font-size:.65rem;}
.workflow-badge.is-bronze{background:#fdf1e8;color:#b54708;}
.workflow-badge.is-silver{background:#eef1f4;color:#475467;}
.workflow-badge.is-gold{background:#fef7e0;color:#93720a;}
.workflow-plan-row-actions{display:flex;align-items:center;gap:4px;flex:0 0 auto;}
.workflow-row-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid #e4e7ec;border-radius:6px;background:#fff;color:#475467;font-size:.75rem;cursor:pointer;}
.workflow-row-btn:hover:not(:disabled){background:#f9fafb;color:#101828;border-color:#d0d5dd;}
.workflow-row-btn:disabled{opacity:.5;cursor:wait;}
.workflow-row-btn i.fa-toggle-on{color:#067647;}
.workflow-status-badge{flex:0 0 auto;font-size:.72rem;}
.workflow-exec-status{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:12px;font-size:.7rem;font-weight:600;white-space:nowrap;flex:0 0 auto;background:#f2f4f7;color:#98a2b3;}
.workflow-exec-status.is-running{background:#eff4ff;color:#175cd3;}
.workflow-exec-status.is-queued{background:#fef7e0;color:#93720a;}
.workflow-exec-status.is-success{background:#ecfdf3;color:#067647;}
.workflow-exec-status.is-failed{background:#fef3f2;color:#b42318;}
.workflow-list-empty-filter{padding:24px 16px;margin:0;text-align:center;color:#667085;font-size:.82rem;}
.workflow-run-row strong{flex:1}.workflow-run-row time{color:#667085}.workflow-run-row .studio-state{min-width:100px;justify-content:flex-start;}
.workflow-loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:110px;color:#667085;font-size:.8rem;}
.workflow-empty{min-height:360px;}
.workflow-toast{position:fixed;right:20px;bottom:20px;z-index:1080;max-width:420px;padding:12px 16px;border:1px solid #d0d5dd;border-radius:7px;background:#fff;box-shadow:0 12px 28px rgba(16,24,40,.14);font-size:.82rem}.workflow-toast.is-success{border-color:#abefc6;color:#067647}.workflow-toast.is-error{border-color:#fecdca;color:#b42318;}
.flow-builder{--flow-ink:#17212e;--flow-muted:#647184;--flow-line:#d9e0e8;--flow-canvas:#f4f7fa;display:flex;min-width:0;min-height:0;height:100%;flex-direction:column;background:#fff;color:var(--flow-ink);}
.flow-builder[hidden]{display:none;}
.flow-builder-page{display:flex;height:calc(100vh - 48px);min-height:640px;flex-direction:column;border:1px solid #e0e5eb;border-radius:9px;background:#fff;overflow:hidden}.flow-builder-page-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 18px;border-bottom:1px solid #e0e5eb}.flow-builder-page-head nav{display:flex;align-items:center;gap:7px;color:#718095;font-size:.64rem}.flow-builder-page-head nav a{color:#52667d;text-decoration:none}.flow-builder-page-head nav i{font-size:.5rem}.flow-builder-page-head h1{margin:5px 0 1px;color:#17212e;font-size:1.15rem}.flow-builder-page-head p{margin:0;color:#647184;font-size:.7rem}.flow-builder-page-head>div:last-child{display:flex;gap:7px}.flow-builder-page>.flow-builder{flex:1 1 auto;height:auto}
.flow-builder-toolbar{display:flex;align-items:center;gap:8px;min-height:48px;padding:7px 10px;border-bottom:1px solid #dfe4ea;background:#fff;}
.flow-builder-toolbar-group{display:inline-flex;align-items:center;height:32px;border:1px solid #d7dde5;border-radius:7px;background:#f8fafc;overflow:hidden;}
.flow-builder-toolbar-group button{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:32px;min-width:32px;padding:0 9px;border:0;border-right:1px solid #e0e5eb;background:transparent;color:#4f5d6d;font-size:.7rem;}
.flow-builder-toolbar-group button:last-child{border-right:0}.flow-builder-toolbar-group button:hover:not(:disabled){background:#fff;color:#17212e}.flow-builder-toolbar-group button:focus-visible,.flow-builder-save button:focus-visible,.flow-builder-edit-hint button:focus-visible{outline:2px solid rgba(var(--brand-primary-rgb),.28);outline-offset:-2px}
.flow-builder-toolbar-group button:disabled{opacity:.36}.flow-builder-toolbar-group button.is-active{background:#edf4ff;color:var(--brand-primary);box-shadow:inset 0 0 0 1px rgba(var(--brand-primary-rgb),.14)}
.flow-builder-toolbar-group>[data-flow-zoom]{display:grid;place-items:center;min-width:48px;height:32px;border-right:1px solid #e0e5eb;color:#647184;font-size:.66rem;font-variant-numeric:tabular-nums;}
.flow-builder-save{display:flex;align-items:center;gap:10px;margin-left:auto}.flow-builder-save>span{color:#647184;font-size:.68rem}.flow-builder-save>span.is-dirty{color:#9a6700}.flow-builder-save>span.is-error{color:#b42318}.flow-builder-save>span.is-saved{color:#067647}
.flow-builder-save button{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:34px;padding:0 12px;border:1px solid var(--brand-primary);border-radius:6px;background:var(--brand-primary);color:#fff;font-size:.7rem;font-weight:650}.flow-builder-save button:disabled{border-color:#d0d5dd;background:#eef1f4;color:#98a2b3}.flow-builder-save button.is-loading{cursor:wait}
.flow-builder-edit-hint{display:flex;align-items:center;gap:9px;min-height:38px;padding:7px 12px;border-bottom:1px solid #b8d2ef;background:#edf6ff;color:#234b72;font-size:.7rem}.flow-builder-edit-hint[hidden]{display:none}.flow-builder-edit-hint i{color:#2673c5}.flow-builder-edit-hint button{margin-left:auto;border:0;background:transparent;color:#175cd3;font-size:.7rem;font-weight:650}
.flow-builder-stage{position:relative;min-height:360px;flex:1 1 auto;overflow:hidden;cursor:grab;background-color:var(--flow-canvas);background-image:radial-gradient(circle,#cfd7e2 .8px,transparent .9px);background-size:18px 18px;isolation:isolate;}
.flow-builder-stage.is-panning{cursor:grabbing}.flow-builder-stage::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.46),transparent 22%,transparent 78%,rgba(255,255,255,.46))}
.flow-builder-world{position:absolute;left:0;top:0;transform-origin:0 0;will-change:transform;}
.flow-builder-edges,.flow-builder-nodes{position:absolute;inset:0}.flow-builder-edges{overflow:visible;pointer-events:none}.flow-builder-nodes{z-index:2}
.flow-builder-edges marker path{fill:#8794a5}.flow-builder-edges marker#flow-arrow-selected path{fill:#d0443e}
.flow-edge{pointer-events:stroke;fill:none;stroke:#9aa7b7;stroke-width:1.45;stroke-linecap:round;opacity:.74;transition:stroke .16s ease,stroke-width .16s ease,opacity .16s ease}.flow-edge:hover{stroke:#52708e;stroke-width:2.4;opacity:1}.flow-edge.is-editable{stroke:#7489a1;stroke-width:1.7}.flow-edge.is-selected{stroke:#d0443e;stroke-width:3;opacity:1;filter:drop-shadow(0 1px 2px rgba(208,68,62,.2))}
.flow-builder-draft-edge{fill:none;stroke:#2673c5;stroke-width:2.3;stroke-linecap:round;stroke-dasharray:7 5;pointer-events:none}
.flow-node-card{position:absolute;z-index:2;border:1px solid #cbd4df;border-radius:10px;background:#fff;color:#263342;box-shadow:0 3px 10px rgba(35,48,66,.08),0 1px 2px rgba(35,48,66,.05);cursor:pointer;user-select:none;transition:border-color .16s ease,box-shadow .16s ease,filter .16s ease;}
.flow-node-card:hover{border-color:#8394a8;box-shadow:0 8px 22px rgba(35,48,66,.13),0 1px 2px rgba(35,48,66,.06)}.flow-node-card:focus-visible,.flow-node-card.is-selected{outline:0;border-color:var(--brand-primary);box-shadow:0 0 0 3px rgba(var(--brand-primary-rgb),.13),0 8px 22px rgba(35,48,66,.12)}
.flow-node-card.is-state-inativo{opacity:.62;filter:saturate(.55)}.flow-node-card.is-state-erro{border-color:#e05650;box-shadow:0 0 0 2px rgba(217,45,32,.09),0 8px 22px rgba(129,30,23,.12)}.flow-node-card.is-state-em_execucao,.flow-node-card.is-state-na_fila{border-color:#6ba5e4}
.flow-node-header{display:flex;align-items:center;gap:9px;min-height:52px;padding:8px 10px;border-bottom:1px solid #e7ebf0;border-radius:9px 9px 0 0;background:#fbfcfd;cursor:move}.flow-node-card.is-state-erro .flow-node-header{border-color:#f3b8b4;background:#fff1f0}.flow-node-card.is-state-em_execucao .flow-node-header,.flow-node-card.is-state-na_fila .flow-node-header{background:#f0f7ff}
.flow-node-type-icon{display:grid;place-items:center;width:30px;height:30px;flex:0 0 auto;border:1px solid #d7dee7;border-radius:7px;background:#fff;color:#52677d}.flow-node-card.is-layer-bronze .flow-node-type-icon{border-color:#ebcfb6;color:#9a5c2f}.flow-node-card.is-layer-silver .flow-node-type-icon{color:#5b6d7b}.flow-node-card.is-layer-gold .flow-node-type-icon{border-color:#e4d49f;color:#8a6710}.flow-node-card.is-layer-integracoes .flow-node-type-icon{border-color:#c9daea;color:#24577f}.flow-node-card.is-state-erro .flow-node-type-icon{border-color:#efaaa5;background:#fff;color:#c4322b}
.flow-node-header>div{min-width:0;flex:1}.flow-node-header small,.flow-node-header strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flow-node-header small{color:#778395;font-size:.56rem}.flow-node-header strong{margin-top:2px;color:#17212e;font-size:.74rem;font-weight:680}
.flow-node-layer{flex:0 0 auto;padding:3px 6px;border:1px solid #dbe1e8;border-radius:10px;background:#fff;color:#657184;font-size:.55rem}
.flow-node-body{padding:9px 10px 10px}.flow-node-runtime{display:grid;grid-template-columns:.82fr .9fr 1.25fr;gap:6px}.flow-node-runtime>span{min-width:0}.flow-node-runtime small,.flow-node-runtime strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flow-node-runtime small{color:#8490a0;font-size:.53rem}.flow-node-runtime strong{margin-top:2px;color:#445263;font-size:.59rem;font-weight:650}
.flow-node-status-row{display:flex;align-items:center;gap:7px;margin-top:10px;padding-top:8px;border-top:1px solid #edf0f3}.flow-node-status-row time{margin-left:auto;color:#8490a0;font-size:.55rem}.flow-node-run-state{display:inline-flex;align-items:center;gap:5px;color:#657184;font-size:.58rem;font-weight:650}.flow-node-run-state i{width:7px;height:7px;border-radius:50%;background:#98a2b3}.flow-node-run-state.is-sucesso{color:#067647}.flow-node-run-state.is-sucesso i{background:#12b76a}.flow-node-run-state.is-erro{color:#b42318}.flow-node-run-state.is-erro i{background:#e5484d}.flow-node-run-state.is-em_execucao,.flow-node-run-state.is-na_fila,.flow-node-run-state.is-solicitada{color:#175cd3}.flow-node-run-state.is-em_execucao i,.flow-node-run-state.is-na_fila i,.flow-node-run-state.is-solicitada i{background:#2e90fa;box-shadow:0 0 0 3px rgba(46,144,250,.14);animation:flow-status-pulse 1.4s ease-in-out infinite}
.flow-node-error{display:flex;align-items:flex-start;gap:6px;margin-top:8px;padding:6px 7px;border-radius:5px;background:#fff1f0;color:#9f2620;font-size:.55rem;line-height:1.35}.flow-node-error i{margin-top:1px}.flow-node-error span{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.flow-node-port{position:absolute;top:50%;z-index:4;width:12px;height:12px;border:2px solid #7c8da0;border-radius:50%;background:#fff;transform:translateY(-50%);box-shadow:0 0 0 3px rgba(244,247,250,.92)}.flow-node-port.is-input{left:-7px}.flow-node-port.is-output{right:-7px}.flow-node-port.is-editable{border-color:#2673c5}.flow-builder.is-connect-mode .flow-node-port.is-editable{width:15px;height:15px;cursor:crosshair;box-shadow:0 0 0 4px rgba(38,115,197,.12)}.flow-builder.is-connect-mode .flow-node-port.is-editable:hover,.flow-node-card.is-connecting .flow-node-port.is-output{background:#2673c5;box-shadow:0 0 0 6px rgba(38,115,197,.16)}
.flow-node-card.is-checkpoint{display:flex;align-items:center;gap:9px;padding:10px 13px;border-radius:18px;background:#fdfefe}.flow-node-card.is-checkpoint .flow-node-checkpoint-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#edf2f7;color:#52677d}.flow-node-card.is-checkpoint>div:nth-of-type(2){min-width:0}.flow-node-card.is-checkpoint strong,.flow-node-card.is-checkpoint small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flow-node-card.is-checkpoint strong{font-size:.68rem}.flow-node-card.is-checkpoint small{margin-top:2px;color:#7a8796;font-size:.55rem}
.flow-builder-loading{position:absolute;left:50%;top:50%;z-index:8;display:flex;align-items:center;gap:9px;transform:translate(-50%,-50%);color:#647184;font-size:.75rem}.flow-builder-loading[hidden]{display:none}
.flow-builder-message{position:absolute;left:50%;top:14px;z-index:12;max-width:calc(100% - 40px);padding:9px 12px;border:1px solid #ccd5df;border-radius:7px;background:#fff;color:#344054;box-shadow:0 10px 24px rgba(16,24,40,.14);transform:translateX(-50%);font-size:.7rem}.flow-builder-message[hidden]{display:none}.flow-builder-message.is-success{border-color:#a6e6c5;color:#067647}.flow-builder-message.is-error{border-color:#f0aaa5;background:#fff8f7;color:#a12821}
.flow-builder-minimap{position:absolute;left:12px;bottom:12px;z-index:4;display:flex;align-items:center;gap:9px;padding:7px 9px;border:1px solid rgba(196,205,216,.86);border-radius:7px;background:rgba(255,255,255,.94);box-shadow:0 2px 8px rgba(33,47,64,.07);pointer-events:none}.flow-builder-minimap span{display:inline-flex;align-items:center;gap:4px;color:#657184;font-size:.55rem}.flow-builder-minimap i{width:7px;height:7px;border-radius:50%;background:#8794a5}.flow-builder-minimap .is-bronze i{background:#a56535}.flow-builder-minimap .is-silver i{background:#718391}.flow-builder-minimap .is-gold i{background:#a27d1c}.flow-builder-minimap .is-integracoes i{background:#31678f}
.flow-builder-inspector{position:absolute;inset:0 0 0 auto;z-index:10;width:326px;padding:18px;background:#fff;border-left:1px solid #d8dfe7;box-shadow:-12px 0 28px rgba(25,38,54,.1);transform:translateX(102%);visibility:hidden;overflow:auto;transition:transform .2s cubic-bezier(.22,1,.36,1),visibility 0s linear .2s}.flow-builder-inspector.is-open{transform:translateX(0);visibility:visible;transition-delay:0s}.flow-builder-inspector>[data-flow-inspector-close]{position:absolute;right:12px;top:12px;display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:5px;background:transparent;color:#647184}.flow-builder-inspector>[data-flow-inspector-close]:hover{background:#f1f4f7;color:#17212e}
.flow-inspector-heading{display:flex;align-items:center;gap:10px;padding-right:30px}.flow-inspector-heading>div{min-width:0}.flow-inspector-heading small{color:#728093;font-size:.62rem}.flow-inspector-heading h3{margin:3px 0 0;color:#17212e;font-size:.94rem;line-height:1.3;text-wrap:balance}
.flow-inspector-state{display:flex;align-items:flex-start;gap:9px;margin-top:18px;padding:10px;border:1px solid #dfe5eb;border-radius:7px;background:#f8fafc}.flow-inspector-state>i{width:9px;height:9px;flex:0 0 auto;margin-top:4px;border-radius:50%;background:#98a2b3}.flow-inspector-state div{min-width:0}.flow-inspector-state small,.flow-inspector-state strong,.flow-inspector-state span{display:block}.flow-inspector-state small{color:#768396;font-size:.57rem}.flow-inspector-state strong{margin-top:1px;font-size:.7rem}.flow-inspector-state span{margin-top:2px;color:#647184;font-size:.59rem}.flow-inspector-state.is-sucesso{border-color:#b4e6cb;background:#f1fcf6}.flow-inspector-state.is-sucesso>i{background:#12b76a}.flow-inspector-state.is-erro{border-color:#efb1ad;background:#fff3f2;color:#a12821}.flow-inspector-state.is-erro>i{background:#e5484d}.flow-inspector-state.is-em_execucao,.flow-inspector-state.is-na_fila{border-color:#b6d6f5;background:#f0f7ff}.flow-inspector-state.is-em_execucao>i,.flow-inspector-state.is-na_fila>i{background:#2e90fa}
.flow-inspector-error{margin-top:9px;padding:10px;border:1px solid #f0bbb7;border-radius:7px;background:#fff8f7;color:#8f241e}.flow-inspector-error strong{font-size:.62rem}.flow-inspector-error p{max-height:90px;margin:4px 0 0;overflow:auto;font-size:.62rem;line-height:1.45;white-space:pre-wrap}
.flow-inspector-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0 0}.flow-inspector-facts div{min-width:0;padding:8px;border:1px solid #e2e7ed;border-radius:6px}.flow-inspector-facts dt{color:#7b8797;font-size:.54rem}.flow-inspector-facts dd{overflow:hidden;margin:3px 0 0;color:#344054;font-size:.61rem;font-weight:650;text-overflow:ellipsis;white-space:nowrap}
.flow-inspector-lineage{margin-top:16px;padding-top:13px;border-top:1px solid #e5e9ee}.flow-inspector-lineage>strong{font-size:.68rem}.flow-inspector-lineage>div{display:grid;grid-template-columns:62px minmax(0,1fr);gap:7px;margin-top:8px}.flow-inspector-lineage span{color:#7b8797;font-size:.58rem}.flow-inspector-lineage p{margin:0;color:#445263;font-size:.61rem;line-height:1.45}
.flow-inspector-definition{margin-top:14px;border-top:1px solid #e5e9ee;padding-top:12px}.flow-inspector-definition summary{cursor:pointer;color:#445263;font-size:.64rem;font-weight:650}.flow-inspector-definition pre{max-height:140px;margin:8px 0 0;padding:9px;overflow:auto;border-radius:5px;background:#17212e;color:#d9e5ef;font-size:.56rem;line-height:1.5;white-space:pre-wrap}
.flow-inspector-actions{display:grid;gap:7px;margin-top:16px;padding-top:13px;border-top:1px solid #e5e9ee}.flow-inspector-actions label{display:flex;align-items:center;gap:6px;margin-bottom:3px;color:#556274;font-size:.62rem}.flow-inspector-actions input{accent-color:var(--brand-primary)}.flow-inspector-actions .btn{display:inline-flex;align-items:center;justify-content:center;min-height:32px;font-size:.68rem}
@keyframes flow-status-pulse{50%{opacity:.45;transform:scale(.82)}}

@media(max-width:1100px){
  .workflow-workbench{grid-template-columns:220px minmax(0,1fr)}
  .workflow-canvas{grid-template-columns:repeat(4,220px)}
  .workflow-task-table-header,.workflow-task-row{grid-template-columns:minmax(190px,1.2fr) minmax(110px,.65fr) minmax(150px,.9fr) 76px 66px;gap:10px}
  .workflow-inspector dl{grid-template-columns:repeat(2,minmax(0,1fr))}
  .studio-filterbar{flex-wrap:wrap}.studio-filterbar .studio-search{flex-basis:100%}
}
@media(max-width:768px){
  .app-wrapper{display:block}
  .main-content.is-workspace>.workspace-content{padding:12px!important;overflow:visible}
  .studio-page-header,.workflow-header{flex-direction:column}.studio-header-actions{justify-content:flex-start}
  .asset-tag-editor,.asset-tag-editor-controls{align-items:stretch;flex-direction:column}.asset-tag-editor-heading{flex-basis:auto}.asset-tag-create{grid-template-columns:1fr}.asset-tag-create .form-control,.asset-tag-create small{grid-column:1;grid-row:auto;max-width:none}
  .workflow-studio{height:auto;min-height:calc(100vh - 24px);margin:0}
  .workflow-panel[data-workflow-panel="flow"].active{display:block;overflow:visible}
  .workflow-workbench{display:block;height:auto;min-height:0;overflow:visible}.asset-library{height:260px;border-right:0;border-bottom:1px solid #e4e7ec}
  .workflow-toolbar{align-items:stretch;flex-direction:column}.workflow-toolbar-actions{justify-content:space-between}.workflow-view-switch{flex:1}.workflow-toolbar-actions .workflow-view-switch button{flex:1}.workflow-toolbar-actions>a{flex:0 0 auto}
  .workflow-canvas-shell{grid-template-rows:auto minmax(460px,1fr)}.workflow-canvas{grid-template-columns:repeat(4,210px)}
  .flow-builder{height:70vh;min-height:560px}.flow-builder-stage{min-height:480px}.flow-builder-toolbar{align-items:flex-start;flex-wrap:wrap}.flow-builder-toolbar-group.is-dependencies{order:3}.flow-builder-save{margin-left:auto}.flow-builder-save>span{display:none}.flow-builder-inspector{top:auto;width:100%;height:min(64%,480px);border-top:1px solid #d8dfe7;border-left:0;transform:translateY(102%)}.flow-builder-inspector.is-open{transform:translateY(0)}.flow-builder-minimap{display:none}
  .flow-builder-page{height:auto;min-height:760px}.flow-builder-page-head{align-items:flex-start;flex-direction:column}.flow-builder-page-head>div:last-child{flex-wrap:wrap}.flow-builder-page>.flow-builder{height:70vh}
  .workflow-task-list{min-height:560px}.workflow-task-list-head{align-items:flex-start;flex-direction:column}.workflow-task-list-scroll{padding:10px}
  .workflow-task-list-body{flex-direction:column}.workflow-list-inspector{flex:0 0 auto;max-height:340px;border-left:0;border-top:1px solid #e4e7ec}
  .workflow-task-table-header{display:none}.workflow-task-row{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:11px 12px}.workflow-task-name{grid-column:1}.workflow-task-executor{grid-column:1}.workflow-task-dependencies{grid-column:1/-1}.workflow-task-row .studio-state{grid-column:2;grid-row:1}.workflow-task-actions{grid-column:2;grid-row:2;align-self:start}.workflow-task-group-empty{padding:16px}
  .workflow-validation{display:none}.studio-tabs{overflow-x:auto;white-space:nowrap}.studio-filterbar .form-select{min-width:130px}
  .workflow-inspector dl{grid-template-columns:1fr}.workflow-inspector-actions{align-items:stretch;flex-wrap:wrap}.workflow-run-node-hint{width:100%}.workflow-inspector-actions .btn{margin-left:auto}.workflow-secondary-head{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}
body{background:var(--bg);}
.card-title{color:var(--brand-primary);}
/* Pequenas correções para formulários auth */
.auth-card{margin-top:40px}

/* Visão geral */
.overview-page{width:min(1120px,100%);margin:0 auto;padding:4px 0 28px;color:#1f2937}
.overview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}
.overview-head h1{margin:0;color:#111827;font-size:1.5rem;font-weight:700;letter-spacing:-.02em}
.overview-head p{margin:5px 0 0;color:#5f6b7a;font-size:.9rem;line-height:1.5}
.overview-head p strong{color:#344054;font-weight:650}
.overview-head .btn{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding-inline:16px;white-space:nowrap}
.overview-context{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:20px;padding:15px 17px;border:1px solid #cddcf7;border-radius:9px;background:#f3f7ff}
.overview-context-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:#dfeaff;color:var(--brand-primary)}
.overview-context h2{margin:0;color:#243145;font-size:.88rem;font-weight:700}
.overview-context p{margin:3px 0 0;color:#52647d;font-size:.76rem;line-height:1.45}
.overview-context-link{display:inline-flex;align-items:center;gap:7px;color:var(--brand-primary);font-size:.78rem;font-weight:650;text-decoration:none;white-space:nowrap}
.overview-context-link:hover{text-decoration:underline}
.overview-section{margin-bottom:18px;border:1px solid #e0e5eb;border-radius:9px;background:#fff;overflow:hidden}
.overview-section-head,.overview-health-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 18px;border-bottom:1px solid #e7ebf0}
.overview-section h2{margin:0;color:#202c3c;font-size:.9rem;font-weight:700}
.overview-section-head p,.overview-health-head p{margin:3px 0 0;color:#667085;font-size:.72rem;line-height:1.45}
.overview-scope{display:inline-flex;align-items:center;gap:7px;max-width:260px;padding:4px 9px;border-radius:14px;background:rgba(var(--brand-primary-rgb),.10);color:var(--brand-primary);font-size:.66rem;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.overview-scope i{width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:currentColor}
.overview-scope.is-global{background:#f1f3f6;color:#586576}
.overview-flow{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;padding:4px 8px}
.overview-flow-item{display:flex;align-items:center;gap:12px;min-width:0;padding:18px 14px;border-radius:7px;color:inherit;text-decoration:none;transition:background-color .18s ease,color .18s ease}
.overview-flow-item:not(.is-static):hover{background:#f5f8fc;color:var(--brand-primary)}
.overview-flow-item:not(.is-static):focus-visible{outline:3px solid rgba(var(--brand-primary-rgb),.22);outline-offset:-2px}
.overview-flow-icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border-radius:8px;background:#f0f3f7;color:#536174;font-size:.78rem}
.overview-flow-item:not(.is-static):hover .overview-flow-icon{background:rgba(var(--brand-primary-rgb),.10);color:var(--brand-primary)}
.overview-flow-item>span:last-child{display:flex;min-width:0;flex-direction:column}
.overview-flow-item strong{color:#182230;font-size:1.22rem;line-height:1.1;font-variant-numeric:tabular-nums}
.overview-flow-item small{margin-top:3px;color:#667085;font-size:.68rem;white-space:nowrap}
.overview-flow-arrow{align-self:center;color:#bdc5d0;font-size:.58rem}
.overview-health{--health-color:#16815f;--health-soft:#eef9f4}
.overview-health.is-warning{--health-color:#9a620a;--health-soft:#fff7e5}
.overview-health.is-critical{--health-color:#b42318;--health-soft:#fff1f0}
.overview-health.is-unavailable{--health-color:#667085;--health-soft:#f2f4f7}
.overview-health-head p{max-width:70ch}
.overview-health-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.overview-health-status{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:14px;background:var(--health-soft);color:var(--health-color);font-size:.65rem}
.overview-health-status i{font-size:.65rem}
.overview-health-updated{color:#7a8697;font-size:.63rem;white-space:nowrap}
.overview-health-actions button{display:grid;place-items:center;width:31px;height:31px;border:1px solid #d5dbe3;border-radius:7px;background:#fff;color:#5b6878}
.overview-health-actions button:hover:not(:disabled){border-color:#aeb8c5;background:#f8fafc;color:#263342}
.overview-health-actions button:focus-visible{outline:3px solid rgba(var(--brand-primary-rgb),.22);outline-offset:2px}
.overview-health-actions button:disabled{opacity:.55}
.overview-health-actions button.is-loading i{animation:overview-health-spin .8s linear infinite}
.overview-health-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:15px 4px}
.overview-health-metric{--metric-color:#16815f;min-width:0;padding:2px 18px;border-right:1px solid #e7ebf0}
.overview-health-metric:last-child{border-right:0}
.overview-health-metric.is-warning{--metric-color:#9a620a}
.overview-health-metric.is-critical{--metric-color:#b42318}
.overview-health-metric.is-unavailable{--metric-color:#667085}
.overview-health-metric-label{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#485568;font-size:.69rem}
.overview-health-metric-label span{display:inline-flex;align-items:center;gap:7px;font-weight:650}
.overview-health-metric-label span i{color:var(--metric-color)}
.overview-health-metric-label strong{color:#263342;font-size:.72rem;font-variant-numeric:tabular-nums}
.overview-health-track{height:5px;margin-top:10px;border-radius:4px;background:#e9edf2;overflow:hidden}
.overview-health-track i{display:block;height:100%;border-radius:inherit;background:var(--metric-color)}
.overview-health-metric small{display:block;margin-top:7px;color:#778396;font-size:.61rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@keyframes overview-health-spin{to{transform:rotate(360deg)}}
@media(max-width:820px){
  .overview-flow{grid-template-columns:1fr 1fr;padding:8px}.overview-flow-arrow{display:none}.overview-flow-item{padding:13px 10px}
  .overview-health-head{align-items:flex-start;flex-direction:column}.overview-health-actions{width:100%;flex-wrap:wrap}.overview-health-updated{margin-left:auto}
}
@media(max-width:575.98px){
  .overview-page{padding-top:0}.overview-head{align-items:stretch;flex-direction:column;gap:14px}.overview-head .btn{justify-content:center;width:100%}
  .overview-context{grid-template-columns:auto minmax(0,1fr)}.overview-context-link{grid-column:2;justify-self:start}
  .overview-section-head{align-items:flex-start;flex-direction:column;gap:10px}.overview-scope{max-width:100%}
  .overview-flow{grid-template-columns:1fr}.overview-flow-item{border-bottom:1px solid #edf0f3}.overview-flow-item:last-child{border-bottom:0}
  .overview-health-metrics{grid-template-columns:1fr;padding:4px 14px}.overview-health-metric{padding:14px 2px;border-right:0;border-bottom:1px solid #e7ebf0}.overview-health-metric:last-child{border-bottom:0}
  .overview-health-actions{gap:8px}.overview-health-updated{order:3;width:100%;margin-left:0}
}

/* === Airflow Dashboard === */
.stat-card{transition:transform 0.15s ease;}
.stat-card:hover{transform:translateY(-2px);}

/* Alerta pulsante para falhas */
.alert-pulse{animation:pulse 2s ease-in-out infinite;}
@keyframes pulse{
  0%,100%{opacity:1;}
  50%{opacity:0.7;}
}

/* Itens de proxima execucao */
.next-run-item{border-bottom:1px solid #f1f3f5;padding:8px 0;}
.next-run-item:last-child{border-bottom:none;}

/* Badge de retentativa */
.retry-badge{font-size:11px;padding:2px 6px;}

/* Usuarios DW */
.dw-schema-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;background:#f9fafb;border:1px solid var(--line);border-radius:8px;padding:12px;max-height:220px;overflow:auto;}
.dw-schema-picker .form-check{margin:0;background:#fff;border:1px solid #edf0f2;border-radius:6px;padding:8px 10px 8px 32px;}

/* Home clean: cadastros rapidos */
.quick-home{max-width:1180px;margin:0 auto;}
.quick-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px;}
.quick-page-header h1{font-size:28px;line-height:1.2;margin:0 0 6px;color:var(--text);font-weight:700;}
.quick-page-header p{margin:0;color:var(--muted);}
.quick-header-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.quick-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px;align-items:start;}
.quick-panel,.quick-summary,.quick-side-card{background:#fff;border:1px solid var(--line);border-radius:8px;}
.quick-panel{padding:24px;}
.quick-panel-header{display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:22px;}
.quick-panel-header h2{font-size:20px;margin:3px 0 0;color:var(--text);}
.quick-panel-header i{font-size:24px;}
.quick-eyebrow{font-size:12px;font-weight:700;text-transform:uppercase;color:var(--muted);letter-spacing:.06em;}
.quick-form{display:grid;gap:18px;}
.quick-form .form-control{border-color:#d0d5dd;border-radius:6px;min-height:42px;}
.quick-form .form-control:focus{box-shadow:0 0 0 .2rem rgba(13,110,253,.10);}
.grupo-card{transition:transform .15s ease,box-shadow .15s ease;}
.grupo-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(16,24,40,.08) !important;}
.grupo-executor-row{display:flex;align-items:center;flex-wrap:wrap;gap:7px;}
.grupo-executor-label{margin-right:2px;color:#475467;font-size:12px;font-weight:650;}
.grupo-executor{display:inline-flex;align-items:center;gap:5px;min-height:26px;padding:4px 8px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;color:#344054;font-size:12px;font-weight:650;line-height:1;}
.grupo-executor b{min-width:17px;padding:2px 5px;border-radius:4px;background:#eef2f6;color:#344054;font-size:11px;text-align:center;}
.grupo-executor--sql i{color:#175cd3;}
.grupo-executor--dbt{border-color:#e6c6b9;background:#fff8f5;color:#7a271a;}
.grupo-executor--dbt i{color:#b54708;}
.grupo-executor--dbt b{background:#ffeadf;color:#7a271a;}
.grupo-executor-empty{color:var(--muted);font-size:12px;}
.grupo-stage-row{display:flex;flex-wrap:wrap;gap:8px;}
.grupo-stage-badge{font-weight:500;padding:6px 10px;}
.grupo-stage-badge b{margin-left:4px;}
.grupo-schedule{border-top:1px dashed var(--line);padding-top:12px;}
.grupo-cron-badge{background:rgba(13,110,253,.08);color:var(--brand-primary);border:1px solid rgba(13,110,253,.18);font-weight:600;padding:6px 10px;}
.quick-img-upload{display:flex;align-items:center;gap:14px;}
.quick-img-preview{width:56px;height:56px;flex:0 0 auto;border-radius:10px;border:1px solid var(--line);background:#f9fafb;display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--muted);font-size:20px;}
.quick-img-preview img{width:100%;height:100%;object-fit:contain;}
.quick-switch{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);border-radius:8px;padding:14px 16px;background:#f9fafb;}
.quick-switch strong{display:block;color:var(--text);font-size:14px;}
.quick-switch span{display:block;color:var(--muted);font-size:13px;margin-top:2px;}
.quick-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:4px;}
.quick-summary{padding:10px;}
.quick-summary-top{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-bottom:20px;}
.quick-summary-item{display:flex;align-items:center;justify-content:space-between;padding:14px;border-bottom:1px solid var(--line);}
.quick-summary-item:last-child{border-bottom:0;}
.quick-summary-top .quick-summary-item{border-bottom:0;border-right:1px solid var(--line);}
.quick-summary-top .quick-summary-item:last-child{border-right:0;}
.quick-summary-item span{color:var(--muted);font-size:13px;}
.quick-summary-item strong{font-size:22px;color:var(--text);}
.quick-side{display:grid;gap:16px;}
.quick-side-card{padding:16px;}
.quick-step-list{display:grid;gap:8px;margin-top:12px;}
.quick-step-list a{display:flex;gap:12px;align-items:flex-start;text-decoration:none;color:var(--text);border:1px solid var(--line);border-radius:8px;padding:12px;background:#fff;}
.quick-step-list a:hover{border-color:#bcd4ff;background:#f8fbff;}
.quick-step-list i{width:30px;height:30px;border-radius:8px;background:#eef4ff;color:var(--brand-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.quick-step-list strong{display:block;font-size:14px;line-height:1.2;}
.quick-step-list small{display:block;color:var(--muted);font-size:12px;margin-top:2px;}
.quick-monitor-actions{display:grid;gap:8px;margin-top:12px;}

@media (max-width: 992px){
  .quick-grid{grid-template-columns:1fr;}
  .quick-summary{display:grid;grid-template-columns:repeat(3,1fr);}
  .quick-summary-top{grid-template-columns:repeat(2,1fr);}
  .quick-summary-item{border-bottom:0;border-right:1px solid var(--line);}
  .quick-summary-item:last-child{border-right:0;}
  .quick-summary-top .quick-summary-item:nth-child(2){border-right:0;}
  .quick-summary-top .quick-summary-item:nth-child(-n+2){border-bottom:1px solid var(--line);}
}

/* Editor de Parametros JSON (consultas) */
.json-param-field .json-param-editor{min-height:150px;border-radius:8px;background:#fbfbfc;transition:background-color .15s ease;}
.json-param-field .json-param-editor:focus{background:#fff;}
.json-param-toolbar{gap:8px;}
.json-param-status{font-size:11px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;padding:4px 10px;border-radius:20px;white-space:nowrap;}
.json-param-status.is-empty{background:#eef0f2;color:#667085;}
.json-param-status.is-valid{background:#e6f6ec;color:#12805c;}
.json-param-status.is-invalid{background:#fdecec;color:#c0392b;}
.json-param-error{font-size:12.5px;color:#c0392b;min-height:1em;margin-top:6px;}
.json-param-help .table td,.json-param-help .table th{padding:.35rem .5rem;}
.json-param-help pre{white-space:pre-wrap;word-break:break-word;font-size:12px;}

/* === Consulta - modal de edicao === */
#ajaxEditModal .modal-dialog{width:calc(100vw - 32px)!important;max-width:calc(100vw - 32px)!important;height:calc(100vh - 32px);margin:16px auto;}
#ajaxEditModal .modal-content{height:100%;border-radius:16px;border:none;box-shadow:0 24px 60px rgba(15,23,42,.18);}
#ajaxEditModal .modal-header{min-height:64px;padding:14px 20px;border-bottom:1px solid #e7eaee;}
#ajaxEditModal .modal-title{font-size:18px;font-weight:650;}
#ajaxEditModal .modal-header .text-muted{display:none;}
#ajaxEditModal .modal-body{padding:0;background:#fff;}

#ajaxEditModal .consulta-edit-form{padding:16px 20px 20px;}
.consulta-edit-summary{padding:0 0 14px;margin-bottom:16px;border:0;border-bottom:1px solid #e7eaee;border-radius:0;background:transparent;}
.consulta-edit-summary h5{font-size:17px;font-weight:700;color:var(--text);}
.consulta-edit-status-pill{display:flex;align-items:center;padding:0;border:0;border-radius:0;background:transparent;}

.consulta-edit-section{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px;box-shadow:0 1px 2px rgba(16,24,40,.04);}
.consulta-edit-section .section-title{display:flex;align-items:center;gap:10px;font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:20px;}
.consulta-edit-section .section-title i{width:28px;height:28px;flex:0 0 auto;border-radius:8px;background:rgba(13,110,253,.1);color:var(--brand-primary);display:inline-flex;align-items:center;justify-content:center;font-size:12.5px;}

.consulta-edit-section.accordion-item .accordion-button{padding:22px 24px;font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:#fff;}
.consulta-edit-section.accordion-item .accordion-button i{color:var(--brand-primary);}
.consulta-edit-section.accordion-item .accordion-button:not(.collapsed){color:var(--text);box-shadow:none;background:#fff;}
.consulta-edit-section.accordion-item .accordion-button:focus{box-shadow:none;}
.consulta-edit-section.accordion-item .accordion-body{padding:0 24px 24px;}

.consulta-edit-form .form-label{font-weight:600;font-size:13.5px;color:var(--text);margin-bottom:6px;}
.consulta-edit-form .form-control,
.consulta-edit-form .form-select{min-height:46px;border-radius:9px;border-color:#d0d5dd;padding:10px 14px;font-size:14.5px;}
.consulta-edit-form .form-control:focus,
.consulta-edit-form .form-select:focus{border-color:var(--brand-primary);box-shadow:0 0 0 .2rem rgba(13,110,253,.12);}
.consulta-edit-form textarea.form-control{min-height:auto;padding:16px;line-height:1.6;}
.consulta-edit-form textarea.font-monospace{font-size:13.5px;background:#f8f9fb;}
.consulta-edit-form textarea.font-monospace:focus{background:#fff;}
.consulta-edit-form .form-text{font-size:12.5px;margin-top:8px;}

.consulta-edit-group-item{border:1px solid var(--line);border-radius:10px;padding:12px 14px;transition:border-color .15s ease,background-color .15s ease;background:#fff;}
.consulta-edit-group-item:hover{border-color:#c7d2e0;background:#f9fafc;}
.consulta-edit-group-item:has(input:checked){border-color:var(--brand-primary);background:rgba(13,110,253,.05);}

.rich-select{position:relative;}
.rich-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:46px;border:1px solid #d0d5dd;border-radius:9px;background:#fff;padding:8px 14px;font-size:14.5px;color:var(--text);text-align:left;}
.rich-select-trigger:hover{border-color:#b6c0cd;}
.rich-select-trigger:focus-visible{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 .2rem rgba(13,110,253,.12);}
.rich-select-trigger i{color:#98a2b3;font-size:.72rem;flex:0 0 auto;transition:transform .15s;}
.rich-select.is-open .rich-select-trigger i{transform:rotate(180deg);}
.rich-select-trigger-content{display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden;}
.rich-select-trigger-host{font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rich-select-trigger-db{color:var(--muted);font-size:.85em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rich-select-placeholder{color:#98a2b3;}
.rich-select-badge{flex:0 0 auto;font-size:.66rem;font-weight:700;letter-spacing:.03em;padding:.3em .5em;border-radius:5px;}
.rich-select-badge-postgres{background:rgba(51,103,145,.12);color:#336791;}
.rich-select-badge-mysql{background:rgba(242,145,17,.14);color:#a5620b;}
.rich-select-menu{position:absolute;z-index:30;top:calc(100% + 4px);left:0;width:100%;min-width:320px;max-height:320px;overflow:hidden;display:flex;flex-direction:column;border:1px solid #d0d5dd;border-radius:10px;background:#fff;box-shadow:0 10px 28px rgba(16,24,40,.14);}
.rich-select-search{border:0;border-bottom:1px solid var(--line);padding:10px 14px;font-size:13.5px;outline:none;}
.rich-select-search:focus{background:#f8fafc;}
.rich-select-options{overflow-y:auto;padding:6px;}
.rich-select-option{display:flex;align-items:center;gap:10px;width:100%;border:0;background:none;padding:8px 10px;border-radius:7px;text-align:left;}
.rich-select-option:hover{background:#f5f7fa;}
.rich-select-option.is-selected{background:rgba(13,110,253,.07);}
.rich-select-option-copy{min-width:0;display:flex;flex-direction:column;gap:1px;}
.rich-select-option-copy strong{font-size:13.5px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.rich-select-option-copy small{color:var(--muted);font-size:11.5px;}
.rich-select-option i{margin-left:auto;color:var(--brand-primary);font-size:.75rem;flex:0 0 auto;}
.rich-select-empty{padding:14px;text-align:center;color:var(--muted);font-size:13px;}

.checklist-select{position:relative;}
.checklist-select .rich-select-menu{max-height:280px;}
.checklist-select .rich-select-options{padding:10px;overflow-y:auto;}

.consulta-edit-section--compact{padding:18px 22px;}
.consulta-edit-section--hero{border-color:rgba(13,110,253,.16);box-shadow:0 6px 20px rgba(13,110,253,.07);}
.consulta-edit-section--hero .section-title{font-size:15.5px;font-weight:700;color:var(--text);text-transform:none;letter-spacing:0;}
.consulta-edit-section--hero .section-title i{width:30px;height:30px;font-size:13px;background:rgba(13,110,253,.12);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;}

.consulta-historico-item{border:1px solid var(--line);border-left:3px solid #c7cdd6;border-radius:9px;padding:12px 14px;background:#fff;}
.consulta-historico-success{border-left-color:#12b76a;}
.consulta-historico-primary{border-left-color:var(--brand-primary);}
.consulta-historico-danger{border-left-color:#f04438;}
.consulta-historico-row{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;}
.consulta-historico-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.consulta-historico-when{color:var(--muted);font-size:12px;}
.consulta-historico-toggle{padding:0;font-size:12.5px;}
.consulta-historico-toggle i{transition:transform .15s;}
.consulta-historico-toggle[aria-expanded="true"] i{transform:rotate(180deg);}
.consulta-historico-code{margin-top:10px;max-height:220px;overflow:auto;background:#f8f9fb;border:1px solid var(--line);border-radius:8px;padding:10px 12px;font-size:12.5px;white-space:pre-wrap;word-break:break-word;}

@media (max-width:991.98px){
  #ajaxEditModal .consulta-edit-form{padding:16px;}
  .consulta-edit-section{padding:18px;}
}

@media (max-width:767.98px){
  #ajaxEditModal .modal-dialog{width:100vw!important;max-width:100vw!important;height:100vh;margin:0;}
  #ajaxEditModal .modal-content{border-radius:0;}
}

@media (max-width: 768px){
  .quick-page-header{flex-direction:column;}
  .quick-header-actions{width:100%;}
  .quick-header-actions .btn{flex:1;}
  .quick-summary{grid-template-columns:1fr;}
  .quick-summary-top{grid-template-columns:1fr;}
  .quick-summary-top .quick-summary-item{border-right:0;border-bottom:1px solid var(--line);}
  .quick-summary-item{border-right:0;border-bottom:1px solid var(--line);}
  .quick-actions{justify-content:stretch;}
  .quick-actions .btn{flex:1;}
}

/* Grafos de execucao DW */
.dw-graph-shell{--bronze:#9a5c2f;--silver:#657784;--gold:#8a6710;--integration:#173b63;position:relative;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 8px 28px rgba(16,24,40,.06)}
.dw-graph-flowbar{display:flex;align-items:stretch;min-height:68px;border-bottom:1px solid var(--line);background:#fff}
.flowbar-intro{display:flex;flex-direction:column;justify-content:center;min-width:250px;padding:12px 18px}.flowbar-intro strong{font-size:14px;color:var(--text)}.flowbar-intro span{font-size:12px;color:#596779;margin-top:2px}
.flowbar-signal,.flowbar-depth{appearance:none;border:0;border-left:1px solid var(--line);border-radius:0;background:#fff;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:112px;padding:10px 16px;color:var(--text);text-align:left}
.flowbar-signal{cursor:pointer;transition:background-color .18s cubic-bezier(.22,1,.36,1),box-shadow .18s cubic-bezier(.22,1,.36,1)}.flowbar-signal:hover{background:#f7f9fb}.flowbar-signal:focus-visible{outline:3px solid rgba(13,110,253,.3);outline-offset:-3px}.flowbar-signal.is-active{background:#eef6ff;box-shadow:inset 0 -3px 0 #0d6efd}
.flowbar-signal span,.flowbar-depth span{font-size:20px;line-height:1;font-weight:750;font-variant-numeric:tabular-nums}.flowbar-signal small,.flowbar-depth small{font-size:11px;color:#596779;margin-top:5px}.flowbar-signal.is-parallel span{color:#187452}.flowbar-signal.is-fanin span{color:#916b0a}.flowbar-signal.is-fanout span{color:#176789}.flowbar-depth{margin-left:auto}
.dw-graph-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid var(--line);background:#f8fafc}
.dw-toolbar-group{display:inline-flex;align-items:center;background:#fff;border:1px solid #d8dee6;border-radius:8px;padding:3px;gap:2px}.dw-toolbar-group .btn{border:0;display:inline-flex;align-items:center;gap:7px;min-height:34px}.dw-toolbar-group .btn:focus-visible{box-shadow:0 0 0 3px rgba(13,110,253,.2)}.dw-toolbar-group.is-editing{margin-left:4px}
.dw-toolbar-group [data-connect-toggle][aria-pressed="true"]{background:#0d6efd;color:#fff;box-shadow:0 3px 10px rgba(13,110,253,.22)}
.dw-save-graph{min-height:40px;padding-inline:16px}
.dw-graph-toolbar .graph-status{margin-left:auto;font-size:12px;font-weight:700;letter-spacing:.03em}
.dw-graph-toolbar .graph-status.is-dirty{color:#9a5c2f}.dw-graph-toolbar .graph-status.is-saved{color:#13795b}
.dw-graph-mode-hint{display:flex;align-items:center;gap:10px;padding:9px 16px;background:#eaf3ff;color:#17436f;border-bottom:1px solid #c8ddf6;font-size:12px}.dw-graph-mode-hint[hidden]{display:none}.dw-graph-mode-hint i{color:#0d6efd}.dw-graph-mode-hint kbd{margin-left:auto;background:#fff;border:1px solid #b8c9dc;color:#42566a;box-shadow:none}
.dw-graph-stage{position:relative;height:min(68vh,720px);min-height:520px;background:#f8fafc;isolation:isolate}
.dw-graph-stage::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:radial-gradient(circle,#65758a 1px,transparent 1px);background-size:24px 24px;opacity:.055}
.dw-graph-canvas{position:absolute;inset:0;z-index:2;transition:right .22s cubic-bezier(.22,1,.36,1)}
.dw-graph-shell.has-inspector .dw-graph-canvas{right:340px}
.dw-graph-guide{position:absolute;top:0;bottom:0;width:1px;background:rgba(31,41,51,.14);z-index:1;pointer-events:none}
.dw-graph-guide::before{content:attr(data-label);position:absolute;top:var(--guide-label-top,12px);left:8px;padding:3px 8px;border-radius:20px;background:#fff;border:1px solid var(--line);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;color:#55616d}
.dw-graph-guide.is-barrier{width:2px;background:#8a6710;opacity:.48}
.dw-graph-legend{border-top:1px solid var(--line);font-size:12px;color:#596779}.dw-graph-legend summary{cursor:pointer;padding:10px 16px;font-weight:650;color:#475467}.dw-graph-legend-content{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:0 16px 12px}.dw-graph-legend span::before{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px;background:var(--legend-color)}
.dw-graph-legend .legend-shape::before{width:11px;height:11px;background:transparent;border:2px solid currentColor}.dw-graph-legend .legend-shape.is-checkpoint::before{transform:rotate(45deg);border-color:#596779;border-radius:2px}
.dw-graph-inspector{position:absolute;inset:0 0 0 auto;z-index:5;width:340px;padding:20px;background:#111b27;color:#fff;border-left:1px solid #304051;box-shadow:-16px 0 38px rgba(15,23,42,.16);transform:translateX(102%);visibility:hidden;transition:transform .22s cubic-bezier(.22,1,.36,1),visibility 0s linear .22s;overflow:auto}
.dw-graph-inspector.is-open{transform:translateX(0);visibility:visible;transition-delay:0s}.dw-graph-inspector h6{margin:0 32px 5px 0;font-size:17px;text-wrap:balance}.dw-graph-inspector small{color:#b7c6d6}.dw-graph-inspector .btn-close{position:absolute;right:14px;top:16px;filter:invert(1)}
.dw-inspector-state{display:inline-flex;margin-top:12px;padding:5px 9px;border-radius:6px;background:#203348;color:#d5eaff;font-size:12px;font-weight:700}
.dw-inspector-flow{display:grid;gap:16px;margin-top:20px;padding-top:18px;border-top:1px solid #304051}.dw-inspector-flow section>strong{display:block;margin-bottom:8px;font-size:11px;color:#aebed0;text-transform:uppercase;letter-spacing:.06em}.dw-flow-list{display:flex;gap:6px;flex-wrap:wrap}.dw-flow-chip{display:inline-flex;align-items:center;max-width:100%;padding:5px 8px;border-radius:6px;background:#223244;color:#edf4fb;font-size:11px}.dw-flow-chip.is-empty{background:transparent;border:1px dashed #536274;color:#aebed0}
.dw-inspector-sql{margin-top:18px;border-top:1px solid #304051;padding-top:14px}.dw-inspector-sql summary{cursor:pointer;color:#dbe8f5;font-size:12px;font-weight:650}.dw-graph-inspector pre{max-height:160px;overflow:auto;white-space:pre-wrap;color:#c8d7e6;font-size:11px;line-height:1.55;margin:10px 0 0}
.dw-graph-message{position:absolute;left:50%;top:18px;transform:translateX(-50%);z-index:8;max-width:calc(100% - 32px);box-shadow:0 8px 24px rgba(0,0,0,.12)}
.dw-graph-change-review{display:flex;align-items:flex-start;gap:14px;padding:10px 16px;background:#fff8e8;border-bottom:1px solid #edd9a6;color:#5f4700;font-size:12px}.dw-graph-change-review strong{white-space:nowrap}.dw-graph-change-review ul{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.dw-graph-change-review li{padding:3px 7px;border-radius:4px;background:rgba(255,255,255,.68)}.dw-graph-change-review li.is-added{color:#126447}.dw-graph-change-review li.is-removed{color:#9b3d2a;text-decoration:line-through}
.dw-graph-empty{display:grid;place-items:center;height:100%;color:#667085}
.graph-help{font-size:12px;color:#667085;max-width:720px}
@media(max-width:991.98px){.flowbar-intro{display:none}.flowbar-signal,.flowbar-depth{flex:1;min-width:0}.dw-graph-shell.has-inspector .dw-graph-canvas{right:0}.dw-graph-inspector{top:auto;width:100%;height:min(62%,460px);border-left:0;border-top:1px solid #304051;transform:translateY(102%)}.dw-graph-inspector.is-open{transform:translateY(0)}}
@media(max-width:767.98px){.dw-graph-flowbar{min-height:60px;overflow-x:auto}.flowbar-signal,.flowbar-depth{min-width:96px;padding:8px 10px}.flowbar-signal span,.flowbar-depth span{font-size:17px}.flowbar-signal small,.flowbar-depth small{font-size:10px}.dw-graph-stage{height:66vh;min-height:460px}.dw-graph-toolbar .graph-status{order:4;width:100%;margin-left:0}.dw-toolbar-group{flex:1}.dw-toolbar-group .btn{flex:1;justify-content:center}.dw-toolbar-group .btn span{display:none}.dw-toolbar-group.is-editing .btn span{display:inline}.dw-history-actions{display:none}.dw-save-graph{flex:1}.dw-graph-guide::before{font-size:8px;padding:2px 5px}.dw-graph-legend .ms-auto{margin-left:0!important;width:100%}.dw-graph-change-review{display:block}.dw-graph-change-review strong{display:block;margin-bottom:7px}}
@media(prefers-reduced-motion:reduce){.flowbar-signal,.dw-graph-canvas,.dw-graph-inspector{transition:none!important}.dw-graph-inspector{transition-delay:0s!important}}

.schema-panel{max-height:320px;overflow-y:auto;font-size:12px}
.schema-panel-table{border-bottom:1px solid #eef0f3}
.schema-panel-table:last-child{border-bottom:0}
.schema-panel-table-header{display:flex;align-items:center;gap:4px}
.schema-panel-toggle{border:0;background:none;padding:2px 4px;color:#667085}
.schema-panel-insert-table{border:0;background:none;padding:4px 2px;text-align:left;flex:1;font-family:monospace;color:#1f2933;font-weight:600}
.schema-panel-insert-table:hover{color:#0d6efd;text-decoration:underline}
.schema-panel-columns{display:flex;flex-direction:column;padding:2px 0 6px 22px}
.schema-panel-insert-col{border:0;background:none;padding:2px 4px;text-align:left;font-family:monospace;color:#344054}
.schema-panel-insert-col:hover{color:#0d6efd;text-decoration:underline}
.schema-panel-table-actions{display:flex;align-items:center;gap:3px;margin-left:auto}.schema-panel-table-actions button{border:1px solid #d5dce5;border-radius:3px;background:#fff;padding:2px 4px;color:#526174;font-family:var(--bs-font-monospace,SFMono-Regular,Menlo,Consolas,monospace);font-size:8px;font-weight:700;line-height:1.3;white-space:nowrap}.schema-panel-table-actions button:hover,.schema-panel-table-actions button:focus-visible{border-color:#7aa7df;background:#edf5ff;color:#155da7;outline:0}.schema-panel-table-actions button[data-schema-sql-action="union"]{border-color:#c8d8ea;background:#f4f8fd;color:#315f91}.schema-panel[data-schema-table-actions="dbt"] .schema-panel-table-header{gap:3px}.schema-panel[data-schema-table-actions="dbt"] .schema-panel-insert-table{overflow:hidden;min-width:0;text-overflow:ellipsis;white-space:nowrap}
.schema-panel-view-toggle{display:grid;grid-template-columns:1fr 1fr;gap:2px;margin-bottom:7px;padding:2px;border:1px solid #d2dae3;border-radius:4px;background:#edf1f5}.schema-panel-view-toggle button{display:flex;align-items:center;justify-content:center;gap:5px;min-height:25px;border:0;border-radius:3px;background:transparent;color:#667085;font-size:9.5px;font-weight:700}.schema-panel-view-toggle button.is-active{background:#fff;color:#1769c2;box-shadow:0 1px 2px rgba(16,24,40,.13)}.schema-panel-view-toggle button:focus-visible{outline:2px solid #8dbdff;outline-offset:1px}.schema-panel-navigation{padding:2px 0 6px;color:#435162;font-family:var(--bs-font-monospace,SFMono-Regular,Menlo,Consolas,monospace);font-size:10.5px}.schema-panel-nav-root,.schema-panel-nav-database,.schema-panel-nav-schemas-label,.schema-panel-nav-schema>summary{display:flex;align-items:center;gap:6px;min-height:25px}.schema-panel-nav-root{color:#315a7d;font-weight:700}.schema-panel-nav-root>i{color:#4682ae}.schema-panel-nav-branch{margin-left:7px;padding-left:12px;border-left:1px solid #d5dce4}.schema-panel-nav-database{color:#344054;font-weight:700}.schema-panel-nav-database>i{color:#4d87a9}.schema-panel-nav-schemas{margin-left:7px;padding-left:12px;border-left:1px solid #dfe5eb}.schema-panel-nav-schemas-label{color:#667085;font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.schema-panel-nav-schemas-label i{color:#8b99a8}.schema-panel-nav-schema{margin:1px 0}.schema-panel-nav-schema>summary{justify-content:space-between;padding:0 3px;color:#536274;font-weight:700;cursor:pointer;list-style:none}.schema-panel-nav-schema>summary::-webkit-details-marker{display:none}.schema-panel-nav-schema>summary span{display:flex;align-items:center;gap:6px}.schema-panel-nav-schema>summary span i{color:#bb8021}.schema-panel-nav-schema>summary b{min-width:17px;padding:1px 4px;border-radius:99px;background:#eaf0f5;color:#6b7b8d;font-size:9px;text-align:center}.schema-panel-nav-tables{margin-left:7px;padding-left:8px;border-left:1px solid #e7ebef}.schema-panel-nav-table{border-bottom:0}.schema-panel-nav-table .schema-panel-table-header{min-height:25px}.schema-panel-nav-table .schema-panel-toggle{padding:1px 2px}.schema-panel-nav-icon{color:#6d93b0;font-size:9px}.schema-panel-nav-table .schema-panel-insert-table{padding:3px 1px;font-size:10.5px}.schema-panel-nav-table .schema-panel-columns{padding:1px 0 4px 21px}.schema-panel-nav-table .schema-panel-insert-col{font-size:10px}
.dbt-materialization-bar{display:flex;align-items:end;gap:10px;min-height:48px;padding:7px 10px;border-bottom:1px solid #dfe3e8;background:#f7f8fa}.dbt-materialization-bar>.command-field{flex:0 0 180px}.dbt-materialization-bar .form-select,.dbt-materialization-bar .form-control{height:31px;min-height:31px;padding-top:3px;padding-bottom:3px;border-color:#cbd3dc;border-radius:4px;font-size:11px}.dbt-incremental-options{display:flex;align-items:end;gap:8px}.dbt-incremental-options>.command-field:first-child{width:145px}.dbt-unique-key-field{width:260px}.dbt-alias-field{flex:0 0 220px}.dbt-materialization-hint{align-self:center;margin-left:auto;color:#667085;font-size:10.5px;text-align:right}.dbt-materialization-bar .command-field>span{font-size:9.5px}.dbt-file-physical{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px;padding:6px 10px;border-bottom:1px solid #dfe3e8;background:#f7f8fa}.dbt-file-physical>span{color:#586575;font-size:10px;font-weight:700}.dbt-file-physical code{display:block;overflow:hidden;padding:5px 8px;border:1px solid #bcd6c8;border-radius:4px;background:#f0f8f3;color:#17613b;font-size:10.5px;text-overflow:ellipsis;white-space:nowrap}.dbt-alias-hint{padding:4px 10px 0}
.parametro-builder-list .btn-outline-danger{border:0}

/* Cadastro de transformações DW */
.transformacao-editor-body-layout{display:grid;grid-template-columns:218px minmax(0,1fr);gap:8px;align-items:start}.transformacao-editor-body{min-width:0}.asset-editor-library{position:sticky;top:10px;display:flex;min-height:0;max-height:calc(100vh - 30px);flex-direction:column;border:1px solid #d9e0e7;border-radius:5px;background:#f8fafc;overflow:hidden}.asset-editor-library>header{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:36px;padding:0 9px;border-bottom:1px solid #dfe5eb;background:#f1f5f9;color:#344054;font-size:10.5px}.asset-editor-library>header>div{display:flex;align-items:center;gap:6px}.asset-editor-library>header>div>i{color:#537aa8}.asset-editor-library>header>a{display:grid;place-items:center;width:22px;height:22px;border-radius:3px;color:#68778a;text-decoration:none}.asset-editor-library>header>a:hover{background:#e2edf8;color:#1769c2}.asset-editor-library>p{margin:0;padding:7px 9px 6px;border-bottom:1px solid #e5e9ee;color:#718096;font-size:9.5px}.asset-editor-library-list{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.asset-editor-group{border-bottom:1px solid #e3e8ed}.asset-editor-group>summary{display:flex;align-items:center;justify-content:space-between;min-height:31px;padding:5px 8px;color:#536274;font-size:10px;font-weight:750;cursor:pointer;list-style:none}.asset-editor-group>summary::-webkit-details-marker{display:none}.asset-editor-group>summary span{display:flex;align-items:center;gap:6px}.asset-editor-group>summary b{min-width:18px;padding:1px 5px;border-radius:99px;background:#e4ebf2;color:#64748b;font-size:9px;text-align:center}.asset-editor-group .is-ingestion{color:#12805c}.asset-editor-group .is-transformation{color:#5b5bd6}.asset-editor-empty{margin:0;padding:7px 11px 9px;color:#98a2b3;font-size:10px}.asset-editor-link{display:grid;grid-template-columns:15px minmax(0,1fr) 14px;align-items:center;gap:6px;min-height:39px;padding:5px 9px 5px 13px;border-top:1px solid #eef1f4;color:#475467;text-decoration:none}.asset-editor-link:hover{background:#eef6ff;color:#145fa8}.asset-editor-link>i:last-child{color:#98a2b3;font-size:9px;opacity:0}.asset-editor-link:hover>i:last-child{opacity:1;color:#1769c2}.asset-editor-link span{min-width:0}.asset-editor-link strong,.asset-editor-link small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-editor-link strong{font-size:10px;font-weight:650}.asset-editor-link small{margin-top:1px;color:#8491a1;font-size:8.5px}
.transformacao-page{max-width:1240px;margin:0 auto;padding:10px 0 28px}
.transformacao-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:10px 0 24px}
.transformacao-breadcrumb{display:flex;align-items:center;gap:9px;margin-bottom:13px;font-size:13px;color:#667085}.transformacao-breadcrumb a{color:#475467;text-decoration:none}.transformacao-breadcrumb a:hover{color:var(--brand-primary);text-decoration:underline}.transformacao-breadcrumb i{font-size:10px;color:#98a2b3}
.transformacao-page h1{margin:0;color:#1f2933;font-size:28px;font-weight:700;letter-spacing:-.025em;text-wrap:balance}.transformacao-page-header p{max-width:730px;margin:8px 0 0;color:#5d6876;font-size:15px;line-height:1.55;text-wrap:pretty}.transformacao-back-link{white-space:nowrap;margin-top:28px}
.transformacao-workspace{background:#fff;border:1px solid #dfe3e8;border-radius:12px;box-shadow:0 1px 2px rgba(16,24,40,.04);overflow:hidden}
.transformacao-section{padding:26px 28px}.transformacao-section+.transformacao-section{border-top:1px solid var(--line)}.transformacao-section-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:22px}.transformacao-section-icon{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:8px;background:#eef4ff;color:#0d6efd;font-size:13px}.transformacao-section-heading h2{margin:1px 0 3px;color:#273342;font-size:16px;font-weight:700}.transformacao-section-heading p{margin:0;color:#667085;font-size:13px;line-height:1.45}
.transformacao-form .form-label{margin-bottom:7px;color:#344054;font-size:13px;font-weight:650}.transformacao-form .form-control,.transformacao-form .form-select{min-height:44px;border-color:#cfd6df;border-radius:7px}.transformacao-form .form-control:focus,.transformacao-form .form-select:focus{border-color:#0d6efd;box-shadow:0 0 0 .2rem rgba(13,110,253,.12)}.transformacao-form .form-text{color:#667085;font-size:12px;margin-top:6px}
.transformacao-sql-heading{align-items:center}.transformacao-command-note{margin-left:auto;padding:5px 9px;border:1px solid #d8dee8;border-radius:6px;background:#f8fafc;color:#536172;font-size:12px;font-weight:600;white-space:nowrap}.sql-editor{min-height:390px;padding:16px;line-height:1.6;tab-size:4;background:#111827!important;color:#e5e7eb!important;border-color:#374151!important;font-size:13px}.sql-editor::placeholder{color:#9ca8b8}.sql-editor:focus{border-color:#5b9dff!important;box-shadow:0 0 0 .25rem rgba(13,110,253,.18)!important}
.sql-cm-editor.CodeMirror{min-height:390px;border:1px solid #374151;border-radius:7px;background:#111827!important;color:#e5e7eb;font-family:var(--bs-font-monospace,SFMono-Regular,Menlo,Consolas,monospace);font-size:13px;line-height:1.6}
.sql-cm-editor .CodeMirror-gutters{background:#0d1420;border-right:1px solid #374151}
.sql-cm-editor .CodeMirror-linenumber{color:#5b6878}
.sql-cm-editor.CodeMirror-focused{border-color:#5b9dff;box-shadow:0 0 0 .25rem rgba(13,110,253,.18)}
.sql-cm-editor .CodeMirror-placeholder{color:#9ca8b8!important}
.sql-cm-editor .cm-function-call{color:#8be9fd;font-weight:600}
.transformacao-schema{height:100%;min-height:390px;border:1px solid #dfe3e8;border-radius:8px;background:#fbfcfd;overflow:hidden}.transformacao-schema-header{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:11px 12px;border-bottom:1px solid #e6e9ee;color:#344054;font-size:12px}.transformacao-schema-header span{color:#667085;font-size:11px}.transformacao-schema .schema-panel{max-height:342px;padding:10px 12px}.transformacao-schema .schema-panel-search{border-color:#d6dce5}.transformacao-sql-help{display:flex;align-items:flex-start;gap:8px;margin-top:12px;color:#5b6878;font-size:12.5px}.transformacao-sql-help i{color:#537aa8;margin-top:2px}.transformacao-sql-help code{color:#344054;font-size:12px}
.table-output-destination{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(420px,1.2fr);align-items:start;gap:22px}.table-output-destination fieldset{min-width:0;margin:0}.table-output-destination .input-group-text{min-width:68px;justify-content:flex-end;border-color:#cfd6df;background:#f3f5f7;color:#475467;font-family:var(--bs-font-monospace,SFMono-Regular,Menlo,Consolas,monospace);font-size:13px}.table-output-mode-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.table-output-mode-picker label{display:flex;align-items:flex-start;gap:10px;min-height:66px;padding:11px 12px;border:1px solid #dce2e8;border-radius:8px;background:#fff;cursor:pointer;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease}.table-output-mode-picker label:hover{border-color:#b9c5d2;background:#fafcff}.table-output-mode-picker label:has(input:checked){border-color:#8db7ef;background:#f3f8ff;box-shadow:0 0 0 1px rgba(13,110,253,.08)}.table-output-mode-picker input{margin-top:3px}.table-output-mode-picker span,.table-output-mode-picker strong,.table-output-mode-picker small{display:block}.table-output-mode-picker strong{color:#344054;font-size:13px}.table-output-mode-picker small{margin-top:3px;color:#667085;font-size:11.5px;line-height:1.35}.table-output-warning{display:flex;align-items:flex-start;gap:10px;margin-top:14px;padding:11px 13px;border:1px solid #e8cf8b;border-radius:8px;background:#fffbeb;color:#5f501f;font-size:12.5px}.table-output-warning i{margin-top:2px;color:#9a7800}.table-output-source-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr);gap:16px;margin-top:26px}.table-output-subheading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:10px}.table-output-subheading h3{margin:0;color:#344054;font-size:13px;font-weight:700}.table-output-subheading p{margin:3px 0 0;color:#667085;font-size:11.5px;line-height:1.4}.table-output-source-sql{min-height:220px;padding:14px;line-height:1.55;background:#111827!important;color:#e5e7eb!important;border-color:#374151!important;font-size:13px}.table-output-source-grid .sql-cm-editor.CodeMirror{min-height:220px}.table-output-schema{min-height:290px}.table-output-schema .schema-panel{max-height:242px}.table-output-feedback{min-height:20px;margin-top:6px}.table-output-mapping{margin-top:26px;padding-top:22px;border-top:1px solid #e6e9ee}.table-output-map-head,.table-output-map-row{display:grid;grid-template-columns:minmax(180px,1fr) 24px minmax(180px,1fr) 38px;align-items:center;gap:10px}.table-output-map-head{padding:0 0 7px;color:#667085;font-size:11px;font-weight:700}.table-output-map-list{display:grid;gap:7px}.table-output-map-row>i{text-align:center;color:#98a2b3;font-size:11px}.table-output-map-row .btn{width:38px;height:38px;border-color:transparent}.table-output-empty{padding:18px;border:1px dashed #cfd7e1;border-radius:8px;background:#fafbfc;color:#667085;text-align:center;font-size:12px}.table-output-preview{margin-top:22px;border-top:1px solid #e6e9ee}.table-output-preview summary{padding:14px 0 10px;color:#475467;font-size:12.5px;font-weight:650;cursor:pointer}.table-output-preview textarea{min-height:220px;background:#111827;color:#dce3ec;border-color:#374151;font-size:12px;line-height:1.55}.table-output-preview textarea:focus{background:#111827;color:#dce3ec}.table-output-section .transformacao-command-note{margin-left:auto}
.table-output-source-grid{grid-template-columns:minmax(0,1fr) auto}.table-output-schema-drawer{width:52px;min-height:290px;border:1px solid #dfe3e8;border-radius:8px;background:#fbfcfd;overflow:hidden}.table-output-schema-drawer[open]{width:320px}.table-output-schema-drawer summary{display:flex;align-items:center;gap:9px;padding:12px;color:#475467;cursor:pointer;list-style:none}.table-output-schema-drawer summary::-webkit-details-marker{display:none}.table-output-schema-drawer:not([open]) summary{justify-content:center;flex-direction:column;min-height:288px}.table-output-schema-drawer:not([open]) summary span{display:flex;align-items:center;gap:8px;writing-mode:vertical-rl}.table-output-schema-drawer:not([open]) summary small{display:none}.table-output-schema-drawer summary>i:first-child{color:#537aa8}.table-output-schema-drawer summary span{min-width:0;flex:1}.table-output-schema-drawer summary strong,.table-output-schema-drawer summary small{display:block}.table-output-schema-drawer summary strong{font-size:12px}.table-output-schema-drawer summary small{margin-top:2px;color:#667085;font-size:10.5px}.table-output-schema-chevron{font-size:10px;transition:transform .18s ease}.table-output-schema-drawer[open] .table-output-schema-chevron{transform:rotate(180deg)}.table-output-schema-drawer-body{width:318px;border-top:1px solid #e6e9ee}.table-output-schema-drawer-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;color:#344054;font-size:11px}.table-output-schema-drawer-heading span{color:#667085;font-size:10px}.table-output-schema-drawer .schema-panel{max-height:242px;padding:0 12px 12px}.table-output-detected{display:flex;align-items:center;gap:6px;min-height:32px;overflow-x:auto;padding:2px 0 4px}.table-output-detected-empty{color:#7b8794;font-size:11.5px}.table-output-field-chip{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;padding:4px 7px;border:1px solid #dbe2ea;border-radius:6px;background:#f8fafc;color:#344054;font-family:var(--bs-font-monospace,SFMono-Regular,Menlo,Consolas,monospace);font-size:11px}.table-output-field-chip small{color:#667085;font-family:var(--bs-body-font-family,system-ui,sans-serif);font-size:10px}.table-output-test-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;padding:15px 16px;border:1px solid #dce3eb;border-radius:8px;background:#f8fafc}.table-output-test-bar strong,.table-output-test-bar span{display:block}.table-output-test-bar strong{color:#344054;font-size:13px}.table-output-test-bar span{margin-top:3px;color:#667085;font-size:11.5px}.table-output-test-bar .btn{white-space:nowrap}.table-output-test-result{display:flex;align-items:flex-start;gap:9px;margin-top:8px;padding:11px 13px;border:1px solid #dce3eb;border-radius:8px;font-size:12.5px}.table-output-test-result i{margin-top:2px}.table-output-test-result.is-running{background:#f5f8fc;color:#526174}.table-output-test-result.is-success{border-color:#afd8bf;background:#effaf3;color:#17613b}.table-output-test-result.is-error{border-color:#efb8bc;background:#fff3f4;color:#8a2430}
.table-output-create-table{display:flex;align-items:flex-start;gap:9px;margin-top:12px}.table-output-create-table .form-check-input{flex:0 0 auto;margin:3px 0 0}.table-output-create-table .form-check-label{display:grid;gap:2px;color:#344054;cursor:pointer}.table-output-create-table .form-check-label strong{font-size:12.5px}.table-output-create-table .form-check-label span{color:#667085;font-size:11px}
.transformacao-form-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 28px;border-top:1px solid var(--line);background:#fafbfc}.transformacao-availability{display:flex;align-items:flex-start;gap:10px;margin:0}.transformacao-availability .form-check-input{flex:0 0 auto;margin:4px 0 0}.transformacao-availability .form-check-label{display:grid;gap:2px;color:#344054;font-size:13px;cursor:pointer}.transformacao-availability .form-check-label span{color:#667085;font-weight:400;font-size:12px}
@media(max-width:991.98px){.table-output-destination,.table-output-source-grid{grid-template-columns:1fr}.table-output-schema{min-height:250px}.table-output-schema .schema-panel{max-height:202px}}
@media(max-width:991.98px){.table-output-schema-drawer,.table-output-schema-drawer[open]{width:100%;min-height:0}.table-output-schema-drawer:not([open]) summary{min-height:0;justify-content:flex-start;flex-direction:row}.table-output-schema-drawer:not([open]) summary span{display:block;writing-mode:initial}.table-output-schema-drawer:not([open]) summary small{display:block}.table-output-schema-drawer-body{width:auto}.table-output-schema-drawer .schema-panel{max-height:220px}.table-output-test-bar{align-items:stretch;flex-direction:column}.table-output-test-bar .btn{align-self:flex-start}}
@media(max-width:767.98px){.transformacao-page{padding-top:0}.transformacao-page-header{flex-direction:column;gap:12px;margin-bottom:18px}.transformacao-back-link{margin-top:0}.transformacao-section{padding:20px}.transformacao-section-heading{margin-bottom:18px}.transformacao-command-note{display:none}.transformacao-schema{min-height:260px}.transformacao-schema .schema-panel{max-height:210px}.sql-editor{min-height:300px}.sql-cm-editor.CodeMirror{min-height:300px}.table-output-mode-picker{grid-template-columns:1fr}.table-output-map-head{display:none}.table-output-map-row{grid-template-columns:minmax(0,1fr) 20px 38px}.table-output-map-row input:first-child{grid-column:1/2}.table-output-map-row>i{grid-column:2/3}.table-output-map-row input:nth-of-type(2){grid-column:1/2;grid-row:2}.table-output-map-row .btn{grid-column:3/4;grid-row:1/3}.table-output-subheading{align-items:stretch;flex-direction:column}.table-output-subheading .btn{align-self:flex-start}.transformacao-form-footer{align-items:stretch;flex-direction:column;padding:18px 20px}.transformacao-form-footer>div:last-child{justify-content:stretch}.transformacao-form-footer .btn{flex:1}.transformacao-page h1{font-size:24px}}
@media(max-width:767.98px){.transformacao-editor-body-layout{display:block}.asset-editor-library{position:static;max-height:220px;margin-bottom:8px}.dbt-materialization-bar{align-items:stretch;flex-direction:column}.dbt-materialization-bar>.command-field{flex-basis:auto}.dbt-incremental-options{align-items:stretch;flex-direction:column}.dbt-incremental-options>.command-field:first-child,.dbt-unique-key-field{width:auto}.dbt-materialization-hint{align-self:flex-start;margin-left:0;text-align:left}}
@media(prefers-reduced-motion:reduce){.transformacao-form .form-control,.transformacao-form .form-select,.table-output-schema-chevron{transition:none}}

/* Explorador de modelos dbt: a estrutura do projeto fica ao lado do trabalho
   de escrita, com os arquivos órfãos tratados como pendência operacional. */
.dbt-file-explorer{border-top:1px solid #dfe3e8;background:#fbfcfe}.dbt-file-explorer-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 12px;border-bottom:1px solid #e3e7ec}.dbt-file-explorer-heading{display:flex;align-items:center;gap:9px;min-width:0}.dbt-file-explorer-icon{display:grid;place-items:center;width:30px;height:30px;flex:0 0 auto;border:1px solid #a8bdcf;border-radius:4px;background:#edf4fa;color:#21628d;font-size:13px}.dbt-file-explorer-kicker{display:block;color:#718096;font-size:9px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.dbt-file-explorer-heading h2{margin:0;color:#344054;font-size:12px;font-weight:750}.dbt-file-explorer-heading p{margin:1px 0 0;color:#667085;font-size:10.5px}.dbt-file-explorer-summary{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end;color:#526174;font-size:10px;white-space:nowrap}.dbt-file-explorer-summary>span{padding:3px 6px;border:1px solid #d9e0e7;border-radius:999px;background:#fff}.dbt-file-explorer-summary .is-warning{border-color:#e4c470;background:#fff8dc;color:#805d0b}.dbt-file-explorer-message{display:flex;align-items:center;gap:6px;margin:8px 10px;padding:6px 8px;border:1px solid;border-radius:4px;font-size:10.5px}.dbt-file-explorer-message.is-success{border-color:#a7d1b8;background:#edf9f1;color:#17613b}.dbt-file-explorer-message.is-error{border-color:#e6b4b8;background:#fff1f1;color:#a1262c}.dbt-file-explorer-empty{display:flex;align-items:center;justify-content:center;gap:8px;min-height:74px;padding:12px;color:#667085;font-size:11px}.dbt-file-explorer-empty i{color:#98a2b3;font-size:17px}.dbt-file-tree{padding:8px 10px 10px;display:grid;gap:6px}.dbt-file-tree-folder{border:1px solid #dfe5eb;border-radius:4px;background:#fff}.dbt-file-tree-folder>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:31px;padding:5px 8px;color:#475467;font-size:10.5px;font-weight:700;cursor:pointer;list-style:none}.dbt-file-tree-folder>summary::-webkit-details-marker{display:none}.dbt-file-tree-folder>summary>span:last-child{min-width:18px;padding:1px 5px;border-radius:999px;background:#eaf0f5;color:#516274;font-size:9.5px;text-align:center}.dbt-file-tree-folder-name{display:inline-flex;align-items:center;gap:6px}.dbt-file-tree-folder-name i{color:#b57b14}.dbt-file-tree-folder[open] .dbt-file-tree-folder-name i::before{content:"\f07c"}.dbt-file-tree-items{border-top:1px solid #edf0f3}.dbt-file-tree-item{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:48px;padding:6px 8px 6px 14px;border-top:1px solid #f0f2f4}.dbt-file-tree-item:first-child{border-top:0}.dbt-file-tree-item>i{color:#4c80a8;font-size:12px}.dbt-file-tree-item.is-orphan{background:linear-gradient(90deg,#fff9e6 0,rgba(255,249,230,0) 62%)}.dbt-file-tree-item.is-orphan>i{color:#b7791f}.dbt-file-tree-main{display:grid;min-width:0;gap:2px}.dbt-file-tree-main code{overflow:hidden;color:#26394a;font-size:11px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.dbt-file-tree-main small{overflow:hidden;color:#7a8796;font-size:9.5px;text-overflow:ellipsis;white-space:nowrap}.dbt-file-tree-state{display:flex;align-items:center;justify-content:flex-end;gap:5px;min-width:0}.dbt-file-tree-state .btn{display:inline-flex;align-items:center;gap:5px;min-height:27px;padding:3px 7px;border-radius:4px;font-size:10px;white-space:nowrap}.dbt-file-tree-state .badge{font-size:9px}
@media(max-width:767.98px){.dbt-file-explorer-header{align-items:flex-start;flex-direction:column;gap:7px}.dbt-file-explorer-summary{justify-content:flex-start}.dbt-file-tree-item{grid-template-columns:16px minmax(0,1fr);align-items:start}.dbt-file-tree-state{grid-column:2;justify-content:flex-start;flex-wrap:wrap}.dbt-file-tree-main small{white-space:normal;overflow-wrap:anywhere}.dbt-file-tree-state .btn span{display:inline}}

/* Workbench SQL de transformações */
.transformacao-page{max-width:1600px;padding:0 0 16px}.transformacao-workbench-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:42px;padding:4px 2px}.transformacao-workbench-header nav{display:flex;align-items:center;gap:7px;color:#667085;font-size:11px}.transformacao-workbench-header nav a{color:#475467;text-decoration:none}.transformacao-workbench-header nav i{font-size:8px;color:#98a2b3}.transformacao-workbench-header h1{margin:0!important;font-size:15px!important;font-weight:700!important;letter-spacing:0!important}.transformacao-workspace{border-radius:6px;box-shadow:none}.transformacao-workbench-alert{margin:0;border:0;border-bottom:1px solid #efb8bc;border-radius:0;padding:8px 12px;font-size:12px}.transformacao-workbench-form{background:#fff}.transformacao-commandbar{display:grid;grid-template-columns:minmax(210px,1fr) 130px 110px 100px 145px 92px;align-items:end;gap:8px;padding:8px 10px;border-bottom:1px solid #dfe3e8;background:#f7f8fa}.transformacao-commandbar-save{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;height:32px;padding:4px 10px;border-radius:4px;font-size:11px;font-weight:650;white-space:nowrap}
.command-state-toggle{display:flex;align-items:center;height:32px;padding:2px;border:1px solid #cbd3dc;border-radius:4px;background:#fff}.command-state-toggle label{flex:1;margin:0;cursor:pointer}.command-state-toggle input{position:absolute;opacity:0;pointer-events:none}.command-state-toggle span{display:block;padding:4px 6px;border-radius:3px;color:#586575;font-size:10px;font-weight:650;text-align:center;white-space:nowrap}.command-state-toggle input:checked+span{background:#e3f3e9;color:#1d7a4c}.command-state-toggle input[value="0"]:checked+span{background:#fdeceb;color:#b3261e}.command-state-toggle input:focus-visible+span{outline:2px solid #8dbdff;outline-offset:1px}.command-field{display:grid;min-width:0;gap:3px}.command-field>span{overflow:hidden;color:#586575;font-size:10px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.transformacao-commandbar .form-control,.transformacao-commandbar .form-select{min-height:32px;height:32px;padding-top:3px;padding-bottom:3px;border-color:#cbd3dc;border-radius:4px;font-size:12px}.transformacao-commandbar .input-group-text{height:32px;padding:3px 7px;border-color:#cbd3dc;border-radius:4px 0 0 4px;background:#eef1f4;color:#596779;font-size:11px}.table-output-inline-config{display:grid;grid-column:1/-1;grid-template-columns:minmax(190px,1fr) 145px auto;align-items:end;gap:8px;min-width:0}.command-toggle{display:flex;align-items:center;gap:7px;min-height:32px;margin:0;padding:0 4px;color:#475467;font-size:11px;font-weight:650;white-space:nowrap;cursor:pointer}.command-toggle .form-check-input{flex:0 0 auto;margin:0}.sql-workbench{background:#fff}.sql-workbench-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;padding:5px 8px;border-bottom:1px solid #303846;background:#202733}.sql-workbench-title{display:flex;align-items:center;gap:7px;color:#e5e7eb;font-size:12px}.sql-workbench-title i{color:#8dbdff}.sql-workbench-title span{color:#8f9cad;font-size:10px}.sql-workbench-actions{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.sql-workbench-actions .btn{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:4px 8px;border-color:#4a5564;border-radius:4px;color:#d5dbe3;background:#2a3340;font-size:11px}.sql-workbench-actions .btn:hover,.sql-workbench-actions .btn:focus{border-color:#718096;background:#364151;color:#fff}.sql-workbench-actions .btn-primary{border-color:#2f7edb;background:#1769c2;color:#fff}.sql-workbench-actions .btn-primary:hover{background:#0f5daf}.sql-workbench-editor-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;background:#111827}.sql-workbench-editor-grid>.CodeMirror,.sql-workbench-editor-grid>.sql-cm-editor.CodeMirror{border:0;border-radius:0}.sql-workbench-editor-grid .table-output-source-sql,.sql-workbench-editor-grid .sql-editor{min-height:clamp(420px,calc(100vh - 290px),760px);border:0!important;border-radius:0;padding:14px}.sql-workbench-editor-grid .table-output-schema-drawer{height:clamp(420px,calc(100vh - 290px),760px);min-height:420px;border-width:0 0 0 1px;border-radius:0;background:#f7f8fa}.sql-workbench-editor-grid .table-output-schema-drawer:not([open]) summary{min-height:100%;height:100%}.sql-workbench-editor-grid .table-output-schema-drawer[open]{width:300px}.sql-workbench-editor-grid .table-output-schema-drawer-body{width:299px}.sql-workbench-editor-grid .table-output-schema-drawer .schema-panel{max-height:calc(clamp(420px,calc(100vh - 290px),760px) - 90px)}.sql-workbench-statusbar{display:flex;align-items:center;gap:10px;min-height:29px;padding:3px 8px;border-top:1px solid #293241;border-bottom:1px solid #dfe3e8;background:#eef1f4;color:#596779;font-size:10.5px}.sql-workbench-statusbar .table-output-feedback{flex:0 0 auto;min-width:80px}.sql-workbench-statusbar .table-output-warning{display:inline-flex;align-items:center;gap:5px;margin:0;padding:2px 5px;border:1px solid #dec36f;border-radius:3px;background:#fff8db;font-size:10px}.sql-workbench-statusbar .table-output-detected{min-height:0;flex:1;padding:0;justify-content:flex-end}.sql-workbench-statusbar .table-output-field-chip{padding:2px 5px;border-radius:3px;background:#fff;font-size:9.5px}.sql-workbench-statusbar .table-output-detected-empty{font-size:10px}.sql-workbench-panel{border-bottom:1px solid #dfe3e8;background:#fff}.sql-workbench-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;padding:5px 10px;color:#475467;font-size:11px;font-weight:650;cursor:pointer;list-style:none}.sql-workbench-panel>summary::-webkit-details-marker{display:none}.sql-workbench-panel>summary>span{display:flex;align-items:center;gap:7px}.sql-panel-meta{color:#7a8796;font-size:10px;font-weight:500}.sql-workbench-panel[open] .sql-panel-meta>i{transform:rotate(180deg)}.sql-workbench-panel-body{padding:8px 10px;background:#fafbfc;border-top:1px solid #e5e8ec}.sql-workbench-panel-body .table-output-map-head,.sql-workbench-panel-body .table-output-map-row{grid-template-columns:minmax(180px,1fr) 20px minmax(180px,1fr) 32px;gap:6px}.sql-workbench-panel-body .form-control{min-height:30px;height:30px;padding:3px 7px;border-radius:4px;font-size:11px}.sql-workbench-panel-body .table-output-map-row .btn{width:30px;height:30px;padding:2px}.sql-panel-actions{display:flex;justify-content:flex-end;margin-top:7px}.sql-workbench-panel-body .table-output-empty{padding:10px;border-radius:4px}.table-output-preview{margin:0;border-top:0}.table-output-preview textarea{min-height:250px;border-radius:4px}.table-output-test-result{margin:0;border-width:0 0 1px;border-radius:0;padding:7px 10px;font-size:11px}.transformacao-workbench-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:46px;padding:6px 10px;background:#f7f8fa}.workbench-footer-actions{display:flex;align-items:center;gap:6px}.transformacao-workbench-footer .btn{min-height:31px;padding:4px 10px;border-radius:4px;font-size:11px}.transformacao-history-panel{max-width:1600px;margin:10px auto 20px;border:1px solid #dfe3e8;border-radius:5px;background:#fff}.transformacao-history-panel>summary{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;color:#475467;font-size:11px;font-weight:650;cursor:pointer}.transformacao-history-panel table{font-size:11px}
.transformacao-contextbar{border-bottom:1px solid #dfe3e8;background:#fbfcfd}.transformacao-groups-section{display:flex;align-items:center;gap:10px;min-width:0;padding:8px 10px;border:0;background:transparent}.transformacao-groups-section .checklist-select{max-width:230px;flex:0 1 230px}.transformacao-groups-section .rich-select-trigger{min-height:32px;padding:3px 10px;border-color:#cbd3dc;border-radius:4px;font-size:12px}.transformacao-groups-section .asset-tag-editor--compact{min-width:250px;flex:1 1 360px}.transformacao-groups-heading{display:flex;flex:0 1 300px;flex-direction:column;gap:1px;min-width:0}.transformacao-groups-heading strong{color:#344054;font-size:11px;font-weight:700}.transformacao-groups-heading span{overflow:hidden;color:#7a8796;font-size:10.5px;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:980px){.transformacao-groups-section{flex-wrap:wrap}.transformacao-groups-heading{flex-basis:calc(100% - 240px)}.transformacao-groups-section .asset-tag-editor--compact{flex-basis:100%}}@media(max-width:767.98px){.transformacao-groups-section{flex-direction:column;align-items:stretch;gap:6px}.transformacao-groups-section .checklist-select{max-width:none;flex-basis:auto}.transformacao-groups-heading{flex-basis:auto}.transformacao-groups-heading span{white-space:normal}.transformacao-groups-section .asset-tag-editor--compact{min-width:0;flex-basis:auto}}
.dbt-model-mode{display:flex;align-items:center;padding:2px;border:1px solid #465160;border-radius:5px;background:#171d26}.dbt-model-mode label{margin:0;cursor:pointer}.dbt-model-mode input{position:absolute;opacity:0;pointer-events:none}.dbt-model-mode span{display:block;padding:4px 9px;border-radius:3px;color:#aeb8c5;font-size:10px;font-weight:650}.dbt-model-mode input:checked+span{background:#eaf3ff;color:#1769c2}.dbt-model-mode input:focus-visible+span{outline:2px solid #8dbdff;outline-offset:1px}.dbt-file-commandbar{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(320px,1.4fr) minmax(220px,.8fr);align-items:end;gap:10px;padding:8px 10px;border-bottom:1px solid #dfe3e8;background:#f7f8fa}.dbt-file-commandbar .input-group-text,.dbt-file-commandbar .form-control{min-height:32px;height:32px;border-color:#cbd3dc;border-radius:4px;font-size:11px}.dbt-file-commandbar .input-group-text{padding:3px 7px;background:#eef1f4;color:#596779}.dbt-file-path,.dbt-file-selector{display:grid;min-width:0;gap:3px}.dbt-file-path>span,.dbt-file-selector>span{color:#586575;font-size:10px;font-weight:700}.dbt-file-path code,.dbt-file-selector code{display:block;overflow:hidden;height:32px;padding:7px 8px;border:1px solid #d6dce4;border-radius:4px;background:#fff;color:#344054;font-size:10.5px;text-overflow:ellipsis;white-space:nowrap}.dbt-file-selector code{border-color:#bcd6c8;background:#f0f8f3;color:#17613b}.dbt-model-warning{display:flex;align-items:center;gap:7px;padding:7px 10px;border-bottom:1px solid #e8cf8b;background:#fff8db;color:#6e591d;font-size:11px}
@media(max-width:1250px){.transformacao-commandbar{grid-template-columns:minmax(210px,1fr) 115px 100px 90px 135px}.transformacao-commandbar-save{grid-column:1/-1;justify-self:end;width:86px}.table-output-inline-config{grid-column:1/-1;grid-template-columns:minmax(220px,1fr) 145px auto}.dbt-file-commandbar{grid-template-columns:minmax(240px,1fr) minmax(300px,1.5fr)}.dbt-file-selector{grid-column:1/-1}}
@media(max-width:767.98px){.transformacao-workbench-header{align-items:flex-start;flex-direction:column;gap:2px;padding:6px 0}.transformacao-commandbar{grid-template-columns:1fr 90px}.command-field--name{grid-column:1/-1}.command-field--state{grid-column:1/-1}.command-field--method{grid-column:1/-1}.transformacao-commandbar-save{grid-column:1/-1;width:100%}.table-output-inline-config{grid-template-columns:1fr}.command-toggle{min-height:28px}.sql-workbench-toolbar{align-items:flex-start;flex-direction:column}.sql-workbench-actions{width:100%}.sql-workbench-actions .btn{flex:1;justify-content:center}.sql-workbench-actions .btn span{display:none}.dbt-model-mode{width:100%}.dbt-model-mode label{flex:1}.dbt-model-mode span{text-align:center}.dbt-file-commandbar{grid-template-columns:1fr}.dbt-file-selector{grid-column:auto}.sql-workbench-editor-grid{grid-template-columns:1fr}.sql-workbench-editor-grid .table-output-source-sql,.sql-workbench-editor-grid .sql-editor{min-height:55vh}.sql-workbench-editor-grid .table-output-schema-drawer,.sql-workbench-editor-grid .table-output-schema-drawer[open]{width:100%;height:auto;min-height:0;border-width:1px 0 0}.sql-workbench-editor-grid .table-output-schema-drawer:not([open]) summary{height:auto;min-height:34px}.sql-workbench-editor-grid .table-output-schema-drawer-body{width:auto}.sql-workbench-statusbar .table-output-detected{display:none}.transformacao-workbench-footer{position:sticky;bottom:0;z-index:20}}

/* Mapa operacional inspirado no canvas do Apache Hop. Os nós explicam o fluxo,
   mas continuam sendo atalhos para o formulário SQL existente. */
.transformacao-flow-map{border-bottom:1px solid #dfe3e8;background:#eef1f4}
.transformacao-flow-map-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:36px;padding:5px 10px;border-bottom:1px solid #d9dee5;background:#f8f9fb;color:#344054}
.transformacao-flow-map-header>div{display:flex;align-items:baseline;gap:9px;min-width:0}.transformacao-flow-map-header strong{font-size:11px}.transformacao-flow-map-header span{color:#667085;font-size:10px}.transformacao-flow-legend{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.transformacao-flow-legend i{color:#27865e;font-size:7px}
.transformacao-flow-canvas{display:flex;align-items:center;justify-content:center;gap:18px;min-height:154px;padding:20px 34px;background-color:#f5f7f9;background-image:radial-gradient(circle,#697586 1px,transparent 1px);background-size:20px 20px;background-position:-4px -4px}
.transformacao-flow-node{position:relative;display:flex;align-items:center;gap:11px;width:min(260px,28%);min-width:190px;min-height:76px;padding:11px 34px 11px 11px;border:1px solid #bfc8d2;border-radius:5px;background:#fff;color:#273342;text-align:left;box-shadow:0 2px 5px rgba(30,41,59,.07);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.transformacao-flow-node:hover{border-color:#7d91a8;box-shadow:0 5px 13px rgba(30,41,59,.11);transform:translateY(-1px)}.transformacao-flow-node:focus-visible,.transformacao-flow-node.is-selected{outline:0;border-color:#2f7edb;box-shadow:0 0 0 3px rgba(47,126,219,.18)}
.transformacao-flow-node-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 auto;border:1px solid #9dbce0;border-radius:4px;background:#eaf3ff;color:#1769c2;font-size:14px}.transformacao-flow-node-icon--operation{border-color:#b7a9d9;background:#f2effa;color:#654da0}.transformacao-flow-node-icon--target{border-color:#9cc9b3;background:#ebf7f0;color:#20734e}
.transformacao-flow-node-copy{display:grid;min-width:0;gap:1px}.transformacao-flow-node-copy small{color:#667085;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.transformacao-flow-node-copy strong,.transformacao-flow-node-copy>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transformacao-flow-node-copy strong{color:#273342;font-size:12px}.transformacao-flow-node-copy>span{color:#667085;font-size:10px}
.transformacao-flow-node-state{position:absolute;top:7px;right:7px;display:grid;place-items:center;width:16px;height:16px;border:1px solid #c9d1da;border-radius:50%;background:#fff;color:transparent;font-size:8px}.transformacao-flow-node.is-ready .transformacao-flow-node-state{border-color:#57a57d;background:#27865e;color:#fff}.transformacao-flow-node.is-pending .transformacao-flow-node-state{border-color:#d2a947;background:#fff8db;color:#8a6710}.transformacao-flow-node.is-pending .transformacao-flow-node-state i::before{content:"\f12a"}
.transformacao-flow-node--source.has-chips{align-items:flex-start;width:min(300px,32%)}
.transformacao-flow-source-chips{display:flex;flex-direction:column;gap:4px;margin-top:3px;white-space:normal}
.transformacao-flow-source-group{display:flex;flex-wrap:wrap;align-items:center;gap:5px}
.transformacao-flow-source-group-label{flex:0 0 auto;min-width:38px;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#8a94a3}
.transformacao-flow-source-group-items{display:flex;flex-wrap:wrap;gap:4px}
.transformacao-flow-source-chip{display:inline-block;padding:1px 7px;border:1px solid #d7dde5;border-radius:20px;background:#f4f6f8;color:#3a4553;font-size:9.5px;font-weight:600;line-height:1.5;white-space:nowrap}
.transformacao-flow-connector{position:relative;width:58px;height:2px;flex:0 1 58px;background:#8190a0;color:#667788}.transformacao-flow-connector::before{content:"";position:absolute;left:12px;top:-2px;width:6px;height:6px;border-radius:50%;background:#8190a0}.transformacao-flow-connector i{position:absolute;right:-2px;top:50%;padding-left:3px;background:#f5f7f9;font-size:10px;transform:translateY(-50%)}
.workbench-footer-state{display:flex;align-items:center;gap:14px}.workbench-save-state{display:inline-flex;align-items:center;gap:5px;color:#547060;font-size:10px}.workbench-save-state i{font-size:9px}.workbench-save-state.is-dirty{color:#8a6710}.workbench-save-state.is-dirty i::before{content:"\f111"}
@media(max-width:1000px){.transformacao-flow-canvas{gap:9px;padding-inline:18px}.transformacao-flow-node{width:30%;min-width:0}.transformacao-flow-connector{width:28px;flex-basis:28px}.transformacao-flow-node-copy>span{display:none}}
@media(max-width:767.98px){.transformacao-flow-map-header>div>span,.transformacao-flow-legend{display:none}.transformacao-flow-canvas{align-items:stretch;flex-direction:column;gap:7px;min-height:0;padding:12px}.transformacao-flow-node{width:100%;min-height:58px}.transformacao-flow-connector{width:2px;height:18px;flex:0 0 18px;margin-left:29px;align-self:flex-start}.transformacao-flow-connector::before{left:-2px;top:5px}.transformacao-flow-connector i{right:auto;left:50%;top:auto;bottom:-1px;padding:0;background:#f5f7f9;transform:translateX(-50%) rotate(90deg)}.transformacao-flow-node-copy>span{display:block}.workbench-footer-state{align-items:flex-start;flex-direction:column;gap:3px}.workbench-save-state{padding-left:22px}}
@media(prefers-reduced-motion:reduce){.transformacao-flow-node{transition:none}}

/* AirSenior: assistente contextual no workbench */
.airsenior-panel{margin:16px 0;border:1px solid #ccd5df;border-radius:8px;background:#fff;overflow:hidden}.airsenior-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 15px;border-bottom:1px solid #e3e7eb;background:#f8fafc}.airsenior-heading>div>div{display:grid}.airsenior-heading strong{color:#263244;font-size:13px}.airsenior-heading small{color:#667085;font-size:10px}.airsenior-avatar{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border:1px solid #718096;border-radius:12px 12px 8px 8px;background:linear-gradient(145deg,#34495e,#172331);color:#cbd5e1;box-shadow:inset 0 0 0 2px rgba(255,255,255,.08);font-size:17px;transform:rotate(-4deg)}.airsenior-empty{display:flex;align-items:center;justify-content:center;gap:10px;min-height:84px;padding:20px;color:#667085;font-size:11px}.airsenior-result{display:grid;grid-template-columns:92px 1fr;gap:14px;padding:16px}.airsenior-score{display:grid;place-items:center;align-content:center;height:78px;border:1px solid #cbd5df;border-radius:7px;background:#f6f8fa;color:#25364a}.airsenior-score span{font-size:27px;font-weight:750;line-height:1}.airsenior-score small{margin-top:4px;color:#667085}.airsenior-review-copy{align-self:center}.airsenior-review-copy strong{color:#273342;font-size:13px}.airsenior-review-copy p{margin:5px 0 0;color:#667085;font-size:11px;font-style:italic}.airsenior-findings,.airsenior-suggestion{grid-column:1/-1}.airsenior-findings{display:grid;gap:7px}.airsenior-finding{display:flex;align-items:flex-start;gap:10px;padding:9px 10px;border-left:3px solid #98a2b3;background:#f8f9fb}.airsenior-finding>span{min-width:54px;color:#667085;font-size:8px;font-weight:800;text-transform:uppercase}.airsenior-finding>div{display:grid;gap:2px}.airsenior-finding strong{color:#344054;font-size:11px}.airsenior-finding small{color:#667085;font-size:9.5px}.airsenior-finding.is-critical{border-color:#c84854;background:#fff6f6}.airsenior-finding.is-warning{border-color:#c49722;background:#fffbef}.airsenior-suggestion{padding:10px;border:1px solid #dde3e9;border-radius:5px}.airsenior-suggestion summary{color:#344054;font-size:11px;font-weight:700;cursor:pointer}.airsenior-suggestion pre{max-height:340px;margin:10px 0;padding:12px;border-radius:4px;background:#18212c;color:#dbe5ef;font-size:10px;white-space:pre-wrap}.airsenior-history{display:grid;gap:0;padding:8px 15px}.airsenior-history article{display:flex;align-items:center;gap:11px;padding:9px 0;border-bottom:1px solid #edf0f2}.airsenior-history article:last-child{border-bottom:0}.airsenior-history article>div{display:grid}.airsenior-history article strong{color:#344054;font-size:10.5px}.airsenior-history article small{color:#667085;font-size:9px}.airsenior-history-score{display:grid;place-items:center;width:34px;height:28px;border-radius:4px;background:#e9eef4;color:#344054;font-size:11px;font-weight:750}@media(max-width:767.98px){.airsenior-heading{align-items:stretch;flex-direction:column}.airsenior-heading>.d-flex:last-child{width:100%}.airsenior-heading button{flex:1}.airsenior-result{grid-template-columns:64px 1fr}.airsenior-score{height:64px}}

/* Listagem de transformações como console de pipelines */
.transformacao-index{max-width:1480px;margin:0 auto;padding:14px 0 32px}.transformacao-index-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:8px 0 18px}.transformacao-index-header h1{margin:0;color:#1f2933;font-size:23px;font-weight:700;letter-spacing:-.018em}.transformacao-index-header p{margin:5px 0 0;color:#667085;font-size:14px}.transformacao-index-header .btn{min-height:38px}
.transformacao-index-flow{display:flex;align-items:stretch;gap:0;margin-bottom:14px;border:1px solid #dce2e8;border-radius:7px;background:#fff;overflow:hidden}.transformacao-index-flow-stage{display:flex;align-items:center;gap:10px;min-width:190px;padding:11px 14px}.transformacao-index-flow-stage>span:last-child{display:grid;gap:1px}.transformacao-index-flow-stage small{color:#667085;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.transformacao-index-flow-stage strong{color:#344054;font-size:12px}.transformacao-index-flow-stage strong b{display:inline-grid;place-items:center;min-width:20px;height:18px;margin-left:5px;padding:0 5px;border-radius:9px;background:#e6eaee;color:#596779;font-size:9px}.transformacao-index-flow-icon{display:grid;place-items:center;width:31px;height:31px;border:1px solid #a7bfdb;border-radius:4px;background:#edf4fc;color:#386c9f;font-size:12px}.transformacao-index-flow-stage.is-silver .transformacao-index-flow-icon{border-color:#b8c0ca;background:#f0f2f4;color:#596779}.transformacao-index-flow-stage.is-gold .transformacao-index-flow-icon{border-color:#d4bd70;background:#fff8dc;color:#886d08}.transformacao-index-flow-line{position:relative;align-self:center;width:54px;height:1px;background:#9ba7b4;color:#7b8794}.transformacao-index-flow-line i{position:absolute;right:-2px;top:50%;padding-left:3px;background:#fff;font-size:9px;transform:translateY(-50%)}.transformacao-index-summary{display:flex;align-items:center;gap:18px;margin-left:auto;padding:0 16px;border-left:1px solid #e3e7eb;background:#fafbfc;color:#667085;font-size:10px;white-space:nowrap}.transformacao-index-summary strong{color:#344054;font-size:13px}
.transformacao-filterbar{display:flex;align-items:center;gap:7px;margin-bottom:14px;padding:7px;border:1px solid #dce2e8;border-radius:7px;background:#f8f9fb}.transformacao-filterbar label{margin:0}.transformacao-filter-search{position:relative;flex:1;min-width:220px}.transformacao-filter-search i{position:absolute;left:11px;top:50%;z-index:1;color:#7b8794;font-size:11px;transform:translateY(-50%)}.transformacao-filter-search .form-control{padding-left:31px}.transformacao-filterbar .form-control,.transformacao-filterbar .form-select,.transformacao-filterbar .btn{min-height:34px;height:34px;border-radius:4px;font-size:11px}.transformacao-filterbar .form-select{min-width:160px}.transformacao-filterbar .btn-link{color:#596779;text-decoration:none}
.transformacao-list-shell{border:1px solid #dce2e8;border-radius:7px;background:#fff;overflow:hidden}.transformacao-list-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 13px;border-bottom:1px solid #e4e8ec}.transformacao-list-heading strong{color:#344054;font-size:12px}.transformacao-list-heading span{color:#667085;font-size:10px}.transformacao-table th{padding:9px 13px;border-bottom-color:#dde3e9;background:#f7f8fa;color:#667085;font-size:9.5px;font-weight:750;text-transform:uppercase;letter-spacing:.045em;white-space:nowrap}.transformacao-table td{padding:11px 13px;border-bottom-color:#edf0f2;color:#344054;font-size:11.5px}.transformacao-table tbody tr:last-child td{border-bottom:0}.transformacao-table tbody tr:hover{background:#fafcff}.transformacao-table-name{display:block;max-width:430px;overflow:hidden;color:#273342;font-size:12.5px;font-weight:700;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.transformacao-table-name:hover{color:#0b5ed7;text-decoration:underline}.transformacao-table-sql{display:block;max-width:430px;margin-top:3px;overflow:hidden;color:#667085;background:transparent;font-size:9.5px;text-overflow:ellipsis;white-space:nowrap}.transformacao-layer-flow{display:inline-flex;align-items:center;gap:6px;color:#667085;font-size:9.5px}.transformacao-layer-flow i{color:#98a2b3;font-size:8px}.transformacao-layer-flow strong{padding:3px 5px;border:1px solid #cbd3dc;border-radius:3px;background:#f5f7f9;color:#475467;font-size:9px}.transformacao-layer-flow strong.is-gold{border-color:#dfca83;background:#fff9e5;color:#79630b}.transformacao-method{display:inline-flex;align-items:center;gap:6px;color:#475467;white-space:nowrap}.transformacao-method i{width:14px;color:#718096;text-align:center}.transformacao-last-run{color:#596779;font-variant-numeric:tabular-nums;white-space:nowrap}.transformacao-state{display:inline-flex;align-items:center;gap:6px;color:#596779;font-size:10.5px;font-weight:650;white-space:nowrap}.transformacao-state i{width:7px;height:7px;border-radius:50%;background:#98a2b3}.transformacao-state.is-success{color:#21714e}.transformacao-state.is-success i{background:#27865e}.transformacao-state.is-error{color:#9b3039}.transformacao-state.is-error i{background:#c84854}.transformacao-state.is-running{color:#8a6710}.transformacao-state.is-running i{background:#c49722}.transformacao-row-actions{display:flex;justify-content:flex-end;gap:4px}.transformacao-row-actions .btn{display:grid;place-items:center;width:30px;height:30px;padding:0;border-radius:4px}.transformacao-empty{display:flex;align-items:center;justify-content:center;gap:13px;min-height:150px;padding:26px;color:#667085}.transformacao-empty>span{display:grid;place-items:center;width:38px;height:38px;border-radius:5px;background:#edf4fc;color:#386c9f}.transformacao-empty strong,.transformacao-empty p{display:block}.transformacao-empty strong{color:#344054}.transformacao-empty p{margin:2px 18px 0 0;font-size:11px}.transformacao-activity{margin-top:14px;border:1px solid #dce2e8;border-radius:7px;background:#fff;overflow:hidden}.transformacao-activity>summary{display:flex;align-items:center;justify-content:space-between;padding:10px 13px;color:#475467;font-size:11px;font-weight:650;cursor:pointer;list-style:none}.transformacao-activity>summary::-webkit-details-marker{display:none}.transformacao-activity>summary span{display:flex;align-items:center;gap:7px}.transformacao-activity>summary span:last-child{color:#667085;font-size:10px;font-weight:500}.transformacao-activity[open]>summary span:last-child i{transform:rotate(180deg)}.transformacao-activity table{font-size:11px}.transformacao-activity th{background:#f8f9fb;color:#667085;font-size:9.5px;text-transform:uppercase}
@media(max-width:1100px){.transformacao-index-summary{display:none}.transformacao-index-flow-stage{min-width:160px}.transformacao-table-sql,.transformacao-table-name{max-width:300px}}
@media(max-width:767.98px){.transformacao-index{padding-top:0}.transformacao-index-header{align-items:stretch;flex-direction:column;gap:12px}.transformacao-index-header .btn{width:100%}.transformacao-index-flow{overflow-x:auto}.transformacao-index-flow-stage{min-width:155px}.transformacao-index-flow-line{width:30px;flex:0 0 30px}.transformacao-filterbar{align-items:stretch;flex-wrap:wrap}.transformacao-filter-search{flex-basis:100%}.transformacao-filterbar label:not(.transformacao-filter-search){flex:1}.transformacao-filterbar .form-select{width:100%;min-width:0}.transformacao-table th:nth-child(3),.transformacao-table td:nth-child(3),.transformacao-table th:nth-child(4),.transformacao-table td:nth-child(4){display:none}.transformacao-table-name,.transformacao-table-sql{max-width:210px}.transformacao-empty{align-items:flex-start;flex-direction:column}.transformacao-empty .btn{width:100%}}

/* Importação CSV de ingestões no catálogo Dados */
.consulta-import-panel{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:20px;padding:18px 20px;border:1px solid #cfd9e6;border-radius:10px;background:#f8fafc}.consulta-import-copy{max-width:620px}.consulta-import-copy h2{margin:0 0 5px;color:#273342;font-size:15px;font-weight:700}.consulta-import-copy p{margin:0 0 7px;color:#596779;font-size:13px;line-height:1.5}.consulta-import-copy code{color:#344054}.consulta-template-link{font-size:13px;font-weight:650;text-decoration:none}.consulta-import-form{width:min(100%,480px)}.consulta-import-form .form-label{margin-bottom:6px;color:#344054;font-size:13px;font-weight:650}.consulta-import-form .form-control,.consulta-import-form .btn{min-height:42px}.consulta-import-feedback{margin-bottom:16px;border-radius:9px}.consulta-import-feedback ul{max-height:180px;overflow:auto}
@media(max-width:767.98px){.consulta-import-panel{align-items:stretch;flex-direction:column;gap:16px;padding:16px}.consulta-import-form{width:100%}.consulta-import-form .input-group{align-items:stretch;flex-direction:column}.consulta-import-form .input-group>.form-control,.consulta-import-form .input-group>.btn{width:100%;border-radius:7px!important}.consulta-import-form .input-group>.btn{margin-top:8px}}

/* Criação de consultas Bronze */
.consulta-create-page{max-width:1240px;margin:0 auto;padding:4px 0 28px}.consulta-create-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:6px 0 16px}.consulta-create-breadcrumb,.consulta-create-header p{display:none}.consulta-create-header h1{margin:0;color:#1f2933;font-size:20px;font-weight:650;letter-spacing:-.015em}.consulta-create-back{margin:0;white-space:nowrap}.consulta-create-workspace{border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}.consulta-create-body{padding:0}.consulta-create-section{padding:16px;border-color:#e7eaee;border-radius:8px}.consulta-create-section-heading{margin-bottom:16px}.consulta-create-section-heading>span{width:28px;height:28px;border-radius:7px}.consulta-create-section-heading h2,.consulta-create-compact-heading h2{font-size:14px}.consulta-create-section-heading p{font-size:12px}.consulta-create-compact-heading{margin-bottom:12px}.consulta-create-form .form-label{margin-bottom:6px}.consulta-create-schema{border-color:#e7eaee}.consulta-create-advanced{border-color:#e7eaee;border-radius:8px}.consulta-create-footer{margin-top:16px;padding-top:16px}
@media(max-width:767.98px){.consulta-create-page{padding-top:0}.consulta-create-header{flex-direction:column;gap:14px;margin-bottom:18px}.consulta-create-back{width:100%;margin-top:0}.consulta-create-body{padding:18px}.consulta-create-section{padding:16px}.consulta-create-sql{min-height:280px!important}.consulta-create-schema{min-height:250px}.consulta-create-schema .schema-panel{max-height:200px}.consulta-create-footer{align-items:stretch;flex-direction:column}.consulta-create-footer>div:last-child{justify-content:stretch}.consulta-create-footer .btn{flex:1}.consulta-create-header h1{font-size:24px}}

/* Painel lateral de fontes: mais espaço e redimensionamento horizontal. */
.sql-workbench-editor-grid .table-output-schema-drawer[open]{
    position:relative;
    width:var(--schema-drawer-width,420px);
    max-width:60vw;
}
.sql-workbench-editor-grid .table-output-schema-drawer-body{
    width:calc(var(--schema-drawer-width,420px) - 1px);
    max-width:calc(60vw - 1px);
}
.table-output-schema-resize{display:none}
.sql-workbench-editor-grid .table-output-schema-drawer[open]>.table-output-schema-resize{
    position:absolute;
    z-index:3;
    top:0;
    bottom:0;
    left:0;
    display:block;
    width:7px;
    padding:0;
    border:0;
    border-left:2px solid transparent;
    background:transparent;
    cursor:ew-resize;
    touch-action:none;
}
.sql-workbench-editor-grid .table-output-schema-drawer[open]>.table-output-schema-resize:hover,
.sql-workbench-editor-grid .table-output-schema-drawer.is-resizing>.table-output-schema-resize{
    border-left-color:#2f7edb;
    background:rgba(47,126,219,.08);
}
.sql-workbench-editor-grid .table-output-schema-drawer.is-resizing{user-select:none}
@media(max-width:991.98px){
    .sql-workbench-editor-grid .table-output-schema-drawer[open],
    .sql-workbench-editor-grid .table-output-schema-drawer-body{
        width:100%;
        max-width:none;
    }
    .sql-workbench-editor-grid .table-output-schema-drawer[open]>.table-output-schema-resize{display:none}
}
@media(prefers-reduced-motion:reduce){.consulta-create-group-option{transition:none}}

/* Reequilibra a criação: estrutura visível, sem empilhar cartões pesados */
.consulta-create-page{max-width:1320px;padding:14px 0 32px}
.consulta-create-header{margin:8px 0 18px}
.consulta-create-header h1{font-size:22px;font-weight:700}
.consulta-create-workspace{border:1px solid #e1e5ea;border-radius:10px;background:#fff;box-shadow:0 1px 2px rgba(16,24,40,.035);overflow:hidden}
.consulta-create-body{padding:24px}
.consulta-create-section{padding:20px;border-color:#e4e8ed;border-radius:8px;box-shadow:0 1px 2px rgba(16,24,40,.02)}
.consulta-create-section-heading{margin-bottom:18px}
.consulta-create-section-heading>span{width:30px;height:30px}
.consulta-create-section-heading h2,.consulta-create-compact-heading h2{font-size:15px}
.consulta-create-schema-heading{align-items:flex-start;flex-direction:column;gap:3px}
.consulta-create-schema-heading strong,.consulta-create-schema-heading span{display:block}
.consulta-create-footer{margin-top:20px;padding-top:18px}
@media(max-width:767.98px){.consulta-create-body{padding:16px}.consulta-create-section{padding:16px}}

/* Conexões */
.conexao-index{max-width:1320px;margin:0 auto;padding:14px 0 28px}.conexao-index-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:8px 0 18px}.conexao-index-header h1{margin:0;color:#1f2933;font-size:22px;font-weight:700;letter-spacing:-.015em}.conexao-index-header p{margin:5px 0 0;color:#667085;font-size:14px}.conexao-table-shell{border:1px solid #e1e5ea;border-radius:10px;background:#fff;box-shadow:0 1px 2px rgba(16,24,40,.035);overflow:hidden}.conexao-table th{padding:13px 16px;border-bottom-color:#e7eaee;background:#fafbfc;color:#667085;font-size:11px;font-weight:700;letter-spacing:.045em;text-transform:uppercase;white-space:nowrap}.conexao-table td{padding:14px 16px;border-bottom-color:#edf0f2;color:#344054}.conexao-table tbody tr:last-child td{border-bottom:0}.conexao-table tbody tr:hover{background:#fafcff}.conexao-type-badge{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:#344054}.conexao-type-badge img{width:24px;height:24px;object-fit:contain}.conexao-table .btn{min-width:34px;min-height:34px}.conexao-engine-hero{display:flex;align-items:center;gap:14px;min-height:44px;padding:10px 12px;border:1px solid #d9e5f2;border-radius:8px;background:#f5f9fd}.conexao-engine-hero.is-mysql{border-color:#f2dfc7;background:#fffaf4}.conexao-engine-hero img{width:38px;height:38px;object-fit:contain}.conexao-engine-hero strong{display:block;color:#273342;font-size:14px}.conexao-engine-hero span{display:block;margin-top:2px;color:#667085;font-size:12px;line-height:1.35}.conexao-edit-form .form-label,#conexao-form .form-label{font-size:13px;font-weight:650;color:#344054}@media(max-width:767.98px){.conexao-index-header{flex-direction:column;gap:12px}.conexao-index-header .btn{width:100%}.conexao-table th,.conexao-table td{padding:12px}.conexao-engine-hero{min-height:64px}}

/* Clientes */
.cliente-index{max-width:1320px;margin:0 auto;padding:14px 0 28px}.cliente-index-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:8px 0 18px}.cliente-index-header h1{margin:0;color:#1f2933;font-size:22px;font-weight:700;letter-spacing:-.015em}.cliente-index-header p{margin:5px 0 0;color:#667085;font-size:14px}.cliente-table-shell{border:1px solid #e1e5ea;border-radius:10px;background:#fff;box-shadow:0 1px 2px rgba(16,24,40,.035);overflow:hidden}.cliente-table th{padding:13px 16px;border-bottom-color:#e7eaee;background:#fafbfc;color:#667085;font-size:11px;font-weight:700;letter-spacing:.045em;text-transform:uppercase;white-space:nowrap}.cliente-table td{padding:14px 16px;border-bottom-color:#edf0f2;color:#344054}.cliente-table tbody tr:last-child td{border-bottom:0}.cliente-table tbody tr:hover{background:#fafcff}.cliente-id{font-variant-numeric:tabular-nums;font-size:13px}.cliente-identity{display:flex;align-items:center;gap:10px;min-width:180px}.cliente-identity strong{color:#273342;font-size:14px}.cliente-logo,.cliente-logo-placeholder,.cliente-logo-fallback{display:grid;place-items:center;width:32px;height:32px;flex:0 0 auto;object-fit:contain;border:1px solid #e2e6eb;border-radius:7px;background:#fff}.cliente-logo-placeholder,.cliente-logo-fallback{color:#64748b;background:#f7f9fb}.cliente-table .btn{min-width:34px;min-height:34px}.cliente-table-shell .dataTables_wrapper{padding:14px 16px}.cliente-table-shell .dataTables_wrapper .row:first-child{margin-bottom:12px}.cliente-table-shell .dataTables_wrapper .row:last-child{margin-top:14px}.cliente-table-shell table.dataTable{margin:0!important}@media(max-width:767.98px){.cliente-index-header{flex-direction:column;gap:12px}.cliente-index-header .btn{width:100%}.cliente-table th,.cliente-table td{padding:12px}}

/* Edição de cliente */
.cliente-edit{max-width:1320px;margin:0 auto;padding:14px 0 32px}.cliente-edit-workspace{border:1px solid #e1e5ea;border-radius:10px;background:#fff;box-shadow:0 1px 2px rgba(16,24,40,.035);overflow:hidden}.cliente-edit-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:20px 24px;border-bottom:1px solid #e7eaee}.cliente-edit-header h1{margin:0;color:#1f2933;font-size:22px;font-weight:700;letter-spacing:-.015em}.cliente-edit-header p{margin:5px 0 0;color:#667085;font-size:14px}.cliente-edit-body{padding:24px}.cliente-edit-form{display:grid;gap:18px}.cliente-edit-section{padding:20px;border:1px solid #e4e8ed;border-radius:8px;background:#fff}.cliente-section-heading{display:flex;align-items:flex-start;gap:10px;margin-bottom:16px}.cliente-section-heading>i{display:grid;place-items:center;width:30px;height:30px;flex:0 0 auto;border-radius:7px;background:#eef4ff;color:#0d6efd;font-size:13px}.cliente-section-heading h2{margin:1px 0 3px;color:#273342;font-size:15px;font-weight:700}.cliente-section-heading p{margin:0;color:#667085;font-size:12px;line-height:1.45}.cliente-edit-section .form-label{font-size:13px;font-weight:650;color:#344054}.cliente-summary-grid{margin:0}.cliente-summary-item{padding:14px 16px;border:1px solid #e4e8ed;border-radius:8px;background:#fafbfc}.cliente-summary-item .text-muted{font-size:12px}.powerbi-section{padding:20px}.powerbi-section .cliente-section-heading{margin-bottom:0}.powerbi-credential-row,.powerbi-workspace-row{border-color:#e1e6eb!important;box-shadow:none!important}.cliente-edit-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:18px;border-top:1px solid #e7eaee;color:#667085;font-size:12px}@media(max-width:767.98px){.cliente-edit-header{flex-direction:column;gap:12px;padding:18px}.cliente-edit-header .btn{width:100%}.cliente-edit-body{padding:16px}.cliente-edit-section{padding:16px}.cliente-edit-footer{align-items:stretch;flex-direction:column}.cliente-edit-footer .btn{width:100%}}

/* Integrações Power BI */
.powerbi-page{--pbi:#f2c811;max-width:1320px;margin:0 auto;padding:14px 0 32px}.powerbi-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:8px 0 18px}.powerbi-title-group{display:flex;gap:14px}.powerbi-mark{display:grid;place-items:center;width:44px;height:44px;flex:0 0 auto;border-radius:9px;background:var(--pbi);color:#292610;font-size:19px;box-shadow:inset 0 -2px 0 rgba(0,0,0,.08)}.powerbi-eyebrow{color:#7a6700;font-size:11px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.powerbi-page h1{margin:0;color:#1f2933;font-size:25px;font-weight:750;letter-spacing:-.025em}.powerbi-page-header p{margin:5px 0 0;color:#667085;font-size:14px}.powerbi-api-state{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #e3e6ea;border-radius:6px;background:#fff;color:#596574;font-size:12px}.powerbi-tabs{display:flex;gap:4px;margin-bottom:16px;padding:4px;border:1px solid #e0e4e9;border-radius:9px;background:#eef0f3}.powerbi-tabs a{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:8px;min-width:210px;padding:10px 14px;border-radius:6px;color:#596574;text-decoration:none}.powerbi-tabs a i{grid-row:1/3}.powerbi-tabs a span{color:#344054;font-size:13px;font-weight:700}.powerbi-tabs a small{font-size:11px}.powerbi-tabs a.active{background:#fff;box-shadow:0 1px 3px rgba(16,24,40,.09)}.powerbi-tabs a.active i{color:#9b8200}.powerbi-panel,.powerbi-import-panel{border:1px solid #e1e5ea;border-radius:10px;background:#fff;box-shadow:0 1px 2px rgba(16,24,40,.035);overflow:hidden}.powerbi-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 22px;border-bottom:1px solid #e7eaee}.powerbi-panel-header h2,.powerbi-import-copy h2{margin:0;color:#273342;font-size:17px;font-weight:700}.powerbi-panel-header p,.powerbi-import-copy p{margin:4px 0 0;color:#667085;font-size:13px}.powerbi-access-note{display:flex;gap:12px;margin:20px 22px;padding:14px 16px;border:1px solid #eadca6;border-radius:8px;background:#fffbeb;color:#574e24}.powerbi-access-note strong,.powerbi-access-note span{display:block}.powerbi-access-note span{font-size:12px}.powerbi-credential-list{display:grid;gap:12px;padding:20px 22px}.powerbi-credential-card{padding:18px;border:1px solid #dfe4e9;border-left:4px solid var(--pbi);border-radius:8px}.powerbi-credential-card .form-label,.powerbi-import-controls .form-label,.powerbi-import-controls legend{margin-bottom:6px;color:#344054;font-size:12px;font-weight:700}.powerbi-credential-advanced{margin-top:14px;border-top:1px solid #edf0f2}.powerbi-credential-advanced summary{padding-top:12px;color:#667085;font-size:12px;cursor:pointer}.powerbi-credential-footer,.powerbi-form-footer{display:flex;align-items:center;justify-content:space-between;gap:16px}.powerbi-credential-footer{margin-top:14px}.powerbi-credential-footer .form-check{margin:0}.powerbi-form-footer{padding:18px 22px;border-top:1px solid #e7eaee;background:#fafbfc;color:#667085;font-size:12px}.powerbi-import-panel{display:grid;grid-template-columns:minmax(250px,.65fr) minmax(0,1.35fr);margin-bottom:16px}.powerbi-import-copy{padding:22px;border-right:1px solid #e7eaee;background:linear-gradient(135deg,#fffdf2,#fff)}.powerbi-step{display:inline-block;margin-bottom:9px;color:#836f00;font-size:11px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.powerbi-import-controls{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(260px,1.3fr) auto;align-items:end;gap:16px;padding:20px 22px}.powerbi-import-controls fieldset{min-width:0}.powerbi-client-picker{display:flex;gap:6px;overflow-x:auto}.powerbi-client-picker label{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;padding:8px 10px;border:1px solid #dfe3e8;border-radius:6px;background:#fafbfc;color:#475467;font-size:12px;cursor:pointer}.powerbi-client-picker label:has(input:checked){border-color:#b39a13;background:#fffbe6;color:#443b0b}.powerbi-table th{padding:12px 16px;background:#fafbfc;color:#667085;font-size:10px;font-weight:750;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.powerbi-table td{padding:13px 16px;border-bottom-color:#edf0f2;color:#344054;vertical-align:middle;font-size:13px}.powerbi-table tbody tr:last-child td{border-bottom:0}.powerbi-table .btn{min-width:34px;min-height:34px}.powerbi-client-badge{display:inline-flex;align-items:center;gap:6px}.powerbi-client-badge i{color:#7d8794;font-size:11px}.powerbi-dataset-count{display:inline-grid;place-items:center;min-width:28px;height:26px;padding:0 7px;border:1px solid #dce1e6;border-radius:6px;background:#f8fafb;font-weight:700}.powerbi-list-count{padding:6px 9px;border-radius:6px;background:#f1f3f5;color:#596574;font-size:12px}.powerbi-empty{display:flex;align-items:center;justify-content:center;gap:12px;padding:28px;color:#667085}.powerbi-empty>i{display:grid;place-items:center;width:40px;height:40px;border-radius:8px;background:#fff8cf;color:#8a7500}.powerbi-empty strong,.powerbi-empty span{display:block}.powerbi-empty span{font-size:12px}.powerbi-workspace-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.powerbi-workspace-option{display:flex;align-items:flex-start;gap:11px;padding:12px;border:1px solid #dfe4e9;border-radius:8px;cursor:pointer}.powerbi-workspace-option:hover{border-color:#c2cad3;background:#fafbfc}.powerbi-workspace-option:has(input:checked){border-color:#b99f10;background:#fffbed}.powerbi-workspace-option input{margin-top:3px}.powerbi-workspace-option span,.powerbi-workspace-option strong,.powerbi-workspace-option small,.powerbi-workspace-option em{display:block;min-width:0}.powerbi-workspace-option small{margin-top:3px;overflow:hidden;color:#667085;text-overflow:ellipsis}.powerbi-workspace-option em{margin-top:6px;color:#6b7280;font-size:11px;font-style:normal}.powerbi-picker-empty{grid-column:1/-1;padding:26px;border:1px dashed #d7dce2;border-radius:8px;text-align:center;color:#667085}
@media(max-width:991.98px){.powerbi-import-panel{grid-template-columns:1fr}.powerbi-import-copy{border-right:0;border-bottom:1px solid #e7eaee}.powerbi-import-controls{grid-template-columns:1fr 1fr}.powerbi-import-controls .btn{grid-column:1/-1}.powerbi-workspace-picker{grid-template-columns:1fr}}
@media(max-width:767.98px){.powerbi-page-header,.powerbi-panel-header,.powerbi-form-footer,.powerbi-credential-footer{align-items:stretch;flex-direction:column}.powerbi-api-state{align-self:flex-start}.powerbi-tabs a{min-width:0;flex:1}.powerbi-import-controls{grid-template-columns:1fr}.powerbi-import-controls .btn{grid-column:auto}.powerbi-panel-header,.powerbi-credential-list,.powerbi-form-footer{padding-left:16px;padding-right:16px}}

/* Workbench SQL da ingestao de dados */
#ajaxEditModal .modal-dialog{width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px)!important;height:calc(100vh - 16px);margin:8px auto}
#ajaxEditModal .modal-content{border-radius:7px;box-shadow:0 16px 48px rgba(15,23,42,.2)}
#ajaxEditModal .modal-header{min-height:46px;padding:7px 12px}
#ajaxEditModal .modal-title{font-size:14px;font-weight:700}
#ajaxEditModal .modal-body{background:#fff}
#ajaxEditModal .consulta-edit-form{padding:0}
.consulta-edit-page{max-width:1600px;margin:0 auto;padding:0 0 16px}
.consulta-edit-page-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:42px;padding:4px 2px;color:#667085;font-size:11px}
.consulta-edit-page-header a{color:#475467;text-decoration:none}.consulta-edit-page-header a:hover{text-decoration:underline}
.consulta-edit-page-header h1{display:inline;margin:0 0 0 10px;color:#1f2933;font-size:15px;font-weight:700}
.consulta-edit-commandbar{position:relative;z-index:10;display:grid;grid-template-columns:minmax(180px,1.1fr) minmax(220px,1fr) minmax(130px,.65fr) minmax(160px,.75fr) minmax(220px,.95fr) auto;align-items:end;gap:8px;padding:7px 10px;border-bottom:1px solid #d8dee6;background:#f5f7f9}
.consulta-edit-command-field{display:grid;min-width:0;gap:3px;margin:0}.consulta-edit-command-field>span,.consulta-edit-command-field>label{overflow:hidden;margin:0;color:#586575;font-size:10px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.consulta-edit-commandbar .form-control,.consulta-edit-commandbar .form-select,.consulta-edit-commandbar .rich-select-trigger{height:32px;min-height:32px;padding:3px 8px;border-color:#cbd3dc;border-radius:4px;font-size:12px}
.consulta-edit-commandbar .rich-select-menu{min-width:300px;border-radius:5px}
.consulta-edit-command-toggle{display:flex;align-items:center;gap:6px;height:32px;margin:0;padding:0 5px;color:#475467;font-size:11px;font-weight:650;white-space:nowrap;cursor:pointer}
.consulta-edit-command-toggle input{width:15px;height:15px;margin:0;accent-color:#0d6efd}
.consulta-edit-group-item{padding:8px 9px;border-radius:5px}.consulta-edit-group-item:has(input:checked){box-shadow:none}
.consulta-edit-tabs{padding:0 8px;border-bottom:1px solid #d8dee6;background:#f8f9fb}.consulta-edit-tabs .nav-tabs{gap:3px;border:0}.consulta-edit-tabs .nav-link{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:6px 10px;border:0;border-bottom:2px solid transparent;border-radius:0;color:#596779;font-size:11px;font-weight:650}.consulta-edit-tabs .nav-link:hover{border-bottom-color:#aeb9c6;color:#273342}.consulta-edit-tabs .nav-link.active{border-bottom-color:#0d6efd;background:transparent;color:#0b5ed7}.consulta-edit-tab-count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#e8ebef;color:#536172;font-size:9px}.consulta-edit-tabs .nav-link.active .consulta-edit-tab-count{background:#dbeafe;color:#0b5ed7}
.consulta-edit-tab-content{background:#fff}.consulta-edit-tab-pane{min-height:clamp(430px,calc(100vh - 300px),720px);padding:12px;overflow:auto}.consulta-edit-tab-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px;padding-bottom:9px;border-bottom:1px solid #e3e7ec}.consulta-edit-tab-heading strong,.consulta-edit-tab-heading span{display:block}.consulta-edit-tab-heading strong{color:#273342;font-size:13px}.consulta-edit-tab-heading>div>span{margin-top:2px;color:#667085;font-size:10.5px}.consulta-edit-parameters-grid{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(420px,1.1fr);align-items:start;gap:12px}.consulta-edit-history-list{display:grid;gap:7px}.consulta-edit-tab-empty{padding:28px;border:1px dashed #cfd6df;border-radius:5px;color:#667085;text-align:center;font-size:12px}
.consulta-edit-workbench{background:#fff}
.consulta-edit-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;padding:5px 8px;border-bottom:1px solid #303846;background:#202733}
.consulta-edit-toolbar>strong{display:flex;align-items:center;gap:7px;color:#e5e7eb;font-size:12px}.consulta-edit-toolbar>strong i{color:#8dbdff}
.consulta-edit-toolbar-actions{display:flex;align-items:center;gap:4px}.consulta-edit-toolbar-actions .btn{display:inline-flex;align-items:center;gap:6px;min-height:29px;padding:3px 8px;border-radius:4px;font-size:11px}
.consulta-edit-toolbar-actions .btn-outline-light{border-color:#4a5564;color:#d5dbe3;background:#2a3340}.consulta-edit-toolbar-actions .btn-outline-light:hover{border-color:#718096;background:#364151;color:#fff}
.consulta-edit-editor-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;background:#111827}
.consulta-edit-sql-layout{display:grid;grid-template-columns:218px minmax(0,1fr);gap:8px;align-items:start}.consulta-asset-library{display:flex;min-height:0;max-height:calc(clamp(430px,calc(100vh - 338px),690px) + 70px);flex-direction:column;border:1px solid #d9e0e7;border-radius:5px;background:#f8fafc;overflow:hidden}.consulta-asset-library>header{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:36px;padding:0 9px;border-bottom:1px solid #dfe5eb;background:#f1f5f9;color:#344054;font-size:10.5px}.consulta-asset-library>header>div{display:flex;align-items:center;gap:6px}.consulta-asset-library>header>div>i{color:#537aa8}.consulta-asset-library>header>a{display:grid;place-items:center;width:22px;height:22px;border-radius:3px;color:#68778a;text-decoration:none}.consulta-asset-library>header>a:hover{background:#e2edf8;color:#1769c2}.consulta-asset-library>p{margin:0;padding:7px 9px 6px;border-bottom:1px solid #e5e9ee;color:#718096;font-size:9.5px}.consulta-asset-library-list{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.consulta-asset-group{border-bottom:1px solid #e3e8ed}.consulta-asset-group>summary{display:flex;align-items:center;justify-content:space-between;min-height:31px;padding:5px 8px;color:#536274;font-size:10px;font-weight:750;cursor:pointer;list-style:none}.consulta-asset-group>summary::-webkit-details-marker{display:none}.consulta-asset-group>summary span{display:flex;align-items:center;gap:6px}.consulta-asset-group>summary b{min-width:18px;padding:1px 5px;border-radius:99px;background:#e4ebf2;color:#64748b;font-size:9px;text-align:center}.consulta-asset-group .is-ingestion{color:#12805c}.consulta-asset-group .is-transformation{color:#5b5bd6}.consulta-asset-empty{margin:0;padding:7px 11px 9px;color:#98a2b3;font-size:10px}.consulta-asset-link{display:grid;grid-template-columns:15px minmax(0,1fr) 14px;align-items:center;gap:6px;min-height:39px;padding:5px 9px 5px 13px;border-top:1px solid #eef1f4;color:#475467;text-decoration:none}.consulta-asset-link:hover{background:#eef6ff;color:#145fa8}.consulta-asset-link>i:last-child{color:#98a2b3;font-size:9px;opacity:0}.consulta-asset-link:hover>i:last-child{opacity:1;color:#1769c2}.consulta-asset-link span{min-width:0}.consulta-asset-link strong,.consulta-asset-link small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.consulta-asset-link strong{font-size:10px;font-weight:650}.consulta-asset-link small{margin-top:1px;color:#8491a1;font-size:8.5px}.consulta-edit-sql-layout .consulta-edit-workbench{min-width:0}
.consulta-edit-editor-grid>.CodeMirror,.consulta-edit-editor-grid>.sql-cm-editor.CodeMirror{border:0;border-radius:0}
.consulta-edit-editor-grid>textarea{min-height:clamp(430px,calc(100vh - 338px),690px);border:0!important;border-radius:0!important;background:#111827!important;color:#e5e7eb!important}
.consulta-edit-schema-drawer{--consulta-schema-drawer-width:290px;width:40px;height:clamp(430px,calc(100vh - 338px),690px);border:0;border-left:1px solid #d9dee5;background:#f7f8fa;overflow:hidden}
.consulta-edit-schema-drawer[open]{position:relative;display:grid;width:var(--consulta-schema-drawer-width);max-width:60vw;grid-template-rows:36px minmax(0,1fr)}.consulta-edit-schema-drawer summary{display:flex;align-items:center;gap:8px;height:100%;padding:10px;color:#475467;font-size:11px;font-weight:650;cursor:pointer;list-style:none}.consulta-edit-schema-drawer summary::-webkit-details-marker{display:none}
.consulta-edit-schema-drawer:not([open]) summary{justify-content:center;flex-direction:column}.consulta-edit-schema-drawer:not([open]) summary span{writing-mode:vertical-rl}.consulta-edit-schema-drawer summary>i:first-child{color:#537aa8}.consulta-edit-schema-drawer summary span{flex:1}.consulta-edit-schema-drawer[open] summary{height:36px;flex:0 0 36px;border-bottom:1px solid #e1e5ea}.consulta-edit-schema-chevron{font-size:9px;transition:transform .18s ease}.consulta-edit-schema-drawer[open] .consulta-edit-schema-chevron{transform:rotate(180deg)}
.consulta-edit-schema-body{display:flex;width:calc(var(--consulta-schema-drawer-width) - 1px);max-width:calc(60vw - 1px);min-height:0;height:100%;padding:7px;overflow:hidden}.consulta-edit-schema-body .schema-panel{display:flex;width:100%;min-height:0;max-height:none;flex:1 1 auto;flex-direction:column;padding:0;border:0!important;background:transparent!important;overflow:hidden}.consulta-edit-schema-body .schema-panel-search,.consulta-edit-schema-body .schema-panel-status{flex:0 0 auto}.consulta-edit-schema-body .schema-panel-list{display:block;min-height:0;flex:1 1 auto;overflow-x:hidden;overflow-y:auto!important;overscroll-behavior:contain;scrollbar-gutter:stable}
@media(min-width:768px){.sql-workbench-editor-grid .table-output-schema-drawer[open] .table-output-schema-drawer-body{display:flex;height:calc(clamp(420px,calc(100vh - 290px),760px) - 43px);min-height:0;flex-direction:column}.sql-workbench-editor-grid .table-output-schema-drawer .table-output-schema-drawer-heading{flex:0 0 auto}.sql-workbench-editor-grid .table-output-schema-drawer .schema-panel{display:flex;min-height:0;max-height:none;flex:1 1 auto;flex-direction:column;overflow:hidden}.sql-workbench-editor-grid .table-output-schema-drawer .schema-panel-view-toggle,.sql-workbench-editor-grid .table-output-schema-drawer .schema-panel-search,.sql-workbench-editor-grid .table-output-schema-drawer .schema-panel-status{flex:0 0 auto}.sql-workbench-editor-grid .table-output-schema-drawer .schema-panel-list{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}}
.consulta-edit-schema-body .schema-panel-view-toggle{flex:0 0 auto}
@media(max-width:767.98px){.sql-workbench-editor-grid .table-output-schema-drawer[open] .table-output-schema-drawer-body{display:flex;max-height:55vh;min-height:220px;flex-direction:column}.sql-workbench-editor-grid .table-output-schema-drawer .table-output-schema-drawer-heading{flex:0 0 auto}.sql-workbench-editor-grid .table-output-schema-drawer .schema-panel{display:flex;min-height:0;max-height:none;flex:1 1 auto;flex-direction:column;overflow:hidden}.sql-workbench-editor-grid .table-output-schema-drawer .schema-panel-view-toggle,.sql-workbench-editor-grid .table-output-schema-drawer .schema-panel-search,.sql-workbench-editor-grid .table-output-schema-drawer .schema-panel-status{flex:0 0 auto}.sql-workbench-editor-grid .table-output-schema-drawer .schema-panel-list{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}}
.consulta-edit-schema-drawer[open]>.schema-drawer-resize{position:absolute;z-index:3;top:0;bottom:0;left:0;display:block;width:8px;padding:0;border:0;border-left:2px solid transparent;background:transparent;cursor:ew-resize;touch-action:none}.consulta-edit-schema-drawer[open]>.schema-drawer-resize:hover,.consulta-edit-schema-drawer[open]>.schema-drawer-resize:focus-visible,.consulta-edit-schema-drawer.is-resizing>.schema-drawer-resize{border-left-color:#2f7edb;background:rgba(47,126,219,.08);outline:0}.consulta-edit-schema-drawer.is-resizing{user-select:none}
.consulta-edit-statusbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:27px;padding:3px 8px;border-top:1px solid #293241;border-bottom:1px solid #dfe3e8;background:#eef1f4;color:#596779;font-size:10px}
.consulta-edit-result-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.consulta-edit-result-header strong{font-size:11px}.consulta-edit-result-header span{color:#667085;font-size:10px}
.consulta-result-modal .modal-content{border:1px solid #d9e0e7;box-shadow:0 18px 56px rgba(15,23,42,.22)}
.consulta-result-modal .modal-header{align-items:flex-start;padding:12px 16px;border-bottom-color:#e3e7ec;background:#f8fafc}
.consulta-result-modal .modal-header .modal-title{color:#273342;font-weight:700}.consulta-result-modal .modal-header .modal-title i{color:var(--brand-primary)}
.consulta-result-modal .sql-execucao-meta{display:block;margin-top:3px;color:#667085;font-size:11px}
.consulta-result-modal .modal-body{min-height:180px;padding:16px;background:#fff}.consulta-result-modal .sql-execucao-resultado{overflow:auto}
.consulta-result-modal .modal-footer{padding:9px 16px;border-top-color:#e3e7ec;background:#f8fafc}
.consulta-result-preview{overflow:hidden;border:1px solid #dfe3e8;border-radius:5px;background:#fff}.consulta-result-more{border-top:1px solid #dfe3e8}.consulta-result-more summary{display:flex;align-items:center;gap:7px;min-height:34px;padding:6px 10px;background:#f4f6f8;color:#475467;font-size:11px;font-weight:650;cursor:pointer;list-style:none}.consulta-result-more summary::-webkit-details-marker{display:none}.consulta-result-more summary:hover{background:#edf1f5;color:#273342}.consulta-result-more summary:focus-visible{outline:2px solid #0d6efd;outline-offset:-2px}.consulta-result-more summary i{color:#667085;font-size:9px;transition:transform .18s ease}.consulta-result-more[open] summary i{transform:rotate(180deg)}.consulta-result-more-open{display:none}.consulta-result-more[open] .consulta-result-more-closed{display:none}.consulta-result-more[open] .consulta-result-more-open{display:inline}.consulta-result-more>.table-responsive{border-top:1px solid #e4e7ec}
.consulta-edit-secondary-state{padding:2px 5px;border:1px solid #dbe1e8;border-radius:3px;background:#f5f7f9;color:#667085;font-size:9px;font-weight:600}
.consulta-edit-param-builder{padding:8px;border:1px solid #dfe3e8;border-radius:4px;background:#fff}.consulta-edit-tab-pane .form-control,.consulta-edit-tab-pane .form-select{min-height:30px;height:30px;padding:3px 7px;border-radius:4px;font-size:11px}.consulta-edit-form .consulta-edit-tab-pane textarea.form-control{height:auto;padding:8px;line-height:1.45}.consulta-edit-tab-pane .json-param-editor+.CodeMirror{min-height:220px}
.consulta-edit-footer{position:sticky;bottom:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:6px 10px;border-top:1px solid #dfe3e8;background:#f7f8fa}.consulta-edit-footer .btn{min-height:30px;padding:4px 9px;font-size:11px}
/* SQL workbench: o editor e os dois painéis de contexto ocupam a viewport. */
@media(min-width:768px){
  .main-content.is-workspace .consulta-edit-page{display:flex;width:100%;height:100%;max-width:none;min-height:0;flex-direction:column;padding:0;overflow:hidden;}
  .main-content.is-workspace .consulta-edit-page-header{flex:0 0 auto;padding:4px 10px;background:#fff;}
  .main-content.is-workspace .consulta-edit-form{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;overflow:hidden;}
  .main-content.is-workspace .consulta-edit-commandbar,.main-content.is-workspace .asset-tag-editor{flex:0 0 auto;}
  .main-content.is-workspace .consulta-edit-tab-content{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;overflow:hidden;}
  .main-content.is-workspace #consulta-edit-sql-pane.active{display:flex;min-height:0;flex:1 1 auto;overflow:hidden;}
  .main-content.is-workspace .consulta-edit-sql-layout{width:100%;min-height:0;height:100%;grid-template-columns:236px minmax(0,1fr);gap:0;overflow:hidden;background:#eef1f4;}
  .main-content.is-workspace .consulta-asset-library{max-height:none;height:100%;border-width:0 1px 0 0;border-radius:0;background:#f8fafc;}
  .main-content.is-workspace .consulta-edit-workbench{display:flex;min-height:0;height:100%;flex-direction:column;overflow:hidden;}
  .main-content.is-workspace .consulta-edit-editor-grid{min-height:0;flex:1 1 auto;}
  .main-content.is-workspace .consulta-edit-editor-grid>textarea,.main-content.is-workspace .consulta-edit-editor-grid>.CodeMirror,.main-content.is-workspace .consulta-edit-editor-grid>.sql-cm-editor.CodeMirror{min-height:0!important;height:100%!important;}
  .main-content.is-workspace .consulta-edit-schema-drawer{height:100%;}
  .main-content.is-workspace .consulta-edit-footer{flex:0 0 auto;}

  .main-content.is-workspace .transformacao-page{display:flex;width:100%;height:100%;max-width:none;min-height:0;flex-direction:column;padding:0;overflow:hidden;}
  .main-content.is-workspace .transformacao-edit-page-header{flex:0 0 auto;margin:0;padding:4px 10px;background:#fff;}
  .main-content.is-workspace .transformacao-workspace{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;border-radius:0;overflow:auto;}
  .main-content.is-workspace .transformacao-workbench-form{min-height:0;flex:1 0 auto;}
  .main-content.is-workspace .transformacao-history-panel{max-width:none;flex:0 0 auto;margin:0;border-width:1px 0 0;border-radius:0;}
  .main-content.is-workspace .transformacao-workspace .asset-editor-library{top:0;max-height:calc(100vh - 100px);}
}
.consulta-historico-item{border:1px solid var(--line);border-radius:5px;padding:9px 10px}.consulta-historico-success,.consulta-historico-primary,.consulta-historico-danger{border-left-color:var(--line)}
@media(max-width:1100px){.consulta-edit-commandbar{grid-template-columns:minmax(180px,1fr) minmax(220px,1fr) minmax(180px,.8fr) auto}.consulta-edit-command-field--tags{grid-column:span 2}.consulta-edit-schema-drawer{--consulta-schema-drawer-width:250px}.consulta-edit-sql-layout{grid-template-columns:190px minmax(0,1fr)}}
@media(max-width:900px){.consulta-edit-parameters-grid{grid-template-columns:1fr}}
@media(max-width:767.98px){#ajaxEditModal .modal-dialog{width:100vw!important;max-width:100vw!important;height:100vh;margin:0}#ajaxEditModal .modal-content{border-radius:0}.consulta-edit-commandbar{grid-template-columns:1fr 1fr}.consulta-edit-command-field--name,.consulta-edit-command-field--connection,.consulta-edit-command-field--groups,.consulta-edit-command-field--tags{grid-column:1/-1}.consulta-edit-tabs{overflow-x:auto}.consulta-edit-tabs .nav-tabs{flex-wrap:nowrap}.consulta-edit-tabs .nav-link{white-space:nowrap}.consulta-edit-sql-layout{display:block}.consulta-asset-library{max-height:220px;margin-bottom:8px}.consulta-edit-editor-grid{grid-template-columns:1fr}.consulta-edit-schema-drawer,.consulta-edit-schema-drawer[open]{width:100%;max-width:none;height:auto;min-height:34px;border-left:0;border-top:1px solid #d9dee5}.consulta-edit-schema-drawer[open]{display:flex;flex-direction:column}.consulta-edit-schema-drawer:not([open]) summary{justify-content:flex-start;flex-direction:row}.consulta-edit-schema-drawer:not([open]) summary span{writing-mode:initial}.consulta-edit-schema-drawer summary span{flex:1}.consulta-edit-schema-body{width:auto;max-width:none;height:220px;max-height:220px}.consulta-edit-schema-drawer[open]>.schema-drawer-resize{display:none}.consulta-edit-editor-grid>textarea{min-height:55vh}.consulta-edit-tab-pane{min-height:55vh;padding:10px}.consulta-edit-tab-heading{align-items:flex-start;flex-direction:column}.consulta-edit-statusbar span:last-child{display:none}.consulta-edit-footer{align-items:stretch}.consulta-edit-footer>div{display:flex}.consulta-edit-footer .btn{flex:1}}
@media(prefers-reduced-motion:reduce){.consulta-edit-schema-chevron,.consulta-result-more summary i{transition:none}}

/* AirSenior — console flutuante contextual */
.airsenior-chat{--air-ink:#17202b;--air-panel:#f8fafc;--air-teal:#087f7b;--air-teal-soft:#dff4f1;--air-amber:#e9a23b;position:fixed;right:22px;bottom:20px;z-index:1080;font-family:inherit}
.airsenior-chat-trigger{position:relative;display:flex;align-items:center;width:44px;height:44px;gap:0;padding:8px;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:var(--air-ink);color:#fff;overflow:hidden;font-size:13px;font-weight:750;white-space:nowrap;box-shadow:0 10px 30px rgba(15,23,42,.24);transition:width .18s ease,transform .18s ease,box-shadow .18s ease}
.airsenior-chat-trigger:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(15,23,42,.3)}.airsenior-chat-trigger:focus-visible{outline:3px solid rgba(13,110,253,.35);outline-offset:3px}
.airsenior-chat-trigger>i{display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border-radius:50%;background:#273746;color:#74d9d1;transform:rotate(-18deg)}
.airsenior-chat-trigger>span:last-child{max-width:0;margin-left:0;overflow:hidden;opacity:0;transition:max-width .18s ease,margin-left .18s ease,opacity .12s ease}
@media(hover:hover) and (pointer:fine){.airsenior-chat-trigger:hover{width:120px}.airsenior-chat-trigger:hover>span:last-child{max-width:70px;margin-left:9px;opacity:1}}
.airsenior-chat-trigger-pulse{position:absolute;top:3px;left:32px;width:8px;height:8px;border:2px solid var(--air-ink);border-radius:50%;background:var(--air-amber)}
.airsenior-chat-panel{position:absolute;right:0;bottom:58px;display:grid;grid-template-rows:auto auto minmax(180px,1fr) auto;width:min(410px,calc(100vw - 28px));height:min(680px,calc(100vh - 96px));overflow:hidden;border:1px solid #cfd8e3;border-radius:14px;background:var(--air-panel);box-shadow:0 24px 70px rgba(15,23,42,.24);opacity:0;visibility:hidden;transform:translateY(12px) scale(.985);transform-origin:bottom right;transition:opacity .18s ease,transform .18s ease,visibility .18s}
.airsenior-chat-panel.is-open{opacity:1;visibility:visible;transform:none}
.airsenior-chat-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;border-bottom:1px solid #25303d;background:var(--air-ink);color:#fff}
.airsenior-chat-identity{display:flex;align-items:center;gap:10px}.airsenior-chat-mark{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(116,217,209,.25);border-radius:9px;background:#22303d;color:#74d9d1}.airsenior-chat-mark i{transform:rotate(-18deg)}
.airsenior-chat-identity strong,.airsenior-chat-identity small{display:block}.airsenior-chat-identity strong{font-size:14px}.airsenior-chat-identity small{margin-top:2px;color:#aebdca;font-size:10px;font-weight:550;letter-spacing:.02em}.airsenior-chat-identity small i{display:inline-block;width:6px;height:6px;margin-right:5px;border-radius:50%;background:#64d3a2;box-shadow:0 0 0 3px rgba(100,211,162,.1)}
.airsenior-chat-header-actions{display:flex;gap:3px}.airsenior-chat-header-actions button{display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:6px;background:transparent;color:#9fb0bf}.airsenior-chat-header-actions button:hover,.airsenior-chat-header-actions button:focus-visible{background:#2a3947;color:#fff}
.airsenior-chat-context{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;padding:9px 12px 9px 24px;border-bottom:1px solid #dde4eb;background:#eef3f6;color:#536273;font-size:10px}
.airsenior-chat-context:before{position:absolute;top:12px;bottom:12px;left:15px;width:1px;background:#9ec8c5;content:""}.airsenior-chat-context>span{display:flex;align-items:center;min-width:0;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.airsenior-chat-context>span i{width:10px;color:#468b87;text-align:center}
.airsenior-chat-context button{grid-column:1/-1;display:flex;align-items:center;gap:6px;justify-self:start;padding:3px 7px;border:1px solid #cbd7df;border-radius:5px;background:#fff;color:#526171;font-size:10px}.airsenior-chat-context button:hover{border-color:#78aaa7;color:#176c68}.airsenior-chat-context button.is-attached{border-color:#7dbab5;background:var(--air-teal-soft);color:#126a66}
.airsenior-chat-messages{display:flex;flex-direction:column;gap:12px;padding:16px;overflow:auto;overscroll-behavior:contain;scrollbar-color:#bdc7d2 transparent}
.airsenior-chat-welcome{margin:auto 0;padding:18px;border:1px dashed #bdc9d4;border-radius:10px;background:#fff;color:#596779;text-align:center}.airsenior-chat-welcome strong,.airsenior-chat-welcome span{display:block}.airsenior-chat-welcome strong{color:#273442;font-size:13px}.airsenior-chat-welcome span{margin-top:5px;font-size:11px;line-height:1.5}
.airsenior-chat-message{max-width:91%;font-size:12px;line-height:1.55}.airsenior-chat-message.is-user{align-self:flex-end}.airsenior-chat-message.is-assistant{align-self:flex-start}.airsenior-chat-message-role{display:block;margin:0 4px 4px;color:#788697;font-size:9px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.airsenior-chat-message.is-user .airsenior-chat-message-role{text-align:right}
.airsenior-chat-message>div{padding:10px 12px;border:1px solid #dce3ea;border-radius:4px 12px 12px 12px;background:#fff;color:#344252;box-shadow:0 1px 2px rgba(16,24,40,.03)}.airsenior-chat-message.is-user>div{border-color:#087f7b;border-radius:12px 4px 12px 12px;background:var(--air-teal);color:#fff}.airsenior-chat-message p{margin:0 0 7px}.airsenior-chat-message p:last-child{margin-bottom:0}.airsenior-chat-message pre{max-height:230px;margin:8px -4px 2px;padding:9px;border-radius:5px;background:#17202b;color:#dbe5ed;overflow:auto;font-size:10px;white-space:pre-wrap}.airsenior-chat-message code:not(pre code){padding:1px 4px;border-radius:3px;background:#e8edf2;color:#25435b;font-size:10px}
.airsenior-chat-apply{display:inline-flex;align-items:center;gap:6px;margin-top:7px;padding:6px 9px;border:1px solid #86bcb8;border-radius:6px;background:#effaf8;color:#176d68;font-size:10px;font-weight:700}.airsenior-chat-apply:hover{background:#dff4f1}.airsenior-chat-apply:disabled{border-color:#cfd8df;background:#f3f5f7;color:#6b7785}
.airsenior-chat-trace{margin-top:7px;border:1px solid #d8e1e8;border-radius:6px;background:#f5f8fa}.airsenior-chat-trace summary{display:flex;align-items:center;gap:6px;padding:6px 8px;color:#516171;font-size:9px;font-weight:700;cursor:pointer;list-style:none}.airsenior-chat-trace summary::-webkit-details-marker{display:none}.airsenior-chat-trace summary i{color:#35837f}.airsenior-chat-trace summary span{margin-left:auto;color:#7b8895;font-weight:550}.airsenior-chat-trace>div{display:flex;flex-wrap:wrap;gap:4px;padding:7px 8px;border-top:1px solid #dce4ea}.airsenior-chat-trace code{padding:3px 5px!important;border:1px solid #d5e0e6;background:#fff!important;color:#31506a!important;font-size:8.5px!important}.airsenior-chat-trace small{flex-basis:100%;color:#8a5a17;font-size:9px}
.airsenior-chat-notice{align-self:center;padding:7px 10px;border-radius:6px;background:#edf2f6;color:#5d6b7a;font-size:10px;text-align:center}.airsenior-chat-notice.is-warning{background:#fff4df;color:#82571a}
.airsenior-chat-typing{display:flex;align-items:center;gap:4px;align-self:flex-start;padding:9px 11px;border:1px solid #dce3ea;border-radius:4px 12px 12px 12px;background:#fff;color:#788697;font-size:10px}.airsenior-chat-typing i{width:5px;height:5px;border-radius:50%;background:#699c99;animation:airSeniorTyping 1.1s infinite ease-in-out}.airsenior-chat-typing i:nth-child(2){animation-delay:.14s}.airsenior-chat-typing i:nth-child(3){animation-delay:.28s}.airsenior-chat-typing span{margin-left:4px}
.airsenior-chat-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:10px;border-top:1px solid #dbe2e9;background:#fff}.airsenior-chat-compose textarea{min-height:40px;max-height:128px;padding:10px 11px;border:1px solid #cbd5df;border-radius:8px;outline:0;resize:none;color:#273442;font-size:12px;line-height:1.45}.airsenior-chat-compose textarea:focus{border-color:#559b97;box-shadow:0 0 0 3px rgba(8,127,123,.1)}.airsenior-chat-compose>button{align-self:end;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:8px;background:var(--air-ink);color:#fff}.airsenior-chat-compose>button:hover{background:#263849}.airsenior-chat-compose>button:disabled{background:#9aa6b2}.airsenior-chat-compose small{grid-column:1/-1;color:#8995a2;font-size:9px}.airsenior-chat-compose kbd{padding:1px 3px;border:1px solid #d8dee5;background:#f4f6f8;color:#667382;font:inherit}
@keyframes airSeniorTyping{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-3px);opacity:1}}
@media(max-width:767.98px){.airsenior-chat{right:10px;bottom:10px}.airsenior-chat-trigger{border-radius:50%}.airsenior-chat-panel{position:fixed;right:8px;bottom:8px;width:calc(100vw - 16px);height:calc(100dvh - 16px);border-radius:11px;transform:translateY(20px)}body.airsenior-chat-open{overflow:hidden}}
@media(prefers-reduced-motion:reduce){.airsenior-chat-trigger,.airsenior-chat-trigger>span:last-child,.airsenior-chat-panel{transition:none}.airsenior-chat-typing i{animation:none}}

/* Seletor de permissões do DW */
.dw-database-block{margin-bottom:10px;border:1px solid #dfe4ea;border-radius:8px;background:#fff;overflow:hidden;transition:border-color .16s ease,box-shadow .16s ease}
.dw-database-block.is-selected{border-color:color-mix(in srgb,var(--brand-primary) 46%,#dfe4ea);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand-primary) 8%,transparent)}
.dw-database-head{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:62px;padding:11px 14px;background:#fafbfc;border-bottom:1px solid transparent}
.dw-database-block.is-selected .dw-database-head{background:color-mix(in srgb,var(--brand-selection) 62%,#fff);border-bottom-color:color-mix(in srgb,var(--brand-primary) 14%,#e4e7ec)}
.dw-database-choice{display:flex;align-items:center;min-width:0;gap:10px;margin:0;cursor:pointer}
.dw-database-choice .form-check-input{flex:0 0 auto;margin:0}
.dw-database-icon{display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px;border:1px solid #d9e0e7;border-radius:7px;background:#fff;color:#667085;font-size:12px}
.dw-database-block.is-selected .dw-database-icon{border-color:color-mix(in srgb,var(--brand-primary) 24%,#d9e0e7);color:var(--brand-primary)}
.dw-database-choice strong,.dw-database-choice small{display:block}
.dw-database-choice strong{overflow:hidden;color:#273342;font-size:13px;text-overflow:ellipsis;white-space:nowrap}
.dw-database-choice small{margin-top:2px;color:#7a8695;font-size:10px}
.dw-schema-summary{flex:0 0 auto;padding:3px 8px;border:1px solid #dde3e9;border-radius:12px;background:#fff;color:#667085;font-size:10px;font-weight:650;font-variant-numeric:tabular-nums}
.dw-database-block.is-selected .dw-schema-summary{border-color:color-mix(in srgb,var(--brand-primary) 22%,#dde3e9);color:var(--brand-primary)}
.dw-schema-picker{padding:12px 14px 14px 56px}
.dw-schema-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px;color:#667085;font-size:10px;font-weight:700;letter-spacing:.035em;text-transform:uppercase}
.dw-schema-select-all{padding:2px 4px;border:0;background:transparent;color:var(--brand-primary);font-size:10px;font-weight:650;letter-spacing:0;text-transform:none}
.dw-schema-select-all:hover{text-decoration:underline}.dw-schema-select-all:disabled{color:#98a2b3;text-decoration:none;cursor:not-allowed}
.dw-schema-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:6px}
.dw-schema-option{position:relative;margin:0;cursor:pointer}
.dw-schema-option input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}
.dw-schema-option>span{display:flex;align-items:center;min-height:34px;gap:7px;padding:6px 9px;border:1px solid #dfe4ea;border-radius:6px;background:#fff;color:#475467;font-size:11px;transition:background-color .14s ease,border-color .14s ease,color .14s ease}
.dw-schema-option>span>i{display:grid;place-items:center;width:15px;height:15px;flex:0 0 15px;border:1px solid #cbd3dc;border-radius:4px;color:transparent;font-size:7px}
.dw-schema-option:hover>span{border-color:#b8c4d0;background:#fbfcfd}
.dw-schema-option input:checked+span{border-color:color-mix(in srgb,var(--brand-primary) 30%,#dfe4ea);background:var(--brand-selection);color:#273342}
.dw-schema-option input:checked+span>i{border-color:var(--brand-primary);background:var(--brand-primary);color:#fff}
.dw-schema-option input:focus-visible+span{outline:2px solid var(--brand-primary);outline-offset:2px}
.dw-schema-option input:disabled+span{background:#f5f6f7;color:#98a2b3;cursor:not-allowed}
.dw-schema-option input:disabled+span>i{border-color:#d8dde3;background:#eef0f2;color:transparent}
.dw-schema-empty{display:flex;align-items:center;gap:7px;color:#7a8695;font-size:11px}.dw-schema-empty i{font-size:10px}
@media(max-width:767.98px){.dw-database-head{align-items:flex-start;flex-direction:column;gap:8px}.dw-schema-summary{margin-left:42px}.dw-schema-picker{padding:11px 12px 12px}.dw-schema-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.dw-schema-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.dw-database-block,.dw-schema-option>span{transition:none}}

/* Consulta/create: a árvore rola dentro da lista; cabeçalho, filtros e modo
   de visualização permanecem sempre acessíveis. */
.consulta-edit-schema-drawer[open] .consulta-edit-schema-body{overflow:hidden}
