/*
 * Memur Kahvesi global semantic icon layer.
 * Shared SVGs stay neutral in navigation and commands; information-bearing
 * icons receive controlled color across public, admin and moderator surfaces.
 */
:root {
    --mk-semantic-blue: #3b82f6;
    --mk-semantic-cyan: #06b6d4;
    --mk-semantic-green: #10b981;
    --mk-semantic-red: #e11d48;
    --mk-semantic-amber: #d79a14;
    --mk-semantic-purple: #8b5cf6;
    --mk-semantic-teal: #0d9488;
    --mk-semantic-slate: #64748b;
}

:where(
    .site-main,
    .admin-container,
    .admin-content,
    .mod-container,
    .mod-content
) :where(
    .stat-icon,
    .metric-icon,
    .mini-icon,
    .quick-stat-icon,
    .activity-icon,
    .info-icon,
    .feature-icon,
    .status-icon
) {
    --mk-semantic-icon: var(--mk-semantic-slate);
    color: var(--mk-semantic-icon) !important;
}

/* Information metrics use the clean, box-free cockpit language. */
:where(
    .site-main,
    .admin-container,
    .admin-content,
    .mod-container,
    .mod-content
) :where(
    .stat-icon,
    .metric-icon,
    .mini-icon,
    .quick-stat-icon,
    .activity-icon,
    .info-icon,
    .feature-icon,
    .status-icon
) {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

:where(
    .site-main,
    .admin-container,
    .admin-content,
    .mod-container,
    .mod-content
) :where(
    .stat-icon,
    .metric-icon,
    .mini-icon,
    .quick-stat-icon,
    .activity-icon,
    .info-icon,
    .feature-icon,
    .status-icon
) svg {
    color: inherit !important;
    fill: color-mix(in srgb, var(--mk-semantic-icon) 10%, transparent) !important;
    stroke: currentColor !important;
    stroke-width: 2 !important;
    filter: drop-shadow(0 0 6px color-mix(in srgb, var(--mk-semantic-icon) 25%, transparent)) !important;
}

/* Navigation-oriented category/module icons keep a restrained tinted surface. */
:where(
    .site-main,
    .admin-container,
    .admin-content,
    .mod-container,
    .mod-content
) :where(
    .tool-icon,
    .card-icon,
    .category-icon,
    .cat-icon,
    .cat-icon-big,
    .popular-icon,
    .room-avatar,
    .room-emoji
) {
    --mk-semantic-icon: var(--mk-semantic-blue);
    color: var(--mk-semantic-icon) !important;
    background: color-mix(in srgb, var(--mk-semantic-icon) 9%, #fff) !important;
    border-color: color-mix(in srgb, var(--mk-semantic-icon) 18%, transparent) !important;
    box-shadow: none !important;
}

:where(
    .site-main,
    .admin-container,
    .admin-content,
    .mod-container,
    .mod-content
) :where(
    .tool-icon,
    .card-icon,
    .category-icon,
    .cat-icon,
    .cat-icon-big,
    .popular-icon,
    .room-avatar,
    .room-emoji
) svg {
    color: inherit !important;
    fill: color-mix(in srgb, var(--mk-semantic-icon) 8%, transparent) !important;
    stroke: currentColor !important;
    filter: drop-shadow(0 1px 3px color-mix(in srgb, var(--mk-semantic-icon) 18%, transparent)) !important;
}

/* Gold: score, premium, invitations and achievement. */
:where(
    .stat-icon,
    .metric-icon,
    .mini-icon,
    .quick-stat-icon,
    .activity-icon,
    .info-icon,
    .feature-icon,
    .status-icon,
    .tool-icon,
    .card-icon,
    .category-icon,
    .cat-icon,
    .cat-icon-big,
    .popular-icon
):has(:where(
    [data-icon="star"],
    [data-icon="crown"],
    [data-icon="trophy"],
    [data-icon="medal"],
    [data-icon="coins"],
    [data-icon="ticket"],
    [data-icon="sun"]
)) {
    --mk-semantic-icon: var(--mk-semantic-amber);
}

/* Red: thanks, alerts, urgency and destructive states. */
:where(
    .stat-icon,
    .metric-icon,
    .mini-icon,
    .quick-stat-icon,
    .activity-icon,
    .info-icon,
    .feature-icon,
    .status-icon,
    .tool-icon,
    .card-icon,
    .category-icon,
    .cat-icon,
    .cat-icon-big,
    .popular-icon
):has(:where(
    [data-icon="heart"],
    [data-icon="siren"],
    [data-icon="flame"],
    [data-icon="flag"],
    [data-icon="x"],
    [data-icon="trash"],
    [data-icon="lock"]
)) {
    --mk-semantic-icon: var(--mk-semantic-red);
}

/* Green: completion, verification and community help. */
:where(
    .stat-icon,
    .metric-icon,
    .mini-icon,
    .quick-stat-icon,
    .activity-icon,
    .info-icon,
    .feature-icon,
    .status-icon,
    .tool-icon,
    .card-icon,
    .category-icon,
    .cat-icon,
    .cat-icon-big,
    .popular-icon
):has(:where(
    [data-icon="check"],
    [data-icon="check-square"],
    [data-icon="badge-check"],
    [data-icon="sprout"],
    [data-icon="stethoscope"],
    [data-icon="hand-heart"]
)) {
    --mk-semantic-icon: var(--mk-semantic-green);
}

/* Purple: law, editorial work and knowledge. */
:where(
    .stat-icon,
    .metric-icon,
    .mini-icon,
    .quick-stat-icon,
    .activity-icon,
    .info-icon,
    .feature-icon,
    .status-icon,
    .tool-icon,
    .card-icon,
    .category-icon,
    .cat-icon,
    .cat-icon-big,
    .popular-icon
):has(:where(
    [data-icon="scale"],
    [data-icon="books"],
    [data-icon="graduation-cap"],
    [data-icon="gem"],
    [data-icon="sparkles"],
    [data-icon="pencil"]
)) {
    --mk-semantic-icon: var(--mk-semantic-purple);
}

/* Teal: institutions, location and exchange. */
:where(
    .stat-icon,
    .metric-icon,
    .mini-icon,
    .quick-stat-icon,
    .activity-icon,
    .info-icon,
    .feature-icon,
    .status-icon,
    .tool-icon,
    .card-icon,
    .category-icon,
    .cat-icon,
    .cat-icon-big,
    .popular-icon
):has(:where(
    [data-icon="map"],
    [data-icon="map-pin"],
    [data-icon="globe"],
    [data-icon="landmark"],
    [data-icon="building-2"],
    [data-icon="refresh"]
)) {
    --mk-semantic-icon: var(--mk-semantic-teal);
}

/* Blue: files, messages and general information. */
:where(
    .stat-icon,
    .metric-icon,
    .mini-icon,
    .quick-stat-icon,
    .activity-icon,
    .info-icon,
    .feature-icon,
    .status-icon,
    .tool-icon,
    .card-icon,
    .category-icon,
    .cat-icon,
    .cat-icon-big,
    .popular-icon,
    .room-avatar,
    .room-emoji
):has(:where(
    [data-icon="file"],
    [data-icon="file-text"],
    [data-icon="folder"],
    [data-icon="newspaper"],
    [data-icon="download"],
    [data-icon="upload"],
    [data-icon="image"],
    [data-icon="message-circle"],
    [data-icon="message-square"],
    [data-icon="message-2"],
    [data-icon="mail"],
    [data-icon="smartphone"]
)) {
    --mk-semantic-icon: var(--mk-semantic-blue);
}

/* Cyan separates replies/live communication from general blue information. */
:where(
    .stat-icon,
    .metric-icon,
    .mini-icon,
    .quick-stat-icon,
    .activity-icon,
    .info-icon,
    .feature-icon,
    .status-icon
):has(:where(
    [data-icon="message-2"],
    [data-icon="send"],
    [data-icon="reply"]
)) {
    --mk-semantic-icon: var(--mk-semantic-cyan);
}

/* Direct semantic SVGs used in compact labels receive color without a box. */
:where(
    .profile-inline-icon,
    .section-title-icon,
    .type-badge-icon,
    .status-badge-icon,
    .document-type-svg,
    .file-type-svg,
    .doc-trust-icon,
    .cetele-status-svg,
    .forum-prefix-icon
)[data-icon] {
    color: var(--mk-semantic-slate);
    fill: color-mix(in srgb, currentColor 8%, transparent) !important;
    stroke: currentColor !important;
}

:where(.type-badge-icon, .status-badge-icon, .cetele-status-svg)[data-icon="check"],
:where(.type-badge-icon, .status-badge-icon, .cetele-status-svg)[data-icon="check-square"],
:where(.type-badge-icon, .status-badge-icon, .cetele-status-svg)[data-icon="badge-check"] {
    color: var(--mk-semantic-green);
}

:where(.type-badge-icon, .status-badge-icon, .cetele-status-svg)[data-icon="lock"],
:where(.type-badge-icon, .status-badge-icon, .cetele-status-svg)[data-icon="x"],
:where(.type-badge-icon, .status-badge-icon, .cetele-status-svg)[data-icon="siren"] {
    color: var(--mk-semantic-red);
}

/* Keep navigation, editor commands and ordinary text buttons calm. */
:where(
    .header,
    .editor-toolbar,
    .format-toolbar,
    .post-editor-toolbar
) svg {
    filter: none !important;
}

@media (prefers-reduced-motion: reduce) {
    :where(.stat-icon, .metric-icon, .mini-icon, .quick-stat-icon, .tool-icon, .card-icon) svg {
        filter: none !important;
    }
}

/* Extended cross-surface semantic coverage. */
:where(.site-main, .admin-container, .admin-content, .mod-container, .mod-content, .auth-page) :where(
    .stat-ico, .rooms-icon, .toggle-icon, .send-icon, .empty-icon, .empty-icon-circle,
    .count-icon, .last-doc-icon, .no-docs-icon, .meta-icon, .permission-icon,
    .alert-icon, .label-icon, .modal-icon
) {
    --mk-semantic-icon: var(--mk-semantic-slate);
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--mk-semantic-icon) !important;
    box-shadow: none !important;
}

:where(.site-main, .admin-container, .admin-content, .mod-container, .mod-content, .auth-page) :where(
    .stat-ico, .rooms-icon, .toggle-icon, .send-icon, .empty-icon, .empty-icon-circle,
    .count-icon, .last-doc-icon, .no-docs-icon, .meta-icon, .permission-icon,
    .alert-icon, .label-icon, .modal-icon
) svg {
    color: inherit !important;
    fill: color-mix(in srgb, var(--mk-semantic-icon) 10%, transparent) !important;
    stroke: currentColor !important;
    stroke-width: 2 !important;
    filter: drop-shadow(0 0 6px color-mix(in srgb, var(--mk-semantic-icon) 25%, transparent)) !important;
}

:where(.site-main, .admin-container, .admin-content, .mod-container, .mod-content, .auth-page) :where(
    .pill-emoji, .subcat-icon, .folder-icon, .category-icon-badge, .module-icon,
    .action-icon, .section-icon, .form-icon, .method-option .icon
) {
    --mk-semantic-icon: var(--mk-semantic-blue);
    color: var(--mk-semantic-icon) !important;
    background: color-mix(in srgb, var(--mk-semantic-icon) 9%, #fff) !important;
    border-color: color-mix(in srgb, var(--mk-semantic-icon) 18%, transparent) !important;
    box-shadow: none !important;
}

:where(.site-main, .admin-container, .admin-content, .mod-container, .mod-content, .auth-page) :where(
    .pill-emoji, .subcat-icon, .folder-icon, .category-icon-badge, .module-icon,
    .action-icon, .section-icon, .form-icon, .method-option .icon
) svg {
    color: inherit !important;
    fill: color-mix(in srgb, var(--mk-semantic-icon) 8%, transparent) !important;
    stroke: currentColor !important;
    filter: drop-shadow(0 1px 3px color-mix(in srgb, var(--mk-semantic-icon) 18%, transparent)) !important;
}

/* Semantic colors for historical wrappers used across forum, documents and back office. */
:where(.stat-ico, .rooms-icon, .toggle-icon, .send-icon, .empty-icon, .empty-icon-circle, .count-icon, .last-doc-icon, .no-docs-icon, .meta-icon, .permission-icon, .alert-icon, .label-icon, .modal-icon, .pill-emoji, .subcat-icon, .folder-icon, .category-icon-badge, .module-icon, .action-icon, .section-icon, .form-icon, .method-option .icon):has(:where([data-icon="star"], [data-icon="crown"], [data-icon="trophy"], [data-icon="medal"], [data-icon="coins"], [data-icon="ticket"], [data-icon="sun"])) { --mk-semantic-icon: var(--mk-semantic-amber); }
:where(.stat-ico, .rooms-icon, .toggle-icon, .send-icon, .empty-icon, .empty-icon-circle, .count-icon, .last-doc-icon, .no-docs-icon, .meta-icon, .permission-icon, .alert-icon, .label-icon, .modal-icon, .pill-emoji, .subcat-icon, .folder-icon, .category-icon-badge, .module-icon, .action-icon, .section-icon, .form-icon, .method-option .icon):has(:where([data-icon="heart"], [data-icon="siren"], [data-icon="flame"], [data-icon="flag"], [data-icon="x"], [data-icon="trash"], [data-icon="lock"])) { --mk-semantic-icon: var(--mk-semantic-red); }
:where(.stat-ico, .rooms-icon, .toggle-icon, .send-icon, .empty-icon, .empty-icon-circle, .count-icon, .last-doc-icon, .no-docs-icon, .meta-icon, .permission-icon, .alert-icon, .label-icon, .modal-icon, .pill-emoji, .subcat-icon, .folder-icon, .category-icon-badge, .module-icon, .action-icon, .section-icon, .form-icon, .method-option .icon):has(:where([data-icon="check"], [data-icon="check-square"], [data-icon="badge-check"], [data-icon="sprout"], [data-icon="stethoscope"], [data-icon="hand-heart"])) { --mk-semantic-icon: var(--mk-semantic-green); }
:where(.stat-ico, .rooms-icon, .toggle-icon, .send-icon, .empty-icon, .empty-icon-circle, .count-icon, .last-doc-icon, .no-docs-icon, .meta-icon, .permission-icon, .alert-icon, .label-icon, .modal-icon, .pill-emoji, .subcat-icon, .folder-icon, .category-icon-badge, .module-icon, .action-icon, .section-icon, .form-icon, .method-option .icon):has(:where([data-icon="scale"], [data-icon="books"], [data-icon="graduation-cap"], [data-icon="gem"], [data-icon="sparkles"], [data-icon="pencil"])) { --mk-semantic-icon: var(--mk-semantic-purple); }
:where(.stat-ico, .rooms-icon, .toggle-icon, .send-icon, .empty-icon, .empty-icon-circle, .count-icon, .last-doc-icon, .no-docs-icon, .meta-icon, .permission-icon, .alert-icon, .label-icon, .modal-icon, .pill-emoji, .subcat-icon, .folder-icon, .category-icon-badge, .module-icon, .action-icon, .section-icon, .form-icon, .method-option .icon):has(:where([data-icon="map"], [data-icon="map-pin"], [data-icon="globe"], [data-icon="landmark"], [data-icon="building-2"], [data-icon="refresh"])) { --mk-semantic-icon: var(--mk-semantic-teal); }
:where(.stat-ico, .rooms-icon, .toggle-icon, .send-icon, .empty-icon, .empty-icon-circle, .count-icon, .last-doc-icon, .no-docs-icon, .meta-icon, .permission-icon, .alert-icon, .label-icon, .modal-icon, .pill-emoji, .subcat-icon, .folder-icon, .category-icon-badge, .module-icon, .action-icon, .section-icon, .form-icon, .method-option .icon):has(:where([data-icon="file"], [data-icon="file-text"], [data-icon="folder"], [data-icon="newspaper"], [data-icon="download"], [data-icon="upload"], [data-icon="image"], [data-icon="message-circle"], [data-icon="message-square"], [data-icon="mail"], [data-icon="smartphone"])) { --mk-semantic-icon: var(--mk-semantic-blue); }
:where(.stat-ico, .rooms-icon, .toggle-icon, .send-icon, .empty-icon, .empty-icon-circle, .count-icon, .last-doc-icon, .no-docs-icon, .meta-icon, .permission-icon, .alert-icon, .label-icon, .modal-icon):has(:where([data-icon="message-2"], [data-icon="send"], [data-icon="reply"])) { --mk-semantic-icon: var(--mk-semantic-cyan); }

/* Forum counters. */
.site-main .classic-forum-wrapper .stat-item:nth-child(1) .stat-ico { --mk-semantic-icon: var(--mk-semantic-blue); }
.site-main .classic-forum-wrapper .stat-item:nth-child(2) .stat-ico { --mk-semantic-icon: var(--mk-semantic-cyan); }
.site-main .classic-forum-wrapper .stat-item:nth-child(3) .stat-ico { --mk-semantic-icon: var(--mk-semantic-purple); }
.site-main .classic-forum-wrapper .stat-item:nth-child(4) .stat-ico { --mk-semantic-icon: var(--mk-semantic-green); }

/* Blog headings and placeholders. */
.site-main :where(.blog-wrap, .blog-category-page, .blog-post-layout) :where(.blog-eyebrow, h1, .sidebar-card h3, .post-meta, .post-author) svg[data-icon] {
    color: var(--mk-semantic-blue) !important;
    fill: color-mix(in srgb, var(--mk-semantic-blue) 8%, transparent) !important;
    stroke: currentColor !important;
}
.site-main :where(.featured-img-ph, .sidebar-recent-placeholder) { color: #fff !important; }
.site-main :where(.featured-img-ph, .sidebar-recent-placeholder) svg {
    color: #fff !important;
    fill: rgba(255, 255, 255, 0.06) !important;
    filter: drop-shadow(0 0 8px rgba(255, 255, 255, 0.18)) !important;
}

/* Chat accents. */
.site-main .chat-page-modern .rooms-icon { --mk-semantic-icon: var(--mk-semantic-purple); }
.site-main .chat-page-modern .toggle-icon { --mk-semantic-icon: var(--mk-semantic-blue); }
.site-main .chat-page-modern .send-icon { --mk-semantic-icon: var(--mk-semantic-cyan); }
.site-main .chat-page-modern .empty-icon-circle { --mk-semantic-icon: var(--mk-semantic-purple); }

/* Authentication pages do not use the shared site-main shell. */
.auth-page .login-brand-link svg[data-icon="coffee"] {
    color: var(--mk-semantic-amber) !important;
    fill: color-mix(in srgb, var(--mk-semantic-amber) 10%, transparent) !important;
    stroke: currentColor !important;
    filter: drop-shadow(0 0 6px color-mix(in srgb, var(--mk-semantic-amber) 24%, transparent)) !important;
}
.auth-page .modal-icon { --mk-semantic-icon: var(--mk-semantic-purple); }
.auth-page .method-option:first-child .icon { --mk-semantic-icon: var(--mk-semantic-blue); }
.auth-page .method-option:nth-child(2) .icon { --mk-semantic-icon: var(--mk-semantic-green); }

/* Admin and moderator dashboards. */
:where(.admin-container, .admin-content, .mod-container, .mod-content) :where(.module-icon, .action-icon, .section-icon, .form-icon) {
    min-width: 40px;
    min-height: 40px;
}
:where(.admin-container, .admin-content, .mod-container, .mod-content) :where(.permission-icon, .alert-icon):has([data-icon="check"]) { --mk-semantic-icon: var(--mk-semantic-green); }
:where(.admin-container, .admin-content, .mod-container, .mod-content) :where(.permission-icon, .alert-icon):has(:where([data-icon="flag"], [data-icon="x"], [data-icon="siren"])) { --mk-semantic-icon: var(--mk-semantic-red); }