/* Explain: Base reset and typography defaults for the studio site */
* {
    box-sizing: border-box;
    overflow-wrap: break-word;
}

html {
    background: var(--background-color);
    color: var(--text-color);
    scroll-padding-top: 92px;
    scroll-padding-bottom: 80px;
    overflow-x: hidden;
}

[x-cloak] { display: none !important; }

body {
    margin: 0;
    overflow-x: hidden;
    font-size: 17px;
    background:
        radial-gradient(circle at 12% 18%, rgba(163, 177, 138, 0.25), transparent 26rem),
        radial-gradient(circle at 88% 8%, rgba(88, 129, 87, 0.15), transparent 24rem),
        var(--background-color);
    color: var(--text-color);
    font-family: var(--font-body);
    text-rendering: optimizeLegibility;
}

button,
a,
select {
    cursor: pointer;
}

select option {
    background-color: var(--background-color);
    color: var(--text-color);
}

img {
    display: block;
    max-width: 100%;
}

::selection {
    background: var(--accent-color);
    color: #ffffff;
}

/* Hide Google Translate UI */
.goog-te-banner-frame.skiptranslate, .goog-te-gadget-icon { display: none !important; }
body { top: 0px !important; }
#google_translate_element { display: none !important; }
.goog-tooltip { display: none !important; }
.goog-tooltip:hover { display: none !important; }
.goog-text-highlight { background-color: transparent !important; border: none !important; box-shadow: none !important; }

/* Mode Accessibilité (A11y) */
html.a11y-mode {
    font-size: 115% !important;
    --background-color: #ffffff !important;
    --surface-color: #f5f5f5 !important;
    --text-color: #000000 !important;
    --text-muted: #1a1a1a !important;
    --accent-color: #005a00 !important;
    --glass-border: #333333 !important;
}
html.a11y-mode .glass-panel {
    background: #ffffff !important;
    border: 2px solid #333 !important;
    box-shadow: none !important;
}
html.a11y-mode .text-\[var\(--text-muted\)\] {
    color: #1a1a1a !important;
    font-weight: 500;
}

@media (max-width: 767px) {
    body {
        padding-bottom: calc(4.5rem + env(safe-area-inset-bottom));
    }
}

.hide-scrollbar::-webkit-scrollbar {
    display: none;
}
.hide-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}
