﻿/* =============================================================
   KINGS NOTIFY — MONO GLASS LIGHT (белое матовое стекло, акценты
   только на интерактиве)
   =============================================================
   Светлая адаптация нотовского notify_mono_glass.css под гамму
   kingscross.f-rpg.me. Фоны модалки/тостов/саджеста — нейтральное
   белое стекло с blur, тёмный контрастный текст. Бирюза (--links
   форума, #76AFB5) и тёплый песочный (углублённый --accent) — ТОЛЬКО
   там, где юзер взаимодействует: активная вкладка, тумблеры, кнопки,
   бейджи, ссылки, обводка аватарки, @-плашки. Шрифты — системные
   (FontAwesome-иконки не трогаем — у них своя font-family).
   Анимация на большой модалке отключена, у тостов — оставлена.

   <link rel="stylesheet" href=".../kingstage/notify/notify_mono_glass.css?v=1">

   Вернуть базовый скин — просто убрать эту строку <link>.
   ============================================================= */

:root {
    --mg-bg: 253, 252, 249;          /* почти белая база (тёплый белый) */
    --mg-bg2: 245, 243, 237;         /* чуть темнее слоновая кость */
    --mg-teal: 96, 156, 163;         /* акцент №1 — бирюза Кингса, углублённая */
    --mg-teal-deep: 62, 122, 130;    /* темнее, для текста на светлом */
    --mg-sand: 196, 156, 118;        /* акцент №2 — тёплый песочный (из --accent) */
    --mg-sand-deep: 158, 117, 79;    /* темнее, для текста на светлом */
    --mg-text: 58, 58, 62;           /* основной тёмный текст */
    --mg-text-dim: 105, 105, 112;    /* приглушённый */
    --mg-text-faint: 148, 148, 156;  /* самый бледный */
    --mg-ink: 20, 20, 24;            /* «чернила» для теней/бордеров */
    --mg-white: 255, 255, 255;
    --mg-danger: 184, 63, 73;        /* контрастный красный на светлом */
    --mg-success: 74, 141, 102;      /* контрастный зелёный на светлом */
}

/* ---------- системные шрифты (иконки FA не задеваются) ---------- */
#nota-modal,
#nota-modal-list,
#nota-settings-panel,
#nota-admin-panel,
.browser-notice-item,
#browser-notice,
#nt-close-all-btn,
#mention-suggest {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
                 Helvetica, Arial, sans-serif !important;
}

/* ---------- анимации ---------- */
@keyframes mgTwinkle {
    0%, 100% { opacity: 0; transform: scale(0.5); }
    50%      { opacity: 0.9; transform: scale(1); }
}
@keyframes mgSoftPulse {
    0%, 100% { opacity: 0.6; }
    50%      { opacity: 1; }
}
@keyframes mgToastIn {
    from { transform: translateX(26px); opacity: 0; filter: blur(3px); }
    to   { transform: translateX(0); opacity: 1; filter: blur(0); }
}

/* ---------- триггер-колокольчик (акцент) ---------- */
#nota-noti-trigger .nota-bell::before {
    background: linear-gradient(135deg, rgb(var(--mg-teal-deep)), rgb(var(--mg-sand-deep)));
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 1px 3px rgba(var(--mg-teal), 0.35));
    transition: filter 0.3s ease, transform 0.3s ease;
}

#nota-noti-trigger:hover .nota-bell::before {
    filter: drop-shadow(0 0 6px rgba(var(--mg-teal), 0.6));
    transform: scale(1.06) rotate(8deg);
}

#nota-noti-trigger.has-unread .nota-bell::before {
    background: linear-gradient(135deg, rgb(var(--mg-danger)), rgb(var(--mg-sand-deep)));
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 0 5px rgba(var(--mg-danger), 0.45));
    animation: mgSoftPulse 2.2s ease-in-out infinite;
}

