vidply 1.0.6 → 1.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +19 -4
- package/dist/vidply.css +640 -25
- package/dist/vidply.esm.js +2208 -177
- package/dist/vidply.esm.js.map +4 -4
- package/dist/vidply.esm.min.js +6 -6
- package/dist/vidply.esm.min.meta.json +38 -15
- package/dist/vidply.js +2208 -177
- package/dist/vidply.js.map +4 -4
- package/dist/vidply.min.css +1 -1
- package/dist/vidply.min.js +6 -6
- package/dist/vidply.min.meta.json +38 -15
- package/package.json +2 -2
- package/src/controls/CaptionManager.js +30 -0
- package/src/controls/ControlBar.js +11 -4
- package/src/controls/SettingsDialog.js +3 -3
- package/src/controls/TranscriptManager.js +1147 -72
- package/src/core/Player.js +1435 -26
- package/src/i18n/translations.js +70 -15
- package/src/icons/Icons.js +8 -4
- package/src/styles/vidply.css +640 -25
- package/src/utils/StorageManager.js +156 -0
package/src/styles/vidply.css
CHANGED
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
|
|
55
55
|
/* UI Background Colors */
|
|
56
56
|
--vidply-primary-dark-rgb: 8, 51, 88;
|
|
57
|
-
--vidply-primary-light: #
|
|
57
|
+
--vidply-primary-light: #71b7e2;
|
|
58
58
|
--vidply-primary-rgb: 10, 64, 110;
|
|
59
59
|
--vidply-shadow-lg: 0 12px 48px var(--vidply-black-80);
|
|
60
60
|
--vidply-shadow-md: 0 4px 12px var(--vidply-black-40);
|
|
@@ -99,7 +99,7 @@
|
|
|
99
99
|
display: flex;
|
|
100
100
|
flex-direction: column;
|
|
101
101
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
|
102
|
-
font-size:
|
|
102
|
+
font-size: 16px;
|
|
103
103
|
line-height: 1.5;
|
|
104
104
|
max-width: 100%;
|
|
105
105
|
overflow: visible;
|
|
@@ -1655,7 +1655,7 @@
|
|
|
1655
1655
|
.vidply-transcript-time {
|
|
1656
1656
|
color: var(--vidply-primary-light);
|
|
1657
1657
|
font-family: 'Courier New', monospace;
|
|
1658
|
-
font-size:
|
|
1658
|
+
font-size: 100%;
|
|
1659
1659
|
font-weight: 600;
|
|
1660
1660
|
margin-bottom: 4px;
|
|
1661
1661
|
margin-right: 8px;
|
|
@@ -1663,7 +1663,7 @@
|
|
|
1663
1663
|
|
|
1664
1664
|
.vidply-transcript-text {
|
|
1665
1665
|
color: var(--vidply-white-90);
|
|
1666
|
-
font-size:
|
|
1666
|
+
font-size: 100%;
|
|
1667
1667
|
line-height: 1.6;
|
|
1668
1668
|
}
|
|
1669
1669
|
|
|
@@ -1677,6 +1677,42 @@
|
|
|
1677
1677
|
text-decoration: underline;
|
|
1678
1678
|
}
|
|
1679
1679
|
|
|
1680
|
+
/* Transcript entry types */
|
|
1681
|
+
.vidply-transcript-description {
|
|
1682
|
+
background: rgb(100 149 237 / 8%); /* Subtle blue tint for descriptions */
|
|
1683
|
+
border-left: 3px solid rgb(100 149 237 / 60%);
|
|
1684
|
+
}
|
|
1685
|
+
|
|
1686
|
+
.vidply-transcript-description .vidply-transcript-text {
|
|
1687
|
+
color: rgb(135 206 250 / 95%); /* Light sky blue for description text */
|
|
1688
|
+
font-style: italic;
|
|
1689
|
+
opacity: 0.9;
|
|
1690
|
+
}
|
|
1691
|
+
|
|
1692
|
+
.vidply-transcript-description .vidply-transcript-time {
|
|
1693
|
+
color: rgb(100 149 237 / 80%); /* Matching blue for timestamp */
|
|
1694
|
+
}
|
|
1695
|
+
|
|
1696
|
+
.vidply-transcript-description:hover,
|
|
1697
|
+
.vidply-transcript-description:focus {
|
|
1698
|
+
background: rgb(100 149 237 / 14%);
|
|
1699
|
+
}
|
|
1700
|
+
|
|
1701
|
+
.vidply-transcript-description:hover .vidply-transcript-text,
|
|
1702
|
+
.vidply-transcript-description:focus .vidply-transcript-text {
|
|
1703
|
+
opacity: 1;
|
|
1704
|
+
}
|
|
1705
|
+
|
|
1706
|
+
.vidply-transcript-description.vidply-transcript-entry-active {
|
|
1707
|
+
background: rgb(100 149 237 / 18%);
|
|
1708
|
+
border-left-color: #6495ed;
|
|
1709
|
+
}
|
|
1710
|
+
|
|
1711
|
+
.vidply-transcript-description.vidply-transcript-entry-active .vidply-transcript-text {
|
|
1712
|
+
color: rgb(135 206 250); /* Brighter on active */
|
|
1713
|
+
opacity: 1;
|
|
1714
|
+
}
|
|
1715
|
+
|
|
1680
1716
|
/* Transcript Scrollbar */
|
|
1681
1717
|
.vidply-transcript-content::-webkit-scrollbar {
|
|
1682
1718
|
width: 8px;
|
|
@@ -1695,44 +1731,623 @@
|
|
|
1695
1731
|
background: var(--vidply-border-hover);
|
|
1696
1732
|
}
|
|
1697
1733
|
|
|
1698
|
-
/*
|
|
1699
|
-
.vidply-
|
|
1700
|
-
|
|
1701
|
-
|
|
1734
|
+
/* Transcript Header Left Side (Settings Button + Title) */
|
|
1735
|
+
.vidply-transcript-header-left {
|
|
1736
|
+
align-items: center;
|
|
1737
|
+
display: flex;
|
|
1738
|
+
gap: 8px;
|
|
1739
|
+
position: relative;
|
|
1740
|
+
}
|
|
1741
|
+
|
|
1742
|
+
/* Transcript Settings Button */
|
|
1743
|
+
.vidply-transcript-settings {
|
|
1744
|
+
align-items: center;
|
|
1745
|
+
background: transparent;
|
|
1746
|
+
border: none;
|
|
1702
1747
|
border-radius: 4px;
|
|
1703
|
-
|
|
1704
|
-
|
|
1748
|
+
color: var(--vidply-text-muted);
|
|
1749
|
+
cursor: pointer;
|
|
1750
|
+
display: flex;
|
|
1751
|
+
height: 28px;
|
|
1752
|
+
justify-content: center;
|
|
1753
|
+
padding: 4px;
|
|
1754
|
+
position: relative;
|
|
1755
|
+
transition: all 0.2s ease;
|
|
1756
|
+
width: 28px;
|
|
1757
|
+
}
|
|
1758
|
+
|
|
1759
|
+
.vidply-transcript-settings:hover {
|
|
1760
|
+
background: var(--vidply-white-10);
|
|
1761
|
+
color: var(--vidply-white);
|
|
1762
|
+
}
|
|
1763
|
+
|
|
1764
|
+
.vidply-transcript-settings:focus {
|
|
1765
|
+
outline: 2px solid var(--vidply-primary-light);
|
|
1766
|
+
outline-offset: 2px;
|
|
1767
|
+
}
|
|
1768
|
+
|
|
1769
|
+
.vidply-transcript-settings .vidply-icon {
|
|
1770
|
+
height: 18px;
|
|
1771
|
+
width: 18px;
|
|
1772
|
+
}
|
|
1773
|
+
|
|
1774
|
+
/* Transcript Settings Menu */
|
|
1775
|
+
.vidply-transcript-settings-menu {
|
|
1776
|
+
background: var(--vidply-bg-menu);
|
|
1777
|
+
border: 1px solid var(--vidply-border);
|
|
1778
|
+
border-radius: 6px;
|
|
1779
|
+
box-shadow: var(--vidply-shadow-lg);
|
|
1780
|
+
display: none;
|
|
1781
|
+
left: 0;
|
|
1782
|
+
min-width: 240px;
|
|
1783
|
+
padding: 6px;
|
|
1784
|
+
position: absolute;
|
|
1785
|
+
top: calc(100% + 4px);
|
|
1786
|
+
z-index: 100;
|
|
1787
|
+
}
|
|
1788
|
+
|
|
1789
|
+
.vidply-transcript-settings-menu::after {
|
|
1790
|
+
border-bottom: 6px solid var(--vidply-bg-menu);
|
|
1791
|
+
border-left: 6px solid transparent;
|
|
1792
|
+
border-right: 6px solid transparent;
|
|
1793
|
+
bottom: 100%;
|
|
1794
|
+
content: '';
|
|
1795
|
+
height: 0;
|
|
1796
|
+
left: 14px;
|
|
1797
|
+
position: absolute;
|
|
1798
|
+
width: 0;
|
|
1799
|
+
}
|
|
1800
|
+
|
|
1801
|
+
/* Transcript Settings Menu Items */
|
|
1802
|
+
.vidply-transcript-settings-item {
|
|
1803
|
+
align-items: flex-start;
|
|
1804
|
+
background: transparent;
|
|
1805
|
+
border: none;
|
|
1806
|
+
border-radius: 4px;
|
|
1807
|
+
color: var(--vidply-white);
|
|
1808
|
+
cursor: pointer;
|
|
1809
|
+
display: flex;
|
|
1810
|
+
font-size: 13px;
|
|
1811
|
+
gap: 8px;
|
|
1812
|
+
padding: 8px 10px;
|
|
1813
|
+
text-align: left;
|
|
1814
|
+
transition: all 0.15s ease;
|
|
1815
|
+
width: 100%;
|
|
1816
|
+
}
|
|
1817
|
+
|
|
1818
|
+
.vidply-transcript-settings-item:hover {
|
|
1819
|
+
background: var(--vidply-primary-20);
|
|
1820
|
+
}
|
|
1821
|
+
|
|
1822
|
+
.vidply-transcript-settings-item:hover span {
|
|
1823
|
+
text-decoration: underline;
|
|
1824
|
+
}
|
|
1825
|
+
|
|
1826
|
+
.vidply-transcript-settings-item:focus {
|
|
1827
|
+
background: var(--vidply-primary-25);
|
|
1828
|
+
outline: none;
|
|
1829
|
+
}
|
|
1830
|
+
|
|
1831
|
+
.vidply-transcript-settings-item:focus span {
|
|
1832
|
+
text-decoration: underline;
|
|
1833
|
+
}
|
|
1834
|
+
|
|
1835
|
+
.vidply-transcript-settings-item:active span {
|
|
1836
|
+
text-decoration: underline;
|
|
1837
|
+
}
|
|
1838
|
+
|
|
1839
|
+
.vidply-transcript-settings-item .vidply-icon {
|
|
1840
|
+
flex-grow: 0.2;
|
|
1841
|
+
height: 20px;
|
|
1842
|
+
opacity: 0.9;
|
|
1843
|
+
width: 20px;
|
|
1844
|
+
}
|
|
1845
|
+
|
|
1846
|
+
.vidply-transcript-settings-item span {
|
|
1847
|
+
flex: 1;
|
|
1848
|
+
}
|
|
1849
|
+
|
|
1850
|
+
/* Move Mode Visual Feedback */
|
|
1851
|
+
.vidply-transcript-move-mode {
|
|
1852
|
+
animation: transcriptPulse 0.5s ease-in-out 2;
|
|
1853
|
+
box-shadow: 0 0 0 3px var(--vidply-primary-light), 0 10px 40px var(--vidply-black-60);
|
|
1854
|
+
}
|
|
1855
|
+
|
|
1856
|
+
@keyframes transcriptPulse {
|
|
1857
|
+
0%, 100% {
|
|
1858
|
+
box-shadow: 0 0 0 3px var(--vidply-primary-light), 0 10px 40px var(--vidply-black-60);
|
|
1859
|
+
}
|
|
1860
|
+
|
|
1861
|
+
50% {
|
|
1862
|
+
box-shadow: 0 0 0 6px var(--vidply-primary-light), 0 10px 40px var(--vidply-black-60);
|
|
1863
|
+
}
|
|
1864
|
+
}
|
|
1865
|
+
|
|
1866
|
+
/* Resize Handles */
|
|
1867
|
+
.vidply-transcript-resize-handle {
|
|
1868
|
+
position: absolute;
|
|
1869
|
+
z-index: 10;
|
|
1870
|
+
}
|
|
1871
|
+
|
|
1872
|
+
/* Corner handles - larger hit area */
|
|
1873
|
+
.vidply-transcript-resize-ne,
|
|
1874
|
+
.vidply-transcript-resize-nw,
|
|
1875
|
+
.vidply-transcript-resize-se,
|
|
1876
|
+
.vidply-transcript-resize-sw {
|
|
1877
|
+
height: 16px;
|
|
1878
|
+
width: 16px;
|
|
1879
|
+
}
|
|
1880
|
+
|
|
1881
|
+
/* Edge handles */
|
|
1882
|
+
.vidply-transcript-resize-n,
|
|
1883
|
+
.vidply-transcript-resize-s {
|
|
1884
|
+
cursor: ns-resize;
|
|
1885
|
+
height: 8px;
|
|
1886
|
+
left: 16px;
|
|
1887
|
+
right: 16px;
|
|
1888
|
+
}
|
|
1889
|
+
|
|
1890
|
+
.vidply-transcript-resize-e,
|
|
1891
|
+
.vidply-transcript-resize-w {
|
|
1892
|
+
bottom: 16px;
|
|
1893
|
+
cursor: ew-resize;
|
|
1894
|
+
top: 16px;
|
|
1895
|
+
width: 8px;
|
|
1896
|
+
}
|
|
1897
|
+
|
|
1898
|
+
/* Position each handle */
|
|
1899
|
+
.vidply-transcript-resize-n {
|
|
1900
|
+
top: -4px;
|
|
1901
|
+
}
|
|
1902
|
+
|
|
1903
|
+
.vidply-transcript-resize-s {
|
|
1904
|
+
bottom: -4px;
|
|
1905
|
+
}
|
|
1906
|
+
|
|
1907
|
+
.vidply-transcript-resize-e {
|
|
1908
|
+
right: -4px;
|
|
1909
|
+
}
|
|
1910
|
+
|
|
1911
|
+
.vidply-transcript-resize-w {
|
|
1912
|
+
left: -4px;
|
|
1913
|
+
}
|
|
1914
|
+
|
|
1915
|
+
.vidply-transcript-resize-ne {
|
|
1916
|
+
cursor: nesw-resize;
|
|
1917
|
+
right: -8px;
|
|
1918
|
+
top: -8px;
|
|
1919
|
+
}
|
|
1920
|
+
|
|
1921
|
+
.vidply-transcript-resize-nw {
|
|
1922
|
+
cursor: nwse-resize;
|
|
1923
|
+
left: -8px;
|
|
1924
|
+
top: -8px;
|
|
1925
|
+
}
|
|
1926
|
+
|
|
1927
|
+
.vidply-transcript-resize-se {
|
|
1928
|
+
bottom: -8px;
|
|
1929
|
+
cursor: nwse-resize;
|
|
1930
|
+
right: -8px;
|
|
1931
|
+
}
|
|
1932
|
+
|
|
1933
|
+
.vidply-transcript-resize-sw {
|
|
1934
|
+
bottom: -8px;
|
|
1935
|
+
cursor: nesw-resize;
|
|
1936
|
+
left: -8px;
|
|
1937
|
+
}
|
|
1938
|
+
|
|
1939
|
+
/* Visual indicator for resize handles when active */
|
|
1940
|
+
.vidply-transcript-resizable .vidply-transcript-resize-handle::after {
|
|
1941
|
+
background: var(--vidply-primary-light);
|
|
1942
|
+
border-radius: 50%;
|
|
1943
|
+
content: '';
|
|
1944
|
+
height: 6px;
|
|
1945
|
+
left: 50%;
|
|
1946
|
+
opacity: 0;
|
|
1947
|
+
position: absolute;
|
|
1948
|
+
top: 50%;
|
|
1949
|
+
transform: translate(-50%, -50%);
|
|
1950
|
+
transition: opacity 0.2s ease;
|
|
1951
|
+
width: 6px;
|
|
1952
|
+
}
|
|
1953
|
+
|
|
1954
|
+
.vidply-transcript-resizable:hover .vidply-transcript-resize-handle::after {
|
|
1955
|
+
opacity: 0.8;
|
|
1956
|
+
}
|
|
1957
|
+
|
|
1958
|
+
.vidply-transcript-resizable .vidply-transcript-resize-handle:hover::after {
|
|
1959
|
+
opacity: 1;
|
|
1960
|
+
}
|
|
1961
|
+
|
|
1962
|
+
/* Resizing State */
|
|
1963
|
+
.vidply-transcript-resizing {
|
|
1964
|
+
box-shadow: 0 0 0 2px var(--vidply-primary-light), 0 10px 40px var(--vidply-black-60);
|
|
1965
|
+
transition: none !important;
|
|
1966
|
+
}
|
|
1967
|
+
|
|
1968
|
+
.vidply-transcript-resizing .vidply-transcript-content {
|
|
1969
|
+
pointer-events: none;
|
|
1970
|
+
}
|
|
1971
|
+
|
|
1972
|
+
/* Keyboard Drag Mode */
|
|
1973
|
+
.vidply-transcript-keyboard-drag {
|
|
1974
|
+
box-shadow: 0 0 0 3px var(--vidply-primary-light), 0 10px 40px var(--vidply-black-60);
|
|
1975
|
+
}
|
|
1976
|
+
|
|
1977
|
+
.vidply-transcript-drag-indicator {
|
|
1978
|
+
background: linear-gradient(135deg, var(--vidply-primary) 0%, var(--vidply-primary-light) 100%);
|
|
1979
|
+
border-radius: 0 0 6px 6px;
|
|
1980
|
+
color: var(--vidply-white);
|
|
1981
|
+
font-size: 12px;
|
|
1982
|
+
font-weight: 600;
|
|
1983
|
+
left: 0;
|
|
1984
|
+
padding: 8px 12px;
|
|
1985
|
+
position: absolute;
|
|
1986
|
+
right: 0;
|
|
1987
|
+
text-align: center;
|
|
1988
|
+
top: 100%;
|
|
1989
|
+
z-index: 1000;
|
|
1990
|
+
}
|
|
1991
|
+
|
|
1992
|
+
/* Move Mode Tooltip */
|
|
1993
|
+
.vidply-transcript-move-tooltip {
|
|
1994
|
+
animation: fadeInDown 0.3s ease;
|
|
1995
|
+
background: var(--vidply-black-90);
|
|
1996
|
+
border-radius: 4px;
|
|
1997
|
+
color: var(--vidply-white);
|
|
1998
|
+
font-size: 12px;
|
|
1999
|
+
left: 50%;
|
|
2000
|
+
padding: 6px 12px;
|
|
2001
|
+
position: absolute;
|
|
2002
|
+
text-align: center;
|
|
2003
|
+
top: 100%;
|
|
2004
|
+
transform: translateX(-50%);
|
|
2005
|
+
white-space: nowrap;
|
|
2006
|
+
z-index: 1000;
|
|
2007
|
+
}
|
|
2008
|
+
|
|
2009
|
+
@keyframes fadeInDown {
|
|
2010
|
+
from {
|
|
2011
|
+
opacity: 0;
|
|
2012
|
+
transform: translateX(-50%) translateY(-10px);
|
|
2013
|
+
}
|
|
2014
|
+
|
|
2015
|
+
to {
|
|
2016
|
+
opacity: 1;
|
|
2017
|
+
transform: translateX(-50%) translateY(0);
|
|
2018
|
+
}
|
|
2019
|
+
}
|
|
2020
|
+
|
|
2021
|
+
/* Transcript Style Dialog - Dropdown Menu Style */
|
|
2022
|
+
.vidply-transcript-style-dialog {
|
|
2023
|
+
background: var(--vidply-bg-menu);
|
|
2024
|
+
border: 1px solid var(--vidply-border);
|
|
2025
|
+
border-radius: 8px;
|
|
2026
|
+
box-shadow: var(--vidply-shadow-lg);
|
|
2027
|
+
display: none;
|
|
2028
|
+
left: 0;
|
|
2029
|
+
max-height: 500px;
|
|
2030
|
+
min-width: 280px;
|
|
2031
|
+
overflow-y: auto;
|
|
2032
|
+
padding: 12px;
|
|
2033
|
+
position: absolute;
|
|
2034
|
+
top: 100%;
|
|
2035
|
+
width: auto;
|
|
2036
|
+
z-index: 100;
|
|
2037
|
+
}
|
|
2038
|
+
|
|
2039
|
+
/* Arrow pointing up to settings button */
|
|
2040
|
+
.vidply-transcript-style-dialog::after {
|
|
2041
|
+
border-color: transparent transparent var(--vidply-bg-menu) transparent;
|
|
2042
|
+
border-style: solid;
|
|
2043
|
+
border-width: 0 8px 8px;
|
|
2044
|
+
content: '';
|
|
2045
|
+
height: 0;
|
|
2046
|
+
left: 12px;
|
|
2047
|
+
position: absolute;
|
|
2048
|
+
top: -8px;
|
|
2049
|
+
width: 0;
|
|
2050
|
+
}
|
|
2051
|
+
|
|
2052
|
+
.vidply-transcript-style-title {
|
|
2053
|
+
border-bottom: 1px solid var(--vidply-border);
|
|
2054
|
+
color: var(--vidply-white);
|
|
2055
|
+
font-size: 14px;
|
|
2056
|
+
font-weight: 600;
|
|
2057
|
+
margin: 0 0 12px;
|
|
2058
|
+
padding-bottom: 8px;
|
|
2059
|
+
}
|
|
2060
|
+
|
|
2061
|
+
.vidply-transcript-style-group {
|
|
2062
|
+
margin-bottom: 12px;
|
|
2063
|
+
}
|
|
2064
|
+
|
|
2065
|
+
.vidply-transcript-style-group:last-child {
|
|
2066
|
+
margin-bottom: 0;
|
|
2067
|
+
}
|
|
2068
|
+
|
|
2069
|
+
.vidply-transcript-style-group label {
|
|
2070
|
+
color: var(--vidply-white-90);
|
|
2071
|
+
display: block;
|
|
2072
|
+
font-size: 12px;
|
|
2073
|
+
font-weight: 500;
|
|
2074
|
+
margin-bottom: 6px;
|
|
2075
|
+
}
|
|
2076
|
+
|
|
2077
|
+
/* Style Select */
|
|
2078
|
+
.vidply-transcript-style-select {
|
|
2079
|
+
background: var(--vidply-white-10);
|
|
2080
|
+
border: 1px solid var(--vidply-border);
|
|
2081
|
+
border-radius: 4px;
|
|
2082
|
+
color: var(--vidply-white);
|
|
2083
|
+
cursor: pointer;
|
|
2084
|
+
font-size: 13px;
|
|
2085
|
+
outline: none;
|
|
2086
|
+
padding: 6px 10px;
|
|
2087
|
+
transition: all 0.2s ease;
|
|
2088
|
+
width: 100%;
|
|
2089
|
+
}
|
|
2090
|
+
|
|
2091
|
+
.vidply-transcript-style-select:hover {
|
|
2092
|
+
background: var(--vidply-white-15);
|
|
2093
|
+
border-color: var(--vidply-border-hover);
|
|
2094
|
+
}
|
|
2095
|
+
|
|
2096
|
+
.vidply-transcript-style-select:focus {
|
|
2097
|
+
background: var(--vidply-white-15);
|
|
2098
|
+
border-color: var(--vidply-primary-light);
|
|
2099
|
+
box-shadow: 0 0 0 2px var(--vidply-primary-20);
|
|
2100
|
+
}
|
|
2101
|
+
|
|
2102
|
+
.vidply-transcript-style-select option {
|
|
2103
|
+
background: #1a1a1a;
|
|
2104
|
+
color: #fff;
|
|
2105
|
+
}
|
|
2106
|
+
|
|
2107
|
+
/* Style Color Input */
|
|
2108
|
+
.vidply-transcript-style-color {
|
|
2109
|
+
border: 1px solid var(--vidply-border);
|
|
2110
|
+
border-radius: 4px;
|
|
2111
|
+
cursor: pointer;
|
|
2112
|
+
height: 32px;
|
|
2113
|
+
outline: none;
|
|
2114
|
+
padding: 4px;
|
|
2115
|
+
transition: all 0.2s ease;
|
|
2116
|
+
width: 100%;
|
|
2117
|
+
}
|
|
2118
|
+
|
|
2119
|
+
.vidply-transcript-style-color:hover {
|
|
2120
|
+
border-color: var(--vidply-border-hover);
|
|
2121
|
+
}
|
|
2122
|
+
|
|
2123
|
+
.vidply-transcript-style-color:focus {
|
|
2124
|
+
border-color: var(--vidply-primary-light);
|
|
2125
|
+
box-shadow: 0 0 0 2px var(--vidply-primary-20);
|
|
2126
|
+
}
|
|
2127
|
+
|
|
2128
|
+
/* Style Range Slider */
|
|
2129
|
+
.vidply-transcript-style-range-container {
|
|
2130
|
+
align-items: center;
|
|
2131
|
+
display: flex;
|
|
2132
|
+
gap: 12px;
|
|
2133
|
+
}
|
|
2134
|
+
|
|
2135
|
+
.vidply-transcript-style-range {
|
|
2136
|
+
-webkit-appearance: none;
|
|
2137
|
+
appearance: none;
|
|
2138
|
+
background: var(--vidply-white-20);
|
|
2139
|
+
border-radius: 3px;
|
|
2140
|
+
cursor: pointer;
|
|
2141
|
+
flex: 1;
|
|
2142
|
+
height: 6px;
|
|
2143
|
+
outline: none;
|
|
2144
|
+
}
|
|
2145
|
+
|
|
2146
|
+
.vidply-transcript-style-range::-webkit-slider-thumb {
|
|
2147
|
+
-webkit-appearance: none;
|
|
2148
|
+
appearance: none;
|
|
2149
|
+
background: var(--vidply-primary-light);
|
|
2150
|
+
border: 2px solid var(--vidply-white);
|
|
2151
|
+
border-radius: 50%;
|
|
2152
|
+
box-shadow: var(--vidply-shadow-sm);
|
|
2153
|
+
cursor: pointer;
|
|
2154
|
+
height: 16px;
|
|
2155
|
+
transition: all 0.15s ease;
|
|
2156
|
+
width: 16px;
|
|
2157
|
+
}
|
|
2158
|
+
|
|
2159
|
+
.vidply-transcript-style-range::-webkit-slider-thumb:hover {
|
|
2160
|
+
background: var(--vidply-primary);
|
|
2161
|
+
transform: scale(1.15);
|
|
2162
|
+
}
|
|
2163
|
+
|
|
2164
|
+
.vidply-transcript-style-range::-moz-range-thumb {
|
|
2165
|
+
background: var(--vidply-primary-light);
|
|
2166
|
+
border: 2px solid var(--vidply-white);
|
|
2167
|
+
border-radius: 50%;
|
|
2168
|
+
box-shadow: var(--vidply-shadow-sm);
|
|
2169
|
+
cursor: pointer;
|
|
2170
|
+
height: 16px;
|
|
2171
|
+
transition: all 0.15s ease;
|
|
2172
|
+
width: 16px;
|
|
2173
|
+
}
|
|
2174
|
+
|
|
2175
|
+
.vidply-transcript-style-range::-moz-range-thumb:hover {
|
|
2176
|
+
background: var(--vidply-primary);
|
|
2177
|
+
transform: scale(1.15);
|
|
2178
|
+
}
|
|
2179
|
+
|
|
2180
|
+
.vidply-transcript-style-value {
|
|
2181
|
+
color: var(--vidply-text-muted);
|
|
2182
|
+
font-size: 13px;
|
|
2183
|
+
font-weight: 600;
|
|
2184
|
+
min-width: 40px;
|
|
2185
|
+
text-align: right;
|
|
2186
|
+
}
|
|
2187
|
+
|
|
2188
|
+
/* Style Close Button */
|
|
2189
|
+
.vidply-transcript-style-close {
|
|
2190
|
+
background: var(--vidply-primary);
|
|
2191
|
+
border: none;
|
|
2192
|
+
border-radius: 4px;
|
|
2193
|
+
color: var(--vidply-white);
|
|
2194
|
+
cursor: pointer;
|
|
2195
|
+
font-size: 13px;
|
|
2196
|
+
font-weight: 600;
|
|
2197
|
+
margin-top: 12px;
|
|
2198
|
+
padding: 8px 16px;
|
|
2199
|
+
transition: all 0.2s ease;
|
|
2200
|
+
width: 100%;
|
|
2201
|
+
}
|
|
2202
|
+
|
|
2203
|
+
.vidply-transcript-style-close:hover {
|
|
2204
|
+
background: var(--vidply-primary-light);
|
|
2205
|
+
transform: translateY(-1px);
|
|
2206
|
+
}
|
|
2207
|
+
|
|
2208
|
+
.vidply-transcript-style-close:active {
|
|
2209
|
+
transform: translateY(0);
|
|
2210
|
+
}
|
|
2211
|
+
|
|
2212
|
+
.vidply-transcript-style-close:focus {
|
|
2213
|
+
box-shadow: 0 0 0 3px var(--vidply-primary-20);
|
|
2214
|
+
outline: none;
|
|
2215
|
+
}
|
|
2216
|
+
|
|
2217
|
+
/* Sign Language Video Wrapper */
|
|
2218
|
+
.vidply-sign-language-wrapper {
|
|
2219
|
+
background: transparent;
|
|
2220
|
+
height: auto;
|
|
1705
2221
|
max-width: 400px;
|
|
2222
|
+
min-height: 100px;
|
|
1706
2223
|
min-width: 150px;
|
|
1707
2224
|
position: absolute;
|
|
1708
2225
|
transition: opacity 0.3s ease;
|
|
1709
|
-
width:
|
|
2226
|
+
width: 280px;
|
|
1710
2227
|
z-index: 3;
|
|
1711
2228
|
}
|
|
1712
2229
|
|
|
1713
|
-
.vidply-fullscreen .vidply-sign-language-
|
|
2230
|
+
.vidply-fullscreen .vidply-sign-language-wrapper {
|
|
1714
2231
|
max-width: 600px;
|
|
1715
2232
|
}
|
|
1716
2233
|
|
|
1717
|
-
|
|
1718
|
-
|
|
1719
|
-
|
|
1720
|
-
right: 16px;
|
|
2234
|
+
.vidply-sign-language-wrapper:focus {
|
|
2235
|
+
outline: 2px solid var(--vidply-primary);
|
|
2236
|
+
outline-offset: 2px;
|
|
1721
2237
|
}
|
|
1722
2238
|
|
|
1723
|
-
|
|
1724
|
-
.vidply-
|
|
1725
|
-
|
|
2239
|
+
/* Sign Language Video */
|
|
2240
|
+
.vidply-sign-language-video {
|
|
2241
|
+
background: var(--vidply-black);
|
|
2242
|
+
border: 2px solid var(--vidply-white-30);
|
|
2243
|
+
border-radius: 4px;
|
|
2244
|
+
box-shadow: 0 4px 12px var(--vidply-black-60);
|
|
2245
|
+
cursor: move;
|
|
2246
|
+
display: block;
|
|
2247
|
+
height: auto;
|
|
2248
|
+
pointer-events: auto;
|
|
2249
|
+
width: 100%;
|
|
1726
2250
|
}
|
|
1727
2251
|
|
|
1728
|
-
|
|
1729
|
-
|
|
1730
|
-
|
|
2252
|
+
/* Dragging and Resizing States */
|
|
2253
|
+
.vidply-sign-dragging .vidply-sign-language-video {
|
|
2254
|
+
cursor: grabbing !important;
|
|
2255
|
+
opacity: 0.9;
|
|
2256
|
+
}
|
|
2257
|
+
|
|
2258
|
+
.vidply-sign-resizing .vidply-sign-language-video {
|
|
2259
|
+
cursor: nwse-resize !important;
|
|
1731
2260
|
}
|
|
1732
2261
|
|
|
1733
|
-
|
|
1734
|
-
.vidply-
|
|
2262
|
+
/* Keyboard Drag/Resize Modes */
|
|
2263
|
+
.vidply-sign-keyboard-drag,
|
|
2264
|
+
.vidply-sign-keyboard-resize {
|
|
2265
|
+
box-shadow: 0 0 0 3px var(--vidply-primary), 0 4px 12px var(--vidply-black-60);
|
|
2266
|
+
}
|
|
2267
|
+
|
|
2268
|
+
.vidply-sign-keyboard-drag::after,
|
|
2269
|
+
.vidply-sign-keyboard-resize::after {
|
|
2270
|
+
align-items: center;
|
|
2271
|
+
background: var(--vidply-primary);
|
|
2272
|
+
border-radius: 4px;
|
|
2273
|
+
color: var(--vidply-white);
|
|
2274
|
+
display: flex;
|
|
2275
|
+
font-size: 12px;
|
|
2276
|
+
font-weight: 600;
|
|
2277
|
+
justify-content: center;
|
|
2278
|
+
left: 50%;
|
|
2279
|
+
padding: 4px 8px;
|
|
2280
|
+
pointer-events: none;
|
|
2281
|
+
position: absolute;
|
|
2282
|
+
top: -28px;
|
|
2283
|
+
transform: translateX(-50%);
|
|
2284
|
+
white-space: nowrap;
|
|
2285
|
+
z-index: 10;
|
|
2286
|
+
}
|
|
2287
|
+
|
|
2288
|
+
.vidply-sign-keyboard-drag::after {
|
|
2289
|
+
content: 'DRAG MODE (Arrow keys to move, ESC to exit)';
|
|
2290
|
+
}
|
|
2291
|
+
|
|
2292
|
+
.vidply-sign-keyboard-resize::after {
|
|
2293
|
+
content: 'RESIZE MODE (Arrow keys to resize, ESC to exit)';
|
|
2294
|
+
}
|
|
2295
|
+
|
|
2296
|
+
/* Resize Handles */
|
|
2297
|
+
.vidply-sign-resize-handle {
|
|
2298
|
+
background: var(--vidply-white);
|
|
2299
|
+
border: 1px solid var(--vidply-black-30);
|
|
2300
|
+
border-radius: 50%;
|
|
2301
|
+
height: 12px;
|
|
2302
|
+
opacity: 0;
|
|
2303
|
+
position: absolute;
|
|
2304
|
+
transition: opacity 0.2s ease, background 0.2s ease;
|
|
2305
|
+
width: 12px;
|
|
2306
|
+
z-index: 10;
|
|
2307
|
+
}
|
|
2308
|
+
|
|
2309
|
+
.vidply-sign-language-wrapper:hover .vidply-sign-resize-handle,
|
|
2310
|
+
.vidply-sign-language-wrapper:focus .vidply-sign-resize-handle {
|
|
2311
|
+
opacity: 1;
|
|
2312
|
+
}
|
|
2313
|
+
|
|
2314
|
+
.vidply-sign-resize-handle:hover {
|
|
2315
|
+
background: var(--vidply-primary);
|
|
2316
|
+
}
|
|
2317
|
+
|
|
2318
|
+
.vidply-sign-resize-nw {
|
|
2319
|
+
cursor: nwse-resize;
|
|
2320
|
+
left: -6px;
|
|
2321
|
+
top: -6px;
|
|
2322
|
+
}
|
|
2323
|
+
|
|
2324
|
+
.vidply-sign-resize-ne {
|
|
2325
|
+
cursor: nesw-resize;
|
|
2326
|
+
right: -6px;
|
|
2327
|
+
top: -6px;
|
|
2328
|
+
}
|
|
2329
|
+
|
|
2330
|
+
.vidply-sign-resize-sw {
|
|
2331
|
+
bottom: -6px;
|
|
2332
|
+
cursor: nesw-resize;
|
|
2333
|
+
left: -6px;
|
|
2334
|
+
}
|
|
2335
|
+
|
|
2336
|
+
.vidply-sign-resize-se {
|
|
2337
|
+
bottom: -6px;
|
|
2338
|
+
cursor: nwse-resize;
|
|
2339
|
+
right: -6px;
|
|
2340
|
+
}
|
|
2341
|
+
|
|
2342
|
+
/* Sign Language Video Positions */
|
|
2343
|
+
.vidply-sign-position-bottom-right {
|
|
1735
2344
|
bottom: 95px; /* Above controls */
|
|
2345
|
+
right: 16px;
|
|
2346
|
+
}
|
|
2347
|
+
|
|
2348
|
+
.vidply-sign-position-bottom-left {
|
|
2349
|
+
bottom: 95px; /* Above controls */
|
|
2350
|
+
left: 16px;
|
|
1736
2351
|
}
|
|
1737
2352
|
|
|
1738
2353
|
.vidply-sign-position-top-right {
|
|
@@ -1747,7 +2362,7 @@
|
|
|
1747
2362
|
|
|
1748
2363
|
/* Responsive Sign Language Video */
|
|
1749
2364
|
@media (width <= 640px) {
|
|
1750
|
-
.vidply-sign-language-
|
|
2365
|
+
.vidply-sign-language-wrapper {
|
|
1751
2366
|
min-width: 120px;
|
|
1752
2367
|
width: 35%;
|
|
1753
2368
|
}
|