/* Load order 5/5 — Turkish locale accent overrides (must load last). */

/* ============================================================================
   Turkish Mode Accent Color Overrides
   ============================================================================
   Override all blue accent colors with #C8102E when in Turkish mode
   ============================================================================ */

html[lang="tr"] .auth-banner button {
    background-color: #C8102E;
}

html[lang="tr"] .auth-banner button:hover:not(:disabled) {
    background-color: #A00D25;
}

html[lang="tr"] .url-input-container button {
    background-color: #C8102E;
}

html[lang="tr"] .url-input-container button:hover {
    background-color: #A00D25;
}

html[lang="tr"] .drop-zone.dragover {
    border-color: #C8102E;
    background-color: #ffe7ea;
}

html[lang="tr"] .drop-zone-content svg {
    color: #C8102E;
}

html[lang="tr"] .file-input-label {
    background-color: #C8102E;
}

html[lang="tr"] .file-input-label:hover {
    background-color: #A00D25;
}

html[lang="tr"] .control-row button {
    background-color: #C8102E;
    color: white;
}

html[lang="tr"] .control-row button:hover:not(:disabled) {
    background-color: #A00D25;
}

html[lang="tr"] .control-row button:disabled {
    background-color: #d5d9df;
    color: #7a848f;
}

html[lang="tr"] .sidebar h3 {
    border-bottom: 2px solid #C8102E;
}

html[lang="tr"] .sidebar-header {
    border-bottom: 2px solid #C8102E;
    -webkit-tap-highlight-color: rgba(200, 16, 46, 0.2);
}

html[lang="tr"] .sidebar-header .sidebar-toggle-icon {
    color: #C8102E;
}

html[lang="tr"] body.mobile-behavior .sidebar-header {
    border-bottom: 2px solid #C8102E !important;
    -webkit-tap-highlight-color: rgba(200, 16, 46, 0.2) !important;
}

html[lang="tr"] body.mobile-behavior .sidebar-header .sidebar-toggle-icon {
    color: #C8102E !important;
}

html[lang="tr"] .stat-row strong {
    color: #C8102E;
}

html[lang="tr"] .stat-value {
    color: #C8102E;
}

html[lang="tr"] .legend-item.active {
    background-color: #ffe7ea;
    border: 2px solid #C8102E;
}

html[lang="tr"] .legend-item {
    -webkit-tap-highlight-color: rgba(200, 16, 46, 0.2);
}

html[lang="tr"] .filter-tag.active {
    background-color: #C8102E;
}

html[lang="tr"] .token-container {
    -webkit-tap-highlight-color: rgba(200, 16, 46, 0.2);
}

html[lang="tr"] .spinner {
    border-top: 3px solid #C8102E;
}

html[lang="tr"] .bar-fill {
    background-color: #C8102E;
}

html[lang="tr"] .toggle-btn:hover {
    border-color: #C8102E;
    color: #C8102E;
    box-shadow: 0 2px 4px rgba(200, 16, 46, 0.15);
}

html[lang="tr"] .toggle-btn.active {
    background-color: #C8102E;
    border-color: #C8102E;
}

html[lang="tr"] .toggle-btn.active:hover {
    background-color: #A00D25;
    border-color: #A00D25;
}

html[lang="tr"] .frequency-item:hover {
    background-color: #ffe7ea;
    border-left-color: #C8102E;
    box-shadow: 0 2px 4px rgba(200, 16, 46, 0.1);
}

html[lang="tr"] .frequency-item.selected {
    background-color: #ffe7ea;
    border-left-color: #C8102E;
    box-shadow: 0 2px 6px rgba(200, 16, 46, 0.2);
}

html[lang="tr"] .frequency-item.selected .frequency-word {
    color: #C8102E;
}

html[lang="tr"] .frequency-item.selected .frequency-count {
    color: #A00D25;
}

html[lang="tr"] .frequency-item:hover .frequency-word {
    color: #C8102E;
}

html[lang="tr"] .frequency-count {
    color: #C8102E;
}

