/*
Theme Name: Numismática Argentina
Theme URI: https://historiasenmetal.com.ar
Author: NUMIS Project
Description: Theme custom para catálogo numismático, archivo histórico y exploración geográfica de piezas argentinas.
Version: 1.0.0
Text Domain: theme-numismatica
Requires at least: 5.0
Requires PHP: 7.4
*/

/* ============================================
   DESIGN TOKENS
   ============================================ */

:root {
    /* ---- Stitch Design System Colors (from image) ---- */
    --color-primary: #1A1C20;
    --color-secondary: #F5F2E9;
    --color-tertiary: #C5A059;
    --color-bg-body: #F5F2E9;
    --color-bg-card: #ffffff;
    --color-bg-surface: #e5e2da;
    --color-bg-sidebar: #F5F2E9;
    --color-bg-dark: #1A1C20;
    --color-bg-dark-card: #2a2c30;
    --color-bg-header: #F5F2E9;
    --color-bg-footer: #e5e2da;
    --color-bg-input: #ffffff;
    --color-bg-hero: #F5F2E9;

    /* ---- Text ---- */
    --color-text-primary: #1A1C20;
    --color-text-secondary: #474741;
    --color-text-muted: #787777;
    --color-text-on-dark: #ffffff;
    --color-text-on-dark-muted: #e5e2da;
    --color-text-label: #1A1C20;

    /* ---- Accent (Museum Gold) ---- */
    --color-accent: #C5A059;
    --color-accent-hover: #a17f3c;
    --color-accent-light: #ffdea5;
    --color-accent-bg: rgba(197, 160, 89, 0.08);
    --color-accent-border: rgba(197, 160, 89, 0.3);

    /* ---- Borders ---- */
    --color-border: #787777;
    --color-border-light: #c6c6cb;
    --color-border-dark: #1A1C20;
    --color-border-input: #787777;


    /* ---- Typography ---- */
    --font-display: 'Playfair Display', Georgia, serif;
    --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-mono: 'IBM Plex Sans', 'JetBrains Mono', monospace;

    --font-size-xs: 0.75rem;
    --font-size-sm: 0.8125rem;
    --font-size-base: 0.9375rem;
    --font-size-md: 1rem;
    --font-size-lg: 1.125rem;
    --font-size-xl: 1.375rem;
    --font-size-2xl: 1.75rem;
    --font-size-3xl: 2.25rem;
    --font-size-4xl: 3rem;

    --line-height-tight: 1.2;
    --line-height-base: 1.6;
    --line-height-relaxed: 1.8;

    --letter-spacing-tight: -0.02em;
    --letter-spacing-wide: 0.05em;
    --letter-spacing-wider: 0.1em;

    /* ---- Spacing ---- */
    --space-xs: 0.25rem;
    --space-sm: 0.5rem;
    --space-md: 1rem;
    --space-lg: 1.5rem;
    --space-xl: 2rem;
    --space-2xl: 3rem;
    --space-3xl: 4rem;
    --space-4xl: 6rem;

    /* ---- Radius ---- */
    --radius-sm: 4px;
    --radius-md: 8px;
    --radius-lg: 12px;

    /* ---- Shadows ---- */
    --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.06);
    --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.08);
    --shadow-lg: 0 12px 24px -10px rgba(0, 0, 0, 0.15);
    --shadow-card: 0 2px 6px rgba(0, 0, 0, 0.04);
    --shadow-card-hover: 0 12px 24px -10px rgba(0, 0, 0, 0.15);

    /* ---- Transitions ---- */
    --transition-fast: 150ms ease;
    --transition-base: 250ms ease;
    --transition-slow: 400ms ease;

    /* ---- Layout ---- */
    --sidebar-width: 260px;
    --header-height: 80px;
    --content-max-width: 1280px;
    --map-height: 450px;
}


/* ============================================
   BASE STYLES
   ============================================ */

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body {
    font-family: var(--font-body);
    font-size: var(--font-size-base);
    line-height: var(--line-height-base);
    color: var(--color-text-primary);
    background-color: var(--color-bg-body);
    margin: 0;
    padding: 0;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-display);
    font-weight: 700;
    line-height: var(--line-height-tight);
    color: var(--color-text-primary);
    margin-top: 0;
}

h1 { font-size: var(--font-size-3xl); letter-spacing: var(--letter-spacing-tight); }
h2 { font-size: var(--font-size-2xl); }
h3 { font-size: var(--font-size-xl); }
h4 { font-size: var(--font-size-lg); }

p { margin-top: 0; margin-bottom: var(--space-md); }

a {
    color: var(--color-accent);
    text-decoration: none;
    transition: color var(--transition-fast);
}

a:hover { color: var(--color-accent-hover); }

img { max-width: 100%; height: auto; }

.label-uppercase {
    font-family: var(--font-body);
    font-size: var(--font-size-xs);
    font-weight: 600;
    letter-spacing: var(--letter-spacing-wider);
    text-transform: uppercase;
    color: var(--color-accent);
}

.serif-italic {
    font-family: var(--font-display);
    font-style: italic;
    font-weight: 400;
    color: var(--color-text-secondary);
}
