/*
 Theme Name:   CaliOptik
 Theme URI:    https://calioptik.com
 Description:  CaliOptik - Premium Gözlük E-Ticaret Teması. Astra child theme üzerine inşa edilmiş, WooCommerce uyumlu, PAYTR entegrasyonlu modern optik mağazası teması.
 Author:       CaliOptik
 Author URI:   https://calioptik.com
 Template:     astra
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  https://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  calioptik
 Tags:         woocommerce, e-commerce, eyewear, optical, responsive, modern
 Requires at least: 6.0
 Tested up to: 6.7
 Requires PHP: 8.1
*/

/* ============================================
   CaliOptik Design Tokens
   ============================================ */

:root {
    /* --- Color Palette --- */
    --co-primary:       #171717;
    --co-secondary:     #F4F1EB;
    --co-bg:            #FFFFFF;
    --co-text:          #202020;
    --co-accent:        #B59A7A;
    --co-accent-hover:  #A3886A;
    --co-accent-light:  #D4C4B0;
    --co-border:        #E8E8E8;
    --co-border-light:  #F0F0F0;
    --co-gray-50:       #FAFAFA;
    --co-gray-100:      #F5F5F5;
    --co-gray-200:      #E5E5E5;
    --co-gray-300:      #D4D4D4;
    --co-gray-400:      #A3A3A3;
    --co-gray-500:      #737373;
    --co-gray-600:      #525252;
    --co-gray-700:      #404040;
    --co-gray-800:      #262626;
    --co-gray-900:      #171717;
    --co-success:       #16A34A;
    --co-warning:       #F59E0B;
    --co-danger:        #DC2626;
    --co-info:          #2563EB;

    /* --- Typography --- */
    --co-font-heading:  'Playfair Display', Georgia, 'Times New Roman', serif;
    --co-font-body:     'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --co-font-mono:     'JetBrains Mono', 'Fira Code', monospace;

    /* Font Sizes */
    --co-text-xs:       0.75rem;     /* 12px */
    --co-text-sm:       0.875rem;    /* 14px */
    --co-text-base:     1rem;        /* 16px */
    --co-text-lg:       1.125rem;    /* 18px */
    --co-text-xl:       1.25rem;     /* 20px */
    --co-text-2xl:      1.5rem;      /* 24px */
    --co-text-3xl:      1.875rem;    /* 30px */
    --co-text-4xl:      2.25rem;     /* 36px */
    --co-text-5xl:      3rem;        /* 48px */
    --co-text-6xl:      3.75rem;     /* 60px */

    /* Font Weights */
    --co-font-light:    300;
    --co-font-regular:  400;
    --co-font-medium:   500;
    --co-font-semibold: 600;
    --co-font-bold:     700;

    /* Line Heights */
    --co-leading-tight:   1.25;
    --co-leading-snug:    1.375;
    --co-leading-normal:  1.5;
    --co-leading-relaxed: 1.625;
    --co-leading-loose:   2;

    /* Letter Spacing */
    --co-tracking-tight:  -0.025em;
    --co-tracking-normal: 0;
    --co-tracking-wide:   0.025em;
    --co-tracking-wider:  0.05em;
    --co-tracking-widest: 0.1em;

    /* --- Spacing --- */
    --co-space-1:   0.25rem;   /* 4px */
    --co-space-2:   0.5rem;    /* 8px */
    --co-space-3:   0.75rem;   /* 12px */
    --co-space-4:   1rem;      /* 16px */
    --co-space-5:   1.25rem;   /* 20px */
    --co-space-6:   1.5rem;    /* 24px */
    --co-space-8:   2rem;      /* 32px */
    --co-space-10:  2.5rem;    /* 40px */
    --co-space-12:  3rem;      /* 48px */
    --co-space-16:  4rem;      /* 64px */
    --co-space-20:  5rem;      /* 80px */
    --co-space-24:  6rem;      /* 96px */
    --co-space-32:  8rem;      /* 128px */

    /* --- Layout --- */
    --co-container:     1320px;
    --co-container-sm:  720px;
    --co-container-md:  960px;
    --co-container-lg:  1140px;
    --co-container-xl:  1320px;
    --co-sidebar-width: 280px;

    /* --- Borders --- */
    --co-radius-sm:   4px;
    --co-radius-md:   8px;
    --co-radius-lg:   12px;
    --co-radius-xl:   16px;
    --co-radius-2xl:  24px;
    --co-radius-full: 9999px;

    /* --- Shadows --- */
    --co-shadow-sm:   0 1px 2px rgba(0, 0, 0, 0.05);
    --co-shadow-md:   0 4px 6px -1px rgba(0, 0, 0, 0.07), 0 2px 4px -1px rgba(0, 0, 0, 0.04);
    --co-shadow-lg:   0 10px 15px -3px rgba(0, 0, 0, 0.08), 0 4px 6px -2px rgba(0, 0, 0, 0.03);
    --co-shadow-xl:   0 20px 25px -5px rgba(0, 0, 0, 0.08), 0 10px 10px -5px rgba(0, 0, 0, 0.02);
    --co-shadow-2xl:  0 25px 50px -12px rgba(0, 0, 0, 0.15);
    --co-shadow-card: 0 1px 3px rgba(0, 0, 0, 0.04);

    /* --- Transitions --- */
    --co-transition-fast:   150ms cubic-bezier(0.4, 0, 0.2, 1);
    --co-transition-base:   250ms cubic-bezier(0.4, 0, 0.2, 1);
    --co-transition-slow:   350ms cubic-bezier(0.4, 0, 0.2, 1);
    --co-transition-spring: 500ms cubic-bezier(0.34, 1.56, 0.64, 1);

    /* --- Z-Index --- */
    --co-z-dropdown:  1000;
    --co-z-sticky:    1020;
    --co-z-fixed:     1030;
    --co-z-overlay:   1040;
    --co-z-modal:     1050;
    --co-z-popover:   1060;
    --co-z-tooltip:   1070;
}