html[lang="tr"] .frequency-item::before {
    background: linear-gradient(90deg, #C8102E, #A00D25);
}

html[lang="tr"] .frequency-item {
    -webkit-tap-highlight-color: rgba(200, 16, 46, 0.2);
}

html[lang="tr"] .tab-button.active {
    color: #C8102E;
    border-bottom-color: #C8102E;
}

html[lang="tr"] .download-btn {
    background-color: #C8102E;
}

html[lang="tr"] .download-btn:hover {
    background-color: #A00D25;
}

html[lang="tr"] .download-btn:active {
    background-color: #8A0A1A;
}

html[lang="tr"] .main-tab-button.active {
    color: #C8102E;
    border-left-color: #C8102E;
    border-bottom-color: #C8102E;
}

@media (min-width: 1024px) {
    html[lang="tr"] .main-tab-button.active {
        border-bottom-color: transparent;
    }
}

html[lang="tr"] .feature-description {
    border-left: 4px solid #C8102E;
}

html[lang="tr"] .feature-description strong {
    color: #C8102E;
}

html[lang="tr"] .generate-btn {
    background-color: #C8102E;
}

html[lang="tr"] .generate-btn:hover:not(:disabled) {
    background-color: #A00D25;
}

html[lang="tr"] .ngram-loading .spinner {
    border-top: 4px solid #C8102E;
}

html[lang="tr"] .ngram-expand-btn {
    background-color: rgba(200, 16, 46, 0.9);
}

html[lang="tr"] .ngram-expand-btn:hover {
    background-color: rgba(160, 13, 37, 1);
}

html[lang="tr"] .ngram-visualization .bar:hover {
    fill: #A00D25;
}

html[lang="tr"] .wordcloud-loading .spinner {
    border-top: 4px solid #C8102E;
}

html[lang="tr"] .wordcloud-image-wrapper .download-btn {
    background-color: #C8102E;
}

html[lang="tr"] .wordcloud-image-wrapper .download-btn:hover {
    background-color: #A00D25;
}

html[lang="tr"] .kwic-control-group input[type="text"]:focus,
html[lang="tr"] .kwic-control-group input[type="number"]:focus {
    border-color: #C8102E;
    box-shadow: 0 0 0 2px rgba(200, 16, 46, 0.1);
}

html[lang="tr"] .kwic-loading .spinner {
    border-top: 4px solid #C8102E;
}

html[lang="tr"] .kwic-keyword {
    color: #C8102E;
}

html[lang="tr"] .kwic-filter-panel .filter-input-group select:focus {
    border-color: #C8102E;
    box-shadow: 0 0 0 2px rgba(200, 16, 46, 0.1);
}

html[lang="tr"] .collocation-control-group input[type="text"]:focus {
    border-color: #C8102E;
    box-shadow: 0 0 0 2px rgba(200, 16, 46, 0.1);
}

html[lang="tr"] .collocation-loading .spinner {
    border-top-color: #C8102E;
}

html[lang="tr"] .collocation-filter-panel .filter-input-group select:focus {
    border-color: #C8102E;
    box-shadow: 0 0 0 2px rgba(200, 16, 46, 0.1);
}

/* Minimal mobile behavior overrides: simpler toggling and interaction parity. */
@media (max-width: 767px) {
    .sidebar-content {
        transition: none;
    }
    .sidebar.collapsed .sidebar-content {
        display: none;
    }
    .sidebar:not(.collapsed) .sidebar-content {
        display: block;
    }
}

body.mobile-behavior .sidebar-content {
    transition: none !important;
}
body.mobile-behavior .sidebar.collapsed .sidebar-content {
    display: none !important;
}
body.mobile-behavior .sidebar:not(.collapsed) .sidebar-content {
    display: block !important;
}

body.mobile-behavior .frequency-item,
body.mobile-behavior .legend-item {
    pointer-events: auto;
    cursor: pointer;
    opacity: 1;
}

/* Censor Studio: sidebar shows only suggestions (in-panel h3 + mobile header label) */
.sidebar.sidebar-censor-only .sidebar-standard-panels {
    display: none !important;
}

.sidebar.sidebar-censor-only #censorSuggestionsSection {
    display: block !important;
}

.sidebar.sidebar-censor-only .censor-suggestions-section > h3:first-of-type {
    flex-shrink: 0;
    margin: 0 0 var(--spacing-sm) 0;
    padding-top: var(--spacing-xl);
    padding-bottom: var(--spacing-xs);
    line-height: var(--line-height-tight);
}

