:root{color-scheme:dark;font:100%/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#090b10;color:#fff}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input{font:inherit}button{color:inherit;border:0;cursor:pointer;min-height:48px;padding:12px 18px;border-radius:16px;background:#222633;touch-action:manipulation}button:active{filter:brightness(1.2);transform:scale(.97)}button:disabled{opacity:.45}button:focus-visible,input:focus-visible{outline:3px solid #c5b8ff;outline-offset:3px}input{display:block;width:100%;border:1px solid #414557;background:#191d28;border-radius:14px;padding:15px;color:#fff;font-size:17px}label{display:block;margin:18px 0 8px;color:#b9bdcd}h1{font-size:36px;line-height:1.1;letter-spacing:-1px}h2{font-size:24px;letter-spacing:-.5px}p{color:#b7bdce}button.primary{background:#cbbfff;color:#211936;font-weight:650;width:100%;margin-top:20px}.pairing{padding:max(60px,env(safe-area-inset-top)) 28px 28px;max-width:500px;margin:auto;overflow:auto;height:100dvh}.app-mark{font-size:38px;color:#cab9ff}.hint{font-size:13px;margin-top:28px}.material{background:#242633cc;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid #ffffff16}.floating-header{position:fixed;z-index:4;top:calc(env(safe-area-inset-top) + 12px);left:16px;right:16px;display:flex;justify-content:space-between;gap:12px;pointer-events:none}.floating-header button{pointer-events:auto}.header-right{display:flex;gap:8px}.icon{width:48px;padding:0;font-size:25px}#gameButton{max-width:62%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-weight:600}#gameButton span{margin-left:12px;color:#babdca}.feed{height:100dvh;overflow-y:auto;scroll-snap-type:y mandatory;overscroll-behavior-y:contain;scrollbar-width:none}.feed::-webkit-scrollbar{display:none}.card{height:100dvh;position:relative;scroll-snap-align:center;scroll-snap-stop:always;display:flex;align-items:center;justify-content:center;padding:calc(env(safe-area-inset-top) + 78px) 0 calc(env(safe-area-inset-bottom) + 208px);isolation:isolate}.card video{width:100%;height:100%;object-fit:contain;background:#000}.card .poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(30px);opacity:.13;z-index:-1}.clip-info{position:absolute;left:20px;right:20px;bottom:calc(env(safe-area-inset-bottom) + 82px)}.clip-info h2{font-size:20px;line-height:1.25;margin:8px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.clip-info .eyebrow{font-size:12px;color:#cbbfff}.clip-info p{font-size:13px;margin:6px 0}.actions{display:flex;gap:10px;margin-top:12px}.actions button{flex:1;font-weight:650}.approve{background:#c6f1d6;color:#173b25}.deny{background:#402731;color:#ffd0dc}.queue-tabs{position:fixed;bottom:calc(env(safe-area-inset-bottom) + 12px);left:16px;right:16px;z-index:4;border-radius:22px;display:flex;padding:4px;gap:4px}.queue-tabs button{flex:1;background:transparent;font-size:13px;border-radius:18px;padding:10px 6px;color:#b8bdcb}.queue-tabs button[aria-pressed=true]{background:#ffffff17;color:white;font-weight:650}.empty{padding:120px 28px;text-align:center;height:100dvh;display:grid;align-content:center}.loading{position:absolute;color:#b8bdcd;font-size:14px}dialog{position:fixed;inset:auto 0 0;margin:0;width:100%;max-width:none;border:1px solid #ffffff18;border-radius:28px 28px 0 0;color:#fff;background:#20232cef;padding:24px 24px calc(env(safe-area-inset-bottom) + 28px);max-height:85dvh;overflow:auto;backdrop-filter:blur(30px)}dialog::backdrop{background:#0008}.sheet-head{display:flex;align-items:center;justify-content:space-between}.sheet-head h2{margin:0}.sheet-head button{background:transparent;color:#cbbfff}.game-option{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:transparent;border-radius:14px;margin-top:6px}.game-option img{width:32px;height:43px;object-fit:cover;border-radius:5px}.game-option[aria-pressed=true]{background:#ffffff12}.game-option span{flex:1}.title-preview{height:190px;margin-top:20px;background:#11141b;border-radius:16px;display:flex;justify-content:center;padding:36px 16px 16px}.title-preview>div{text-align:center;line-height:1.6}.title-preview span{font-size:24px;font-weight:700;background:white;color:#141414;padding:4px 8px;border-radius:4px;box-decoration-break:clone;-webkit-box-decoration-break:clone;overflow-wrap:anywhere}#status{position:fixed;left:20px;right:20px;bottom:calc(env(safe-area-inset-bottom) + 78px);z-index:10;background:#313446f2;border-radius:16px;padding:12px 16px;font-size:13px;text-align:center;pointer-events:none}#status:empty{display:none}[hidden]{display:none!important}@media(prefers-reduced-transparency:reduce){.material,dialog{background:#252936;backdrop-filter:none}}@media(prefers-contrast:more){.material{background:#171b24;border-color:#b9bdce}}@media(prefers-reduced-motion:reduce){button:active{transform:none}}@media(min-width:650px){.feed,.floating-header,.queue-tabs{max-width:500px;margin-inline:auto}.floating-header,.queue-tabs{left:0;right:0}dialog{max-width:500px;margin-inline:auto}}

/* Source footage stays centered and uncropped while reviewing. */
.card:not([data-review=approved]){padding:0}.card:not([data-review=approved]) video{position:absolute;top:50%;left:0;transform:translateY(-50%);width:100%;height:auto;max-height:calc(100dvh - 320px);object-fit:contain}.card:not([data-review=approved]) .poster{display:none}

#pairError{color:#ffd0dc;background:#402731;border-radius:12px;padding:12px;font-size:14px}

.twitch-review{position:absolute;top:50%;left:0;transform:translateY(-50%);width:100%;height:300px;border:0;background:#000}

.feed-end{scroll-snap-align:center;scroll-snap-stop:always}.feed-end p{max-width:360px;margin-inline:auto}



#status{top:calc(env(safe-area-inset-top) + 76px);bottom:auto}

/* Keep the entire app aligned when an installed iOS viewport starts behind
   the status bar but ends one status-bar height above the physical bottom. */
html,body{height:100%;overscroll-behavior:none}
#app{position:fixed;inset:var(--app-screen-offset,0px) 0 calc(0px - var(--app-screen-offset,0px));overflow:hidden}
#app .feed{height:100%}
#app .card,#app .feed-end{height:100%}
@media(max-width:649px){
 :root{--queue-bar-height:calc(3.5rem + 1rem)}
 .queue-tabs{position:absolute;bottom:0;left:0;right:0;border:0;border-radius:0;padding:.5rem .75rem;gap:.5rem;background:#20232ce8;backdrop-filter:blur(24px) saturate(140%);-webkit-backdrop-filter:blur(24px) saturate(140%)}
 .queue-tabs::before{display:none}
 .queue-tabs button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;min-height:3.5rem;padding:.25rem .375rem;border-radius:14px;font-size:.75rem;line-height:1.2;font-weight:500;letter-spacing:.01em;color:#b8bdcb;-webkit-tap-highlight-color:transparent}
 .queue-tabs button[aria-pressed=true]{background:#cbbfff0d;color:#cbbfff;font-weight:650}
 .queue-tabs button:active{background:#ffffff16;filter:none;transform:scale(.98)}
 .queue-tabs .queue-icon{display:block;width:1.375rem;height:1.375rem;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
 .clip-info{bottom:calc(var(--queue-bar-height) + 1rem)}
 .home-screen .floating-header{position:absolute;top:calc(max(0px,env(safe-area-inset-top) - var(--app-screen-offset,0px)) + 12px)}
 .home-screen #status{top:calc(max(env(safe-area-inset-top),var(--app-screen-offset,0px)) + 76px)}
}
.queue-icon{display:none}
@media(prefers-reduced-transparency:reduce){.queue-tabs{background:#252936;backdrop-filter:none;-webkit-backdrop-filter:none}.queue-tabs::before{display:none}}
@media(prefers-contrast:more){.queue-tabs{background:#171b24;box-shadow:0 -1px 0 #b9bdce}.queue-tabs button[aria-pressed=true]{background:#cbbfff;color:#211936}}
@media(prefers-reduced-motion:reduce){.queue-tabs button:active{transform:none}}

/* Leave the top controls anchored; lift the review UI above unusable space. */
@media(max-width:649px){
 :root{--mobile-content-lift:80px}
 #app .feed{transform:translateY(calc(0px - var(--mobile-content-lift)))}
 .queue-tabs{bottom:var(--mobile-content-lift)}
 dialog{bottom:var(--mobile-content-lift);max-height:calc(85dvh - var(--mobile-content-lift))}
}

.floating-header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px}
#gameButton{min-width:0;max-width:100%;justify-self:start;padding-inline:10px}
.header-right{justify-self:end;gap:6px}
.review-count{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:48px;min-width:64px;line-height:1.2;background:transparent;border:0;padding:4px;color:inherit;touch-action:manipulation}
.review-count:disabled{opacity:1;cursor:default}
.review-count[data-upload="true"]{color:#e4daff;background:#292338;border:1px solid #665482;border-radius:14px;padding:8px 12px;box-shadow:0 2px 8px #0003}
.review-count[data-upload="true"] span{color:#e4daff}
.review-count[data-upload="true"]:not(:disabled){background:#403052;border-color:#9e80c4}
.review-count:focus-visible{outline:2px solid #cbbfff;outline-offset:3px}
.upload-retry{width:100%;min-height:48px;margin-top:10px;background:#403052;color:#e4daff;border:1px solid #9e80c4;border-radius:14px;touch-action:manipulation}
.upload-retry:active{transform:scale(.97)}
.open-tiktok{display:flex;align-items:center;justify-content:center;min-height:48px;flex:1;padding:12px;background:#403052;color:#e4daff;border:1px solid #9e80c4;border-radius:14px;text-decoration:none;text-align:center;font-weight:600}
.review-count:not(:disabled):active{transform:scale(.97)}
.review-count strong{font-size:1.25rem;font-weight:650;font-variant-numeric:tabular-nums}
.review-count span{font-size:.6875rem;color:#b7bdce;margin-top:3px;max-width:150px;text-align:center}

/* Continuous native scrubbing, with generous touch targets and clear feedback. */
.review-player{margin-bottom:.75rem}.playback-row{display:flex;align-items:center;gap:.5rem}.playback-row button{padding:.5rem .625rem;font-size:.8125rem;min-width:48px}.playback-row input{flex:1;min-width:0}.player-clock{font-size:.6875rem;font-variant-numeric:tabular-nums;white-space:nowrap}.player-message{font-size:.8125rem!important;color:#cbbfff!important}.player-message:empty{display:none}
.player-external{display:inline-flex;align-items:center;min-height:48px;padding:8px 12px;color:#cbbfff;font-size:.8125rem}.review-player>button{font-size:.8125rem}
input[type=range]{appearance:none;-webkit-appearance:none;border:0;padding:0;min-height:48px;background:transparent;touch-action:pan-y;accent-color:#cbbfff}
input[type=range]::-webkit-slider-runnable-track{height:6px;background:#414557;border-radius:6px}input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:28px;height:28px;margin-top:-11px;background:#cbbfff;border-radius:50%;box-shadow:0 2px 5px #0005}
input[type=range]::-moz-range-track{height:6px;background:#414557;border-radius:6px}input[type=range]::-moz-range-thumb{width:28px;height:28px;background:#cbbfff;border:0;border-radius:50%}
#trimSheet{max-height:calc(100dvh - 140px);padding-top:20px}.trim-preview{display:block;width:100%;max-height:24dvh;object-fit:contain;margin-top:16px;background:#000;border-radius:12px}.trim-summary{font-variant-numeric:tabular-nums;font-size:.8125rem;color:#cbbfff}.trim-endpoint{margin-top:12px}.trim-endpoint label{display:flex;justify-content:space-between;margin:0;color:white}.trim-endpoint input[type=range]{min-height:56px;touch-action:pan-y}.trim-endpoint input[type=range]::-webkit-slider-thumb{width:36px;height:36px;margin-top:-15px}.trim-endpoint input[type=range]::-moz-range-thumb{width:36px;height:36px}.trim-stepper{display:flex;gap:8px}.trim-stepper button{flex:1;font-size:.75rem;padding:8px 6px;min-height:48px}.trim-stepper button:nth-child(2){flex:1.5}#trimSheet .actions .primary{margin:0}.card video::-webkit-media-controls{display:none!important}

.policy-footer{font-size:12px;line-height:1.8;margin-top:24px}.policy-footer a{display:inline-block;color:#cbbfff;min-height:44px;padding:8px 0;text-underline-offset:3px}

/* Inline editing keeps the video and its selection in the same place. */
.player-timeline{position:relative;height:44px;display:flex;align-items:center;margin:0 10px;touch-action:none}
.player-track{position:relative;width:100%;height:5px;background:#454851;border-radius:3px;overflow:hidden;pointer-events:none}
.player-progress{height:100%;background:#c7c9ce;border-radius:3px;pointer-events:none}
.player-selection{position:absolute;top:0;height:100%;background:#c7c9ce66;pointer-events:none}
.player-seek{position:absolute;inset:0;width:100%;height:44px;min-height:44px;opacity:0;margin:0;padding:0;cursor:pointer}
.player-timeline:has(.player-seek:focus-visible){outline:2px solid #cbbfff;outline-offset:3px;border-radius:8px}
.trim-handle{position:absolute;top:0;transform:translateX(-50%);width:44px;height:44px;min-height:44px;padding:0!important;border:0;border-radius:8px;background:transparent;touch-action:none;z-index:2}
.trim-handle::before{content:'';display:block;position:absolute;left:20px;top:8px;width:4px;height:28px;background:#eee;border-radius:2px;box-shadow:0 0 0 2px #090b1080}
.trim-handle:active{transform:translateX(-50%);background:#ffffff12}
.playback-row{justify-content:space-between;gap:8px}
.playback-row button{min-width:76px;min-height:48px;padding:8px 12px;font-size:.8125rem}
.player-clock{flex:1;text-align:center;font-variant-numeric:tabular-nums}
.review-player[data-trimming=true] .trim-button{background:#cbbfff;color:#211936;font-weight:650}
.card video{cursor:pointer;touch-action:manipulation}
.video-pause-icon{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;gap:8px;width:64px;height:64px;border-radius:50%;background:#090b1099;border:1px solid #ffffff24;pointer-events:none;z-index:1}
.video-pause-icon span{width:6px;height:25px;border-radius:2px;background:#fff}
.twitch-review{height:auto;aspect-ratio:16/9}
@media(max-width:649px){
 .card[data-review="pending"] video,.card[data-review="pending"] .twitch-review{top:calc(50% - 100px)}
}
