:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f4f1ed;background:#090a0b;color-scheme:dark;font-synthesis:none;text-rendering:optimizeLegibility;--canvas: #090a0b;--text: #f4f1ed;--muted: rgba(244, 241, 237, .68);--faint: rgba(244, 241, 237, .42);--line: rgba(255, 255, 255, .14);--surface: rgba(17, 18, 20, .92);--accent: #e7464f;--focus: #ff6971}*{box-sizing:border-box;letter-spacing:0}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden;background:var(--canvas)}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.app-shell{position:relative;width:100%;height:100dvh;min-height:100%;overflow:hidden;background:var(--canvas)}.top-bar{position:fixed;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;min-height:calc(64px + env(safe-area-inset-top));padding:calc(10px + env(safe-area-inset-top)) 16px 6px;pointer-events:none}.wordmark{display:flex;align-items:center;gap:9px;font-size:16px;font-weight:650;text-shadow:0 1px 12px rgba(0,0,0,.72);pointer-events:auto}.wordmark>span{width:3px;height:18px;border-radius:2px;background:var(--accent)}.mode-control{position:relative;pointer-events:auto}.icon-button{display:grid;width:48px;height:48px;place-items:center;padding:0;border:1px solid var(--line);border-radius:50%;color:var(--text);background:#090a0b8a;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color .12s ease-out,border-color .12s ease-out}.icon-button:active{background:#222326db;border-color:#ffffff3d}.mode-menu{position:absolute;top:54px;right:0;width:176px;overflow:hidden;padding:4px;border:1px solid var(--line);border-radius:6px;background:var(--surface);box-shadow:0 14px 35px #00000057}.mode-menu button{display:grid;grid-template-columns:22px 1fr 18px;align-items:center;gap:8px;width:100%;min-height:44px;padding:0 10px;border:0;border-radius:4px;color:var(--muted);background:transparent;text-align:left;cursor:pointer;transition:color .12s ease-out,background-color .12s ease-out}.mode-menu button[aria-checked=true]{color:var(--text)}.mode-menu button:active{background:#ffffff14}.menu-check{color:var(--accent)}.feed{width:100%;height:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;scroll-snap-type:y mandatory;scrollbar-width:none;touch-action:pan-y}.feed::-webkit-scrollbar{display:none}.video-slide{position:relative;width:100%;height:100%;min-height:100dvh;overflow:hidden;scroll-snap-align:start;scroll-snap-stop:always;background:#000}.video-slide video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;background:#000}.video-shade{position:absolute;z-index:2;inset:auto 0 0;height:35%;pointer-events:none;background:linear-gradient(to bottom,transparent,rgba(0,0,0,.72))}.media-status,.center-play{position:absolute;z-index:5;top:50%;left:50%;transform:translate(-50%,-50%)}.media-status{display:grid;min-width:140px;place-items:center;gap:14px;color:var(--muted);text-align:center}.media-status p{margin:0;font-size:14px}.center-play{display:grid;width:64px;height:64px;place-items:center;padding:0 0 0 4px;border:1px solid rgba(255,255,255,.22);border-radius:50%;color:var(--text);background:#090a0b9e;cursor:pointer}.spinner{animation:spin .9s linear infinite}.video-meta{position:absolute;z-index:4;right:84px;bottom:calc(38px + env(safe-area-inset-bottom));left:16px;min-width:0;pointer-events:none;text-shadow:0 1px 10px rgba(0,0,0,.9)}.video-title{display:-webkit-box;overflow:hidden;margin:0;font-size:16px;font-weight:600;line-height:1.4;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.video-count{margin:5px 0 0;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.side-controls{position:absolute;z-index:5;right:14px;bottom:calc(42px + env(safe-area-inset-bottom));display:grid;gap:12px}.media-button{background:#090a0b9e}.progress-wrap{position:absolute;z-index:6;right:12px;bottom:calc(5px + env(safe-area-inset-bottom));left:12px;display:flex;align-items:center;height:28px}.progress-wrap input{width:100%;height:28px;margin:0;appearance:none;background:transparent;cursor:pointer;--progress: 0%}.progress-wrap input::-webkit-slider-runnable-track{height:3px;border-radius:2px;background:linear-gradient(to right,var(--accent) var(--progress),rgba(255,255,255,.28) var(--progress))}.progress-wrap input::-moz-range-track{height:3px;border-radius:2px;background:#ffffff47}.progress-wrap input::-moz-range-progress{height:3px;border-radius:2px;background:var(--accent)}.progress-wrap input::-webkit-slider-thumb{width:14px;height:14px;margin-top:-5.5px;appearance:none;border:0;border-radius:50%;background:var(--text);box-shadow:0 1px 5px #0006}.progress-wrap input::-moz-range-thumb{width:14px;height:14px;border:0;border-radius:50%;background:var(--text)}.progress-wrap input:disabled{cursor:default;opacity:.45}.feed-state{display:grid;width:100%;height:100%;min-height:100dvh;place-content:center;place-items:center;gap:16px;padding:24px;color:var(--muted);text-align:center}.feed-state p{margin:0;font-size:14px}.retry-button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:8px;padding:0 16px;border:1px solid var(--line);border-radius:6px;color:var(--text);background:#ffffff14;cursor:pointer;transition:background-color .12s ease-out,border-color .12s ease-out}.retry-button:active{border-color:#ffffff42;background:#ffffff24}.notice{position:fixed;z-index:30;right:16px;bottom:calc(22px + env(safe-area-inset-bottom));left:16px;max-width:420px;min-height:44px;margin:auto;padding:12px 14px;border:1px solid rgba(231,70,79,.38);border-radius:6px;color:var(--text);background:#1f0e10f0;font-size:14px;text-align:center}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:800px){.video-meta{left:24px}.side-controls{right:22px}.top-bar{padding-right:24px;padding-left:24px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
