@tailwind base;@tailwind components;@tailwind utilities;@layer base{:root{--background: 218 25% 97%;--foreground: 222 84% 4.9%;--card: 0 0% 100%;--card-foreground: 222 84% 4.9%;--popover: 0 0% 100%;--popover-foreground: 222 84% 4.9%;--primary: 142 76% 36%;--primary-foreground: 0 0% 98%;--primary-glow: 142 76% 45%;--secondary: 215 84% 56%;--secondary-foreground: 0 0% 98%;--muted: 210 40% 96.1%;--muted-foreground: 215.4 16.3% 46.9%;--accent: 189 92% 55%;--accent-foreground: 0 0% 98%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 210 40% 98%;--success: 142 76% 36%;--success-foreground: 0 0% 98%;--warning: 38 92% 50%;--warning-foreground: 0 0% 98%;--info: 217 91% 60%;--info-foreground: 0 0% 98%;--border: 214.3 31.8% 91.4%;--input: 214.3 31.8% 91.4%;--ring: 142 76% 36%;--gradient-primary: linear-gradient(135deg, hsl(142 76% 36%), hsl(142 76% 45%));--gradient-secondary: linear-gradient(135deg, hsl(215 84% 56%), hsl(215 84% 65%));--gradient-accent: linear-gradient(135deg, hsl(189 92% 55%), hsl(189 92% 65%));--gradient-hero: linear-gradient(135deg, hsl(142 76% 36%) 0%, hsl(215 84% 56%) 100%);--shadow-soft: 0 2px 8px hsl(222 84% 4.9% / .08);--shadow-medium: 0 4px 16px hsl(222 84% 4.9% / .12);--shadow-strong: 0 8px 32px hsl(222 84% 4.9% / .16);--shadow-glow: 0 0 24px hsl(142 76% 36% / .3);--radius: .75rem;--sidebar-background: 0 0% 98%;--sidebar-foreground: 240 5.3% 26.1%;--sidebar-primary: 240 5.9% 10%;--sidebar-primary-foreground: 0 0% 98%;--sidebar-accent: 240 4.8% 95.9%;--sidebar-accent-foreground: 240 5.9% 10%;--sidebar-border: 220 13% 91%;--sidebar-ring: 217.2 91.2% 59.8%}.dark{--background: 222 47% 8%;--foreground: 210 40% 98%;--card: 222 47% 11%;--card-foreground: 210 40% 98%;--popover: 222 47% 11%;--popover-foreground: 210 40% 98%;--primary: 142 76% 45%;--primary-foreground: 0 0% 98%;--primary-glow: 142 76% 55%;--secondary: 215 84% 65%;--secondary-foreground: 0 0% 98%;--muted: 217.2 32.6% 17.5%;--muted-foreground: 215 20.2% 65.1%;--accent: 189 92% 65%;--accent-foreground: 0 0% 98%;--success: 142 76% 45%;--success-foreground: 0 0% 98%;--warning: 38 92% 60%;--warning-foreground: 0 0% 98%;--destructive: 0 84.2% 70%;--destructive-foreground: 0 0% 98%;--info: 217 91% 70%;--info-foreground: 0 0% 98%;--border: 217.2 32.6% 17.5%;--input: 217.2 32.6% 17.5%;--ring: 142 76% 45%;--gradient-primary: linear-gradient(135deg, hsl(142 76% 45%), hsl(142 76% 55%));--gradient-secondary: linear-gradient(135deg, hsl(215 84% 65%), hsl(215 84% 75%));--gradient-accent: linear-gradient(135deg, hsl(189 92% 65%), hsl(189 92% 75%));--gradient-hero: linear-gradient(135deg, hsl(142 76% 45%) 0%, hsl(215 84% 65%) 100%);--shadow-soft: 0 2px 8px hsl(0 0% 0% / .3);--shadow-medium: 0 4px 16px hsl(0 0% 0% / .4);--shadow-strong: 0 8px 32px hsl(0 0% 0% / .5);--shadow-glow: 0 0 24px hsl(142 76% 45% / .4);--sidebar-background: 222 47% 6%;--sidebar-foreground: 240 4.8% 95.9%;--sidebar-primary: 142 76% 45%;--sidebar-primary-foreground: 0 0% 100%;--sidebar-accent: 222 47% 15%;--sidebar-accent-foreground: 240 4.8% 95.9%;--sidebar-border: 222 47% 15%;--sidebar-ring: 142 76% 45%}}@layer base{*{@apply border-border;box-sizing:border-box}html,body{overflow-x:hidden;max-width:100vw}body{@apply bg-background text-foreground font-sans antialiased;}.container,.grid,.flex{max-width:100%;min-width:0}p,span,div{word-wrap:break-word;overflow-wrap:break-word}*{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,color .15s ease-in-out,box-shadow .15s ease-in-out}}@layer components{.gradient-primary{background:var(--gradient-primary)}.gradient-secondary{background:var(--gradient-secondary)}.gradient-hero{background:var(--gradient-hero)}.shadow-soft{box-shadow:var(--shadow-soft)}.shadow-medium{box-shadow:var(--shadow-medium)}.shadow-strong{box-shadow:var(--shadow-strong)}.shadow-glow{box-shadow:var(--shadow-glow)}@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait){.force-landscape-message{position:fixed;top:0;left:0;right:0;bottom:0;background:hsl(var(--background));display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999;padding:2rem;text-align:center}.force-landscape-message .rotate-icon{animation:rotate-hint 2s infinite ease-in-out;font-size:4rem;margin-bottom:1rem;color:hsl(var(--primary))}}@keyframes rotate-hint{0%,to{transform:rotate(0)}25%{transform:rotate(-90deg)}75%{transform:rotate(-90deg)}}@media (min-width: 768px) and (max-width: 1024px) and (orientation: landscape){.tablet-landscape-layout{display:grid;grid-template-columns:300px 1fr;height:100vh;overflow:hidden}.tablet-sidebar{overflow-y:auto;border-right:1px solid hsl(var(--border))}.tablet-main{overflow-y:auto;padding:1rem}}@media (display-mode: standalone){body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.pwa-safe-area{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}.pos-button{@apply relative overflow-hidden rounded-lg font-medium transition-all duration-200 active:scale-[.98] hover:scale-[1.02];}.pos-card{@apply bg-card rounded-xl shadow-soft border border-border/50 hover:shadow-medium transition-all duration-200;}.notification-badge-animation{@apply animate-pulse;}.notification-enter{animation:notification-slide-in .3s ease-out}.notification-exit{animation:notification-slide-out .2s ease-in}@keyframes notification-slide-in{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes notification-slide-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.notification-button{@apply relative transition-all duration-200 ease-in-out;@apply hover:bg-primary hover:text-primary-foreground;@apply focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2;overflow:visible!important}.notification-button:hover{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.notification-badge{@apply absolute flex items-center justify-center;@apply bg-destructive text-destructive-foreground;@apply text-xs font-medium rounded-full;@apply min-w-[20px] h-5 px-1;top:-8px;right:-8px;z-index:10;box-shadow:0 2px 4px #0000001a}}
