Update style.css
#9
by
oldmonk69
- opened
style.css
CHANGED
@@ -1,85 +1,81 @@
|
|
1 |
-
|
2 |
-
|
3 |
-
|
4 |
-
|
5 |
-
--accent:#18a0e0;
|
6 |
-
--accent-2:#0bb1ff;
|
7 |
-
--glass: rgba(255,255,255,0.03);
|
8 |
-
--card: rgba(255,255,255,0.03);
|
9 |
-
--radius:12px;
|
10 |
-
font-family:'Space Grotesk',system-ui,-apple-system,'Segoe UI',Roboto,Arial;
|
11 |
-
}
|
12 |
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
background: linear-gradient(180deg,var(--bg), #051014);
|
17 |
-
color:#dbeef8;
|
18 |
-
-webkit-font-smoothing:antialiased;
|
19 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20 |
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
border-bottom:1px solid rgba(255,255,255,0.03)
|
28 |
-
}
|
29 |
-
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;height:72px}
|
30 |
-
.brand{display:flex;align-items:center;gap:12px}
|
31 |
-
.logo{width:34px;height:34px;border-radius:8px;background:linear-gradient(135deg,var(--accent-2),var(--accent));box-shadow:0 6px 18px rgba(11,177,255,0.06)}
|
32 |
-
.brand-name{font-weight:700;color:#eaf6ff}
|
33 |
-
|
34 |
-
/* nav */
|
35 |
-
.nav-links{display:flex;gap:20px;align-items:center}
|
36 |
-
.nav-link{color:rgba(255,255,255,0.72);text-decoration:none;font-weight:500;cursor:pointer}
|
37 |
-
.nav-link:hover{color:var(--accent)}
|
38 |
-
.nav-link.active{color:var(--accent);font-weight:700}
|
39 |
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
.
|
44 |
-
|
45 |
-
|
46 |
-
.large{padding:12px 18px;font-size:16px}
|
47 |
-
.full{width:100%}
|
48 |
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
.
|
53 |
-
|
54 |
-
|
55 |
-
.hero-ctas{display:flex;gap:12px;justify-content:center}
|
56 |
|
57 |
-
|
58 |
-
.
|
59 |
-
.
|
60 |
-
|
61 |
-
|
62 |
-
.gemini-desc{margin:6px 0 12px;color:var(--muted);font-size:14px}
|
63 |
-
.gemini-actions{display:flex;gap:8px;flex-wrap:wrap}
|
64 |
|
65 |
-
|
66 |
-
.
|
67 |
-
.
|
68 |
-
.modal-backdrop{position:absolute;inset:0;background:rgba(3,6,8,0.6)}
|
69 |
-
.modal-panel{position:relative;background:linear-gradient(180deg, rgba(4,8,10,0.98), rgba(3,6,8,0.98));border-radius:12px;width:min(1100px,96%);max-height:90vh;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,0.04)}
|
70 |
-
.modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,0.03)}
|
71 |
-
.modal-header h3{margin:0;font-size:16px}
|
72 |
-
.modal-controls{display:flex;gap:8px;align-items:center}
|
73 |
-
.modal-body{padding:0;background:#041018;flex:1;display:flex;align-items:center;justify-content:center}
|
74 |
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
.
|
|
|
|
|
79 |
|
80 |
-
|
81 |
-
@
|
82 |
-
.gemini-card{flex-direction:column;align-items:stretch}
|
83 |
-
.gemini-thumb{align-self:center}
|
84 |
-
.modal-panel{width:96%}
|
85 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/* ==========================================
|
2 |
+
# File: styles.css
|
3 |
+
# Small layer of utilities on top of Tailwind
|
4 |
+
# ========================================== */
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
|
6 |
+
:root { --ring: 2px; }
|
7 |
+
.nav-link {
|
8 |
+
@apply text-sm font-medium text-slate-700 hover:text-primary dark:text-slate-200 dark:hover:text-primary;
|
|
|
|
|
|
|
9 |
}
|
10 |
+
.mobile-link {
|
11 |
+
@apply px-3 py-2 rounded text-slate-700 dark:text-slate-200 hover:bg-slate-200/60 dark:hover:bg-slate-700/40;
|
12 |
+
}
|
13 |
+
.btn-primary {
|
14 |
+
@apply inline-flex items-center justify-center rounded-lg bg-primary px-5 py-2.5 font-bold text-white shadow hover:opacity-90 focus:outline-none focus-visible:ring-[var(--ring)] focus-visible:ring-primary;
|
15 |
+
}
|
16 |
+
.btn-secondary {
|
17 |
+
@apply inline-flex items-center justify-center rounded-lg bg-white/15 px-5 py-2.5 font-bold text-white ring-1 ring-white/30 hover:bg-white/25 focus:outline-none focus-visible:ring-[var(--ring)] focus-visible:ring-white;
|
18 |
+
}
|
19 |
+
.pill {
|
20 |
+
@apply rounded-lg bg-primary/10 dark:bg-primary/20 px-4 py-3 font-semibold text-primary dark:text-white;
|
21 |
+
}
|
22 |
+
.h2 { @apply text-3xl sm:text-4xl font-bold tracking-tight; }
|
23 |
+
.h3 { @apply text-2xl font-bold; }
|
24 |
+
.h4 { @apply text-xl font-bold; }
|
25 |
+
.input {
|
26 |
+
@apply w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-slate-900 placeholder:text-slate-500 focus:border-primary focus:ring-primary dark:border-slate-700 dark:bg-slate-900 dark:text-slate-100;
|
27 |
+
}
|
28 |
+
.label { @apply block text-sm font-medium; }
|
29 |
+
.link { @apply text-primary hover:underline; }
|
30 |
+
.link.muted { @apply text-slate-500 hover:text-primary dark:text-slate-400; }
|
31 |
+
.link-chip { @apply mt-3 inline-flex items-center gap-2 self-start rounded bg-primary/10 px-3 py-1.5 text-sm font-semibold text-primary hover:bg-primary/15; }
|
32 |
+
.section { @apply py-16 sm:py-24; }
|
33 |
+
.container { @apply mx-auto max-w-7xl px-4 sm:px-6 lg:px-8; }
|
34 |
|
35 |
+
.card {
|
36 |
+
@apply flex flex-col gap-2 overflow-hidden rounded-xl border border-slate-200 dark:border-slate-700 bg-white dark:bg-slate-900 p-6 shadow-soft;
|
37 |
+
}
|
38 |
+
.callout {
|
39 |
+
@apply rounded-xl border border-primary/30 bg-primary/10 dark:bg-primary/20 p-8;
|
40 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
41 |
|
42 |
+
.filter-chip {
|
43 |
+
@apply rounded-full px-4 py-2 text-sm font-semibold border border-slate-300 dark:border-slate-600 hover:bg-slate-100 dark:hover:bg-slate-800;
|
44 |
+
}
|
45 |
+
.filter-chip.active {
|
46 |
+
@apply bg-primary text-white border-primary;
|
47 |
+
}
|
|
|
|
|
48 |
|
49 |
+
.portfolio-card {
|
50 |
+
@apply text-left overflow-hidden rounded-xl border border-slate-200 dark:border-slate-700 bg-white dark:bg-slate-900 hover:shadow-lg transition;
|
51 |
+
}
|
52 |
+
.portfolio-card img {
|
53 |
+
@apply w-full aspect-[4/3] object-cover;
|
54 |
+
}
|
|
|
55 |
|
56 |
+
.gallery-card { @apply relative overflow-hidden rounded-xl border border-slate-200 dark:border-slate-700 hover:shadow-lg transition; }
|
57 |
+
.gallery-img { @apply w-full aspect-video object-cover; }
|
58 |
+
.gallery-caption {
|
59 |
+
@apply absolute bottom-0 left-0 right-0 bg-black/50 text-white text-sm px-3 py-2;
|
60 |
+
}
|
|
|
|
|
61 |
|
62 |
+
.th { @apply p-4 text-left font-bold; }
|
63 |
+
.td-section { @apply p-3 font-bold bg-slate-100 dark:bg-slate-800; }
|
64 |
+
.td { @apply p-3; }
|
|
|
|
|
|
|
|
|
|
|
|
|
65 |
|
66 |
+
.quote {
|
67 |
+
@apply rounded-xl border border-slate-200 dark:border-slate-700 bg-white dark:bg-slate-900 p-6 shadow-soft;
|
68 |
+
}
|
69 |
+
.about-card {
|
70 |
+
@apply p-4 rounded-lg border border-slate-200 dark:border-slate-700 bg-white/70 dark:bg-slate-900/60;
|
71 |
+
}
|
72 |
|
73 |
+
.chip {
|
74 |
+
@apply inline-flex items-center gap-2 rounded-full border border-slate-300 dark:border-slate-600 px-3 py-1.5 text-sm cursor-pointer select-none;
|
|
|
|
|
|
|
75 |
}
|
76 |
+
.chip input { @apply sr-only; }
|
77 |
+
.chip span { @apply inline-block; }
|
78 |
+
.chip:has(input:checked) { @apply bg-primary text-white border-primary; }
|
79 |
+
|
80 |
+
/* Active nav state (scroll spy) */
|
81 |
+
.nav-link.active { @apply text-primary font-bold; }
|