/* Censor-only: natural height with content (no viewport cap, no forced fill of grid row) */
.sidebar.sidebar-censor-only {
    display: flex;
    flex-direction: column;
    overflow: visible;
    padding: var(--spacing-sm) var(--spacing-md);
}

.sidebar.sidebar-censor-only .sidebar-content {
    display: flex;
    flex-direction: column;
    flex: 0 0 auto;
    overflow: visible;
    padding: 0;
    margin: 0;
}

.sidebar.sidebar-censor-only .censor-suggestions-section {
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    margin-bottom: 0;
    padding-inline: var(--spacing-sm);
    padding-block: 0;
    box-sizing: border-box;
}

.sidebar.sidebar-censor-only .censor-suggestions-list {
    flex: 0 0 auto;
    max-height: none;
    overflow: visible;
    padding-bottom: var(--spacing-sm);
    box-sizing: border-box;
}

/* Undo stats sidebar viewport cap / sticky scroll box so height follows suggestions */
@media (min-width: 1024px) {
    .sidebar.sidebar-censor-only {
        max-height: none;
        height: auto;
        overflow-y: visible;
        align-self: start;
    }
}

/* Replace mobile expanded sidebar-content top gap (was padding-top on .sidebar-content) */
@media (max-width: 767px) {
    .sidebar.sidebar-censor-only .sidebar-content {
        padding-top: 0 !important;
    }

    .sidebar.sidebar-censor-only .censor-suggestions-section {
        padding-top: var(--spacing-sm);
    }
}

body.mobile-behavior .sidebar.sidebar-censor-only .sidebar-content {
    padding-top: 0 !important;
}

body.mobile-behavior .sidebar.sidebar-censor-only:not(.collapsed) .censor-suggestions-section {
    padding-top: var(--spacing-sm);
}

/* Censor Studio */
.censor-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--spacing-md);
    margin-bottom: var(--spacing-md);
    padding: var(--spacing-md) var(--spacing-lg);
    background: linear-gradient(165deg, var(--bg-secondary) 0%, var(--bg-primary) 100%);
    border: 1px solid var(--border-color-light);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-xs);
}

.censor-toolbar-leading {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    min-width: 0;
    flex: 1 1 12rem;
}

.censor-toolbar-title {
    font-size: 0.95rem;
    font-weight: var(--font-weight-semibold);
    color: var(--text-primary);
    letter-spacing: -0.01em;
}

.censor-toolbar-desc {
    font-size: 0.8rem;
    color: var(--text-secondary);
    line-height: 1.45;
    max-width: 36rem;
}

.censor-toolbar-code {
    font-size: 0.78em;
    padding: 0.08em 0.35em;
    border-radius: var(--radius-sm);
    background: var(--bg-secondary);
    color: var(--text-primary);
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.censor-download-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45em;
    flex-shrink: 0;
}

.censor-download-icon {
    font-size: 1.05em;
    line-height: 1;
    font-weight: var(--font-weight-semibold);
    opacity: 0.95;
}

@media (max-width: 767px) {
    .censor-toolbar {
        flex-direction: column;
        align-items: stretch;
    }

    .censor-download-btn {
        width: 100%;
    }
}

.output-container-censor {
    min-height: 2rem;
}

.censor-empty-msg {
    color: var(--text-secondary);
}

/* Censored token: outer .token-word is a bare flex shell; pill (border/background) is on .token-censored-visual so line metrics do not clip the ring */
.output-container-censor .token-container {
    vertical-align: middle;
    position: relative;
    z-index: 0;
}

.token-word.token-censored {
    --censor-accent: var(--text-secondary);
    display: inline-flex;
    align-items: center;
    vertical-align: middle;
    max-width: 100%;
    border-bottom: none !important;
    padding: 0;
    margin: 0;
    position: relative;
    z-index: 1;
}

.token-word.token-censored .token-censored-visual {
    display: inline-flex;
    align-items: center;
    gap: 0.35em;
    min-width: 0;
    padding: 0.2em 0.45em 0.28em 0.35em;
    border-radius: var(--radius-sm);
    /* Ring via shadow avoids 1px border subpixel clipping at line edges */
    background: color-mix(in srgb, var(--censor-accent) 11%, var(--bg-primary));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.15),
        0 0 0 1px color-mix(in srgb, var(--censor-accent) 38%, transparent);
    box-sizing: border-box;
    line-height: 1.2;
    overflow: visible;
}

