*{box-sizing:border-box;padding:0}*,body{margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}html.dark-theme body{background:linear-gradient(135deg,#1e293b,#0f172a)}html.dark-theme .App{background:#0000}html.dark-theme .loader{border-color:#3b82f6 #334155 #334155}html.dark-theme ::-webkit-scrollbar-thumb,html.dark-theme ::-webkit-scrollbar-track{background:#0000}html.dark-theme :hover::-webkit-scrollbar-thumb{background:#475569}html.dark-theme ::-webkit-scrollbar-thumb:hover{background:#64748b}html.dark-theme .dashboard{background:#0f172a}html.dark-theme .dashboard-header{background:#1e293b;border-bottom-color:#334155;box-shadow:0 1px 3px #0000004d}html.dark-theme .header-left h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#60a5fa,#3b82f6);-webkit-background-clip:text;background-clip:text;color:#93c5fd}html.dark-theme .company-badge,html.dark-theme .user-info{background:#334155;color:#94a3b8}html.dark-theme .connection-status{background:#064e3b;border-color:#065f46;color:#34d399}html.dark-theme .connection-status strong{color:#34d399}html.dark-theme .connection-status.no-connection{background:#422006;border-color:#78350f;color:#fbbf24}html.dark-theme .connection-badge-header{background:linear-gradient(135deg,#064e3b40,#065f4640);border-color:#065f46;color:#34d399}html.dark-theme .connection-badge-header.no-connection{background:linear-gradient(135deg,#42200640,#78350f40);border-color:#78350f;color:#fbbf24}html.dark-theme .connection-badge-worksheet{background:#334155;border-color:#334155;color:#fff}html.dark-theme .mode-selector-header label,html.dark-theme .row-limit-selector-header label{color:#94a3b8}html.dark-theme .mode-selector-worksheet label{color:#818cf8}html.dark-theme .mode-selector-header select,html.dark-theme .mode-selector-worksheet select,html.dark-theme .row-limit-selector-header input{background:#334155;border-color:#475569;color:#f1f5f9}html.dark-theme .tabs{background:#1e293b;border-bottom-color:#334155}html.dark-theme .tab{color:#94a3b8}html.dark-theme .tab.active,html.dark-theme .tab:hover{color:#60a5fa}html.dark-theme .tab.active{border-bottom-color:#60a5fa}html.dark-theme .worksheet-tabs{background:#1e293b;border-bottom-color:#334155}html.dark-theme .worksheet-tab{background:#334155;border-color:#475569;color:#94a3b8}html.dark-theme .worksheet-tab:hover{background:#475569;border-color:#64748b;color:#e2e8f0}html.dark-theme .worksheet-tab.active{background:#0f172a;border-color:#3b82f6 #3b82f6 #0f172a}html.dark-theme .worksheet-tab.active .worksheet-name{color:#60a5fa}html.dark-theme .worksheet-name{color:#94a3b8}html.dark-theme .worksheet-name-input{background:#334155;border-color:#475569;color:#f1f5f9}html.dark-theme .btn-close-worksheet{color:#94a3b8}html.dark-theme .btn-close-worksheet:hover{background:#7f1d1d;color:#f87171}html.dark-theme .worksheet-tabs-list::-webkit-scrollbar-thumb,html.dark-theme .worksheet-tabs-list::-webkit-scrollbar-track{background:#0000}html.dark-theme .worksheet-tabs-list:hover::-webkit-scrollbar-thumb{background:#64748b}html.dark-theme .sidebar{background:linear-gradient(180deg,#1e293b,#0f172a);border-right-color:#334155}html.dark-theme .sidebar-section:last-child{background:linear-gradient(180deg,#1e293b,#0f172a);border-top-color:#334155}html.dark-theme .action-buttons-bar,html.dark-theme .menu-bar{background:#0000;border-color:#334155}html.dark-theme .action-buttons-bar{background:#1e293b}html.dark-theme .menu-button{color:#94a3b8}html.dark-theme .menu-button:hover{background:#334155;color:#f1f5f9}html.dark-theme .menu-button-link{color:#94a3b8}html.dark-theme .menu-button-link:hover{background:#334155;color:#f1f5f9}html.dark-theme .menu-dropdown{background:#1e293b;border-color:#475569;box-shadow:0 4px 12px #0006}html.dark-theme .menu-option{color:#e2e8f0}html.dark-theme .menu-option:hover{background:#334155}html.dark-theme .editor-header{background:#1e293b;border-color:#334155}html.dark-theme .header-info h2{color:#93c5fd}html.dark-theme .mode-selector label{color:#94a3b8}html.dark-theme .mode-selector select{background:#334155;border-color:#475569;color:#f1f5f9}html.dark-theme .query-textarea-wrapper textarea{background:#0f172a;border-color:#334155;color:#e2e8f0}html.dark-theme .query-textarea-line-numbers{background:#1e293b;border-right-color:#334155;color:#64748b}html.dark-theme .query-textarea-highlight{background:#0f172a;color:#e2e8f0}html.dark-theme .browser-section{border-left-color:#334155}html.dark-theme .results-view{background:#0f172a}html.dark-theme .results-empty{color:#64748b}html.dark-theme .results-header{background:#1e293b}html.dark-theme .results-info h3{color:#f1f5f9}html.dark-theme .results-table-wrapper{background:#0f172a}html.dark-theme .results-table{color:#e2e8f0}html.dark-theme .results-table th{background:#1e293b;border-color:#334155;color:#e2e8f0}html.dark-theme .results-table th .th-label{color:#e2e8f0}html.dark-theme .results-table td{border-color:#334155}html.dark-theme .results-table tr:hover td{background:#1e293b}html.dark-theme .table-browser{background:#1e293b;border-color:#334155}html.dark-theme .browser-header{background:#334155;border-bottom-color:#475569}html.dark-theme .browser-header h3{color:#f1f5f9}html.dark-theme .browser-search{border-bottom-color:#475569}html.dark-theme .search-input{background:#0f172a;border-color:#475569;color:#f1f5f9}html.dark-theme .search-input::placeholder{color:#64748b}html.dark-theme .table-item{color:#e2e8f0}html.dark-theme .table-item-selected,html.dark-theme .table-item:hover{background:#334155}html.dark-theme .connection-list,html.dark-theme .db-browser{background:#0000}html.dark-theme .connection-item{color:#e2e8f0}html.dark-theme .connection-item:hover{background:#334155}html.dark-theme .preferences-overlay{background:#000000b3}html.dark-theme .preferences-modal{background:#1e293b;box-shadow:0 10px 40px #00000080}html.dark-theme .preferences-header{border-bottom-color:#334155}html.dark-theme .preferences-header h2{color:#f1f5f9}html.dark-theme .preferences-close{color:#94a3b8}html.dark-theme .preferences-close:hover{background:#334155;color:#f1f5f9}html.dark-theme .preference-label{color:#e2e8f0}html.dark-theme .preference-description{color:#94a3b8}html.dark-theme .history-placeholder{color:#64748b}html.dark-theme .query-history-item{background:#1e293b;border-color:#334155;color:#e2e8f0}html.dark-theme .auth-page-wrapper{background:#0f172a}html.dark-theme .auth-container{background:#0000}html.dark-theme .auth-page-wrapper .company-info-section{color:#e2e8f0}html.dark-theme .auth-page-wrapper .company-welcome,html.dark-theme .auth-page-wrapper .hcm-features-section,html.dark-theme .auth-page-wrapper .product-info{background:#1e293be6;border-color:#ffffff1a}html.dark-theme .auth-container h1,html.dark-theme .auth-container h2{color:#f1f5f9}html.dark-theme .auth-container label,html.dark-theme .auth-container p{color:#94a3b8}html.dark-theme .auth-container input{background:#1e293b;border-color:#475569;color:#f1f5f9}html.dark-theme .auth-container input::placeholder{color:#64748b}html.dark-theme .execution-info{background:#1e293b;border-top-color:#334155;color:#93c5fd}html.dark-theme .results-connection-badge-inline{background:linear-gradient(135deg,#1e3a5f,#1e40af40);border-color:#3b82f6}html.dark-theme .results-connection-label,html.dark-theme .results-connection-name{color:#93c5fd}html.dark-theme .editor-section,html.dark-theme .query-section,html.dark-theme .tab-content{background:#0f172a}html.dark-theme .query-resize-handle{background:#334155}html.dark-theme .query-resize-handle:hover{background:#3b82f6}html.dark-theme .sql-autocomplete-dropdown{background:#1e293b;border-color:#475569;color:#e2e8f0}html.dark-theme .sql-autocomplete-item{color:#e2e8f0}html.dark-theme .sql-autocomplete-item.focused,html.dark-theme .sql-autocomplete-item:hover{background:#334155}html.dark-theme .modal-content{background:#1e293b;box-shadow:0 10px 40px #00000080}html.dark-theme .modal-header{border-bottom-color:#334155}html.dark-theme .modal-header h2{color:#f1f5f9}html.dark-theme .modal-content input,html.dark-theme .modal-content select{background:#0f172a;border-color:#475569;color:#f1f5f9}html.dark-theme .table-columns-inline{background:#334155;border-color:#475569}html.dark-theme .columns-header{color:#e2e8f0}html.dark-theme .columns-empty,html.dark-theme .columns-loading{color:#94a3b8}html.dark-theme .columns-list-header{background:#1e293b;color:#94a3b8}html.dark-theme .column-row{border-color:#334155;color:#e2e8f0}html.dark-theme .column-row:hover{background:#334155}html.dark-theme .col-name,html.dark-theme .columns-list-header span{color:#e2e8f0!important}html.dark-theme .col-length,html.dark-theme .col-nullable,html.dark-theme .col-type{color:#94a3b8!important}html.dark-theme .Toastify__toast{background:#1e293b;color:#f1f5f9}html.dark-theme .Toastify__progress-bar{background:#3b82f6}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74c3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-toast-width:320px;--toastify-toast-background:#fff;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error)}.Toastify__toast-container{box-sizing:border-box;color:#fff;padding:4px;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:320px;width:var(--toastify-toast-width);z-index:9999;z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:1em;top:1em}.Toastify__toast-container--top-center{left:50%;top:1em;transform:translateX(-50%)}.Toastify__toast-container--top-right{right:1em;top:1em}.Toastify__toast-container--bottom-left{bottom:1em;left:1em}.Toastify__toast-container--bottom-center{bottom:1em;left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{bottom:1em;right:1em}@media only screen and (max-width:480px){.Toastify__toast-container{left:0;margin:0;padding:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:0;transform:translateX(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:0;transform:translateX(0)}.Toastify__toast-container--rtl{left:auto;right:0}}.Toastify__toast{border-radius:4px;box-shadow:0 1px 10px 0 #0000001a,0 2px 15px 0 #0000000d;box-sizing:border-box;cursor:default;direction:ltr;display:flex;font-family:sans-serif;font-family:var(--toastify-font-family);justify-content:space-between;margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);overflow:hidden;padding:8px;position:relative;z-index:0}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-body{align-items:center;display:flex;flex:1 1 auto;margin:auto 0;padding:6px}.Toastify__toast-body>div:last-child{flex:1 1;word-break:break-word}.Toastify__toast-icon{-webkit-margin-end:10px;display:flex;flex-shrink:0;margin-inline-end:10px;width:20px}.Toastify--animate{animation-duration:.7s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}@media only screen and (max-width:480px){.Toastify__toast{border-radius:0;margin-bottom:0}}.Toastify__toast-theme--dark{background:#121212;background:var(--toastify-color-dark);color:#fff;color:var(--toastify-text-color-dark)}.Toastify__toast-theme--colored.Toastify__toast--default,.Toastify__toast-theme--light{background:#fff;background:var(--toastify-color-light);color:#757575;color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{background:#3498db;background:var(--toastify-color-info);color:#fff;color:var(--toastify-text-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{background:#07bc0c;background:var(--toastify-color-success);color:#fff;color:var(--toastify-text-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{background:#f1c40f;background:var(--toastify-color-warning);color:#fff;color:var(--toastify-text-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{background:#e74c3c;background:var(--toastify-color-error);color:#fff;color:var(--toastify-text-color-error)}.Toastify__progress-bar-theme--light{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:#bb86fc;background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:#3498db;background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:#07bc0c;background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:#f1c40f;background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:#e74c3c;background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning{background:#ffffffb3;background:var(--toastify-color-transparent)}.Toastify__close-button{align-self:flex-start;background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;transition:.3s ease}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:focus,.Toastify__close-button:hover{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{bottom:0;height:5px;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:9999;z-index:var(--toastify-z-index)}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{left:auto;right:0;transform-origin:right}.Toastify__spinner{animation:Toastify__spin .65s linear infinite;border:2px solid #e0e0e0;border-color:var(--toastify-spinner-color-empty-area);border-radius:100%;border-right-color:#616161;border-right-color:var(--toastify-spinner-color);box-sizing:border-box;height:20px;width:20px}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,0,0)}to{opacity:0;transform:translate3d(2000px,0,0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,0,0)}to{opacity:0;transform:translate3d(-2000px,0,0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,20px,0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--bottom-left,.Toastify__bounce-enter--top-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--bottom-right,.Toastify__bounce-enter--top-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--bottom-left,.Toastify__bounce-exit--top-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--bottom-right,.Toastify__bounce-exit--top-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{animation-timing-function:ease-in;opacity:0;transform:perspective(400px) rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px) rotateX(-20deg)}60%{opacity:1;transform:perspective(400px) rotateX(10deg)}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:perspective(400px)}30%{opacity:1;transform:perspective(400px) rotateX(-20deg)}to{opacity:0;transform:perspective(400px) rotateX(90deg)}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideOutRight{0%{transform:translateZ(0)}to{transform:translate3d(110%,0,0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translateZ(0)}to{transform:translate3d(-110%,0,0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translateZ(0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translateZ(0)}to{transform:translate3d(0,-500px,0);visibility:hidden}}.Toastify__slide-enter--bottom-left,.Toastify__slide-enter--top-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--bottom-right,.Toastify__slide-enter--top-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--bottom-left,.Toastify__slide-exit--top-left{animation-name:Toastify__slideOutLeft}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-name:Toastify__slideOutRight}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown}@keyframes Toastify__spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.App,.loading-screen{min-height:100vh}.loading-screen{align-items:center;display:flex;justify-content:center}.loader{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:50px;width:50px}button{cursor:pointer;transition:all .3s ease}button:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}button:active{transform:translateY(0)}button:disabled{cursor:not-allowed;opacity:.6;transform:none}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-thumb,::-webkit-scrollbar-track{background:#0000;border-radius:10px}:hover::-webkit-scrollbar-thumb{background:#888}::-webkit-scrollbar-thumb:hover{background:#555}.preferences-overlay{align-items:center;animation:prefFadeIn .2s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}@keyframes prefFadeIn{0%{opacity:0}to{opacity:1}}.preferences-modal{animation:prefSlideUp .25s ease;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:420px;padding:0;width:90%}@keyframes prefSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.preferences-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:16px 20px}.preferences-header h2{color:#1f2937;font-size:18px;font-weight:600;margin:0}.preferences-close{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:20px;line-height:1;padding:4px}.preferences-close:hover{background:#f3f4f6;color:#374151}.preferences-body{padding:20px}.preference-item{margin-bottom:0}.preference-label{align-items:center;color:#374151;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:10px}.preference-label input[type=checkbox]{accent-color:#3b82f6;cursor:pointer;height:18px;width:18px}.preference-description{color:#6b7280;font-size:13px;line-height:1.4;margin:8px 0 0 28px}.auth-page-wrapper{background:#e5e7eb;min-height:100vh;width:100%}.auth-page-wrapper--account{background:linear-gradient(180deg,#7dd3fc 0,#38bdf8 30%,#0ea5e9 70%,#0284c7);background-attachment:fixed;overflow:hidden;position:relative}.auth-page-wrapper--account .auth-container{position:relative;z-index:2}.auth-page-wrapper--account .auth-card{box-shadow:0 8px 32px #00000026}.cloudfish-bg{inset:0;pointer-events:none;position:absolute;z-index:1}.cloudfish-cloud{animation:cloudfish-float 25s ease-in-out infinite;background:#ffffffd9;border-radius:50%;position:absolute}.cloudfish-cloud--1{animation-delay:0s;animation-duration:30s;box-shadow:40px 10px 0 -5px #fffc,80px 0 0 -15px #ffffffbf;height:50px;left:5%;top:12%;width:120px}.cloudfish-cloud--2{animation-delay:-8s;animation-duration:35s;box-shadow:35px 5px 0 -8px #fffc,70px 15px 0 -12px #ffffffbf;height:45px;right:15%;top:25%;width:100px}.cloudfish-cloud--3{animation-delay:-15s;animation-duration:28s;box-shadow:30px 8px 0 -6px #fffc,60px 0 0 -10px #ffffffbf;height:40px;left:20%;top:45%;width:90px}.cloudfish-cloud--4{animation-delay:-5s;animation-duration:32s;box-shadow:28px 5px 0 -5px #fffc,55px 10px 0 -8px #ffffffbf;height:35px;right:25%;top:60%;width:80px}.cloudfish-cloud--5{animation-delay:-20s;animation-duration:40s;box-shadow:38px 8px 0 -8px #fffc,75px 5px 0 -14px #ffffffbf;height:48px;left:10%;top:75%;width:110px}@keyframes cloudfish-float{0%,to{transform:translateX(0) translateY(0)}25%{transform:translateX(15px) translateY(-8px)}50%{transform:translateX(-10px) translateY(5px)}75%{transform:translateX(20px) translateY(-3px)}}.cloudfish-fish{animation:cloudfish-swim linear infinite;opacity:.7;position:absolute}.cloudfish-fish img,.cloudfish-fish svg{display:block}.cloudfish-fish-img{height:100%;object-fit:contain;width:100%}.cloudfish-fish--1{animation-delay:0s;animation-duration:18s;height:32px;left:-50px;top:18%;width:48px}.cloudfish-fish--2{animation:cloudfish-swim-left 22s linear infinite;animation-delay:-3s;height:26px;right:-50px;top:35%;width:40px}.cloudfish-fish--3{animation-delay:-7s;animation-duration:20s;height:30px;left:-50px;top:55%;width:44px}.cloudfish-fish--4{animation:cloudfish-swim-left 25s linear infinite;animation-delay:-12s;height:24px;right:-50px;top:72%;width:36px}.cloudfish-fish--5{animation-delay:-5s;animation-duration:15s;height:22px;left:-50px;top:40%;width:32px}@keyframes cloudfish-swim{0%{transform:translateX(0) scaleX(-1)}to{transform:translateX(calc(100vw + 100px)) scaleX(-1)}}@keyframes cloudfish-swim-left{0%{transform:translateX(0)}to{transform:translateX(calc(-100vw - 100px))}}.auth-page-wrapper .auth-container{justify-content:flex-end;padding-right:60px}.auth-page-wrapper .company-info-section{color:#1f2937}.auth-page-wrapper .company-welcome,.auth-page-wrapper .hcm-features-section,.auth-page-wrapper .product-info{background:#ffffffe6;border-color:#00000014}.auth-container{align-items:center;display:flex;gap:40px;justify-content:center;margin:0 auto;max-width:1400px;min-height:100vh;padding:40px 20px}.company-info-section{animation:slideInLeft .6s ease;color:#fff;flex:1 1;max-width:600px}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}.company-logo{align-items:center;display:flex;gap:700px;justify-content:flex-start;margin-bottom:30px}.company-logo .logo-image{height:60px;object-fit:contain;width:auto}.company-logo .logo-slp{height:52px}.company-logo .logo-cloudfish{height:60px}.company-name{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#e0e7ff);-webkit-background-clip:text;background-clip:text;font-size:48px;font-weight:700;margin:0;text-shadow:0 2px 10px #0003}.company-tagline{font-size:18px;font-weight:300;margin:8px 0 0;opacity:.9}.company-welcome{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;margin-bottom:30px;padding:30px}.company-welcome h2{font-size:28px;font-weight:600;margin:0 0 20px}.company-description{font-size:16px;line-height:1.8;margin:0 0 15px;opacity:.95}.company-description:last-child{margin-bottom:0}.product-info{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;margin-bottom:30px;padding:30px}.hcm-features-section h3,.product-info h3{font-size:24px;font-weight:600;margin:0 0 20px}.hcm-features-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;margin-bottom:30px;padding:30px}.hcm-features-section .feature-list li strong{font-weight:600}.feature-list{list-style:none;margin:0;padding:0}.feature-list li{align-items:flex-start;display:flex;font-size:15px;gap:12px;line-height:1.6;margin-bottom:16px}.feature-list li:last-child{margin-bottom:0}.feature-icon{flex-shrink:0;font-size:24px}.company-footer{font-size:14px;opacity:.8;text-align:center}.company-footer p{margin:0}.auth-card{animation:slideUp .5s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;flex-shrink:0;max-width:450px;padding:40px;width:100%}@media (max-width:1024px){.auth-container{flex-direction:column;gap:30px}.company-info-section{max-width:100%}.company-name{font-size:36px}.company-welcome h2{font-size:24px}}.auth-header{margin-bottom:30px;text-align:center}.auth-header h1{color:#333;font-size:28px;margin-bottom:8px}.auth-header p{color:#666;font-size:14px}.auth-form{gap:20px}.auth-form,.form-group{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{color:#333;font-size:14px;font-weight:600}.form-group input{border:2px solid #e0e0e0;border-radius:8px;font-size:14px;padding:12px 16px;transition:all .3s ease}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.btn-primary{background:#1e40af;border:none;border-radius:8px;color:#fff;font-size:16px;font-weight:600;margin-top:10px;padding:14px;transition:background .3s ease}.btn-primary:hover{background:#1e3a8a}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.auth-footer{margin-top:24px;text-align:center}.auth-footer p{color:#666;font-size:14px}.link-button{background:none;border:none;color:#667eea;font-weight:600;padding:0;text-decoration:underline}.link-button:hover{color:#764ba2}.auth-divider{align-items:center;display:flex;gap:1rem;margin:1rem 0}.auth-divider:after,.auth-divider:before{background:#e0e0e0;content:"";flex:1 1;height:1px}.auth-divider span{color:#999;font-size:.85rem}.sso-sign-in-section{margin-top:.5rem}.sso-label{color:#333;font-size:.9rem;font-weight:600;margin:0 0 .5rem}.sso-loading{color:#666;font-size:.9rem;margin:0}.sso-buttons{display:flex;flex-direction:column;gap:.5rem}.btn-sso{background:#0000;border:2px solid #667eea;border-radius:8px;color:#667eea;cursor:pointer;font-size:.95rem;font-weight:600;padding:.75rem 1rem;transition:all .2s ease}.btn-sso:hover{background:#667eea;color:#fff}.btn-sso.btn-oracle{border-color:#c74634;color:#c74634}.btn-sso.btn-oracle:hover{background:#c74634;color:#fff}.btn-outline{background:#0000;border:2px solid #e0e0e0;border-radius:8px;color:#555;cursor:pointer;font-size:.9rem;padding:.5rem 1rem}.password-label-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.forgot-password-link{background:none;border:none;color:#667eea;cursor:pointer;font-size:14px;font-weight:500;padding:0;text-decoration:none;transition:color .2s ease}.forgot-password-link:hover{color:#764ba2;text-decoration:underline}.success-message{background:#d1fae5;border-left:4px solid #10b981;border-radius:6px;margin-bottom:20px;padding:20px}.success-message p{color:#065f46;margin:0 0 10px}.success-message .subtitle{color:#047857;font-size:14px;margin-top:10px}.error-text{color:#dc2626;font-size:14px;margin-bottom:0;margin-top:8px}.auth-actions,.auth-links{display:flex;flex-direction:column;gap:12px;margin-top:20px}.auth-links{text-align:center}.verification-content{padding:20px 0}.email-display{background:#f0f0f0;border-radius:8px;font-size:16px;margin-bottom:30px;padding:15px;text-align:center}.email-display strong{color:#667eea}.verification-instructions{margin-bottom:30px}.verification-instructions h3{color:#333;font-size:18px;margin-bottom:15px}.verification-instructions ol{color:#555;line-height:1.8;padding-left:20px}.verification-instructions li{margin-bottom:8px}.verification-tips{background:#fff8e1;border-left:4px solid #ffc107;border-radius:8px;margin-bottom:30px;padding:15px}.verification-tips h4{color:#f57c00;font-size:16px;margin:0 0 10px}.verification-tips ul{color:#666;font-size:14px;margin:0;padding-left:20px}.verification-tips li{margin-bottom:6px}.verification-actions{display:flex;flex-direction:column;gap:12px}.btn-resend{background:#3b82f6;border:none;border-radius:8px;color:#fff;font-size:16px;font-weight:600;padding:14px;transition:background .3s ease}.btn-resend:hover{background:#2563eb}.btn-resend:disabled{cursor:not-allowed;opacity:.6}.btn-back{background:#6b7280;border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:600;padding:12px}.btn-back:hover{background:#4b5563}.account-card{max-width:480px;width:100%}.account-section{border-bottom:1px solid #e5e7eb;margin-bottom:24px;padding-bottom:20px}.account-section:last-of-type{border-bottom:none}.account-section h3{color:#6b7280;font-size:14px;font-weight:600;letter-spacing:.05em;margin:0 0 8px;text-transform:uppercase}.account-value{color:#1f2937;font-size:16px;margin:0}.account-plan-badge{border-radius:8px;display:inline-block;font-size:16px;font-weight:600;margin:0 0 8px;padding:6px 14px}.account-plan-badge--free_trial{background:#dbeafe;color:#1d4ed8}.account-plan-badge--silver{background:#e5e7eb;color:#4b5563}.account-plan-badge--gold,.account-plan-badge--gold_yearly{background:#fef3c7;color:#b45309}.account-plan-desc{color:#6b7280;font-size:14px;margin:0}.account-trial-expiry{color:#b45309;font-size:14px;margin:.5rem 0 0}.account-hint{color:#6b7280;font-size:14px;margin:0 0 16px}.auth-btn-link{background:none;border:none;color:#e85d2c;cursor:pointer;font-size:14px;padding:0;text-decoration:none}.auth-btn-link:hover{text-decoration:underline}.account-actions{display:flex;flex-wrap:wrap;gap:12px}.account-actions .auth-btn{display:inline-block;text-align:center;text-decoration:none}.account-footer{border-top:1px solid #e5e7eb;display:flex;gap:12px;margin-top:24px;padding-top:20px}.auth-btn-ghost{background:#0000;color:#6b7280}.auth-btn-ghost:hover{background:#f3f4f6;color:#374151}.auth-error{color:#dc2626;margin-bottom:16px}.auth-landing-container{justify-content:center}.auth-landing-buttons{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.auth-landing-hint{color:#6b7280;font-size:14px;margin:0;text-align:center}.auth-btn{border:2px solid #0000;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;padding:14px 20px;transition:all .2s ease}.auth-btn-block{width:100%}.auth-btn-primary{background:#1e40af;border-color:#1e40af;color:#fff}.auth-btn-primary:hover{background:#1e3a8a;border-color:#1e3a8a}.auth-btn-outline{background:#0000;border-color:#1e40af;color:#1e40af}.auth-btn-outline:hover{background:#1e40af14}.dashboard{background:#f1f5f9;min-height:100vh}.dashboard-header{background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px #00000014;justify-content:space-between;padding:8px 16px}.dashboard-header,.header-left{align-items:center;display:flex}.header-left{flex:1 1;gap:12px}.logo-container{align-items:center;display:flex;gap:8px}.logo-image{height:32px;object-fit:contain;width:auto}.logo-slp{height:35px;margin-right:0}.logo-cloudfish{height:39px}.header-left h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#2563eb);-webkit-background-clip:text;background-clip:text;color:#333;font-size:24px;margin:0}.company-badge{color:#64748b;font-weight:500}.company-badge,.user-info{background:#f1f5f9;border-radius:4px;font-size:12px;padding:4px 8px}.user-info{color:#475569}.connection-status{background:#f0fdf4;border:1px solid #86efac;border-radius:6px;color:#10b981;font-size:13px;font-weight:500;padding:6px 12px}.connection-status strong{color:#059669;font-weight:600}.connection-status.no-connection{background:#fffbeb;border-color:#fde68a;color:#f59e0b}.header-right{flex:1 1;gap:12px;justify-content:flex-end}.header-controls,.header-right{align-items:center;display:flex}.header-controls{gap:8px}.connection-badge-header{align-items:center;background:linear-gradient(135deg,#10b98115,#05966915);border:1px solid #86efac;border-radius:6px;color:#059669;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:6px 12px}.connection-badge-header.no-connection{background:linear-gradient(135deg,#f59e0b15,#d9770615);border-color:#fde68a;color:#d97706}.connection-badge-worksheet{align-items:center;background:#334155;border:1px solid #334155;border-radius:4px;color:#fff;display:inline-flex;font-size:13px;font-weight:600;gap:4px;margin-left:auto;padding:4px 8px;white-space:nowrap}.connection-badge-worksheet.no-connection{background:#334155;border-color:#334155;color:#fff}.mode-selector-header{align-items:center;display:flex;gap:6px;white-space:nowrap}.mode-selector-header label{color:#666;font-size:13px;font-weight:600}.mode-selector-header select{background:#fff;border:2px solid #e0e0e0;border-radius:6px;cursor:pointer;font-size:13px;padding:6px 10px}.mode-selector-header select:focus{border-color:#3b82f6;outline:none}.mode-selector-worksheet{align-items:center;display:flex;gap:4px;white-space:nowrap}.mode-selector-worksheet label{color:#4f46e5;font-size:13px;font-weight:600}.mode-selector-worksheet select{background:#fff;border:2px solid #e0e0e0;border-radius:4px;cursor:pointer;font-size:13px;padding:4px 8px}.mode-selector-worksheet select:focus{border-color:#3b82f6;outline:none}.row-limit-selector-header{align-items:center;display:flex;gap:6px;white-space:nowrap}.row-limit-selector-header label{color:#666;font-size:13px;font-weight:600}.row-limit-selector-header input{border:2px solid #e0e0e0;border-radius:6px;font-size:13px;padding:6px 10px}.row-limit-selector-header input:focus{border-color:#3b82f6;outline:none}.btn-account{border-radius:4px;color:#4f46e5;font-size:14px;font-weight:600;padding:8px 12px;text-decoration:none;white-space:nowrap}.btn-account:hover{background:#4f46e51a}.btn-logout{background:#ff4757;border:none;border-radius:4px;color:#fff;font-size:16px;font-weight:600;padding:10px 16px;white-space:nowrap}.btn-logout:hover{background:#e84051}.dashboard-content{display:flex;height:calc(100vh - 60px)}.dashboard-header .menu-bar{margin-left:12px}.sidebar{background:linear-gradient(180deg,#334155,#1e293b);border-right:1px solid #475569;height:100%;min-width:217px;overflow-y:auto;padding:8px 12px;position:relative;width:217px}.sidebar,.sidebar-section{display:flex;flex-direction:column}.sidebar-section{flex-shrink:0}.sidebar-section:first-child{flex:0 0 auto;margin-bottom:0;max-height:calc(100vh - 400px);overflow-x:hidden;overflow-y:auto}.sidebar-section:last-child{background:linear-gradient(180deg,#334155,#1e293b);border-top:1px solid #475569;left:0;padding:0 12px;position:absolute;right:0;top:411px;z-index:5}.sidebar-section h3{color:#e2e8f0;font-size:14px;font-weight:600;letter-spacing:.02em;margin-bottom:8px}.main-content{display:flex;flex:1 1;flex-direction:column;margin-left:0;overflow:hidden;padding-left:0}.tabs{background:#fff;border-bottom:2px solid #e0e0e0;display:flex;padding:0 24px}.tab{background:none;border:none;border-bottom:3px solid #0000;color:#666;font-size:14px;font-weight:600;margin-bottom:-2px;padding:16px 24px;transition:all .3s ease}.tab:hover{box-shadow:none;color:#3b82f6;transform:none}.tab.active{border-bottom-color:#3b82f6;color:#3b82f6}.worksheet-tabs{background:#fff;border-bottom:2px solid #e0e0e0}.worksheet-tabs-container{align-items:center;display:flex;gap:8px;justify-content:space-between;padding:0 12px}.worksheet-tabs-list{display:flex;flex:1 1;gap:4px;overflow-x:auto}.worksheet-tabs-controls{align-items:center;display:flex;flex-shrink:0;gap:12px}.worksheet-tab{align-items:center;background:#e2e8f0;border:1px solid #cbd5e1;border-bottom:none;border-radius:6px 6px 0 0;cursor:pointer;display:flex;gap:6px;margin-bottom:-2px;max-width:180px;min-width:100px;padding:6px 10px;transition:all .2s ease}.worksheet-tab:hover{background:#c7d2fe;border-color:#a5b4fc;box-shadow:none;color:#2563eb;transform:none}.worksheet-tab.active{background:#fff;border:2px solid #3b82f6;border-bottom-color:#fff;box-shadow:0 -2px 8px #3b82f614;margin-bottom:-2px;position:relative;z-index:1}.worksheet-tab.active .worksheet-name{color:#3b82f6}.worksheet-name{color:#3b82f6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.worksheet-name,.worksheet-name-input{flex:1 1;font-size:14px;font-weight:600}.worksheet-name-input{background:#fff;border:1px solid #3b82f6;border-radius:4px;color:#475569;max-width:150px;min-width:60px;outline:none;padding:2px 4px}.worksheet-name-input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.btn-close-worksheet{background:none;border:none;border-radius:3px;color:#64748b;cursor:pointer;font-size:16px;padding:2px 4px;transition:all .2s ease}.btn-close-worksheet:hover{background:#fef2f2;box-shadow:none;color:#dc2626;transform:none}.btn-new-worksheet{background:#3b82f6;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;margin-left:4px;padding:4px 10px;transition:all .2s ease}.btn-new-worksheet:hover{background:#2563eb;box-shadow:0 2px 12px #3b82f666;transform:scale(1.05)}.worksheet-tabs-list::-webkit-scrollbar{height:4px}.worksheet-tabs-list::-webkit-scrollbar-track{background:#0000}.worksheet-tabs-list::-webkit-scrollbar-thumb{background:#0000;border-radius:2px}.worksheet-tabs-list:hover::-webkit-scrollbar-thumb{background:#c1c1c1}.tab-content{flex:1 1;margin-left:0;overflow:auto;padding:0 24px 24px 0}.history-placeholder{color:#999;font-size:16px;padding:60px 20px;text-align:center}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:#0000}.sidebar::-webkit-scrollbar-thumb{background:#0000;border-radius:3px}.sidebar:hover::-webkit-scrollbar-thumb{background:#475569}.sidebar::-webkit-scrollbar-thumb:hover{background:#64748b}.ai-sidekick-container{align-items:center;bottom:24px;display:flex;flex-direction:column;gap:8px;position:fixed;right:24px;z-index:900}.ai-chat-fab{align-items:center;background:#ffe4b5;border:3px solid #ffffffe6;border-radius:50%;box-shadow:0 4px 16px #ffa5004d,0 0 0 2px #ffc86433;box-sizing:border-box;cursor:pointer;display:flex;height:64px;justify-content:center;padding:4px;transition:transform .2s,box-shadow .2s;width:64px}.ai-chat-fab:hover{box-shadow:0 6px 24px #ffa50066,0 0 0 3px #ffc8644d;transform:scale(1.08)}.ai-sidekick-icon{border-radius:50%;height:100%;object-fit:contain;width:100%}.ai-sidekick-label{background:#ffe4b5f2;border:1px solid #ffc86466;border-radius:12px;box-shadow:0 2px 8px #ffa50033;color:#8b4513;font-size:13px;font-weight:600;padding:4px 10px;pointer-events:none;white-space:nowrap}.ai-chat-panel{animation:ai-panel-in .2s ease;background:#ffe4b5;border:2px solid #ffc86466;border-radius:16px;bottom:108px;box-shadow:0 10px 40px #ffa50033,0 0 0 1px #ffc8644d;display:flex;flex-direction:column;max-height:420px;overflow:hidden;position:fixed;right:24px;width:380px;z-index:899}@keyframes ai-panel-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ai-chat-panel-header{align-items:center;background:#ffe4b5e6;border-bottom:1px solid #ffc8644d;display:flex;justify-content:space-between;padding:14px 16px}.ai-chat-panel-title{align-items:center;display:flex;gap:10px}.ai-sidekick-header-icon{background:#fff9;border-radius:50%;box-shadow:0 2px 4px #ffa50033;height:32px;object-fit:contain;padding:2px;width:32px}.ai-chat-panel-header h3{color:#8b4513;font-size:16px;font-weight:600;margin:0}.ai-chat-panel-close{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;font-size:14px;height:28px;line-height:1;width:28px}.ai-chat-panel-close:hover{background:#e5e7eb;color:#374151}.ai-chat-panel-hint{background:#ffe4b599;color:#8b6f47;font-size:12px;margin:0;padding:10px 16px}.ai-chat-panel-prompt{background:#fff;border:1px solid #ffc86466;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:13px;margin:0 16px 12px;min-height:72px;padding:10px 12px;resize:vertical}.ai-chat-panel-prompt:focus{border-color:orange;box-shadow:0 0 0 2px #ffa50033;outline:none}.ai-chat-panel-actions{padding:0 16px 12px}.ai-chat-btn-generate{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px}.ai-chat-btn-generate:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1e40af)}.ai-chat-btn-generate:disabled{cursor:not-allowed;opacity:.7}.ai-chat-panel-error{background:#fef2f2;border-radius:8px;color:#dc2626;font-size:12px;margin:0 16px 12px;padding:8px 16px}.ai-chat-panel-result{background:#ffe4b566;border-top:1px solid #ffc8644d;flex:1 1;min-height:0;overflow-y:auto;padding:12px 16px 16px}.ai-chat-panel-result label{color:#6b7280;display:block;font-size:11px;font-weight:600;margin-bottom:6px}.ai-chat-generated-sql{background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px;font-family:Courier New,monospace;font-size:12px;margin:0 0 10px;max-height:140px;overflow-y:auto;padding:10px;white-space:pre-wrap;word-break:break-word}.ai-chat-btn-insert{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;padding:6px 14px}.ai-chat-btn-insert:hover{background:#059669}.connection-manager{display:flex;flex-direction:column;gap:0}.btn-add-connection{align-items:center;background:linear-gradient(135deg,#fed7aa,#fdba74);border:1px solid #fb923c;border-radius:4px;color:#c2410c;cursor:pointer;display:flex;font-size:16px;font-weight:600;height:28px;justify-content:center;line-height:1;min-width:28px;padding:0;transition:all .2s ease}.btn-add-connection:hover{background:linear-gradient(135deg,#fdba74,#fb923c);box-shadow:0 2px 6px #fb923c4d;transform:scale(1.05)}.modal-overlay{align-items:center;animation:fadeIn .2s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:slideUp .3s ease;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-height:90vh;max-width:500px;overflow-y:auto;padding:0;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:12px 16px}.modal-header h4{color:#333;font-size:16px;font-weight:600;margin:0}.btn-close-modal{align-items:center;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.btn-close-modal:hover{background:#f3f4f6;color:#374151}.connection-form{animation:slideDown .3s ease;background:#f8f9fa;border-radius:8px;padding:16px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.connection-form h4{color:#333;font-size:16px;margin:0 0 12px}.modal-content form{display:flex;flex-direction:column;gap:8px;padding:16px}.connection-form form{display:flex;flex-direction:column;gap:10px}.modal-content input{border:2px solid #e5e7eb;border-radius:6px;font-size:13px;padding:8px;transition:border-color .2s ease}.modal-content input:focus{border-color:#3b82f6;outline:none}.modal-content input:disabled{background-color:#f3f4f6;color:#6b7280;cursor:not-allowed}.connection-form input{border:1px solid #ddd;border-radius:6px;font-size:13px;padding:10px}.connection-form input:focus{border-color:#3b82f6;outline:none}.modal-content .form-actions{display:flex;gap:8px;margin-top:8px}.form-actions{display:flex;gap:6px;margin-top:6px}.btn-save{background:#10b981}.btn-cancel,.btn-save{border:none;border-radius:4px;color:#fff;flex:1 1;font-size:12px;font-weight:600;padding:8px}.btn-cancel{background:#6b7280}.connections-list{display:flex;flex-direction:column;gap:2px}.empty-state{color:#999;padding:40px 20px;text-align:center}.empty-state p{margin:4px 0}.empty-state .hint{font-size:12px}.connection-item{align-items:center;background:#f8f9fa;border:2px solid #0000;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;padding:0;transition:all .2s ease}.connection-item:hover{border-color:#3b82f6;box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.connection-item.active{background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:#3b82f6}.connection-item.active .connection-name{color:#fff}.connection-info{flex:1 1;min-width:0}.connection-name{color:#333;font-size:11px;font-weight:600}.connection-name,.connection-url{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.connection-url{color:#666;font-size:12px}.connection-actions{display:flex;gap:4px}.btn-icon{background:none;border:none;border-radius:4px;cursor:pointer;font-size:16px;padding:6px;transition:all .2s ease}.btn-icon:hover{background:#0000000d;box-shadow:none;transform:scale(1.1)}.btn-icon.btn-delete:hover{background:#fee}.auth-type-selector{margin-bottom:12px}.auth-type-selector label{color:#333;display:block;font-size:13px;font-weight:600;margin-bottom:8px}.auth-type-buttons{display:flex;gap:8px}.auth-type-btn{background:#fff;border:2px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;flex:1 1;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s ease}.auth-type-btn:hover{border-color:#3b82f6;color:#3b82f6}.auth-type-btn.active{border-color:#3b82f6}.auth-type-btn.active,.btn-sso-initiate{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.btn-sso-initiate{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;margin-top:8px;padding:10px 16px;transition:all .2s ease;width:100%}.btn-sso-initiate:hover:not(:disabled){background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.btn-sso-initiate:disabled{cursor:not-allowed;opacity:.6;transform:none}.connections-view{background:#f8fafc;display:flex;flex-direction:column;height:100%;min-height:0}.connections-view--empty{align-items:center;justify-content:center}.connections-empty-state{color:#64748b;padding:48px 24px;text-align:center}.connections-empty-state p{font-size:16px;margin:0 0 8px}.connections-empty-hint{font-size:14px;margin-bottom:24px}.btn-add-connection-large{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 24px;transition:all .2s ease}.btn-add-connection-large:hover{box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.connections-tabs{background:#fff;border-bottom:1px solid #e2e8f0;flex-shrink:0;padding:0 16px}.connections-tabs-list{align-items:center;display:flex;gap:4px;overflow-x:auto;padding:8px 0}.connections-tab{background:#f1f5f9;border:1px solid #0000;border-radius:8px 8px 0 0;color:#64748b;cursor:pointer;flex-shrink:0;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease}.connections-tab:hover{background:#e2e8f0;color:#334155}.connections-tab.active{background:#fff;border-color:#e2e8f0 #e2e8f0 #fff;color:#2563eb;font-weight:600;margin-bottom:-1px}.connections-tab-name{display:inline-block;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-new-connection-tab{align-items:center;background:#fff;border:1px dashed #cbd5e1;border-radius:8px;color:#64748b;cursor:pointer;display:flex;flex-shrink:0;font-size:20px;height:36px;justify-content:center;transition:all .2s ease;width:36px}.btn-new-connection-tab:hover{border-color:#3b82f6;color:#3b82f6}.connections-detail{flex:1 1;overflow-y:auto;padding:24px}.connections-detail-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #00000014;max-width:560px;padding:24px}.connections-detail-header{align-items:flex-start;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.connections-detail-header h3{color:#1e293b;font-size:20px;font-weight:600;margin:0}.connections-detail-actions{display:flex;gap:8px}.btn-delete-connection,.btn-edit-connection{border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s ease}.btn-edit-connection{background:#3b82f6;color:#fff}.btn-edit-connection:hover{background:#2563eb}.btn-delete-connection{background:#fef2f2;color:#dc2626}.btn-delete-connection:hover{background:#fee2e2}.connections-detail-fields{grid-gap:16px;display:grid;gap:16px;margin:0}.connections-detail-row{grid-gap:16px;align-items:baseline;display:grid;gap:16px;grid-template-columns:140px 1fr}.connections-detail-row dt{color:#64748b;font-size:13px;font-weight:600;margin:0}.connections-detail-row dd{color:#334155;font-size:14px;margin:0;word-break:break-all}.connections-detail-masked{font-family:monospace;letter-spacing:.1em}.connections-detail-hint{color:#94a3b8;font-size:13px;margin:20px 0 0}html.dark-theme .connections-view{background:#1e293b}html.dark-theme .connections-tabs{background:#0f172a;border-bottom-color:#334155}html.dark-theme .connections-tab{background:#334155;color:#94a3b8}html.dark-theme .connections-tab:hover{background:#475569;color:#e2e8f0}html.dark-theme .connections-tab.active{background:#1e293b;border-color:#334155 #334155 #1e293b;color:#60a5fa}html.dark-theme .connections-detail-card{background:#0f172a;border-color:#334155}html.dark-theme .connections-detail-header h3{color:#f1f5f9}html.dark-theme .connections-detail-row dt{color:#94a3b8}html.dark-theme .connections-detail-row dd{color:#e2e8f0}html.dark-theme .connections-detail-hint{color:#64748b}.db-browser{border-top:none;display:flex;flex-direction:column;flex-shrink:0;margin-top:0;min-height:0;padding-top:0}.db-browser-title{align-items:center;box-sizing:border-box;color:#e2e8f0;display:flex;font-size:14px;font-weight:600;height:32px;letter-spacing:.02em;line-height:1;margin:0 0 10px;padding:0}.db-browser-title:before{background:linear-gradient(135deg,#38bdf8,#3b82f6);border-radius:2px;box-shadow:0 0 4px #94a3b8cc;content:"";display:inline-block;height:10px;margin-right:6px;vertical-align:middle;width:10px}.db-browser-empty,.db-browser-error,.db-browser-hint,.db-browser-loading{color:#94a3b8;font-size:12px;margin:0;padding:8px 0}.db-browser-error{color:#fca5a5}.db-browser-list{display:flex;flex-direction:column;gap:0;list-style:none;margin:0;max-height:240px;overflow-y:auto;padding:0}.db-browser-list::-webkit-scrollbar{width:5px}.db-browser-list::-webkit-scrollbar-thumb,.db-browser-list::-webkit-scrollbar-track{background:#0000;border-radius:3px}.db-browser-list:hover::-webkit-scrollbar-thumb{background:#475569}.db-browser-item{color:#fff;font-family:Courier New,monospace;font-size:12px;font-weight:500;line-height:1.5;padding:4px 4px 4px 0;white-space:normal;word-break:break-all}.db-browser-item:hover{background:#334155b3;border-color:#475569}.query-editor{gap:0;margin-left:0;padding:4px 4px 4px 1px}.query-editor,.query-editor-with-browser{display:flex;flex-direction:column;height:100%}.editor-main{justify-content:space-between;overflow:hidden}.editor-main,.editor-section{display:flex;flex:1 1;gap:0;margin-left:0;padding-left:0}.editor-section{flex-direction:column;margin-bottom:0;margin-top:0;min-height:0;min-width:0;overflow-y:auto;position:relative}.browser-section{align-self:stretch;border-left:1px solid #e0e0e0;flex-shrink:0;margin:0;overflow:hidden;padding:0;width:280px}.export-buttons-inline .btn-export.hdl:hover{justify-content:space-between}.editor-header{align-items:center;border-radius:6px;box-shadow:0 1px 2px #0000000d;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding:8px 12px}.header-info{align-items:center;display:flex;gap:16px}.header-info h2{background:linear-gradient(135deg,#667eea15,#764ba215);color:#667eea;margin:0}.mode-selector{align-items:center;display:flex;gap:6px;white-space:nowrap}.mode-selector label{color:#666;font-size:13px;font-weight:600}.mode-selector select{background:#fff;border:2px solid #e0e0e0;border-radius:6px;cursor:pointer;font-size:13px;padding:6px 10px}.mode-selector select:focus{border-color:#667eea;outline:none}.method-selector{align-items:center;display:flex;gap:6px;white-space:nowrap}.method-selector label{color:#666;font-size:13px;font-weight:600}.method-selector select{background:#fff;border:2px solid #e0e0e0;border-radius:6px;cursor:pointer;font-size:13px;padding:6px 10px}.method-selector select:focus{border-color:#667eea;outline:none}.row-limit-selector{align-items:center;display:flex;gap:6px;white-space:nowrap}.row-limit-selector label{color:#666;font-size:13px;font-weight:600}.row-limit-selector input{background:#fff;border:2px solid #e0e0e0;border-radius:6px;font-size:13px;padding:6px 10px;width:80px}.row-limit-selector input:focus{border-color:#667eea;outline:none}.row-limit-selector-inline{align-items:center;display:flex;gap:6px;white-space:nowrap}.row-limit-selector-inline label{color:#3b82f6;font-size:13px;font-weight:600}.row-limit-selector-inline input{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:2px solid #3b82f6;border-radius:6px;color:#2563eb;font-size:13px;font-weight:600;padding:6px 10px;width:80px}.row-limit-selector-inline input:focus{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.editor-toolbar .btn-export:disabled{cursor:not-allowed;opacity:.5}.execute-clear-group{align-items:center;display:flex;gap:6px;margin-right:4px}.btn-execute,.editor-toolbar .btn-execute{background:#22c55e;border-radius:8px;color:#fff;min-width:36px;padding:8px 14px!important}.btn-execute:hover:not(:disabled),.editor-toolbar .btn-execute:hover:not(:disabled){background:#16a34a}.btn-execute:disabled,.editor-toolbar .btn-execute:disabled{background:#d1d5db;cursor:not-allowed;opacity:.5}.btn-execute .btn-execute-icon{color:#fff;font-size:14px;line-height:1}.btn-execute .btn-execute-loading{color:#0f172a;font-size:14px;font-weight:600}.btn-execute.executing .btn-execute-loading{animation:pulse 1s ease-in-out infinite}@keyframes pulse{50%{opacity:.6}}.query-textarea-wrapper{display:flex;flex:1 1;margin:0;min-height:250px;padding:0;position:relative}.query-textarea-line-numbers{background:#f1f5f9;border-right:2px solid #cbd5e1;color:#64748b;font-size:12px;font-weight:500;left:1px;overflow:hidden;padding:8px 4px;text-align:right;-webkit-user-select:none;user-select:none;width:40px;z-index:3}.query-textarea-highlight,.query-textarea-line-numbers{bottom:0;font-family:Courier New,monospace;line-height:1.5;pointer-events:none;position:absolute;top:0}.query-textarea-highlight{word-wrap:break-word;background:#fff;border:none;border-radius:0;box-sizing:border-box;color:#333;font-size:14px;left:0;margin:0;overflow:auto;padding:8px 16px 8px 43px;right:0;scrollbar-color:#0000 #0000;scrollbar-width:thin;white-space:pre-wrap;z-index:0}.query-textarea-highlight::-webkit-scrollbar{height:0;width:0}.query-textarea-highlight .token.atrule,.query-textarea-highlight .token.keyword{color:#06c;font-weight:600}.query-textarea-highlight .token.attr-value,.query-textarea-highlight .token.char,.query-textarea-highlight .token.string{color:#c41a16}.query-textarea-highlight .token.cdata,.query-textarea-highlight .token.comment,.query-textarea-highlight .token.doctype,.query-textarea-highlight .token.prolog{color:green;font-style:italic}.query-textarea-highlight .token.builtin,.query-textarea-highlight .token.function{color:teal}.query-textarea-highlight .token.number{color:#f60}.query-textarea-highlight .token.entity,.query-textarea-highlight .token.operator,.query-textarea-highlight .token.punctuation{color:#333}.query-textarea-highlight .token.attr-name,.query-textarea-highlight .token.boolean,.query-textarea-highlight .token.constant,.query-textarea-highlight .token.deleted,.query-textarea-highlight .token.inserted,.query-textarea-highlight .token.property,.query-textarea-highlight .token.selector,.query-textarea-highlight .token.symbol,.query-textarea-highlight .token.tag{color:#06c}.query-textarea-highlight .token.class-name{color:#267f99}.query-textarea-highlight .token.important,.query-textarea-highlight .token.regex,.query-textarea-highlight .token.variable{color:#f60}.query-textarea-highlight .token.keyword.operator{color:#06c}.query-textarea{background:#fff;border:none;border-bottom:1px solid #e0e0e0;border-radius:0;box-shadow:none;box-sizing:border-box;flex:1 1;font-family:Courier New,monospace;font-size:14px;line-height:1.5;margin:0;min-height:250px;overflow-y:auto;padding:8px 16px 8px 43px;position:relative;resize:none;width:100%;z-index:2}.query-textarea-with-highlight{background:#0000!important;caret-color:#333;color:#0000!important;text-shadow:0 0 0 #0000}.query-textarea-with-highlight::selection{background:#007bff4d}.query-textarea:focus{border:none;outline:none}.query-textarea::placeholder{color:#aaa}.btn-format,.editor-toolbar .btn-format{background:#3b82f6;color:#fff}.btn-format:hover:not(:disabled),.editor-toolbar .btn-format:hover:not(:disabled){background:#2563eb}.btn-format:disabled,.editor-toolbar .btn-format:disabled{cursor:not-allowed;opacity:.5}.execution-info{background:#f0f9ff;border-top:1px solid #bae6fd;color:#0369a1;font-size:11px;margin:0;padding:4px 8px}.action-buttons-bar{align-items:center;background:#e5e7eb;border-bottom:1px solid #d1d5db;border-radius:0;border-top:1px solid #d1d5db;box-shadow:none;display:flex;flex-shrink:0;flex-wrap:nowrap;gap:8px;justify-content:space-between;margin:0;padding:2px 8px}.action-buttons-left,.action-buttons-right{align-items:center;display:flex;gap:6px}.action-buttons-right{margin-left:auto}.action-buttons-bar .editor-toolbar{align-items:center;display:flex;gap:4px;margin-left:0}.editor-toolbar button{border:none!important;border-radius:4px!important;cursor:pointer;font-weight:500;transition:all .2s}.editor-toolbar button,.editor-toolbar button:disabled{box-sizing:border-box;font-size:12.5px!important;height:auto;line-height:1.25;min-height:26px;padding:5px 12px!important}.editor-toolbar .btn-clear{background:#ef4444;border-radius:8px;color:#fff;min-width:36px;padding:8px 14px!important}.editor-toolbar .btn-clear:hover:not(:disabled){background:#dc2626}.editor-toolbar .btn-clear:disabled{cursor:not-allowed;opacity:.5}.editor-toolbar .btn-clear .btn-clear-icon{color:#fff;font-size:16px;font-weight:300;line-height:1}.editor-toolbar .btn-export{background:#3b82f6;color:#fff;margin-left:8px}.editor-toolbar .btn-export.csv{margin-left:250px}.editor-toolbar .btn-export:hover:not(:disabled){background:#2563eb}.results-connection-badge-inline{align-items:center;background:linear-gradient(135deg,#e0f2fe,#bae6fd);border:2px solid #0ea5e9;border-radius:4px;box-shadow:0 2px 4px #0ea5e933;display:inline-flex;gap:6px;margin-left:8px;padding:4px 10px}.results-connection-label{color:#0369a1;font-size:12px;font-weight:600}.results-connection-name{color:#0c4a6e;font-size:12px;font-weight:700}.editor-toolbar .btn-cancel{align-items:center;background:#dc2626;border:2px solid #991b1b;border-radius:8px;box-shadow:0 2px 4px #dc26264d;color:#fff;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;justify-content:center;min-width:40px;padding:8px 16px;transition:all .2s ease}.editor-toolbar .btn-cancel:hover{background:#b91c1c;border-color:#7f1d1d;box-shadow:0 4px 8px #dc262666;transform:translateY(-1px)}.editor-toolbar .btn-cancel:active{box-shadow:0 2px 4px #dc26264d;transform:translateY(0)}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.error-panel-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.error-panel h3{color:#dc2626;font-size:16px;margin:0}.error-panel-close{align-items:center;background:#fecaca;border:1px solid #dc2626;border-radius:6px;color:#991b1b;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;height:28px;justify-content:center;line-height:1;transition:background .2s,color .2s;width:28px}.error-panel-close:hover{background:#dc2626;color:#fff}.error-panel-content{display:flex;flex-direction:column;gap:16px}.error-message{margin:0}.error-plain-explanation{background:#fef2f2;border-left:4px solid #dc2626}.error-did-you-mean,.error-plain-explanation{border-radius:6px;color:#374151;font-size:13px;padding:10px 12px}.error-did-you-mean{background:#ecfdf5;border-left:4px solid #059669}.error-did-you-mean .suggested-table{background:#d1fae5;border-radius:4px;font-family:Courier New,monospace;font-size:12px;padding:2px 6px}.error-typo-suggestion{background:#fffbeb;border-left:4px solid #f59e0b;border-radius:6px;color:#374151;font-size:13px;padding:10px 12px}.error-panel pre{word-wrap:break-word;background:#fff;border-radius:6px;color:#991b1b;font-family:Courier New,monospace;font-size:13px;line-height:1.6;margin:0;overflow-x:auto;padding:12px;white-space:pre-wrap}.error-line-info{background:#fef2f2;border-left:4px solid #dc2626;border-radius:6px;padding:12px}.error-line-label{color:#991b1b;font-size:12px;font-weight:600;letter-spacing:.05em;margin-bottom:8px;text-transform:uppercase}.error-line-code{align-items:flex-start;display:flex;font-family:Courier New,monospace;font-size:13px;gap:8px}.error-line-number{color:#dc2626;font-weight:700;min-width:40px;text-align:right}.error-line-code code{background:#fff;border:1px solid #fecaca;border-radius:4px;color:#1f2937;flex:1 1;padding:4px 8px}.error-line-caret{color:#dc2626;font-family:Courier New,monospace;font-size:13px;letter-spacing:0;padding:0 8px 4px}.error-suggestions{background:#fffbeb;border-left:4px solid #f59e0b;border-radius:6px;padding:12px}.error-suggestions-label{color:#92400e;font-size:12px;font-weight:600;letter-spacing:.05em;margin-bottom:8px;text-transform:uppercase}.error-suggestions-list{color:#78350f;font-size:13px;line-height:1.8;margin:0;padding-left:20px}.error-suggestions-list li{margin-bottom:6px}.error-suggestions-list li:last-child{margin-bottom:0}.query-section{background:#fff;border:none;border-radius:0;box-shadow:none;display:flex;flex-direction:column;flex-shrink:0;gap:0;margin:0;min-height:150px;overflow:hidden;padding:0}.query-resize-handle{background:#e5e7eb;cursor:row-resize;flex-shrink:0;height:6px;transition:background .15s ease}.query-resize-handle:hover{background:#3b82f6}.results-section{background:#fff;border:none;border-radius:0;border-top:1px solid #e0e0e0;box-shadow:none;display:flex;flex:1 1;flex-direction:column;gap:0;margin-bottom:0;margin-top:0;max-height:calc(100vh - 280px);min-height:300px;overflow-y:auto;padding:2px}.results-section .results-view{display:flex;flex-direction:column;height:100%;overflow:hidden}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.section-header h3{color:#333;font-size:16px;font-weight:600;margin:0}.no-results-message{background:#f9fafb;border-radius:8px;color:#999;font-style:italic;padding:40px;text-align:center}.results-view{animation:fadeIn .3s ease;background:#fff;border:none;border-radius:0;box-shadow:none;display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.results-empty{color:#999;padding:40px;text-align:center}.results-header{background:#f8f9fa;justify-content:space-between;padding:16px}.results-header,.results-info{align-items:center;display:flex}.results-info{gap:12px}.results-info h3{color:#333;font-size:18px;margin:0}.row-count{background:#667eea;border-radius:12px;color:#fff;font-size:13px;font-weight:600;padding:4px 12px}.export-buttons{display:flex;gap:8px}.btn-export{border:none;border-radius:6px;color:#fff;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s ease}.btn-export.csv{background:#10b981}.btn-export.hdl,.btn-export.xls{background:#3b82f6}.table-container{background:#fff;border:1px solid #d4d4d4;border-radius:2px;flex:1 1;max-height:calc(100vh - 380px);min-height:0;overflow-x:auto;overflow-y:auto;scrollbar-color:#888 #f1f1f1;scrollbar-width:auto}.table-container::-webkit-scrollbar{height:12px;width:12px}.table-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.table-container::-webkit-scrollbar-thumb{background:#888;border-radius:6px}.table-container::-webkit-scrollbar-thumb:hover{background:#555}.results-table{border-collapse:collapse;font-family:Segoe UI,Calibri,Arial,sans-serif;font-size:13px;min-width:-webkit-max-content;min-width:max-content;table-layout:auto;width:100%}.results-table thead{background:#f2f2f2;box-shadow:0 1px 0 0 #d4d4d4;position:-webkit-sticky;position:sticky;top:0;z-index:10}.results-table th{background:#f2f2f2;border:1px solid #d4d4d4;color:#333;font-weight:600;max-width:280px;min-width:80px;overflow:hidden;padding:8px 12px;position:relative;text-align:left;text-overflow:ellipsis;white-space:nowrap}.results-table th.sortable{cursor:pointer;padding-right:28px;-webkit-user-select:none;user-select:none}.results-table th.sortable:hover{background:#e8e8e8}.results-table th .th-label{margin-right:4px}.results-table th .sort-arrows{align-items:center;display:inline-flex;flex-direction:column;line-height:.9;position:absolute;right:6px;top:50%;transform:translateY(-50%);vertical-align:middle}.results-table th .sort-arrows .arrow{color:#bbb;font-size:10px;opacity:.6}.results-table th .sort-arrows .arrow.active{color:#333;font-weight:700;opacity:1}.results-table td{background:#fff;border:1px solid #d4d4d4;color:#333;max-width:280px;min-width:80px;overflow:hidden;padding:6px 12px;text-overflow:ellipsis;vertical-align:middle}.results-table tbody tr:nth-child(2n),.results-table tbody tr:nth-child(2n) td{background:#fafafa}.results-table tbody tr:hover td,.results-table tbody tr:nth-child(2n):hover td{background:#e8f4fd}.row-number{background:#f2f2f2!important;border:1px solid #d4d4d4;box-sizing:border-box;color:#666;font-size:12px;font-weight:600;max-width:48px;min-width:48px;text-align:center;width:48px}.results-table thead .row-number{background:#e0e0e0!important}.pagination-inline{align-items:center;display:flex;gap:12px;justify-content:flex-end}.btn-page{background:#667eea;border:none;border-radius:6px;color:#fff;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s ease}.btn-page:disabled{background:#d1d5db;cursor:not-allowed;transform:none}.page-info{color:#666;font-size:14px;font-weight:600}.table-browser{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex;flex-direction:column;height:100%;max-height:600px;overflow:hidden}.browser-header{align-items:center;background:#f8f9fa;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;padding:16px}.browser-header h3{color:#333;font-size:18px;margin:0}.tables-prefix-counts{color:#6b7280;font-size:11px;margin-top:4px}.table-schema{color:#6b7280;font-size:11px;margin-left:2px}.btn-refresh{font-size:18px}.btn-refresh:hover:not(:disabled){background:#5568d3;transform:rotate(90deg)}.btn-refresh:disabled{cursor:not-allowed;opacity:.5}.browser-search{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;gap:8px;padding:12px 16px}.search-input{border:2px solid #e0e0e0;border-radius:6px;flex:1 1;font-size:14px;padding:10px 12px;transition:all .2s ease}.search-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.btn-clear-filter{background:#6b7280;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;padding:8px 12px;transition:all .2s ease}.btn-clear-filter:hover{background:#4b5563}.browser-loading{align-items:center;color:#666;display:flex;flex-direction:column;justify-content:center;padding:40px}.browser-error{color:#dc2626;padding:20px;text-align:center}.tables-loading{color:#666}.tables-error,.tables-loading{font-size:14px;padding:12px 16px}.tables-error{align-items:center;background:#fef2f2;color:#dc2626;display:flex;gap:12px}.tables-fallback-hint{color:#666;font-size:14px;padding:12px 16px}.btn-retry{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px}.btn-link{background:none;border:none;color:#667eea;cursor:pointer;font-size:inherit;padding:0;text-decoration:underline}.browser-empty{color:#999;padding:40px 20px;text-align:center}.browser-count{background:#f8f9fa;border-bottom:1px solid #e0e0e0;color:#666;font-size:13px;font-weight:600;padding:8px 16px}.search-hint{color:#f59e0b;font-style:italic}.tables-list{flex:1 1;overflow-y:auto;padding:4px 6px}.table-item{align-items:center;background:#f8f9fa;border-radius:4px;cursor:pointer;display:flex;gap:6px;margin-bottom:2px;min-height:0;padding:5px 8px;transition:all .2s ease}.table-item:hover{background:linear-gradient(135deg,#667eea15,#764ba215);box-shadow:0 1px 3px #00000014;transform:translateX(2px)}.table-item-selected{background:linear-gradient(135deg,#667eea20,#764ba220);border-left:3px solid #667eea}.table-icon{flex-shrink:0;font-size:14px}.table-name{color:#000;font-family:Courier New,monospace;font-size:12px;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.no-results{color:#999;padding:40px 20px;text-align:center}.no-results p{margin-bottom:16px}.btn-clear{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px}.tables-list::-webkit-scrollbar{width:6px}.tables-list::-webkit-scrollbar-thumb,.tables-list::-webkit-scrollbar-track{background:#0000;border-radius:3px}.tables-list:hover::-webkit-scrollbar-thumb{background:#c1c1c1}.tables-list::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.table-item-wrapper{margin-bottom:2px}.table-columns-inline{background:#f8f9fa;border-left:3px solid #667eea;display:flex;flex-direction:column;margin:2px 0 2px 16px;max-height:220px;overflow:hidden;padding:0}.columns-header{align-items:center;background:#e8eaf0;color:#444;cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:6px;padding:6px 12px;-webkit-user-select:none;user-select:none}.columns-header:hover{background:#dfe1e8}.columns-toggle{color:#667eea;font-size:10px}.columns-empty,.columns-error,.columns-loading{color:#666;font-size:12px;padding:10px 12px}.columns-error{color:#dc2626;font-size:11px;white-space:pre-wrap;word-break:break-word}.columns-error-block{padding:8px 12px}.columns-manual-query{border-top:1px solid #e5e7eb;margin-top:10px;padding-top:10px}.btn-copy-query{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;display:block;font-size:12px;margin-bottom:8px;padding:8px 12px;width:100%}.btn-copy-query:hover{background:#5568d3}.manual-query-text{background:#f3f4f6;border-radius:4px;font-family:Courier New,monospace;font-size:10px;margin:0;overflow-x:auto;padding:8px;white-space:pre-wrap;word-break:break-all}.columns-list-scroll{flex:1 1;max-height:180px;min-width:0;overflow-x:auto;overflow-y:auto;padding:4px 0}.columns-list-header{border-bottom:1px solid #e0e0e0;color:#555;font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.column-row,.columns-list-header{grid-gap:8px;display:grid;gap:8px;grid-template-columns:minmax(120px,1fr) 90px 60px 65px;padding:4px 12px}.column-row{border-bottom:1px solid #eee;font-family:Courier New,monospace;font-size:11px}.column-row:hover{background:#fff}.col-name{color:#333;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-type{color:#6b7280;font-size:10px}.col-length{color:#9ca3af;font-size:10px}.col-nullable{font-size:10px;font-weight:600}.col-nullable-yes{color:#059669}.col-nullable-no{color:#dc2626}.sql-autocomplete-dropdown{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 10px 40px #0000001f;cursor:pointer;font-family:Consolas,Monaco,Courier New,monospace;font-size:13px;max-height:280px;min-width:220px;overflow-y:auto;z-index:1000}.sql-autocomplete-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;border-radius:8px 8px 0 0;color:#64748b;font-size:10px;font-weight:500;letter-spacing:.02em;padding:6px 12px;position:-webkit-sticky;position:sticky;text-align:center;top:0;z-index:1}.sql-autocomplete-hint{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.sql-autocomplete-dropdown::-webkit-scrollbar{width:8px}.sql-autocomplete-dropdown::-webkit-scrollbar-thumb,.sql-autocomplete-dropdown::-webkit-scrollbar-track{background:#0000;border-radius:4px}.sql-autocomplete-dropdown:hover::-webkit-scrollbar-thumb{background:#cbd5e1}.sql-autocomplete-dropdown::-webkit-scrollbar-thumb:hover{background:#94a3b8}.sql-autocomplete-item{align-items:center;border-bottom:1px solid #f1f5f9;color:#334155;cursor:pointer;display:flex;gap:10px;justify-content:space-between;padding:8px 12px}.sql-autocomplete-item:last-child{border-bottom:none}.sql-autocomplete-item-label{font-weight:500}.sql-autocomplete-item-type{color:#94a3b8;font-size:10px;letter-spacing:.05em;margin-left:auto;text-transform:uppercase}.sql-autocomplete-item-description{color:#64748b;font-size:10px;font-style:italic;margin-left:8px}.sql-autocomplete-item.selected .sql-autocomplete-item-description,.sql-autocomplete-item:hover .sql-autocomplete-item-description{color:#fffc}.sql-autocomplete-item--function,.sql-autocomplete-item--keyword{border-left:3px solid #3b82f6}.sql-autocomplete-item--table{border-left:3px solid #10b981}.sql-autocomplete-item.selected .sql-autocomplete-item-type,.sql-autocomplete-item:hover .sql-autocomplete-item-type{color:#ffffffd9}.sql-autocomplete-item.selected,.sql-autocomplete-item:hover{background:#3b82f6;color:#fff}.sql-autocomplete-overlay{background:#0000;bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}code[class*=language-],pre[class*=language-]{word-wrap:normal;background:none;color:#000;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;-webkit-hyphens:none;hyphens:none;line-height:1.5;tab-size:4;text-align:left;text-shadow:0 1px #fff;white-space:pre;word-break:normal;word-spacing:normal}code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{background:#b3d4fc;text-shadow:none}@media print{code[class*=language-],pre[class*=language-]{text-shadow:none}}pre[class*=language-]{margin:.5em 0;overflow:auto;padding:1em}:not(pre)>code[class*=language-],pre[class*=language-]{background:#f5f2f0}:not(pre)>code[class*=language-]{border-radius:.3em;padding:.1em;white-space:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#708090}.token.punctuation{color:#999}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#905}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color:#690}.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url{background:#ffffff80;color:#9a6e3a}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.class-name,.token.function{color:#dd4a68}.token.important,.token.regex,.token.variable{color:#e90}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.menu-bar{align-items:center;background:#0000;border-bottom:none;display:flex;height:auto;margin-left:12px;padding:0;position:relative;z-index:100}.menu-bar-items{display:flex;gap:4px}.menu-item{position:relative}.menu-button{background:none;border:none;border-radius:4px;color:#333;cursor:pointer;font-size:14px;font-weight:500;padding:6px 12px;transition:all .2s ease}.menu-button:hover{background:#f0f0f0;box-shadow:none;transform:none}.menu-button.active{background:#e0e0e0}.menu-dropdown{animation:menuSlideDown .15s ease;background:#fff;border:1px solid #e0e0e0;border-radius:6px;box-shadow:0 4px 12px #00000026;left:0;margin-top:2px;min-width:220px;padding:4px 0;position:absolute;top:100%;z-index:1000}@keyframes menuSlideDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.menu-option{align-items:center;background:none;border:none;color:#333;cursor:pointer;display:flex;font-size:14px;gap:12px;padding:8px 12px;text-align:left;transition:background .15s ease;width:100%}.menu-option:hover{background:#f5f5f5;box-shadow:none;transform:none}.menu-icon{font-size:16px;text-align:center;width:20px}.menu-label{flex:1 1}.menu-shortcut{color:#999;font-size:12px;margin-left:auto}.menu-check{color:#667eea;font-size:16px;font-weight:700}.menu-button-link{align-items:center;color:#333;display:inline-flex;font-family:inherit;text-decoration:none}.menu-button-link:hover{background:#f0f0f0;color:#333}.menu-button-link:visited{color:#333}.menu-divider{background:#e0e0e0;height:1px;margin:4px 0}.menu-option:focus{outline:2px solid #667eea;outline-offset:-2px}.query-history{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex;flex-direction:column;height:100%;overflow:hidden}.history-header{align-items:center;background:#f8f9fa;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;padding:16px}.history-header h2{color:#333;font-size:20px;margin:0}.btn-refresh{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;padding:8px 12px;transition:all .2s ease}.btn-refresh:hover{background:#5568d3;transform:rotate(90deg)}.history-loading{align-items:center;color:#666;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.spinner{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:40px;margin-bottom:16px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.history-filters{border-bottom:1px solid #e0e0e0;display:flex;gap:12px;padding:16px}.filter-input{border:2px solid #e0e0e0;border-radius:6px;flex:1 1;font-size:14px;padding:10px 12px}.filter-input:focus{border-color:#667eea;outline:none}.filter-select{background:#fff;border:2px solid #e0e0e0;border-radius:6px;cursor:pointer;font-size:14px;padding:10px 12px}.filter-select:focus{border-color:#667eea;outline:none}.history-stats{background:#f8f9fa;border-bottom:1px solid #e0e0e0;display:flex;gap:20px;padding:12px 16px}.stat{align-items:center;display:flex;gap:8px}.stat-label{color:#666;font-size:13px}.stat-value{color:#333;font-size:16px;font-weight:600}.stat-value.success{color:#10b981}.stat-value.error{color:#dc2626}.history-list{flex:1 1;overflow-y:auto;padding:16px}.history-empty{color:#999;padding:60px 20px;text-align:center}.history-item{background:#f8f9fa;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;margin-bottom:12px;padding:12px;transition:all .2s ease}.history-item:hover{border-color:#667eea;box-shadow:0 2px 8px #0000001a;transform:translateX(4px)}.history-item.success{border-left:4px solid #10b981}.history-item.error{border-left:4px solid #dc2626}.history-item-header{align-items:center;display:flex;gap:12px;margin-bottom:8px}.status-badge{align-items:center;border-radius:50%;display:inline-flex;font-size:14px;font-weight:700;height:24px;justify-content:center;width:24px}.status-badge.success{background:#d1fae5;color:#065f46}.status-badge.error{background:#fee2e2;color:#991b1b}.history-date{color:#666;font-size:13px}.history-time{color:#999;font-size:12px;margin-left:auto;padding:2px 8px}.history-query,.history-time{background:#fff;border-radius:4px}.history-query{margin-bottom:8px;padding:10px}.history-query code{color:#333;display:block;font-family:Courier New,monospace;font-size:13px;white-space:pre-wrap;word-break:break-all}.history-error{background:#fee2e2;border-radius:4px;color:#991b1b;font-size:12px;padding:8px 10px}.history-error strong{display:block;margin-bottom:4px}.history-list::-webkit-scrollbar{width:6px}.history-list::-webkit-scrollbar-track{background:#0000}.history-list::-webkit-scrollbar-thumb{background:#0000;border-radius:3px}.history-list:hover::-webkit-scrollbar-thumb{background:#c1c1c1}
/*# sourceMappingURL=main.0158b7de.css.map*/