:root{--bg:#0d0f16;--panel:#161a26;--panel-2:#1e2334;--line:#2b3144;--text:#e8eaf2;--muted:#8f97b2;--accent:#7c5cff;--accent-2:#00d8c0;--danger:#ff5d73;--radius:12px;--bar-h:74px;--chat-w:320px;--panel-glass:#161a26b3;--chat-glass:#161a26db}*{box-sizing:border-box}body{background:radial-gradient(1200px 800px at 70% -10%, #1b2140 0%, var(--bg) 55%);color:var(--text);min-height:100vh;margin:0;font-family:system-ui,-apple-system,Segoe UI,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif}.bar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:5;background:#0d0f16db;justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;display:flex;position:sticky;top:0}.brand{flex:none;align-items:center;text-decoration:none;display:flex}.brand img{border-radius:6px;width:auto;height:44px;display:block}.me{color:var(--muted);align-items:center;gap:10px;font-size:14px;display:flex}.bar-right{align-items:center;gap:12px;min-width:0;display:flex}.se-volume{flex:none;position:relative}.se-volume-button{padding:6px 10px;font-size:18px;line-height:1}.se-volume-popover{z-index:20;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);width:min(240px,100vw - 32px);padding:12px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 32px #00000073}.se-volume-popover[hidden]{display:none}.se-volume-slider{width:100%;accent-color:var(--accent);margin-top:8px}.se-volume-value{color:var(--muted);font-size:12px}.me img{border-radius:50%;width:28px;height:28px}.app{max-width:1200px;margin:0 auto;padding:24px 16px 64px}.two-col{grid-template-columns:1fr 1fr;align-items:start;gap:16px;display:grid}.two-col>*{margin-bottom:0}@media (width<=1100px){.two-col{grid-template-columns:1fr}}h1{margin:0 0 16px;font-size:22px}h2{color:var(--muted);margin:24px 0 10px;font-size:16px;font-weight:600}.panel{background:var(--panel-glass);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:16px;padding:18px}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.spread{justify-content:space-between}button{font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--line);cursor:pointer;border-radius:10px;padding:10px 16px}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.45;cursor:default}button.primary{background:linear-gradient(#8d72ff,#6a46f5);border-color:#0000;font-weight:600}button.ghost{background:0 0}button.danger{border-color:var(--danger);color:var(--danger)}input,select{font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--line);border-radius:10px;padding:10px 12px}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:1px}label{color:var(--muted);gap:6px;font-size:13px;display:grid}.muted{color:var(--muted)}.list{gap:10px;display:grid}.room{background:var(--panel-2);border:1px solid var(--line);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.tag{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:3px 8px;font-size:12px}.members{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--panel-2);border:1px solid var(--line);border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:14px;display:flex}.chip img{border-radius:50%;width:20px;height:20px}.chip.owner{border-color:var(--accent)}.chip.done{border-color:var(--accent-2)}.timer{font-variant-numeric:tabular-nums;letter-spacing:.02em;text-align:center;margin:8px 0 4px;font-size:56px;font-weight:700}.timer.urgent{color:var(--danger)}.gacha{text-align:center;place-items:center;gap:10px;min-height:220px;display:grid}.gacha .spin{font-size:44px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.reveal{animation:.42s cubic-bezier(.2,1.4,.4,1) pop}@keyframes pop{0%{opacity:0;transform:scale(.7)}}.materials{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.material{background:var(--panel-2);border:1px solid var(--line);border-radius:10px;overflow:hidden}.material img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.material .body{padding:10px 12px;font-size:14px}.material a{color:var(--accent-2)}.player{aspect-ratio:16/9;background:#000;border:0;border-radius:10px;width:100%}.player-wrap>video[hidden]{display:none}.scores{gap:8px;display:flex}.scores button{width:54px;height:54px;font-size:20px;font-weight:700}.scores button.picked{background:linear-gradient(#8d72ff,#6a46f5);border-color:#0000}.drop{border:2px dashed var(--line);border-radius:var(--radius);text-align:center;color:var(--muted);padding:34px 18px}.drop.over{border-color:var(--accent);color:var(--text)}.bar-progress{background:var(--panel-2);border-radius:999px;height:8px;overflow:hidden}.bar-progress>div{background:linear-gradient(90deg, var(--accent), var(--accent-2));width:0;height:100%}.chat-pane{left:0;top:var(--bar-h);width:var(--chat-w);background:var(--chat-glass);border-right:1px solid var(--line);z-index:4;flex-direction:column;display:flex;position:fixed;bottom:0}.chat-head{border-bottom:1px solid var(--line);color:var(--muted);flex:none;padding:12px 14px;font-size:13px;font-weight:600}.chat-pane .log{overflow-wrap:anywhere;flex-direction:column;flex:auto;gap:8px;min-height:0;padding:12px 14px;font-size:14px;line-height:1.5;display:flex;overflow-y:auto}.chat-pane .log .who{color:var(--muted);margin-right:6px}.chat-foot{border-top:1px solid var(--line);flex:none;gap:8px;padding:12px 14px;display:flex}.chat-foot input{flex:1 1 0;min-width:0}.chat-foot button{white-space:nowrap;flex:none}body.with-chat .app{margin-left:var(--chat-w)}@media (width<=900px){.chat-pane{border-right:0;border-bottom:1px solid var(--line);width:auto;height:40vh;position:static}body.with-chat .app{margin-left:0}}.results{gap:10px;display:grid}.result-row{background:var(--panel-2);border:1px solid var(--line);border-radius:10px;grid-template-columns:44px 1fr auto auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.result-row .place{text-align:center;font-size:22px}.delta.up{color:var(--accent-2)}.delta.down{color:var(--danger)}.toast{background:var(--panel-2);border:1px solid var(--danger);color:var(--text);z-index:10;border-radius:10px;padding:12px 18px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.center{text-align:center}.big-note{font-size:15px;line-height:1.7}.result-row .avatar{border-radius:50%;width:24px;height:24px}.result-row.mine{border-color:var(--accent)}.review-layout{grid-template-columns:minmax(0,2fr) minmax(260px,1fr);align-items:start;gap:16px;display:grid}@media (width<=1100px){.review-layout{grid-template-columns:1fr}}.work-list{gap:8px;max-height:60vh;display:grid;overflow-y:auto}.work-item{border:1px solid var(--line);background:var(--panel-2);cursor:pointer;border-radius:10px;grid-template-columns:72px 1fr;align-items:center;gap:10px;padding:8px;display:grid}.work-item:hover{border-color:var(--accent)}.work-item.selected{border-color:var(--accent);background:linear-gradient(#7c5cff38,#7c5cff14)}.work-thumb{aspect-ratio:16/9;color:var(--muted);background:#000;border-radius:8px;place-items:center;font-size:22px;font-weight:700;display:grid}.work-item.selected .work-thumb{color:var(--text)}.work-meta{gap:2px;min-width:0;font-size:13px;display:grid}.scored{color:var(--accent-2)}.credit{text-align:center;color:var(--muted);padding:16px;font-size:12px}.reaction-layer{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.floater{left:var(--x);font-size:var(--size);opacity:0;animation:float-rise var(--dur) ease-out forwards, float-sway calc(var(--dur) / 3) ease-in-out infinite alternate;will-change:transform, translate, opacity;line-height:1;position:absolute;bottom:-64px}.floater img{width:var(--size);height:var(--size);object-fit:contain;display:block}@keyframes float-rise{0%{opacity:0;transform:translateY(0)scale(.7)}10%{opacity:.9}75%{opacity:.8}to{opacity:0;transform:translateY(-112vh)scale(1.1)}}@keyframes float-sway{0%{translate:calc(var(--sway) * -1) 0}to{translate:var(--sway) 0}}@media (prefers-reduced-motion:reduce){.floater{animation:float-rise var(--dur) ease-out forwards}}.reaction{flex:none;display:flex;position:relative}.reaction[hidden],.reaction-pop[hidden]{display:none}.reaction-btn{background:var(--panel-2);border:1px solid var(--line);cursor:pointer;border-radius:999px;padding:0 10px;font-size:18px;line-height:1}.reaction-pop{background:var(--panel-2);border:1px solid var(--line);z-index:6;border-radius:28px;flex-direction:column;gap:2px;max-height:60vh;padding:8px;display:flex;position:absolute;bottom:calc(100% + 10px);right:0;overflow-y:auto;box-shadow:0 8px 24px #00000073}.reaction-pop button{cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:0 0;border:0;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;font-size:26px;line-height:1;display:grid}.reaction-pop button:hover,.reaction-pop button:active{background:#ffffff1a}.reaction-pop img{object-fit:contain;pointer-events:none;width:28px;height:28px}.player-frame{background:#000;border-radius:10px;position:relative;overflow:hidden}.player-frame>.player{border-radius:0;display:block}.comment-lane{z-index:2;pointer-events:none;position:absolute;inset:0;overflow:hidden}.comment{white-space:nowrap;color:#fff;text-shadow:0 0 3px #000,0 0 3px #000,1px 1px 2px #000;will-change:transform;width:100%;font-size:clamp(14px,2.4vw,26px);font-weight:700;line-height:1.3;position:absolute;left:0}.player-controls{z-index:3;pointer-events:none;position:absolute;inset:0}.player-bar{opacity:0;pointer-events:auto;background:linear-gradient(#0000,#000000b3);align-items:center;gap:8px;padding:22px 10px 8px;transition:opacity .2s;display:flex;position:absolute;bottom:3px;left:0;right:0}.player-frame:hover .player-bar,.player-controls.active .player-bar,.player-bar:focus-within{opacity:1}.player-bar button{color:#fff;cursor:pointer;touch-action:manipulation;background:#ffffff3d;border:0;border-radius:50%;width:34px;height:34px;padding:0;font-size:18px;line-height:1}.player-bar button:hover{background:#ffffff61}.player-bar button.off{opacity:.45}.pc-spacer{flex:auto}.pc-volume{width:96px;accent-color:var(--accent-2)}.player-progress{pointer-events:none;background:#fff3;height:3px;position:absolute;bottom:0;left:0;right:0}.player-progress i{background:var(--accent-2);width:0;height:100%;display:block}.pc-seek{appearance:none;cursor:pointer;pointer-events:auto;touch-action:none;background:0 0;width:100%;height:14px;margin:0;padding:0;position:absolute;bottom:-5px;left:0;right:0}.pc-seek::-webkit-slider-runnable-track{background:0 0;height:14px}.pc-seek::-moz-range-track{background:0 0;height:14px}.pc-seek::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent-2);opacity:0;border:0;border-radius:50%;width:12px;height:12px;margin-top:1px}.pc-seek::-moz-range-thumb{background:var(--accent-2);opacity:0;border:0;border-radius:50%;width:12px;height:12px}.player-frame:hover .pc-seek::-webkit-slider-thumb{opacity:1}.player-controls.active .pc-seek::-webkit-slider-thumb{opacity:1}.pc-seek:focus-visible::-webkit-slider-thumb{opacity:1}.player-frame:hover .pc-seek::-moz-range-thumb{opacity:1}.player-controls.active .pc-seek::-moz-range-thumb{opacity:1}.pc-seek:focus-visible::-moz-range-thumb{opacity:1}.player-frame:hover .pc-seek~.player-progress,.player-controls.active .pc-seek~.player-progress{height:4px}.me-link{color:inherit;align-items:center;gap:10px;text-decoration:none;display:flex}.me-link:hover{color:var(--text)}.name-link{color:inherit;text-decoration:none}.name-link:hover{color:var(--accent-2)}.profile-head{align-items:flex-start;gap:20px;display:flex}.avatar-large{object-fit:cover;background:var(--panel-2);border-radius:50%;flex:none;width:96px;height:96px}.avatar-large.placeholder{color:var(--muted);place-items:center;font-size:36px;display:grid}.profile-identity{min-width:0}.profile-identity h1{margin-bottom:4px}.bio{white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0 0;line-height:1.8}.stats{flex-wrap:wrap;gap:12px;display:flex}.stat{background:var(--panel-2);border:1px solid var(--line);border-radius:10px;flex:120px;padding:10px 14px}.stat-value{margin-top:4px;font-size:22px;font-weight:700}.profile-edit{gap:12px;display:grid}.profile-avatar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}textarea{font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--line);resize:vertical;border-radius:10px;padding:10px 12px}textarea:focus{outline:2px solid var(--accent);outline-offset:1px}@media (width<=600px){.profile-head{gap:14px}.avatar-large{width:72px;height:72px}}.collab-timeline{touch-action:pan-x;padding:4px 0}.collab-scroll{touch-action:pan-x;overscroll-behavior-x:contain;padding:8px 2px 6px;overflow:auto hidden}.collab-track{background:var(--panel-2);border:1px solid var(--line);border-radius:10px;min-width:100%;height:54px;position:relative}.collab-selection{border-left:1px solid var(--accent);border-right:1px solid var(--accent);pointer-events:none;background:#7c5cff1f;position:absolute;top:0;bottom:0}.collab-segment{background:color-mix(in srgb, var(--seg-color) 24%, transparent);border:1px solid var(--seg-color);min-width:2px;color:var(--text);cursor:pointer;touch-action:pan-x;-webkit-user-select:none;user-select:none;border-radius:6px;padding:4px 6px;position:absolute;top:5px;bottom:5px;overflow:hidden}.collab-segment.vacant{border-color:var(--line);color:var(--muted);cursor:default;background:repeating-linear-gradient(45deg,#ffffff0a,#ffffff0a 6px,#0000 6px 12px)}.collab-segment.checked{box-shadow:inset 0 0 0 2px var(--accent-2)}.collab-name{white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:700;display:block;overflow:hidden}.collab-time{color:var(--muted);white-space:nowrap;font-size:10px;display:block}.collab-handle{background:var(--accent);border:2px solid var(--bg);cursor:ew-resize;touch-action:none;z-index:2;border-radius:5px;width:18px;margin-left:-9px;position:absolute;top:-8px;bottom:-8px}.collab-handle:before{content:"";position:absolute;inset:-8px}.collab-handle.edge{background:var(--accent-2)}.collab-handle.locked{background:var(--line);cursor:default}.collab-scale{color:var(--muted);justify-content:space-between;margin-top:4px;font-size:11px;display:flex}.collab-range{margin:-2px 0 6px;font-size:12px}.collab-zoom{gap:4px}.collab-zoom button{min-width:2.2em;padding:2px 8px}.collab-zoom-label{text-align:center;min-width:3.2em;font-size:12px}.collab-time-editor{border:1px solid var(--accent);background:var(--panel-2);border-radius:10px;gap:8px;margin-top:12px;padding:12px;display:grid}.collab-time-input{width:120px}.collab-check-list{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.collab-part-slot{border:1px solid var(--line);background:var(--panel-2);border-radius:10px;gap:6px;padding:12px;display:grid}.collab-part-slot.done{border-color:var(--accent-2)}.collab-downloads{gap:6px;display:grid}.collab-downloads a{color:var(--accent-2)}
