/* Codorso — estilos complementares ao Tailwind (CDN) */

:root {
    --co-bg:        #0b0b10;
    --co-surface:   #14141c;
    --co-surface-2: #1c1c28;
    --co-border:    #2a2a3a;
    --co-accent:    #8b5cf6;
    --co-accent-2:  #ec4899;
}

.theme-light {
    --co-bg:        #f7f7fb;
    --co-surface:   #ffffff;
    --co-surface-2: #eef0f6;
    --co-border:    #e2e4ec;
}

html, body { background: var(--co-bg); }

::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--co-border); border-radius: 999px; }
::-webkit-scrollbar-thumb:hover { background: var(--co-accent); }

.co-card {
    background: var(--co-surface);
    border: 1px solid var(--co-border);
    border-radius: 1rem;
    overflow: hidden;
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.co-card:hover {
    transform: translateY(-4px);
    border-color: var(--co-accent);
    box-shadow: 0 16px 40px -16px rgba(139, 92, 246, .45);
}

.co-gradient-text {
    background: linear-gradient(90deg, var(--co-accent), var(--co-accent-2));
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.co-glass {
    background: color-mix(in srgb, var(--co-surface) 70%, transparent);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border: 1px solid var(--co-border);
}

.co-skeleton {
    background: linear-gradient(90deg, var(--co-surface) 25%, var(--co-surface-2) 50%, var(--co-surface) 75%);
    background-size: 200% 100%;
    animation: co-shimmer 1.4s infinite;
}
@keyframes co-shimmer {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.co-line-clamp-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.co-line-clamp-3 {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

[data-co-animate] { opacity: 0; }
