*{margin:0;padding:0;box-sizing:border-box;font-family:JetBrains Mono,SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace}body{background-color:#ececec;color:#333;line-height:1.6}.container{max-width:1200px;margin:0 auto;padding:15px}h1{color:#2c3e50;margin-bottom:30px;text-align:center}.header-container{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.header-left{display:flex;flex-direction:column;align-items:flex-start;flex-grow:1}.header-container h1{margin-bottom:8px}.project-info{display:flex;flex-direction:column;gap:4px}.project-name{font-size:18px;font-weight:600;color:#2c3e50}.project-type{font-size:13px;color:#7f8c8d;font-weight:500}.btn-close-server{background:#e74c3c;color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s;box-shadow:0 2px 4px #e74c3c4d}.btn-close-server:hover{background:#c0392b;box-shadow:0 4px 8px #e74c3c66;transform:translateY(-1px)}.btn-close-server:active{transform:translateY(0);box-shadow:0 2px 4px #e74c3c4d}.tabs{display:flex;margin-bottom:30px;gap:8px}.tab{padding:10px 20px;cursor:pointer;background:#fff;border:none;border-radius:8px;font-size:16px;color:#666;transition:all .3s;margin-right:8px;box-shadow:inset 1px 1px 1px #fff,inset -1px -1px 1px #00000026,1px 1px 2px #0000001a}.tab:hover{color:#2c3e50;box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026}.tab.active{color:#3498db;font-weight:600;box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026}.tab-content{display:none}.tab-content.active{display:block}.server-grid,.category-section{margin-bottom:20px}.category-title{color:#2c3e50;font-size:24px;margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid #3498db;display:flex;align-items:center;gap:10px}.accordion-header{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease;border-radius:6px}.accordion-header:hover{background:#3498db0d;padding:12px 8px;margin:0 -8px}.accordion-icon{font-size:16px;font-family:monospace;transition:transform .2s ease;width:20px;text-align:center;color:#3498db;font-weight:700}.category-section.collapsed .accordion-icon{transform:rotate(-90deg)}.accordion-content{transition:all .3s ease;overflow:hidden}.category-section.collapsed .accordion-content{display:none!important}.category-title:before{content:"";width:6px;height:24px;background:#3498db}.category-count{font-size:18px;color:#7f8c8d;font-weight:400;margin-left:10px}.category-section[data-category="AI & Machine Learning"] .category-title:before,.category-section[data-category="AI & Machine Learning"] .category-title{border-color:#9b59b6}.category-section[data-category="AI & Machine Learning"] .category-title:before{background:#9b59b6}.category-section[data-category="Cloud Services"] .category-title:before,.category-section[data-category="Cloud Services"] .category-title{border-color:#3498db}.category-section[data-category="Cloud Services"] .category-title:before{background:#3498db}.category-section[data-category=Communication] .category-title:before,.category-section[data-category=Communication] .category-title{border-color:#e74c3c}.category-section[data-category=Communication] .category-title:before{background:#e74c3c}.category-section[data-category="Data & Analytics"] .category-title:before,.category-section[data-category="Data & Analytics"] .category-title{border-color:#f39c12}.category-section[data-category="Data & Analytics"] .category-title:before{background:#f39c12}.category-section[data-category=Databases] .category-title:before,.category-section[data-category=Databases] .category-title{border-color:#27ae60}.category-section[data-category=Databases] .category-title:before{background:#27ae60}.category-section[data-category="Development Tools"] .category-title:before,.category-section[data-category="Development Tools"] .category-title{border-color:#2c3e50}.category-section[data-category="Development Tools"] .category-title:before{background:#2c3e50}.category-section[data-category="File Systems"] .category-title:before,.category-section[data-category="File Systems"] .category-title{border-color:#16a085}.category-section[data-category="File Systems"] .category-title:before{background:#16a085}.category-section[data-category="Knowledge & Research"] .category-title:before,.category-section[data-category="Knowledge & Research"] .category-title{border-color:#8e44ad}.category-section[data-category="Knowledge & Research"] .category-title:before{background:#8e44ad}.category-section[data-category=Productivity] .category-title:before,.category-section[data-category=Productivity] .category-title{border-color:#e67e22}.category-section[data-category=Productivity] .category-title:before{background:#e67e22}.category-section[data-category=Utilities] .category-title:before,.category-section[data-category=Utilities] .category-title{border-color:#95a5a6}.category-section[data-category=Utilities] .category-title:before{background:#95a5a6}.category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-bottom:15px}@media (min-width: 640px){.category-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}@media (min-width: 1024px){.category-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:16px}}.server-card{background:#f4f4f4;padding:16px;border:none;border-radius:8px;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;justify-content:space-between;position:relative;min-height:120px;cursor:pointer;-webkit-user-select:none;user-select:none;box-shadow:inset 1px 1px 1px #fff,inset -1px -1px 1px #00000026,.444584px .444584px .628737px -1px #00000042,1.21072px 1.21072px 1.71222px -1.5px #0000003f,2.6583px 2.6583px 3.75941px -2.25px #0000003b,5.90083px 5.90083px 8.34503px -3px #00000031,10px 10px 21.2132px -3.75px #0000000e,-.5px -.5px #0000000d}.server-card:hover{transform:translateY(-1px)}.server-card[data-selected]{background:#f4f4f4;box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026,.222px .222px .314px -.5px #0003,.605px .605px .856px -1px #0000002e,1.329px 1.329px 1.88px -1.5px #00000040,2.95px 2.95px 4.172px -2px #0000001a,2.5px 2.5px 3px -2.5px #00000026,-.5px -.5px #0000001a}.server-card[data-selected]:hover{transform:translateY(-1px)}.server-card.keyboard-selected{outline:3px solid #4299e1;outline-offset:2px;background:#e6f3ff;transform:translateY(-2px);box-shadow:inset 1px 1px 1px #fff,inset -1px -1px 1px #00000026,0 4px 8px #4299e14d,.444584px .444584px .628737px -1px #00000042,1.21072px 1.21072px 1.71222px -1.5px #0000003f,2.6583px 2.6583px 3.75941px -2.25px #0000003b,5.90083px 5.90083px 8.34503px -3px #00000031,10px 10px 21.2132px -3.75px #0000000e,-.5px -.5px #0000000d}.server-card.keyboard-selected[data-selected]{background:#d6e9ff}.status-indicator.installing{animation:statusGlow .6s cubic-bezier(.4,0,.2,1)}.status-indicator.uninstalling{animation:statusFade .6s cubic-bezier(.4,0,.2,1)}.card-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:4px}.card-header-content{flex:1;display:flex;justify-content:space-between;align-items:flex-start}.server-info{flex:1;display:flex;flex-direction:column;gap:0px;min-width:0;max-width:calc(100% - 80px)}.server-logo{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:8px;overflow:hidden;background:#fffc;border:1px solid rgba(0,0,0,.1)}.server-logo img{width:100%;height:100%;object-fit:contain;transition:transform .2s ease}.server-logo img:hover{opacity:.9}.server-logo-placeholder{flex-shrink:0;width:40px;height:40px;border-radius:8px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid rgba(0,0,0,.05);display:flex;align-items:center;justify-content:center;position:relative}.server-logo-placeholder:before{content:"📦";font-size:18px;opacity:.6}.server-card h3{color:#111827;margin:0;font-size:16px;font-weight:600;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.server-card h3 a{color:inherit;text-decoration:none;transition:color .2s ease}.server-card h3 a:hover{color:#3498db;text-decoration:underline}.server-card .owner-name{color:#9ca3af;font-size:11px;font-weight:400;margin:2px 0 4px;opacity:.8}.server-card .owner-username{color:#6b7280;font-weight:500}.server-card .description{color:#6b7280;font-size:12px;margin:8px 0;line-height:1.4}.view-more-link{color:#3498db;cursor:pointer;text-decoration:underline;font-size:11px;transition:color .2s ease;white-space:nowrap}.view-more-link:hover{color:#2980b9}.readme-content{max-height:none;padding:20px;background:#fafafa;border-radius:8px;border:1px solid #e0e0e0;margin:20px 0;font-family:JetBrains Mono,monospace;line-height:1.6;word-wrap:break-word;overflow-wrap:break-word}.readme-content h1,.readme-content h2,.readme-content h3{color:#2c3e50;margin:20px 0 10px}.readme-content h1{font-size:24px;border-bottom:2px solid #ecf0f1;padding-bottom:10px}.readme-content h2{font-size:20px}.readme-content h3{font-size:16px}.readme-content p{margin:10px 0;color:#555}.readme-content code{background:#f1f1f1;padding:2px 4px;border-radius:3px;font-size:12px;color:#e74c3c}.readme-content pre{background:#f8f8f8;padding:15px;border-radius:5px;overflow-x:auto;border:1px solid #ddd;margin:15px 0}.readme-content pre code{background:none;padding:0;color:#333}.readme-content ul,.readme-content ol{margin:10px 0 10px 20px}.readme-content li{margin:5px 0}.readme-content a{color:#3498db;text-decoration:none}.readme-content a:hover{text-decoration:underline}.readme-content blockquote{border-left:4px solid #bdc3c7;margin:15px 0;color:#666;background:#f9f9f9;padding:10px 15px;border-radius:0 5px 5px 0}.stars-info{display:inline-flex;align-items:center;gap:3px;font-size:12px;font-weight:500;color:#6b7280;margin:0;background:transparent;padding:0;border-radius:0;flex-shrink:0;box-shadow:none;text-shadow:none;transition:color .2s ease;cursor:default;line-height:1}.stars-info:hover{color:#374151;background:transparent;transform:none;box-shadow:none}.star-icon{width:14px;height:14px;color:#6b7280;transition:color .2s ease;vertical-align:middle;margin-bottom:1px}.stars-info:hover .star-icon{color:#374151}.stars-container{display:flex;flex-direction:column;align-items:flex-end;gap:2px;min-height:32px;justify-content:center}.stars-update{font-size:10px;color:#9ca3af;font-weight:400;text-align:right;opacity:.8;line-height:1;white-space:nowrap}.stars-update:hover{opacity:1;color:#6b7280}.category-section h2.category-title{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:600;margin-bottom:15px;padding:10px 0;border-bottom:2px solid currentColor;opacity:.9}.category-section h2.category-title .category-count{font-weight:400;opacity:.7;font-size:16px}.server-card .card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px;gap:12px}.server-card .button-container{display:flex;gap:8px;flex-shrink:0;transition:all .3s cubic-bezier(.4,0,.2,1)}.status-indicator{width:10px;height:10px;border-radius:50%;background:#e5e7eb;flex-shrink:0;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:inset 1px 1px 2px #0000001a}.status-indicator.installed{background:#10b981;box-shadow:0 0 8px #10b98166,inset -1px -1px 2px #0003}.server-card button{background:#f4f4f4;color:#374151;border:none;padding:6px 12px;cursor:pointer;border-radius:6px;font-size:13px;transition:all .3s cubic-bezier(.4,0,.2,1);flex:1;box-shadow:inset 1px 1px 1px #fff,inset -1px -1px 1px #00000026,1px 1px 2px #0000001a}.server-card button:hover{box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026}.server-card button:active{box-shadow:inset 1px 1px 2px #0003}.server-card button.btn-configure{background:#222!important;color:#fff!important}.server-card button.btn-configure:hover{background:#333!important}.btn-installed{background:#f4f4f4!important;color:#10b981!important;cursor:not-allowed!important;font-weight:600;box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026!important}.server-card button:not(.btn-configure):not(.btn-installed):not(.btn-uninstall){background:#ff4a00!important;color:#fff!important}.server-card button:not(.btn-configure):not(.btn-installed):not(.btn-uninstall):hover{background:#e6420d!important}.btn-uninstall{background:red!important;color:#fff!important;font-weight:500}.btn-uninstall:hover{background:#c00!important}.filters-container{display:flex;align-items:center;gap:30px;margin-bottom:15px;flex-wrap:wrap}.sort-by-container,.group-by-container,.stars-filter-container{display:flex;align-items:center;gap:10px;position:relative}.stars-filter-container{flex-direction:column;align-items:flex-start}.sort-by-container select,.group-by-container select,.stars-filter-container select{padding:6px 12px;border:none;border-radius:6px;font-size:14px;background:#fff;cursor:pointer;box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026;transition:box-shadow .2s}.sort-by-container select:focus,.group-by-container select:focus,.stars-filter-container select:focus{outline:none;box-shadow:inset 1px 1px 2px #0003}.active-filter-indicator{display:flex;align-items:center;gap:8px;padding:4px 8px;background:#4299e1;color:#fff;border-radius:4px;font-size:12px;margin-top:6px;animation:filterFadeIn .3s ease-out}.reset-filter-btn{background:none;border:none;color:#fff;font-size:16px;cursor:pointer;padding:0 4px;border-radius:2px;transition:background-color .2s}.reset-filter-btn:hover{background:#fff3}@keyframes filterFadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.config-editor{background:#ececec;padding:20px;border-radius:8px;box-shadow:inset 1px 1px 1px #fff,inset -1px -1px 1px #00000026,.444584px .444584px .628737px -1px #00000042,1.21072px 1.21072px 1.71222px -1.5px #0000003f,2.6583px 2.6583px 3.75941px -2.25px #0000003b,5.90083px 5.90083px 8.34503px -3px #00000031,10px 10px 21.2132px -3.75px #0000000e,-.5px -.5px #0000000d}.config-editor h3{margin-bottom:15px;color:#2c3e50}.config-editor textarea{width:100%;min-height:400px;padding:10px;border:none;border-radius:8px;font-size:14px;resize:vertical;background:#fff;box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026;transition:box-shadow .2s}.config-editor textarea:focus{outline:none;box-shadow:inset 1px 1px 2px #0003}.button-group{margin-top:15px;display:flex;gap:10px}.button-group button{padding:10px 20px;border:none;cursor:pointer;font-size:16px;transition:background .3s}.btn-primary{background:#fff;color:#3498db;border:none;border-radius:6px;box-shadow:inset 1px 1px 1px #fff,inset -1px -1px 1px #00000026,1px 1px 2px #0000001a;transition:all .2s;font-weight:600}.btn-primary:hover{box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026}.btn-secondary{background:#fff;color:#95a5a6;border:none;border-radius:6px;box-shadow:inset 1px 1px 1px #fff,inset -1px -1px 1px #00000026,1px 1px 2px #0000001a;transition:all .2s;font-weight:500}.btn-secondary:hover{box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026}.search-box{width:100%;padding:12px;border:none;border-radius:8px;font-size:16px;margin-bottom:20px;background:#fff;box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026;transition:box-shadow .2s}.search-box:focus{outline:none;box-shadow:inset 1px 1px 2px #0003}.search-container{position:relative;display:flex;align-items:center;margin-bottom:20px}.search-loading{position:absolute;right:12px;top:50%;transform:translateY(-50%)}.loading-spinner{width:16px;height:16px;border:2px solid #ddd;border-top:2px solid #3498db;border-radius:50%;animation:spin 1s linear infinite}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:1000}.modal-content{background:#ececec;width:95%;max-width:1200px;max-height:90vh;margin:20px auto;padding:30px;position:relative;border-radius:12px;overflow-y:auto;box-shadow:inset 1px 1px 1px #fff,inset -1px -1px 1px #00000026,.444584px .444584px .628737px -1px #00000042,1.21072px 1.21072px 1.71222px -1.5px #0000003f,2.6583px 2.6583px 3.75941px -2.25px #0000003b,5.90083px 5.90083px 8.34503px -3px #00000031,10px 10px 21.2132px -3.75px #0000000e,-.5px -.5px #0000000d}.modal-close{position:absolute;top:10px;right:10px;font-size:24px;cursor:pointer;color:#999}.modal-close:hover{color:#333}#modalTitle{color:#2c3e50;font-size:20px;margin-bottom:20px;padding-right:30px;font-weight:600}@media (max-width: 768px){.modal-content{width:98%;margin:10px auto;padding:20px;max-height:95vh}#modalTitle{font-size:18px;padding-right:40px}}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;color:#555;font-weight:500}.form-group input{width:100%;padding:8px 12px;border:none;border-radius:6px;font-size:14px;background:#fff;box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026;transition:box-shadow .2s}.form-group input:focus{outline:none;box-shadow:inset 1px 1px 2px #0003}.form-group small{color:#888;font-size:12px;display:block;margin-top:5px}.message{padding:12px;margin-bottom:20px;display:none}.message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.current-servers{background:#ececec;padding:20px;border-radius:8px;box-shadow:inset 1px 1px 1px #fff,inset -1px -1px 1px #00000026,.444584px .444584px .628737px -1px #00000042,1.21072px 1.21072px 1.71222px -1.5px #0000003f,2.6583px 2.6583px 3.75941px -2.25px #0000003b,5.90083px 5.90083px 8.34503px -3px #00000031,10px 10px 21.2132px -3.75px #0000000e,-.5px -.5px #0000000d;margin-bottom:30px}.server-list{list-style:none}.server-item{padding:15px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center}.server-item:last-child{border-bottom:none}.server-info h4{color:#2c3e50;margin-bottom:5px}.server-info .details{font-size:12px;color:#666}.server-actions{display:flex;gap:10px}.btn-edit{background:#fff;color:#3498db;border:none;border-radius:6px;padding:6px 12px;cursor:pointer;font-size:14px;font-weight:600;box-shadow:inset 1px 1px 1px #fff,inset -1px -1px 1px #00000026,1px 1px 2px #0000001a;transition:all .2s}.btn-edit:hover{box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026}.btn-remove{background:#fff;color:#e74c3c;border:none;border-radius:6px;padding:6px 12px;cursor:pointer;font-size:14px;font-weight:600;box-shadow:inset 1px 1px 1px #fff,inset -1px -1px 1px #00000026,1px 1px 2px #0000001a;transition:all .2s}.btn-remove:hover{box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026}.variables-container{background:#ececec;padding:20px;border-radius:8px;box-shadow:inset 1px 1px 1px #fff,inset -1px -1px 1px #00000026,.444584px .444584px .628737px -1px #00000042,1.21072px 1.21072px 1.71222px -1.5px #0000003f,2.6583px 2.6583px 3.75941px -2.25px #0000003b,5.90083px 5.90083px 8.34503px -3px #00000031,10px 10px 21.2132px -3.75px #0000000e,-.5px -.5px #0000000d}.variables-description{color:#666;font-size:14px;margin-bottom:20px}.variables-list{margin-bottom:20px}.variable-item{background:#ececec;border:none;border-radius:8px;padding:15px;margin-bottom:15px;box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026,.222px .222px .314px -.5px #0003,.605px .605px .856px -1px #0000002e,1.329px 1.329px 1.88px -1.5px #00000040,2.95px 2.95px 4.172px -2px #0000001a,2.5px 2.5px 3px -2.5px #00000026,-.5px -.5px #0000001a;transition:background-color .3s ease,box-shadow .3s ease}.variable-item.changed{background:#ffc1074d}.variable-item.saved{background:#28a7454d}.variable-item.saved-success{background:#28a7454d;animation:fadeToDefault 2s ease-out forwards}@keyframes fadeToDefault{0%{background:#28a7454d}to{background:#ececec}}.variable-name{font-weight:600;color:#2c3e50;margin-bottom:8px;font-size:16px}.variable-input{width:100%;padding:8px 12px;border:none;border-radius:6px;font-size:14px;margin-bottom:8px;background:#fff;box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026;transition:box-shadow .2s}.variable-input:focus{outline:none;box-shadow:inset 1px 1px 2px #0003}.variable-usage{font-size:13px;color:#666}.variable-usage strong{color:#495057}.variable-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.variable-save-btn{background:#28a745;color:#fff;border:none;border-radius:4px;padding:4px 12px;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s ease;box-shadow:inset 1px 1px 1px #fff,inset -1px -1px 1px #00000026,1px 1px 2px #0000001a;display:none}.variable-save-btn:hover{background:#218838;box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026}.variable-save-btn:active{box-shadow:inset 1px 1px 2px #0003}.variable-save-btn.show{display:inline-block}.slack-token-guide ol{margin:20px 0;padding-left:20px}.slack-token-guide li{margin:15px 0;line-height:1.5}.slack-token-guide a{display:inline-block;margin:5px 0}.btn-env-fetch{position:absolute;right:4px;top:50%;transform:translateY(-50%);background:#fff;border:none;border-radius:4px;padding:4px 8px;cursor:pointer;font-size:12px;color:#555;transition:all .2s;box-shadow:inset 1px 1px 1px #fff,inset -1px -1px 1px #00000026,1px 1px 2px #0000001a}.btn-env-fetch:hover{box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026}.btn-git-fetch{position:absolute;right:4px;top:50%;transform:translateY(-50%);background:#f8f9fa;border:1px solid #e0e0e0;border-radius:4px;padding:4px 8px;cursor:pointer;font-size:12px;color:#333;box-shadow:inset 1px 1px 1px #fff,inset -1px -1px 1px #00000026,1px 1px 2px #0000001a}.btn-git-fetch:hover{background:#e9ecef;box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026}.btn-fetch-multi,.btn-fetch-single{position:absolute;right:4px;top:50%;transform:translateY(-50%);background:#fff;border:1px solid #e0e0e0;border-radius:4px;padding:4px 8px;cursor:pointer;font-size:12px;color:#333;white-space:nowrap;min-width:80px;box-shadow:inset 1px 1px 1px #fff,inset -1px -1px 1px #00000026,1px 1px 2px #0000001a}.btn-fetch-multi:hover,.btn-fetch-single:hover{background:#f8f9fa;box-shadow:inset .5px .5px 1px #fff,inset -.5px -.5px 1px #00000026}.fetch-dropdown{position:relative;display:inline-block}.dropdown-content{position:absolute;background-color:#fff;min-width:200px;box-shadow:0 8px 16px #0003;border:1px solid #ddd;border-radius:4px;z-index:9999;top:100%;right:0;margin-top:2px}.dropdown-content a{color:#333;padding:8px 12px;text-decoration:none;display:block;border-bottom:1px solid #f0f0f0;transition:background-color .2s}.dropdown-content a:last-child{border-bottom:none}.dropdown-content a:hover{background-color:#f8f9fa}.dropdown-content a:first-child{border-radius:4px 4px 0 0}.dropdown-content a:last-child{border-radius:0 0 4px 4px}.update-modal{min-width:400px}.version-info{font-family:JetBrains Mono,monospace}#updateProgress{animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.message.update-available{background:#e3f2fd;border-left:4px solid #2196f3;color:#0d47a1;display:flex;align-items:center;justify-content:space-between}.pagination-controls{display:flex;justify-content:space-between;align-items:center;margin:20px 0;padding:15px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.pagination-info{display:flex;align-items:center;gap:15px;font-size:14px;color:#666}.pagination-info select{padding:5px 10px;border:1px solid #ddd;border-radius:4px;background:#fff;font-size:14px}.pagination-buttons{display:flex;align-items:center;gap:5px}.pagination-buttons button{padding:8px 12px;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer;font-size:14px;min-width:40px;transition:all .2s}.pagination-buttons button:hover:not(:disabled){background:#f8f9fa;border-color:#007bff}.pagination-buttons button:disabled{opacity:.5;cursor:not-allowed}.pagination-buttons input{width:60px;padding:8px;border:1px solid #ddd;border-radius:4px;text-align:center;font-size:14px}.loading-spinner{border:3px solid #f3f3f3;border-top:3px solid #007bff;border-radius:50%;width:30px;height:30px;animation:spin 1s linear infinite;margin:0 auto 15px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
