:root{--bg: #0b0e12;--surface: #12161c;--surface-2: #191f27;--surface-3: #232b35;--border: #2a3342;--text: #e6ebf3;--muted: #a7b0c0;--primary: #a4c9ff;--ok: #4ade80;--warn: #f5a524;--danger: #ff6b6b;--link: #a4c9ff;--placeholder: #8893a6;--focus-ring: rgba(164, 201, 255, .32);--overlay: rgba(11, 14, 18, .84);--overlay-panel: rgba(11, 14, 18, .94);--overlay-blur: 10px;--topbar-bg: rgba(18, 22, 28, .96);--self-bg: rgba(164, 201, 255, .07);--self-text: #d5e4ff;--self-border: rgba(164, 201, 255, .32);--primary-contrast: #0b1220;--primary-hover: #bcd8ff;--toast-bg: #1b2027;--input-bg: #090c10;--input-border: var(--border);--input-text: var(--text);--emoticon-size: 72px;--emoticon-size-compact: 1.6em;--control-h: 36px;--input-h: 40px;--icon-h: 32px;--tap-h: 44px;--dense-h: 28px;--radius: 10px;--radius-sm: 8px;--radius-pill: 999px;--space-1: 6px;--space-2: 10px;--space-3: 16px;--font-size-body: 13px;--font-scale: 1;--msg-font-size: calc(14px * var(--font-scale));--msg-nick-size: calc(13px * var(--font-scale));--font-size-caption: 11px;color-scheme:dark}:root[data-font-scale=sm]{--font-scale: .9}:root[data-font-scale=md]{--font-scale: 1}:root[data-font-scale=lg]{--font-scale: 1.12}:root[data-font-scale=xl]{--font-scale: 1.25}*,*:before,*:after{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Pretendard Variable,Pretendard,system-ui,-apple-system,Segoe UI,Malgun Gothic,Apple SD Gothic Neo,sans-serif;font-size:13px;line-height:1.55;-webkit-font-smoothing:antialiased;overscroll-behavior:none}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;box-shadow:0 0 0 4px var(--focus-ring);border-radius:6px}.flow-root :focus-visible{outline:2px solid #ffffff;outline-offset:2px;box-shadow:0 0 0 2px #0b1220e6,0 0 0 5px #a4c9ffe6}.page{height:100%;overflow:hidden}.app{height:100%;min-height:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--control-h);padding:7px 11px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font:inherit;font-size:12px;cursor:pointer;transition:background .15s ease,border-color .15s ease}.btn:hover:not(:disabled){background:var(--surface-3)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--primary{background:var(--primary);border-color:transparent;color:var(--primary-contrast);font-weight:600}.btn--primary:hover:not(:disabled){background:var(--primary-hover)}.btn--ghost{background:transparent}.btn--small{min-height:32px;padding:5px 9px;font-size:11px}.btn--tiny{min-height:var(--dense-h);padding:2px 7px;font-size:11px}.btn--block{width:100%}.input{width:100%;min-height:var(--input-h);padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--input-bg);border-color:var(--input-border);color:var(--input-text);color:var(--text);font:inherit;font-size:13px}.input::placeholder{color:var(--placeholder)}.input:disabled{opacity:.55}.hint{margin:0;color:var(--muted);font-size:11px}.hint--error{color:var(--danger)}.pill{padding:2px 8px;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:11px;white-space:nowrap}.badge{display:inline-flex;align-items:center;padding:0 5px;border-radius:6px;font-size:10px;font-weight:600;line-height:1.6}.badge--host{background:#a4c9ff29;border:1px solid rgba(164,201,255,.4);color:var(--primary-text)}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--muted);flex:none}.status-dot--ok{background:var(--ok);box-shadow:0 0 0 3px #4ade8029}.status-dot--pending,.status-dot--warn{background:var(--warn)}.status-dot--error{background:var(--danger)}.toast-region{position:fixed;left:50%;bottom:calc(72px + env(safe-area-inset-bottom));transform:translate(-50%);display:flex;flex-direction:column;gap:6px;z-index:200;pointer-events:none;width:min(92vw,380px)}.toast{padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--toast-bg);color:var(--text);font-size:12px;box-shadow:0 10px 26px #00000073;transition:opacity .2s ease,transform .2s ease}.toast--warn{border-color:#f5a52473;background:#241d13;color:#ffd79a}.toast--error{border-color:#ff6b6b73;background:#251719;color:#ffb4b4}.toast--out{opacity:0;transform:translateY(6px)}.landing{max-width:560px;margin:0 auto;padding:48px 20px;display:flex;flex-direction:column;gap:12px}.landing h1{margin:0;font-size:22px}.landing-desc{margin:0;color:var(--muted);font-size:13px}.landing-links{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.chat-page{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--surface)}.chat-topbar{display:flex;align-items:center;gap:6px;padding:6px 8px;border-bottom:1px solid var(--border);background:var(--topbar-bg);flex:none}.chat-topbar-left{display:flex;align-items:center;gap:6px;min-width:0;flex:1}.chat-title{margin:0;font-size:12px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conn-status{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:11px;white-space:nowrap}.chat-topbar-right{display:flex;align-items:center;gap:4px;flex:none}.icon-btn{display:inline-flex;align-items:center;justify-content:center;min-width:var(--icon-h);height:var(--icon-h);padding:0 6px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--muted);font:inherit;font-size:11px;cursor:pointer}.icon-btn:hover{background:var(--surface-2);color:var(--text)}.chat-body{position:relative;display:flex;flex:1;min-height:0}.chat-pane{position:relative;display:flex;flex-direction:column;flex:1;min-height:0}.chat-log{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:8px;padding:10px 10px 6px;scrollbar-width:thin}.msg{display:flex;flex-direction:column;gap:1px;overflow-wrap:anywhere}.msg-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:.3rem}.msg-nick{min-width:0;max-width:45%;overflow:hidden;font-weight:700;font-size:var(--msg-nick-size);text-overflow:ellipsis;white-space:nowrap}.msg-sep{flex:none;color:var(--muted);user-select:none}.msg-emoticon{display:inline-block;height:var(--emoticon-size);max-width:min(var(--emoticon-size),100%);vertical-align:-.25em;margin:0 1px;object-fit:contain;cursor:pointer}.msg-emoticon.is-compact{height:var(--emoticon-size-compact);max-width:var(--emoticon-size-compact);vertical-align:-.25em}.msg-emoticon:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.msg-emoticon-fallback{display:inline;color:var(--muted);font-size:12px;white-space:nowrap}.msg-self-mark,.msg-pending{padding:0 4px;border:1px solid var(--border);border-radius:4px;color:var(--muted);font-size:9px}.msg-text{flex:1 1 auto;min-width:0;font-size:var(--msg-font-size);line-height:1.6;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere}.msg-link{color:var(--link);text-decoration:underline}.msg--self .msg-text{color:var(--self-text)}.msg--self{padding:4px 8px 4px 9px;border-left:2px solid var(--self-border);border-radius:var(--radius-sm);background:var(--self-bg)}.msg--pending{opacity:.6}.msg--failed{opacity:1}.msg--failed .msg-pending{border-color:var(--danger);color:var(--danger)}.msg--system{flex-direction:row;align-items:baseline;gap:6px;color:var(--muted);font-size:11px;font-style:italic}.msg-system-text{overflow-wrap:anywhere}.new-messages{position:absolute;left:50%;bottom:8px;z-index:6;transform:translate(-50%);padding:5px 12px;border:0;border-radius:999px;background:var(--primary);color:var(--primary-contrast);font:inherit;font-size:11px;font-weight:600;cursor:pointer}.chat-hint{margin:0;padding:2px 10px 4px;color:var(--muted);font-size:11px}.chat-hint--warn{color:var(--warn)}.chat-hint--error{color:var(--danger)}.chat-form{position:relative;display:flex;gap:6px;padding:6px 8px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--surface-2);flex:none}.chat-input{flex:1;min-width:0}.chat-send{flex:none}.emoji-btn{flex:none;width:36px;min-height:var(--control-h);padding:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:16px;line-height:1;cursor:pointer}.emoji-btn:hover:not(:disabled){background:var(--surface-3)}.emoji-btn:disabled{opacity:.45;cursor:not-allowed}.emoji-picker{position:absolute;left:8px;bottom:calc(100% + 8px);z-index:40;width:min(304px,calc(100vw - 24px));max-height:min(320px,60dvh);overflow-y:auto;padding:8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);box-shadow:0 10px 26px #00000073}.emoji-picker[hidden]{display:none}.emoji-search{margin-bottom:8px;min-height:32px;font-size:12px}.emoji-section{margin-bottom:8px}.emoji-section-title{margin:0 0 4px;color:var(--muted);font-size:11px;font-weight:500}.emoji-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.emoji-option{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1 / 1;min-height:64px;padding:2px;border:1px solid transparent;border-radius:8px;background:transparent;cursor:pointer}.emoji-option:hover,.emoji-option:focus-visible{border-color:var(--border);background:var(--surface-2)}.emoji-thumb{width:100%;height:100%;max-width:72px;max-height:72px;object-fit:contain}.emoji-option-label{overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.emoji-empty{margin:0;padding:12px 0;color:var(--muted);font-size:12px;text-align:center}.emoji-hint{margin:0;padding-top:4px;color:var(--warn);font-size:11px}.members-drawer{position:absolute;inset:0;z-index:10;display:flex;flex-direction:column;background:var(--overlay-panel);backdrop-filter:blur(var(--overlay-blur));transform:translateY(100%);transition:transform .18s ease;visibility:hidden}.members-drawer.is-open{transform:translateY(0);visibility:visible}.members-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-bottom:1px solid var(--border);font-size:12px;font-weight:600}.members-list{display:flex;flex-direction:column;gap:2px;margin:0;padding:8px 10px;list-style:none;overflow-y:auto}.member{display:flex;align-items:center;gap:6px;padding:5px 4px;border-radius:8px}.member:hover{background:var(--surface-2)}.member-dot{width:7px;height:7px;border-radius:50%;flex:none}.member-name{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-self{color:var(--muted);font-size:10px;flex:none}.member-actions{margin-left:auto;flex:none;display:flex;gap:4px}.members-empty{padding:8px 0;color:var(--muted);font-size:11px}.flow-members-panel{max-height:55%;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--overlay-panel);backdrop-filter:blur(var(--overlay-blur))}.flow-members-panel[hidden]{display:none}.reconnect-bar{position:absolute;left:8px;right:8px;top:calc(env(safe-area-inset-top) + 52px);z-index:60;display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid rgba(245,165,36,.45);border-radius:var(--radius);background:#241d13f5;color:#ffd79a;font-size:11px}.reconnect-bar[hidden]{display:none}.reconnect-text{flex:1;min-width:0}.nickname-gate{position:absolute;inset:0;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px;background:var(--bg);text-align:center}.nickname-gate h2{margin:0;font-size:14px}.nickname-gate form{display:flex;gap:6px;width:100%;max-width:280px}.flow-root{position:relative;display:flex;flex-direction:column;height:100%;width:100%;background:#000;overflow:hidden;user-select:none}.flow-player{position:relative;flex:1 1 auto;min-height:0;overflow:hidden}.flow-player>div,.flow-player>iframe,.flow-player iframe{position:absolute;inset:0;width:100%!important;height:100%!important;border:0;display:block}.flow-overlay-top{position:absolute;left:0;right:0;top:0;z-index:6;display:flex;align-items:center;gap:6px;padding:6px 8px;background:linear-gradient(180deg,var(--overlay),rgba(11,14,18,0));pointer-events:none}.flow-overlay-top>*{pointer-events:auto}.sync-badge[hidden]{display:none!important}.sync-badge{display:inline-flex;align-items:center;gap:6px;max-width:calc(100% - 90px);padding:3px 8px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:var(--overlay);color:var(--muted);font-size:11px;backdrop-filter:blur(var(--overlay-blur))}.sync-badge--ok{border-color:#4ade8073;color:var(--ok)}.sync-badge--warn{border-color:#f5a52480;color:var(--warn)}.sync-badge--host{border-color:#a4c9ff80;color:var(--primary)}.sync-badge--pending{color:var(--muted)}.sync-badge-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.flow-meta{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:999px;background:var(--overlay);border:1px solid rgba(255,255,255,.16);color:var(--muted);font-size:11px;backdrop-filter:blur(var(--overlay-blur))}.flow-controls{position:relative;flex:none;z-index:7;display:flex;flex-direction:column;gap:6px;padding:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom));background:linear-gradient(0deg,var(--overlay-panel),rgba(11,14,18,0));opacity:0;transform:translateY(6px);transition:opacity .16s ease,transform .16s ease;pointer-events:none}.flow-root.is-active .flow-controls,.flow-controls:focus-within{opacity:1;transform:translateY(0);pointer-events:auto}.flow-video-form{display:flex;gap:6px}.flow-video-form .input{flex:1;min-width:0}.flow-control-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.resync-button{display:inline-flex;align-items:center;min-height:var(--dense-h);padding:3px 8px;border:1px solid currentColor;border-radius:999px;background:transparent;color:inherit;font:inherit;font-size:10px;cursor:pointer;pointer-events:auto}.flow-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:12px;text-align:center;color:var(--muted);background:var(--overlay-panel);z-index:5}.flow-empty[hidden]{display:none}.flow-empty p{margin:0;font-size:12px}.flow-empty p:first-child{color:var(--text);font-size:13px}.tap-overlay{position:absolute;inset:0;z-index:8;display:flex;align-items:center;justify-content:center;background:#0b0e12c7;backdrop-filter:blur(2px)}.tap-overlay[hidden]{display:none}.tap-overlay button{min-height:var(--tap-h);padding:12px 18px;border:0;border-radius:var(--radius);background:var(--primary);color:var(--primary-contrast);font:inherit;font-size:13px;font-weight:600;cursor:pointer}@media (max-height: 260px){.flow-overlay-top{padding:4px 6px;padding-top:calc(4px + env(safe-area-inset-top))}.sync-badge,.flow-meta,.flow-viewers{font-size:10px;padding:2px 6px}.flow-controls{padding:6px;padding-bottom:calc(6px + env(safe-area-inset-bottom));gap:4px}.btn--small{min-height:var(--dense-h);padding:4px 8px;font-size:10px}.input{min-height:var(--input-h);padding:6px 8px;font-size:12px}.tap-overlay button{min-height:var(--tap-h);padding:10px 14px;font-size:12px}}.flow-controls{max-height:82%;overflow-y:auto}.flow-now{display:flex;flex-direction:column;gap:1px;min-width:0}.flow-now-title{margin:0;font-size:13px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.flow-now-meta{margin:0;font-size:11px;color:var(--muted)}.flow-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.flow-vote{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;border-radius:0;background:transparent;backdrop-filter:none}.flow-vote[hidden]{display:none}.flow-vote-btn{display:inline-flex;align-items:center;height:32px;min-height:32px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--muted);font:inherit;font-size:12px;cursor:pointer}.flow-vote-btn:hover{color:var(--text)}.flow-vote-btn.is-active{border-color:var(--primary);background:#a4c9ff29;color:var(--primary)}.flow-vote-count{color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.flow-skip-hint{color:var(--warn);font-size:11px}.flow-report,.flow-remove,.flow-queue-toggle{display:inline-flex;align-items:center;height:32px;min-height:32px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:transparent;backdrop-filter:none;color:var(--muted);font:inherit;font-size:12px;cursor:pointer}.flow-report:hover,.flow-queue-toggle:hover{color:var(--text);background:var(--surface-2)}.flow-remove{border-color:#f5a52473;color:var(--warn)}.flow-report[hidden],.flow-remove[hidden]{display:none}.flow-add{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.flow-range{display:flex;align-items:center;flex:1 1 180px;gap:6px;margin-top:4px;min-width:0}.flow-range .input{flex:1 1 0;min-width:0;height:32px;min-height:32px;padding:4px 8px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);font-size:13px}.flow-range-tilde{flex:none;color:var(--muted);font-size:12px}.flow-status{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.flow-add .input{flex:1 1 180px;min-width:0;height:34px;min-height:34px;padding:4px 8px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);font-size:13px}.flow-add-hint{flex-basis:100%;margin:4px 0 0;min-height:0;color:var(--warn);font-size:12px}.flow-add-hint:empty{display:none}.flow-queue{border:1px solid var(--border);border-radius:6px;background:transparent;backdrop-filter:none;max-height:55%;overflow-y:auto}.flow-queue[hidden]{display:none}.flow-queue-head{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:4px 6px;border-bottom:1px solid var(--border);font-size:12px;color:var(--text)}.flow-queue-list{display:flex;flex-direction:column;gap:0;margin:0;padding:0;list-style:none}.flow-queue-item{display:flex;align-items:center;gap:6px;padding:4px 6px;border-bottom:1px solid var(--border)}.flow-queue-item:last-child{border-bottom:0}.flow-queue-item--mine{background:transparent}.flow-queue-order{width:16px;color:var(--muted);font-size:11px;text-align:right;flex:none}.flow-queue-body{display:flex;flex-direction:column;min-width:0;flex:1}.flow-queue-title{font-size:12px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.flow-queue-meta{color:var(--muted);font-size:11px}.flow-queue-remove{flex:none;height:24px;min-height:24px;padding:0 6px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--muted);font:inherit;font-size:11px;cursor:pointer}.flow-queue-remove:hover{color:var(--warn);border-color:#f5a52473}.flow-queue-empty{padding:6px;color:var(--muted);font-size:12px}.flow-empty-title{color:var(--text);font-size:var(--font-size-body)}.flow-empty-hint{color:var(--muted);font-size:var(--font-size-caption)}.flow-viewers{padding:0;border:0;border-radius:0;background:transparent;color:var(--muted);font-size:11px;backdrop-filter:none}@media (max-width: 360px){.chat-topbar{gap:4px;padding:6px}.chat-topbar-right{gap:2px}.chat-log{gap:6px;padding:8px 8px 4px}.chat-form{gap:4px;padding:6px 6px calc(6px + env(safe-area-inset-bottom))}.msg--self{padding:4px 6px 4px 7px}.flow-controls{padding:6px;padding-bottom:calc(6px + env(safe-area-inset-bottom));gap:4px}.flow-actions{gap:4px}.flow-add{flex-direction:column;align-items:stretch}.flow-add .input{flex-basis:auto}.flow-vote{flex-wrap:wrap}.flow-report,.flow-remove,.flow-queue-toggle{padding:3px 7px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.emoji-tabs{display:flex;gap:4px;margin-bottom:8px}.emoji-tab{flex:1 1 0;padding:4px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);font-size:12px;cursor:pointer}.emoji-tab.is-active{background:var(--surface-3);color:var(--text);font-weight:600}.emoji-dccon{display:flex;flex-direction:column;gap:6px}.dccon-status{margin:0;color:var(--muted);font-size:11px}.dccon-status:empty{display:none}.dccon-packs{display:flex;flex-wrap:wrap;gap:4px;max-height:96px;overflow-y:auto}.dccon-pack{padding:3px 8px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);color:var(--text);font-size:11px;cursor:pointer}.dccon-pack.is-active{border-color:var(--primary);background:var(--surface-3)}.dccon-items{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.dccon-item{display:flex;align-items:center;justify-content:center;aspect-ratio:1 / 1;min-height:64px;padding:2px;border:1px solid transparent;border-radius:8px;background:transparent;cursor:pointer}.dccon-item:hover,.dccon-item:focus-visible{border-color:var(--border);background:var(--surface-2)}.msg-dccon{height:var(--emoticon-size);max-width:min(var(--emoticon-size),100%)}.msg-dccon.is-compact{height:var(--emoticon-size-compact);max-width:var(--emoticon-size-compact)}@media (max-width: 380px){.members-btn-label{display:none}}.input,.chat-input,.emoji-search,.dccon-search{background:var(--input-bg);border-color:var(--input-border)}.dccon-search-row{display:flex;gap:4px}.dccon-search{flex:1 1 auto;min-width:0;min-height:32px;font-size:12px}.dccon-search-btn{flex:none}.flow-controls{max-height:min(62dvh,440px);overflow-y:auto;padding-bottom:max(8px,env(safe-area-inset-bottom))}.flow-now-row{display:flex;align-items:flex-start;gap:8px}.flow-now-row .flow-now{flex:1 1 auto;min-width:0}.flow-sheet-toggle{flex:none;min-height:44px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);font-size:12px;cursor:pointer}.flow-sheet-toggle[aria-expanded=true]{background:var(--surface-3)}.flow-controls.is-collapsed .flow-actions{display:none}.flow-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.flow-queue-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:2px 0}.flow-queue-bar .flow-viewers,.flow-queue-bar .conn-status{font-size:11px}.flow-vote-btn,.flow-report,.flow-remove,.flow-queue-toggle,.flow-sheet-toggle,.flow-add .btn{height:32px;min-height:32px;padding:0 10px;border-radius:6px}.flow-queue-remove{height:24px;min-height:24px}.flow-add-row{display:flex;align-items:center;gap:6px}.flow-add-row .input{flex:1 1 auto;min-width:0;height:34px;min-height:34px;font-size:13px}.flow-add-row .btn{flex:none;min-width:56px}.flow-range-toggle{align-self:flex-start;min-height:24px;margin-top:0;padding:2px 0;border:0;border-radius:0;background:none;color:var(--muted);font-size:11px;cursor:pointer}.flow-range-toggle:hover{color:var(--text)}.flow-range{display:flex;align-items:center;gap:6px;margin-top:4px}.flow-range[hidden]{display:none}.flow-range .input{min-width:0;height:32px;min-height:32px}@media (max-width: 430px){.flow-overlay-top{padding:6px 8px;gap:4px}.sync-badge,.sync-badge-text,.flow-viewers{font-size:10px}.sync-badge{padding:2px 6px}.flow-now-meta{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.flow-empty-hint{display:none}}@media (min-width: 560px){.flow-controls{max-height:none}.flow-controls.is-collapsed .flow-actions{display:flex}.flow-sheet-toggle{display:none}}.dccon-more-row{display:flex;justify-content:center;margin-top:6px;grid-column:1 / -1}.dccon-more{min-height:36px}.watch-page{display:grid;grid-template-rows:auto minmax(0,1fr);height:100dvh}.watch-topbar{display:flex;align-items:center;gap:8px;padding:4px 8px;padding-top:max(4px,env(safe-area-inset-top));background:var(--topbar-bg);border-bottom:1px solid var(--border)}.watch-title{margin:0;font-size:12px;font-weight:600;color:var(--muted)}.watch-links{display:flex;gap:8px;margin-left:auto}.watch-link{color:var(--link);font-size:11px;text-decoration:none}.watch-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,400px);min-height:0;padding-bottom:env(safe-area-inset-bottom)}.watch-frame{width:100%;height:100%;border:0;background:var(--bg)}.watch-frame--video{min-width:0}.watch-frame--chat{border-left:1px solid var(--border)}@media (max-width: 820px){.watch-main{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.watch-frame--video{aspect-ratio:16 / 9;height:auto}.watch-frame--chat{border-left:0;border-top:1px solid var(--border)}}:root[data-theme=dark]{--bg: #0b0e12;--surface: #12161c;--surface-2: #191f27;--surface-3: #232b35;--border: #2a3342;--text: #e6ebf3;--muted: #a7b0c0;--primary: #a4c9ff;--link: #a4c9ff;--ok: #4ade80;--warn: #f5a524;--danger: #ff6b6b;--placeholder: #8893a6;--focus-ring: rgba(164, 201, 255, .32);--overlay: rgba(11, 14, 18, .84);--overlay-panel: rgba(11, 14, 18, .94);--topbar-bg: #12161cf5;--self-bg: rgba(164, 201, 255, .07);--self-text: #d5e4ff;--self-border: rgba(164, 201, 255, .32);--primary-contrast: #0b1220;--primary-hover: #bcd8ff;--toast-bg: #1b2027;--input-bg: #090c10;--input-border: #2a3342;--input-text: #e6ebf3;--primary-text: #a4c9ff;color-scheme:dark}:root[data-theme=black]{--bg: #000000;--surface: #0f0f0f;--surface-2: #1a1a1a;--surface-3: #292929;--border: #383838;--text: #E0E0E0;--muted: #a5a5a5;--primary: #4775c8;--link: #4775c8;--ok: #4ade80;--warn: #f5a524;--danger: #ff6b6b;--placeholder: #7f8186;--focus-ring: rgba(71, 117, 200, .35);--overlay: #000000d6;--overlay-panel: #000000f0;--topbar-bg: #0f0f0ff5;--self-bg: rgba(71, 117, 200, .1);--self-text: #a9c6ff;--self-border: rgba(71, 117, 200, .32);--primary-contrast: #ffffff;--primary-hover: #5c8ade;--toast-bg: #292929;--input-bg: #000000;--input-border: #383838;--input-text: #e6ebf3;--primary-text: #5f87cf;color-scheme:dark}:root[data-theme=white]{--bg: #f0f0f0;--surface: #f8f8f8;--surface-2: #f4f4f4;--surface-3: #f2f2f2;--border: #cacaca;--text: #2A2A2A;--muted: #474747;--primary: #272727;--link: #1c1c1c;--ok: #15803d;--warn: #8a5205;--danger: #b42318;--placeholder: #8f8f8f;--focus-ring: rgba(39,39,39, .35);--overlay: #f3f3f3eb;--overlay-panel: #f2f2f2f5;--topbar-bg: #f8f8f8f2;--self-bg: rgba(39,39,39, .06);--self-text: #0b0b0b;--self-border: rgba(39,39,39, .26);--primary-contrast: #ffffff;--primary-hover: #212121;--toast-bg: #ffffff;--input-bg: #fbfbfb;--input-border: #cacaca;--input-text: #181818;--primary-text: #272727;color-scheme:light}:root[data-theme=ivory]{--bg: #f2efe9;--surface: #f9f8f5;--surface-2: #f6f3ef;--surface-3: #f4f1ec;--border: #cbc9c4;--text: #2E2A26;--muted: #665c47;--primary: #84621f;--link: #8b6518;--ok: #15803d;--warn: #8a5205;--danger: #b42318;--placeholder: #96928b;--focus-ring: rgba(132,98,31, .35);--overlay: #f5f2edeb;--overlay-panel: #f3f1ebf5;--topbar-bg: #f9f8f5f2;--self-bg: rgba(132,98,31, .06);--self-text: #65470b;--self-border: rgba(132,98,31, .26);--primary-contrast: #ffffff;--primary-hover: #6b5019;--toast-bg: #ffffff;--input-bg: #fbfaf8;--input-border: #cbc9c4;--input-text: #252118;--primary-text: #84621f;color-scheme:light}:root[data-theme=charcoal]{--bg: #131313;--surface: #212121;--surface-2: #2b2b2b;--surface-3: #393939;--border: #474747;--text: #C0C0C0;--muted: #a5a5a5;--primary: #6f9be6;--link: #6f9be6;--ok: #4ade80;--warn: #f5a524;--danger: #ff6b6b;--placeholder: #878a8e;--focus-ring: rgba(111, 155, 230, .35);--overlay: #0f0f0fd6;--overlay-panel: #111111f0;--topbar-bg: #212121f5;--self-bg: rgba(111, 155, 230, .1);--self-text: #a9c6ff;--self-border: rgba(111, 155, 230, .32);--primary-contrast: #0b1220;--primary-hover: #8ab0ec;--toast-bg: #393939;--input-bg: #0e0e0e;--input-border: #474747;--input-text: #e6ebf3;--primary-text: #a9c6ff;color-scheme:dark}:root[data-theme=navy]{--bg: #000032;--surface: #0f0f3e;--surface-2: #1a1a47;--surface-3: #292953;--border: #38385f;--text: #C6C6DC;--muted: #a5a5c0;--primary: #7878da;--link: #7878da;--ok: #4ade80;--warn: #f5a524;--danger: #ff6b6b;--placeholder: #7f819c;--focus-ring: rgba(112,112,225, .35);--overlay: #000028d6;--overlay-panel: #00002df0;--topbar-bg: #0f0f3ef5;--self-bg: rgba(112,112,225, .1);--self-text: #b3b3ff;--self-border: rgba(112,112,225, .32);--primary-contrast: #0b1220;--primary-hover: #8f8fe6;--toast-bg: #292953;--input-bg: #000026;--input-border: #38385f;--input-text: #e6ebf3;--primary-text: #9a9ae8;color-scheme:dark}:root[data-theme=silver]{--bg: #d0d0d3;--surface: #eaeaeb;--surface-2: #dddddf;--surface-3: #d6d6d8;--border: #afafb1;--text: #2A2A2A;--muted: #474747;--primary: #272727;--link: #1c1c1c;--ok: #15803d;--warn: #8a5205;--danger: #b42318;--placeholder: #7d7d7f;--focus-ring: rgba(39,39,39, .35);--overlay: #d9d9dceb;--overlay-panel: #d5d5d7f5;--topbar-bg: #eaeaebf2;--self-bg: rgba(39,39,39, .06);--self-text: #0b0b0b;--self-border: rgba(39,39,39, .26);--primary-contrast: #ffffff;--primary-hover: #212121;--toast-bg: #ffffff;--input-bg: #f1f1f2;--input-border: #afafb1;--input-text: #181818;--primary-text: #272727;color-scheme:light}:root[data-theme=ice]{--bg: #e0f0f0;--surface: #f1f8f8;--surface-2: #e9f4f4;--surface-3: #e4f2f2;--border: #bccaca;--text: #1F2A2A;--muted: #476666;--primary: #1b7474;--link: #147171;--ok: #15803d;--warn: #8a5205;--danger: #b42318;--placeholder: #869595;--focus-ring: rgba(27,116,116, .35);--overlay: #e6f3f3eb;--overlay-panel: #e3f2f2f5;--topbar-bg: #f1f8f8f2;--self-bg: rgba(27,116,116, .06);--self-text: #0b6565;--self-border: rgba(27,116,116, .26);--primary-contrast: #ffffff;--primary-hover: #176363;--toast-bg: #ffffff;--input-bg: #f6fbfb;--input-border: #bccaca;--input-text: #182525;--primary-text: #196c6c;color-scheme:light}:root[data-theme=graphite]{--bg: #303030;--surface: #3c3c3c;--surface-2: #454545;--surface-3: #515151;--border: #5e5e5e;--text: #D2D2D2;--muted: #a5a5a5;--primary: #6f9be6;--link: #6f9be6;--ok: #4ade80;--warn: #f5a524;--danger: #ff6b6b;--placeholder: #94979b;--focus-ring: rgba(111, 155, 230, .35);--overlay: #262626d6;--overlay-panel: #2b2b2bf0;--topbar-bg: #3c3c3cf5;--self-bg: rgba(111, 155, 230, .1);--self-text: #a9c6ff;--self-border: rgba(111, 155, 230, .32);--primary-contrast: #0b1220;--primary-hover: #8ab0ec;--toast-bg: #515151;--input-bg: #242424;--input-border: #5e5e5e;--input-text: #e6ebf3;--primary-text: #a9c6ff;color-scheme:dark}:root[data-theme=forest]{--bg: #003000;--surface: #0f3c0f;--surface-2: #1a451a;--surface-3: #295129;--border: #385e38;--text: #D7E1D8;--muted: #a5c0a5;--primary: #70e170;--link: #70e170;--ok: #4ade80;--warn: #f5a524;--danger: #ff6b6b;--placeholder: #7f9786;--focus-ring: rgba(112,225,112, .35);--overlay: #002600d6;--overlay-panel: #002b00f0;--topbar-bg: #0f3c0ff5;--self-bg: rgba(112,225,112, .1);--self-text: #b8eab8;--self-border: rgba(112,225,112, .32);--primary-contrast: #0b1220;--primary-hover: #92e892;--toast-bg: #295129;--input-bg: #002400;--input-border: #385e38;--input-text: #e6ebf3;--primary-text: #70e170;color-scheme:dark}:root[data-theme=teal]{--bg: #a0c0c0;--surface: #d4e3e3;--surface-2: #bbd2d2;--surface-3: #abc8c8;--border: #86a1a1;--text: #1F2E2E;--muted: #364e4e;--primary: #135353;--link: #0e4e4e;--ok: #15803d;--warn: #8a5205;--danger: #b42318;--placeholder: #637a7a;--focus-ring: rgba(19,83,83, .35);--overlay: #b3cdcdeb;--overlay-panel: #aac6c6f5;--topbar-bg: #d4e3e3f2;--self-bg: rgba(19,83,83, .06);--self-text: #0b6565;--self-border: rgba(19,83,83, .26);--primary-contrast: #ffffff;--primary-hover: #176363;--toast-bg: #ffffff;--input-bg: #e3ecec;--input-border: #86a1a1;--input-text: #182525;--primary-text: #114b4b;color-scheme:light}:root[data-theme=lavender]{--bg: #f0e0f0;--surface: #f8f1f8;--surface-2: #f4e9f4;--surface-3: #f2e4f2;--border: #cabcca;--text: #2E2430;--muted: #664766;--primary: #a527a5;--link: #9c1c9c;--ok: #15803d;--warn: #8a5205;--danger: #b42318;--placeholder: #958695;--focus-ring: rgba(165,39,165, .35);--overlay: #f3e6f3eb;--overlay-panel: #f2e3f2f5;--topbar-bg: #f8f1f8f2;--self-bg: rgba(165,39,165, .06);--self-text: #650b65;--self-border: rgba(165,39,165, .26);--primary-contrast: #ffffff;--primary-hover: #8c218c;--toast-bg: #ffffff;--input-bg: #fbf6fb;--input-border: #cabcca;--input-text: #251825;--primary-text: #a527a5;color-scheme:light}:root[data-theme=purple-night]{--bg: #300030;--surface: #3c0f3c;--surface-2: #451a45;--surface-3: #512951;--border: #5e385e;--text: #D9CCDA;--muted: #c0a5c0;--primary: #e170e1;--link: #e170e1;--ok: #4ade80;--warn: #f5a524;--danger: #ff6b6b;--placeholder: #94819b;--focus-ring: rgba(225,112,225, .35);--overlay: #260026d6;--overlay-panel: #2b002bf0;--topbar-bg: #3c0f3cf5;--self-bg: rgba(225,112,225, .1);--self-text: #eab8ea;--self-border: rgba(225,112,225, .32);--primary-contrast: #0b1220;--primary-hover: #e892e8;--toast-bg: #512951;--input-bg: #240024;--input-border: #5e385e;--input-text: #e6ebf3;--primary-text: #e170e1;color-scheme:dark}.theme-menu-wrap{position:relative;display:inline-flex}.theme-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:60;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;width:min(280px,calc(100vw - 24px));padding:8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);box-shadow:0 10px 26px #0006}.theme-menu[hidden]{display:none}.theme-option{display:flex;align-items:center;gap:6px;min-height:36px;padding:4px 6px;border:1px solid transparent;border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-size:12px;text-align:left;cursor:pointer}.theme-option[aria-pressed=true]{border-color:var(--primary)}.theme-option:hover{background:var(--surface-3)}.theme-swatch{flex:none;width:18px;height:18px;border:2px solid var(--border);border-radius:50%}.theme-option-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-input,.emoji-search,.dccon-search,.theme-option,.flow-add .input{font-size:calc(13px * var(--font-scale))}.theme-menu-section{grid-column:1 / -1;margin-top:4px;padding-top:6px;border-top:1px solid var(--border)}.theme-menu-title{margin:0 0 4px;color:var(--muted);font-size:11px;font-weight:600}.theme-font-row{display:flex;flex-wrap:wrap;gap:4px}.font-option{flex:1 1 auto;min-height:32px;padding:2px 6px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);cursor:pointer}.font-option[aria-pressed=true]{border-color:var(--primary);background:var(--surface-3)}.font-preview{margin-top:6px;padding:4px 6px;border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-size:var(--msg-font-size)}.flow-controls{flex:0 0 auto;opacity:1;transform:none;pointer-events:auto;background:var(--surface);border-top:1px solid var(--border);max-height:min(46dvh,340px);overflow-y:auto;padding-bottom:max(8px,env(safe-area-inset-bottom))}.flow-add{display:flex;flex-direction:column;gap:6px}.flow-add-toggle{align-self:flex-start;min-height:36px;padding:0 12px;font-size:12px}.flow-add-panel{width:100%;max-width:min(560px,calc(100vw - 24px));margin:0 auto;padding:8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);box-shadow:0 10px 26px #00000073;max-height:min(38dvh,320px);overflow-y:auto}.flow-add-panel[hidden]{display:none}.flow-add-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.flow-add-panel-title{font-size:12px;font-weight:600;color:var(--muted)}.flow-add-close{flex:none;min-width:32px;height:32px}.flow-add-row{display:flex;gap:6px;align-items:center}.flow-add-row .input{flex:1 1 auto;min-width:0;height:34px;min-height:34px;padding:4px 8px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);font-size:13px}.flow-add-row .btn{flex:none;min-width:56px;height:34px;min-height:34px;padding:0 12px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--text);font-size:13px;font-weight:700}.flow-range-toggle{align-self:flex-start;min-height:24px;padding:2px 0;border:0;background:none;color:var(--muted);font-size:11px}@media (min-width: 560px){.flow-root{flex-direction:column}}@media (max-width: 430px){.emoji-picker{width:min(340px,calc(100vw - 16px))}.emoji-grid,.dccon-items{gap:4px}.emoji-thumb{max-width:64px;max-height:64px}}.chat-counter{flex:none;align-self:center;padding:0 4px;color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.chat-counter.is-near{color:var(--warn)}.chat-counter.is-over{color:var(--danger);font-weight:700}.flow-minibar{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:45;display:flex;align-items:center;gap:8px;height:48px;min-height:48px;padding:0 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font-size:13px;font-weight:700;box-shadow:0 2px 8px #0003;cursor:pointer}.flow-minibar-add{flex:none;font-weight:700}.flow-minibar-chip{flex:1 1 auto;min-width:0;overflow:hidden;color:var(--muted);font-size:12px;font-weight:400;text-overflow:ellipsis;white-space:nowrap}.flow-minibar-caret{flex:none;color:var(--muted)}.flow-controls.flow-sheet{position:absolute;top:calc(var(--flow-chrome-h, 44px) + 4px);right:8px;left:auto;z-index:50;display:flex;flex-direction:column;gap:6px;width:min(340px,calc(100vw - 16px));height:auto;min-height:0;max-height:min(46dvh,calc(100dvh - var(--flow-chrome-h, 44px) - var(--kb-gap, 0px) - 16px));margin:0;padding:8px 10px;overflow-y:auto;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:0 8px 24px #0000004d;opacity:1}.flow-controls.flow-sheet[hidden]{display:none!important}@media (max-width: 430px){.flow-controls.flow-sheet{width:calc(100vw - 16px)}}.flow-sheet-head{display:flex;align-items:center;gap:8px;min-height:34px;position:sticky;top:0;z-index:1;background:var(--surface);border-bottom:1px solid var(--border)}.flow-scrim{position:absolute;inset:0;z-index:44;background:transparent}.flow-scrim[hidden]{display:none!important}.flow-chrome{flex:none;display:flex;align-items:center;gap:4px;min-height:40px;padding:0 8px;padding-top:calc(2px + env(safe-area-inset-top));background:var(--surface);border-bottom:1px solid var(--border)}.flow-chrome.is-collapsed{min-height:28px;padding:0 8px;padding-top:env(safe-area-inset-top)}.flow-chrome.is-collapsed .flow-chrome-toggle{width:28px;height:28px;min-width:28px;min-height:28px}.flow-chrome.is-collapsed .flow-topbar{display:none}.flow-chrome-label{display:none;flex:1 1 auto;min-width:0;color:var(--muted);font-size:11px}.flow-chrome.is-collapsed .flow-chrome-label{display:block}.flow-chrome-toggle{flex:none;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;min-width:40px;min-height:40px;padding:0;border:0;border-radius:999px;background:transparent;color:var(--muted);font-size:12px;cursor:pointer;transition:background-color .12s}.flow-chrome-toggle svg{transition:transform .18s ease}.flow-chrome.is-collapsed .flow-chrome-toggle svg{transform:rotate(180deg)}@media (hover: hover){.flow-chrome-toggle:hover{background:var(--surface-2);color:var(--text)}}.flow-chrome-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.flow-chrome-toggle:active svg{transform:scale(.92)}.flow-stage{position:relative;display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.flow-ratio{--down: 0%;position:relative;display:flex;flex:none;height:4px;background:#7f7f7f2e;overflow:visible}.flow-ratio-seg{height:100%;transition:width .35s cubic-bezier(.22,1,.36,1)}.flow-ratio .is-like{width:calc(100% - var(--down));background:#22c55e}.flow-ratio .is-dislike{width:var(--down);background:#ef4444}.flow-ratio-cut{position:absolute;top:-2px;right:20%;width:2px;height:8px;background:#fff;box-shadow:0 0 0 1px #00000073;z-index:2}.flow-ratio-cut-label{position:absolute;top:-14px;right:-10px;font-size:9px;font-weight:700;letter-spacing:.04em;color:#ffffffbf;white-space:nowrap}.flow-ratio[data-sample=low] .flow-ratio-cut-label{opacity:.35}.flow-ratio.is-danger .is-dislike{animation:ratioDangerPulse 1s ease-in-out infinite}.flow-ratio.is-danger .flow-ratio-cut{background:#fbbf24}@keyframes ratioDangerPulse{50%{filter:brightness(1.45)}}.flow-ratio.is-cut{animation:ratioCutFlash .3s steps(2) 2}@keyframes ratioCutFlash{50%{filter:brightness(1.8)}}.flow-stage.is-cut{animation:toNext .9s cubic-bezier(.7,0,.2,1) both}@keyframes toNext{0%{transform:translate(0);opacity:1}36%{transform:translate(-100%);opacity:.2}37%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.flow-next-sweep{position:absolute;inset:0;display:grid;place-items:center;font-size:28px;font-weight:800;letter-spacing:.2em;color:#fff;background:linear-gradient(105deg,transparent 20%,rgba(239,68,68,.85) 50%,transparent 80%);background-size:250% 100%;opacity:0;pointer-events:none}.flow-stage.is-cut .flow-next-sweep{animation:sweep .9s ease both}@keyframes sweep{0%{opacity:0;background-position:100% 0}40%{opacity:1}to{opacity:0;background-position:-50% 0}}@media (prefers-reduced-motion: reduce){.flow-ratio-seg,.flow-stage.is-cut{transition:none;animation:none}.flow-ratio.is-danger .is-dislike,.flow-ratio.is-cut,.flow-stage.is-cut .flow-next-sweep{animation:none}.flow-stage.is-cut{opacity:.35}}.flow-topbar{display:flex;align-items:center;gap:6px;flex:1 1 auto;min-width:0;height:40px;flex-wrap:nowrap}.flow-topbar>*{pointer-events:auto}.flow-topbar-left{display:flex;align-items:center;gap:2px;flex:none;min-width:0}.flow-topbar-right{display:flex;align-items:center;gap:4px;margin-left:auto;flex:none}.flow-topbar .flow-vote{display:inline-flex;align-items:center;gap:2px;padding:0;border:0;background:transparent;backdrop-filter:none}.flow-topbar .flow-vote-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;min-width:40px;min-height:40px;padding:0;border:0;border-radius:999px;background:transparent;color:var(--text);cursor:pointer;transition:background-color .12s}.flow-topbar .flow-vote-btn svg{transition:transform .18s cubic-bezier(.34,1.56,.64,1),fill .12s ease}@media (hover: hover){.flow-topbar .flow-vote-btn:hover{background:var(--surface-2)}}.flow-topbar .flow-vote-btn:active svg{transform:scale(.92)}.flow-topbar .flow-vote-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.flow-topbar .flow-vote-btn.is-active{color:var(--primary)}.flow-topbar .flow-vote-btn.is-active svg{fill:currentColor}.flow-topbar .flow-vote-btn--down.is-active{color:var(--muted)}.flow-topbar .flow-vote-btn:disabled{opacity:.35;pointer-events:none;cursor:default}.flow-topbar .flow-vote-count{padding:0 4px;color:var(--muted);font-size:12px;font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums;transition:transform .12s ease,color .12s ease}.flow-topbar .flow-vote-count.is-bumped{transform:scale(1.15)}.flow-vote.is-voted-up .flow-vote-count{color:var(--primary);font-weight:700}.flow-topbar-viewers{display:inline-flex;align-items:center;gap:4px;flex:0 1 auto;min-width:0;color:var(--muted);font-size:11px}.flow-topbar-icon{display:inline-flex;align-items:center;flex:none;color:var(--muted)}.flow-topbar-viewers .flow-viewers{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flow-topbar-add{flex:none;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;min-height:32px;padding:0;border:0;border-radius:50%;background:var(--primary);color:var(--primary-contrast);cursor:pointer;transition:transform .12s ease}.flow-topbar-add svg{display:block}@media (hover: hover){.flow-topbar-add:hover{transform:scale(1.06)}}.flow-topbar-add:active{transform:scale(.94)}.flow-topbar-add:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.flow-topbar-add:disabled{opacity:.35;pointer-events:none}@media (prefers-reduced-motion: reduce){.flow-topbar .flow-vote-btn,.flow-topbar .flow-vote-btn svg,.flow-topbar .flow-vote-count,.flow-topbar-add,.flow-chrome-toggle,.flow-chrome-toggle svg{transition:none}.flow-topbar .flow-vote-btn:active svg,.flow-topbar .flow-vote-count.is-bumped,.flow-topbar-add:hover,.flow-topbar-add:active,.flow-chrome-toggle:active svg{transform:none}}@media (max-width: 400px){.flow-topbar-viewers{flex:1 1 auto}.flow-topbar-icon{display:none}}@media (max-width: 360px){.flow-topbar-viewers{display:none}}.flow-sheet-title{flex:1 1 auto;font-size:12px;font-weight:700}.flow-sheet-close{flex:none;width:36px;min-width:36px;height:36px;min-height:36px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted);font-size:15px}.flow-sheet-close:hover{background:var(--surface-2);color:var(--text)}.flow-root{padding-bottom:calc(70px + env(safe-area-inset-bottom));box-sizing:border-box}.flow-player{flex:1 1 auto;min-height:0}.flow-add-row .btn:hover:not(:disabled){background:var(--surface-3);color:var(--text);border-color:var(--border)}.flow-add-row .btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.flow-actions{gap:6px}@media (max-width: 360px){.flow-actions{gap:4px}}.flow-range{flex:none;width:100%}.flow-add{align-items:stretch}.flow-add-row .input{font-size:calc(13px * var(--font-scale))}@media (pointer: coarse){.flow-add-row .input,.flow-add .input,.flow-range .input{height:40px;min-height:40px;font-size:16px}.flow-add-row .btn,.flow-add .btn{height:40px;min-height:40px;font-size:14px}.flow-vote-btn,.flow-report,.flow-remove,.flow-queue-toggle,.flow-sheet-toggle{height:40px;min-height:40px}.flow-sheet-close{width:40px;min-width:40px;height:40px;min-height:40px}.flow-queue-remove{height:28px;min-height:28px}.flow-chrome:not(.is-collapsed){min-height:44px;padding-top:calc(2px + env(safe-area-inset-top))}.flow-chrome.is-collapsed{min-height:32px}.flow-chrome.is-collapsed .flow-chrome-toggle{width:32px;height:32px;min-width:32px;min-height:32px}.flow-topbar{height:44px}.flow-topbar .flow-vote-btn,.flow-chrome-toggle{width:44px;height:44px;min-width:44px;min-height:44px}.flow-topbar-add{width:36px;height:36px;min-width:36px;min-height:36px}}
