PluginProbe
PowerPress Podcasting plugin by Blubrry / 11.17.2
PowerPress Podcasting plugin by Blubrry v11.17.2
11.17.9 11.17.8 11.17.7 11.17.6 11.17.4 11.17.3 11.17.2 11.17.1 11.17 11.16.11 11.16.10 11.16.9 11.16.8 11.16.7 11.16.6 11.16.5 11.16.4 11.16.3 11.16.2 11.16.1 11.9.13 11.9.14 11.9.15 11.9.16 11.9.17 All 383 releases
powerpress / css / components / sidenav.css

sidenav.css in PowerPress Podcasting plugin by Blubrry 11.17.2, at css/components/sidenav.css

263 lines 5.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /* ================================
2 PP-SIDENAV Component
3 ================================
4
5 mobile navigation sidebar for settings pages
6 includes toggle, panel, and content tab styles
7
8 requires: css/variables.css
9
10 BEM Block: .pp-sidenav, .pp-sidenav__toggle
11 Elements: __icon, __text, __menu, __feed, __actions, __hosting
12 Modifiers: --collapsed
13
14 ================================ */
15
16
17 /* ==================
18 1. DESKTOP BASE
19 ================== */
20
21 /* toggle hidden on desktop */
22 .pp-sidenav__toggle {
23 display: none;
24 }
25
26 .pp-sidenav-toggle-container {
27 width: 23%;
28 flex-shrink: 0;
29 }
30
31 .pp-sidenav {
32 display: block;
33 overflow: hidden;
34 background-color: white;
35 float: left;
36 min-height: 70vh;
37 height: 100%;
38 }
39
40 .pp-sidenav-tab {
41 display: none;
42 flex: 1;
43 background-color: var(--pp-color-white);
44 border-top: none;
45 padding: 16px 24px;
46 width: 75%;
47 border-left: 1px solid var(--pp-color-gray-300);
48 min-height: 70vh;
49 }
50
51 .pp-sidenav-tab.active {
52 display: inline-block;
53 }
54
55
56 /* ==================
57 2. SIDENAV BUTTONS
58 ================== */
59
60 .pp-sidenav button {
61 display: flex;
62 align-items: center;
63 font-family: inherit;
64 font-size: 14px;
65 font-weight: 600;
66 background-color: inherit;
67 border: none;
68 outline: none;
69 cursor: pointer;
70 padding: 1vh 2vw 1vh 1vw;
71 transition: 0.3s;
72 width: 100%;
73 text-align: left;
74 line-height: 25px;
75 }
76
77 .pp-sidenav button img {
78 height: 25px;
79 width: 25px;
80 flex-shrink: 0;
81 }
82
83 .pp-sidenav button:hover {
84 background-color: var(--pp-color-gray-300);
85 text-decoration: underline;
86 }
87
88 .pp-sidenav button.active {
89 border-left: 2px solid var(--pp-color-accent);
90 color: var(--pp-color-accent);
91 background-color: var(--pp-color-blue-100);
92 }
93
94
95 /* ==================
96 3. MOBILE (768px)
97 ================== */
98
99 @media (max-width: 768px) {
100
101 /* container resets for all settings pages */
102 .pp-sidenav-toggle-container {
103 width: 100%;
104 display: block;
105 float: none;
106 }
107
108 /* toggle row */
109 .pp-sidenav__toggle {
110 display: flex;
111 align-items: center;
112 justify-content: space-between;
113 width: 100%;
114 padding: 8px 16px;
115 margin: 0 0 12px 0;
116 color: var(--pp-color-accent);
117 font-size: 14px;
118 font-weight: 600;
119 line-height: 1;
120 cursor: pointer;
121 background: #fff;
122 border: none;
123 border-bottom: 1px solid var(--pp-color-gray-300);
124 transition: background 0.15s;
125 }
126
127 .pp-sidenav__toggle .dashicons {
128 font-size: 18px;
129 width: 18px;
130 height: 18px;
131 line-height: 18px;
132 transition: transform 0.25s ease;
133 }
134
135 .pp-sidenav__toggle:hover {
136 background: var(--pp-color-gray-50);
137 }
138
139 /* hamburger icon */
140 .pp-sidenav__toggle-icon {
141 display: inline-block;
142 font-size: 24px;
143 width: 24px;
144 height: 24px;
145 line-height: 24px;
146 }
147
148 /* action links (rss + hosting) */
149 .pp-sidenav__toggle-actions {
150 display: flex;
151 align-items: center;
152 gap: 2px;
153 }
154
155 .pp-sidenav__toggle-feed,
156 .pp-sidenav__toggle-hosting {
157 display: flex;
158 align-items: center;
159 justify-content: center;
160 width: 36px;
161 height: 36px;
162 color: var(--pp-color-primary, #0073aa);
163 text-decoration: none;
164 border-radius: 4px;
165 transition: background 0.15s;
166 }
167
168 .pp-sidenav__toggle-feed:hover,
169 .pp-sidenav__toggle-hosting:hover {
170 background: var(--pp-color-gray-100);
171 }
172
173 .pp-sidenav__toggle-feed .dashicons {
174 font-size: 20px;
175 width: 20px;
176 height: 20px;
177 }
178
179 .pp-sidenav__toggle-hosting img {
180 width: 20px;
181 height: 20px;
182 }
183
184 /* hide text label and chevron on mobile */
185 .pp-sidenav__toggle-text,
186 .pp-sidenav__toggle .dashicons-arrow-down-alt2 {
187 display: none;
188 }
189
190 /* clickable menu area */
191 .pp-sidenav__toggle-menu {
192 display: flex;
193 align-items: center;
194 flex: 1;
195 cursor: pointer;
196 }
197
198 /* collapsible panel */
199 .pp-sidenav {
200 display: block;
201 width: 100%;
202 min-height: auto;
203 float: none;
204 padding: var(--pp-spacing-lg);
205 background: var(--pp-color-blue-100);
206 border-bottom: 1px solid var(--pp-color-blue-300);
207 max-height: 1200px;
208 overflow: hidden;
209 transition: max-height 0.3s ease, padding 0.3s ease, opacity 0.2s ease;
210 opacity: 1;
211 }
212
213 .pp-sidenav--collapsed {
214 max-height: 0;
215 padding-top: 0;
216 padding-bottom: 0;
217 border-bottom-color: transparent;
218 opacity: 0;
219 }
220
221 .pp-sidenav button {
222 width: 100%;
223 text-align: center;
224 padding: var(--pp-spacing-md) var(--pp-spacing-lg);
225 float: none;
226 }
227
228 .pp-sidenav a:hover {
229 text-decoration: underline;
230 }
231
232 /* content tab area */
233 .pp-sidenav-tab {
234 display: none;
235 border-left: none;
236 width: 100%;
237 padding: 0 16px;
238 }
239
240 .pp-sidenav-tab.active,
241 .pp-sidenav-tab.to-be-active {
242 display: block;
243 }
244
245 /* extras centered */
246 .pp-sidenav-extra {
247 text-align: center;
248 margin: var(--pp-spacing-lg) var(--pp-spacing-sm);
249 }
250
251 .pp-sidebar-notification,
252 #connect-blubrry-services {
253 margin: var(--pp-spacing-lg) auto;
254 max-width: 100%;
255 display: block;
256 text-align: center;
257 }
258
259 #connect-blubrry-services a {
260 display: inline-block;
261 }
262 }
263