#nota-noti-trigger .bubble {
    background: linear-gradient(135deg, rgb(var(--mg-danger)), rgb(var(--mg-sand-deep))) !important;
    box-shadow: 0 2px 8px rgba(var(--mg-danger), 0.35), 0 0 0 1px rgba(var(--mg-white), 0.55) inset;
    border: none;
    color: rgb(var(--mg-white)) !important;
    font: 600 9px / 1 -apple-system, "Segoe UI", Roboto, sans-serif;
    padding: 2px 5px;
    border-radius: 8px;
    min-width: 14px;
    text-align: center;
    position: relative;
    left: 2px;
    top: 0px;
}

.bubble:after { display: none !important; }

/* ---------- оверлей — нейтральный, слегка молочный ---------- */
#nota-modal-overlay {
    background: rgba(230, 228, 220, 0.45) !important;
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
}

/* ---------- модалка: белое стекло, БЕЗ цвета в фоне ---------- */
#nota-modal {
    background: linear-gradient(160deg, rgba(var(--mg-bg), 0.92), rgba(var(--mg-bg2), 0.96)) !important;
    backdrop-filter: blur(26px) saturate(130%);
    -webkit-backdrop-filter: blur(26px) saturate(130%);
    border: 1px solid rgba(var(--mg-ink), 0.10) !important;
    border-radius: 22px !important;
    box-shadow:
        0 24px 60px rgba(var(--mg-ink), 0.18),
        0 2px 8px rgba(var(--mg-ink), 0.10),
        0 1px 0 rgba(var(--mg-white), 0.9) inset !important;
    color: rgb(var(--mg-text)) !important;
    position: relative;
    overflow: hidden;
}

#nota-modal > * { position: relative; z-index: 1; }

.nota-modal-header {
    color: rgba(var(--mg-text-faint), 1) !important;
    border-bottom: 1px solid rgba(var(--mg-ink), 0.08) !important;
}

.nota-modal-header span,
.nota-modal-header-actions span {
    color: rgba(var(--mg-text-dim), 0.95) !important;
}

.nota-modal-header span:hover,
.nota-modal-header-actions span:hover {
    color: rgb(var(--mg-teal-deep)) !important;
    filter: drop-shadow(0 0 4px rgba(var(--mg-teal), 0.4));
}

/* ---------- вкладки (акцент на активной) ---------- */
#nota-modal-tabs {
    border-bottom: 1px solid rgba(var(--mg-ink), 0.08) !important;
}

.nota-tab-btn {
    color: rgba(var(--mg-text-dim), 0.9) !important;
    border: 1px solid transparent !important;
    background: transparent !important;
    border-radius: 10px !important;
    transition: color 0.25s ease, background 0.25s ease, box-shadow 0.3s ease !important;
}

.nota-tab-btn:hover {
    color: rgb(var(--mg-text)) !important;
    background: rgba(var(--mg-ink), 0.05) !important;
}

.nota-tab-btn.active {
    color: rgb(var(--mg-teal-deep)) !important;
    background: rgba(var(--mg-teal), 0.10) !important;
    border-color: rgba(var(--mg-teal), 0.40) !important;
    box-shadow:
        0 0 10px rgba(var(--mg-teal), 0.18),
        0 1px 0 rgba(var(--mg-white), 0.6) inset !important;
}

.nota-tab-count {
    background: rgba(var(--mg-ink), 0.07) !important;
    color: rgba(var(--mg-text-dim), 1) !important;
    border-radius: 8px;
}

.nota-tab-btn.active .nota-tab-count {
    background: rgba(var(--mg-teal), 0.22) !important;
    color: rgb(var(--mg-teal-deep)) !important;
}

.nota-tab-count.unread-badge {
    background: linear-gradient(135deg, rgb(var(--mg-danger)), rgb(var(--mg-sand-deep))) !important;
    color: rgb(var(--mg-white)) !important;
    box-shadow: 0 1px 6px rgba(var(--mg-danger), 0.35);
}

