euv_ui/style/class/display/
fn.rs1use super::*;
2
3#[cfg(not(feature = "custom-styles"))]
4class! {
5 pub c_card_title {
6 margin: format!("{} 0px", var!(gap-component));
7 color: var!(foreground);
8 font-size: var!(font-lg);
9 font-weight: "600";
10 padding-bottom: var!(gap-component);
11 border-bottom: format!("1px dashed {}", var!(border));
12 letter-spacing: "-0.01em";
13 @media ((max-width: 767px)) {
14 font-size: var!(font-md);
15 }
16 }
17
18 pub c_primary_button {
23 display: "flex";
24 justify-content: "center";
25 align-items: "center";
26 gap: var!(space-sm);
27 width: "100%";
28 height: "42px";
29 background: var!(accent);
30 color: var!(text-on-accent);
31 border: "1px solid transparent";
32 padding: format!("0px {}", var!(space-2xl));
33 cursor: "pointer";
34 font-size: var!(font-base);
35 font-weight: "500";
36 letter-spacing: "0.02em";
37 text-align: "center";
38 outline: "none";
39 box-sizing: "border-box";
40 white-space: "nowrap";
41 overflow: "hidden";
42 text-overflow: "ellipsis";
43 user-select: "none";
44 -webkit-user-select: "none";
45 :focus-visible {
46 outline: "none";
47 }
48 :disabled {
49 background: var!(muted-foreground);
50 cursor: "not-allowed";
51 opacity: "1";
52 }
53 :hover {
54 background: var!(accent);
55 }
56 :active {
57 background: var!(accent);
58 color: var!(text-on-accent);
59 border-color: "transparent";
60 }
61 @media ((max-width: 767px)) {
62 max-width: "100%";
63 padding: format!("{} {}", var!(space-lg), var!(space-xl));
64 font-size: var!(font-md);
65 }
66 }
67
68 pub c_button_controls {
73 display: "flex";
74 flex-wrap: "wrap";
75 gap: var!(gap-element);
76 margin-top: var!(gap-component);
77 margin-bottom: var!(gap-component);
78 }
79
80 pub c_euv_button_primary_md {
85 display: "flex";
86 justify-content: "center";
87 align-items: "center";
88 gap: var!(space-sm);
89 flex: "1 1 120px";
90 height: "42px";
91 padding: format!("0px {}", var!(space-xl));
92 background: var!(accent);
93 color: var!(text-on-accent);
94 cursor: "pointer";
95 font-size: var!(font-base);
96 font-weight: "500";
97 outline: "none";
98 white-space: "nowrap";
99 user-select: "none";
100 -webkit-user-select: "none";
101 box-sizing: "border-box";
102 :disabled {
103 background: var!(muted-foreground);
104 cursor: "not-allowed";
105 opacity: "1";
106 }
107 }
108
109 pub c_error_box {
114 margin: format!("{} 0px", var!(gap-component));
115 background: var!(accent-muted);
116 color: var!(foreground);
117 font-size: var!(font-base);
118 box-sizing: "border-box";
119 }
120
121 pub c_success_box {
122 margin: format!("{} 0px", var!(gap-component));
123 background: var!(accent-muted);
124 color: var!(foreground);
125 font-size: var!(font-base);
126 box-sizing: "border-box";
127 }
128
129 pub c_counter_row {
134 display: "grid";
135 grid-template-columns: "1fr 1fr";
136 align-items: "center";
137 gap: var!(gap-component);
138 @media ((max-width: 767px)) {
139 grid-template-columns: "1fr";
140 }
141 }
142
143 pub c_counter_text {
144 font-size: var!(font-base);
145 color: "inherit";
146 margin-bottom: var!(gap-component);
147 }
148
149 pub c_counter_value {
150 font-weight: "700";
151 color: var!(accent);
152 font-size: var!(font-base);
153 }
154
155 pub c_counter_value_row {
156 margin-top: var!(space-sm);
157 word-break: "break-all";
158 overflow-wrap: "anywhere";
159 font-size: var!(font-base);
160 color: "inherit";
161 font-weight: "400";
162 }
163
164 pub c_badge_row {
165 display: "flex";
166 gap: var!(gap-inline);
167 flex-wrap: "wrap";
168 align-items: "center";
169 }
170
171 pub c_badge_hint {
172 margin-bottom: var!(gap-component);
173 color: "inherit";
174 opacity: "1";
175 font-size: var!(font-base);
176 }
177
178 pub c_tab_bar {
183 display: "flex";
184 border-bottom: format!("1px dashed {}", var!(border));
185 margin-bottom: var!(gap-component);
186 gap: var!(gap-element);
187 @media ((max-width: 767px)) {
188 flex-wrap: "wrap";
189 }
190 }
191
192 pub c_tab_item_active {
193 padding: format!("{} {}", var!(space-md), var!(space-xl));
194 cursor: "pointer";
195 border-bottom: format!("2px solid {}", var!(accent));
196 color: var!(text-on-accent);
197 background: var!(accent);
198 font-size: var!(font-base);
199 font-weight: "500";
200 touch-action: "manipulation";
210 user-select: "none";
211 -webkit-user-select: "none";
212 }
213
214 pub c_tab_item_inactive {
215 padding: format!("{} {}", var!(space-md), var!(space-xl));
216 cursor: "pointer";
217 border-bottom: "2px solid transparent";
218 color: "inherit";
219 font-size: var!(font-base);
220 font-weight: "500";
221 touch-action: "manipulation";
223 user-select: "none";
224 -webkit-user-select: "none";
225 :hover {
226 background: var!(accent-muted);
227 color: var!(accent);
228 }
229 }
230
231 pub c_tab_content {
232 padding: format!("{} 0px", var!(gap-element));
233 }
234
235 pub c_tab_text {
236 color: "inherit";
237 font-size: var!(font-base);
238 margin-bottom: var!(gap-element);
239 }
240
241 pub c_tab_text_muted {
242 color: "inherit";
243 opacity: "1";
244 font-size: var!(font-base);
245 }
246
247 pub c_tab_text_input {
248 color: "inherit";
249 font-size: var!(font-base);
250 margin-bottom: var!(gap-component);
251 }
252
253 pub c_list_input {
258 width: "100%";
259 flex: "1";
260 height: "42px";
261 padding: format!("0px {}", var!(space-lg));
262 border: format!("1px solid {}", var!(border));
263 font-size: var!(font-base);
264 line-height: "normal";
265 box-sizing: "border-box";
266 outline: "none";
267 color: var!(foreground);
268 appearance: "none";
269 -webkit-appearance: "none";
270 -moz-appearance: "none";
271 vertical-align: "middle";
272 :hover {
273 border-color: var!(accent);
274 background: var!(accent-muted);
275 }
276 :focus {
277 outline: "none";
278 border-color: var!(accent);
279 background: var!(accent-muted);
280 }
281 }
282
283 pub c_list_input_error {
284 width: "100%";
285 flex: "1";
286 height: "42px";
287 padding: format!("0px {}", var!(space-lg));
288 border: format!("1px solid {}", var!(foreground));
289 font-size: var!(font-base);
290 line-height: "normal";
291 box-sizing: "border-box";
292 outline: "none";
293 color: var!(foreground);
294 appearance: "none";
295 -webkit-appearance: "none";
296 -moz-appearance: "none";
297 vertical-align: "middle";
298 :focus {
299 outline: "none";
300 border-color: var!(foreground);
301 }
302 }
303
304 pub c_list_error_text {
305 color: var!(foreground);
306 font-size: var!(font-base);
307 margin: format!("{} 0px", var!(gap-element));
308 }
309
310 pub c_inline_input_button_wrap {
311 flex-shrink: "0";
312 }
313
314 pub c_list_ul {
315 list-style: "none";
316 padding: "0px";
317 margin: "0px";
318 margin-top: var!(gap-component);
319 }
320
321 pub c_list_item {
322 display: "flex";
323 justify-content: "space-between";
324 align-items: "center";
325 gap: var!(gap-component);
326 min-height: var!(min-height-base);
327 margin: format!("{} 0px", var!(gap-element));
328 }
329
330 pub c_list_item_text {
331 flex: "1";
332 overflow: "hidden";
333 text-overflow: "ellipsis";
334 white-space: "nowrap";
335 font-size: var!(font-base);
336 color: "inherit";
337 min-width: "0";
338 }
339
340 pub c_list_item_button {
341 max-width: "120px";
342 flex-shrink: "0";
343 }
344
345 pub c_anim_fade_in {
350 margin-top: var!(gap-component);
351 animation: format!("euv-fade-in 0.5s {}", var!(ease-out));
352 font-size: var!(font-base);
353 color: "inherit";
354 }
355
356 pub c_anim_spin_container {
357 display: "flex";
358 justify-content: "center";
359 align-items: "center";
360 margin: format!("{} 0px", var!(space-lg));
361 min-height: "80px";
362 }
363
364 pub c_anim_spin {
365 font-size: var!(font-5xl);
366 animation: "euv-spin 1.5s linear infinite";
367 display: "inline-block";
368 @media ((max-width: 767px)) {
369 font-size: var!(font-4xl);
370 }
371 }
372
373 pub c_anim_spin_stopped {
374 font-size: var!(font-5xl);
375 display: "inline-block";
376 opacity: "1";
377 @media ((max-width: 767px)) {
378 font-size: var!(font-4xl);
379 }
380 }
381
382 pub c_anim_pulse_container {
383 display: "flex";
384 justify-content: "center";
385 align-items: "center";
386 margin: format!("{} 0px", var!(space-lg));
387 min-height: "80px";
388 }
389
390 pub c_anim_pulse {
391 font-size: var!(font-5xl);
392 animation: "euv-pulse 1.5s ease-in-out infinite";
393 display: "inline-block";
394 color: var!(foreground);
395 @media ((max-width: 767px)) {
396 font-size: var!(font-4xl);
397 }
398 }
399
400 pub c_anim_pulse_stopped {
401 font-size: var!(font-5xl);
402 display: "inline-block";
403 opacity: "1";
404 color: var!(foreground);
405 @media ((max-width: 767px)) {
406 font-size: var!(font-4xl);
407 }
408 }
409
410 pub c_progress_container {
411 width: "100%";
412 height: "12px";
413 margin: format!("{} 0px", var!(space-lg));
414 overflow: "hidden";
415 }
416
417 pub c_progress_bar_running {
418 height: "100%";
419 background: var!(accent);
420 animation: format!("euv-progress 1.6s {} forwards", var!(ease-in-out));
421 }
422
423 pub c_progress_bar_stopped {
424 height: "100%";
425 background: var!(accent);
426 width: "0%";
427 }
428
429 pub c_anim_scale_box {
430 margin: format!("{} 0px", var!(gap-component));
431 padding: var!(space-xl);
432 background: var!(accent);
433 cursor: "pointer";
434 transition: format!("transform {} {}", var!(duration-normal), var!(ease-out));
435 }
436
437 pub c_element_stack {
442 display: "flex";
443 flex-direction: "column";
444 gap: var!(gap-element);
445 }
446
447 pub c_switcher {
448 display: "flex";
449 gap: var!(gap-component);
450 flex-wrap: "wrap";
451 @media ((max-width: 767px)) {
452 flex-direction: "column";
453 gap: var!(gap-component-mobile);
454 }
455 }
456
457 pub c_switcher_col {
458 flex: "1";
459 min-width: "200px";
460 @media ((max-width: 767px)) {
461 min-width: "100%";
462 }
463 }
464
465 pub c_hint {
470 color: "inherit";
471 opacity: "1";
472 font-size: var!(font-base);
473 margin-bottom: var!(gap-component);
474 }
475
476 pub c_euv_pagination {
481 display: "grid";
487 grid-template-columns: "1fr 1fr";
488 gap: var!(gap-component);
489 margin-top: var!(space-2xl);
495 min-width: "0px";
498 @media ((max-width: 767px)) {
499 grid-template-columns: "minmax(0, 1fr)";
500 }
501 }
502
503 pub c_euv_pagination_link {
504 min-width: "0px";
508 border: format!("1px solid {}", var!(border));
509 padding: var!(space-lg);
510 cursor: "pointer";
511 display: "flex";
512 flex-direction: "column";
513 gap: var!(space-2xs);
514 overflow: "hidden";
515 :hover {
516 border-color: var!(accent);
517 }
518 }
519
520 pub c_euv_footer {
521 padding: format!("{} 0px", var!(space-md));
538 border-top: format!("1px dashed {}", var!(border));
539 display: "flex";
540 flex-wrap: "nowrap";
545 align-items: "center";
546 justify-content: "center";
547 gap: var!(space-md);
548 text-align: "center";
549 font-size: var!(font-sm);
550 color: var!(muted-foreground);
551 min-width: "0px";
552 overflow: "hidden";
553 }
554
555 pub c_euv_footer_item {
563 display: "inline-block";
564 min-width: "0px";
565 max-width: "100%";
566 overflow: "hidden";
567 text-overflow: "ellipsis";
568 white-space: "nowrap";
569 vertical-align: "middle";
570 }
571
572 pub c_euv_footer_item_link {
574 c_euv_footer_item();
575 color: "inherit";
576 text-decoration: "none";
577 :hover {
578 color: var!(accent);
579 }
580 }
581
582 pub c_euv_footer_item_icon {
589 display: "inline-block";
590 height: var!(space-xl);
591 width: "auto";
592 vertical-align: "middle";
593 margin-right: var!(space-2xs);
594 }
595
596 pub c_euv_doc_layout {
597 display: "flex";
598 gap: var!(space-4xl);
599 width: "100%";
600 min-width: "0px";
601 max-width: "1080px";
602 margin: "0px auto";
603 min-height: "100%";
614 flex-shrink: "0";
622 }
623
624 pub c_euv_doc_content {
625 flex: "1";
647 min-width: "0px";
648 max-width: var!(content-max-width);
649 display: "flex";
650 flex-direction: "column";
651 justify-content: "space-between";
652 }
653
654 pub c_euv_doc_body {
655 display: "flex";
662 flex-direction: "column";
663 flex: "0 0 auto";
667 min-width: "0px";
668 }
669
670 pub c_euv_doc_tail {
671 display: "block";
677 }
678
679 pub c_euv_doc_toc {
680 width: "200px";
681 flex-shrink: "0";
682 position: "sticky";
690 top: var!(padding-main-top);
691 @media ((max-width: 1100px)) {
692 display: "none";
693 }
694 }
695
696 pub c_euv_display_contents {
704 display: "contents";
705 }
706
707 pub c_home_layout {
712 display: "flex";
721 flex-direction: "column";
722 width: "100%";
723 min-width: "0px";
724 min-height: "100%";
725 flex-shrink: "0";
726 margin: "0px auto";
727 max-width: var!(content-max-width);
728 }
729
730 pub c_home_content {
731 flex: "1";
737 min-width: "0px";
738 display: "flex";
739 flex-direction: "column";
740 justify-content: "space-between";
741 }
742
743 pub c_home_body {
744 display: "flex";
749 flex-direction: "column";
750 flex-shrink: "0";
751 }
752
753 pub c_home_tail {
754 display: "block";
759 flex-shrink: "0";
760 }
761
762 pub(crate) c_euv_tabs {
763 display: "flex";
764 flex-direction: "column";
765 width: "100%";
766 }
767
768 pub(crate) c_euv_tabs_bar {
769 display: "flex";
770 border-bottom: format!("1px dashed {}", var!(border));
771 margin-bottom: var!(gap-component);
772 gap: var!(gap-element);
773 @media ((max-width: 767px)) {
774 flex-wrap: "wrap";
775 }
776 }
777
778 pub(crate) c_euv_tab_item {
779 padding: format!("{} {}", var!(space-md), var!(space-xl));
780 cursor: "pointer";
781 font-size: var!(font-base);
782 font-weight: "500";
783 border-bottom: "2px solid transparent";
784 color: "inherit";
785 background: "transparent";
786 touch-action: "manipulation";
787 user-select: "none";
788 -webkit-user-select: "none";
789 white-space: "nowrap";
790 :hover {
791 background: var!(accent-muted);
792 color: var!(accent);
793 }
794 }
795
796 pub(crate) c_euv_tab_item_active {
797 padding: format!("{} {}", var!(space-md), var!(space-xl));
798 cursor: "pointer";
799 font-size: var!(font-base);
800 font-weight: "500";
801 border-bottom: format!("2px solid {}", var!(accent));
802 color: var!(text-on-accent);
803 background: var!(accent);
804 touch-action: "manipulation";
805 user-select: "none";
806 -webkit-user-select: "none";
807 white-space: "nowrap";
808 }
809
810 pub(crate) c_euv_tabs_panel {
811 padding: format!("{} 0px", var!(gap-element));
812 }
813
814 pub(crate) c_euv_collapse_item {
815 border-bottom: format!("1px dashed {}", var!(border));
816 }
817
818 pub(crate) c_euv_collapse_header {
819 display: "flex";
820 align-items: "center";
821 gap: var!(space-sm);
822 width: "100%";
823 min-height: var!(min-height-base);
824 padding: format!("{} 0px", var!(space-sm));
825 cursor: "pointer";
826 text-align: "left";
827 font-size: var!(font-base);
828 font-weight: "500";
829 color: var!(foreground);
830 background: "transparent";
831 border: "none";
832 outline: "none";
833 touch-action: "manipulation";
834 user-select: "none";
835 -webkit-user-select: "none";
836 :hover {
837 background: var!(accent-muted);
838 color: var!(accent);
839 }
840 }
841
842 pub(crate) c_euv_collapse_header_active {
843 display: "flex";
844 align-items: "center";
845 gap: var!(space-sm);
846 width: "100%";
847 min-height: var!(min-height-base);
848 padding: format!("{} 0px", var!(space-sm));
849 cursor: "pointer";
850 text-align: "left";
851 font-size: var!(font-base);
852 font-weight: "600";
853 color: var!(accent);
854 background: var!(accent-muted);
855 border: "none";
856 outline: "none";
857 touch-action: "manipulation";
858 user-select: "none";
859 -webkit-user-select: "none";
860 }
861
862 pub(crate) c_euv_collapse_body {
863 overflow: "hidden";
864 font-size: var!(font-base);
865 color: var!(foreground);
866 transition: format!("max-height {} {}, opacity {} {}", var!(duration-normal), var!(ease-out), var!(duration-normal), var!(ease-out));
867 }
868
869 pub(crate) c_euv_collapse_body_open {
870 overflow: "hidden";
871 max-height: "none";
872 opacity: "1";
873 padding-bottom: var!(space-md);
874 font-size: var!(font-base);
875 color: var!(foreground);
876 transition: format!("max-height {} {}, opacity {} {}", var!(duration-normal), var!(ease-out), var!(duration-normal), var!(ease-out));
877 }
878
879 pub(crate) c_euv_collapse_body_closed {
880 overflow: "hidden";
881 max-height: "0px";
882 opacity: "0";
883 font-size: var!(font-base);
884 color: var!(foreground);
885 transition: format!("max-height {} {}, opacity {} {}", var!(duration-normal), var!(ease-out), var!(duration-normal), var!(ease-out));
886 }
887
888 pub(crate) c_euv_breadcrumb {
889 display: "flex";
890 align-items: "center";
891 flex-wrap: "wrap";
892 gap: var!(space-xs);
893 font-size: var!(font-sm);
894 }
895
896 pub(crate) c_euv_breadcrumb_item {
897 font-size: var!(font-sm);
898 color: var!(muted-foreground);
899 cursor: "pointer";
900 text-decoration: "none";
901 touch-action: "manipulation";
902 user-select: "none";
903 -webkit-user-select: "none";
904 :hover {
905 background: var!(accent-muted);
906 color: var!(accent);
907 }
908 }
909
910 pub(crate) c_euv_breadcrumb_sep {
911 font-size: var!(font-sm);
912 color: var!(muted-foreground);
913 user-select: "none";
914 -webkit-user-select: "none";
915 }
916
917 pub(crate) c_euv_breadcrumb_current {
918 font-size: var!(font-sm);
919 font-weight: "600";
920 color: var!(foreground);
921 cursor: "default";
922 }
923
924 pub(crate) c_euv_divider {
925 display: "block";
926 width: "100%";
927 }
928
929 pub(crate) c_euv_divider_horizontal {
930 display: "block";
931 width: "100%";
932 height: "0px";
933 border: "none";
934 border-top: format!("1px solid {}", var!(border));
935 margin: format!("{} 0px", var!(space-lg));
936 }
937
938 pub(crate) c_euv_divider_vertical {
939 display: "block";
940 width: "0px";
941 height: "auto";
942 align-self: "center";
943 border: "none";
944 border-left: format!("1px solid {}", var!(border));
945 margin: format!("0px {}", var!(space-sm));
946 }
947
948 pub(crate) c_euv_divider_labeled {
949 display: "flex";
950 align-items: "center";
951 gap: var!(space-sm);
952 width: "100%";
953 margin: format!("{} 0px", var!(space-lg));
954 }
955
956 pub(crate) c_euv_divider_label_text {
957 font-size: var!(font-xs);
958 font-weight: "500";
959 color: var!(muted-foreground);
960 white-space: "nowrap";
961 user-select: "none";
962 -webkit-user-select: "none";
963 }
964
965 pub(crate) c_card {
970 color: var!(foreground);
971 box-sizing: "border-box";
972 margin-top: var!(page-block-gap);
979 @media ((max-width: 767px)) {
980 margin-top: var!(page-block-gap-mobile);
981 }
982 }
983
984 pub(crate) c_modal_close_button {
985 display: "flex";
986 justify-content: "center";
987 align-items: "center";
988 color: "inherit";
989 border: "none";
990 padding: format!("{} {}", var!(space-sm), var!(space-md));
991 cursor: "pointer";
992 font-size: "20px";
993 font-weight: "400";
994 vertical-align: "middle";
995 outline: "none";
996 opacity: "1";
997 flex-shrink: "0";
998 transition: format!("opacity {} {}", var!(duration-fast), var!(ease-out));
999 :hover {
1000 opacity: "1";
1001 }
1002 :active {
1003 opacity: "1";
1004 }
1005 :focus {
1006 outline: "none";
1007 }
1008 }
1009
1010 pub(crate) c_euv_button_outline_md {
1011 display: "flex";
1012 justify-content: "center";
1013 align-items: "center";
1014 gap: var!(space-sm);
1015 flex: "1 1 120px";
1016 height: "42px";
1017 padding: format!("0px {}", var!(space-xl));
1018 color: var!(foreground);
1019 border: format!("1px solid {}", var!(border));
1020 cursor: "pointer";
1021 font-size: var!(font-base);
1022 font-weight: "500";
1023 outline: "none";
1024 white-space: "nowrap";
1025 user-select: "none";
1026 -webkit-user-select: "none";
1027 box-sizing: "border-box";
1028 :focus-visible {
1029 outline: "none";
1030 }
1031 :disabled {
1032 background: var!(muted-foreground);
1033 cursor: "not-allowed";
1034 opacity: "1";
1035 }
1036 }
1037
1038 pub(crate) c_badge {
1043 display: "inline-block";
1049 vertical-align: "middle";
1050 text-align: "center";
1051 line-height: "1";
1052 box-sizing: "border-box";
1053 color: var!(text-on-accent);
1054 padding: format!("{} {}", var!(space-2xs), var!(space-sm));
1055 border: format!("1px solid {}", var!(accent));
1056 font-size: var!(font-xs);
1057 font-weight: "600";
1058 cursor: "pointer";
1059 background: var!(accent);
1060 :focus-visible {
1061 outline: "none";
1062 }
1063 @media ((max-width: 767px)) {
1064 padding: format!("{} {}", var!(space-2xs), var!(space-xs));
1065 font-size: var!(font-xs);
1066 }
1067 }
1068
1069 pub(crate) c_badge_outline {
1070 display: "inline-block";
1071 vertical-align: "middle";
1072 text-align: "center";
1073 line-height: "1";
1074 box-sizing: "border-box";
1075 color: var!(foreground);
1076 padding: format!("{} {}", var!(space-2xs), var!(space-sm));
1077 font-size: var!(font-xs);
1078 font-weight: "600";
1079 cursor: "pointer";
1080 border: format!("1.5px solid {}", var!(border));
1081 @media ((max-width: 767px)) {
1082 padding: format!("{} {}", var!(space-2xs), var!(space-xs));
1083 font-size: var!(font-xs);
1084 }
1085 }
1086
1087 pub(crate) c_euv_tag_solid_black {
1088 display: "inline-block";
1089 vertical-align: "middle";
1090 text-align: "center";
1091 line-height: "1";
1092 color: var!(text-on-accent);
1093 padding: format!("{} {}", var!(space-xs), var!(space-md));
1094 font-size: var!(font-sm);
1095 font-weight: "600";
1096 cursor: "pointer";
1097 background: var!(accent);
1098 border: format!("1px solid {}", var!(accent));
1099 box-sizing: "border-box";
1100 }
1101
1102 pub(crate) c_euv_tag_solid_white {
1103 display: "inline-block";
1104 vertical-align: "middle";
1105 text-align: "center";
1106 line-height: "1";
1107 color: var!(foreground);
1108 padding: format!("{} {}", var!(space-2xs), var!(space-sm));
1109 font-size: var!(font-xs);
1110 font-weight: "600";
1111 cursor: "pointer";
1112 border: format!("1.5px solid {}", var!(accent));
1113 box-sizing: "border-box";
1114 }
1115
1116 pub(crate) c_euv_tag_outline_black {
1121 display: "inline-block";
1122 vertical-align: "middle";
1123 text-align: "center";
1124 line-height: "1";
1125 color: var!(accent);
1126 padding: format!("{} {}", var!(space-2xs), var!(space-sm));
1127 font-size: var!(font-xs);
1128 font-weight: "600";
1129 cursor: "pointer";
1130 border: format!("1.5px solid {}", var!(accent));
1131 box-sizing: "border-box";
1132 }
1133
1134 pub(crate) c_euv_tag_outline_white {
1135 display: "inline-block";
1136 vertical-align: "middle";
1137 text-align: "center";
1138 line-height: "1";
1139 color: var!(foreground);
1140 padding: format!("{} {}", var!(space-xs), var!(space-md));
1141 font-size: var!(font-sm);
1142 font-weight: "600";
1143 cursor: "pointer";
1144 border: format!("1.5px solid {}", var!(border));
1145 box-sizing: "border-box";
1146 }
1147
1148 pub(crate) c_euv_pagination_label {
1149 font-size: var!(font-xs);
1150 color: var!(muted-foreground);
1151 text-transform: "uppercase";
1152 letter-spacing: "0.08em";
1153 }
1154
1155 pub(crate) c_euv_pagination_text {
1156 font-size: var!(font-base);
1157 font-weight: "600";
1158 color: var!(accent);
1159 white-space: "nowrap";
1165 overflow: "hidden";
1166 text-overflow: "ellipsis";
1167 min-width: "0px";
1168 }
1169
1170 pub(crate) c_euv_pagination_next {
1171 text-align: "right";
1172 }
1173
1174 pub(crate) c_euv_pagination_spacer {
1175 flex: "1";
1176 }
1177
1178 pub(crate) c_euv_markdown {
1183 width: "100%";
1184 min-width: "0px";
1185 }
1186
1187 pub(crate) c_euv_markdown_table_scroll {
1196 overflow-x: "auto";
1197 max-width: "100%";
1198 min-width: "0px";
1199 }
1200
1201 pub(crate) c_euv_result {
1206 display: "flex";
1207 flex-direction: "column";
1208 align-items: "center";
1209 justify-content: "center";
1210 text-align: "center";
1211 gap: var!(space-md);
1212 padding: format!("{} {}", var!(space-4xl), var!(space-md));
1213 min-height: "50%";
1218 }
1219
1220 pub(crate) c_euv_result_code {
1221 font-size: var!(font-6xl);
1222 font-weight: "700";
1223 line-height: "1";
1224 letter-spacing: "-0.02em";
1225 }
1226
1227 pub(crate) c_euv_result_title {
1228 font-size: var!(font-2xl);
1229 font-weight: "600";
1230 margin: "0px";
1231 }
1232
1233 pub(crate) c_euv_result_description {
1234 color: var!(muted-foreground);
1235 margin: "0px";
1236 }
1237
1238 pub(crate) c_euv_result_actions {
1239 display: "flex";
1240 gap: var!(space-md);
1241 margin-top: var!(space-lg);
1242 }
1243
1244 pub(crate) c_euv_empty {
1249 display: "flex";
1250 flex-direction: "column";
1251 align-items: "center";
1252 justify-content: "center";
1253 gap: var!(space-sm);
1254 width: "100%";
1255 padding: var!(space-3xl);
1256 box-sizing: "border-box";
1257 text-align: "center";
1258 }
1259
1260 pub(crate) c_euv_empty_icon {
1261 font-size: var!(font-3xl);
1262 line-height: "1";
1263 color: var!(muted-foreground);
1264 }
1265
1266 pub(crate) c_euv_empty_text {
1267 font-size: var!(font-lg);
1268 font-weight: "600";
1269 color: var!(foreground);
1270 }
1271
1272 pub(crate) c_euv_empty_desc {
1273 font-size: var!(font-sm);
1274 color: var!(muted-foreground);
1275 max-width: var!(text-measure);
1276 }
1277
1278 pub(crate) c_euv_empty_action {
1279 margin-top: var!(space-sm);
1280 }
1281
1282 pub(crate) c_euv_text {
1287 margin: "0px";
1288 color: var!(foreground);
1289 font-size: var!(font-base);
1290 line-height: "1.6";
1291 }
1292
1293 pub(crate) c_euv_text_title {
1294 margin: "0px";
1295 color: var!(foreground);
1296 font-size: var!(font-xl);
1297 font-weight: "600";
1298 line-height: "1.4";
1299 }
1300
1301 pub(crate) c_euv_text_title_lg {
1302 margin: "0px";
1303 color: var!(foreground);
1304 font-size: var!(font-2xl);
1305 font-weight: "600";
1306 line-height: "1.35";
1307 }
1308
1309 pub(crate) c_euv_text_title_sm {
1310 margin: "0px";
1311 color: var!(foreground);
1312 font-size: var!(font-lg);
1313 font-weight: "600";
1314 line-height: "1.4";
1315 }
1316
1317 pub(crate) c_euv_text_paragraph {
1318 margin: "0px";
1319 color: var!(foreground);
1320 font-size: var!(font-base);
1321 line-height: "1.6";
1322 }
1323
1324 pub(crate) c_euv_text_secondary {
1325 margin: "0px";
1326 color: var!(muted-foreground);
1327 font-size: var!(font-sm);
1328 line-height: "1.6";
1329 }
1330
1331 pub(crate) c_euv_text_mono {
1332 margin: "0px";
1333 color: var!(foreground);
1334 font-size: var!(font-sm);
1335 font-family: "ui-monospace, SFMono-Regular, Menlo, Consolas, monospace";
1336 line-height: "1.5";
1337 }
1338
1339 pub(crate) c_euv_text_deletion {
1340 margin: "0px";
1341 color: var!(muted-foreground);
1342 font-size: var!(font-base);
1343 text-decoration: "line-through";
1344 line-height: "1.6";
1345 }
1346
1347 pub(crate) c_euv_text_underline {
1348 margin: "0px";
1349 color: var!(foreground);
1350 font-size: var!(font-base);
1351 text-decoration: "underline";
1352 line-height: "1.6";
1353 }
1354
1355 pub(crate) c_euv_link {
1360 display: "inline";
1361 color: var!(foreground);
1362 font-size: var!(font-base);
1363 text-decoration: "underline";
1364 text-underline-offset: "2px";
1365 cursor: "pointer";
1366 touch-action: "manipulation";
1367 :hover {
1368 color: var!(muted-foreground);
1369 }
1370 }
1371
1372 pub(crate) c_euv_link_disabled {
1373 display: "inline";
1374 color: var!(muted-foreground);
1375 font-size: var!(font-base);
1376 text-decoration: "none";
1377 cursor: "not-allowed";
1378 opacity: "0.5";
1379 }
1380
1381 pub(crate) c_euv_image {
1386 display: "block";
1387 max-width: "100%";
1388 height: "auto";
1389 border: "none";
1390 background: "transparent";
1391 }
1392
1393 pub(crate) c_euv_image_placeholder {
1394 display: "flex";
1395 align-items: "center";
1396 justify-content: "center";
1397 width: "100%";
1398 min-height: var!(min-height-base);
1399 padding: var!(space-md);
1400 border: format!("1px dashed {}", var!(border));
1401 background: var!(background);
1402 color: var!(muted-foreground);
1403 font-size: var!(font-sm);
1404 text-align: "center";
1405 box-sizing: "border-box";
1406 }
1407
1408 pub(crate) c_euv_image_failed {
1409 display: "flex";
1410 align-items: "center";
1411 justify-content: "center";
1412 width: "100%";
1413 min-height: var!(min-height-base);
1414 padding: var!(space-md);
1415 border: format!("1px dashed {}", var!(border));
1416 background: var!(background);
1417 color: var!(muted-foreground);
1418 font-size: var!(font-sm);
1419 text-align: "center";
1420 box-sizing: "border-box";
1421 }
1422
1423 pub(crate) c_euv_carousel {
1428 position: "relative";
1429 display: "flex";
1430 flex-direction: "column";
1431 width: "100%";
1432 overflow: "hidden";
1433 }
1434
1435 pub(crate) c_euv_carousel_track {
1436 display: "flex";
1437 flex-direction: "row";
1438 width: "100%";
1439 transition: format!("transform {} {}", var!(duration-normal), var!(ease-out));
1440 }
1441
1442 pub(crate) c_euv_carousel_slide {
1443 flex: "0 0 100%";
1444 width: "100%";
1445 min-width: "100%";
1446 box-sizing: "border-box";
1447 }
1448
1449 pub(crate) c_euv_carousel_dots {
1450 display: "flex";
1451 align-items: "center";
1452 justify-content: "center";
1453 gap: var!(space-sm);
1454 padding-top: var!(space-sm);
1455 }
1456
1457 pub(crate) c_euv_carousel_dot {
1458 width: var!(space-sm);
1459 height: var!(space-sm);
1460 padding: "0px";
1461 border: format!("1px solid {}", var!(border));
1462 border-radius: "0px";
1463 background: var!(background);
1464 cursor: "pointer";
1465 touch-action: "manipulation";
1466 :hover {
1467 background: var!(accent-muted);
1468 }
1469 }
1470
1471 pub(crate) c_euv_carousel_dot_active {
1472 width: var!(space-sm);
1473 height: var!(space-sm);
1474 padding: "0px";
1475 border: format!("1px solid {}", var!(border));
1476 border-radius: "0px";
1477 background: var!(accent);
1478 cursor: "pointer";
1479 touch-action: "manipulation";
1480 :hover {
1481 background: var!(accent);
1482 }
1483 }
1484
1485 pub(crate) c_euv_anchor {
1490 display: "flex";
1491 flex-direction: "column";
1492 gap: var!(space-xs);
1493 width: "100%";
1494 }
1495
1496 pub(crate) c_euv_anchor_title {
1497 font-size: var!(font-sm);
1498 font-weight: "600";
1499 color: var!(foreground);
1500 margin-bottom: var!(space-xs);
1501 }
1502
1503 pub(crate) c_euv_anchor_link {
1504 display: "block";
1505 padding: format!("{} 0px", var!(space-2xs));
1506 color: var!(muted-foreground);
1507 font-size: var!(font-sm);
1508 text-decoration: "none";
1509 cursor: "pointer";
1510 touch-action: "manipulation";
1511 :hover {
1512 color: var!(foreground);
1513 }
1514 }
1515
1516 pub(crate) c_euv_anchor_link_active {
1517 display: "block";
1518 padding: format!("{} 0px", var!(space-2xs));
1519 color: var!(foreground);
1520 font-size: var!(font-sm);
1521 font-weight: "600";
1522 text-decoration: "none";
1523 cursor: "pointer";
1524 touch-action: "manipulation";
1525 :hover {
1526 color: var!(foreground);
1527 }
1528 }
1529
1530 pub(crate) c_euv_watermark {
1535 position: "relative";
1536 display: "block";
1537 width: "100%";
1538 }
1539
1540 pub(crate) c_euv_watermark_layer {
1541 position: "absolute";
1542 top: "0px";
1543 left: "0px";
1544 right: "0px";
1545 bottom: "0px";
1546 z-index: "1";
1547 display: "flex";
1548 align-items: "center";
1549 justify-content: "center";
1550 overflow: "hidden";
1551 pointer-events: "none";
1552 }
1553
1554 pub(crate) c_euv_watermark_text {
1555 color: var!(muted-foreground);
1556 font-size: var!(font-2xl);
1557 font-weight: "700";
1558 letter-spacing: "0.1em";
1559 opacity: "0.12";
1560 transform: "rotate(-22deg)";
1561 user-select: "none";
1562 -webkit-user-select: "none";
1563 white-space: "nowrap";
1564 }
1565
1566 pub(crate) c_euv_back_top_visible {
1572 position: "fixed";
1573 right: var!(space-xl);
1574 bottom: var!(space-xl);
1575 z-index: "900";
1576 display: "flex";
1577 align-items: "center";
1578 justify-content: "center";
1579 width: "40px";
1580 height: "40px";
1581 padding: "0px";
1582 border: format!("1px solid {}", var!(border));
1583 background: var!(background);
1584 color: var!(foreground);
1585 font-size: var!(font-sm);
1586 line-height: "1";
1587 cursor: "pointer";
1588 box-shadow: var!(shadow-sm);
1589 touch-action: "manipulation";
1590 :hover {
1591 background: var!(accent-muted);
1592 color: var!(accent);
1593 }
1594 @media ((max-width: 767px)) {
1595 right: var!(space-lg);
1596 bottom: var!(space-lg);
1597 }
1598 }
1599
1600 pub(crate) c_euv_back_top_hidden {
1601 position: "fixed";
1602 right: var!(space-xl);
1603 bottom: var!(space-xl);
1604 z-index: "900";
1605 display: "none";
1606 align-items: "center";
1607 justify-content: "center";
1608 width: "40px";
1609 height: "40px";
1610 padding: "0px";
1611 border: format!("1px solid {}", var!(border));
1612 background: var!(background);
1613 color: var!(foreground);
1614 font-size: var!(font-sm);
1615 line-height: "1";
1616 cursor: "pointer";
1617 box-shadow: var!(shadow-sm);
1618 touch-action: "manipulation";
1619 :hover {
1620 background: var!(accent-muted);
1621 color: var!(accent);
1622 }
1623 @media ((max-width: 767px)) {
1624 right: var!(space-lg);
1625 bottom: var!(space-lg);
1626 }
1627 }
1628
1629 pub(crate) c_euv_splitter {
1634 display: "flex";
1635 align-items: "stretch";
1636 width: "100%";
1637 height: "100%";
1638 min-height: "0px";
1639 }
1640
1641 pub(crate) c_euv_splitter_pane {
1642 flex: "1";
1643 min-width: "0px";
1644 min-height: "0px";
1645 overflow: "auto";
1646 }
1647
1648 pub(crate) c_euv_splitter_bar {
1649 flex: "0 0 6px";
1650 align-self: "stretch";
1651 background: var!(border);
1652 cursor: "col-resize";
1653 touch-action: "none";
1654 user-select: "none";
1655 -webkit-user-select: "none";
1656 :hover {
1657 background: var!(accent);
1658 }
1659 }
1660
1661 pub(crate) c_euv_grid {
1666 display: "flex";
1667 flex-wrap: "wrap";
1668 width: "100%";
1669 box-sizing: "border-box";
1670 }
1671
1672 pub(crate) c_euv_grid_gutter {
1681 display: "flex";
1682 flex-wrap: "wrap";
1683 width: "100%";
1684 box-sizing: "border-box";
1685 margin-left: {
1686 format!("calc({} / -2)", var!(gap-component))
1687 };
1688 margin-right: {
1689 format!("calc({} / -2)", var!(gap-component))
1690 };
1691 }
1692
1693 pub(crate) c_euv_grid_col {
1697 display: "block";
1698 flex: "0 0 auto";
1699 box-sizing: "border-box";
1700 min-width: "0px";
1701 }
1702
1703 pub(crate) c_euv_grid_gutter_col {
1707 display: "block";
1708 flex: "0 0 auto";
1709 box-sizing: "border-box";
1710 min-width: "0px";
1711 padding-left: {
1712 format!("calc({} / 2)", var!(gap-component))
1713 };
1714 padding-right: {
1715 format!("calc({} / 2)", var!(gap-component))
1716 };
1717 }
1718
1719 pub(crate) c_euv_grid_col_offset {
1722 display: "block";
1723 flex: "0 0 auto";
1724 box-sizing: "border-box";
1725 min-width: "0px";
1726 }
1727
1728 pub(crate) c_euv_grid_gutter_col_offset {
1733 display: "block";
1734 flex: "0 0 auto";
1735 box-sizing: "border-box";
1736 min-width: "0px";
1737 padding-left: {
1738 format!("calc({} / 2)", var!(gap-component))
1739 };
1740 padding-right: {
1741 format!("calc({} / 2)", var!(gap-component))
1742 };
1743 }
1744
1745 pub(crate) c_euv_affix {
1750 position: "sticky";
1751 z-index: "10";
1752 width: "100%";
1753 box-sizing: "border-box";
1754 }
1755}
1756
1757#[cfg(feature = "custom-styles")]
1758class! {
1759 pub c_card_title {}
1760
1761 pub c_primary_button {}
1766
1767 pub c_button_controls {}
1772
1773 pub c_euv_button_primary_md {}
1778
1779 pub c_error_box {}
1784
1785 pub c_success_box {}
1786
1787 pub c_counter_row {}
1792
1793 pub c_counter_text {}
1794
1795 pub c_counter_value {}
1796
1797 pub c_counter_value_row {}
1798
1799 pub c_badge_row {}
1800
1801 pub c_badge_hint {}
1802
1803 pub c_tab_bar {}
1808
1809 pub c_tab_item_active {}
1810
1811 pub c_tab_item_inactive {}
1812
1813 pub c_tab_content {}
1814
1815 pub c_tab_text {}
1816
1817 pub c_tab_text_muted {}
1818
1819 pub c_tab_text_input {}
1820
1821 pub c_list_input {}
1826
1827 pub c_list_input_error {}
1828
1829 pub c_list_error_text {}
1830
1831 pub c_inline_input_button_wrap {}
1832
1833 pub c_list_ul {}
1834
1835 pub c_list_item {}
1836
1837 pub c_list_item_text {}
1838
1839 pub c_list_item_button {}
1840
1841 pub c_anim_fade_in {}
1846
1847 pub c_anim_spin_container {}
1848
1849 pub c_anim_spin {}
1850
1851 pub c_anim_spin_stopped {}
1852
1853 pub c_anim_pulse_container {}
1854
1855 pub c_anim_pulse {}
1856
1857 pub c_anim_pulse_stopped {}
1858
1859 pub c_progress_container {}
1860
1861 pub c_progress_bar_running {}
1862
1863 pub c_progress_bar_stopped {}
1864
1865 pub c_anim_scale_box {}
1866
1867 pub c_element_stack {}
1872
1873 pub c_switcher {}
1874
1875 pub c_switcher_col {}
1876
1877 pub c_hint {}
1882
1883 pub c_euv_pagination {}
1888
1889 pub c_euv_pagination_link {}
1890
1891 pub c_euv_footer {}
1892
1893 pub c_euv_footer_item {}
1901
1902 pub c_euv_footer_item_link {}
1904
1905 pub c_euv_footer_item_icon {}
1912
1913 pub c_euv_doc_layout {}
1914
1915 pub c_euv_doc_content {}
1916
1917 pub c_euv_doc_body {}
1918
1919 pub c_euv_doc_tail {}
1920
1921 pub c_euv_doc_toc {}
1922
1923 pub c_euv_display_contents {}
1931
1932 pub c_home_layout {}
1937
1938 pub c_home_content {}
1939
1940 pub c_home_body {}
1941
1942 pub c_home_tail {}
1943
1944 pub(crate) c_euv_tabs {}
1945
1946 pub(crate) c_euv_tabs_bar {}
1947
1948 pub(crate) c_euv_tab_item {}
1949
1950 pub(crate) c_euv_tab_item_active {}
1951
1952 pub(crate) c_euv_tabs_panel {}
1953
1954 pub(crate) c_euv_collapse_item {}
1955
1956 pub(crate) c_euv_collapse_header {}
1957
1958 pub(crate) c_euv_collapse_header_active {}
1959
1960 pub(crate) c_euv_collapse_body {}
1961
1962 pub(crate) c_euv_collapse_body_open {}
1963
1964 pub(crate) c_euv_collapse_body_closed {}
1965
1966 pub(crate) c_euv_breadcrumb {}
1967
1968 pub(crate) c_euv_breadcrumb_item {}
1969
1970 pub(crate) c_euv_breadcrumb_sep {}
1971
1972 pub(crate) c_euv_breadcrumb_current {}
1973
1974 pub(crate) c_euv_divider {}
1975
1976 pub(crate) c_euv_divider_horizontal {}
1977
1978 pub(crate) c_euv_divider_vertical {}
1979
1980 pub(crate) c_euv_divider_labeled {}
1981
1982 pub(crate) c_euv_divider_label_text {}
1983
1984 pub(crate) c_card {}
1989
1990 pub(crate) c_modal_close_button {}
1991
1992 pub(crate) c_euv_button_outline_md {}
1993
1994 pub(crate) c_badge {}
1999
2000 pub(crate) c_badge_outline {}
2001
2002 pub(crate) c_euv_tag_solid_black {}
2003
2004 pub(crate) c_euv_tag_solid_white {}
2005
2006 pub(crate) c_euv_tag_outline_black {}
2011
2012 pub(crate) c_euv_tag_outline_white {}
2013
2014 pub(crate) c_euv_pagination_label {}
2015
2016 pub(crate) c_euv_pagination_text {}
2017
2018 pub(crate) c_euv_pagination_next {}
2019
2020 pub(crate) c_euv_pagination_spacer {}
2021
2022 pub(crate) c_euv_markdown {}
2027
2028 pub(crate) c_euv_markdown_table_scroll {}
2037
2038 pub(crate) c_euv_result {}
2043
2044 pub(crate) c_euv_result_code {}
2045
2046 pub(crate) c_euv_result_title {}
2047
2048 pub(crate) c_euv_result_description {}
2049
2050 pub(crate) c_euv_result_actions {}
2051
2052 pub(crate) c_euv_empty {}
2057
2058 pub(crate) c_euv_empty_icon {}
2059
2060 pub(crate) c_euv_empty_text {}
2061
2062 pub(crate) c_euv_empty_desc {}
2063
2064 pub(crate) c_euv_empty_action {}
2065
2066 pub(crate) c_euv_text {}
2071
2072 pub(crate) c_euv_text_title {}
2073
2074 pub(crate) c_euv_text_title_lg {}
2075
2076 pub(crate) c_euv_text_title_sm {}
2077
2078 pub(crate) c_euv_text_paragraph {}
2079
2080 pub(crate) c_euv_text_secondary {}
2081
2082 pub(crate) c_euv_text_mono {}
2083
2084 pub(crate) c_euv_text_deletion {}
2085
2086 pub(crate) c_euv_text_underline {}
2087
2088 pub(crate) c_euv_link {}
2093
2094 pub(crate) c_euv_link_disabled {}
2095
2096 pub(crate) c_euv_image {}
2101
2102 pub(crate) c_euv_image_placeholder {}
2103
2104 pub(crate) c_euv_image_failed {}
2105
2106 pub(crate) c_euv_carousel {}
2111
2112 pub(crate) c_euv_carousel_track {}
2113
2114 pub(crate) c_euv_carousel_slide {}
2115
2116 pub(crate) c_euv_carousel_dots {}
2117
2118 pub(crate) c_euv_carousel_dot {}
2119
2120 pub(crate) c_euv_carousel_dot_active {}
2121
2122 pub(crate) c_euv_anchor {}
2127
2128 pub(crate) c_euv_anchor_title {}
2129
2130 pub(crate) c_euv_anchor_link {}
2131
2132 pub(crate) c_euv_anchor_link_active {}
2133
2134 pub(crate) c_euv_watermark {}
2139
2140 pub(crate) c_euv_watermark_layer {}
2141
2142 pub(crate) c_euv_watermark_text {}
2143
2144 pub(crate) c_euv_back_top_visible {}
2150
2151 pub(crate) c_euv_back_top_hidden {}
2152
2153 pub(crate) c_euv_splitter {}
2158
2159 pub(crate) c_euv_splitter_pane {}
2160
2161 pub(crate) c_euv_splitter_bar {}
2162
2163 pub(crate) c_euv_grid {}
2168
2169 pub(crate) c_euv_grid_gutter {}
2178
2179 pub(crate) c_euv_grid_col {}
2183
2184 pub(crate) c_euv_grid_gutter_col {}
2188
2189 pub(crate) c_euv_grid_col_offset {}
2192
2193 pub(crate) c_euv_grid_gutter_col_offset {}
2198
2199 pub(crate) c_euv_affix {}
2204}