/* 15 Oct 2026 (Robert, via Alina): «Печать в чате практически не видна» — watermark alpha raised 10 %→~22 % (max 25→56), still soft/blurred; header logo unchanged.
   14 Oct 2026 (Robert, via Alina): the seal returns as a STATIC watermark (webp, blurred) on the message area; header logo unchanged.
   Chat background on the web (Robert, 6 Oct 2026: «пусть будет полупрозрачной в вебе, а в приложении с логотипом останется»):
   the chat window is translucent so the page (digital rain in «Матрица») shows through; no watermark on the web.
   The Android app keeps its own background with the seal. The mandatory logo in the header/tabs is separate and unchanged. */
.chat-dialog{background:color-mix(in srgb,var(--paper,#fafbf7) 80%,transparent) !important;-webkit-backdrop-filter:blur(16px) saturate(1.2);backdrop-filter:blur(16px) saturate(1.2)}
html[data-page-theme=matrix] .chat-dialog{background:color-mix(in srgb,#0f1a15 78%,transparent) !important}
.chat-dialog::backdrop{background:#14231c33}
:is(#chat-messages,#room-messages){background:transparent url(/chat-watermark.webp?v=3) center/min(62%,340px) no-repeat !important}
/* One even glass: the parts inside the window have no opaque cards of their own (otherwise stripes, 06.10 screenshot). */
.chat-dialog :is(.chat-header,.chat-form,.chat-compose,.chat-message){background:transparent !important}
.chat-dialog .chat-message.user{background:color-mix(in srgb,var(--green) 16%,transparent) !important}
/* Light theme: links and the «Вы:» label one step darker, so they keep AA even over the watermark lines. */
html[data-page-theme=light] :is(#chat-messages,#room-messages) a{color:#00573f}
html[data-page-theme=light] :is(#chat-messages,#room-messages) .chat-role{color:#1d4a35}
/* Code blocks keep light text on their dark card in every theme (a generic «.chat-message pre{color:var(--ink)}» made it black). */
:is(#chat-messages,#room-messages) .chat-md-code :is(pre,code){color:#d7f9e9}

/* #16 access panel */
.access-panel { position: fixed; left: 8px; bottom: 8px; z-index: 30; max-width: min(340px, calc(100vw - 16px)); background: rgba(10,14,22,.92); color: #e8eef7; border: 1px solid rgba(255,255,255,.18); border-radius: 10px; padding: 6px 10px; font-size: 13px; }
.access-panel summary { cursor: pointer; }
.access-panel button { margin: 4px 4px 0 0; }
.access-panel ul { margin: 6px 0 0; padding-left: 18px; }

/* access panel: platform style */
.access-panel { padding: 8px 12px; line-height: 1.4; box-shadow: 0 6px 24px rgba(0,0,0,.45); backdrop-filter: blur(6px); }
.access-panel summary { font-weight: 600; }
.access-panel p { margin: 6px 0 0; }
.access-panel .access-actions { display: flex; flex-direction: column; gap: 6px; margin-top: 8px; }
.access-panel .access-actions button { width: 100%; margin: 0; padding: 9px 12px; font: inherit; font-size: 13px; color: #e8eef7; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.22); border-radius: 8px; cursor: pointer; }
.access-panel .access-actions button:hover { background: rgba(255,255,255,.14); }
.access-panel .access-actions button[data-open="true"] { border-color: #6fcf97; color: #6fcf97; }
.access-panel li button { margin-left: 6px; padding: 2px 8px; font: inherit; font-size: 12px; color: #e8eef7; background: transparent; border: 1px solid rgba(255,255,255,.22); border-radius: 6px; cursor: pointer; }
.access-panel #access-msg { padding: 8px 10px; border-radius: 8px; background: rgba(242,153,74,.12); border-left: 3px solid #f2994a; color: #ffd9b0; font-size: 12.5px; }
.access-panel #access-msg:empty { display: none; }
#bio-panel #bio-msg { margin: 6px 0 0; padding: 8px 10px; border-radius: 8px; background: rgba(242,153,74,.12); border-left: 3px solid #f2994a; color: #ffd9b0; font-size: 12.5px; }
#bio-panel #bio-msg:empty { display: none; }

/* «Доступ» / «Замок»: compact collapsed pills (Robert, 16 Oct 2026: «убрать в шторку»); the card opens upward, small, scrollable */
:is(.access-panel,#bio-panel){padding:0 !important;border-radius:999px !important;background:rgba(10,14,22,.78) !important;border:1px solid rgba(255,255,255,.16) !important;box-shadow:0 2px 10px rgba(0,0,0,.3) !important;font-size:12px !important;width:max-content;max-width:min(300px,calc(100vw - 16px)) !important;opacity:.85;transition:opacity .15s}
:is(.access-panel,#bio-panel):hover,:is(.access-panel,#bio-panel)[open]{opacity:1}
:is(.access-panel,#bio-panel) summary{list-style:none;display:flex;align-items:center;gap:6px;padding:5px 10px;font-weight:600;user-select:none;-webkit-tap-highlight-color:transparent}
:is(.access-panel,#bio-panel) summary::-webkit-details-marker{display:none}
:is(.access-panel,#bio-panel) summary::after{content:"▾";font-size:10px;opacity:.7;transition:transform .15s}
:is(.access-panel,#bio-panel)[open] summary::after{transform:rotate(180deg)}
:is(.access-panel,#bio-panel)[open]{border-radius:12px !important;width:min(300px,calc(100vw - 16px))}
:is(.access-panel,#bio-panel)[open]>*:not(summary){margin-left:12px;margin-right:12px}
:is(.access-panel,#bio-panel)[open]{max-height:min(55vh,360px);overflow-y:auto;padding-bottom:10px !important}
:is(.access-panel,#bio-panel) p{font-size:12px;opacity:.9}
:is(.access-panel,#bio-panel) button{font-size:12.5px}
#bio-panel button{width:calc(100% - 24px);margin:8px 12px 0 !important;padding:8px 10px;font:inherit;font-size:12.5px;color:#e8eef7;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.22);border-radius:8px;cursor:pointer}
