@tailwind base; @tailwind components; @tailwind utilities; /* Modern Flat Theme (Big Tech Style) - Zinc & Amber */ :root { /* Base - Deep Matte Zinc */ --color-background: hsl(240 10% 3.9%); --color-foreground: hsl(0 0% 98%); /* Surface */ --color-card: hsl(240 10% 6.5%); --color-card-foreground: hsl(0 0% 98%); --color-popover: hsl(240 10% 3.9%); --color-popover-foreground: hsl(0 0% 98%); /* Primary Accent - Warm Amber/Gold */ --color-primary: hsl(45 93% 47%); --color-primary-foreground: hsl(240 10% 3.9%); /* Secondary */ --color-secondary: hsl(240 5.9% 10%); --color-secondary-foreground: hsl(0 0% 98%); /* UI Elements */ --color-muted: hsl(240 3.7% 15.9%); --color-muted-foreground: hsl(240 5% 64.9%); --color-accent: hsl(240 3.7% 15.9%); --color-accent-foreground: hsl(0 0% 98%); --color-destructive: hsl(0 84.2% 60.2%); --color-destructive-foreground: hsl(0 0% 98%); --color-border: hsl(240 3.7% 15.9%); --color-input: hsl(240 3.7% 15.9%); --color-ring: hsl(45 93% 47%); --radius: 0.5rem; } /* Base styles */ * { border-color: var(--color-border); } body { background-color: var(--color-background); color: var(--color-foreground); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-feature-settings: "rlig" 1, "calt" 1; } /* Custom scrollbar - Slim & Modern */ ::-webkit-scrollbar { width: 6px; height: 6px; } ::-webkit-scrollbar-track { background: transparent; } ::-webkit-scrollbar-thumb { background: hsla(215, 27.9%, 26.9%, 0.6); border-radius: 10px; } ::-webkit-scrollbar-thumb:hover { background: hsla(215, 27.9%, 40%, 0.8); } /* Custom scrollbar utility */ .custom-scrollbar { scrollbar-width: thin; scrollbar-color: var(--color-muted) transparent; } /* Button components */ .btn { display: inline-flex; align-items: center; justify-content: center; border-radius: 0.5rem; padding: 0.5rem 1rem; font-size: 0.875rem; font-weight: 500; transition: all 0.15s; } .btn:focus { outline: none; box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1); } .btn:disabled { opacity: 0.5; pointer-events: none; } .btn-primary { background-color: var(--color-primary); color: var(--color-primary-foreground); box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05); } .btn-primary:hover { background-color: rgba(248, 250, 252, 0.9); } .btn-primary:active { transform: scale(0.95); } .btn-secondary { background-color: var(--color-secondary); color: var(--color-secondary-foreground); border: 1px solid var(--color-border); } .btn-secondary:hover { background-color: var(--color-accent); color: var(--color-accent-foreground); } .btn-danger { background-color: var(--color-destructive); color: var(--color-destructive-foreground); box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05); } .btn-danger:hover { background-color: rgba(127, 29, 29, 0.9); } .btn-sm { padding: 0.375rem 0.75rem; font-size: 0.75rem; } /* Input field */ .input-field { display: flex; height: 2.5rem; width: 100%; border-radius: 0.5rem; border: 1px solid var(--color-input); background-color: #09090b; color: hsl(var(--color-foreground)); padding: 0.5rem 0.75rem; font-size: 0.875rem; transition: all 0.15s; } .input-field::placeholder { color: var(--color-muted-foreground); } .input-field:focus { outline: none; box-shadow: 0 0 0 2px var(--color-ring); } .input-field:disabled { cursor: not-allowed; opacity: 0.5; } /* Card */ .card { background-color: var(--color-card); color: var(--color-card-foreground); border: 1px solid var(--color-border); border-radius: 0.75rem; box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05); overflow: hidden; }