@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
    .token-word.token-censored .token-censored-visual {
        isolation: isolate;
        border-radius: var(--radius-md);
        background: linear-gradient(
            145deg,
            color-mix(in srgb, var(--censor-accent) 28%, rgba(255, 255, 255, 0.55)) 0%,
            color-mix(in srgb, var(--censor-accent) 12%, rgba(255, 255, 255, 0.22)) 48%,
            color-mix(in srgb, var(--censor-accent) 7%, transparent) 100%
        );
        -webkit-backdrop-filter: blur(12px) saturate(1.45);
        backdrop-filter: blur(12px) saturate(1.45);
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.42),
            inset 0 -1px 0 rgba(0, 0, 0, 0.06),
            0 0 0 1px color-mix(in srgb, var(--censor-accent) 42%, rgba(255, 255, 255, 0.32)),
            0 2px 10px rgba(0, 0, 0, 0.05);
    }

    .token-word.token-censored .token-censored-bar {
        background: color-mix(in srgb, var(--censor-accent) 68%, var(--text-secondary));
        opacity: 0.94;
    }
}

.token-censored-bar {
    display: inline-block;
    min-width: 1.05em;
    height: 0.55em;
    border-radius: 2px;
    background: color-mix(in srgb, var(--censor-accent) 60%, var(--text-secondary));
    opacity: 0.88;
    flex-shrink: 0;
}

.token-censored-kind-badge {
    font-size: 0.65rem;
    font-weight: var(--font-weight-semibold);
    letter-spacing: 0.03em;
    color: var(--censor-accent);
    white-space: nowrap;
    line-height: 1.25;
}

.token-word.token-censored.token-censored--phone_number {
    --censor-accent: #0f766e;
}

.token-word.token-censored.token-censored--e_mail {
    --censor-accent: #0e7490;
}

.token-word.token-censored.token-censored--name {
    --censor-accent: #1d4ed8;
}

.token-word.token-censored.token-censored--surname {
    --censor-accent: #1e40af;
}

.token-word.token-censored.token-censored--tckn {
    --censor-accent: #b45309;
}

.token-word.token-censored.token-censored--vkn {
    --censor-accent: #a16207;
}

.token-word.token-censored.token-censored--other {
    --censor-accent: #4b5563;
}

#censorMenuPopover.censor-menu-popover {
    position: fixed;
    z-index: 10050;
    background: var(--bg-primary, #fff);
    border: 1px solid var(--border-color-light);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-md, 0 4px 12px rgba(0, 0, 0, 0.12));
    min-width: 11rem;
    max-width: min(90vw, 20rem);
}

@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
    #censorMenuPopover.censor-menu-popover {
        isolation: isolate;
        background: linear-gradient(
            155deg,
            color-mix(in srgb, var(--bg-primary) 80%, rgba(255, 255, 255, 0.92)) 0%,
            color-mix(in srgb, var(--bg-primary) 52%, rgba(255, 255, 255, 0.42)) 100%
        );
        -webkit-backdrop-filter: blur(18px) saturate(1.4);
        backdrop-filter: blur(18px) saturate(1.4);
        border: 1px solid color-mix(in srgb, var(--border-color-light) 55%, rgba(255, 255, 255, 0.55));
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.48),
            inset 0 -1px 0 rgba(0, 0, 0, 0.05),
            0 8px 28px rgba(0, 0, 0, 0.14),
            0 0 0 1px rgba(255, 255, 255, 0.22);
    }

    #censorMenuPopover.censor-menu-popover .censor-menu-title {
        border-bottom-color: color-mix(in srgb, var(--border-color-light) 65%, transparent);
    }

    #censorMenuPopover.censor-menu-popover .censor-menu-option:hover,
    #censorMenuPopover.censor-menu-popover .censor-menu-option:focus-visible {
        background-color: color-mix(in srgb, var(--color-gray-100) 85%, transparent);
    }
}

.censor-menu-title {
    padding: var(--spacing-sm) var(--spacing-md);
    font-size: 0.8rem;
    font-weight: var(--font-weight-semibold);
    color: var(--text-secondary);
    border-bottom: 1px solid var(--border-color-light);
}

.censor-menu-option {
    display: block;
    width: 100%;
    text-align: left;
    padding: var(--spacing-sm) var(--spacing-md);
    border: none;
    background: transparent;
    font-size: var(--font-size-base);
    cursor: pointer;
    color: var(--text-primary);
}

