/* Dark mode is independent of the ornate / Simple layout preference. */
.dark-mode-button{width:32px;height:32px;display:grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:50%;color:var(--muted);background:transparent;flex-shrink:0}
.dark-mode-button .icon{width:17px;height:17px}
.dark-mode-button:hover{color:var(--blue);border-color:var(--blue)}
.conversation-summary.nearing-limit{border-color:#b49454}
.conversation-summary.nearing-limit strong{color:#89631d}
.entry-progress li{min-width:0;line-height:1.4}
.entry-progress li:last-child{flex-shrink:1}

:root.dark{color-scheme:dark;--paper:#202326;--paper-light:#272b30;--ink:#f0ebe3;--muted:#b9b5af;--line:#4b5057;--blue:#a6beff;--blue-dark:#bed0ff;--blue-wash:#293956}
.dark .primary{background:#365ccc;color:#fff;box-shadow:none}
.dark .primary:hover{background:#4167d5}
.dark .outline{border-color:#727982}
.dark .outline:hover,.dark .icon-button:hover{background:#343b44}
.dark .entry-panel,.dark .waiting-card,.dark .compose-card,.dark .mode-card,.dark .history-card,.dark .conversation-card,.dark .stats-grid>div{background:var(--paper-light);border-color:var(--line);box-shadow:none}
.dark .confession-sidebar{background:#292e34;border-color:var(--line)}
.dark .chat-panel,.dark dialog{background:var(--paper-light);border-color:var(--line)}
.dark dialog::backdrop{background:#090d12cf}
.dark .mode-icon,.dark .avatar,.dark .participant .avatar{background:#343b44;border-color:#59616c;color:var(--blue)}
.dark .choice-card,.dark .read-only,.dark .chat-ended,.dark .segmented{background:#30363d;border-color:var(--line)}
.dark .choice-card:has(input:checked){background:#293956;border-color:#8caaf5}
.dark .segmented .active{background:#424a56;color:var(--ink)}
.dark .notice{background:#29364b;border-color:#566b90;color:#d7e3ff}
.dark input:not([type=radio]):not([type=checkbox]),.dark select{background:#20252c;border-color:#727982;color:var(--ink)}
.dark input::placeholder,.dark textarea::placeholder{color:#b0b4bd}
.dark .message-body{background:#353c46;color:var(--ink)}
.dark .mine .message-body{background:#293e69;color:#e3ebff}
.dark .original-text{background:#482e28;border-color:#9c7464;color:#ffdbcc}
.dark .waiting-arch{background:#343b44;border-color:#667386;box-shadow:0 0 0 7px var(--paper-light),0 0 0 8px var(--line)}
.dark .booth-link:before{background:#383a35;opacity:.7}
.dark .booth-link:after{border-color:#625b4b}
.dark .booth-shadow{opacity:.5}
.dark .eyebrow,.dark .rules-list>div>span,.dark .writing-note,.dark .small-print,.dark .input-meta,.dark .compose-card>.field-label,.dark .field-hint,.dark .confessed-by,.dark .author-status,.dark .participant small,.dark .chat-header span,.dark .message-meta,.dark .message-meta strong,.dark .composer-bottom>span,.dark .read-only span,.dark .room-bottom>span,.dark .room-bottom .text-button,.dark .history-meta,.dark .empty-card,.dark .radio-row,.dark .or-divider span,.dark .site-footer,.dark .site-footer button,.dark .site-footer a,.dark .kindness-strip>button{color:var(--muted)}
.dark .confessed-by strong,.dark .detail-stack strong,.dark .choice-card strong,.dark .read-only strong{color:var(--ink)}
.dark .sidebar-icon,.dark .strip-icon,.dark .empty-chat,.dark .empty-chat>.icon,.dark .read-only>.icon,.dark .icon-button{color:#b8c5df}
.dark .chat-header,.dark .composer,.dark .room-participants,.dark .confession-sidebar .small-print,.dark .card-cta,.dark .rules-list>div,.dark .empty-card,.dark .detail-stack p{border-color:var(--line)}
.dark .or-divider span{background:var(--paper-light)}
.dark .danger-text,.dark .form-error{color:#ffb1a5}
.dark .danger{background:#ab4036;color:#fff}
.dark .danger:hover{background:#bb493d}
.dark .conversation-summary.nearing-limit{border-color:#cfb173}
.dark .conversation-summary.nearing-limit strong{color:#f1cf8c}
.dark #toast{background:#10151d;border-color:#677488;color:#edf1f8}
.dark .chat-log,.dark dialog{scrollbar-color:#606d80 transparent}
@media(max-width:600px){.header-actions{gap:10px}.dark-mode-button{width:29px;height:29px}.entry-progress{gap:9px}.entry-progress li{font-size:10px}.entry-progress li:last-child{max-width:100px}}
