@import"https://fonts.googleapis.com/css2?family=Noto+Sans+Khmer:wght@400;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Kantumruy+Pro:wght@400;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Hanuman:wght@400;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Battambang:wght@400;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Bayon&display=swap";@tailwind base;@tailwind components;@tailwind utilities;:root{--studio-bg: #F5F5F7;--studio-surface: rgba(255, 255, 255, .8);--studio-surface-hover: #FFFFFF;--studio-border: rgba(0, 0, 0, .06);--studio-text: #1D1D1F;--studio-text-secondary: #86868B;--studio-accent: #000000;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .03);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .04);--shadow-md: 0 12px 24px rgba(0, 0, 0, .06);--shadow-lg: 0 20px 40px rgba(0, 0, 0, .08);--shadow-xl: 0 32px 64px rgba(0, 0, 0, .1);--shadow-card: 0 2px 12px rgba(0, 0, 0, .04);--blur-sm: blur(10px);--blur-md: blur(20px);--blur-lg: blur(30px);--transition-fast: .2s cubic-bezier(.2, .8, .2, 1);--transition-base: .3s cubic-bezier(.2, .8, .2, 1);--transition-slow: .5s cubic-bezier(.2, .8, .2, 1);--spring: cubic-bezier(.25, 1.5, .5, 1)}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,sans-serif;background:var(--studio-bg);color:var(--studio-text)}body.khmer-font,body.khmer-font *{font-family:Dangrek,cursive,-apple-system,BlinkMacSystemFont,sans-serif!important}.glass{background:var(--studio-surface);backdrop-filter:var(--blur-md);-webkit-backdrop-filter:var(--blur-md);border:1px solid var(--studio-border)}.glass-hover{transition:all var(--transition-base)}.glass-hover:hover{background:var(--studio-surface-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.shadow-studio{box-shadow:var(--shadow-sm)}.shadow-studio-md{box-shadow:var(--shadow-md)}.shadow-studio-lg{box-shadow:var(--shadow-lg)}.transition-studio{transition:all var(--transition-base)}.studio-card{background:#fff;border:none;border-radius:24px;box-shadow:0 2px 15px #0000000a;transition:all var(--transition-base)}.studio-card:hover{box-shadow:0 6px 25px #00000012;transform:translateY(-2px)}.shadow-ios{box-shadow:0 2px 15px #0000000a}.shadow-ios-md{box-shadow:0 4px 20px #0000000d}.shadow-ios-lg{box-shadow:0 8px 30px #0000000f}.studio-button{font-weight:500;letter-spacing:-.01em;transition:all var(--transition-fast)}.studio-button:active{transform:scale(.96)}.text-studio{color:var(--studio-text);letter-spacing:-.02em}.text-studio-secondary{color:var(--studio-text-secondary);letter-spacing:-.01em}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:fadeInUp .6s cubic-bezier(.2,.8,.2,1) forwards}.stagger-1{animation-delay:.05s}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}*:focus-visible{outline:2px solid var(--studio-text);outline-offset:2px;border-radius:8px}::selection{background:#0000001a;color:var(--studio-text)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#0000001a;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#0003}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes scaleUp{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.animate-slide-up{animation:slideUp .3s cubic-bezier(.2,.8,.2,1) forwards}.animate-scale-up{animation:scaleUp .2s cubic-bezier(.2,.8,.2,1) forwards}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.5}}.skeleton{background:linear-gradient(90deg,#0000000f 25%,#0000001a,#0000000f 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.skeleton-dark{background:linear-gradient(90deg,#ffffff1a 25%,#fff3,#ffffff1a 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.animate-pulse-soft{animation:pulse-soft 2s cubic-bezier(.4,0,.6,1) infinite}.skeleton-delay-1{animation-delay:.1s}.skeleton-delay-2{animation-delay:.2s}.skeleton-delay-3{animation-delay:.3s}.skeleton-delay-4{animation-delay:.4s}.skeleton-delay-5{animation-delay:.5s}
