@import"https://fonts.googleapis.com/css2?family=Nunito:wght@300;400;500;600;700;800&family=Quicksand:wght@300;400;500;600;700&display=swap";@media (max-width: 768px){button,input[type=button],input[type=submit],.touch-target{min-height:44px;min-width:44px;padding:12px 16px}button:active,.touch-target:active{background-color:#4a90e21a;transform:scale(.98);transition:all .1s ease}input,textarea,select{font-size:16px;padding:12px 16px;border-radius:8px;min-height:44px}.mobile-full-width{width:100%}.mobile-spacing{padding:16px;margin:8px 0}.mobile-nav{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #e5e7eb;padding:8px 16px 16px;z-index:50}.pwa-safe-area{padding-bottom:env(safe-area-inset-bottom);padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.mobile-checkin-card{min-height:120px;border-radius:16px;box-shadow:0 4px 12px #0000001a;transition:transform .2s ease,box-shadow .2s ease}.mobile-checkin-card:active{transform:scale(.98);box-shadow:0 2px 8px #00000026}.mobile-mood-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:12px;padding:16px}.mobile-mood-button{aspect-ratio:1;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:2rem;border:2px solid transparent;background:#f8f9fa;transition:all .2s ease}.mobile-mood-button.selected{border-color:#4a90e2;background:#4a90e21a;transform:scale(1.05)}.mobile-mood-button:active{transform:scale(.95)}.mobile-textarea{min-height:120px;resize:vertical;font-size:16px;line-height:1.5}.mobile-scroll{-webkit-overflow-scrolling:touch;overflow-y:auto}.fullscreen-mobile{height:100vh;height:100dvh}}@media (max-width: 896px) and (orientation: landscape) and (max-height: 414px){.landscape-compact{padding:8px 16px}.landscape-hide{display:none}.landscape-horizontal{flex-direction:row;gap:16px}}@media (max-width: 768px) and (prefers-color-scheme: dark){.mobile-nav{background:#1f2937;border-top-color:#374151}.mobile-mood-button{background:#374151;color:#f9fafb}.mobile-mood-button.selected{background:#4a90e233}}@media (display-mode: standalone){.pwa-installed{padding-top:0}.pwa-header{padding-top:env(safe-area-inset-top,20px)}.pwa-bottom{padding-bottom:env(safe-area-inset-bottom,16px)}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.high-dpi-icon{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}@media (prefers-reduced-motion: reduce){.mobile-checkin-card,.mobile-mood-button,button:active,.touch-target:active{transform:none;transition:none}}@tailwind base;@tailwind components;@tailwind utilities;:root{--pulse-blue: hsl(210, 57%, 63%);--pulse-green: hsl(120, 25%, 65%);--pulse-neutral: hsl(60, 29%, 94%);--pulse-purple: hsl(267, 58%, 75%);--pulse-coral: hsl(13, 100%, 82%);--pulse-cream: hsl(0, 0%, 99%);--pulse-dark: hsl(213, 27%, 12%);--pulse-dark-card: hsl(213, 23%, 18%);--pulse-dark-text: hsl(210, 20%, 90%);--background: var(--pulse-cream);--foreground: hsl(213, 27%, 12%);--card: transparent;--card-foreground: hsl(213, 27%, 12%);--popover: transparent;--popover-foreground: hsl(213, 27%, 12%);--primary: var(--pulse-blue);--primary-foreground: hsl(0, 0%, 100%);--secondary: hsl(210, 20%, 95%);--secondary-foreground: hsl(213, 27%, 12%);--muted: hsl(210, 20%, 95%);--muted-foreground: hsl(213, 15%, 45%);--accent: var(--pulse-neutral);--accent-foreground: var(--pulse-blue);--destructive: hsl(0, 84%, 60%);--destructive-foreground: hsl(0, 0%, 100%);--border: hsl(210, 20%, 90%);--input: transparent;--ring: var(--pulse-blue);--radius: 1.5rem;--font-body: "Quicksand", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-heading: "Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}.dark{--background: var(--pulse-dark);--foreground: var(--pulse-dark-text);--card: transparent;--card-foreground: var(--pulse-dark-text);--popover: transparent;--popover-foreground: var(--pulse-dark-text);--primary: var(--pulse-blue);--primary-foreground: hsl(0, 0%, 100%);--secondary: hsl(213, 20%, 25%);--secondary-foreground: var(--pulse-dark-text);--muted: hsl(213, 20%, 20%);--muted-foreground: hsl(213, 15%, 65%);--accent: hsl(213, 20%, 25%);--accent-foreground: var(--pulse-blue);--destructive: hsl(0, 84%, 60%);--destructive-foreground: hsl(0, 0%, 100%);--border: hsl(213, 20%, 25%);--input: transparent;--ring: var(--pulse-blue)}@layer base{*{@apply border-border;}body{@apply bg-background text-foreground antialiased;font-family:var(--font-body);font-feature-settings:"rlig" 1,"calt" 1}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{@apply bg-muted;}::-webkit-scrollbar-thumb{@apply bg-border rounded-full;}::-webkit-scrollbar-thumb:hover{background-color:hsl(var(--primary) / .6)}}@layer components{.animate-gentle-bounce{animation:gentle-bounce 2s infinite}.animate-fade-in{animation:fade-in .5s ease-in}.animate-slide-up{animation:slide-up .3s ease-out}.focus-gentle{@apply focus:outline-none focus:ring-2 focus:ring-primary/20 focus:border-primary;}.gradient-pulse-primary{background:linear-gradient(135deg,var(--pulse-blue),var(--pulse-purple))}.gradient-pulse-secondary{background:linear-gradient(135deg,var(--pulse-green),var(--pulse-blue))}.gradient-pulse-warm{background:linear-gradient(135deg,var(--pulse-coral),var(--pulse-purple))}.shadow-gentle{box-shadow:0 4px 20px #6b9bd31a}.dark .shadow-gentle{box-shadow:0 4px 20px #0000004d}.btn-gentle{@apply transition-all duration-200 transform hover:scale-[1.02] active:scale-[.98];}.mood-option{@apply transition-all duration-200 transform hover:scale-105 focus-gentle;}.mood-option:hover{@apply shadow-md;}.progress-gentle{@apply bg-gradient-to-r from-primary/20 to-primary/40;}.input-pulse{@apply border-2 border-muted focus:border-primary focus:ring-0 rounded-2xl transition-colors;}.card-pulse{@apply bg-card shadow-gentle rounded-3xl border-0;}}@layer utilities{.text-gradient-pulse{background:linear-gradient(135deg,var(--pulse-blue),var(--pulse-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.backdrop-gentle{@apply backdrop-blur-sm backdrop-brightness-105;}.animate-pulse-gentle{animation:pulse-gentle 2s cubic-bezier(.4,0,.6,1) infinite}}@keyframes gentle-bounce{0%,20%,53%,80%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1);transform:translateZ(0)}40%,43%{animation-timing-function:cubic-bezier(.755,.05,.855,.06);transform:translate3d(0,-8px,0)}70%{animation-timing-function:cubic-bezier(.755,.05,.855,.06);transform:translate3d(0,-4px,0)}90%{transform:translate3d(0,-2px,0)}}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes pulse-gentle{0%,to{opacity:1}50%{opacity:.7}}@media print{.print-hidden{display:none!important}.print-break{break-after:page}}@media (prefers-contrast: high){:root{--primary: hsl(210, 100%, 50%);--border: hsl(0, 0%, 40%)}}@media (prefers-reduced-motion: reduce){.animate-gentle-bounce,.animate-fade-in,.animate-slide-up,.animate-pulse-gentle{animation:none}.transition-all,.transition-colors,.transition-transform{transition:none}}
