@import "tailwindcss";

/* Force light mode: dark: classes only activate with .dark ancestor */
@custom-variant dark (&:is(.dark *));

:root {
  --background: #FFFAF5;
  --foreground: #171717;
  --surface: #FFFFFF;
  --brand-50:  #FFF8F0;
  --brand-100: #FFEDD5;
  --brand-200: #FFD6A5;
  --brand-300: #FFBC72;
  --brand-400: #F5A623;
  --brand-500: #F59E3F;
  --brand-600: #E8720C;
  --brand-700: #C45A00;
  --brand-800: #9A4500;
  --brand-900: #6B3000;
  --brand-950: #3D1A00;
  /* #344 z-index 토큰 (모달/오버레이가 매직 넘버 없이 일관) */
  --z-bottom-sheet: 50;
  --z-filter-sheet: 60;
  --z-modal: 70;
  color-scheme: only light !important;
}

@theme inline {
  --color-background: var(--background);
  --color-foreground: var(--foreground);
  --color-surface: var(--surface);
  --color-brand-50: var(--brand-50);
  --color-brand-100: var(--brand-100);
  --color-brand-200: var(--brand-200);
  --color-brand-300: var(--brand-300);
  --color-brand-400: var(--brand-400);
  --color-brand-500: var(--brand-500);
  --color-brand-600: var(--brand-600);
  --color-brand-700: var(--brand-700);
  --color-brand-800: var(--brand-800);
  --color-brand-900: var(--brand-900);
  --color-brand-950: var(--brand-950);
  --font-sans: var(--font-pretendard), var(--font-geist), system-ui, sans-serif;
}

/* Dark mode CSS vars (disabled — activate by adding .dark class to <html>) */
/*
.dark {
  --background: #12100E;
  --foreground: #ededed;
  --surface: #1C1916;
}
*/

body {
  background: var(--background);
  color: var(--foreground);
}

html, body, #__next {
  height: 100%;
  margin: 0;
}

/* Force Google Maps InfoWindow to light mode (maps don't support dark) */
.gm-style .gm-style-iw,
.gm-style .gm-style-iw-c,
.gm-style .gm-style-iw-d,
.gm-style .gm-style-iw-t {
  background-color: #ffffff !important;
  color: #171717 !important;
  color-scheme: light !important;
}

.gm-style .gm-style-iw-d {
  overflow: auto !important;
}

/* Hide scrollbar but keep scrolling */
@layer utilities {
  .scrollbar-hide {
    -ms-overflow-style: none !important;
    scrollbar-width: none !important;
    overflow: -moz-scrollbars-none;
  }
  .scrollbar-hide::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
  }
}

/* Material Symbols */
.material-symbols-rounded {
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
  font-size: inherit;
  line-height: 1;
  vertical-align: middle;
}
.material-symbols-rounded.filled {
  font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

/* Safe area for iOS bottom nav */
.safe-area-bottom {
  padding-bottom: env(safe-area-inset-bottom, 0px);
}

/* Filter sheet slide-up animation */
@keyframes slide-up {
  from { transform: translateY(100%); }
  to { transform: translateY(0); }
}
.animate-slide-up {
  animation: slide-up 0.25s ease-out;
}
