@charset "UTF-8";
/* line 19, css/style.scss */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box; }

/* line 25, css/style.scss */
body {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  background-color: #1a1a1a;
  color: #e0e0e0;
  font-size: 14px;
  line-height: 1.5; }

/* line 33, css/style.scss */
.container {
  display: flex;
  flex-direction: column;
  height: 100vh;
  overflow: hidden; }

/* line 41, css/style.scss */
.header {
  background-color: #222222;
  border-bottom: 1px solid #333333;
  padding: 12px;
  display: flex;
  justify-content: space-between;
  align-items: center; }
  /* line 49, css/style.scss */
  .header h1 {
    font-size: 18px;
    font-weight: 600;
    color: #e0e0e0; }
  /* line 55, css/style.scss */
  .header .user-info {
    display: flex;
    align-items: center;
    gap: 12px; }
    /* line 60, css/style.scss */
    .header .user-info span {
      color: #a0a0a0;
      font-size: 13px; }

/* line 68, css/style.scss */
.main-content {
  display: flex;
  flex: 1;
  overflow: hidden; }

/* line 75, css/style.scss */
.sidebar {
  width: 250px;
  background-color: #222222;
  border-right: 1px solid #333333;
  display: flex;
  flex-direction: column;
  padding: 8px; }
  /* line 83, css/style.scss */
  .sidebar #newQueryBtn {
    margin-bottom: 8px; }
  /* line 87, css/style.scss */
  .sidebar .queries-list {
    flex: 1;
    overflow-y: auto; }
    /* line 91, css/style.scss */
    .sidebar .queries-list .query-item {
      background-color: #2a2a2a;
      padding: 8px;
      margin-bottom: 2px;
      border-radius: 2px;
      cursor: pointer;
      transition: background-color 0.2s;
      position: relative; }
      /* line 100, css/style.scss */
      .sidebar .queries-list .query-item:hover {
        background-color: #333333; }
        /* line 103, css/style.scss */
        .sidebar .queries-list .query-item:hover .delete-btn {
          opacity: 1; }
      /* line 108, css/style.scss */
      .sidebar .queries-list .query-item.active {
        background-color: #ff9800;
        color: #1a1a1a; }
        /* line 112, css/style.scss */
        .sidebar .queries-list .query-item.active .query-date {
          color: rgba(0, 0, 0, 0.6); }
        /* line 116, css/style.scss */
        .sidebar .queries-list .query-item.active .delete-btn {
          color: #1a1a1a;
          opacity: 1; }
      /* line 122, css/style.scss */
      .sidebar .queries-list .query-item .query-name {
        font-weight: 500;
        font-size: 13px;
        margin-bottom: 2px;
        overflow: hidden;
        text-overflow: ellipsis; }
      /* line 130, css/style.scss */
      .sidebar .queries-list .query-item .query-date {
        font-size: 11px;
        color: #a0a0a0; }
      /* line 135, css/style.scss */
      .sidebar .queries-list .query-item .delete-btn {
        position: absolute;
        top: 8px;
        right: 8px;
        background: none;
        border: none;
        color: #a0a0a0;
        cursor: pointer;
        opacity: 0;
        transition: opacity 0.2s;
        font-size: 16px;
        padding: 0;
        width: 20px;
        height: 20px;
        display: flex;
        align-items: center;
        justify-content: center; }
        /* line 153, css/style.scss */
        .sidebar .queries-list .query-item .delete-btn:hover {
          color: #ff5252; }
    /* line 159, css/style.scss */
    .sidebar .queries-list .empty-state {
      text-align: center;
      color: #a0a0a0;
      padding: 12px;
      font-size: 13px; }

/* line 169, css/style.scss */
.editor-panel {
  flex: 1;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  padding: 8px;
  gap: 8px; }

/* line 178, css/style.scss */
.editor-section,
.results-section {
  background-color: #222222;
  border: 1px solid #333333;
  border-radius: 2px;
  display: flex;
  flex-direction: column;
  overflow: hidden; }

/* line 188, css/style.scss */
.results-section {
  flex: 1; }

/* line 192, css/style.scss */
.section-header {
  padding: 8px;
  border-bottom: 1px solid #333333;
  display: flex;
  justify-content: space-between;
  align-items: center; }
  /* line 199, css/style.scss */
  .section-header h2 {
    font-size: 16px;
    font-weight: 600; }
  /* line 204, css/style.scss */
  .section-header .actions {
    display: flex;
    gap: 4px; }

/* line 211, css/style.scss */
.CodeMirror {
  background-color: #2a2a2a !important;
  color: #e0e0e0 !important;
  font-family: 'Consolas', 'Monaco', monospace !important;
  font-size: 13px !important;
  border: none !important;
  flex: 1 1 auto;
  height: auto !important; }

/* line 225, css/style.scss */
.CodeMirror-gutters {
  background-color: #222222 !important;
  border-right: 1px solid #333333 !important; }

/* line 230, css/style.scss */
.CodeMirror-cursor {
  border-left-color: #ff9800 !important; }

/* line 234, css/style.scss */
.CodeMirror-selected {
  background-color: rgba(255, 152, 0, 0.2) !important; }

/* line 239, css/style.scss */
.results-container {
  flex: 1;
  overflow: auto;
  padding: 8px;
  max-height: none; }
  /* line 245, css/style.scss */
  .results-container .empty-state {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: #a0a0a0;
    font-size: 13px; }
  /* line 254, css/style.scss */
  .results-container table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid #444;
    font-family: monospace;
    font-size: 12px; }
    /* line 261, css/style.scss */
    .results-container table thead {
      position: sticky;
      top: 0;
      background-color: #2a2a2a;
      z-index: 1; }
      /* line 267, css/style.scss */
      .results-container table thead th {
        padding: 8px;
        text-align: left;
        font-weight: 600;
        border-bottom: 1px solid #333333;
        color: #e0e0e0; }
    /* line 277, css/style.scss */
    .results-container table tbody tr {
      border-bottom: 1px solid #333333; }
      /* line 280, css/style.scss */
      .results-container table tbody tr:hover {
        background-color: #2a2a2a; }
      /* line 284, css/style.scss */
      .results-container table tbody tr td {
        padding: 8px;
        color: #e0e0e0; }
        /* line 288, css/style.scss */
        .results-container table tbody tr td.null-value {
          color: #a0a0a0;
          font-style: italic; }
  /* line 297, css/style.scss */
  .results-container th, .results-container td {
    border: 1px solid #444;
    padding: 3px 6px !important;
    vertical-align: top; }
  /* line 303, css/style.scss */
  .results-container .cell {
    padding: 2px 4px;
    max-height: 120px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    position: relative;
    max-width: 540px; }

/* line 315, css/style.scss */
.btn {
  padding: 8px 12px;
  border: none;
  border-radius: 2px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  white-space: nowrap; }
  /* line 325, css/style.scss */
  .btn.btn-primary {
    background-color: #ff9800;
    color: #1a1a1a; }
    /* line 329, css/style.scss */
    .btn.btn-primary:hover {
      background-color: #ffb74d; }
    /* line 333, css/style.scss */
    .btn.btn-primary:disabled {
      background-color: #555555;
      color: #a0a0a0;
      cursor: not-allowed; }
  /* line 340, css/style.scss */
  .btn.btn-secondary {
    background-color: #2a2a2a;
    color: #e0e0e0;
    border: 1px solid #333333; }
    /* line 345, css/style.scss */
    .btn.btn-secondary:hover {
      background-color: #333333; }

/* line 352, css/style.scss */
.input {
  width: 100%;
  padding: 8px;
  background-color: #2a2a2a;
  border: 1px solid #333333;
  border-radius: 2px;
  color: #e0e0e0;
  font-size: 13px;
  font-family: inherit; }
  /* line 362, css/style.scss */
  .input:focus {
    outline: none;
    border-color: #ff9800; }
  /* line 367, css/style.scss */
  .input::placeholder {
    color: #a0a0a0; }

/* line 373, css/style.scss */
.modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 1000;
  align-items: center;
  justify-content: center; }
  /* line 385, css/style.scss */
  .modal.show {
    display: flex; }
  /* line 389, css/style.scss */
  .modal .modal-content {
    background-color: #222222;
    border: 1px solid #333333;
    border-radius: 2px;
    padding: 12px;
    width: 400px;
    max-width: 90%; }
    /* line 397, css/style.scss */
    .modal .modal-content h3 {
      font-size: 16px;
      margin-bottom: 12px; }
    /* line 402, css/style.scss */
    .modal .modal-content .input {
      margin-bottom: 12px; }
    /* line 406, css/style.scss */
    .modal .modal-content .modal-actions {
      display: flex;
      gap: 4px;
      justify-content: flex-end; }

/* line 415, css/style.scss */
.login-screen {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #1a1a1a;
  z-index: 2000;
  align-items: center;
  justify-content: center; }
  /* line 427, css/style.scss */
  .login-screen.show {
    display: flex; }
  /* line 431, css/style.scss */
  .login-screen .login-box {
    background-color: #222222;
    border: 1px solid #333333;
    border-radius: 2px;
    padding: 32px;
    text-align: center;
    max-width: 400px; }
    /* line 439, css/style.scss */
    .login-screen .login-box h1 {
      font-size: 24px;
      margin-bottom: 12px; }
    /* line 444, css/style.scss */
    .login-screen .login-box p {
      color: #a0a0a0;
      margin-bottom: 24px; }

/* line 452, css/style.scss */
.spinner {
  display: inline-block;
  width: 16px;
  height: 16px;
  border: 2px solid #2a2a2a;
  border-top-color: #ff9800;
  border-radius: 50%;
  animation: spin 0.6s linear infinite; }

@keyframes spin {
  to {
    transform: rotate(360deg); } }

/* line 469, css/style.scss */
::-webkit-scrollbar {
  width: 8px;
  height: 8px; }

/* line 474, css/style.scss */
::-webkit-scrollbar-track {
  background: #222222; }

/* line 478, css/style.scss */
::-webkit-scrollbar-thumb {
  background: #2a2a2a;
  border-radius: 2px; }
  /* line 482, css/style.scss */
  ::-webkit-scrollbar-thumb:hover {
    background: #444444; }

/* line 488, css/style.scss */
.connections-page {
  padding: 12px;
  overflow-y: auto;
  flex: 1; }

/* line 494, css/style.scss */
.connections-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px; }
  /* line 500, css/style.scss */
  .connections-header h2 {
    font-size: 18px;
    font-weight: 600; }

/* line 506, css/style.scss */
.connections-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
  gap: 8px; }

/* line 512, css/style.scss */
.connection-card {
  background-color: #222222;
  border: 1px solid #333333;
  border-radius: 2px;
  padding: 12px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start; }
  /* line 521, css/style.scss */
  .connection-card .connection-info {
    flex: 1; }
    /* line 524, css/style.scss */
    .connection-card .connection-info h3 {
      font-size: 16px;
      margin-bottom: 8px;
      color: #ff9800; }
    /* line 530, css/style.scss */
    .connection-card .connection-info p {
      font-size: 13px;
      color: #a0a0a0;
      margin-bottom: 2px; }
      /* line 535, css/style.scss */
      .connection-card .connection-info p strong {
        color: #e0e0e0; }
  /* line 541, css/style.scss */
  .connection-card .connection-actions {
    display: flex;
    flex-direction: column;
    gap: 4px; }
    /* line 546, css/style.scss */
    .connection-card .connection-actions .btn {
      padding: 4px 8px;
      font-size: 12px; }

/* line 554, css/style.scss */
.form-label {
  display: block;
  font-size: 13px;
  font-weight: 500;
  margin-bottom: 4px;
  margin-top: 8px;
  color: #e0e0e0; }
  /* line 562, css/style.scss */
  .form-label:first-of-type {
    margin-top: 0; }

/* line 568, css/style.scss */
.db-selector {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px; }
  /* line 574, css/style.scss */
  .db-selector label {
    font-size: 13px;
    font-weight: 500;
    color: #e0e0e0;
    white-space: nowrap; }
  /* line 581, css/style.scss */
  .db-selector select {
    flex: 1;
    padding: 8px;
    background-color: #2a2a2a;
    border: 1px solid #333333;
    border-radius: 2px;
    color: #e0e0e0;
    font-size: 13px;
    font-family: inherit;
    cursor: pointer; }
    /* line 592, css/style.scss */
    .db-selector select:focus {
      outline: none;
      border-color: #ff9800; }
    /* line 597, css/style.scss */
    .db-selector select option {
      background-color: #2a2a2a;
      color: #e0e0e0; }

/* line 605, css/style.scss */
.collapsible-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px;
  border-bottom: 1px solid #333333;
  cursor: pointer;
  user-select: none; }
  /* line 614, css/style.scss */
  .collapsible-header:hover {
    background-color: rgba(255, 152, 0, 0.05); }
  /* line 618, css/style.scss */
  .collapsible-header h2 {
    font-size: 16px;
    font-weight: 600; }
  /* line 623, css/style.scss */
  .collapsible-header .collapse-icon {
    color: #a0a0a0;
    transition: transform 0.2s; }
    /* line 627, css/style.scss */
    .collapsible-header .collapse-icon.collapsed {
      transform: rotate(-90deg); }

/* line 633, css/style.scss */
.collapsible-content {
  display: block;
  overflow: hidden;
  transition: max-height 0.3s ease; }
  /* line 638, css/style.scss */
  .collapsible-content.collapsed {
    display: none; }

/* line 644, css/style.scss */
.sidebar-link {
  background-color: transparent;
  color: #e0e0e0;
  border: 1px solid #333333;
  padding: 8px;
  margin-bottom: 8px;
  text-align: center;
  text-decoration: none;
  display: block;
  border-radius: 2px;
  font-size: 13px;
  transition: all 0.2s; }
  /* line 657, css/style.scss */
  .sidebar-link:hover {
    background-color: #2a2a2a;
    color: #ff9800; }

/* кастомный стиль всех скроллбаров */
/* line 664, css/style.scss */
* {
  scrollbar-width: thin;
  scrollbar-color: #ff9800 #222; }

/* Chrome, Edge, Safari */
/* line 670, css/style.scss */
::-webkit-scrollbar {
  width: 10px;
  height: 10px; }

/* line 675, css/style.scss */
::-webkit-scrollbar-track {
  background: #222; }

/* line 679, css/style.scss */
::-webkit-scrollbar-thumb {
  background-color: #ff9800;
  border-radius: 5px;
  border: 2px solid #222; }

/* line 685, css/style.scss */
::-webkit-scrollbar-thumb:hover {
  background-color: #ffa733; }

/* line 689, css/style.scss */
::-webkit-scrollbar-corner {
  background: #222; }

/* line 695, css/style.scss */
.editor-panel {
  flex: 1;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  padding: 8px;
  gap: 8px; }

/* Редактор */
/* line 705, css/style.scss */
.editor-section {
  flex: 0 0 300px;
  transition: all 0.25s ease;
  overflow: hidden; }
  /* line 710, css/style.scss */
  .editor-section #editorContent {
    flex: 1 1 auto;
    overflow: auto;
    min-height: 0; }

/* line 717, css/style.scss */
.editor-section.collapsed {
  flex: 0 0 40px; }

/* line 721, css/style.scss */
.editor-section.collapsed #editorContent {
  opacity: 0;
  pointer-events: none; }

/* line 726, css/style.scss */
.editor-section .collapse-icon {
  transition: transform 0.25s ease; }

/* line 730, css/style.scss */
.editor-section.collapsed .collapse-icon {
  transform: rotate(-90deg); }

/* line 734, css/style.scss */
#editorHeader {
  cursor: pointer; }

/* Результаты */
/* line 739, css/style.scss */
.results-section {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  overflow: hidden; }

/* line 748, css/style.scss */
.editor-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px;
  border-bottom: 1px solid #333333;
  gap: 8px; }

/* line 757, css/style.scss */
.db-selector-inline {
  display: flex;
  align-items: center;
  gap: 8px; }
  /* line 762, css/style.scss */
  .db-selector-inline label {
    font-size: 13px;
    font-weight: 500;
    color: #e0e0e0; }
  /* line 768, css/style.scss */
  .db-selector-inline select {
    padding: 6px 8px;
    background-color: #2a2a2a;
    border: 1px solid #333333;
    border-radius: 2px;
    color: #e0e0e0;
    font-size: 13px;
    cursor: pointer; }
    /* line 777, css/style.scss */
    .db-selector-inline select:focus {
      outline: none;
      border-color: #ff9800; }

/* line 784, css/style.scss */
.actions-inline {
  display: flex;
  align-items: center;
  gap: 6px; }

/*# sourceMappingURL=style.css.map */