Files
oh-my-opencode/web/app/globals.css
T

235 lines
5.0 KiB
CSS
Raw Normal View History

@import "tailwindcss";
@plugin "tailwindcss-animate";
@custom-variant dark (&:where(.dark, .dark *));
@theme {
--font-sans: var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif;
--font-mono: var(--font-geist-mono), ui-monospace, SFMono-Regular, monospace;
--font-manrope: var(--font-manrope), sans-serif;
--color-background: var(--background);
--color-foreground: var(--foreground);
--color-card: var(--card);
--color-card-foreground: var(--card-foreground);
--color-popover: var(--popover);
--color-popover-foreground: var(--popover-foreground);
--color-primary: var(--primary);
--color-primary-foreground: var(--primary-foreground);
--color-secondary: var(--secondary);
--color-secondary-foreground: var(--secondary-foreground);
--color-muted: var(--muted);
--color-muted-foreground: var(--muted-foreground);
--color-accent: var(--accent);
--color-accent-foreground: var(--accent-foreground);
--color-destructive: var(--destructive);
--color-destructive-foreground: var(--destructive-foreground);
--color-border: var(--border);
--color-input: var(--input);
--color-ring: var(--ring);
--color-chart-1: var(--chart-1);
--color-chart-2: var(--chart-2);
--color-chart-3: var(--chart-3);
--color-chart-4: var(--chart-4);
--color-chart-5: var(--chart-5);
--radius-lg: var(--radius);
--radius-md: calc(var(--radius) - 2px);
--radius-sm: calc(var(--radius) - 4px);
--animate-accordion-down: accordion-down 0.2s ease-out;
--animate-accordion-up: accordion-up 0.2s ease-out;
@keyframes accordion-down {
from {
height: 0;
}
to {
height: var(--radix-accordion-content-height);
}
}
@keyframes accordion-up {
from {
height: var(--radix-accordion-content-height);
}
to {
height: 0;
}
}
}
/*
The default border color has changed to `currentColor` in Tailwind CSS v4,
so we've added these compatibility styles to make sure everything still
looks the same as it did with Tailwind CSS v3.
*/
@layer base {
*,
::after,
::before,
::backdrop,
::file-selector-button {
border-color: var(--color-gray-200, currentColor);
}
}
@layer base {
:root {
/* Dark Theme Only - Terminal/Hacker Aesthetic */
/* Colors */
--background: #0a0a0a;
--foreground: #ededed;
--card: #111111;
--card-foreground: #ededed;
--popover: #111111;
--popover-foreground: #ededed;
--primary: #00d4ff;
--primary-foreground: #000000;
--secondary: #7c3aed;
--secondary-foreground: #ffffff;
--muted: #1a1a1a;
--muted-foreground: #a1a1a1;
--accent: #1a1a1a;
--accent-foreground: #ededed;
--destructive: #ef4444;
--destructive-foreground: #ffffff;
--border: #262626;
--input: #262626;
--ring: #00d4ff;
/* Charts */
--chart-1: #00d4ff;
--chart-2: #7c3aed;
--chart-3: #10b981;
--chart-4: #f59e0b;
--chart-5: #ef4444;
/* Code */
--code-bg: #1e1e2e;
--code-text: #cdd6f4;
/* Spacing */
--radius: 0.5rem;
/* Typography */
--font-geist-sans: var(--font-geist-sans);
--font-geist-mono: var(--font-geist-mono);
--font-manrope: var(--font-manrope);
--font-inter: var(--font-inter);
/* Semantic Fonts */
--font-heading: var(--font-manrope);
--font-body: var(--font-geist-sans);
--font-code: var(--font-geist-mono);
}
}
@layer base {
* {
@apply border-border;
}
body {
@apply bg-background text-foreground;
font-feature-settings:
"rlig" 1,
"calt" 1;
}
h1,
h2,
h3,
h4,
h5,
h6 {
font-family: var(--font-manrope);
}
[lang|="ko"] h1,
[lang|="ko"] h2,
[lang|="ko"] h3,
[lang|="ko"] h4,
[lang|="ko"] h5,
[lang|="ko"] h6,
[lang|="ja"] h1,
[lang|="ja"] h2,
[lang|="ja"] h3,
[lang|="ja"] h4,
[lang|="ja"] h5,
[lang|="ja"] h6,
[lang|="zh"] h1,
[lang|="zh"] h2,
[lang|="zh"] h3,
[lang|="zh"] h4,
[lang|="zh"] h5,
[lang|="zh"] h6 {
letter-spacing: normal !important;
text-wrap: pretty;
}
:where([lang|="ko"], [lang|="ja"], [lang|="zh"])
:where(p, li, blockquote, figcaption, td, th, a, button, span) {
overflow-wrap: break-word;
}
[lang|="ko"]
:where(h1, h2, h3, h4, h5, h6, p, li, blockquote, figcaption, td, th, a, button, span) {
word-break: keep-all;
}
:where([lang|="ja"], [lang|="zh"])
:where(h1, h2, h3, h4, h5, h6, p, li, blockquote, figcaption, td, th, a, button, span) {
word-break: normal;
line-break: strict;
}
html {
scroll-behavior: auto;
}
::selection {
@apply bg-primary/20 text-primary;
}
::-webkit-scrollbar {
width: 10px;
height: 10px;
}
::-webkit-scrollbar-track {
@apply bg-muted;
}
::-webkit-scrollbar-thumb {
@apply bg-border hover:bg-muted-foreground/50 rounded-full transition-colors;
}
}
@layer utilities {
.glow-cyan {
box-shadow: 0 0 15px -5px rgba(0, 212, 255, 0.3);
}
.glow-purple {
box-shadow: 0 0 15px -5px rgba(124, 58, 237, 0.3);
}
.text-glow-cyan {
text-shadow: 0 0 8px rgba(0, 212, 255, 0.3);
}
}