/* UG Core player — themes can override everything; colors come from --ug-* variables. */
.ug-player { --ug-bg:#0f1115; --ug-bar:#181b22; --ug-text:#e7e9ee; --ug-accent:#6d5efc; position:relative; background:var(--ug-bg); color:var(--ug-text); border-radius:12px; overflow:hidden; }
.ug-player__stage { position:relative; aspect-ratio:16/10; width:100%; background:#000; }
.ug-player__frame { position:absolute; inset:0; width:100%; height:100%; border:0; display:block; background:#000; }
.ug-player__start { position:absolute; inset:0; width:100%; height:100%; border:0; padding:0; cursor:pointer; background:transparent; color:inherit; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px; overflow:hidden; font:inherit; }
.ug-player__bg { position:absolute; inset:-10%; width:120%; height:120%; object-fit:cover; filter:blur(28px) brightness(.45); }
.ug-player__thumb, .ug-player__title, .ug-player__play, .ug-player__note { position:relative; }
.ug-player__thumb { width:160px; height:160px; border-radius:20px; object-fit:cover; box-shadow:0 12px 40px rgba(0,0,0,.5); }
.ug-player__title { font-size:22px; font-weight:800; text-shadow:0 2px 12px rgba(0,0,0,.6); padding:0 16px; text-align:center; }
.ug-player__play { background:var(--ug-accent); color:var(--on-accent,#fff); font-weight:800; font-size:18px; padding:12px 44px; border-radius:999px; box-shadow:0 8px 24px rgba(0,0,0,.35); transition:transform .15s; }
.ug-player__start:hover .ug-player__play, .ug-player__start:focus-visible .ug-player__play { transform:scale(1.06); }
.ug-player__note { font-size:13px; opacity:.8; padding:0 16px; text-align:center; }
.ug-player__bar { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:8px 12px; background:var(--ug-bar); }
.ug-player__name { font-weight:700; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ug-player__actions { display:flex; gap:4px; flex-shrink:0; }
.ug-player__actions button { background:transparent; color:inherit; border:1px solid var(--line, rgba(255,255,255,.12)); border-radius:8px; min-width:36px; height:34px; cursor:pointer; font-size:15px; padding:0 8px; }
.ug-player__actions button:hover { background:rgba(255,255,255,.08); }
.ug-player__actions button[aria-pressed="true"] { border-color:var(--ug-accent); }
.ug-player__stage:fullscreen { aspect-ratio:auto; }
.ug-player--missing { padding:48px 16px; text-align:center; }
.ug-report { position:absolute; right:12px; bottom:56px; z-index:3; background:var(--ug-bar); border:1px solid rgba(255,255,255,.15); border-radius:12px; padding:14px; display:flex; flex-direction:column; gap:8px; width:min(280px, calc(100% - 24px)); box-shadow:0 12px 40px rgba(0,0,0,.5); }
.ug-report label { display:flex; gap:8px; align-items:center; font-size:14px; }
.ug-report__btns { display:flex; gap:8px; margin-top:4px; }
.ug-report__btns button { flex:1; border:0; border-radius:8px; padding:8px; cursor:pointer; background:var(--ug-accent); color:var(--on-accent,#fff); font-weight:700; }
.ug-report__btns button[data-close] { background:transparent; border:1px solid rgba(255,255,255,.2); color:inherit; }
body.ug-theater .ug-player { position:fixed; inset:0; z-index:99999; border-radius:0; display:flex; flex-direction:column; }
body.ug-theater .ug-player__stage { flex:1; aspect-ratio:auto; }
@media (max-width:600px) { .ug-player__stage { aspect-ratio:3/4; } .ug-player__thumb { width:120px; height:120px; } }
