33@tailwind utilities;
44
55: root {
6- --background : 0 0% 100% ;
7- --foreground : 20 14.3% 4.1% ;
8- --muted : 60 4.8% 95.9% ;
9- --muted-foreground : 25 5.3% 44.7% ;
10- --popover : 0 0% 100% ;
11- --popover-foreground : 20 14.3% 4.1% ;
12- --card : 0 0% 100% ;
13- --card-foreground : 20 14.3% 4.1% ;
14- --border : 20 5.9% 90% ;
15- --input : 20 5.9% 90% ;
16- --primary : 207 90% 54% ;
17- --primary-foreground : 211 100% 99% ;
18- --secondary : 60 4.8% 95.9% ;
19- --secondary-foreground : 24 9.8% 10% ;
20- --accent : 60 4.8% 95.9% ;
21- --accent-foreground : 24 9.8% 10% ;
22- --destructive : 0 84.2% 60.2% ;
23- --destructive-foreground : 60 9.1% 97.8% ;
24- --ring : 20 14.3% 4.1% ;
25- --radius : 0.5rem ;
26- }
27- .dark {
28- --background : 240 10% 3.9% ;
29- --foreground : 0 0% 98% ;
30- --muted : 240 3.7% 15.9% ;
31- --muted-foreground : 240 5% 64.9% ;
32- --popover : 240 10% 3.9% ;
33- --popover-foreground : 0 0% 98% ;
34- --card : 240 10% 3.9% ;
35- --card-foreground : 0 0% 98% ;
36- --border : 240 3.7% 15.9% ;
37- --input : 240 3.7% 15.9% ;
38- --primary : 207 90% 54% ;
39- --primary-foreground : 211 100% 99% ;
40- --secondary : 240 3.7% 15.9% ;
41- --secondary-foreground : 0 0% 98% ;
42- --accent : 240 3.7% 15.9% ;
43- --accent-foreground : 0 0% 98% ;
44- --destructive : 0 62.8% 30.6% ;
45- --destructive-foreground : 0 0% 98% ;
46- --ring : 240 4.9% 83.9% ;
47- --radius : 0.5rem ;
48- }
6+ --background : 0 0% 100% ;
7+ --foreground : 20 14.3% 4.1% ;
8+ --muted : 60 4.8% 95.9% ;
9+ --muted-foreground : 25 5.3% 44.7% ;
10+ --popover : 0 0% 100% ;
11+ --popover-foreground : 20 14.3% 4.1% ;
12+ --card : 0 0% 100% ;
13+ --card-foreground : 20 14.3% 4.1% ;
14+ --border : 20 5.9% 90% ;
15+ --input : 20 5.9% 90% ;
16+ --primary : 207 90% 54% ;
17+ --primary-foreground : 211 100% 99% ;
18+ --secondary : 60 4.8% 95.9% ;
19+ --secondary-foreground : 24 9.8% 10% ;
20+ --accent : 60 4.8% 95.9% ;
21+ --accent-foreground : 24 9.8% 10% ;
22+ --destructive : 0 84.2% 60.2% ;
23+ --destructive-foreground : 60 9.1% 97.8% ;
24+ --ring : 20 14.3% 4.1% ;
25+ --radius : 0.5rem ;
26+ }
27+
28+ .dark {
29+ --background : 240 10% 3.9% ;
30+ --foreground : 0 0% 98% ;
31+ --muted : 240 3.7% 15.9% ;
32+ --muted-foreground : 240 5% 64.9% ;
33+ --popover : 240 10% 3.9% ;
34+ --popover-foreground : 0 0% 98% ;
35+ --card : 240 10% 3.9% ;
36+ --card-foreground : 0 0% 98% ;
37+ --border : 240 3.7% 15.9% ;
38+ --input : 240 3.7% 15.9% ;
39+ --primary : 207 90% 54% ;
40+ --primary-foreground : 211 100% 99% ;
41+ --secondary : 240 3.7% 15.9% ;
42+ --secondary-foreground : 0 0% 98% ;
43+ --accent : 240 3.7% 15.9% ;
44+ --accent-foreground : 0 0% 98% ;
45+ --destructive : 0 62.8% 30.6% ;
46+ --destructive-foreground : 0 0% 98% ;
47+ --ring : 240 4.9% 83.9% ;
48+ --radius : 0.5rem ;
49+ }
4950
5051@layer base {
5152 * {
5253 @apply border-border;
5354 }
5455
55- body {
56+ /* Enhanced body styles with layout fixes */
57+ html , body {
5658 @apply font-sans antialiased bg-background text-foreground;
59+ height : 100% ;
60+ margin : 0 ;
61+ padding : 0 ;
62+ overflow-x : hidden;
63+ }
64+
65+ /* Fix for main application container to prevent bottom white space */
66+ # root {
67+ min-height : 100vh ;
68+ height : 100% ;
69+ display : flex;
70+ flex-direction : column;
71+ }
72+ }
73+
74+ @layer components {
75+ /* Layout fixes for common containers */
76+ .app-container ,
77+ .main-container {
78+ @apply min-h-screen flex flex-col;
79+ }
80+
81+ /* Content area should expand to fill remaining space */
82+ .content-area ,
83+ .snippets-container ,
84+ .main-content {
85+ @apply flex-1 overflow-y-auto;
86+ }
87+
88+ /* Grid container for snippets - prevent overflow issues */
89+ .snippets-grid {
90+ @apply grid gap-4 p-4;
91+ grid-template-columns : repeat (auto-fill, minmax (300px , 1fr ));
92+ min-height : 0 ; /* Important for grid overflow */
93+ }
94+
95+ /* Individual snippet cards */
96+ .snippet-card {
97+ @apply h-fit overflow-hidden;
98+ max-height : 400px ; /* Prevent cards from being too tall */
99+ }
100+
101+ /* Header/Navigation fixed positioning if needed */
102+ .app-header {
103+ @apply flex-shrink-0;
104+ }
105+
106+ /* Footer positioning */
107+ .app-footer {
108+ @apply mt-auto flex-shrink-0;
109+ }
110+
111+ /* Hide any unwanted bottom spacers */
112+ .bottom-spacer {
113+ display : none !important ;
114+ }
115+ }
116+
117+ @layer utilities {
118+ /* Debug utilities - add these classes temporarily to identify layout issues */
119+ .debug-layout * {
120+ outline : 1px solid red !important ;
121+ }
122+
123+ .debug-layout * : nth-child (even) {
124+ outline-color : blue !important ;
125+ }
126+
127+ /* Utility to force full height */
128+ .full-height {
129+ height : 100vh ;
130+ min-height : 100vh ;
131+ }
132+
133+ /* Utility to prevent bottom overflow */
134+ .no-bottom-space {
135+ margin-bottom : 0 !important ;
136+ padding-bottom : 0 !important ;
137+ }
138+
139+ /* Utility for proper flex containers */
140+ .flex-fill {
141+ @apply flex-1 min-h-0;
142+ }
143+ }
144+
145+ /* Specific fixes for common React app patterns */
146+ .react-app {
147+ min-height : 100vh ;
148+ display : flex;
149+ flex-direction : column;
150+ }
151+
152+ /* Fix for any absolute/fixed positioned elements at bottom */
153+ .floating-elements {
154+ position : fixed;
155+ bottom : 0 ;
156+ left : 0 ;
157+ right : 0 ;
158+ z-index : 1000 ;
159+ }
160+
161+ /* Ensure proper grid behavior in various screen sizes */
162+ @media (max-width : 768px ) {
163+ .snippets-grid {
164+ grid-template-columns : 1fr ;
165+ gap : 1rem ;
166+ padding : 1rem ;
167+ }
168+ }
169+
170+ @media (min-width : 769px ) and (max-width : 1024px ) {
171+ .snippets-grid {
172+ grid-template-columns : repeat (auto-fill, minmax (280px , 1fr ));
173+ }
174+ }
175+
176+ @media (min-width : 1025px ) {
177+ .snippets-grid {
178+ grid-template-columns : repeat (auto-fill, minmax (320px , 1fr ));
57179 }
58- }
180+ }
0 commit comments