.censor-menu-option:hover,
.censor-menu-option:focus-visible {
    background-color: var(--color-gray-100);
}

.censor-suggestions-list {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-md);
    max-height: 240px;
    overflow-y: auto;
}

.censor-suggestion-row {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: var(--spacing-xs);
    width: 100%;
    box-sizing: border-box;
}

.censor-suggestion-apply {
    flex-shrink: 0;
    align-self: center;
    padding: var(--spacing-xs) var(--spacing-sm);
    font-size: 0.75rem;
    font-weight: var(--font-weight-semibold);
    border-radius: var(--radius-sm);
    border: 1px solid var(--color-primary);
    background: var(--color-primary);
    color: var(--bg-primary, #fff);
    cursor: pointer;
    font-family: inherit;
    white-space: nowrap;
}

.censor-suggestion-apply:hover,
.censor-suggestion-apply:focus-visible {
    filter: brightness(1.06);
}

.censor-suggestions-empty {
    font-size: 0.85rem;
    color: var(--text-secondary);
    margin: 0;
}

.censor-suggestion-item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    text-align: left;
    padding: var(--spacing-sm);
    border: 1px solid var(--border-color-light);
    border-radius: var(--radius-sm);
    background: var(--bg-secondary);
    cursor: pointer;
    font-family: inherit;
    flex: 1;
    min-width: 0;
    box-sizing: border-box;
}

.censor-suggestion-item:hover {
    border-color: var(--color-primary);
}

.censor-suggestion-type {
    font-size: 0.7rem;
    font-weight: var(--font-weight-semibold);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--color-primary);
}

.censor-suggestion-text {
    font-size: 0.8rem;
    word-break: break-word;
}

.censor-suggestion-group {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-sm);
    border: 1px solid var(--border-color-light);
    border-radius: var(--radius-sm);
    background: var(--bg-secondary);
    box-sizing: border-box;
    width: 100%;
}

.censor-suggestion-group-header {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: var(--spacing-xs);
    padding: var(--spacing-sm);
    flex-wrap: wrap;
}

.censor-suggestion-group-main {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    gap: var(--spacing-xs);
    flex: 1;
    min-width: 0;
    flex-wrap: wrap;
}

.censor-suggestion-count {
    font-size: 0.75rem;
    color: var(--text-secondary);
    flex-shrink: 0;
}

.censor-suggestion-instances {
    list-style: none;
    margin: 0 0 var(--spacing-sm) var(--spacing-sm);
    padding: 0 0 0 var(--spacing-md);
    border-left: 2px solid var(--border-color-light);
    display: flex;
    flex-direction: column;
    gap: var(--spacing-sm);
}

.censor-suggestion-instance-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: var(--spacing-xs);
    flex-wrap: wrap;
}

.censor-suggestion-instance-loc {
    font-size: 0.72rem;
    color: var(--text-secondary);
    flex: 1;
    min-width: 0;
    word-break: break-word;
}

.censor-suggestion-goto {
    flex-shrink: 0;
    align-self: center;
    padding: 2px var(--spacing-sm);
    font-size: 0.7rem;
    font-weight: var(--font-weight-semibold);
    border-radius: var(--radius-sm);
    border: 1px solid var(--color-primary);
    background: transparent;
    color: var(--color-primary);
    cursor: pointer;
    font-family: inherit;
    white-space: nowrap;
}

.censor-suggestion-goto:hover,
.censor-suggestion-goto:focus-visible {
    background: color-mix(in srgb, var(--color-primary) 12%, transparent);
}

.censor-suggestion-apply-instance {
    font-size: 0.7rem;
    padding: 2px var(--spacing-sm);
}

.token-word.censor-suggest-flash {
    animation: censorSuggestFlash 0.45s ease-in-out 3;
}

@keyframes censorSuggestFlash {
    0%,
    100% {
        outline: 2px solid transparent;
        outline-offset: 2px;
    }
    50% {
        outline: 2px solid var(--color-primary);
        outline-offset: 2px;
    }
}

.download-btn:disabled {
    opacity: 0.45;
    cursor: not-allowed;
    transform: none;
}

.download-btn:disabled:hover {
    transform: none;
    background-color: var(--color-primary);
}