/* =============================================================
   GM Atelie de Joias - Frontend CSS
   Tema visual: dourado quente #ead9a6
   ============================================================= */

/* Tema visual - sobrescreve DaisyUI primary */
[data-theme="light"] {
    --color-primary:         oklch(88% 0.065 83);
    --color-primary-content: oklch(25% 0.04 60);
    --color-secondary:       oklch(30% 0.02 60);
    --color-accent:          oklch(70% 0.09 83);
    --color-base-100:        #ffffff;
    --color-base-200:        #faf8f4;
    --color-base-300:        #f0ebe0;
}

/* Tipografia */
body {
    font-family: 'Inter', 'Segoe UI', system-ui, sans-serif;
    color: #2d2a24;
    background-color: #ffffff;
}

h1, h2, h3, h4, h5, h6,
.font-serif {
    font-family: 'Cormorant Garamond', 'Georgia', serif;
}

/* Logo */
.logo-gm {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 600;
    letter-spacing: 0.05em;
    color: #2d2a24;
}

/* Navbar */
.navbar-gm {
    background-color: #ffffff;
    border-bottom: 1px solid #ede8d8;
}

/* Botoes com spinner */
.btn-loading .spinner {
    display: inline-block;
}

.btn-loading .label {
    display: none;
}

.spinner {
    display: none;
}

/* Links da nav */
.nav-link {
    font-size: 0.8125rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-weight: 500;
    color: #4a4540;
    transition: color 0.2s;
    text-decoration: none;
}

.nav-link:hover,
.nav-link.active {
    color: oklch(55% 0.09 83);
}

/* Hero e secoes */
.section-heading {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(2rem, 5vw, 3.5rem);
    font-weight: 400;
    line-height: 1.2;
    color: #2d2a24;
}

.section-subheading {
    font-size: 0.8125rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: oklch(55% 0.09 83);
    font-weight: 500;
}

/* Card de produto */
.product-card {
    border: 1px solid #ede8d8;
    background: #ffffff;
    transition: box-shadow 0.25s, transform 0.25s;
}

.product-card:hover {
    box-shadow: 0 8px 30px rgba(0,0,0,0.08);
    transform: translateY(-2px);
}

/* Footer */
.footer-gm {
    background-color: #1a1714;
    color: #c8bfa8;
}

.footer-gm a {
    color: #c8bfa8;
    transition: color 0.2s;
}

.footer-gm a:hover {
    color: #ead9a6;
}

/* Formularios */
.input-gm,
.textarea-gm,
.select-gm {
    border: 1px solid #ded8c8;
    background: #ffffff;
    color: #2d2a24;
    border-radius: 4px;
    padding: 0.625rem 0.875rem;
    width: 100%;
    transition: border-color 0.2s;
    font-size: 0.9375rem;
}

.input-gm:focus,
.textarea-gm:focus,
.select-gm:focus {
    outline: none;
    border-color: oklch(75% 0.07 83);
    box-shadow: 0 0 0 3px oklch(88% 0.065 83 / 0.25);
}

/* Badges de flash */
.flash-success { background: #d4edda; color: #155724; border: 1px solid #c3e6cb; }
.flash-error   { background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; }
.flash-warning { background: #fff3cd; color: #856404; border: 1px solid #ffeaa7; }
.flash-info    { background: #cce5ff; color: #004085; border: 1px solid #b8daff; }

/* Divisor dourado */
.divider-gold {
    border: none;
    height: 1px;
    background: linear-gradient(to right, transparent, #ead9a6, transparent);
    margin: 2rem auto;
}

/* Animacao de entrada suave */
@keyframes fadeInUp {
    from { opacity: 0; transform: translateY(12px); }
    to   { opacity: 1; transform: translateY(0); }
}

.fade-in-up {
    animation: fadeInUp 0.45s ease forwards;
}

/* Utilitarios */
.text-gold    { color: oklch(75% 0.09 83); }
.bg-cream     { background-color: #faf8f4; }
.border-gold  { border-color: #ead9a6; }
