@tailwind base;@tailwind components;@tailwind utilities;:root{--background: hsl(40, 25%, 98%);--foreground: hsl(25, 15%, 25%);--muted: hsl(35, 20%, 96%);--muted-foreground: hsl(25, 10%, 50%);--popover: hsl(40, 25%, 98%);--popover-foreground: hsl(25, 15%, 25%);--card: hsl(42, 30%, 99%);--card-foreground: hsl(25, 15%, 25%);--border: hsl(35, 15%, 88%);--input: hsl(35, 20%, 94%);--primary: hsl(15, 35%, 60%);--primary-foreground: hsl(42, 30%, 99%);--secondary: hsl(95, 20%, 65%);--secondary-foreground: hsl(42, 30%, 99%);--accent: hsl(35, 25%, 92%);--accent-foreground: hsl(25, 15%, 25%);--destructive: hsl(5, 50%, 70%);--destructive-foreground: hsl(42, 30%, 99%);--ring: hsl(15, 35%, 60%);--radius: .625rem;--primary-custom: hsl(15, 35%, 60%);--secondary-custom: hsl(95, 20%, 65%);--accent-custom: hsl(35, 25%, 92%);--neutral-custom: hsl(40, 25%, 98%);--soft-black: hsl(25, 15%, 25%);--premium-gold: hsl(40, 40%, 70%);--success-green: hsl(95, 20%, 65%);--comfort-lavender: hsl(260, 15%, 75%);--gentle-blue: hsl(210, 30%, 78%);--warm-cream: hsl(42, 30%, 96%);--seasonal-primary: hsl(210, 60%, 70%);--seasonal-secondary: hsl(210, 40%, 65%);--focus-ring: 214 100% 40%;--error-color: 0 84% 60%;--success-color: 142 76% 36%;--warning-color: 45 93% 47%}.star-overlay{position:relative;overflow:visible}.star-overlay:before{content:"";position:absolute;top:-12px;right:-12px;width:36px;height:36px;background:#dc2626;clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);animation:sparkle 2s ease-in-out infinite;z-index:10;box-shadow:0 0 15px #dc2626b3}@keyframes sparkle{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.1);opacity:1}}.dark{--background: hsl(240, 10%, 3.9%);--foreground: hsl(0, 0%, 98%);--muted: hsl(240, 3.7%, 15.9%);--muted-foreground: hsl(240, 5%, 64.9%);--popover: hsl(240, 10%, 3.9%);--popover-foreground: hsl(0, 0%, 98%);--card: hsl(240, 10%, 3.9%);--card-foreground: hsl(0, 0%, 98%);--border: hsl(240, 3.7%, 15.9%);--input: hsl(240, 3.7%, 15.9%);--primary: hsl(30, 25%, 51%);--primary-foreground: hsl(0, 0%, 100%);--secondary: hsl(240, 3.7%, 15.9%);--secondary-foreground: hsl(0, 0%, 98%);--accent: hsl(240, 3.7%, 15.9%);--accent-foreground: hsl(0, 0%, 98%);--destructive: hsl(0, 62.8%, 30.6%);--destructive-foreground: hsl(0, 0%, 98%);--ring: hsl(240, 4.9%, 83.9%)}@layer base{*{@apply border-border;}body{@apply font-sans antialiased bg-background text-foreground;}}@layer components{.skip-link{@apply absolute -top-10 left-4 bg-primary text-white px-4 py-2 rounded z-50;@apply focus:top-4 transition-all;}.text-responsive-sm{@apply text-sm sm:text-base;}.text-responsive-md{@apply text-base sm:text-lg;}.text-responsive-lg{@apply text-lg sm:text-xl lg:text-2xl;}.text-responsive-xl{@apply text-xl sm:text-2xl lg:text-3xl;}.text-responsive-2xl{@apply text-2xl sm:text-3xl lg:text-4xl;}.space-responsive-sm{@apply space-y-3 sm:space-y-4;}.space-responsive-md{@apply space-y-4 sm:space-y-6;}.space-responsive-lg{@apply space-y-6 sm:space-y-8;}.btn-mobile-full{@apply w-full sm:w-auto;}.grid-responsive-1-2-3{@apply grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3;}.grid-responsive-1-2-4{@apply grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4;}.grid-responsive-2-4{@apply grid grid-cols-2 sm:grid-cols-4;}}@layer utilities{.text-primary{color:var(--primary-custom)}.bg-primary{background-color:var(--primary-custom)}.text-secondary{color:var(--secondary-custom)}.bg-secondary{background-color:var(--secondary-custom)}.text-accent{color:var(--accent-custom)}.bg-accent{background-color:var(--accent-custom)}.bg-neutral{background-color:var(--neutral-custom)}.text-soft-black{color:var(--soft-black)}.bg-soft-black{background-color:var(--soft-black)}.text-premium-gold{color:var(--premium-gold)}.bg-premium-gold{background-color:var(--premium-gold)}.text-success-green{color:var(--success-green)}.bg-success-green{background-color:var(--success-green)}.font-serif{font-family:Crimson Text,serif}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}@media (prefers-contrast: high){.text-muted-foreground{@apply text-foreground;}.border{@apply border-2;}}@media (prefers-reduced-motion: reduce){.animate-in,.animate-out,.transition-all,.transition-colors,.transition-transform{animation-duration:.01ms!important;transition-duration:.01ms!important}}.enhanced-grid{gap:2rem}@media (min-width: 640px){.enhanced-grid{gap:2.5rem}}.card-enhanced{transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:.75rem}.card-enhanced:hover{transform:translateY(-2px);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.btn-enhanced{padding:.75rem 1.5rem;border-radius:.75rem;font-weight:500;transition:all .2s ease-in-out}.btn-enhanced:hover{transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a}button,.btn,[role=button],.card,.border,input,textarea,select,.rounded,.rounded-md,.rounded-lg,.rounded-xl,.rounded-2xl{border-radius:1rem!important}.space-buttons>*+*{margin-left:1.5rem}@media (min-width: 640px){.space-buttons>*+*{margin-left:2rem}}header .flex.items-center>*,header .flex.items-center button,header nav.flex.items-center>*,header nav button{margin-right:2rem!important;border-radius:1rem!important}header button{margin:.5rem!important;padding:.75rem 1.5rem!important;border-radius:1rem!important}.focus-ring{@apply focus:outline-none focus:ring-2 focus:ring-blue-600 focus:ring-offset-2;}.touch-target{min-height:44px;min-width:44px}.skip-link{position:absolute;top:-40px;left:6px;background:#000;color:#fff;padding:8px 16px;text-decoration:none;z-index:1000;border-radius:4px;font-weight:700;transition:top .3s}.skip-link:focus{top:6px}}
