| @@ -1800,25 +1800,24 @@ | ||
| 1800 | 1800 | flex-wrap: wrap; |
| 1801 | 1801 | gap: 5px; |
| 1802 | 1802 | padding: 10px; |
| 1803 | 1803 | } |
| 1804 | -.wpsc-ac-agent { | |
| 1805 | - display: flex; | |
| 1806 | - width: fit-content; | |
| 1807 | - align-items: center; | |
| 1808 | - gap: 5px; | |
| 1809 | - padding: 5px; | |
| 1810 | - border-radius: 5px; | |
| 1811 | - font-size: 13px; | |
| 1804 | +/* Dashboard widgets css */ | |
| 1805 | + | |
| 1806 | +/* Card/widget background, text and icon colors are NOT set here - they come from the "Appearance | |
| 1807 | + > Dashboard" settings (wpsc-ap-dashboard option), injected as inline !important styles by | |
| 1808 | + WPSC_Tickets::get_agent_dashboard() (core/includes/admin/tickets/class-wpsc-tickets.php). This | |
| 1809 | + stylesheet only handles structure/spacing/shape, so it never fights that setting. */ | |
| 1810 | + | |
| 1811 | +:root { | |
| 1812 | + --wpsc-dash-border: #e7eaf0; | |
| 1813 | + --wpsc-dash-divider: #eef0f4; | |
| 1814 | + --wpsc-dash-surface-hover: #f8fafc; | |
| 1815 | + --wpsc-dash-accent: #0079bf; | |
| 1816 | + --wpsc-dash-shadow: 0 1px 2px rgba(16, 24, 40, 0.04), 0 1px 3px rgba(16, 24, 40, 0.06); | |
| 1812 | 1817 | } |
| 1813 | -.wpsc-ac-agent img { | |
| 1814 | - border-radius: 50%; | |
| 1815 | -} | |
| 1816 | 1818 | |
| 1817 | -/* Dashboard widgets css */ | |
| 1818 | - | |
| 1819 | 1819 | .wpsc-dash-widget svg { |
| 1820 | - color: #ccc; | |
| 1821 | 1820 | height: 80px !important; |
| 1822 | 1821 | } |
| 1823 | 1822 | |
| 1824 | 1823 | .wpsc-dashboard-widget-icon-header { |
| @@ -1825,8 +1824,14 @@ | ||
| 1825 | 1824 | display: flex; |
| 1826 | 1825 | align-items: center; |
| 1827 | 1826 | } |
| 1828 | 1827 | |
| 1828 | +.wpsc-dashboard-widget-icon-header span { | |
| 1829 | + font-size: 14px; | |
| 1830 | + font-weight: 600; | |
| 1831 | + letter-spacing: 0.01em; | |
| 1832 | +} | |
| 1833 | + | |
| 1829 | 1834 | .wpsc-dashboard-card-icon-header { |
| 1830 | 1835 | cursor: pointer; |
| 1831 | 1836 | } |
| 1832 | 1837 | |
| @@ -1840,17 +1845,16 @@ | ||
| 1840 | 1845 | .wpsc-dash-widget { |
| 1841 | 1846 | margin: 10px; |
| 1842 | 1847 | position: relative; |
| 1843 | 1848 | box-sizing: border-box; |
| 1844 | - background-color: #f4f6f9; | |
| 1845 | - border: 1px solid #ccc; | |
| 1846 | - border-radius: 5px; | |
| 1847 | - padding: 10px; | |
| 1848 | - box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); | |
| 1849 | + border: 1px solid var(--wpsc-dash-border); | |
| 1850 | + border-radius: 12px; | |
| 1851 | + padding: 16px 18px; | |
| 1852 | + box-shadow: var(--wpsc-dash-shadow); | |
| 1849 | 1853 | } |
| 1850 | 1854 | |
| 1851 | 1855 | .wpsc-dash-widget2 { |
| 1852 | - padding: 10px; | |
| 1856 | + padding: 16px 18px; | |
| 1853 | 1857 | } |
| 1854 | 1858 | |
| 1855 | 1859 | .wpsc-dash-widget-small { |
| 1856 | 1860 | width: calc(20% - 20px); |
| @@ -1861,14 +1865,18 @@ | ||
| 1861 | 1865 | } |
| 1862 | 1866 | |
| 1863 | 1867 | .wpsc-dash-widget-small .wpsc-dash-widget-icon { |
| 1864 | 1868 | font-size: 70px; /* Increase the size as needed */ |
| 1865 | - color: #ccc; /* Change the icon color as needed */ | |
| 1866 | 1869 | margin-left: 10px; /* Add margin to separate from the text */ |
| 1867 | 1870 | } |
| 1868 | 1871 | |
| 1869 | 1872 | .wpsc-dash-widget-small svg { |
| 1870 | - opacity: 0.2; | |
| 1873 | + opacity: 0.5; | |
| 1874 | + flex-shrink: 0; | |
| 1875 | + overflow: visible; | |
| 1876 | + height: 48px !important; | |
| 1877 | + width: 48px !important; | |
| 1878 | + margin-left: 10px; | |
| 1871 | 1879 | } |
| 1872 | 1880 | |
| 1873 | 1881 | .wpsc-dash-widget-mid { |
| 1874 | 1882 | width: calc(50% - 20px); |
| @@ -1880,46 +1888,91 @@ | ||
| 1880 | 1888 | |
| 1881 | 1889 | .wpsc-widget h2 { |
| 1882 | 1890 | font-size: 18px; |
| 1883 | 1891 | margin-bottom: 5px; |
| 1892 | + font-weight: 600; | |
| 1884 | 1893 | } |
| 1885 | 1894 | |
| 1886 | 1895 | .wpsc-dash-widget-small h2 { |
| 1887 | - margin-bottom: 5px; | |
| 1888 | - font-size: 35px; | |
| 1889 | - font-weight: 600; | |
| 1896 | + margin-bottom: 4px; | |
| 1897 | + font-size: 32px; | |
| 1898 | + font-weight: 700; | |
| 1899 | + letter-spacing: -0.02em; | |
| 1890 | 1900 | } |
| 1891 | 1901 | |
| 1902 | +.wpsc-dash-widget-small p { | |
| 1903 | + font-size: 13px; | |
| 1904 | + font-weight: 500; | |
| 1905 | +} | |
| 1906 | + | |
| 1892 | 1907 | /* Style the header of widgets with icons and actions */ |
| 1893 | 1908 | .wpsc-dash-widget-header { |
| 1894 | 1909 | display: flex; |
| 1895 | 1910 | justify-content: space-between; |
| 1896 | 1911 | align-items: center; |
| 1897 | - margin-bottom: 10px; | |
| 1898 | - border-bottom: 1px solid #ccc; | |
| 1899 | - padding-bottom: 10px; | |
| 1912 | + margin-bottom: 14px; | |
| 1913 | + border-bottom: 1px solid var(--wpsc-dash-divider); | |
| 1914 | + padding-bottom: 12px; | |
| 1900 | 1915 | } |
| 1901 | 1916 | |
| 1902 | 1917 | .wpsc-dash-widget-header svg { |
| 1903 | - color: #ccc; | |
| 1904 | 1918 | height: 15px !important; |
| 1905 | 1919 | margin: 0px 5px 0px 0px; |
| 1906 | 1920 | } |
| 1907 | 1921 | |
| 1908 | 1922 | .wpsc-dash-widget-actions { |
| 1909 | - /* Widget action links styles here */ | |
| 1923 | + font-size: 12px; | |
| 1910 | 1924 | } |
| 1911 | 1925 | |
| 1912 | 1926 | .wpsc-dash-widget-actions a { |
| 1913 | 1927 | cursor: pointer; |
| 1914 | 1928 | text-decoration: none; |
| 1929 | + color: var(--wpsc-dash-accent); | |
| 1930 | + font-weight: 500; | |
| 1915 | 1931 | } |
| 1916 | 1932 | |
| 1933 | +.wpsc-dash-widget-actions a:hover { | |
| 1934 | + text-decoration: underline; | |
| 1935 | +} | |
| 1936 | + | |
| 1917 | 1937 | /* Style the content of widgets */ |
| 1918 | 1938 | .wpsc-dash-widget-content { |
| 1919 | - /* Widget content styles here */ | |
| 1939 | + font-size: 13px; | |
| 1920 | 1940 | } |
| 1921 | 1941 | |
| 1942 | +/* Tables rendered inside a widget's content area (agent list, recent tickets, todos, out-of-sla, | |
| 1943 | + timers, usergroups, agent performance, feedback, ...) - scoped to the content wrapper so this | |
| 1944 | + doesn't touch tables anywhere else in the app. Text color is intentionally left unset here so | |
| 1945 | + it inherits the widget's appearance-setting-driven text color instead of overriding it. */ | |
| 1946 | +.wpsc-dash-widget-content table { | |
| 1947 | + width: 100%; | |
| 1948 | + border-collapse: collapse; | |
| 1949 | +} | |
| 1950 | + | |
| 1951 | +.wpsc-dash-widget-content table thead th { | |
| 1952 | + text-align: left; | |
| 1953 | + font-size: 11px; | |
| 1954 | + font-weight: 600; | |
| 1955 | + text-transform: uppercase; | |
| 1956 | + letter-spacing: 0.04em; | |
| 1957 | + padding: 8px 10px; | |
| 1958 | + border-bottom: 1px solid var(--wpsc-dash-divider); | |
| 1959 | + white-space: nowrap; | |
| 1960 | +} | |
| 1961 | + | |
| 1962 | +.wpsc-dash-widget-content table tbody td { | |
| 1963 | + padding: 10px; | |
| 1964 | + border-bottom: 1px solid var(--wpsc-dash-divider); | |
| 1965 | +} | |
| 1966 | + | |
| 1967 | +.wpsc-dash-widget-content table tbody tr:last-child td { | |
| 1968 | + border-bottom: none; | |
| 1969 | +} | |
| 1970 | + | |
| 1971 | +.wpsc-dash-widget-content table tbody tr:hover td { | |
| 1972 | + background-color: var(--wpsc-dash-surface-hover); | |
| 1973 | +} | |
| 1974 | + | |
| 1922 | 1975 | .wpsc-actions-btn-setting { |
| 1923 | 1976 | width: 100%; |
| 1924 | 1977 | display: flex; |
| 1925 | 1978 | align-items: center; |
| @@ -1956,9 +2009,9 @@ | ||
| 1956 | 2009 | } |
| 1957 | 2010 | |
| 1958 | 2011 | .wpsc-dash-widget-content::-webkit-scrollbar-track, |
| 1959 | 2012 | .wpsc-widget-body::-webkit-scrollbar-track { |
| 1960 | - background-color: #ffffff; | |
| 2013 | + background-color: transparent; | |
| 1961 | 2014 | } |
| 1962 | 2015 | /* table scrollable end */ |
| 1963 | 2016 | |
| 1964 | 2017 | .wpsc-dash-widget-mid .wpsc-dash-widget-content { |
| @@ -2067,14 +2120,26 @@ | ||
| 2067 | 2120 | flex-direction: column; |
| 2068 | 2121 | } |
| 2069 | 2122 | |
| 2070 | 2123 | .wpsc-widget-list { |
| 2071 | - border-bottom: 1px solid #ccc; | |
| 2072 | - padding: 10px 0px; | |
| 2124 | + border-bottom: 1px solid var(--wpsc-dash-divider, #eef0f4); | |
| 2125 | + padding: 10px 2px; | |
| 2126 | + font-size: 13px; | |
| 2127 | + line-height: 1.6; | |
| 2073 | 2128 | } |
| 2074 | 2129 | |
| 2075 | 2130 | .wpsc-widget-list:last-child { |
| 2076 | 2131 | border-bottom: none; |
| 2132 | +} | |
| 2133 | + | |
| 2134 | +.wpsc-widget-list a { | |
| 2135 | + color: var(--wpsc-dash-accent, #0079bf); | |
| 2136 | + font-weight: 500; | |
| 2137 | + text-decoration: none; | |
| 2138 | +} | |
| 2139 | + | |
| 2140 | +.wpsc-widget-list a:hover { | |
| 2141 | + text-decoration: underline; | |
| 2077 | 2142 | } |
| 2078 | 2143 | |
| 2079 | 2144 | #wpsc-dash-agent-list .dt-search { |
| 2080 | 2145 | display: none; |