@tailwind base;@tailwind components;@tailwind utilities;@layer base{:root{--primary-50: 239 246 255;--primary-100: 219 234 254;--primary-200: 191 219 254;--primary-300: 147 197 253;--primary-400: 96 165 250;--primary-500: 59 130 246;--primary-600: 37 99 235;--primary-700: 29 78 216;--primary-800: 30 64 175;--primary-900: 30 58 138;--accent-50: 255 251 235;--accent-100: 254 243 199;--accent-200: 253 230 138;--accent-300: 252 211 77;--accent-400: 251 191 36;--accent-500: 245 158 11;--accent-600: 217 119 6;--accent-700: 180 83 9;--accent-800: 146 64 14;--accent-900: 120 53 15;--gray-50: 248 250 252;--gray-100: 241 245 249;--gray-200: 226 232 240;--gray-300: 203 213 225;--gray-400: 148 163 184;--gray-500: 100 116 139;--gray-600: 71 85 105;--gray-700: 51 65 85;--gray-800: 30 41 59;--gray-900: 15 23 42;--success: 16 185 129;--warning: 245 158 11;--error: 239 68 68;--radius: 1rem;--radius-sm: .75rem;--radius-lg: 1.5rem;--radius-xl: 2rem;--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-md: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-lg: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--shadow-xl: 0 25px 50px -12px rgb(0 0 0 / .25);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .5s}.dark{--gray-50: 15 23 42;--gray-100: 30 41 59;--gray-200: 51 65 85;--gray-300: 71 85 105;--gray-400: 100 116 139;--gray-500: 148 163 184;--gray-600: 203 213 225;--gray-700: 226 232 240;--gray-800: 241 245 249;--gray-900: 248 250 252}}@layer base{*{@apply border-gray-200;}html{scroll-behavior:smooth}body{background:linear-gradient(135deg,#0f172a,#1e293b,#334155);color:#f8fafc;font-feature-settings:"rlig" 1,"calt" 1;min-height:100vh;margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.dark body{background:linear-gradient(135deg,#0f172a,#1e293b,#334155);color:#f8fafc}}@layer components{.card-modern{background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);transition:all var(--duration-normal) cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.card-modern:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);border-color:#fff3}.card-modern:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);opacity:0;transition:opacity var(--duration-normal)}.card-modern:hover:before{opacity:1}.glass-morphism{background:#ffffff1a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 32px #0000001a}.btn-primary{background:linear-gradient(135deg,rgb(var(--primary-500)),rgb(var(--primary-600)));color:#fff;padding:.75rem 1.5rem;border-radius:var(--radius);font-weight:600;font-size:.875rem;border:none;cursor:pointer;transition:all var(--duration-normal) cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);background:linear-gradient(135deg,rgb(var(--primary-600)),rgb(var(--primary-700)))}.btn-primary:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-secondary{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;padding:.75rem 1.5rem;border-radius:var(--radius);font-weight:600;font-size:.875rem;border:1px solid rgba(255,255,255,.2);cursor:pointer;transition:all var(--duration-normal) cubic-bezier(.4,0,.2,1)}.btn-secondary:hover{background:#fff3;border-color:#ffffff4d;transform:translateY(-1px)}.city-card-modern{background:#ffffff14;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-md);transition:all var(--duration-normal) cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative;overflow:hidden}.city-card-modern:hover{transform:translateY(-6px) scale(1.02);box-shadow:var(--shadow-xl);border-color:#3b82f64d}.city-card-modern:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,rgb(var(--primary-500)),rgb(var(--accent-500)));opacity:0;transition:opacity var(--duration-normal)}.city-card-modern:hover:before{opacity:1}.time-display-modern{font-variant-numeric:tabular-nums;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-weight:700;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3)}.nav-modern{position:fixed;bottom:0;left:0;right:0;background:#0f172acc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid rgba(255,255,255,.1);z-index:50}.input-modern{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:var(--radius);padding:.75rem 1rem;color:#fff;font-size:.875rem;transition:all var(--duration-normal)}.input-modern:focus{outline:none;border-color:rgb(var(--primary-500));box-shadow:0 0 0 3px #3b82f61a;background:#ffffff26}.input-modern::placeholder{color:#fff9}.select-modern{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:var(--radius);padding:.75rem 1rem;color:#fff;font-size:.875rem;transition:all var(--duration-normal);cursor:pointer}.select-modern:focus{outline:none;border-color:rgb(var(--primary-500));box-shadow:0 0 0 3px #3b82f61a}.select-modern option{background:#0f172a;color:#fff}.animate-fade-in{animation:fadeIn .6s cubic-bezier(.4,0,.2,1)}.animate-slide-up{animation:slideUp .5s cubic-bezier(.4,0,.2,1)}.animate-scale-in{animation:scaleIn .4s cubic-bezier(.4,0,.2,1)}.hover-lift{transition:transform var(--duration-normal) cubic-bezier(.4,0,.2,1)}.hover-lift:hover{transform:translateY(-2px)}.text-gradient-primary{background:linear-gradient(135deg,rgb(var(--primary-400)),rgb(var(--primary-600)));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-gradient-accent{background:linear-gradient(135deg,rgb(var(--accent-400)),rgb(var(--accent-600)));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.container-modern{max-width:1200px;margin:0 auto;padding:0 1rem}@media (min-width: 640px){.container-modern{padding:0 1.5rem}}@media (min-width: 1024px){.container-modern{padding:0 2rem}}}@layer utilities{@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.grid-responsive{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.grid-cities{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}@media (min-width: 640px){.grid-cities{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}@media (min-width: 1024px){.grid-cities{grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}}.space-y-modern>*+*{margin-top:1.5rem}.space-x-modern>*+*{margin-left:1rem}.text-heading-1{font-size:2.5rem;font-weight:800;line-height:1.2;letter-spacing:-.025em}.text-heading-2{font-size:2rem;font-weight:700;line-height:1.3;letter-spacing:-.025em}.text-heading-3{font-size:1.5rem;font-weight:600;line-height:1.4}.text-body{font-size:1rem;line-height:1.6;color:#fffc}.text-caption{font-size:.875rem;line-height:1.5;color:#fff9}.shadow-modern{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.shadow-modern-lg{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.shadow-modern-xl{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.border-modern{border:1px solid rgba(255,255,255,.1)}.border-modern-lg{border:1px solid rgba(255,255,255,.2)}.bg-modern{background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.bg-modern-lg{background:#ffffff1a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.rounded-modern{border-radius:1rem}.rounded-modern-lg{border-radius:1.5rem}.rounded-modern-xl{border-radius:2rem}.transition-modern{transition:all .3s cubic-bezier(.4,0,.2,1)}.transition-fast{transition:all .15s cubic-bezier(.4,0,.2,1)}.transition-slow{transition:all .5s cubic-bezier(.4,0,.2,1)}.transform-modern{transform:translateY(-2px)}.transform-modern-lg{transform:translateY(-4px)}.transform-modern-xl{transform:translateY(-6px)}.opacity-modern{opacity:.8}.opacity-modern-lg{opacity:.6}.opacity-modern-xl{opacity:.4}.blur-modern{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.blur-modern-lg{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.blur-modern-xl{-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px)}}
