:root{color-scheme:dark;font:16px Arial,"Yu Gothic",Meiryo,sans-serif;background:#000;color:#eee}
/* Keep the ad in the sidebar's scroll flow, with space from all controls. */
.sidebar-footer{margin:16px 0 0;text-align:center;font-size:11px}.sidebar-footer a{color:#aaa;text-underline-offset:3px}
.sidebar-ad{margin-top:32px;padding-top:14px;border-top:1px solid #444;min-width:0}.ad-label{margin:0 0 8px;color:#999;font-size:11px;text-align:center}.ad-space{position:relative;min-height:250px;background:#202020}.ad-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#777;font-size:12px;pointer-events:none}.sidebar-ad .adsbygoogle{display:block;width:100%;min-height:250px}.sidebar-ad[data-ad-state=unavailable] .ad-space{min-height:0}.sidebar-ad[data-ad-state=unavailable] .adsbygoogle{display:none}
*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input,select{font:inherit;color:inherit}button{cursor:pointer;background:#333;border:1px solid #555;padding:7px 10px;border-radius:2px;font-size:14px;white-space:nowrap}button:hover{background:#444}button:disabled{opacity:.4;cursor:default}input,select{background:#171717;border:1px solid #555;border-radius:2px;padding:7px 8px;font-size:14px;min-width:0}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid #bbb;outline-offset:2px}input[aria-invalid=true]{border-color:#e87575}[hidden]{display:none!important}.svg-library{position:absolute;width:0;height:0;overflow:hidden}
.workspace{--sidebar-width:300px;position:relative;display:grid;grid-template-columns:var(--sidebar-width) 25px minmax(0,1fr);height:100vh;height:100dvh;min-height:0;background:#000}.sidebar{grid-column:1;grid-row:1;min-width:0;overflow:auto;background:#242424;border-right:1px solid #444;padding:14px;scrollbar-width:thin}.sidebar h1{font-size:18px;font-weight:600;margin:0 0 16px}.sidebar #add-form{display:flex;gap:6px}.sidebar #stream-url{width:100%}.toolbar-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:16px 0 14px}.toolbar-controls button{min-width:0;white-space:normal;overflow-wrap:anywhere;padding:7px 6px;line-height:1.4}#layout-picker{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}#current-layout{font-size:12px;color:#bbb}.list-title{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #444;padding:14px 0 10px;font-size:14px}.list-title #stream-count{font-size:12px;color:#bbb}
.sidebar-tab{position:absolute;z-index:10;left:var(--sidebar-width);top:12px;display:flex;flex-direction:column;align-items:center;gap:4px;width:25px;padding:5px 3px 10px;border-radius:0 3px 3px 0;background:#242424;font-size:13px}.tab-label{writing-mode:vertical-rl;letter-spacing:2px}#sidebar-chevron{font-size:20px;line-height:18px}.workspace.sidebar-collapsed{grid-template-columns:0 25px minmax(0,1fr)}.sidebar-collapsed .sidebar-tab{left:0}
#layout-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:16px;border:1px solid #666;border-radius:2px;background:#242424;color:#eee;overflow:auto}#layout-dialog::backdrop{background:#0009}.dialog-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.dialog-heading h2{font-size:16px;font-weight:600;margin:0}.layout-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.layout-options button{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0;padding:7px;background:#292929;white-space:normal}.layout-options button:hover{background:#3a3a3a}.layout-options button[aria-pressed=true]{border-color:#eee;background:#444}.layout-options img{display:block;width:100%;height:auto;aspect-ratio:16/9}.layout-options span{font-size:13px}
.stream-control{padding:10px 0 14px;border-bottom:1px solid #444}.control-heading{display:flex;align-items:center;gap:8px;font-size:14px;margin-bottom:8px}.stream-number{font-variant-numeric:tabular-nums;color:#aaa}.platform-badge{font-size:12px;color:#bbb}.card-actions{margin-left:auto;display:flex;gap:2px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:5px;color:#ddd;background:transparent;border:0;border-radius:2px}.icon-button:hover{background:#444}.icon-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.card-url-form{display:flex;gap:5px;min-width:0}.card-url-form input{min-width:0;width:100%;padding:6px 7px}.card-url-form button{padding:6px 9px}.size-control{display:grid;grid-template-columns:55px minmax(0,1fr) 36px;align-items:center;gap:6px;font-size:12px;margin-top:10px}.size-control input{padding:0;width:100%;accent-color:#aaa;min-width:0}.size-control output{color:#aaa;text-align:right;font-variant-numeric:tabular-nums}.size-control input:disabled{opacity:.35}.error{margin:8px 0 0;color:#ff9898;font-size:14px;line-height:1.5}
.stream-board{grid-column:3;grid-row:1;display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;overflow:hidden;gap:0;padding:0;background:#000}.stream-row{display:flex;min-width:0;min-height:0;flex:1 1 0%;gap:0}.stream-cell{display:flex;flex-direction:column;min-width:0;min-height:0;gap:0}.stream-card{position:relative;flex:1 1 0%;min-width:0;min-height:0;border:0;margin:0;padding:0;overflow:hidden;background:#000}
/* Keep iframe viewports inside fractional flex cells so Twitch visibility checks do not see clipped edges. */
.stream-card iframe{position:absolute;inset:0;display:block;border:0;width:100%;height:100%;width:round(down,100%,1px);height:round(down,100%,1px)}
.stream-board:fullscreen{width:100%;height:100%;margin:0;padding:0;border:0;gap:0;background:#000}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#333;border:1px solid #777;padding:10px 16px;font-size:14px;max-width:calc(100vw - 24px);z-index:100}
@media(max-width:700px){.workspace{--sidebar-width:230px}.sidebar{padding:10px}.sidebar #add-form{flex-wrap:wrap}.sidebar #stream-url{flex-basis:100%}.sidebar #add-form button{width:100%}.size-control{grid-template-columns:47px minmax(0,1fr) 32px}}@media(max-width:450px){.layout-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.drag-handle{cursor:grab;touch-action:none;user-select:none;flex-shrink:0}.drag-handle:active{cursor:grabbing}.drag-handle:disabled{cursor:default}.dragging{opacity:.4}.stream-number{min-width:12px}.drag-preview{position:fixed;z-index:200;pointer-events:none;background:#333;color:#eee;border:1px solid #aaa;padding:8px 12px;font-size:14px;white-space:nowrap}.drop-marker{position:fixed;z-index:199;height:2px;background:#eee;pointer-events:none}
.media-actions{display:grid;grid-template-columns:1fr 1.8fr;gap:6px;margin-top:10px}.media-actions button{padding:6px;font-size:12px;min-width:0}.comment-toggle[aria-pressed=true]{border-color:#bbb;background:#484848}.stream-card{display:flex}.stream-cell{container-type:inline-size}.stream-picture{position:relative;flex:1;min-width:0;min-height:0}.stream-chat{position:relative;flex:0 0 32%;min-width:260px;max-width:360px;min-height:0}.stream-chat iframe{background:#18181b}@container(max-width:560px){.with-chat{flex-direction:column}.stream-chat{flex:0 0 40%;min-width:0;max-width:none;width:100%}}
#screenshot-dialog{width:min(1000px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:16px;background:#242424;color:#eee;border:1px solid #666;border-radius:2px;overflow:auto}#screenshot-dialog::backdrop{background:#0009}#screenshot-image{display:block;max-width:100%;max-height:calc(100dvh - 160px);width:auto;height:auto;margin:0 auto;background:#000}.save-screenshot{display:block;width:max-content;margin:14px 0 0 auto;background:#333;border:1px solid #555;border-radius:2px;padding:7px 12px;color:#eee;font-size:14px;text-decoration:none}.save-screenshot:hover{background:#444}
.capturing .sidebar-tab,.capturing .toast{visibility:hidden}.capture-all-video .stream-chat{display:none}
.stream-title{flex:1;min-width:0;font-size:12px;line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow-wrap:anywhere}.control-heading .card-actions{flex-shrink:0}.drag-preview{max-width:320px;overflow:hidden;text-overflow:ellipsis}
.media-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.mute-toggle[aria-pressed=true],#mute-all[aria-pressed=true]{border-color:#bbb;background:#484848}
.stream-identity{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.stream-channel{display:block;color:#aaa;font-size:12px;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.control-heading{gap:5px}
.folder-controls{display:flex;gap:5px;align-items:center;margin-bottom:10px;min-width:0}.folder-controls select{flex:1;width:0;min-width:0}.folder-controls button{flex-shrink:0;padding:6px;font-size:14px}.list-actions{display:flex;align-items:center;gap:10px}#add-team{padding:5px 8px;font-size:12px}.team-navigation{display:flex;flex-direction:column;gap:6px;min-width:0}.team-folder{min-width:0;border:1px solid #444;border-radius:2px;background:#292929}.team-heading{display:flex;align-items:stretch;min-width:0}.team-toggle{display:flex;align-items:center;gap:7px;flex:1;min-width:0;white-space:normal;text-align:left;border:0;background:transparent;padding:9px 8px}.team-toggle[aria-current=true]{background:#383838}.team-toggle:hover{background:#444}.team-chevron{flex-shrink:0;font-size:20px;line-height:1;transition:transform .12s}.team-toggle[aria-expanded=true] .team-chevron{transform:rotate(90deg)}.team-name{flex:1;min-width:0;overflow-wrap:anywhere;line-height:1.5}.team-count{flex-shrink:0;color:#aaa;font-size:12px}.edit-team{flex-shrink:0;align-self:center;padding:5px 6px;margin:5px;font-size:12px}.team-panel{padding:8px;border-top:1px solid #444}.empty-team{margin:4px 0;color:#aaa;font-size:12px;line-height:1.7}.stream-membership{display:flex;gap:6px;align-items:center;margin-top:8px;font-size:12px;color:#bbb}.stream-membership select{width:0;flex:1;min-width:0;padding:5px 6px;font-size:12px}.group-note{font-size:14px;color:#bbb;line-height:1.6}.empty-group{margin:auto;padding:24px;color:#aaa;font-size:14px;line-height:1.7;text-align:center}#group-dialog{width:min(420px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:16px;border:1px solid #666;border-radius:2px;background:#242424;color:#eee;overflow:auto}#group-dialog::backdrop{background:#0009}.group-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px;font-size:14px}.group-field input{width:100%}.group-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}#delete-group{margin-right:auto;color:#ffb2b2}
.collection-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}.collection-actions button{min-width:0;padding:6px;font-size:14px}.save-status{display:block;max-width:100%;padding:5px 0 8px;border:0;background:transparent;color:#aaa;font-size:12px;white-space:normal;text-align:left;line-height:1.5}.save-error{color:#ff9898}.viewer-mode{font-size:14px;color:#ddd;margin-bottom:10px}.viewer-mode button{font-size:12px;margin-left:8px}.collection-dialog{width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:16px;border:1px solid #666;border-radius:2px;background:#242424;color:#eee;overflow:auto}.collection-dialog::backdrop{background:#0009}.code-row{display:flex;gap:6px;min-width:0}.code-row input{width:0;flex:1;font-family:monospace}.readonly .stream-close,.readonly .drag-handle,.readonly .card-url-form,.readonly .stream-membership{display:none}.readonly #add-form,.readonly #add-folder,.readonly #edit-folder,.readonly #add-team,.readonly .edit-team{display:none}

.sidebar #add-form{flex-wrap:wrap}.sidebar #stream-url{flex:1;width:0}.add-pinned{display:flex;align-items:center;gap:6px;flex-basis:100%;font-size:12px;color:#bbb;line-height:1.6}.add-pinned input{margin:0}.selection-note{font-size:12px;color:#aaa;line-height:1.6;margin:6px 0 10px;overflow-wrap:anywhere}.add-options{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:6px;flex-basis:100%;min-width:0}.add-destination{min-width:0;margin:0;color:#bbb}.team-selection{flex-shrink:0;width:16px;height:16px;margin:12px 0 12px 8px;align-self:flex-start;accent-color:#ddd}.pinned-section{padding:10px 8px;border:1px solid #666;margin-bottom:10px;border-radius:2px;background:#292929}.pinned-section summary{font-size:14px;cursor:pointer;font-weight:600}.pinned-section summary span{float:right;font-size:12px;color:#aaa;font-weight:normal}.readonly #add-destination{display:none}#stream-controls{display:none}