/* ---------- скроллбары (акцентная заливка полоски) ---------- */
#nota-modal-list::-webkit-scrollbar-thumb,
#nota-settings-panel::-webkit-scrollbar-thumb,
#mention-suggest::-webkit-scrollbar-thumb {
    background: linear-gradient(rgba(var(--mg-teal), 0.55), rgba(var(--mg-sand), 0.55)) !important;
    border-radius: 10px;
}

/* ---------- строки уведомлений ---------- */
.nt-list-item {
    background: rgba(var(--mg-white), 0.5) !important;
    border-bottom: 1px solid rgba(var(--mg-ink), 0.06) !important;
    color: rgb(var(--mg-text)) !important;
    transition: background 0.2s ease !important;
}

.nt-list-item:hover {
    background: rgba(var(--mg-teal), 0.08) !important;
}

.nt-list-item.unread {
    background: rgba(var(--mg-teal), 0.07) !important;
    border-left: 3px solid rgb(var(--mg-teal-deep)) !important;
}

.nt-list-item.unread .nt-list-item-sender {
    color: rgb(var(--mg-teal-deep)) !important;
}

.nt-list-item-sender { color: rgb(var(--mg-text)) !important; }

.nt-list-item-text { color: rgba(var(--mg-text-dim), 1) !important; }

.nt-list-item-read {
    color: rgba(var(--mg-text-faint), 0.9) !important;
    background: rgba(var(--mg-ink), 0.05);
}

.nt-list-item-read:hover {
    color: rgb(var(--mg-white)) !important;
    background: linear-gradient(135deg, rgb(var(--mg-teal)), rgb(var(--mg-teal-deep))) !important;
    box-shadow: 0 2px 8px rgba(var(--mg-teal), 0.4);
}

.nt-empty { color: rgba(var(--mg-text-faint), 0.8) !important; }

/* ---------- TG-футер ---------- */
#nota-modal-tg-footer {
    border-top: 1px solid rgba(var(--mg-ink), 0.08) !important;
}

.tg-btn-connect {
    background: rgba(var(--mg-white), 0.6) !important;
    border: 1px solid rgba(var(--mg-teal), 0.45) !important;
    color: rgb(var(--mg-teal-deep)) !important;
    border-radius: 10px !important;
    transition: box-shadow 0.3s ease, background 0.25s ease !important;
}

.tg-btn-connect:hover:not(:disabled) {
    background: rgba(var(--mg-teal), 0.14) !important;
    color: rgb(var(--mg-teal-deep)) !important;
    box-shadow: 0 3px 14px rgba(var(--mg-teal), 0.3);
}

.tg-status-linked { color: rgb(var(--mg-success)) !important; }

#nota-tg-unlink-btn { color: rgb(var(--mg-danger)) !important; }

.tg-status-instruction { color: rgba(var(--mg-text-dim), 1) !important; }

.tg-code {
    background: rgba(var(--mg-white), 0.7) !important;
    border: 1px solid rgba(var(--mg-sand-deep), 0.45) !important;
    color: rgb(var(--mg-sand-deep)) !important;
}

/* ---------- панель настроек ---------- */
.nt-settings-header { border-bottom: 1px solid rgba(var(--mg-ink), 0.08) !important; }

.nt-settings-header-cell { color: rgba(var(--mg-text-dim), 0.9) !important; }

.nt-col-toggle:hover {
    color: rgb(var(--mg-teal-deep)) !important;
    text-shadow: 0 0 5px rgba(var(--mg-teal), 0.35);
}

.nt-settings-row { border-bottom: 1px solid rgba(var(--mg-ink), 0.05) !important; }

.nt-settings-label { color: rgb(var(--mg-text)) !important; }

.nt-settings-label i { color: rgb(var(--mg-sand-deep)) !important; }

.nt-settings-hint { color: rgba(var(--mg-text-faint), 0.95) !important; }

.nt-toggle-track {
    background: rgba(var(--mg-ink), 0.14) !important;
    box-shadow: inset 0 1px 2px rgba(var(--mg-ink), 0.18);
}