/* ============================================
   Global Base Styles
   ============================================ */

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

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

body {
    font-family: var(--co-font-body);
    font-size: var(--co-text-base);
    font-weight: var(--co-font-regular);
    line-height: var(--co-leading-normal);
    color: var(--co-text);
    background-color: var(--co-bg);
    letter-spacing: var(--co-tracking-normal);
    overflow-x: hidden;
}

/* --- Headings --- */
h1, h2, h3, h4, h5, h6,
.entry-title,
.woocommerce-loop-product__title,
.product_title {
    font-family: var(--co-font-heading);
    font-weight: var(--co-font-bold);
    line-height: var(--co-leading-tight);
    color: var(--co-primary);
    letter-spacing: var(--co-tracking-tight);
}

h1 { font-size: var(--co-text-5xl); }
h2 { font-size: var(--co-text-4xl); }
h3 { font-size: var(--co-text-3xl); }
h4 { font-size: var(--co-text-2xl); }
h5 { font-size: var(--co-text-xl); }
h6 { font-size: var(--co-text-lg); }

/* --- Links --- */
a {
    color: var(--co-primary);
    text-decoration: none;
    transition: color var(--co-transition-fast);
}

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

/* --- Images --- */
img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* --- Selection --- */
::selection {
    background-color: var(--co-accent);
    color: var(--co-bg);
}

/* --- Scrollbar (Webkit) --- */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: var(--co-gray-100);
}

::-webkit-scrollbar-thumb {
    background: var(--co-gray-400);
    border-radius: var(--co-radius-full);
}

::-webkit-scrollbar-thumb:hover {
    background: var(--co-gray-500);
}

/* --- Container Override --- */
.ast-container,
.site-content .ast-container {
    max-width: var(--co-container);
    padding-left: var(--co-space-6);
    padding-right: var(--co-space-6);
}

/* --- Astra Theme Overrides --- */
.ast-separate-container .ast-article-single,
.ast-separate-container .ast-article-post {
    background: transparent;
    padding: 0;
}

.ast-separate-container .ast-article-post {
    margin-bottom: 0;
}

.ast-single-post .entry-content,
.ast-single-post .entry-header {
    padding: 0;
}
