:root{--tov-max-width: 920px;--tov-pad-x: 24px;--tov-pad-y: 48px;--tov-header-gap: 12px;--tov-logo-size: 30px;--tov-title-size: 24px;--tov-section-gap: 28px;--tov-grid-min: 220px;--tov-grid-gap: 16px;--tov-card-radius: 12px;--tov-card-thumb-aspect: 16 / 10;--tov-card-pad: 14px;--tov-danger: #f44}.tov{flex:1;width:100%;height:100%;overflow-y:auto;box-sizing:border-box;padding:var(--tov-pad-y) var(--tov-pad-x);background:var(--bg, #0a0a0a);color:var(--text, #ffffff);font-family:Inter,system-ui,sans-serif}.tov-inner{max-width:var(--tov-max-width);margin:0 auto}.tov-brand{display:flex;align-items:center;justify-content:center;gap:var(--tov-header-gap);margin-bottom:var(--tov-section-gap)}.tov-logo{height:var(--tov-logo-size);width:var(--tov-logo-size);object-fit:contain;border-radius:7px;display:block;flex-shrink:0}.tov-title{margin:0;font-size:var(--tov-title-size);font-weight:600;color:var(--text, #ffffff);letter-spacing:.2px}.tov-brand--switch{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:10px;padding:6px 8px 6px 10px;margin-left:-10px;margin-bottom:calc(var(--tov-section-gap) - 6px);outline:none;transition:background .15s ease}.tov-brand--switch:hover,.tov-brand--switch:focus-visible{background:var(--surface-2, rgba(255, 255, 255, .06))}.tov-switch-chevron{opacity:.5;flex-shrink:0;transition:transform .15s ease,opacity .15s ease}.tov-brand--switch:hover .tov-switch-chevron{opacity:.85}.tov-brand--switch[aria-expanded=true] .tov-switch-chevron{transform:rotate(180deg);opacity:.85}.tov-switch-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4000;background:transparent}.tov-switch-menu{position:fixed;z-index:4001;transform:translate(-50%);min-width:220px;max-height:70vh;overflow-y:auto;padding:6px;background:var(--surface, #161616);border:1px solid var(--border, #2a2a2a);border-radius:12px;box-shadow:0 16px 48px #00000073;animation:tov-switch-in .12s ease}@keyframes tov-switch-in{0%{opacity:0;transform:translate(-50%) translateY(-4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.tov-switch-item{display:flex;align-items:center;gap:11px;width:100%;padding:9px 12px;background:transparent;border:none;border-radius:8px;color:var(--text, #ffffff);font-family:inherit;font-size:14px;font-weight:500;text-align:left;cursor:pointer;transition:background .12s ease}.tov-switch-item:hover{background:var(--surface-2, rgba(255, 255, 255, .07))}.tov-switch-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;border-radius:8px;background:var(--surface-2, rgba(255, 255, 255, .06));color:var(--text, #ffffff)}.tov-switch-name{flex:1}.tov-switch-empty{padding:12px 14px;color:var(--ink-44, #888);font-size:13px}.tov-actions{display:flex;justify-content:center;gap:10px;margin-bottom:var(--tov-section-gap)}.tov-btn-secondary{background:transparent;color:var(--text, #ffffff);border:1px solid var(--border, #2a2a2a)}.tov-btn-secondary:hover{opacity:1;border-color:var(--ink-44, #555)}.tov-new-btn{display:inline-flex;align-items:center;gap:7px;background:var(--accent, #ffffff);color:var(--on-accent, #000000);border:none;border-radius:9px;padding:10px 20px;font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .15s}.tov-new-btn:hover{opacity:.85}.tov-new-btn svg{stroke:currentColor}.tov-more-btn{padding-left:16px;padding-right:16px}.tov-menu-sheet{max-width:420px}.tov-menu-list{display:flex;flex-direction:column;gap:6px;padding:8px 12px 14px}.tov-menu-item{display:flex;align-items:center;gap:13px;width:100%;text-align:left;background:var(--bg-tertiary, #0d0d0d);border:1px solid var(--border-color, #2a2a2a);border-radius:12px;padding:13px 14px;cursor:pointer;color:var(--text, #fff);font:inherit;transition:background .15s,border-color .15s}.tov-menu-item:hover{background:var(--surface-2, #1e1e1e);border-color:var(--ink-44, #444)}.tov-menu-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:var(--surface, #161616);border:1px solid var(--border-color, #2a2a2a)}.tov-menu-icon svg{stroke:var(--text, #fff);width:18px;height:18px}.tov-menu-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.tov-menu-label{font-size:14px;font-weight:600}.tov-menu-desc{font-size:12px;color:var(--text-muted, #8a8a8a)}.tov-menu-chevron{flex-shrink:0;display:flex;opacity:.5}.tov-menu-chevron svg{stroke:var(--text-muted, #8a8a8a)}.tov-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--tov-grid-min),1fr));gap:var(--tov-grid-gap)}.tov-grid--sections{display:block}.tov-section{margin-bottom:calc(var(--tov-section-gap) + 18px)}.tov-section:last-child{margin-bottom:0}.tov-section-head{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding-bottom:10px;border-bottom:1px solid var(--border, #262626)}.tov-section-title{display:flex;align-items:center;gap:9px;margin:0;font-size:19px;font-weight:650;letter-spacing:-.01em;color:var(--text, #eee)}.tov-section-count{font-size:12px;font-weight:500;color:var(--text-dim, #888);background:var(--surface, #161616);border:1px solid var(--border, #262626);border-radius:999px;padding:1px 8px}.tov-section-actions{display:flex;align-items:center;gap:6px;margin-left:auto}.tov-section-new{display:inline-flex;align-items:center;gap:4px;background:none;border:1px solid var(--border, #262626);color:var(--text, #eee);border-radius:8px;padding:5px 10px;font-size:12px;font-weight:500;cursor:pointer}.tov-section-new:hover{background:var(--surface, #1d1d1d)}.tov-section-new svg{stroke:currentColor}.tov-section-actions .tov-card-action{position:static;opacity:1}.tov-section-empty{font-size:13px;color:var(--text-dim, #888);padding:4px 0 0}.tov-section-more{margin-top:14px;display:inline-flex;align-items:center;background:none;border:1px solid var(--border, #262626);color:var(--text-dim, #aaa);border-radius:8px;padding:7px 14px;font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.tov-section-more:hover{background:var(--surface, #1d1d1d);color:var(--text, #eee);border-color:var(--ink-44, #444)}.tov-card{position:relative;display:flex;flex-direction:column;background:var(--surface, #161616);border:1px solid var(--border, #262626);border-radius:var(--tov-card-radius);cursor:pointer;overflow:hidden;transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}.tov-card:hover{background:var(--surface-2, #1e1e1e);border-color:var(--ink-44, #444444);transform:translateY(-3px);box-shadow:0 12px 28px #00000059}.tov-card:active{transform:translateY(-1px);transition-duration:.08s}.tov-card-thumb{width:100%;aspect-ratio:var(--tov-card-thumb-aspect);background:var(--bg-secondary, #0e0e0e);display:flex;align-items:center;justify-content:center;overflow:hidden}.tov-card-thumb img{width:100%;height:100%;object-fit:cover}.tov-card-thumb.empty{opacity:.45}.tov-card-thumb svg{stroke:var(--text-muted, #8a8a8a)}.tov-card-body{display:flex;align-items:flex-start;gap:11px;padding:var(--tov-card-pad)}.tov-card-icon{flex-shrink:0;display:flex}.tov-card-icon svg{stroke:var(--text-muted, #8a8a8a)}.tov-card-text{flex:1;min-width:0}.tov-card-title{font-size:14px;font-weight:500;color:var(--text, #ffffff);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tov-card-meta{font-size:12px;color:var(--text-muted, #8a8a8a);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tov-card-badge{display:inline-block;margin-left:6px;font-size:10px;font-weight:600;padding:1px 6px;border-radius:999px;background:var(--surface-2, #1e1e1e);color:var(--text-muted, #8a8a8a);vertical-align:middle}.tov-card-actions{position:absolute;top:8px;right:8px;display:flex;gap:4px;opacity:0;transition:opacity .15s}.tov-card:hover .tov-card-actions{opacity:1}.tov-card-action{background:#00000073;border:none;color:var(--text, #ffffff);cursor:pointer;padding:6px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s}.tov-card-action svg{stroke:currentColor}.tov-card-action:hover{background:var(--hover, rgba(255, 255, 255, .12))}.tov-card-action.danger:hover{color:var(--tov-danger);background:#ff444426}.tov-ctx-menu{position:fixed;z-index:10000;min-width:180px;padding:6px;display:flex;flex-direction:column;gap:2px;background:var(--surface-2, #1c1c1c);border:1px solid var(--border, rgba(255, 255, 255, .1));border-radius:12px;box-shadow:0 12px 32px #00000073}.tov-ctx-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border:none;background:none;color:var(--text, #ffffff);font-size:13px;font-family:inherit;text-align:left;border-radius:8px;cursor:pointer}.tov-ctx-item:hover{background:var(--hover, rgba(255, 255, 255, .08))}.tov-ctx-item.danger{color:var(--tov-danger, #ff5555)}.tov-ctx-item.danger:hover{background:#ff44441f}.tov-ctx-icon{display:flex;align-items:center}.tov-ctx-icon svg{stroke:currentColor}.tov-empty,.tov-status{grid-column:1 / -1;text-align:center;padding:56px 20px;color:var(--text-muted, #8a8a8a)}.tov-empty svg{stroke:var(--ink-44, #444444)}.tov-empty p{margin:12px 0 0;font-size:14px}.tov-status.error{color:var(--tov-danger)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:none;align-items:center;justify-content:center;padding:20px;background:#0000008c}.modal-overlay.open{display:flex}.modal-sheet{width:100%;max-width:400px;max-height:85vh;overflow-y:auto;background:var(--bg-secondary, #161616);border:1px solid var(--border-color, #2a2a2a);border-radius:16px;padding-bottom:6px}.modal-handle{width:36px;height:4px;border-radius:2px;background:var(--ink-44, #444);margin:10px auto 4px}.modal-title{font-size:17px;font-weight:700;color:var(--text);text-align:center;padding:6px 20px 4px}.bridge-input{width:100%;padding:11px 13px;box-sizing:border-box;font-size:14px;background:var(--bg-tertiary, #0d0d0d);border:1px solid var(--border-color, #2a2a2a);border-radius:10px;color:var(--text)}.bridge-input:focus{outline:none;border-color:var(--ink-44, #666)}.bridge-btn{padding:10px 18px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;border:1px solid var(--border-color, #2a2a2a)}.bridge-btn-secondary{background:var(--bg-tertiary, #1a1a1a);color:var(--text)}.bridge-btn-primary{background:var(--text);color:var(--bg);border-color:var(--text)}.bridge-btn:hover{opacity:.85}
