:root,[data-theme=dark]{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-card: #334155;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--accent-blue: #3b82f6;--accent-green: #22c55e;--accent-yellow: #eab308;--accent-red: #ef4444;--accent-orange: #f97316;--accent-purple: #a855f7;--border-color: #475569}[data-theme=light]{--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-card: #e2e8f0;--text-primary: #1e293b;--text-secondary: #64748b;--accent-blue: #2563eb;--accent-green: #16a34a;--accent-yellow: #ca8a04;--accent-red: #dc2626;--accent-orange: #ea580c;--accent-purple: #9333ea;--border-color: #cbd5e1}body{background:var(--bg-primary);color:var(--text-primary);transition:background-color .3s,color .3s}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem}.loading-spinner{width:40px;height:40px;border:3px solid var(--bg-card);border-top-color:var(--accent-blue);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1rem}.login-card{background:var(--bg-secondary);border-radius:1rem;padding:3rem;text-align:center;max-width:400px;box-shadow:0 25px 50px -12px #00000080}.login-icon{font-size:4rem;margin-bottom:1rem}.login-logo{height:60px;width:auto;margin-bottom:1rem}.login-card h1{font-size:1.75rem;margin-bottom:.5rem;color:var(--text-primary)}.login-card p{color:var(--text-secondary);margin-bottom:2rem}.login-button{background:var(--accent-blue);color:#fff;border:none;padding:.875rem 2rem;font-size:1rem;font-weight:600;border-radius:.5rem;cursor:pointer;transition:background .2s}.login-button:hover{background:#2563eb}.login-note{font-size:.875rem;margin-top:1rem}.app{height:100vh;display:flex;flex-direction:column;overflow:hidden}.app-header{background:var(--bg-secondary);padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color)}.header-left{display:flex;align-items:center;gap:1rem}.header-brand{display:flex;align-items:center;gap:1rem;text-decoration:none;color:inherit}.header-brand:hover{opacity:.9}.logo-container{display:flex;flex-direction:column;align-items:center;gap:.125rem}.header-logo{height:40px;width:auto}.header-title{font-size:.75rem;font-weight:500;margin:0;line-height:1.2;color:var(--text-secondary)}.header-center{flex:1;display:flex;justify-content:center;align-items:center}.mini-widgets-header{display:flex;gap:.5rem;align-items:center}.header-right{display:flex;align-items:center;gap:1rem}.app-main{flex:1;padding:2rem;overflow-y:auto}.theme-slider{display:flex;align-items:center;gap:.25rem;cursor:pointer}.theme-slider input{display:none}.theme-icon{font-size:.75rem;line-height:1;opacity:.5;transition:opacity .2s}.theme-slider:has(input:not(:checked)) .theme-icon:first-of-type{opacity:1}.theme-slider:has(input:checked) .theme-icon:last-of-type{opacity:1}.theme-slider-track{width:28px;height:16px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;position:relative;transition:all .2s}.theme-slider:hover .theme-slider-track{border-color:var(--accent-blue)}.theme-slider-track:after{content:"";position:absolute;width:12px;height:12px;background:var(--accent-blue);border-radius:50%;top:1px;left:1px;transition:transform .2s}.theme-slider input:checked+.theme-slider-track:after{transform:translate(12px)}.user-menu-container{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:.5rem;background:transparent;border:1px solid var(--border-color);color:var(--text-primary);padding:.5rem 1rem;border-radius:.375rem;cursor:pointer;transition:all .2s}.user-menu-trigger:hover{background:var(--bg-card);border-color:var(--accent-blue)}.user-menu-trigger .user-name{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-arrow{font-size:.6rem;color:var(--text-secondary)}.user-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.5rem;min-width:200px;box-shadow:0 10px 25px #0000004d;z-index:1000;overflow:visible}.dropdown-header{padding:.75rem 1rem;background:var(--bg-card);border-radius:.5rem .5rem 0 0}.dropdown-item.logout{border-radius:0 0 .5rem .5rem}.dropdown-name{display:block;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.dropdown-email{display:block;font-size:.75rem;color:var(--text-secondary)}.dropdown-version{display:block;font-size:.65rem;color:var(--text-secondary);margin-top:.375rem;padding-top:.375rem;border-top:1px solid var(--border-color)}.changelog-link-dropdown{color:var(--accent-blue);text-decoration:none}.changelog-link-dropdown:hover{text-decoration:underline}.dropdown-divider{height:1px;background:var(--border-color)}.dropdown-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;color:var(--text-primary);text-decoration:none;cursor:pointer;background:transparent;border:none;width:100%;text-align:left;font-size:.875rem;transition:background .2s}.dropdown-item:hover{background:var(--bg-card)}.dropdown-item.logout:hover{background:#ef44441a;color:var(--accent-red)}.dropdown-icon{font-size:1rem}.dropdown-tools-trigger{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;color:var(--text-primary);cursor:pointer;font-size:.875rem;position:relative;transition:background .2s}.dropdown-tools-trigger:hover{background:var(--bg-card)}.tools-flyout-arrow{margin-left:auto;font-size:1.1rem;color:var(--text-secondary);line-height:1}.tools-flyout{display:none;position:absolute;left:calc(-100% - 1px);top:-1px;min-width:220px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.5rem;box-shadow:0 10px 25px #0000004d;z-index:1001;overflow:hidden}.dropdown-tools-trigger:hover>.tools-flyout{display:block}.tools-flyout-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;color:var(--text-primary);background:transparent;border:none;cursor:pointer;text-align:left;font-size:.875rem;transition:background .15s}.tools-flyout-item:hover{background:var(--bg-card)}.tools-flyout-icon{font-size:1.15rem;flex-shrink:0}.tools-flyout-info{display:flex;flex-direction:column;min-width:0}.tools-flyout-name{font-weight:600;font-size:.85rem;color:var(--text-primary)}.tools-flyout-desc{font-size:.7rem;color:var(--text-secondary);line-height:1.2}.dropdown-controls{padding:.5rem 1rem}.dropdown-control-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.375rem 0}.dropdown-control-label{font-size:.8rem;color:var(--text-secondary)}.dropdown-control-row .refresh-status{flex-direction:row;align-items:center;gap:.5rem;font-size:.75rem}.dropdown-control-row .last-refresh{display:none}.dropdown-control-row .refresh-controls{gap:.375rem}.user-area{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.version-below-dropdown{font-size:.65rem;color:var(--text-secondary)}.changelog-link-below{color:var(--accent-blue);text-decoration:none}.changelog-link-below:hover{text-decoration:underline}.user-area .refresh-status{flex-direction:row;align-items:center;gap:.75rem;font-size:.75rem}.user-area .last-refresh{display:flex;flex-direction:column;align-items:flex-end;font-size:.7rem;line-height:1.2}.user-area .refresh-label{color:var(--text-secondary)}.user-area .refresh-time{color:var(--text-primary)}.user-area .refresh-controls{gap:.375rem}.user-area .toggle-label{font-size:.7rem}.user-area .toggle-slider{width:28px;height:16px}.user-area .toggle-slider:after{width:12px;height:12px}.user-area .toggle-label input:checked+.toggle-slider:after{transform:translate(12px)}.user-area .refresh-select{padding:.2rem .4rem;font-size:.7rem}.user-area .refresh-button{padding:.2rem .4rem;font-size:.8rem}.dashboard{max-width:1600px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.dashboard-header h2{font-size:1.5rem;color:var(--text-primary);margin:0}.header-with-refresh{display:flex;flex-direction:column;gap:.25rem}.refresh-status{display:flex;align-items:center;gap:1rem}.last-refresh{font-size:.75rem;color:var(--text-secondary)}.refresh-controls{display:flex;align-items:center;gap:.5rem}.toggle-label{display:flex;align-items:center;gap:.375rem;cursor:pointer;font-size:.75rem;color:var(--text-secondary)}.toggle-label input{display:none}.toggle-slider{width:32px;height:18px;background:var(--bg-card);border-radius:9px;position:relative;transition:background .2s}.toggle-slider:after{content:"";position:absolute;width:14px;height:14px;background:var(--text-secondary);border-radius:50%;top:2px;left:2px;transition:transform .2s,background .2s}.toggle-label input:checked+.toggle-slider{background:var(--accent-blue)}.toggle-label input:checked+.toggle-slider:after{transform:translate(14px);background:#fff}.refresh-select{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;cursor:pointer}.refresh-select:disabled{opacity:.5;cursor:not-allowed}.refresh-button{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);padding:.25rem .5rem;border-radius:.25rem;font-size:1rem;cursor:pointer;transition:all .2s}.refresh-button:hover{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.status-banner{padding:1rem 1.5rem;border-radius:.75rem;margin-bottom:1.5rem;font-weight:500;display:flex;align-items:center;gap:.5rem}.status-banner.status-healthy{background:#22c55e1a;border:1px solid var(--accent-green);color:var(--accent-green)}.status-banner.status-warning{background:#eab3081a;border:1px solid var(--accent-yellow);color:var(--accent-yellow)}.status-banner.status-critical{background:#ef44441a;border:1px solid var(--accent-red);color:var(--accent-red)}.status-banner.status-loading{background:#3b82f61a;border:1px solid var(--accent-blue);color:var(--accent-blue)}.widget-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}.widget-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-left:4px solid var(--accent-blue);border-radius:.75rem;padding:1rem;cursor:pointer;transition:transform .2s,box-shadow .2s}.widget-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000004d}.widget-card.status-healthy{border-left-color:var(--accent-green)}.widget-card.status-warning{border-left-color:var(--accent-yellow)}.widget-card.status-critical{border-left-color:var(--accent-red)}.widget-card.status-error{border-left-color:var(--accent-red);opacity:.7}.widget-card.status-loading{border-left-color:var(--accent-blue)}.widget-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.widget-header h3{margin:0;font-size:1rem;color:var(--text-primary)}.status-dot{width:10px;height:10px;border-radius:50%}.status-dot.status-healthy{background:var(--accent-green)}.status-dot.status-warning{background:var(--accent-yellow)}.status-dot.status-critical{background:var(--accent-red);animation:pulse 1.5s infinite}.status-dot.status-error{background:var(--accent-red)}.status-dot.status-loading{background:var(--accent-blue);animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.widget-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.widget-stats .stat{text-align:center;padding:.5rem;background:var(--bg-card);border-radius:.5rem}.widget-stats .value{display:block;font-size:1.5rem;font-weight:700}.widget-stats .label{font-size:.75rem;color:var(--text-secondary)}.widget-stats .stat.success .value{color:var(--accent-green)}.widget-stats .stat.warning .value{color:var(--accent-yellow)}.widget-stats .stat.critical .value{color:var(--accent-red)}.widget-stats .stat.orange .value{color:var(--accent-orange)}.widget-stats .stat.info .value{color:var(--accent-blue)}.widget-stats .stat.pulse{animation:stat-pulse 1.5s ease-in-out infinite;box-shadow:0 0 #ef444466}@keyframes stat-pulse{0%{box-shadow:0 0 #ef444499;background:var(--bg-card)}50%{box-shadow:0 0 15px 3px #ef444466;background:#ef444426}to{box-shadow:0 0 #ef444499;background:var(--bg-card)}}.widget-alerts{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color)}.widget-alert{padding:.5rem;background:var(--bg-card);border-radius:.375rem;margin-bottom:.5rem;font-size:.75rem}.widget-alert:last-child{margin-bottom:0}.widget-alert.alert-critical{border-left:3px solid var(--accent-red)}.widget-alert.alert-warning{border-left:3px solid var(--accent-yellow)}.widget-alert.alert-info{border-left:3px solid var(--accent-blue)}.widget-placeholder{cursor:default;opacity:.6}.widget-placeholder:hover{transform:none;box-shadow:none}.coming-soon{color:var(--text-secondary);font-style:italic;text-align:center;padding:2rem 0}.widget-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;gap:.5rem}.widget-loading .loading-spinner{width:24px;height:24px}.widget-error{color:var(--accent-red);text-align:center;padding:1rem;font-size:.875rem}.alert-feed{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.75rem;padding:1rem}.alert-feed h3{margin:0 0 1rem;font-size:1rem;color:var(--text-primary)}.alert-item{display:flex;gap:1rem;padding:.75rem;background:var(--bg-card);border-radius:.5rem;margin-bottom:.5rem;font-size:.875rem;align-items:center}.alert-item:last-child{margin-bottom:0}.alert-item .source{font-weight:700;color:var(--accent-blue);min-width:120px;font-size:.75rem}.alert-item .message{flex:1;color:var(--text-primary)}.alert-item .time{color:var(--text-secondary);font-size:.75rem;white-space:nowrap}.alert-item.alert-critical{border-left:3px solid var(--accent-red)}.alert-item.alert-warning{border-left:3px solid var(--accent-yellow)}.alert-item.alert-info{border-left:3px solid var(--accent-blue)}.no-alerts{color:var(--text-secondary);text-align:center;padding:2rem}.settings-page{max-width:800px;margin:0 auto}.settings-page h2{font-size:1.5rem;margin-bottom:1.5rem;color:var(--text-primary)}.settings-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.75rem;padding:1.5rem;margin-bottom:1.5rem}.settings-section h3{font-size:1rem;color:var(--text-primary);margin:0 0 1rem}.settings-section p{color:var(--text-secondary);font-size:.875rem;margin-bottom:1rem}.settings-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--border-color)}.settings-row:last-child{border-bottom:none}.settings-label{font-size:.875rem;color:var(--text-primary)}.settings-select{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;cursor:pointer}.settings-select:focus{outline:none;border-color:var(--accent-blue)}.settings-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer}.settings-checkbox input{width:1rem;height:1rem;accent-color:var(--accent-blue)}.widget-url-input{width:100%;padding:.75rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:.375rem;color:var(--text-primary);font-size:.875rem;margin-top:.5rem}.widget-url-input:focus{outline:none;border-color:var(--accent-blue)}.widget-url-input::placeholder{color:var(--text-secondary)}.widget-settings{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.widget-settings:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.widget-settings label{display:block;font-size:.875rem;color:var(--text-primary);margin-bottom:.25rem}.widget-settings small{display:block;font-size:.75rem;color:var(--text-secondary);margin-bottom:.5rem}.settings-actions{display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border-color)}.save-status{color:var(--accent-green);font-size:.875rem;opacity:0;transition:opacity .3s}.save-status.visible{opacity:1}.button-primary{background:var(--accent-blue);color:#fff;padding:.75rem 1.5rem;border:none;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;text-decoration:none;transition:background .2s}.button-primary:hover{background:#2563eb}.button-danger{background:var(--accent-red);color:#fff;padding:.5rem 1rem;border:none;border-radius:.5rem;font-size:.875rem;cursor:pointer;transition:background .2s}.button-danger:hover{background:#dc2626}.no-sessions{color:var(--text-secondary);padding:2rem;text-align:center}.changelog-link{color:var(--accent-blue);text-decoration:none;font-weight:500}.changelog-link:hover{text-decoration:underline}.error-message{background:#ef44441a;border:1px solid var(--accent-red);color:var(--accent-red);padding:1rem;border-radius:.5rem;text-align:center}.focused-dashboard{display:flex;flex-direction:column;height:100%;overflow:hidden;margin:-2rem}.mini-widget{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:.125rem;padding:.375rem .5rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:.375rem;cursor:pointer;transition:all .2s;white-space:nowrap;color:var(--text-primary);font-size:.7rem;min-width:120px;min-height:42px}.mini-widget-header{display:flex;align-items:center;gap:.5rem}.mini-widget:hover{background:var(--bg-primary);border-color:var(--accent-blue)}.mini-widget.active{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.mini-widget-icon{font-size:.875rem}.mini-widget-name{font-weight:500}.mini-widget-status{width:8px;height:8px;border-radius:50%;flex-shrink:0}.mini-widget-stats{display:flex;align-items:center;gap:.5rem;justify-content:center;padding-top:.25rem;border-top:1px solid var(--border-color);margin-top:.125rem}.mini-widget-not-configured{font-size:.6rem;color:var(--text-secondary);text-align:center;padding-top:.25rem;border-top:1px solid var(--border-color);margin-top:.125rem}.mini-stat{display:flex;align-items:center;gap:.25rem}.mini-stat-dot{width:6px;height:6px;border-radius:2px;flex-shrink:0}.mini-stat-value{font-size:.7rem;font-weight:600;color:var(--text-secondary)}.mini-stat.clickable{cursor:pointer;padding:.125rem .25rem;border-radius:.25rem;transition:all .15s ease;background:transparent;border:none;font-family:inherit;position:relative;z-index:10}.mini-stat.clickable:hover{background:#ffffff1a;transform:scale(1.1)}.mini-widget.active .mini-stat.clickable:hover{background:#fff3}.mini-widget.active .mini-stat-value{color:#ffffffe6}.mini-widget.active .mini-widget-stats{border-top-color:#fff3}.mini-stat-dot.pulse{animation:mini-stat-pulse 1.5s ease-in-out infinite}@keyframes mini-stat-pulse{0%{box-shadow:0 0 0 0 var(--accent-red);transform:scale(1)}50%{box-shadow:0 0 6px 2px #ef444480;transform:scale(1.3)}to{box-shadow:0 0 0 0 var(--accent-red);transform:scale(1)}}.back-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:.375rem;color:var(--text-primary);cursor:pointer;transition:all .2s;font-size:.875rem;white-space:nowrap}.back-button:hover{background:var(--bg-primary);border-color:var(--accent-blue);color:var(--accent-blue)}.mini-auto-refresh{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--text-secondary);cursor:pointer;white-space:nowrap}.mini-auto-refresh input{cursor:pointer}.focused-content{flex:1;overflow:hidden;background:var(--bg-primary)}.dashboard-iframe{width:100%;height:100%;border:none}.no-url-message{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:1rem;color:var(--text-secondary);text-align:center}.no-url-message p{margin:0}.focused-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:1rem;color:var(--text-secondary)}.dropdown-section-label{font-size:.65rem;color:var(--accent-purple);text-transform:uppercase;letter-spacing:.05em;padding:.25rem .75rem;font-weight:600}.admin-page{padding:1.5rem;max-width:1200px;margin:0 auto}.admin-page h2{margin-bottom:1rem;color:var(--text-primary)}.admin-page h3{color:var(--accent-blue);margin-top:1.5rem;margin-bottom:.75rem}.admin-page h4{color:var(--text-primary);margin-top:1rem;margin-bottom:.5rem;font-size:.95rem}.admin-description{color:var(--text-secondary);margin-bottom:1.5rem}.idea-section{background:var(--bg-secondary);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem;border-left:4px solid var(--accent-blue)}.idea-status{color:var(--accent-yellow);font-size:.85rem;margin-bottom:1rem}.idea-diagram{background:var(--bg-primary);border-radius:4px;padding:1rem;overflow-x:auto;margin:1rem 0}.idea-diagram pre{margin:0;font-size:.75rem;line-height:1.4;color:var(--text-secondary)}.idea-table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.85rem}.idea-table th,.idea-table td{padding:.5rem;text-align:left;border-bottom:1px solid var(--border-color)}.idea-table th{color:var(--text-secondary);font-weight:600}.idea-section ul{margin:.5rem 0;padding-left:1.5rem}.idea-section li{margin:.25rem 0;color:var(--text-secondary)}.terminal-page{max-width:1000px}.server-stats-bar{display:flex;gap:1px;background:var(--border-color);border-radius:8px;overflow:hidden;margin-bottom:1rem}.server-stat{flex:1;background:var(--bg-card);padding:.5rem .75rem;min-width:0}.server-stat .stat-label{display:block;font-size:.6rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:.15rem}.server-stat .stat-value{font-size:.9rem;font-weight:600;font-family:SF Mono,Monaco,monospace}.server-stat .stat-value.healthy{color:var(--accent-green)}.server-stat .stat-value.warning{color:var(--accent-yellow)}.server-stat .stat-value.critical{color:var(--accent-red)}.server-stat .stat-sub{font-size:.65rem;font-weight:400;color:var(--text-secondary);margin-right:.35rem}.server-stat .stat-detail{font-size:.65rem;color:var(--text-secondary)}.stat-bar-mini{height:3px;background:var(--border-color);border-radius:2px;margin-top:.25rem;overflow:hidden}.stat-bar-mini .stat-bar-fill{height:100%;border-radius:2px;transition:width .3s}.stat-legend{display:flex;gap:.75rem;font-size:.6rem;color:var(--text-secondary);margin-top:.25rem}.stat-legend span{display:flex;align-items:center;gap:.25rem}.server-uptime{text-align:right}.terminal-subtitle{color:var(--text-secondary);margin:.15rem 0 0;font-size:.8rem}.terminal-status-error-banner{background:#ef44441a;border:1px solid var(--accent-red);color:var(--accent-red);padding:.5rem .75rem;border-radius:6px;font-size:.8rem;margin-bottom:1rem}.terminal-audit-link{color:var(--accent-blue);font-size:.75rem;white-space:nowrap;text-decoration:none}.terminal-audit-link:hover{text-decoration:underline}.sessions-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;flex-wrap:wrap;gap:.75rem}.sessions-header-left h2{margin:0}.sessions-header-right{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.header-actions-stack{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem}.server-status-inline{display:flex;align-items:center;gap:.5rem;padding:.35rem .75rem;background:var(--bg-primary);border-radius:6px;border:1px solid var(--border-color)}.server-status-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);font-weight:600}.terminal-status-summary{font-size:.8rem;color:var(--text-secondary)}.terminal-status-error{font-size:.8rem;color:var(--accent-red)}.status-count{font-weight:600}.status-count.active{color:var(--accent-green)}.status-count.attached{color:var(--accent-blue)}.status-count.idle{color:var(--text-secondary)}.terminal-legend{display:flex;gap:.75rem;font-size:.7rem;color:var(--text-secondary)}.legend-item{display:flex;align-items:center;gap:.35rem}.terminal-table-wrapper{overflow-x:auto}.sessions-table{width:100%;border-collapse:collapse}.sessions-table th,.sessions-table td{padding:.6rem .75rem;text-align:left;border-bottom:1px solid var(--border-color);vertical-align:middle}.sessions-table th{color:var(--text-secondary);font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;-webkit-user-select:none;user-select:none}.sessions-table th:last-child{width:1%}.sessions-table th.sortable{cursor:pointer;transition:color .2s}.sessions-table th.sortable:hover{color:var(--accent-blue)}.sessions-table th .sort-indicator{margin-left:.35rem;font-size:.65rem;opacity:.4}.sessions-table th.sorted .sort-indicator{opacity:1;color:var(--accent-blue)}.sessions-table tbody tr{transition:background .15s}.sessions-table tbody tr:hover{background:#ffffff05}.sessions-table tbody tr.session-active{background:#22c55e08}.sessions-table tbody tr.session-active:hover{background:#22c55e0f}.session-name{font-weight:500;color:var(--text-primary)}.session-tmux{font-family:SF Mono,Monaco,Cascadia Code,monospace;font-size:.8rem;color:var(--accent-green)}.type-badge{display:inline-block;padding:.15rem .5rem;border-radius:3px;font-size:.7rem;font-weight:500}.type-badge.built-in{background:#64748b26;color:var(--text-secondary)}.type-badge.custom{background:#a855f726;color:var(--accent-purple)}.session-status-cell{white-space:nowrap}.session-status-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;padding:.2rem .5rem;border-radius:3px}.session-status-badge.attached{background:#22c55e1a;color:var(--accent-green)}.session-status-badge.running{background:#eab3081a;color:var(--accent-yellow)}.session-status-badge.inactive{color:var(--text-secondary);opacity:.5}.session-status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.session-status-dot.attached{background:var(--accent-green);box-shadow:0 0 4px var(--accent-green)}.session-status-dot.detached{background:var(--accent-yellow)}.session-uptime{font-size:.7rem;font-family:SF Mono,Monaco,monospace}.session-windows{font-size:.65rem;opacity:.7;margin-left:.25rem}.session-actions{text-align:right;white-space:nowrap;display:flex;gap:.35rem;justify-content:flex-end}.session-actions .button-sm{padding:.3rem .75rem;font-size:.75rem}.button-icon-danger{background:transparent;border:none;color:var(--text-secondary);font-size:1.1rem;cursor:pointer;padding:.2rem .4rem;border-radius:3px;line-height:1;transition:all .15s}.button-icon-danger:hover{background:#ef444426;color:var(--accent-red)}.terminal-add-form{display:flex;gap:.75rem;flex-wrap:wrap}.terminal-input{flex:1;min-width:180px;padding:.6rem .85rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.875rem;transition:border-color .2s}.terminal-input::placeholder{color:var(--text-secondary);opacity:.6}.terminal-input:focus{outline:none;border-color:var(--accent-blue)}.terminal-input-inline{width:100%;padding:.4rem .6rem;background:var(--bg-primary);border:1px solid var(--accent-blue);border-radius:4px;color:var(--text-primary);font-size:.85rem}.terminal-input-inline:focus{outline:none}.terminal-input-inline.mono{font-family:SF Mono,Monaco,Cascadia Code,monospace}.session-editing{background:#3b82f614!important}.terminal-reset-link{margin-top:.75rem;font-size:.8rem}.link-button{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:0;font-size:inherit;text-decoration:underline}.link-button:hover{color:var(--accent-blue)}.terminal-input.mono{font-family:SF Mono,Monaco,Cascadia Code,monospace}.terminal-help h3{margin-bottom:1rem}.terminal-help-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin-bottom:1rem}.help-item{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;background:var(--bg-primary);border-radius:6px}.help-item code{background:var(--bg-secondary);padding:.25rem .5rem;border-radius:4px;font-size:.75rem;color:var(--accent-blue);white-space:nowrap}.help-item span{font-size:.8rem;color:var(--text-secondary)}.help-note{font-size:.8rem;color:var(--text-secondary);margin:0;padding-top:.5rem;border-top:1px solid var(--border-color)}.help-details{margin:1rem 0;padding:.75rem 1rem;background:var(--bg-primary);border-radius:6px;border:1px solid var(--border-color)}.help-details summary{cursor:pointer;font-weight:500;font-size:.85rem;color:var(--accent-blue);-webkit-user-select:none;user-select:none}.help-details summary:hover{text-decoration:underline}.help-details[open] summary{margin-bottom:.5rem}.help-command-block{margin-top:.75rem;padding:.5rem .75rem;background:var(--bg-secondary);border-radius:4px}.help-command-label{font-size:.75rem;color:var(--text-secondary);margin:0 0 .35rem}.help-command{display:block;background:var(--bg-card);padding:.4rem .6rem;border-radius:4px;font-size:.75rem;color:var(--accent-green);white-space:nowrap;overflow-x:auto}.terminal-loading{color:var(--text-secondary);padding:2rem;text-align:center}.button-primary{background:var(--accent-blue);color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.85rem}.button-primary:hover{opacity:.9}.button-secondary{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color);padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.85rem}.button-secondary:hover{background:var(--border-color)}.server-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1rem}@media (max-width: 900px){.server-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 500px){.server-stats-grid{grid-template-columns:1fr}}.server-stat-card{background:var(--bg-primary);border-radius:8px;padding:.75rem 1rem;border:1px solid var(--border-color)}.stat-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.5rem}.stat-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);font-weight:600}.stat-value{font-size:1.1rem;font-weight:600;font-family:SF Mono,Monaco,monospace}.stat-value.healthy{color:var(--accent-green)}.stat-value.warning{color:var(--accent-yellow)}.stat-value.critical{color:var(--accent-red)}.stat-bar{height:4px;background:var(--border-color);border-radius:2px;overflow:hidden;margin-bottom:.5rem}.stat-bar-fill{height:100%;border-radius:2px;transition:width .3s ease}.stat-bar-fill.healthy{background:var(--accent-green)}.stat-bar-fill.warning{background:var(--accent-yellow)}.stat-bar-fill.critical{background:var(--accent-red)}.stat-detail{font-size:.7rem;color:var(--text-secondary)}.sessions-summary{display:flex;flex-direction:column;gap:.25rem;margin:.5rem 0}.summary-item{display:flex;align-items:center;gap:.35rem;font-size:.75rem;color:var(--text-secondary)}.sessions-table-enhanced th:nth-child(5),.sessions-table-enhanced th:nth-child(6),.sessions-table-enhanced td:nth-child(5),.sessions-table-enhanced td:nth-child(6){text-align:right;width:60px}.col-resource{text-align:right;width:55px}.session-resource{text-align:right;font-family:SF Mono,Monaco,monospace;font-size:.75rem}.resource-value{padding:.15rem .4rem;border-radius:3px}.resource-value.healthy{color:var(--accent-green)}.resource-value.warning{background:#eab3081a;color:var(--accent-yellow)}.resource-value.critical{background:#ef444426;color:var(--accent-red)}.resource-value.inactive{color:var(--text-secondary);opacity:.4}.session-branch{display:inline-block;margin-left:.5rem;padding:.1rem .4rem;background:#a855f726;color:var(--accent-purple);font-size:.65rem;border-radius:3px;font-family:SF Mono,Monaco,monospace}.sessions-table tbody tr.session-expanded{background:#3b82f60d}.session-details-row,.session-details-row:hover{background:var(--bg-primary)!important}.session-details-row td{padding:0!important;border-bottom:2px solid var(--accent-blue)}.session-details{display:flex;flex-wrap:wrap;gap:1.5rem;padding:.75rem 1rem;font-size:.8rem}.detail-item{display:flex;flex-direction:column;gap:.2rem}.detail-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.detail-value{color:var(--text-primary)}.detail-commands{display:flex;gap:.35rem;flex-wrap:wrap}.detail-commands code{background:var(--bg-secondary);padding:.15rem .4rem;border-radius:3px;font-size:.7rem;color:var(--accent-blue)}.detail-value code{background:var(--bg-secondary);padding:.15rem .4rem;border-radius:3px;font-size:.75rem;color:var(--accent-purple)}.detail-notes{flex-basis:100%}.terminal-filters{display:flex;gap:.5rem;margin-bottom:.75rem;flex-wrap:wrap;align-items:center}.terminal-search{flex:1;min-width:150px;max-width:250px;padding:.4rem .6rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:.8rem}.terminal-search:focus{outline:none;border-color:var(--accent-blue)}.terminal-filter-select{padding:.4rem .5rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:.75rem;cursor:pointer}.filter-checkbox{display:flex;align-items:center;gap:.3rem;font-size:.75rem;color:var(--text-secondary);cursor:pointer}.filter-checkbox input{cursor:pointer}.auto-refresh-toggle{display:flex;align-items:center;gap:.3rem;font-size:.7rem;color:var(--text-secondary);cursor:pointer}.auto-refresh-toggle input{cursor:pointer}.terminal-add-inline{display:flex;gap:.5rem;padding:.75rem;background:var(--bg-primary);border-radius:6px;margin-bottom:.75rem}.terminal-add-inline .terminal-input{flex:1;padding:.4rem .6rem;font-size:.8rem}.session-pin{text-align:center;cursor:pointer;color:var(--border-color);font-size:.9rem;transition:color .15s}.session-pin:hover,.session-pin .pinned{color:var(--accent-yellow)}.session-tags{display:inline-flex;gap:.25rem;margin-left:.5rem}.session-tag{padding:.1rem .35rem;background:var(--bg-secondary);border-radius:3px;font-size:.6rem;color:var(--text-secondary)}.edit-extras{display:flex;flex-direction:column;gap:.4rem}.edit-tags{display:flex;gap:.25rem;flex-wrap:wrap}.tag-btn{padding:.2rem .4rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:3px;font-size:.65rem;color:var(--text-secondary);cursor:pointer;transition:all .15s}.tag-btn:hover{border-color:var(--accent-blue)}.tag-btn.active{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.col-accessed{text-align:right;width:70px}.session-accessed{text-align:right;font-size:.7rem;color:var(--text-secondary)}.resource-with-spark{display:flex;align-items:center;gap:.35rem;justify-content:flex-end}.sparkline{opacity:.7}.session-alert{background:#ef444414!important}.stat-alert{font-size:.65rem;color:var(--accent-red);margin-top:.15rem}.terminal-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color)}.session-count{font-size:.75rem;color:var(--text-secondary)}.no-results{text-align:center;padding:2rem!important;color:var(--text-secondary)}.terminal-help details{margin:0}.terminal-help summary{cursor:pointer;font-weight:500;font-size:.9rem;padding:.5rem 0;color:var(--text-primary)}.terminal-help[open] summary{margin-bottom:.75rem}.terminal-help .terminal-help-grid{margin-bottom:.75rem}.terminal-help .help-command-block{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.terminal-help .help-command-label{font-size:.7rem;color:var(--text-secondary);margin:0}.service-health-ticker{width:100%}.ticker-bar-wrapper{display:flex;width:100%;height:28px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);contain:layout style paint;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ticker-view-all-fixed{flex-shrink:0;padding:0 .75rem;background:var(--bg-tertiary, var(--bg-card));border:none;border-left:1px solid var(--border-color);color:var(--accent-blue);font-size:.7rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .15s}.ticker-view-all-fixed:hover{background:var(--bg-hover, rgba(255,255,255,.05));text-decoration:underline}.ticker-bar{flex:1;height:28px;overflow:hidden;position:relative;cursor:default;-webkit-user-select:none;user-select:none;isolation:isolate}.ticker-bar-operational{background:linear-gradient(90deg,var(--bg-secondary) 0%,rgba(34,197,94,.05) 50%,var(--bg-secondary) 100%)}.ticker-bar-loading,.ticker-bar-error{background:var(--bg-secondary)}.ticker-content-static{display:flex;align-items:center;justify-content:center;height:100%;padding:0 1rem}.ticker-all-ok{display:flex;align-items:center;gap:.375rem;color:var(--accent-green);font-size:.7rem;font-weight:500}.ticker-ok-icon{font-weight:700}.ticker-loading{color:var(--text-secondary);font-size:.8rem}.ticker-error{color:var(--accent-red);font-size:.8rem}.ticker-content{display:flex;align-items:center;height:100%;white-space:nowrap;will-change:transform;transform:translateZ(0);text-rendering:optimizeSpeed}.ticker-content.no-scroll{justify-content:center}.ticker-set{display:flex;align-items:center;flex-shrink:0}.ticker-item{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .75rem;margin-right:1.5rem;background:transparent;border:none;cursor:pointer;font-family:inherit;font-size:.7rem;color:var(--text-primary);transition:background-color .2s;border-radius:.25rem}.ticker-item:hover{background:var(--bg-card)}.ticker-item-number{font-size:.6rem;color:var(--text-secondary);font-weight:500;min-width:1.5rem;text-align:center}.ticker-vendor-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:.25rem;font-size:.55rem;font-weight:700;color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.3);flex-shrink:0}.ticker-item-title{color:var(--text-primary);font-weight:500}.ticker-clients{color:var(--text-secondary);font-weight:400;margin-left:.25rem}.ticker-severity{padding:.0625rem .375rem;border-radius:.1875rem;font-size:.55rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.ticker-severity-critical{animation:severity-pulse 1.5s ease-in-out infinite}@keyframes severity-pulse{0%,to{opacity:1}50%{opacity:.7}}.service-health-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem}.service-health-modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.75rem;width:100%;max-width:600px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000080}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.25rem;background:var(--bg-card);border-bottom:1px solid var(--border-color)}.modal-title-row{display:flex;align-items:center;gap:.75rem;flex:1}.modal-vendor-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--bg-secondary);border-radius:.5rem;font-size:.875rem;font-weight:600;color:var(--text-secondary);flex-shrink:0}.modal-title-info{flex:1;min-width:0}.modal-title-info h2{margin:0;font-size:1rem;color:var(--text-primary);line-height:1.3}.modal-vendor-name{font-size:.75rem;color:var(--text-secondary)}.modal-severity{padding:.25rem .75rem;border-radius:.25rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;flex-shrink:0}.modal-close{background:transparent;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:0;line-height:1;margin-left:.75rem}.modal-close:hover{color:var(--text-primary)}.modal-body{padding:1.25rem;overflow-y:auto;flex:1}.modal-section{margin-bottom:1.25rem}.modal-section:last-child{margin-bottom:0}.modal-section h3{font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .75rem}.modal-meta{display:flex;flex-direction:column;gap:.5rem}.modal-meta-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem;background:var(--bg-card);border-radius:.375rem}.meta-label{font-size:.75rem;color:var(--text-secondary)}.meta-value{font-size:.8rem;color:var(--text-primary);text-align:right}.affected-services,.affected-clients{display:flex;flex-wrap:wrap;gap:.5rem}.service-tag,.client-tag{padding:.375rem .75rem;background:var(--bg-card);border-radius:.375rem;font-size:.75rem;color:var(--text-primary)}.client-tag{background:#3b82f61a;border:1px solid var(--accent-blue);color:var(--accent-blue)}.update-history{display:flex;flex-direction:column;gap:.75rem}.update-item{padding:.75rem;background:var(--bg-card);border-radius:.375rem;border-left:3px solid var(--border-color)}.update-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.375rem}.update-status{font-size:.75rem;font-weight:600;color:var(--text-primary);text-transform:capitalize}.update-time{font-size:.7rem;color:var(--text-secondary)}.update-message{font-size:.8rem;color:var(--text-secondary);margin:0;line-height:1.5}.modal-footer{padding-top:.75rem;margin-top:.75rem;border-top:1px solid var(--border-color)}.status-page-link{display:inline-flex;align-items:center;gap:.375rem;color:var(--accent-blue);text-decoration:none;font-size:.8rem;font-weight:500}.status-page-link:hover{text-decoration:underline}.ticker-view-all{display:inline-flex;align-items:center;padding:.25rem .75rem;margin-right:1.5rem;background:var(--accent-blue);border:none;border-radius:.25rem;color:#fff;font-size:.65rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .2s}.ticker-view-all:hover{background:#2563eb}.service-health-all-modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.75rem;width:100%;max-width:700px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000080}.service-health-all-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:var(--bg-card);border-bottom:1px solid var(--border-color)}.service-health-all-modal .modal-title-row{display:flex;align-items:center;gap:.75rem}.service-health-all-modal .modal-title-row h2{margin:0;font-size:1rem;color:var(--text-primary)}.hidden-count{font-size:.7rem;color:var(--text-secondary);background:var(--bg-secondary);padding:.125rem .5rem;border-radius:.25rem}.modal-header-actions{display:flex;align-items:center;gap:.5rem}.settings-toggle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1px solid var(--border-color);border-radius:.375rem;color:var(--text-secondary);cursor:pointer;transition:all .2s}.settings-toggle:hover{background:var(--bg-secondary);color:var(--text-primary)}.settings-toggle.active{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.service-health-all-modal .modal-body{padding:1rem;overflow-y:auto;flex:1}.settings-panel{display:flex;flex-direction:column;gap:1rem}.settings-description{font-size:.8rem;color:var(--text-secondary);margin:0}.settings-error{color:var(--accent-red)}.settings-description-sub{font-size:.75rem;color:var(--text-secondary);margin:0}.settings-section-divider{height:1px;background:var(--border-color);margin:.5rem 0}.speed-setting{background:var(--bg-card);padding:.75rem 1rem;border-radius:.5rem;border:1px solid var(--border-color)}.speed-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.speed-header label{font-size:.8rem;font-weight:500;color:var(--text-primary)}.speed-value{font-size:.75rem;color:var(--text-secondary);font-family:monospace}.speed-slider-row{display:flex;align-items:center;gap:.75rem}.speed-label{font-size:.7rem;color:var(--text-secondary);min-width:2rem}.speed-label:last-child{text-align:right}.speed-slider{flex:1;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-primary);border-radius:3px;outline:none;cursor:pointer}.speed-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;background:var(--accent-blue);border-radius:50%;cursor:pointer;border:2px solid var(--bg-card);box-shadow:0 1px 3px #0000004d}.speed-slider::-moz-range-thumb{width:16px;height:16px;background:var(--accent-blue);border-radius:50%;cursor:pointer;border:2px solid var(--bg-card);box-shadow:0 1px 3px #0000004d}.settings-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:3rem 2rem;color:var(--text-secondary)}.settings-loading p{margin:0;font-size:.9rem}.vendor-products-list{display:flex;flex-direction:column;gap:.5rem;max-height:450px;overflow-y:auto}.vendor-group{background:var(--bg-card);border-radius:.5rem;border:1px solid var(--border-color);overflow:visible;position:relative}.vendor-header{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:none;border:none;width:100%;cursor:pointer;transition:background .15s}.vendor-header:hover{background:var(--bg-primary)}.vendor-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:.375rem;font-size:.7rem;font-weight:700;color:#fff;flex-shrink:0}.vendor-name{flex:1;font-size:.9rem;font-weight:600;color:var(--text-primary);text-align:left}.vendor-count{font-size:.75rem;color:var(--text-secondary);background:var(--bg-primary);padding:.25rem .5rem;border-radius:.25rem}.vendor-expand-icon{font-size:.7rem;color:var(--text-secondary);width:1rem;text-align:center}.product-section{border-top:1px solid var(--border-color);padding:.75rem 1rem;background:var(--bg-primary);position:relative;z-index:1}.product-actions{display:flex;gap:.5rem;margin-bottom:.75rem}.product-action-btn{padding:.375rem .75rem;font-size:.75rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:.25rem;color:var(--text-secondary);cursor:pointer;transition:all .15s}.product-action-btn:hover{border-color:var(--accent-blue);color:var(--accent-blue)}.product-action-btn.active{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.375rem;max-height:250px;overflow-y:auto;padding-right:.5rem}.product-item{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;border-radius:.25rem;cursor:pointer;transition:background .15s}.product-item:hover{background:var(--bg-card)}.product-item.has-issue{background:#ef44441a}.product-item input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent-blue);cursor:pointer;flex-shrink:0}.product-item .product-name{font-size:.8rem;color:var(--text-primary);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-issue-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-red);flex-shrink:0}.settings-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--border-color);margin-top:.5rem}.settings-footer-right{display:flex;gap:.5rem}.reset-btn,.cancel-btn{padding:.5rem 1rem;background:transparent;border:1px solid var(--border-color);border-radius:.375rem;color:var(--text-secondary);font-size:.8rem;cursor:pointer;transition:all .2s}.reset-btn:hover,.cancel-btn:hover{background:var(--bg-card);color:var(--text-primary)}.save-btn{padding:.5rem 1.25rem;background:var(--accent-blue);border:none;border-radius:.375rem;color:#fff;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s}.save-btn:hover:not(:disabled){background:var(--accent-blue-hover, #0066b8)}.save-btn:disabled{opacity:.5;cursor:not-allowed}.all-items-list{display:flex;flex-direction:column;gap:.5rem}.all-items-row{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--bg-card);border:1px solid transparent;border-radius:.5rem;cursor:pointer;transition:all .2s;text-align:left;width:100%}.all-items-row:hover{background:var(--bg-primary);border-color:var(--accent-blue)}.all-items-vendor{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:.375rem;font-size:.65rem;font-weight:700;color:#fff;flex-shrink:0}.all-items-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.all-items-title{font-size:.85rem;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.all-items-meta{font-size:.7rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.all-items-time{font-size:.7rem;color:var(--text-secondary);white-space:nowrap}.all-items-severity{padding:.125rem .5rem;border-radius:.25rem;font-size:.6rem;font-weight:600;flex-shrink:0}.no-items{text-align:center;padding:2rem;color:var(--text-secondary);font-size:.875rem}.feedback-widget{position:fixed;bottom:1.5rem;right:1.5rem;z-index:1500}.feedback-button{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--accent-blue);color:#fff;border:none;border-radius:50%;cursor:pointer;box-shadow:0 4px 12px #0000004d;transition:transform .2s,box-shadow .2s,background .2s}.feedback-button:hover{transform:scale(1.1);box-shadow:0 6px 16px #0006;background:#2563eb}.feedback-button:active{transform:scale(.95)}.feedback-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem}.feedback-modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.75rem;width:100%;max-width:500px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000080}.feedback-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:var(--bg-card);border-bottom:1px solid var(--border-color)}.feedback-modal-header h2{margin:0;font-size:1rem;color:var(--text-primary)}.feedback-modal-close{background:transparent;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:0;line-height:1}.feedback-modal-close:hover{color:var(--text-primary)}.feedback-modal-body{padding:1.25rem;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:1rem}.feedback-screenshot-section{display:flex;flex-direction:column;gap:.5rem}.feedback-screenshot-header{display:flex;justify-content:space-between;align-items:center}.feedback-screenshot-section label{font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.feedback-retake-button{padding:.25rem .5rem;background:transparent;border:1px solid var(--border-color);border-radius:.25rem;color:var(--text-secondary);font-size:.75rem;cursor:pointer;transition:all .2s}.feedback-retake-button:hover:not(:disabled){background:var(--bg-secondary);color:var(--text-primary);border-color:var(--text-secondary)}.feedback-retake-button:disabled{opacity:.5;cursor:not-allowed}.feedback-screenshot-preview{border:1px solid var(--border-color);border-radius:.5rem;overflow:hidden;background:var(--bg-card)}.feedback-screenshot-preview img{width:100%;height:auto;display:block}.feedback-screenshot-loading{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:2rem;background:var(--bg-card);border-radius:.5rem;color:var(--text-secondary);font-size:.875rem}.feedback-screenshot-error{padding:1.5rem;background:var(--bg-card);border-radius:.5rem;color:var(--text-secondary);text-align:center;font-size:.875rem;display:flex;flex-direction:column;align-items:center;gap:.75rem}.feedback-screenshot-error p{margin:0}.feedback-description-section{display:flex;flex-direction:column;gap:.5rem}.feedback-description-section label{font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.feedback-description-section textarea{width:100%;padding:.75rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:.5rem;color:var(--text-primary);font-size:.875rem;font-family:inherit;resize:vertical;min-height:80px}.feedback-description-section textarea:focus{outline:none;border-color:var(--accent-blue)}.feedback-description-section textarea::placeholder{color:var(--text-secondary)}.feedback-description-section textarea:disabled{opacity:.6;cursor:not-allowed}.feedback-info{display:flex;align-items:center;gap:.5rem;font-size:.8rem;padding:.5rem .75rem;background:var(--bg-card);border-radius:.375rem}.feedback-info-label{color:var(--text-secondary)}.feedback-info-value{color:var(--text-primary);font-weight:500}.feedback-unavailable{color:var(--accent-yellow);font-weight:400}.feedback-error{padding:.75rem;background:#ef44441a;border:1px solid var(--accent-red);border-radius:.375rem;color:var(--accent-red);font-size:.875rem}.feedback-success{padding:.75rem;background:#22c55e1a;border:1px solid var(--accent-green);border-radius:.375rem;color:var(--accent-green);font-size:.875rem;text-align:center}.feedback-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.25rem;background:var(--bg-card);border-top:1px solid var(--border-color)}.feedback-cancel-button{padding:.5rem 1rem;background:transparent;border:1px solid var(--border-color);border-radius:.375rem;color:var(--text-primary);font-size:.875rem;cursor:pointer;transition:all .2s}.feedback-cancel-button:hover{background:var(--bg-secondary);border-color:var(--text-secondary)}.feedback-cancel-button:disabled{opacity:.5;cursor:not-allowed}.feedback-submit-button{padding:.5rem 1rem;background:var(--accent-blue);border:none;border-radius:.375rem;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.feedback-submit-button:hover:not(:disabled){background:#2563eb}.feedback-submit-button:disabled{opacity:.5;cursor:not-allowed}.feedback-review-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1800;padding:1rem}.feedback-review-modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.75rem;width:100%;max-width:520px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000080}.feedback-review-modal-error{max-width:400px}.feedback-review-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:var(--bg-card);border-bottom:1px solid var(--border-color)}.feedback-review-header h2{margin:0;font-size:1.1rem;color:var(--text-primary)}.feedback-review-header-actions{display:flex;align-items:center;gap:.5rem}.feedback-review-minimize{background:transparent;border:none;color:var(--text-secondary);font-size:1.25rem;font-weight:700;cursor:pointer;padding:.25rem .5rem;line-height:1;border-radius:.25rem}.feedback-review-minimize:hover{background:var(--bg-secondary);color:var(--text-primary)}.feedback-review-close{background:transparent;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:0;line-height:1}.feedback-review-close:hover{color:var(--text-primary)}.feedback-review-body{padding:1.25rem;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:1rem}.feedback-review-section{display:flex;flex-direction:column;gap:.5rem}.feedback-review-section h3{margin:0;font-size:.85rem;color:var(--text-secondary);font-weight:500}.feedback-review-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:.5rem;padding:.875rem}.feedback-review-description,.feedback-review-notes{margin:0 0 .75rem;font-size:.9rem;color:var(--text-primary);line-height:1.5;white-space:pre-wrap}.feedback-review-screenshot{position:relative;cursor:pointer;border-radius:.375rem;overflow:hidden;margin-bottom:.75rem;max-height:150px}.feedback-review-screenshot img{width:100%;height:auto;display:block;object-fit:cover}.feedback-review-screenshot-hint{position:absolute;bottom:0;left:0;right:0;background:#000000b3;color:#fff;font-size:.75rem;padding:.25rem .5rem;text-align:center;opacity:0;transition:opacity .2s}.feedback-review-screenshot:hover .feedback-review-screenshot-hint{opacity:1}.feedback-review-meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;font-size:.75rem;color:var(--text-secondary)}.feedback-review-instructions{margin:.5rem 0 0;font-size:.9rem;color:var(--text-secondary);text-align:center}.feedback-review-footer{display:flex;justify-content:center;gap:1rem;padding:1rem 1.25rem;background:var(--bg-card);border-top:1px solid var(--border-color)}.feedback-review-btn{padding:.625rem 1.25rem;border:none;border-radius:.5rem;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.feedback-review-btn:disabled{opacity:.5;cursor:not-allowed}.feedback-review-btn-primary{background:var(--accent-blue);color:#fff}.feedback-review-btn-primary:hover:not(:disabled){background:#2563eb}.feedback-review-btn-secondary{background:transparent;border:1px solid var(--border-color);color:var(--text-primary)}.feedback-review-btn-secondary:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--text-secondary)}.feedback-review-btn-approve{background:var(--accent-green);color:#fff}.feedback-review-btn-approve:hover:not(:disabled){background:#16a34a}.feedback-review-btn-reject{background:var(--accent-red);color:#fff}.feedback-review-btn-reject:hover:not(:disabled){background:#dc2626}.feedback-review-textarea{width:100%;padding:.75rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:.5rem;color:var(--text-primary);font-size:.9rem;font-family:inherit;resize:vertical;min-height:100px}.feedback-review-textarea:focus{outline:none;border-color:var(--accent-blue)}.feedback-review-textarea::placeholder{color:var(--text-secondary)}.feedback-review-textarea:disabled{opacity:.6;cursor:not-allowed}.feedback-review-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:3rem 2rem;color:var(--text-secondary)}.feedback-review-loading p{margin:0;font-size:.9rem}.feedback-review-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;text-align:center}.feedback-review-error-icon{font-size:2rem}.feedback-review-error p{margin:0;color:var(--text-secondary);font-size:.9rem}.feedback-review-minimized{position:fixed;bottom:1.5rem;right:1.5rem;display:flex;gap:.75rem;z-index:1500}.feedback-review-bubble{display:flex;align-items:center;justify-content:center;width:50px;height:50px;border:none;border-radius:50%;cursor:pointer;font-size:1.25rem;box-shadow:0 4px 12px #0000004d;transition:transform .2s,box-shadow .2s}.feedback-review-bubble:hover:not(:disabled){transform:scale(1.1);box-shadow:0 6px 16px #0006}.feedback-review-bubble:active:not(:disabled){transform:scale(.95)}.feedback-review-bubble:disabled{opacity:.6;cursor:not-allowed}.feedback-review-bubble-approve{background:var(--accent-green);color:#fff}.feedback-review-bubble-reject{background:var(--accent-orange, #f97316);color:#fff}.feedback-review-toast{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);z-index:2000;animation:slideUpFade .3s ease}.feedback-review-toast-content{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;background:var(--accent-green);color:#fff;border-radius:.5rem;box-shadow:0 4px 12px #0000004d;font-size:.95rem;font-weight:500}.feedback-review-toast-icon{font-size:1.25rem}@keyframes slideUpFade{0%{opacity:0;transform:translate(-50%) translateY(1rem)}to{opacity:1;transform:translate(-50%) translateY(0)}}