.nt-toggle input:checked + .nt-toggle-track {
    background: linear-gradient(135deg, rgb(var(--mg-teal)), rgb(var(--mg-teal-deep))) !important;
    box-shadow: 0 1px 8px rgba(var(--mg-teal), 0.4) !important;
}

.nt-toggle-track::after {
    background: rgb(var(--mg-white)) !important;
    box-shadow: 0 1px 3px rgba(var(--mg-ink), 0.3);
}

.nt-volume-cell input[type="range"] {
    accent-color: rgb(var(--mg-teal-deep)) !important;
}

.nt-settings-divider { border-top: 1px solid rgba(var(--mg-ink), 0.08) !important; }

.nt-btn {
    background: rgba(var(--mg-white), 0.6) !important;
    border: 1px solid rgba(var(--mg-ink), 0.16) !important;
    color: rgb(var(--mg-text)) !important;
    border-radius: 10px !important;
    transition: background 0.2s ease, box-shadow 0.25s ease !important;
}

.nt-btn:hover {
    background: rgba(var(--mg-teal), 0.14) !important;
    box-shadow: 0 2px 10px rgba(var(--mg-teal), 0.28);
}

.nt-btn-danger {
    border-color: rgba(var(--mg-danger), 0.5) !important;
    color: rgb(var(--mg-danger)) !important;
}

.nt-btn-danger:hover {
    background: rgba(var(--mg-danger), 0.10) !important;
    box-shadow: 0 2px 10px rgba(var(--mg-danger), 0.25);
}

/* ---------- @-саджест — нейтральное светлое стекло ---------- */
#mention-suggest {
    background: linear-gradient(160deg, rgba(var(--mg-bg), 0.96), rgba(var(--mg-bg2), 0.98)) !important;
    backdrop-filter: blur(18px) saturate(130%);
    -webkit-backdrop-filter: blur(18px) saturate(130%);
    border: 1px solid rgba(var(--mg-ink), 0.10) !important;
    box-shadow: 0 12px 30px rgba(var(--mg-ink), 0.16), 0 1px 0 rgba(var(--mg-white), 0.8) inset !important;
    border-radius: 12px !important;
}

.mention-item:hover { background: rgba(var(--mg-teal), 0.12) !important; }

.mention-item div:first-child { color: rgb(var(--mg-text)) !important; }

.mention-item div:last-child { color: rgba(var(--mg-text-faint), 1) !important; }

/* ---------- @-плашки упоминаний в постах (акцент) ---------- */
.nt-at {
    background: rgba(var(--mg-teal), 0.10) !important;
    border: 1px solid rgba(var(--mg-teal), 0.40) !important;
    box-shadow: 0 1px 3px rgba(var(--mg-teal), 0.18);
    color: rgb(var(--mg-teal-deep)) !important;
}

/* ---------- тосты — светлое стекло, анимация остаётся ---------- */
#browser-notice,
.browser-notice-item {
    background: linear-gradient(160deg, rgba(var(--mg-bg), 0.94), rgba(var(--mg-bg2), 0.97)) !important;
    backdrop-filter: blur(20px) saturate(130%);
    -webkit-backdrop-filter: blur(20px) saturate(130%);
    border: 1px solid rgba(var(--mg-ink), 0.12) !important;
    border-radius: 16px !important;
    color: rgb(var(--mg-text)) !important;
    box-shadow:
        0 14px 36px rgba(var(--mg-ink), 0.18),
        0 1px 0 rgba(var(--mg-white), 0.9) inset !important;
    animation: mgToastIn 0.5s cubic-bezier(0.16, 1, 0.3, 1);
    position: relative;
    overflow: hidden;
}

