/*
Theme Name: Jurible
Theme URI: https://jurible.com
Author: Ton nom ou Jurible
Author URI: https://jurible.com
Description: Thème FSE pour Jurible
Requires at least: 6.5
Tested up to: 6.5
Requires PHP: 8.0
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: jurible
*/

:root {
    color-scheme: light dark;
}

html {
    scroll-behavior: smooth;
}

@media (width < 768px) {
    .hide-on-mobile {
        display: none;
    }
}

/* Embed YouTube - taille réduite, centré, arrondi */
.wp-block-embed-youtube {
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
}

.wp-block-embed-youtube .wp-block-embed__wrapper {
    border-radius: var(--wp--custom--border-radius--lg);
    overflow: hidden;
}

.wp-block-embed-youtube iframe {
    border-radius: var(--wp--custom--border-radius--lg);
}

/* ==========================================================================
   JURIBLE DESIGN SYSTEM - Components
   ========================================================================== */

/* Icon Box */
.icon-box {
    width: fit-content;
}

/* ==========================================================================
   LISTS
   ========================================================================== */

/* Default lists in content */
.entry-content ul,
.entry-content ol,
.wp-block-post-content ul,
.wp-block-post-content ol {
    padding-left: 1.5em;
    margin-bottom: var(--wp--preset--spacing--sm);
}

.entry-content ul li::marker,
.entry-content ol li::marker,
.wp-block-post-content ul li::marker,
.wp-block-post-content ol li::marker {
    color: var(--wp--preset--color--text-dark);
}

.entry-content li,
.wp-block-post-content li {
    margin-bottom: 6px;
    padding-left: 4px;
}

/* List Bullet Primary - custom style with red bullets */
.list-bullet-primary {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.list-bullet-primary li {
    position: relative;
    padding-left: 1.5rem;
    color: var(--wp--preset--color--text-gray);
}

.list-bullet-primary li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.5em;
    width: 8px;
    height: 8px;
    background-color: var(--wp--preset--color--primary);
    border-radius: 50%;
}

/* ==========================================================================
   DIVIDERS / SEPARATORS
   ========================================================================== */

/* Base divider - override WordPress default */
hr,
.wp-block-separator {
    border: none;
    height: 2px;
    background: var(--wp--preset--color--border);
    margin: var(--wp--preset--spacing--md) 0;
}

/* Gradient divider */
.wp-block-separator.is-style-gradient,
.divider--gradient {
    background: linear-gradient(90deg, #B0001D 0%, #DC2626 50%, #7C3AED 100%);
    border-radius: 1px;
}

/* Divider with text */
.divider-text {
    display: flex;
    align-items: center;
    gap: var(--wp--preset--spacing--sm);
    margin: var(--wp--preset--spacing--md) 0;
}

.divider-text::before,
.divider-text::after {
    content: '';
    flex: 1;
    height: 2px;
    background: var(--wp--preset--color--border);
}

.divider-text span {
    font-size: 13px;
    color: var(--wp--preset--color--text-muted);
    white-space: nowrap;
}

/* Divider with text - gradient variant */
.divider-text--gradient::before,
.divider-text--gradient::after {
    background: linear-gradient(90deg, #B0001D 0%, #DC2626 50%, #7C3AED 100%);
}

/* ==========================================================================
   TABLES
   ========================================================================== */

/* Table wrapper — horizontal scroll for wide tables */
.wp-block-table {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* Default table style */
.wp-block-table table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
    background: var(--wp--preset--color--white);
    border-radius: var(--wp--custom--border-radius--lg);
    overflow: hidden;
    box-shadow: var(--wp--preset--shadow--xs);
}

/* Header */
.wp-block-table table th {
    background: var(--wp--preset--color--muted);
    font-weight: 600;
    text-align: left;
    padding: 16px 24px;
    color: var(--wp--preset--color--text-dark);
    border: none;
    min-width: 80px;
}

/* Cells */
.wp-block-table table td {
    padding: 16px 24px;
    color: var(--wp--preset--color--text-dark);
    border: none;
    border-bottom: 1px solid var(--wp--preset--color--border);
    min-width: 80px;
}

/* Première colonne (label) */
.wp-block-table table td:first-child {
    color: var(--wp--preset--color--text-muted);
}

/* Dernière ligne sans bordure */
.wp-block-table table tr:last-child td {
    border-bottom: none;
}

/* ==========================================================================
   LINKS
   ========================================================================== */

a:where(:not(.wp-element-button)) {
    text-underline-offset: 3px;
    transition: color var(--wp--custom--transition--default);
}

/* ==========================================================================
   UTILITY CLASSES - Transitions
   ========================================================================== */

.transition-fast {
    transition: all var(--wp--custom--transition--fast);
}

.transition-default {
    transition: all var(--wp--custom--transition--default);
}

.transition-slow {
    transition: all var(--wp--custom--transition--slow);
}

/* ==========================================================================
   UTILITY CLASSES - Z-Index
   ========================================================================== */

.z-dropdown {
    position: relative;
    z-index: var(--wp--custom--z-index--dropdown);
}

.z-sticky {
    position: relative;
    z-index: var(--wp--custom--z-index--sticky);
}

.z-modal-backdrop {
    position: relative;
    z-index: var(--wp--custom--z-index--modal-backdrop);
}

.z-modal {
    position: relative;
    z-index: var(--wp--custom--z-index--modal);
}

.z-toast {
    position: relative;
    z-index: var(--wp--custom--z-index--toast);
}

.z-tooltip {
    position: relative;
    z-index: var(--wp--custom--z-index--tooltip);
}

/* ==========================================================================
   UTILITY CLASSES - Visibility
   ========================================================================== */

@media (min-width: 768px) {
    .hide-on-desktop {
        display: none;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    .hide-on-tablet {
        display: none;
    }
}

