:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh}#root{min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.user-avatar{border-radius:50%;object-fit:cover;background-color:#333}.user-avatar-placeholder{border-radius:50%;background-color:#444;color:#888;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem;border:1px solid #333}.dvm-list{display:flex;flex-direction:column;height:100%}.dvm-list-header{padding:1rem;border-bottom:1px solid #333;display:flex;justify-content:space-between;align-items:center;gap:.5rem}.filter-toggle{display:flex;background:#0d0d0d;border:1px solid #333;border-radius:6px;overflow:hidden}.filter-toggle button{padding:.5rem .875rem;font-size:.8125rem;font-weight:500;background:transparent;color:#888;border:none;cursor:pointer;transition:all .2s}.filter-toggle button:hover{color:#fff;background:#ffffff0d}.filter-toggle button.active{background:#6366f1;color:#fff}.pair-button{padding:.5rem .75rem;font-size:.8125rem;font-weight:500;background:#6366f1;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background .2s}.pair-button:hover{background:#4f46e5}.dvm-list-content{flex:1;overflow-y:auto}.dvm-list-loading,.dvm-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;color:#888;text-align:center;gap:1rem}.dvm-list-empty button{padding:.5rem 1rem;background:#6366f1;color:#fff;border:none;border-radius:6px;cursor:pointer}.spinner{width:24px;height:24px;border:2px solid #333;border-top-color:#6366f1;border-radius:50%;animation:spin 1s linear infinite}.dvm-list-item{padding:1.25rem 1rem;border-bottom:1px solid #1a1a1a;cursor:pointer;transition:all .2s ease;position:relative}.dvm-list-item:hover{background:#161616}.dvm-list-item.selected{background:#1a1a1a}.dvm-list-item.selected:after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#6366f1}.dvm-item-main{display:flex;gap:1rem;align-items:flex-start}.dvm-avatar{margin-top:.25rem}.dvm-item-details{flex:1;min-width:0}.dvm-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.manage-badge{font-size:.625rem;font-weight:700;text-transform:uppercase;background:#34d399;color:#000;padding:.125rem .375rem;border-radius:4px;margin-right:.5rem;vertical-align:middle}.status-indicator{width:8px;height:8px;border-radius:50%}.status-indicator.active{background:#34d399;box-shadow:0 0 8px #34d39966}.status-indicator.paused{background:#fbbf24}.status-indicator.offline{background:#666}.dvm-item-stats{display:flex;gap:.5rem;margin-top:.75rem;font-size:.75rem;color:#6366f1;font-weight:500}.dvm-name{font-weight:600;font-size:.9375rem;display:flex;align-items:center}.dvm-item-about{font-size:.8125rem;color:#888;margin-bottom:.5rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dvm-item-meta{display:flex;justify-content:space-between;font-size:.75rem;color:#666}.dvm-pubkey{font-family:monospace}@media(max-width:768px){.dvm-list-item{padding:1rem .75rem}.dvm-list-header{padding:.75rem}.filter-toggle button{padding:.375rem .625rem;font-size:.75rem}}.selftest-container{background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:1.25rem}.selftest-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.selftest-header h3{margin:0;font-size:1rem;color:#888}.selftest-button{padding:.5rem 1rem;font-size:.875rem;font-weight:500;background:#333;color:#fff;border:1px solid #444;border-radius:6px;cursor:pointer;transition:all .2s}.selftest-button:hover:not(:disabled){background:#444;border-color:#555}.selftest-button:disabled{opacity:.6;cursor:not-allowed}.selftest-running{display:flex;align-items:center;gap:.75rem;padding:1rem 0;color:#888}.selftest-running p{margin:0;font-size:.875rem}.spinner{width:20px;height:20px;border:2px solid #333;border-top-color:#6366f1;border-radius:50%;animation:spin 1s linear infinite}.selftest-result{border-radius:6px;overflow:hidden}.selftest-result.success{border:1px solid rgba(52,211,153,.3)}.selftest-result.failure{border:1px solid rgba(248,113,113,.3)}.result-header{padding:.75rem;background:#0003}.result-badge{font-size:.875rem;font-weight:600}.result-badge.success{color:#34d399}.result-badge.failure{color:#f87171}.result-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;padding:1rem}.result-item{display:flex;flex-direction:column;gap:.25rem}.result-label{font-size:.75rem;color:#666;text-transform:uppercase}.result-value{font-size:.9rem;color:#ccc}.result-value.highlight{color:#34d399;font-weight:600;font-size:1rem}.system-info-section{margin-bottom:1.5rem}.system-info-section h3{margin:0 0 1rem;font-size:1rem;color:#888}.system-info-loading{display:flex;align-items:center;gap:.75rem;color:#888;font-size:.875rem}.system-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.system-info-card{background:#222;border:1px solid #333;border-radius:6px;padding:.75rem}.system-info-card h4{margin:0 0 .5rem;font-size:.75rem;color:#666;text-transform:uppercase;font-weight:500}.system-info-card .info-content{display:flex;flex-direction:column;gap:.25rem}.system-info-card .info-value{font-size:.9rem;color:#eee;font-weight:500}.system-info-card .info-value.error{color:#f87171}.system-info-card .info-value.ffmpeg-version{font-family:monospace;font-size:.8rem}.system-info-card .info-detail{font-size:.75rem;color:#888}.system-info-card .info-detail.path{font-family:monospace;word-break:break-all;color:#666}.system-info-card.warning{border-color:#f59e0b;background:#f59e0b1a}.system-info-card.critical{border-color:#f87171;background:#f871711a}.encoder-list{display:flex;flex-direction:column;gap:.5rem}.encoder-item{display:flex;flex-direction:column;gap:.125rem;padding:.375rem .5rem;background:#1a1a1a;border-radius:4px;border:1px solid transparent}.encoder-item.selected{border-color:#34d399;background:#34d3991a}.encoder-name{font-size:.8rem;color:#ccc;display:flex;align-items:center;gap:.375rem}.selected-badge{color:#34d399;font-size:.6rem}.encoder-codecs{font-size:.7rem;color:#666}.selftest-section{margin-top:.5rem;padding-top:1rem;border-top:1px solid #333}@media(max-width:768px){.result-grid,.system-info-grid{grid-template-columns:1fr}}.dvm-detail-panel{max-width:900px;padding:2rem}.dvm-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.header-left h2{margin:0 0 .25rem;font-size:1.5rem}.title-with-avatar{display:flex;gap:1.25rem;align-items:center}.title-text{display:flex;flex-direction:column}.npub{font-size:.75rem;color:#888;background:#1a1a1a;padding:.375rem .625rem;border-radius:4px;word-break:break-all}.header-actions{display:flex;align-items:center;gap:.75rem}.status-badge{padding:.375rem .875rem;border-radius:12px;font-size:.8125rem;font-weight:500}.status-badge.active{background:#34d39933;color:#34d399}.status-badge.paused{background:#fbbf2433;color:#fbbf24}.status-badge.offline{background:#6663;color:#888}.action-btn{padding:.5rem 1rem;font-size:.875rem;background:#333;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background .2s}.action-btn:hover:not(:disabled){background:#444}.action-btn:disabled{opacity:.5;cursor:not-allowed}.public-dvm-info{background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:1.5rem}.public-dvm-info .dvm-about{color:#ccc;margin-bottom:1rem}.public-dvm-info p{margin:.5rem 0;color:#888}.not-owned-notice{margin-top:1.5rem!important;padding:1.25rem;border-top:1px solid #333;background:#111;border-radius:8px;color:#888!important}.not-owned-notice p{margin:0 0 1rem}.operator-info{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;background:#1a1a1a;padding:.5rem .75rem;border-radius:6px;width:fit-content}.operator-info span{font-size:.8125rem;color:#666}.switch-notice{margin:0!important;font-style:italic;font-size:.8125rem}.operator-npub{font-family:monospace;font-size:.8125rem;color:#6366f1;background:#0d0d0d;padding:.125rem .375rem;border-radius:4px;font-style:normal}.detail-tabs{display:flex;gap:.25rem;border-bottom:1px solid #333;margin-bottom:1.5rem}.detail-tabs button{padding:.75rem 1.25rem;font-size:.875rem;font-weight:500;background:transparent;color:#888;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .2s}.detail-tabs button:hover{color:#fff}.detail-tabs button.active{color:#fff;border-bottom-color:#6366f1}.loading-state{display:flex;flex-direction:column;align-items:center;padding:3rem;color:#888;gap:1rem}.spinner{width:32px;height:32px;border:3px solid #333;border-top-color:#6366f1;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{background:#1a1a1a;border:1px solid #333;border-radius:12px;padding:1.25rem;display:flex;align-items:center;gap:1rem}.stat-icon{font-size:1.5rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#222;border-radius:10px}.stat-card h3{margin:0 0 .25rem;font-size:.75rem;color:#888;text-transform:uppercase;letter-spacing:.05em}.stat-card .stat-value{font-size:1.25rem;font-weight:700;color:#fff}.overview-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;margin-bottom:1.5rem}.performance-stats,.system-details{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.perf-item,.sys-item{display:flex;justify-content:space-between;align-items:center;padding-bottom:.5rem;border-bottom:1px solid #222}.perf-item:last-child,.sys-item:last-child{border-bottom:none}.perf-item .label,.sys-item .label{color:#888;font-size:.875rem}.perf-item .value,.sys-item .value{font-weight:500;font-family:monospace}.value.accent{color:#6366f1}.info-section{background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:1rem;margin-bottom:1rem}.info-section h3{margin:0 0 .5rem;font-size:.875rem;color:#888}.info-section p{margin:0}.recent-jobs{margin-top:1.5rem}.recent-jobs h3{margin:0 0 1rem;font-size:1rem}.jobs-table{width:100%;border-collapse:collapse;background:#1a1a1a;border:1px solid #333;border-radius:8px;overflow:hidden}.jobs-table th,.jobs-table td{padding:.75rem;text-align:left;border-bottom:1px solid #333}.jobs-table th{color:#888;font-weight:500;font-size:.75rem;text-transform:uppercase;background:#111}.jobs-table td{font-size:.875rem}.jobs-table .truncate{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.job-status{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:uppercase}.job-status.completed{background:#34d39933;color:#34d399}.job-status.failed{background:#f8717133;color:#f87171}.job-status.processing{background:#6366f133;color:#a5b4fc}.config-section{background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:1.25rem;margin-bottom:1rem}.config-section h3{margin:0 0 .75rem;font-size:.875rem;color:#888}.config-section p{margin:.375rem 0}.config-section .list{margin:0;padding-left:1.25rem}.config-section .list li{margin:.25rem 0;font-family:monospace;font-size:.875rem;color:#ccc}.edit-btn{padding:.75rem 1.5rem;font-size:.9375rem;background:#6366f1;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background .2s}.edit-btn:hover{background:#4f46e5}.config-form{background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:1.5rem}.form-group{margin-bottom:1.5rem}.form-help{margin:.5rem 0 0;font-size:.75rem;color:#666;line-height:1.4}.form-group label{display:block;margin-bottom:.5rem;font-size:.875rem;color:#888}.form-group input,.form-group textarea{width:100%;padding:.75rem;font-size:.9375rem;background:#0d0d0d;color:#fff;border:1px solid #333;border-radius:6px;box-sizing:border-box}.form-group textarea{min-height:100px;resize:vertical;font-family:monospace}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#6366f1}.form-actions{display:flex;gap:.75rem;margin-top:1.5rem}.save-btn{padding:.75rem 1.5rem;font-size:.9375rem;background:#6366f1;color:#fff;border:none;border-radius:6px;cursor:pointer}.save-btn:disabled{opacity:.5;cursor:not-allowed}.cancel-btn{padding:.75rem 1.5rem;font-size:.9375rem;background:transparent;color:#888;border:1px solid #444;border-radius:6px;cursor:pointer}.cancel-btn:hover:not(:disabled){color:#fff;border-color:#666}.transcode-tab{display:flex;flex-direction:column;gap:1.5rem}.transcode-tab h3{margin:0}.tab-description{color:#888;margin:0}.reset-button{padding:.75rem 1.5rem;font-size:1rem;background:transparent;color:#fff;border:1px solid #444;border-radius:8px;cursor:pointer;transition:all .2s;align-self:flex-start}.reset-button:hover{border-color:#666;background:#1a1a1a}.mp4-player{width:100%;max-height:400px;background:#000;border-radius:8px}.result-details{background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:1.5rem}.result-details h3{margin:0 0 1rem}.stream-table{width:100%;border-collapse:collapse}.stream-table th,.stream-table td{padding:.75rem;text-align:left;border-bottom:1px solid #333}.stream-table th{color:#888;font-size:.75rem;text-transform:uppercase}.stream-table a{color:#6366f1}.job-progress{background:#111;border:1px solid #222;border-radius:8px;padding:1rem}.job-progress h3{margin:0 0 1rem;font-size:.875rem;color:#888}.status-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.status-list li{display:flex;flex-direction:column;padding-left:1rem;border-left:2px solid #333}.status-list li.status-success{border-left-color:#34d399}.status-list li.status-error{border-left-color:#f87171}.status-list li.status-processing{border-left-color:#6366f1}.status-label{font-size:.75rem;font-weight:700;text-transform:uppercase;margin-bottom:.25rem}.status-message{font-size:.875rem;color:#ccc}.event-display{margin-bottom:.5rem}.event-toggle{background:#1a1a1a;border:1px solid #333;color:#888;padding:.5rem .75rem;border-radius:6px;font-size:.75rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;width:100%}.event-toggle:hover{background:#222;color:#fff}.encrypted-badge{background:#a78bfa33;color:#a78bfa;padding:.125rem .375rem;border-radius:4px;font-size:.625rem}.event-json{background:#050505;padding:1rem;border-radius:0 0 6px 6px;margin-top:-1px;border:1px solid #333;font-size:.75rem;max-height:300px;overflow:auto}.decrypt-note{font-size:.75rem;color:#666;margin:.5rem 0;font-style:italic}.decrypt-error{font-size:.75rem;color:#f87171;margin:.5rem 0}.video-form{background:#161616;border:1px solid #222;border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.form-section{display:flex;flex-direction:column;gap:1rem}.section-label{font-size:.75rem;font-weight:700;text-transform:uppercase;color:#6366f1;letter-spacing:.05em}.url-input{width:100%;background:#0d0d0d!important;border:1px solid #333!important;border-radius:8px!important;padding:.875rem!important;color:#fff!important;font-family:monospace}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.5rem}.field-label{display:block;font-size:.8125rem;color:#888;margin-bottom:.75rem}.toggle-buttons{display:flex;background:#0d0d0d;border:1px solid #333;border-radius:8px;overflow:hidden;padding:2px}.toggle-btn{flex:1;padding:.5rem;font-size:.8125rem;font-weight:600;background:transparent;color:#666;border:none;border-radius:6px;cursor:pointer;transition:all .2s}.toggle-btn.active{background:#333;color:#fff}.toggle-btn:hover:not(.active){color:#aaa}.resolution-dropdown{width:100%;background:#0d0d0d;border:1px solid #333;border-radius:8px;padding:.5rem;color:#fff;outline:none}.field-hint{display:block;font-size:.75rem;color:#555;margin-top:.5rem}.resolution-checkboxes{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.75rem}.resolution-checkbox{display:flex;align-items:center;gap:.5rem;padding:.625rem;background:#0d0d0d;border:1px solid #333;border-radius:8px;cursor:pointer;transition:all .2s}.resolution-checkbox.checked{border-color:#6366f1;background:#6366f10d}.checkbox-label{font-size:.8125rem;font-weight:500}.checkbox-hint{display:block;font-size:.6875rem;color:#666}.submit-button{background:#6366f1;color:#fff;border:none;border-radius:8px;padding:1rem;font-weight:600;cursor:pointer;transition:background .2s;margin-top:.5rem}.submit-button:hover:not(:disabled){background:#4f46e5}.submit-button:disabled{opacity:.5;cursor:not-allowed}.validation-error{font-size:.75rem;color:#f87171;margin:0}.system-tab{max-width:800px}@media(max-width:768px){.dvm-detail-panel{padding:1rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.stat-card{padding:.875rem}.stat-icon{width:36px;height:36px;font-size:1.125rem}.overview-info-grid{grid-template-columns:1fr}.detail-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.detail-tabs::-webkit-scrollbar{display:none}.detail-tabs button{padding:.625rem .875rem;font-size:.8125rem;white-space:nowrap}.recent-jobs{overflow-x:auto;-webkit-overflow-scrolling:touch}.jobs-table{min-width:500px}.jobs-table .truncate{max-width:120px}.config-form{padding:1rem}.form-row{grid-template-columns:1fr;gap:1rem}.video-form{padding:1rem;gap:1rem}.form-actions{flex-direction:column}.form-actions .save-btn,.form-actions .cancel-btn{width:100%;text-align:center}}.dashboard{min-height:100vh;display:flex;flex-direction:column;background:#0a0a0a}.login-screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:2rem;text-align:center;padding:2rem;background:radial-gradient(circle at center,#1a1a1a,#0a0a0a)}.brand-icon.big{font-size:4rem;width:100px;height:100px;border-radius:24px;margin-bottom:1rem}.login-screen h1{margin:0;font-size:3rem;font-weight:800;letter-spacing:-.04em;background:linear-gradient(135deg,#fff,#888);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.login-screen p{margin:0;color:#666;font-size:1.125rem}.login-dialog{background:#111;border:1px solid #222;border-radius:16px;width:100%;max-width:500px;overflow:hidden;box-shadow:0 20px 40px #0006}.login-tabs{display:flex;background:#0d0d0d;border-bottom:1px solid #222;padding:.5rem;gap:.25rem}.login-tab{flex:1;padding:.75rem;font-size:.875rem;font-weight:600;background:transparent;color:#666;border:none;border-radius:8px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem}.login-tab.active{background:#222;color:#fff}.tab-icon{font-size:1rem}.login-content{padding:2rem}.login-method{display:flex;flex-direction:column;gap:1.5rem;text-align:left}.method-title{margin:0;font-size:1.25rem;font-weight:700}.method-description{margin:0;font-size:.9375rem;color:#888;line-height:1.6}.method-description strong{color:#ccc}.method-warning{display:flex;gap:.75rem;background:#fbbf241a;border:1px solid rgba(251,191,36,.2);padding:.875rem;border-radius:10px;align-items:flex-start}.method-warning p{margin:0;font-size:.8125rem;color:#fbbf24;line-height:1.4}.input-group{display:flex;flex-direction:column;gap:.5rem}.input-group label{font-size:.75rem;font-weight:700;color:#555;text-transform:uppercase;letter-spacing:.05em}.login-input{width:100%;padding:.875rem 1rem;font-size:1rem;background:#0d0d0d;color:#fff;border:1px solid #222;border-radius:10px;box-sizing:border-box}.login-input:focus{outline:none;border-color:#6366f1}.upload-link{background:transparent;border:none;color:#6366f1;font-size:.8125rem;font-weight:600;padding:0;cursor:pointer}.login-button.primary{background:#6366f1;color:#fff;padding:1rem;font-size:1rem;font-weight:700;border:none;border-radius:12px;cursor:pointer;transition:all .2s}.login-button.primary:hover:not(:disabled){background:#4f46e5;transform:translateY(-1px)}.login-button.primary:disabled{opacity:.5;cursor:not-allowed}.qr-container{display:flex;flex-direction:column;align-items:center;gap:1rem}.qr-container svg{border-radius:12px}.copy-uri-button{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:600;background:#1a1a1a;color:#888;border:1px solid #333;border-radius:8px;cursor:pointer;transition:all .2s}.copy-uri-button:hover{color:#fff;border-color:#555;background:#222}.copy-uri-button.copied{color:#34d399;border-color:#34d39966}.qr-waiting{margin:0;font-size:.8125rem;color:#666;animation:pulse-text 2s ease-in-out infinite}@keyframes pulse-text{0%,to{opacity:.5}50%{opacity:1}}.hidden{display:none}.dashboard-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;border-bottom:1px solid #222;background:#111;position:sticky;top:0;z-index:100}.header-brand{display:flex;align-items:center;gap:.75rem}.brand-icon{font-size:1.75rem;background:#6366f1;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:10px}.brand-text h1{margin:0;font-size:1.25rem;font-weight:700;letter-spacing:-.02em}.brand-subtitle{font-size:.75rem;color:#666;font-weight:500}.user-info{display:flex;align-items:center;gap:1rem}.user-pill{display:flex;align-items:center;gap:.5rem;background:#1a1a1a;padding:.375rem .75rem;border-radius:20px;border:1px solid #333}.user-icon{font-size:.875rem}.pubkey{font-family:monospace;font-size:.75rem;color:#aaa}.logout-button{padding:.375rem .875rem;font-size:.8125rem;font-weight:600;background:transparent;color:#888;border:1px solid #333;border-radius:18px;cursor:pointer;transition:all .2s}.logout-button:hover{color:#fff;border-color:#555;background:#222}.dashboard-main{flex:1;display:flex;height:calc(100vh - 65px);overflow:hidden}.dashboard-content{display:flex;flex:1;width:100%}.dvm-sidebar{width:320px;min-width:320px;border-right:1px solid #222;display:flex;flex-direction:column;background:#0d0d0d}.dvm-detail-panel-container{flex:1;background:#0a0a0a;overflow-y:auto}.no-selection{display:flex;align-items:center;justify-content:center;height:100%;padding:2rem}.no-selection-content{text-align:center;max-width:400px}.no-selection-icon{font-size:4rem;margin-bottom:1.5rem;opacity:.2}.no-selection h2{font-size:1.5rem;margin-bottom:.75rem;color:#fff}.no-selection p{color:#666;line-height:1.6}.error-message{color:#f87171;background:#f871711a;border:1px solid rgba(248,113,113,.3);padding:.75rem 1rem;border-radius:6px;margin:0}@media(max-width:768px){.login-screen{gap:1.25rem;padding:1.5rem 1rem}.login-screen h1{font-size:1.75rem}.brand-icon.big{width:72px;height:72px;font-size:3rem;border-radius:18px;margin-bottom:.5rem}.login-content{padding:1.25rem}.login-tab{font-size:0;gap:0}.login-tab .tab-icon{font-size:1.125rem}.dashboard-header{padding:.5rem .75rem}.brand-subtitle{display:none}.brand-text h1{font-size:1rem}.user-pill{padding:.25rem .5rem}.pubkey{max-width:80px;overflow:hidden;text-overflow:ellipsis}.dashboard-main{height:auto;overflow:visible;flex-direction:column}.dashboard-content{flex-direction:column}.dvm-sidebar{width:100%;min-width:unset;border-right:none;border-bottom:1px solid #222;max-height:40vh;overflow-y:auto}.dvm-detail-panel-container{min-height:60vh}.no-selection{min-height:40vh;height:auto}}