/* пара нежных звёздочек-искр в тосте (акцент) */
#browser-notice::after,
.browser-notice-item::after {
    content: "✦";
    position: absolute;
    top: 6px;
    right: 26px;
    font-size: 9px;
    color: rgba(var(--mg-sand-deep), 0.8);
    animation: mgTwinkle 3s ease-in-out infinite;
    pointer-events: none;
}

#browser-notice::before,
.browser-notice-item::before {
    content: "✦";
    position: absolute;
    bottom: 8px;
    left: 8px;
    font-size: 7px;
    color: rgba(var(--mg-teal-deep), 0.75);
    animation: mgTwinkle 3.8s ease-in-out 1.2s infinite;
    pointer-events: none;
}

.nt-title {
    color: rgb(var(--mg-sand-deep)) !important;
    letter-spacing: 1.4px;
}

.nt-text { color: rgb(var(--mg-text)) !important; }

.nt-verb { color: rgb(var(--mg-text)) !important; }

.nt-topic-link { color: rgb(var(--mg-teal-deep)) !important; }

.nt-topic-link:hover {
    color: rgb(var(--mg-sand-deep)) !important;
    text-shadow: 0 0 5px rgba(var(--mg-sand), 0.4);
}

.nt-link {
    background: rgba(var(--mg-white), 0.6) !important;
    border: 1px solid rgba(var(--mg-teal), 0.45) !important;
    color: rgb(var(--mg-teal-deep)) !important;
    border-radius: 8px !important;
    transition: background 0.2s ease, box-shadow 0.25s ease !important;
}

.nt-link:hover {
    background: rgba(var(--mg-teal), 0.14) !important;
    box-shadow: 0 2px 10px rgba(var(--mg-teal), 0.3);
}

.nt-close { color: rgba(var(--mg-text-faint), 1) !important; }

.nt-close:hover { color: rgb(var(--mg-danger)) !important; }

#nt-close-all-btn { color: rgba(var(--mg-text-dim), 1) !important; }

#nt-close-all-btn:hover { color: rgb(var(--mg-teal-deep)) !important; }

.nt-avatar-node {
    box-shadow: 0 0 0 2px rgba(var(--mg-white), 0.95), 0 0 0 3.5px rgba(var(--mg-teal), 0.45), 0 2px 8px rgba(var(--mg-ink), 0.18);
}

/* ---------- админ-панель ---------- */
#nota-admin-panel { color: rgb(var(--mg-text)); }

.nt-admin-sec-title { color: rgb(var(--mg-sand-deep)) !important; }

#nt-imp-input, #nt-bc-text {
    background: rgba(var(--mg-white), 0.75) !important;
    border: 1px solid rgba(var(--mg-ink), 0.16) !important;
    color: rgb(var(--mg-text)) !important;
    border-radius: 10px !important;
}

#nt-imp-add, #nt-bc-send {
    background: linear-gradient(135deg, rgb(var(--mg-teal)), rgb(var(--mg-teal-deep))) !important;
    color: rgb(var(--mg-white)) !important;
    box-shadow: 0 2px 10px rgba(var(--mg-teal), 0.35);
    border-radius: 10px !important;
}

#nt-imp-add:hover, #nt-bc-send:hover {
    box-shadow: 0 3px 16px rgba(var(--mg-teal), 0.5);
}

.nt-imp-row { border-bottom: 1px solid rgba(var(--mg-ink), 0.08) !important; }

.nt-imp-row a { color: rgb(var(--mg-text)) !important; }

.nt-imp-del { color: rgb(var(--mg-danger)) !important; }

.nt-admin-status { color: rgba(var(--mg-text-dim), 1) !important; }

/* ---------- кнопка подписки на форум (акцент) ---------- */
.nt-forumsub-btn {
    background: rgba(var(--mg-teal), 0.10) !important;
    border: 1px solid rgba(var(--mg-teal), 0.40) !important;
    color: rgb(var(--mg-teal-deep)) !important;
    border-radius: 10px !important;
}

.nt-forumsub-btn:hover { background: rgba(var(--mg-teal), 0.18) !important; }

