@highlight: #00a1d6; .artplayer-plugin-danmuku { display: flex; position: relative; z-index: 99; align-items: center; justify-content: center; font-size: 12px; height: 32px; width: 100%; color: #fff; font-weight: 300; flex-shrink: 0; gap: 10px; .apd-icon { cursor: pointer; opacity: 0.75; transition: all 0.2s ease; fill: #fff; &:hover { opacity: 1; } } .apd-config { display: flex; position: relative; .apd-config-panel { position: absolute; bottom: 24px; left: -148px; display: none; width: 320px; padding: 10px; .apd-config-panel-inner { width: 100%; border-radius: 3px; background-color: rgba(0, 0, 0, 0.85); padding: 10px; } } &:hover { .apd-config-panel { display: flex; } } } .apd-config-mode, .apd-config-slider, .apd-config-other, .apd-style-mode { margin-bottom: 15px; } .apd-modes { display: flex; align-items: center; margin-top: 5px; gap: 20px; .apd-mode { cursor: pointer; text-align: center; &:hover { color: @highlight; } } } .apd-config-slider { display: flex; align-items: center; gap: 12px; .apd-value { width: 32px; text-align: right; } } .apd-slider { position: relative; flex: 1; display: flex; height: 20px; align-items: center; justify-content: center; cursor: pointer; .apd-slider-line { position: relative; height: 2px; width: 100%; overflow: hidden; border-radius: 3px; background-color: rgba(255, 255, 255, 0.25); } .apd-slider-points { position: absolute; inset: 0; display: flex; align-items: center; justify-content: space-between; .apd-slider-point { width: 2px; height: 2px; border-radius: 50%; background-color: rgba(255, 255, 255, 0.5); } } .apd-slider-progress { width: 0%; height: 100%; background-color: @highlight; } .apd-slider-dot { position: absolute; transform: translateX(-6px); left: 0%; width: 12px; height: 12px; border-radius: 50%; background-color: @highlight; } .apd-slider-steps { display: flex; align-items: center; justify-content: space-between; position: absolute; bottom: -12px; width: calc(100% + 32px); color: #777; .apd-slider-step { flex-shrink: 0; width: 36px; text-align: center; scale: 0.95; } } } .apd-config-other { display: flex; align-items: center; gap: 20px; .apd-check-off, .apd-check-on { width: 16px; height: 16px; } .apd-other { display: flex; align-items: center; cursor: pointer; gap: 2px; &:hover { color: @highlight; } } } .apd-emitter { display: flex; flex: 1; align-items: center; height: 100%; background-color: rgba(255, 255, 255, 0.25); border-radius: 5px; } .apd-style { position: relative; display: flex; align-items: center; justify-content: center; .apd-style-panel { position: absolute; bottom: 24px; left: -88px; display: none; width: 200px; padding: 10px; .apd-style-panel-inner { width: 100%; border-radius: 3px; background-color: rgba(0, 0, 0, 0.85); padding: 10px; } } &:hover { .apd-style-panel { display: flex; } } } .apd-colors { display: flex; flex-wrap: wrap; margin-top: 5px; gap: 8px; .apd-color { width: 16px; height: 16px; border-radius: 2px; cursor: pointer; &.apd-active { border: 1px solid black; box-shadow: 0 0 0 1px #fff; } } } .apd-input { outline: none; height: 100%; flex: 1; min-width: 0; width: auto; border: none; line-height: 1; color: #fff; background-color: transparent; &::placeholder { color: rgba(255, 255, 255, 0.5); } } .apd-send { display: flex; align-items: center; justify-content: center; height: 100%; width: 60px; flex-shrink: 0; cursor: pointer; text-shadow: none; border-top-right-radius: 5px; border-bottom-right-radius: 5px; background-color: @highlight; &.apd-lock { cursor: not-allowed; color: #666; background-color: #e7e7e7; } } } .art-controls-center { .apd-emitter { width: 260px; flex: none; } } .art-fullscreen, .art-fullscreen-web { .artplayer-plugin-danmuku { height: 38px; gap: 16px; .apd-config-icon, .apd-toggle-off, .apd-toggle-on { width: 28px; height: 28px; } .apd-emitter { width: 400px; flex: none; } } } [data-danmuku-theme='light'] > .artplayer-plugin-danmuku { .apd-icon { fill: #333; } .apd-emitter { background-color: #f1f2f3; } .apd-input { color: #000; &::placeholder { color: rgba(0, 0, 0, 0.3); } } } [data-danmuku-visible='false'] { .apd-toggle-off { display: block; } .apd-toggle-on { display: none; } } [data-danmuku-visible='true'] { .apd-toggle-off { display: none; } .apd-toggle-on { display: block; } } [data-danmuku-anti-overlap='false'] { .apd-anti-overlap { .apd-check-on { display: none; } .apd-check-off { display: block; } } } [data-danmuku-anti-overlap='true'] { .apd-anti-overlap { .apd-check-on { display: block; } .apd-check-off { display: none; } } } [data-danmuku-sync-video='false'] { .apd-sync-video { .apd-check-on { display: none; } .apd-check-off { display: block; } } } [data-danmuku-sync-video='true'] { .apd-sync-video { .apd-check-on { display: block; } .apd-check-off { display: none; } } } .generate-mode-styles(@index) when (@index >= 0) { .generate-mode-styles(@index - 1); @mode: ~'data-danmuku-mode@{index}'; [@{mode}='false'] { .apd-config-mode { .apd-mode-@{index}-off { display: block; } .apd-mode-@{index}-on { display: none; } } .art-danmuku [data-mode='@{index}'] { opacity: 0 !important; } } [@{mode}='true'] { .apd-config-mode { .apd-mode-@{index}-off { display: none; } .apd-mode-@{index}-on { display: block; } } } [data-danmuku-mode='@{index}'] { .apd-style-mode { [data-mode='@{index}'] { color: @highlight; path { fill: @highlight; } } } } } .generate-mode-styles(2);