:root{--bg: #f6f7f9;--surface: #ffffff;--text: #1c2026;--muted: #6b7280;--border: #dfe3e8;--primary: #2f6fed;--primary-text: #ffffff;--danger: #c62828;color-scheme:light dark}@media (prefers-color-scheme: dark){:root{--bg: #14171c;--surface: #1d2128;--text: #e8eaed;--muted: #9aa3af;--border: #2f3540;--primary: #5b8def;--primary-text: #0b1220;--danger: #ff6b6b}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}.muted{color:var(--muted)}.error{color:var(--danger);margin:0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px;background:var(--surface);border-bottom:1px solid var(--border)}.topbar .brand{font-weight:700;color:var(--text)}.topbar nav{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.page{max-width:960px;margin:0 auto;padding:24px}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:24px}.auth-card{max-width:380px;margin:10vh auto 0}.auth-card h1{margin-top:0}form{display:flex;flex-direction:column;gap:14px}label{display:flex;flex-direction:column;gap:4px;font-size:14px}input{padding:9px 11px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font:inherit}input:focus-visible,button:focus-visible{outline:2px solid var(--primary);outline-offset:1px}button{padding:9px 14px;border:0;border-radius:6px;cursor:pointer;background:var(--primary);color:var(--primary-text);font:inherit;font-weight:600}button:disabled{opacity:.6;cursor:default}button.link{background:none;color:var(--primary);padding:0;font-weight:400}.record-setup{display:flex;gap:16px;align-items:flex-end;flex-wrap:wrap;margin-bottom:16px}select{padding:9px 11px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font:inherit}.record-preview{display:block;width:100%;max-height:60vh;background:#000;border-radius:8px;margin-bottom:16px}.countdown-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#0009;color:#fff;font-size:30vmin;font-weight:700}.control-bar{position:fixed;left:0;right:0;bottom:0;z-index:90;display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 24px;background:var(--surface);border-top:1px solid var(--border)}.control-time{font-variant-numeric:tabular-nums;font-size:20px;font-weight:700;min-width:64px}.control-warn{color:var(--danger);font-size:14px}button.danger{background:var(--danger);color:#fff}.toast{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:200;padding:10px 18px;border-radius:8px;background:var(--text);color:var(--bg);font-weight:600}textarea{padding:9px 11px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font:inherit;resize:vertical}.videos-toolbar{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.videos-toolbar input[type=search]{flex:1;min-width:200px}.tabs{display:flex;gap:4px}button.tab{background:transparent;color:var(--text);border:1px solid var(--border)}button.tab.active{background:var(--primary);color:var(--primary-text);border-color:var(--primary)}.video-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.video-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden}.video-thumb{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:16 / 9;background:#000}.video-thumb img{width:100%;height:100%;object-fit:cover}.video-dur{position:absolute;right:6px;bottom:6px;padding:1px 6px;border-radius:4px;background:#000000bf;color:#fff;font-size:12px}.video-body{padding:12px}.video-title{margin:0 0 4px;font-size:16px}.video-meta{margin:0 0 8px;font-size:13px}.video-actions{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;font-size:14px}.rename-form{flex-direction:row;align-items:center;gap:8px}.rename-form input{flex:1;min-width:0}label.switch{flex-direction:row;align-items:center;gap:6px}.player{display:block;width:100%;max-height:70vh;background:#000;border-radius:10px}.video-head{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:12px}.title-input{flex:1;min-width:200px;font-size:20px;font-weight:700}.trim-section,.comments{margin-top:24px}.trimbar-track{position:relative;height:28px}.trimbar-track:before{content:"";position:absolute;left:0;right:0;top:12px;height:4px;border-radius:2px;background:var(--border)}.trimbar-range{position:absolute;top:12px;height:4px;background:var(--primary)}.trimbar-track input[type=range]{position:absolute;left:0;width:100%;top:0;margin:0;padding:0;border:0;background:none;pointer-events:none;-moz-appearance:none;appearance:none;-webkit-appearance:none}.trimbar-track input[type=range]::-webkit-slider-runnable-track{background:transparent}.trimbar-track input[type=range]::-moz-range-track{background:transparent}.trimbar-track input[type=range]::-webkit-slider-thumb{pointer-events:auto;-moz-appearance:none;appearance:none;-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:var(--primary);border:2px solid var(--surface);cursor:pointer}.trimbar-track input[type=range]::-moz-range-thumb{pointer-events:auto;width:14px;height:14px;border-radius:50%;background:var(--primary);border:2px solid var(--surface);cursor:pointer}.trimbar-labels{display:flex;justify-content:space-between;font-size:13px;font-variant-numeric:tabular-nums}.trim-actions{display:flex;gap:12px;align-items:center;margin-top:12px}.comment-list{list-style:none;padding:0;margin:0 0 16px;display:flex;flex-direction:column;gap:12px}.comment-head{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;font-size:14px}.comment-body{margin:2px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;padding:16px}.modal{width:100%;max-width:440px}.modal label{display:block;margin-bottom:12px}.modal input,.modal select{display:block;width:100%}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{text-align:left;padding:8px;border-bottom:1px solid var(--border)}
