/* v3/assets/styles.css */
/* base */
html,body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial}

/* glass */
.glass{
    backdrop-filter: blur(10px);
    background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
    border: 1px solid rgba(255,255,255,.08);
}

/* details tweaks */
details > summary::-webkit-details-marker{display:none}
details > summary::marker{content:""}
details > summary:hover{background:rgba(255,255,255,.03); border-radius:.75rem}
details[open]{background:inherit}

/* dark scrollbars */
.dark-scroll{
    scrollbar-width: thin;
    scrollbar-color: rgba(71,85,105,.5) transparent;
}
.dark-scroll::-webkit-scrollbar{ width:8px; height:8px; }
.dark-scroll::-webkit-scrollbar-track{ background: transparent; }
.dark-scroll::-webkit-scrollbar-thumb{
    background: rgba(71,85,105,.5);
    border-radius: 9999px;
}

/* Filters-compact header look */
[data-component="filters-compact"] [data-accordion-target]{
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.10);
    color: #e2e8f0;
    transition: background-color .15s ease, border-color .15s ease;
}
[data-component="filters-compact"] [data-accordion-target]:hover,
[data-component="filters-compact"] [data-accordion-target]:focus{
    background: rgba(255,255,255,.05);
    border-color: rgba(255,255,255,.15);
}

/* Panel body */
[data-component="filters-compact"] [id^="fc-body-"] > div{
    background: rgba(15,23,42,.85);
    border: 1px solid rgba(255,255,255,.10);
    border-radius: .5rem;
    padding: .75rem;
}

/* === Scoped positioning when component uses its own internal trigger
   (раньше было безусловно и ломало размещение с внешней кнопкой) === */
[data-component="filters-compact"][data-anchor="self"]{ position: relative; }
[data-component="filters-compact"][data-anchor="self"] [data-role="panel"]{
    position: absolute;
    right: 0;
    top: calc(100% + .5rem);
}

/* optional fade gradient helper for collapsibles */
[data-collapsible]::before{ content: ""; display:none; }
[data-collapsible][data-has-fade]::before{
    display: block; position: absolute; left:0; right:0; bottom:2.25rem; height:2rem;
    background: linear-gradient(to top, rgba(2,6,23,.95), rgba(2,6,23,0)); pointer-events:none;
}

/* Fix for modal scroll on touch devices */
.modal-scroll-fix {
    -webkit-overflow-scrolling: touch;
    scrollbar-gutter: stable;
}

/* Улучшенные стили для модальных окон */
.modal-overlay {
    -webkit-overflow-scrolling: touch;
}

.modal-content {
    max-height: 90vh;
    display: flex;
    flex-direction: column;
}

.modal-scroll-container {
    flex: 1;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-gutter: stable;
}

/* Fix для iOS Safari */
@supports (-webkit-touch-callout: none) {
    .modal-scroll-container {
        -webkit-overflow-scrolling: touch;
    }
}