/**
 * css/variables.css
 * Core Design System Variables and Resets
 */
:root {
    /* Color Palette */
    --color-bg-primary: #ffffff;
    --color-bg-secondary: #f8f9fa;
    --color-bg-tertiary: #f1f3f5;
    
    --color-text-primary: #1a1a1a;
    --color-text-secondary: #4a4a4a;
    --color-text-tertiary: #868e96;
    
    --color-primary: #228be6;
    --color-primary-hover: #1c7ed6;
    --color-danger: #fa5252;
    --color-border: #e9ecef;
    --color-shadow: rgba(0, 0, 0, 0.04);
    
    /* Typography */
    --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    --font-size-xs: 0.75rem;
    --font-size-sm: 0.875rem;
    --font-size-md: 1rem;
    --font-size-lg: 1.125rem;
    --font-size-xl: 1.25rem;
    
    /* Layout Properties */
    --header-height: 56px;
    --nav-height: 64px;
    --safe-area-bottom: env(safe-area-inset-bottom, 0px);
    --border-radius-sm: 8px;
    --border-radius-md: 12px;
    --border-radius-lg: 16px;
    
    /* Interactions */
    --touch-target-size: 48px;
    --transition-fast: 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

/* Base resets & structural defaults */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    -webkit-tap-highlight-color: transparent;
}

body {
    font-family: var(--font-sans);
    background-color: var(--color-bg-secondary);
    color: var(--color-text-primary);
    line-height: 1.5;
    overscroll-behavior-y: contain;
    overflow: hidden;
    user-select: none;
    -webkit-user-select: none;
}