/*!
 * Listenglish Player Stylesheet
 * Copyright (c) 2026 Listenglish.
 * Licensed under GPL-2.0-or-later.
 * You may redistribute and/or modify this file under the license terms,
 * but this copyright and license notice must be retained.
 */
.listenglish-player-wrapper{--lep-accent:#fbcd39;--lep-accent-hover:#ffd75a;--lep-accent-ink:#3d0e78;--lep-bg:#160a30;--lep-surface:#271253;--lep-border:#3a2566;--lep-text-primary:#f3eefc;--lep-text-muted:#9a8cc4;--lep-text-subtitle:#b8acdc;--lep-wave-progress:#c08a1e;--lep-wave-rest:#5a4a86;--lep-btn-size:44px;--lep-radius:12px;--lep-transition:0.18s ease}.listenglish-player-wrapper{display:flex;flex-direction:column;gap:14px;position:relative;background:linear-gradient(180deg,#2a0e55 0%,#0d0420 100%);border:1px solid var(--lep-border);border-radius:var(--lep-radius);padding:20px 24px;width:100%;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:var(--lep-text-primary);margin:0 0 40px;overflow:visible}.listenglish-player-header{display:flex;align-items:center;gap:14px}.listenglish-player-thumbnail{flex-shrink:0;width:52px;height:52px;border-radius:8px;overflow:hidden;background:var(--lep-surface)}.listenglish-player-thumbnail img{width:100%;height:100%;object-fit:cover;display:block}.listenglish-player-meta{flex:1;min-width:0}.listenglish-player-title{font-size:15px;font-weight:700;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.listenglish-player-subtitle{font-size:12px;color:var(--lep-text-subtitle);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.listenglish-player-auto-scroll-toggle{display:inline-flex;align-items:center;justify-content:center;gap:5px;-webkit-appearance:none;appearance:none;background:var(--lep-surface);border:1px solid rgba(255,255,255,0.2);border-radius:8px;color:rgba(255,255,255,0.78);cursor:pointer;font-size:9.5px;font-weight:500;line-height:1;height:28px;padding:0 8px;opacity:0.78;flex-shrink:0;box-shadow:none;text-shadow:none;transition:opacity var(--lep-transition),border-color var(--lep-transition),color var(--lep-transition),background var(--lep-transition)}.listenglish-player-auto-scroll-toggle svg{width:13px;height:13px;flex-shrink:0}.listenglish-player-auto-scroll-toggle.is-active{opacity:1;color:var(--lep-accent);border-color:rgba(251,205,57,0.7);background:rgba(251,205,57,0.14)}.listenglish-player-auto-scroll-toggle:hover,.listenglish-player-auto-scroll-toggle:focus-visible,.listenglish-player-auto-scroll-toggle:active{background:var(--lep-surface);border-color:var(--lep-accent);color:var(--lep-accent)}.listenglish-player-auto-scroll-toggle.is-active:hover,.listenglish-player-auto-scroll-toggle.is-active:focus-visible,.listenglish-player-auto-scroll-toggle.is-active:active{color:var(--lep-accent);border-color:var(--lep-accent);background:rgba(251,205,57,0.14)}.listenglish-player-wrapper .listenglish-player-auto-scroll-toggle:hover,.listenglish-player-wrapper .listenglish-player-auto-scroll-toggle:focus-visible,.listenglish-player-wrapper .listenglish-player-auto-scroll-toggle:active{background-color:var(--lep-surface)!important;background-image:none!important;border-color:var(--lep-accent)!important;color:var(--lep-accent)!important;box-shadow:none!important;text-shadow:none!important}.listenglish-player-wrapper .listenglish-player-auto-scroll-toggle::-moz-focus-inner{border:0;padding:0}.listenglish-player-wrapper .listenglish-player-auto-scroll-toggle:focus-visible{outline:2px solid var(--lep-accent);outline-offset:2px}.listenglish-player-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.listenglish-player-fav-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:transparent;border:1px solid var(--lep-border);border-radius:50%;color:var(--lep-text-muted);cursor:pointer;width:34px;height:34px;padding:0;transition:border-color var(--lep-transition),color var(--lep-transition),background var(--lep-transition)}.listenglish-player-fav-btn svg{width:15px;height:15px}.listenglish-player-fav-btn:hover{border-color:#e55;color:#e55}.listenglish-player-fav-btn.is-favourite{background:rgba(229,85,85,0.15);border-color:#e55;color:#e55}.listenglish-player-fav-btn.is-favourite svg{fill:#e55}.listenglish-player-mark-btn{display:flex;align-items:center;gap:5px;flex-shrink:0;background:transparent;border:1px solid var(--lep-border);border-radius:20px;color:var(--lep-text-muted);cursor:pointer;font-size:11px;font-weight:500;padding:5px 11px;transition:border-color var(--lep-transition),color var(--lep-transition),background var(--lep-transition);white-space:nowrap}.listenglish-player-mark-btn svg{width:13px;height:13px;flex-shrink:0}.listenglish-player-mark-btn:hover{border-color:var(--lep-accent);color:var(--lep-accent)}.listenglish-player-mark-btn.is-learnt{background:#22c55e;border-color:#22c55e;color:#fff}@keyframes listenglish-learnt-flash{0%{transform:scale(1);box-shadow:0 0 0 0 rgba(34,197,94,0.55)}35%{transform:scale(1.07);box-shadow:0 0 0 7px rgba(34,197,94,0.22)}70%{transform:scale(1.02);box-shadow:0 0 0 13px rgba(34,197,94,0)}100%{transform:scale(1);box-shadow:0 0 0 0 rgba(34,197,94,0)}}.listenglish-player-mark-btn.do-flash{animation:listenglish-learnt-flash 0.48s ease forwards}.listenglish-player-waveform-wrap{position:relative;height:110px;isolation:isolate}.listenglish-player-waveform{position:absolute;left:0;right:0;bottom:16px;height:72px}.listenglish-player-waveform wave{cursor:pointer}.listenglish-player-loading{display:flex;align-items:center;justify-content:center;position:absolute;top:22px;left:0;right:0;bottom:16px;z-index:10;background:var(--lep-bg);border-radius:4px;transition:opacity var(--lep-transition)}.listenglish-player-loading.is-hidden{opacity:0;pointer-events:none}.listenglish-player-spinner{width:26px;height:26px;border:3px solid var(--lep-border);border-top-color:var(--lep-accent);border-radius:50%;animation:listenglish-spin 0.7s linear infinite}@keyframes listenglish-spin{to{transform:rotate(360deg)}}.listenglish-player-loading-pct{font-size:11px;color:var(--lep-muted);margin-left:8px;font-variant-numeric:tabular-nums;min-width:3ch}.listenglish-player-error{display:flex;align-items:center;justify-content:center;gap:7px;position:absolute;top:22px;left:0;right:0;bottom:16px;z-index:10;background:var(--lep-bg);border-radius:4px;font-size:12px;color:var(--lep-muted)}.listenglish-player-error svg{width:15px;height:15px;flex-shrink:0;opacity:0.7}.listenglish-player-playhead{position:absolute;top:0;bottom:16px;left:0;z-index:20;transform:translateX(-50%);pointer-events:none;display:flex;flex-direction:column;align-items:center}.listenglish-player-playhead-time{display:block;flex-shrink:0;background:var(--lep-accent);color:var(--lep-accent-ink);font-size:10px;font-weight:700;line-height:1;padding:3px 6px;border-radius:3px;white-space:nowrap;font-variant-numeric:tabular-nums;position:relative;z-index:40}.listenglish-player-playhead-time::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid var(--lep-accent);z-index:40}.listenglish-player-playhead-rail{display:flex;flex-direction:column;align-items:center;flex:1;min-height:0;width:2px;margin-top:1px;position:relative;z-index:20}.listenglish-player-playhead-line{flex:1;width:2px;min-height:12px;margin-top:0;background:var(--lep-accent);border-radius:1px}.listenglish-player-end-label{position:absolute;bottom:0;right:2px;z-index:7;font-size:12px;font-weight:500;color:var(--lep-text-subtitle);opacity:0.7;line-height:1;font-variant-numeric:tabular-nums;pointer-events:none}.listenglish-player-time{position:absolute;bottom:6px;right:8px;z-index:7;display:flex;align-items:center;gap:3px;background:rgba(0,0,0,0.55);border-radius:4px;padding:2px 7px;font-size:11px;font-variant-numeric:tabular-nums;color:var(--lep-text-muted);white-space:nowrap;pointer-events:none;backdrop-filter:blur(2px)}.listenglish-player-time-current{color:var(--lep-text-primary)}.listenglish-player-loop-status{display:inline-flex;align-items:center;gap:3px;grid-column:4;grid-row:1;justify-self:end;font-size:11px;font-variant-numeric:tabular-nums;color:var(--lep-text-muted);white-space:nowrap}.listenglish-player-loop-status strong{color:var(--lep-accent);font-weight:700}.listenglish-player-loop-hint{grid-column:2 / 4;grid-row:1;justify-self:center;color:var(--lep-text-subtitle);font-size:11px;font-weight:500;line-height:1.25;text-align:center;white-space:nowrap;opacity:0.88}.listenglish-player-loop-hint strong{color:var(--lep-accent);font-weight:700}.listenglish-player-loop-hint[hidden]{display:none}.listenglish-player-hover-cursor{position:absolute;top:22px;bottom:16px;width:1px;pointer-events:none;z-index:5;transform:translateX(-50%)}.listenglish-player-hover-line{position:absolute;top:0;bottom:0;left:50%;width:1px;background:rgba(255,255,255,0.45)}.listenglish-player-hover-time{position:absolute;bottom:calc(100% + 5px);left:50%;transform:translateX(-50%);background:rgba(0,0,0,0.8);color:#fff;font-size:10px;font-weight:700;line-height:1;padding:3px 6px;border-radius:3px;white-space:nowrap;font-variant-numeric:tabular-nums}.listenglish-player-hover-time::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid rgba(0,0,0,0.8)}.listenglish-player-loop-overlay{position:absolute;top:22px;left:0;right:0;bottom:16px;pointer-events:none;z-index:30}.listenglish-player-loop-region{position:absolute;top:0;bottom:0;background:rgba(251,205,57,0.16);border-top:2px solid rgba(251,205,57,0.6);border-bottom:2px solid rgba(251,205,57,0.6);pointer-events:none}.listenglish-player-loop-handle{position:absolute;top:0;bottom:0;width:14px;transform:translateX(-50%);cursor:ew-resize;pointer-events:auto;z-index:31;display:flex;align-items:center;justify-content:center}.listenglish-player-loop-handle::before{content:"";display:block;width:3px;height:100%;background:var(--lep-accent);border-radius:2px;opacity:0.85}.listenglish-player-loop-handle-label{position:absolute;bottom:4px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,0.65);color:var(--lep-text-primary);font-size:10px;font-weight:700;line-height:1;padding:3px 6px;border-radius:2px;white-space:nowrap;pointer-events:none}.listenglish-player-loop-panel{display:grid;grid-template-columns:minmax(0,1fr) auto auto minmax(0,1fr);align-items:center;row-gap:10px;column-gap:0;background:var(--lep-surface);border-radius:8px;padding:0;max-height:0;overflow:hidden;opacity:0;pointer-events:none;transition:max-height 0.3s ease-out,opacity 0.22s ease,padding 0.3s ease-out}.listenglish-player-loop-panel.is-open{max-height:200px;opacity:1;pointer-events:auto;padding:10px 14px}.listenglish-player-loop-count-wrap{display:flex;align-items:center;gap:6px;grid-column:1;grid-row:1;justify-self:start}.listenglish-player-loop-count-label{font-size:11px;color:var(--lep-text-muted);white-space:nowrap}.listenglish-player-loop-count-btns{display:flex;gap:3px}.listenglish-player-loop-count-btn{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--lep-border);border-radius:5px;color:#555;cursor:pointer;font-size:12px;font-weight:600;line-height:1;height:30px;width:30px;min-width:30px;padding:0;transition:border-color var(--lep-transition),color var(--lep-transition),background var(--lep-transition)}.listenglish-player-wrapper .listenglish-player-loop-count-btn:hover,.listenglish-player-wrapper .listenglish-player-loop-count-btn:focus-visible,.listenglish-player-wrapper .listenglish-player-loop-count-btn:active{background:transparent!important;background-color:transparent!important;background-image:none!important;border-color:var(--lep-accent)!important;color:var(--lep-text-muted)!important;box-shadow:none!important;text-shadow:none!important}.listenglish-player-loop-count-btn.is-active{background:rgba(251,205,57,0.15);border-color:var(--lep-accent);color:var(--lep-accent)}.listenglish-player-loop-range{display:inline-flex;align-items:center;gap:6px;grid-column:3;grid-row:1;justify-self:start;margin-left:10px;background:rgba(251,205,57,0.08);border:1px solid rgba(251,205,57,0.65);border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums;color:var(--lep-accent);white-space:nowrap;animation:lep-range-pop 0.22s ease}.listenglish-player-loop-range[hidden]{display:none}.listenglish-player-loop-range-arrow{width:13px;height:13px;opacity:0.7;flex-shrink:0}.listenglish-player-loop-range-cancel{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:50%;color:rgba(251,205,57,0.5);cursor:pointer;width:18px;height:18px;min-width:18px;padding:0;margin-left:2px;flex-shrink:0;transition:color 0.15s ease,background 0.15s ease;touch-action:manipulation;position:relative}.listenglish-player-loop-range-cancel::after{content:"";position:absolute;inset:-12px}.listenglish-player-loop-range-cancel svg{width:10px;height:10px;pointer-events:none}.listenglish-player-wrapper .listenglish-player-loop-range-cancel:hover,.listenglish-player-wrapper .listenglish-player-loop-range-cancel:focus-visible,.listenglish-player-wrapper .listenglish-player-loop-range-cancel:active{background:rgba(255,255,255,0.12)!important;color:#fff!important;box-shadow:none!important;text-shadow:none!important}@keyframes lep-range-pop{from{opacity:0;transform:scale(0.88)}to{opacity:1;transform:scale(1)}}.listenglish-player-loop-overlay.is-running .listenglish-player-loop-region{background:rgba(192,138,30,0.2);border-color:rgba(251,205,57,0.85);box-shadow:0 0 0 1px rgba(251,205,57,0.18) inset}.listenglish-player-loop-start-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;grid-column:2;grid-row:1;justify-self:center;background:rgba(251,205,57,0.08);border:1px solid rgba(251,205,57,0.65);border-radius:6px;color:var(--lep-accent);cursor:pointer;font-size:12px;font-weight:600;line-height:1;padding:6px 14px;transition:border-color var(--lep-transition),color var(--lep-transition),background var(--lep-transition);white-space:nowrap}.listenglish-player-wrapper .listenglish-player-loop-start-btn:hover,.listenglish-player-wrapper .listenglish-player-loop-start-btn:focus-visible,.listenglish-player-wrapper .listenglish-player-loop-start-btn:active{background:rgba(251,205,57,0.15)!important;background-color:rgba(251,205,57,0.15)!important;background-image:none!important;border-color:var(--lep-accent)!important;color:var(--lep-accent)!important;box-shadow:none!important;text-shadow:none!important}.listenglish-player-loop-start-btn svg{width:11px;height:11px}.listenglish-player-controls{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}.listenglish-player-controls-left{display:flex;align-items:center;gap:10px;justify-content:flex-start}.listenglish-player-controls-center{display:flex;align-items:center;gap:10px;justify-content:center;align-self:center;min-height:var(--lep-btn-size)}.listenglish-player-controls-right{display:flex;align-items:center;gap:10px;justify-content:flex-end}.listenglish-player-controls-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;background:var(--lep-surface);border:1px solid var(--lep-border);border-radius:8px;color:var(--lep-text-muted);cursor:pointer;height:var(--lep-btn-size);min-width:var(--lep-btn-size);padding:0 10px;transition:background var(--lep-transition),border-color var(--lep-transition),color var(--lep-transition)}.listenglish-player-controls-btn svg{width:18px;height:18px;flex-shrink:0}.listenglish-player-btn-label{font-size:11px;font-weight:600;line-height:1}.listenglish-player-controls-btn:hover{background:var(--lep-surface);border-color:var(--lep-accent);color:var(--lep-accent)}.listenglish-player-btn-play{background:var(--lep-accent);border-color:var(--lep-accent);color:var(--lep-accent-ink);border-radius:50%;width:52px;height:52px;min-width:52px}.listenglish-player-btn-play:hover{background:var(--lep-accent-hover);border-color:var(--lep-accent-hover);color:var(--lep-accent-ink)}.listenglish-player-btn-play svg{width:22px;height:22px}.listenglish-player-btn-shadow.is-active,.listenglish-player-btn-ab.is-active{border-color:var(--lep-accent);color:var(--lep-accent)}.listenglish-player-btn-shadow.is-active{background:rgba(251,205,57,0.15)}.listenglish-player-btn-ab.is-active{background:rgba(251,205,57,0.18);box-shadow:inset 0 0 0 1px rgba(251,205,57,0.5)}.listenglish-player-speed-wrap{display:flex;align-items:center;position:relative;--lep-right-control-width:44px}.listenglish-player-speed-toggle{display:inline-flex;align-items:center;justify-content:center;-webkit-appearance:none;appearance:none;gap:6px;background:var(--lep-surface);background-color:var(--lep-surface)!important;background-image:none!important;border:1px solid var(--lep-border);border-radius:8px;color:var(--lep-text-muted);cursor:pointer;font-size:11px;font-weight:600;line-height:1;height:var(--lep-btn-size);width:var(--lep-right-control-width);min-width:var(--lep-right-control-width);padding:0;box-shadow:none;text-shadow:none;text-decoration:none;transition:border-color var(--lep-transition),color var(--lep-transition);white-space:nowrap}.listenglish-player-speed-icon{display:block;width:16px;height:16px;flex-shrink:0;fill:currentColor;color:inherit}.listenglish-player-speed-label{display:none}.listenglish-player-speed-toggle:hover{background:var(--lep-surface);background-color:var(--lep-surface)!important;background-image:none!important;border-color:var(--lep-accent);color:var(--lep-accent)}.listenglish-player-speed-toggle:focus-visible,.listenglish-player-speed-toggle:active{background:var(--lep-surface);background-color:var(--lep-surface)!important;background-image:none!important}.listenglish-player-wrapper .listenglish-player-speed-toggle:hover,.listenglish-player-wrapper .listenglish-player-speed-toggle:focus-visible,.listenglish-player-wrapper .listenglish-player-speed-toggle:active{background:var(--lep-surface)!important;border-color:var(--lep-accent)!important;color:var(--lep-accent)!important;box-shadow:none!important;text-shadow:none!important;text-decoration:none!important}.listenglish-player-wrapper .listenglish-player-speed-toggle:focus-visible{outline:2px solid var(--lep-accent);outline-offset:2px}.listenglish-player-wrapper .listenglish-player-speed-toggle::-moz-focus-inner{border:0;padding:0}.listenglish-player-speed-menu{position:absolute;bottom:calc(100% + 6px);right:0;background:var(--lep-surface);border:1px solid var(--lep-border);border-radius:10px;display:flex;flex-direction:column;min-width:132px;padding:5px;overflow:hidden;z-index:10020;box-shadow:0 8px 26px rgba(0,0,0,0.45);opacity:0;pointer-events:none;visibility:hidden;transform:translateY(6px) scale(0.97);transform-origin:bottom right;transition:opacity 0.15s ease,transform 0.15s ease,visibility 0s linear 0.15s}.listenglish-player-speed-menu.is-open{opacity:1;pointer-events:auto;visibility:visible;transform:translateY(0) scale(1);transition:opacity 0.15s ease,transform 0.15s ease,visibility 0s linear 0s}@media (hover:hover) and (pointer:fine){.listenglish-player-speed-wrap:hover .listenglish-player-speed-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1);transition:opacity 0.15s ease,transform 0.15s ease,visibility 0s linear 0s}}.listenglish-player-wrapper .listenglish-player-speed-option{display:block;-webkit-appearance:none;appearance:none;width:100%;background:transparent!important;background-image:none!important;border:none!important;border-radius:7px!important;color:var(--lep-text-muted)!important;cursor:pointer;font-family:inherit!important;font-size:13px!important;font-weight:500!important;line-height:1.1!important;letter-spacing:normal!important;text-transform:none!important;text-align:left!important;text-shadow:none!important;box-shadow:none!important;padding:8px 12px!important;margin:0!important;min-height:0!important;white-space:nowrap;font-variant-numeric:tabular-nums;transition:background var(--lep-transition),color var(--lep-transition)}.listenglish-player-wrapper .listenglish-player-speed-option:hover,.listenglish-player-wrapper .listenglish-player-speed-option:focus-visible{background:rgba(251,205,57,0.12)!important;color:var(--lep-text-primary)!important;outline:none!important}.listenglish-player-wrapper .listenglish-player-speed-option.is-active{background:rgba(251,205,57,0.12)!important;color:var(--lep-accent)!important;font-weight:700!important}.listenglish-player-volume-wrap{position:relative;display:inline-flex;flex-shrink:0;--lep-right-control-width:44px}.listenglish-player-volume-btn{display:inline-flex;align-items:center;justify-content:center;-webkit-appearance:none;appearance:none;gap:6px;background:var(--lep-surface);background-color:var(--lep-surface)!important;background-image:none!important;border:1px solid var(--lep-border);border-radius:8px;color:var(--lep-text-muted);cursor:pointer;font-size:11px;font-weight:600;line-height:1;height:var(--lep-btn-size);width:var(--lep-right-control-width);min-width:var(--lep-right-control-width);padding:0;box-shadow:none;text-shadow:none;text-decoration:none;flex-shrink:0;transition:color var(--lep-transition),border-radius var(--lep-transition);white-space:nowrap}.listenglish-player-volume-btn:hover,.listenglish-player-volume-btn:focus-visible,.listenglish-player-volume-btn:active{background:var(--lep-surface);background-color:var(--lep-surface)!important;background-image:none!important;color:var(--lep-accent)}.listenglish-player-volume-btn:focus-visible{outline:2px solid var(--lep-accent);outline-offset:2px}.listenglish-player-volume-btn::-moz-focus-inner{border:0;padding:0}.listenglish-player-wrapper .listenglish-player-volume-btn:hover,.listenglish-player-wrapper .listenglish-player-volume-btn:focus-visible,.listenglish-player-wrapper .listenglish-player-volume-btn:active{background:var(--lep-surface)!important;background-color:var(--lep-surface)!important;color:var(--lep-accent)!important;box-shadow:none!important;text-shadow:none!important;text-decoration:none!important}.listenglish-player-volume-menu.is-open + .listenglish-player-volume-btn{border-top-left-radius:0;border-top-right-radius:0;border-top-color:transparent}.listenglish-player-wrapper .listenglish-player-volume-menu.is-open + .listenglish-player-volume-btn{border-top-color:transparent!important}.listenglish-player-volume-btn svg{width:16px;height:16px}.listenglish-player-volume-menu{position:absolute;bottom:calc(100% - 1px);left:0;right:0;background:var(--lep-surface);border:1px solid var(--lep-border);border-bottom:none;border-radius:8px 8px 0 0;width:var(--lep-right-control-width);display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:flex-end;z-index:100;overflow:hidden;max-height:0;opacity:0;pointer-events:none;transition:max-height 0.26s ease-in,opacity 0.18s ease-in}.listenglish-player-volume-menu.is-open{max-height:150px;opacity:1;pointer-events:auto;transition:max-height 0.26s ease-out,opacity 0.18s ease-out}.listenglish-player-volume-slider{-webkit-appearance:none;appearance:none;writing-mode:vertical-lr;direction:rtl;width:6px;height:78px;margin-top:12px;margin-bottom:12px;cursor:pointer;outline:none;touch-action:none;background:transparent}.listenglish-player-volume-slider::-webkit-slider-runnable-track{height:6px;background:var(--lep-border);border-radius:3px}.listenglish-player-volume-slider::-moz-range-track{height:6px;background:var(--lep-border);border-radius:3px}.listenglish-player-volume-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--lep-accent);cursor:pointer;margin-top:-4px;transition:transform var(--lep-transition)}.listenglish-player-volume-slider::-moz-range-thumb{width:14px;height:14px;border:none;border-radius:50%;background:var(--lep-accent);cursor:pointer}.listenglish-player-volume-slider:hover::-webkit-slider-thumb{transform:scale(1.2)}.listenglish-player-volume-value{font-size:10px;color:var(--lep-text-muted);width:100%;text-align:center;line-height:1}.listenglish-player-error{color:#e05555;font-size:13px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}.listenglish-player-wrapper .listenglish-player-controls-btn,.listenglish-player-wrapper .listenglish-player-btn-play,.listenglish-player-wrapper .listenglish-player-volume-btn,.listenglish-player-wrapper .listenglish-player-speed-toggle,.listenglish-player-wrapper .listenglish-player-speed-option,.listenglish-player-wrapper .listenglish-player-loop-count-btn,.listenglish-player-wrapper .listenglish-player-loop-start-btn,.listenglish-player-wrapper .listenglish-player-auto-scroll-toggle{touch-action:manipulation;pointer-events:auto;cursor:pointer}.lep-mini-player{--lep-mini-pill-radius:50px;--lep-mini-progress-height:3px;--lep-mini-progress-point-size:12px;--lep-mini-progress-inset:29px;--lep-mini-btn-color:#f0f0f0;--lep-mini-btn-active-color:var(--lep-accent);--lep-mini-control-size:36px;position:fixed;bottom:80px;left:50%;transform:translateX(-50%) translateY(16px);z-index:10030;display:flex;align-items:center;gap:8px;background:linear-gradient(180deg,#271253 0%,#140828 100%);border:1px solid #3a2566;border-radius:var(--lep-mini-pill-radius);padding:11px 20px;box-shadow:0 14px 56px rgba(0,0,0,0.34),0 4px 16px rgba(0,0,0,0.2);max-width:340px;width:max-content;opacity:0;pointer-events:none;transition:opacity 0.25s ease,transform 0.25s ease;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;overflow:visible;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}.lep-mini-player button{-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}.lep-mini-player.is-visible{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0)}.lep-mini-progress{position:absolute;top:0;left:var(--lep-mini-progress-inset);right:var(--lep-mini-progress-right-inset,var(--lep-mini-progress-inset));height:var(--lep-mini-progress-height);background:#4a3a73;border-radius:999px;overflow:visible;pointer-events:none;z-index:2}.lep-mini-progress-fill{position:absolute;top:0;left:0;height:100%;width:0;min-width:0;background:#fbcd39;border-radius:999px;transition:width 0.08s linear;overflow:visible}.lep-mini-progress-fill::after{content:none}.lep-mini-progress-point{position:absolute;top:50%;left:0;width:var(--lep-mini-progress-point-size);height:var(--lep-mini-progress-point-size);border-radius:50%;background:#fbcd39;transform:translate(-50%,-50%);box-shadow:0 0 0 1px rgba(251,205,57,0.35),0 0 6px rgba(251,205,57,0.45);z-index:3}.lep-mini-autoscroll-toggle{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:50%;color:var(--lep-mini-btn-color);cursor:pointer;width:var(--lep-mini-control-size);height:var(--lep-mini-control-size);padding:0;flex-shrink:0;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:color 0.18s ease,background 0.18s ease}.lep-mini-autoscroll-toggle svg{width:18px;height:18px;stroke-width:2.1;pointer-events:none}.lep-mini-autoscroll-toggle.is-active,.lep-mini-autoscroll-toggle[aria-pressed="true"]{color:#fbcd39!important;background:rgba(251,205,57,0.15)}.lep-mini-autoscroll-toggle:focus-visible:not(.is-active):not( [aria-pressed="true"] ),.lep-mini-autoscroll-toggle:active:not(.is-active):not([aria-pressed="true"]){color:var(--lep-mini-btn-color);background:transparent}@media (hover:hover) and (pointer:fine){.lep-mini-autoscroll-toggle:hover{color:var(--lep-mini-btn-color);background:rgba(251,205,57,0.12)}.lep-mini-autoscroll-toggle.is-active:hover{color:#fbcd39!important;background:rgba(251,205,57,0.12)}}.lep-mini-controls{display:flex;align-items:center;gap:4px}.lep-mini-btn{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:50%;color:var(--lep-mini-btn-color);cursor:pointer;padding:0;width:var(--lep-mini-control-size);height:var(--lep-mini-control-size);flex-shrink:0;touch-action:manipulation;transition:color 0.18s ease,background 0.18s ease}.lep-mini-btn svg{width:18px;height:18px;flex-shrink:0;pointer-events:none}.lep-mini-btn-rewind svg path,.lep-mini-btn-forward svg path{stroke-width:2.1}.lep-mini-btn-rewind svg text,.lep-mini-btn-forward svg text{fill:var(--lep-mini-btn-color);stroke:rgba(0,0,0,0.62);stroke-width:0.45;paint-order:stroke fill;font-size:8px;font-weight:800;letter-spacing:0.1px}.lep-mini-autoscroll-toggle:focus,.lep-mini-btn:focus,.lep-mini-speed-toggle:focus,.lep-mini-speed-option:focus{outline:none}.lep-mini-autoscroll-toggle:focus-visible,.lep-mini-btn:focus-visible,.lep-mini-speed-toggle:focus-visible,.lep-mini-speed-option:focus-visible{outline:2px solid rgba(251,205,57,0.9);outline-offset:2px}.lep-mini-btn-play{background:#fbcd39;color:#3d0e78;width:40px;height:40px}.lep-mini-btn-play svg{width:15px;height:15px}.lep-mini-speed-wrap{position:relative;flex-shrink:0}.lep-mini-speed-toggle{display:inline-flex;align-items:center;justify-content:center;-webkit-appearance:none;appearance:none;background:rgba(255,255,255,0.06);border:none;border-radius:20px;color:#f0f0f0;cursor:pointer;font-size:10px;font-weight:500;font-family:inherit;line-height:1;height:var(--lep-mini-control-size);width:56px;min-width:56px;padding:0;touch-action:manipulation;white-space:nowrap;font-variant-numeric:tabular-nums;box-shadow:none;text-shadow:none;transition:border-color 0.18s ease,background 0.18s ease}@media (hover:hover) and (pointer:fine){.lep-mini-btn:hover{color:var(--lep-mini-btn-color);background:rgba(251,205,57,0.12)}.lep-mini-btn-play:hover{background:#ffd75a;color:#3d0e78}.lep-mini-speed-toggle:hover{background:rgba(251,205,57,0.15);color:var(--lep-mini-btn-color)}}.lep-mini-player.is-speed-menu-open,.lep-mini-player:has(.lep-mini-speed-menu.is-open){z-index:10060}@media (hover:none) and (pointer:coarse){.lep-mini-btn:active,.lep-mini-speed-toggle:active{background:rgba(251,205,57,0.16);color:var(--lep-mini-btn-color)}.lep-mini-btn-play:active{background:#ffd75a;color:#3d0e78}}.lep-mini-speed-menu{position:absolute;bottom:calc(100% + 8px);right:0;background:#241048;border:1px solid #3a2566;border-radius:8px;display:flex;flex-direction:column;min-width:102px;overflow:hidden;z-index:2;box-shadow:0 8px 28px rgba(0,0,0,0.38);opacity:0;pointer-events:none;visibility:hidden;transform:translateY(6px) scale(0.97);transform-origin:bottom right;transition:opacity 0.15s ease,transform 0.15s ease,visibility 0s linear 0.15s}.lep-mini-speed-menu.is-open{opacity:1;pointer-events:auto;visibility:visible;transform:translateY(0) scale(1);transition:opacity 0.15s ease,transform 0.15s ease,visibility 0s linear 0s}.lep-mini-speed-header{padding:8px 10px 7px;font-size:11px;font-weight:500;letter-spacing:0.01em;text-transform:none;line-height:1.1;color:rgba(240,240,240,0.92);background:rgba(255,255,255,0.06);border-bottom:1px solid rgba(255,255,255,0.1)}.lep-mini-speed-option{background:transparent;border:none;color:#e8e8e8;cursor:pointer;font-size:11px;font-family:inherit;padding:6px 10px;line-height:1.2;text-align:left;touch-action:manipulation;transition:background 0.15s ease,color 0.15s ease}.lep-mini-speed-option:focus-visible{outline:2px solid rgba(251,205,57,0.9);outline-offset:-2px}.lep-mini-speed-option:hover{background:rgba(251,205,57,0.16);color:rgba(240,240,240,0.95)}.lep-mini-speed-option.is-active{color:#fbcd39;font-weight:500;background:rgba(251,205,57,0.16)}@media (hover:none) and (pointer:coarse){.lep-mini-speed-toggle:hover,.lep-mini-speed-option:hover{background:transparent;color:inherit}.lep-mini-speed-option:active{background:rgba(251,205,57,0.16);color:#fbcd39}}@media (hover:none) and (pointer:coarse){.lep-mini-player{--lep-mini-control-size:44px}.lep-mini-player{gap:6px;padding:10px 14px;max-width:calc(100vw - 24px)}.lep-mini-controls{gap:2px}.lep-mini-autoscroll-toggle,.lep-mini-btn,.lep-mini-speed-toggle{min-width:44px;min-height:44px}}.listenglish-article .word{display:inline-block;padding:0px 2px;margin:0;border-radius:7px;cursor:pointer;border:0.2px solid #2f2f2f00;vertical-align:baseline}.listenglish-article .word.is-focus-loop-word{background:rgba(251,205,57,0.16);border-color:rgba(251,205,57,0.28);box-shadow:0 0 0 1px rgba(251,205,57,0.08)}.listenglish-article .word.active{background-color:#fbcd39;border:0.2px solid #62615145;color:#3d0e78;z-index:1;box-shadow:0 1px 3px 1px rgb(0 0 0 / 13%)}.listenglish-player-debug-log{position:relative;margin-top:8px;border:1px dashed rgba(255,255,255,0.22);background:rgba(0,0,0,0.25);color:#ffd8b8;border-radius:8px;padding:30px 10px 8px;font-size:11px;line-height:1.35;max-height:140px;overflow:auto;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.listenglish-player-debug-line + .listenglish-player-debug-line{margin-top:3px}.listenglish-player-debug-copy-btn{position:absolute;top:6px;right:6px;border:1px solid rgba(255,255,255,0.25);background:rgba(0,0,0,0.45);color:#ffd8b8;border-radius:6px;font-size:10px;padding:3px 8px;cursor:pointer}@media (max-width:520px){.lep-mini-player{max-width:calc(100vw - 32px);padding:9px 14px;gap:6px}}@media (max-width:520px){.listenglish-player-wrapper{padding:14px 16px}.listenglish-player-mark-btn span{display:none}.listenglish-player-mark-btn{padding:5px;border-radius:50%;width:30px;height:30px;justify-content:center}.listenglish-player-volume-menu{width:var(--lep-right-control-width)}.listenglish-player-volume-menu.is-open{max-height:130px}.listenglish-player-volume-slider{width:6px;height:66px;margin-top:12px;margin-bottom:12px}.listenglish-player-volume-slider::-webkit-slider-thumb{width:14px;height:14px;margin-top:-4px}.listenglish-player-volume-slider::-moz-range-thumb{width:14px;height:14px}.listenglish-player-btn-label{display:none}.listenglish-player-loop-panel{grid-template-columns:minmax(0,1fr) auto auto minmax(0,1fr);row-gap:8px;column-gap:0}.listenglish-player-loop-count-wrap,.listenglish-player-loop-range,.listenglish-player-loop-start-btn,.listenglish-player-loop-hint,.listenglish-player-loop-status{justify-self:center}.listenglish-player-loop-count-wrap{grid-column:1 / -1;grid-row:1}.listenglish-player-loop-start-btn{grid-column:2;grid-row:2;justify-self:end}.listenglish-player-loop-range{grid-column:3;grid-row:2;justify-self:start;margin-left:8px}.listenglish-player-loop-hint{grid-column:1 / -1;grid-row:2;white-space:normal}.listenglish-player-loop-status{grid-column:1 / -1;grid-row:3}.listenglish-player-loop-count-label{display:none}.listenglish-player-wrapper{--lep-btn-size:36px}.listenglish-player-controls-btn{min-width:36px;height:36px;padding:0 6px}.listenglish-player-controls-btn svg{width:16px;height:16px}.listenglish-player-controls{display:flex;justify-content:space-evenly;grid-template-columns:none;gap:0}.listenglish-player-controls-center{justify-content:center;gap:4px}.listenglish-player-controls-left{justify-content:center;gap:4px}.listenglish-player-controls-right{justify-content:center;gap:4px}.listenglish-player-btn-play{width:42px;height:42px;min-width:42px}.listenglish-player-btn-play svg{width:18px;height:18px}}.listenglish-selection-toolbox{position:absolute;z-index:9999;padding:0;background:transparent;border:0;border-radius:9px;box-shadow:0 5px 16px rgb(61 14 120 / 0.28);white-space:nowrap}.listenglish-sel-loop-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:9px 14px;background:#3d0e78;color:#fff;border:1px solid rgb(255 255 255 / 0.16);border-radius:9px;font-family:inherit;font-size:13px;font-weight:600;line-height:1;letter-spacing:0.01em;cursor:pointer;transition:background-color 0.15s ease,transform 0.15s ease,box-shadow 0.15s ease}.listenglish-sel-loop-btn:hover{background:#5415a1;color:#fff!important;transform:translateY(-1px);box-shadow:0 3px 10px rgb(61 14 120 / 0.24)}.listenglish-sel-loop-btn:active{transform:translateY(0);box-shadow:none}.listenglish-sel-loop-btn:focus-visible{outline:3px solid #fbcd39;outline-offset:3px}.listenglish-sel-loop-btn svg{flex:0 0 auto}@media (prefers-reduced-motion:reduce){.listenglish-sel-loop-btn{transition:none}}
