/* GMTECNOLED - Cookie Consent System */
:root {
    --gm-cookie-bg: #1f1f1f;
    --gm-cookie-text: #ffffff;
    --gm-cookie-muted: #d7d7d7;
    --gm-cookie-border: rgba(255, 255, 255, .18);
    --gm-cookie-primary: #0d6efd;
    --gm-cookie-success: #198754;
    --gm-cookie-radius: 14px;
    --gm-cookie-shadow: 0 15px 45px rgba(0, 0, 0, .32);
}
.gm-cookie-overlay { position: fixed; inset: 0; z-index: 9998; background: rgba(0,0,0,.35); display: none; }
.gm-cookie-banner { position: fixed; left: 20px; right: 20px; bottom: 20px; z-index: 9999; max-width: 980px; margin: 0 auto; background: var(--gm-cookie-bg); color: var(--gm-cookie-text); border-radius: var(--gm-cookie-radius); box-shadow: var(--gm-cookie-shadow); padding: 24px; display: none; }
.gm-cookie-banner.is-visible, .gm-cookie-overlay.is-visible { display: block; }
.gm-cookie-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; margin-bottom: 12px; }
.gm-cookie-title { color: var(--gm-cookie-text); font-size: 1.15rem; margin: 0; }
.gm-cookie-text { color: var(--gm-cookie-muted); line-height: 1.65; margin-bottom: 16px; }
.gm-cookie-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.gm-cookie-btn { border: 1px solid var(--gm-cookie-border); border-radius: 999px; padding: 9px 16px; font-size: .92rem; line-height: 1.2; cursor: pointer; transition: opacity .2s ease, transform .2s ease; }
.gm-cookie-btn:hover { opacity: .9; transform: translateY(-1px); }
.gm-cookie-btn-primary { background: var(--gm-cookie-primary); color: #fff; border-color: var(--gm-cookie-primary); }
.gm-cookie-btn-success { background: var(--gm-cookie-success); color: #fff; border-color: var(--gm-cookie-success); }
.gm-cookie-btn-outline { background: transparent; color: #fff; }
.gm-cookie-link { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.gm-cookie-panel { border-top: 1px solid var(--gm-cookie-border); margin-top: 18px; padding-top: 18px; display: none; }
.gm-cookie-panel.is-visible { display: block; }
.gm-cookie-category { border: 1px solid var(--gm-cookie-border); border-radius: 12px; padding: 14px; margin-bottom: 10px; }
.gm-cookie-category-header { display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.gm-cookie-category h6 { color: #fff; margin: 0 0 6px; font-size: 1rem; }
.gm-cookie-category p { color: var(--gm-cookie-muted); margin: 0; line-height: 1.55; font-size: .92rem; }
.gm-cookie-switch { position: relative; display: inline-block; width: 48px; min-width: 48px; height: 26px; }
.gm-cookie-switch input { opacity: 0; width: 0; height: 0; }
.gm-cookie-slider { position: absolute; cursor: pointer; inset: 0; background-color: #777; transition: .25s; border-radius: 999px; }
.gm-cookie-slider:before { position: absolute; content: ""; width: 20px; height: 20px; left: 3px; bottom: 3px; background-color: white; transition: .25s; border-radius: 50%; }
.gm-cookie-switch input:checked + .gm-cookie-slider { background-color: var(--gm-cookie-success); }
.gm-cookie-switch input:checked + .gm-cookie-slider:before { transform: translateX(22px); }
.gm-cookie-switch input:disabled + .gm-cookie-slider { opacity: .55; cursor: not-allowed; }
.gm-cookie-small { color: var(--gm-cookie-muted); font-size: .84rem; margin-top: 12px; }
@media (max-width: 768px) {
    .gm-cookie-banner { left: 10px; right: 10px; bottom: 10px; padding: 18px; max-height: calc(100vh - 20px); overflow-y: auto; }
    .gm-cookie-actions { flex-direction: column; }
    .gm-cookie-btn { width: 100%; }
    .gm-cookie-category-header { align-items: flex-start; }
}
