/* Gtikets - estilos complementarios a Tailwind, estética estilo Linear */

::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--color-border); border-radius: 8px; }
::-webkit-scrollbar-thumb:hover { background: var(--gray-600); }

* { scrollbar-width: thin; scrollbar-color: var(--color-border) transparent; }

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    -webkit-font-smoothing: antialiased;
}

/* Wiki de proyecto - artículos renderizados desde Markdown (includes/markdown.php) */
.prose-wiki h1 { font-size: 1.4rem; font-weight: 600; color: var(--gray-200); margin: 1.5rem 0 .75rem; }
.prose-wiki h2 { font-size: 1.2rem; font-weight: 600; color: var(--gray-200); margin: 1.25rem 0 .5rem; }
.prose-wiki h3 { font-size: 1.05rem; font-weight: 600; color: var(--gray-200); margin: 1rem 0 .5rem; }
.prose-wiki h4, .prose-wiki h5, .prose-wiki h6 { font-weight: 600; color: var(--gray-200); margin: .75rem 0 .5rem; }
.prose-wiki p { margin: 0 0 .75rem; }
.prose-wiki ul { list-style: disc; padding-left: 1.5rem; margin: 0 0 .75rem; }
.prose-wiki ol { list-style: decimal; padding-left: 1.5rem; margin: 0 0 .75rem; }
.prose-wiki li { margin: .25rem 0; }
.prose-wiki blockquote { border-left: 3px solid var(--color-border); padding-left: 1rem; color: var(--gray-400); margin: 0 0 .75rem; }
.prose-wiki hr { border: none; border-top: 1px solid var(--color-border); margin: 1.5rem 0; }
.prose-wiki pre { margin: 0 0 .75rem; }
.prose-wiki > *:first-child { margin-top: 0; }
.prose-wiki > *:last-child { margin-bottom: 0; }

.kanban-col.drag-over {
    background-color: rgba(99, 102, 241, 0.06);
    outline: 1px dashed rgba(99, 102, 241, 0.4);
    outline-offset: -4px;
}

.ticket-card {
    cursor: grab;
    transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.ticket-card:active { cursor: grabbing; }
.ticket-card.dragging { opacity: 0.4; }
.ticket-card:hover {
    border-color: var(--gray-600);
    box-shadow: 0 1px 3px rgba(0,0,0,.4);
}

.fade-in { animation: fadeIn .15s ease; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(2px);} to { opacity: 1; transform: translateY(0);} }

.modal-backdrop { animation: fadeIn .12s ease; }

.progress-bar-track { background: var(--color-panel); }

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

/* Dropzone de adjuntos (arrastrar y soltar) */
.gt-dropzone {
    cursor: pointer;
    border: 1.5px dashed var(--color-border);
    border-radius: 0.5rem;
    padding: 0.75rem 1rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    transition: border-color .12s ease, background-color .12s ease;
    background: var(--color-surface);
}
.gt-dropzone:hover { border-color: var(--gray-600); background: var(--color-panel); }
.gt-dropzone.gt-dropzone-active { border-color: #6366f1; background: rgba(99, 102, 241, 0.06); }
.gt-dropzone input[type="file"] { display: none; }
.gt-dropzone-label { pointer-events: none; }

/* Select2 - a juego con el tema (claro/oscuro) del resto de la app */
.select2-container { width: 100% !important; }
.select2-container--default .select2-selection--single {
    background-color: var(--color-panel);
    border: 1px solid var(--color-border);
    border-radius: 0.375rem;
    height: 34px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--gray-200);
    line-height: 32px;
    padding-left: 10px;
    font-size: 0.875rem;
}
.select2-container--default .select2-selection--single .select2-selection__arrow { height: 32px; }
.select2-container--default .select2-selection--single .select2-selection__placeholder { color: var(--gray-500); }
.select2-dropdown {
    background-color: var(--color-panel);
    border: 1px solid var(--color-border);
    z-index: 200;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
    background-color: var(--color-surface);
    border: 1px solid var(--color-border);
    color: var(--gray-200);
    border-radius: 0.25rem;
}
.select2-results__option {
    color: var(--gray-300);
    font-size: 0.875rem;
}
.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: #6366f1;
    color: #fff;
}
.select2-container--default .select2-results__option[aria-selected="true"] {
    background-color: var(--color-border);
}
.select2-container--open .select2-dropdown { z-index: 200; }
.select2-search__field:focus { outline: none; }
