/* Tackora chat delivery 249 */
/* Utility ACL, voto confermato e default nuovi utenti. */
.board-utilities-panel .utility-access-settings { margin:8px 12px; padding:10px; border:1px solid var(--theme-accent,#8ba8c8); border-radius:8px; }
.board-utilities-panel .utility-access-settings label { display:flex; flex-wrap:wrap; gap:8px; justify-content:space-between; align-items:center; margin:8px 0; }
.board-utilities-panel .utility-access-settings select { max-width:100%; }
.board-utilities-panel .utility-access-settings small { display:block; margin:8px 0; }
.board-utilities-panel .poll-card footer { flex-wrap:wrap; gap:8px; }
.board-utilities-panel .poll-results-modal { width:min(640px,calc(100vw - 32px)); max-height:85vh; display:flex; flex-direction:column; }
.board-utilities-panel .poll-results-modal .admin-modal-body { overflow:auto; min-height:0; }
.board-utilities-panel .poll-results-modal table { width:100%; border-collapse:collapse; }
.board-utilities-panel .poll-results-modal th,.board-utilities-panel .poll-results-modal td { text-align:left; padding:8px; overflow-wrap:anywhere; }
.initial-colors input[type=color] { width:100%; min-height:38px; cursor:pointer; }

/* Patch 243: full-style profiles, ordered Memory setup and quoted chat. */
.memory-pointer-turn { position:fixed; z-index:19000; pointer-events:none; max-width:min(22rem,80vw); padding:.35rem .6rem; border:1px solid #789660; border-radius:.6rem; color:#f8fff2; background:#263c23; box-shadow:0 2px 8px #0004; font-size:.8rem; }
.memory-pointer-turn[hidden] { display:none; }
.memory-turn-light { width:.55rem; height:.55rem; flex:0 0 .55rem; border-radius:50%; background:#43b749; box-shadow:0 0 5px #43b749; animation:memory-turn-pulse 1.5s ease-in-out infinite; }
@keyframes memory-turn-pulse { 50% { opacity:.4; } }
@media (prefers-reduced-motion:reduce) { .memory-turn-light { animation:none; } }
.chat-quote { margin:.4rem 0; padding:.4rem .7rem; border-left:3px solid var(--theme-accent,#526c48); background:var(--theme-surface-soft,#eee9df); border-radius:.25rem; display:flex; flex-direction:column; gap:.25rem; overflow-wrap:anywhere; white-space:pre-wrap; font-size:.85rem; }
.chat-reply-button { font-size:.8rem; border:0; background:transparent; color:inherit; text-decoration:underline; cursor:pointer; }
.chat-reply-preview { display:flex; align-items:center; gap:.5rem; }
.chat-reply-preview .chat-quote { flex:1; min-width:0; max-height:7rem; overflow:auto; }
.public-site-summary { display:flex; gap:.8rem 1.5rem; flex-wrap:wrap; margin:1rem 0; }
.public-site-filter { display:flex; align-items:center; gap:.75rem; margin-bottom:1rem; flex-wrap:wrap; }
.monitor-public-visits td small { display:block; }
.public-site-agent { max-width:24rem; white-space:normal; overflow-wrap:anywhere; }
.board-style-copy { display:flex; align-items:center; gap:.5rem; flex-wrap:wrap; }

.board-settings-footer-actions { flex-wrap:wrap; }
.board-style-source { display:flex; gap:.45rem; align-items:center; font-size:.8rem; flex-wrap:wrap; }
.board-style-source select { max-width:18rem; }

/* JS menu is mounted on body: tokens are copied from the active chat panel on open. */
.board-chat-context-menu { max-height:calc(100dvh - 16px); overflow:auto; position:fixed; z-index:35010; min-width:200px; max-width:calc(100vw - 16px); padding:5px; border:1px solid var(--utility-line); border-radius:9px; background:var(--utility-panel); color:var(--utility-text); box-shadow:0 8px 28px #0005; }
.board-chat-context-menu button { display:flex; justify-content:space-between; align-items:center; gap:24px; width:100%; padding:8px 10px; border:0; border-radius:5px; background:transparent; color:inherit; font:inherit; font-size:12px; text-align:left; cursor:pointer; }
.board-chat-context-menu button:hover:not(:disabled),.board-chat-context-menu button:focus-visible { background:var(--utility-card-strong); outline:1px solid var(--utility-accent); }
.board-chat-context-menu button:disabled { opacity:.4; cursor:default; }
.board-chat-context-menu small { font-size:10px; opacity:.7; }
.board-chat-menu-separator { border-top:1px solid var(--utility-line); margin:4px 5px; }

.registered-users-table tbody tr:nth-child(even) { background:color-mix(in srgb,currentColor 7%,transparent); }
.registered-users-table tbody tr:nth-child(odd) { background:color-mix(in srgb,currentColor 2%,transparent); }
.registered-users-table tbody td { border-bottom:2px solid color-mix(in srgb,currentColor 24%,transparent); }
.registered-users-table tbody tr:hover { background:color-mix(in srgb,currentColor 12%,transparent); }
.system-last-online { display:block; margin-top:5px; white-space:nowrap; font-size:11px; }
