@tailwind base; @tailwind components; @tailwind utilities; :root { --safe-area-inset-top: env(safe-area-inset-top); --safe-area-inset-bottom: env(safe-area-inset-bottom); } :root { --bg-primary: #ffffff; --bg-secondary: #f5f5f5; --bg-tertiary: #f9fafb; --text-primary: #1f2937; --text-secondary: #6b7280; --text-tertiary: #9ca3af; --border-color: #e5e7eb; --shadow-color: rgba(0, 0, 0, 0.05); --gradient-start: #f97316; --gradient-end: #ea580c; } .dark { --bg-primary: #1f2937; --bg-secondary: #111827; --bg-tertiary: #374151; --text-primary: #f9fafb; --text-secondary: #d1d5db; --text-tertiary: #9ca3af; --border-color: #374151; --shadow-color: rgba(0, 0, 0, 0.3); --gradient-start: #f97316; --gradient-end: #ea580c; } .deep-blue { --bg-primary: #0f172a; --bg-secondary: #020617; --bg-tertiary: #1e293b; --text-primary: #f1f5f9; --text-secondary: #cbd5e1; --text-tertiary: #94a3b8; --border-color: #334155; --shadow-color: rgba(0, 0, 0, 0.4); --gradient-start: #3b82f6; --gradient-end: #2563eb; } * { margin: 0; padding: 0; box-sizing: border-box; -webkit-tap-highlight-color: transparent; } html, body { height: 100%; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'PingFang SC', 'Microsoft YaHei', 'Helvetica Neue', Arial, sans-serif; background-color: var(--bg-secondary); color: var(--text-primary); line-height: 1.5; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; transition: background-color 0.3s ease, color 0.3s ease; } #root { height: 100%; } .page-container { min-height: 100vh; padding-bottom: calc(60px + env(safe-area-inset-bottom)); background-color: var(--bg-secondary); transition: background-color 0.3s ease; } .page-content { padding: 12px; } .card { background: var(--bg-primary); border-radius: 12px; padding: 16px; margin-bottom: 12px; box-shadow: 0 1px 3px var(--shadow-color); transition: background-color 0.3s ease, box-shadow 0.3s ease; } .btn-primary { @apply bg-primary-500 text-white px-4 py-2 rounded-lg font-medium transition-all duration-200; @apply hover:bg-primary-600 active:scale-95; } .btn-secondary { @apply bg-gray-100 text-gray-700 px-4 py-2 rounded-lg font-medium transition-all duration-200; @apply hover:bg-gray-200 active:scale-95; } .input-field { @apply w-full px-4 py-3 border border-gray-200 rounded-lg text-base; @apply focus:outline-none focus:border-primary-500 focus:ring-1 focus:ring-primary-500; } @layer utilities { .text-gradient { @apply bg-gradient-to-r from-primary-500 to-primary-600 bg-clip-text text-transparent; } .safe-bottom { padding-bottom: env(safe-area-inset-bottom); } .safe-top { padding-top: env(safe-area-inset-top); } .scrollbar-hide { -ms-overflow-style: none; scrollbar-width: none; } .scrollbar-hide::-webkit-scrollbar { display: none; } }