.nt-forumsub-btn.subscribed {
    background: rgba(var(--mg-success), 0.12) !important;
    border-color: rgba(var(--mg-success), 0.5) !important;
    box-shadow: 0 1px 8px rgba(var(--mg-success), 0.25);
}

/* =============================================================
   ТЁМНАЯ ТЕМА КИНГСА (data-contrast="3", см. «кингс верх.txt»)
   =============================================================
   Форум переключает тему классом-атрибутом на body. На тёмной теме
   Кингса (--pun:#2F2F30, --cover2:#2E2E2F, --text1:#E2E2E2,
   --links:#D17DD9, --accent:#BEA25D) весь скин уходит в тёмное
   стекло — просто переопределяем переменные --mg-*, все остальные
   правила выше ссылаются на них и подхватывают тёмную палитру
   автоматически. Отдельно поправлены места, которые были на
   хардкоженном --mg-white (сплошные светлые поверхности кнопок/
   инпутов/оверлея/инсет-хайлайтов) — на тёмной теме они должны
   быть тёмными поверхностями, а не белыми плашками.
   ============================================================= */
:root:has(body[data-contrast="3"]) {
    --mg-bg: 34, 34, 35;             /* тёмная база стекла, вокруг --pun #2F2F30 */
    --mg-bg2: 44, 44, 46;            /* чуть светлее графит */
    --mg-teal: 209, 125, 217;        /* акцент №1 — форумный --links (розово-лиловый) */
    --mg-teal-deep: 224, 158, 230;   /* светлее, для текста на тёмном */
    --mg-sand: 190, 162, 93;         /* акцент №2 — форумный --accent (золото) */
    --mg-sand-deep: 214, 190, 140;
    --mg-text: 226, 226, 226;        /* ~--text1 #E2E2E2 */
    --mg-text-dim: 168, 168, 172;
    --mg-text-faint: 132, 132, 136;
    --mg-danger: 224, 122, 142;      /* светлее красный — читается на тёмном */
    --mg-success: 122, 196, 168;
}

:root:has(body[data-contrast="3"]) #nota-modal-overlay {
    background: rgba(0, 0, 0, 0.6) !important;
}

/* Инсет-хайлайт «блик сверху» на светлой теме почти непрозрачный белый —
   на тёмном стекле оставляем тот же приём, но еле заметным. */
:root:has(body[data-contrast="3"]) #nota-modal {
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.55),
        0 2px 8px rgba(0, 0, 0, 0.35),
        0 1px 0 rgba(255, 255, 255, 0.06) inset !important;
}

:root:has(body[data-contrast="3"]) #mention-suggest {
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.5), 0 1px 0 rgba(255, 255, 255, 0.05) inset !important;
}

:root:has(body[data-contrast="3"]) #browser-notice,
:root:has(body[data-contrast="3"]) .browser-notice-item {
    box-shadow:
        0 14px 36px rgba(0, 0, 0, 0.5),
        0 1px 0 rgba(255, 255, 255, 0.06) inset !important;
}

/* Поверхности кнопок/инпутов/кода — были залиты почти сплошным --mg-white
   (уместно на светлой теме как «карточка»), на тёмной делаем их тёмными. */
:root:has(body[data-contrast="3"]) .tg-btn-connect,
:root:has(body[data-contrast="3"]) .nt-btn,
:root:has(body[data-contrast="3"]) #nt-imp-input,
:root:has(body[data-contrast="3"]) #nt-bc-text,
:root:has(body[data-contrast="3"]) .tg-code,
:root:has(body[data-contrast="3"]) .nt-list-item {
    background: rgba(var(--mg-bg2), 0.6) !important;
}

:root:has(body[data-contrast="3"]) .nt-avatar-node {
    box-shadow: 0 0 0 2px rgba(var(--mg-bg2), 0.9), 0 0 0 3.5px rgba(var(--mg-teal), 0.45), 0 2px 8px rgba(0, 0, 0, 0.4);
}
