/* v0.4.34: live paired reading, private index card, foreground Ideas and local read-aloud. */
.reading-view-toolbar {display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 14px;flex-wrap:wrap;}
.reading-view-toggle {display:flex;gap:4px;padding:4px;border-radius:13px;border:1px solid var(--line);background:var(--panel);}
.reading-view-toggle button {background:transparent;border:0;box-shadow:none;color:var(--muted);padding:11px 15px;min-height:44px;font-size:.95rem;}
.reading-view-toggle button[aria-pressed="true"] {background:var(--ux-purple-soft);color:var(--ux-purple);}
.private-card-button {display:flex;align-items:center;gap:8px;min-height:48px;padding:9px 12px;font-size:.85rem;}
.private-card-button svg {flex:none;}
.live-pair-card {margin:0;}
.live-pair-kicker {color:var(--muted);font-size:.72rem;font-weight:750;letter-spacing:.09em;margin:0 0 12px;padding:0 8px;}
.live-line-placeholder {color:var(--muted);font-style:normal;font-weight:550!important;font-size:clamp(1rem,2.5vw,1.25rem)!important;}
.private-line-note {display:block;font-size:.77rem;color:var(--ux-purple);margin:8px 0;font-weight:650;}

.read-aloud-row {display:flex;justify-content:flex-start;margin:14px 0 2px;}
.read-aloud-button {min-height:46px;padding:10px 14px;border-color:var(--ux-purple);color:var(--ux-purple);background:var(--ux-purple-soft);font-weight:750;box-shadow:none;}
.read-aloud-button:hover:not(:disabled) {filter:brightness(.98);}
.read-aloud-button[aria-pressed="true"] {background:var(--ux-purple);color:#fff;}
.read-aloud-button[hidden] {display:none!important;}
html[data-theme=dark] .read-aloud-button {color:#e5d8ff;border-color:#bca0f5;background:#2b2042;}
html[data-theme=dark] .read-aloud-button[aria-pressed="true"] {background:#bca0f5;color:#1b132c;}

.reading-guard {display:block;text-align:center;color:var(--ux-gold);font-size:.8rem;min-height:48px;padding:14px 4px 0;font-weight:650;}
#readerDone[hidden],#readingGuard[hidden],.live-transcript [hidden] {display:none!important;}
#readerDone {min-height:58px;margin-top:18px;font-size:1.15rem;}
.live-transcript {padding:20px 8px;color:var(--ink);overflow-wrap:anywhere;}
.live-transcript h2 {font-size:1.2rem;margin:0 0 20px;}
.transcript-empty {color:var(--muted);font-size:.98rem;}
.transcript-lines {list-style:none;padding:0;margin:0;}
.transcript-entry {margin:0 0 20px;border:0;border-left:3px solid var(--ux-teal);padding:0 0 0 14px;}
.transcript-entry.transcript-then {border-color:var(--ux-purple);margin-bottom:30px;}
.transcript-reader {font-weight:750;font-size:.82rem;}.transcript-reader span {color:var(--muted);font-weight:500;}
.transcript-entry p {font-size:1.08rem;line-height:1.55;margin:8px 0;white-space:pre-wrap;}
.transcript-live {border-top:1px solid var(--line);padding-top:12px;}
.transcript-live-line {padding:12px 14px;margin:0 0 12px;border-left:3px solid var(--line);border-radius:0;}
.transcript-live-line.read-highlight {background:var(--ux-gold-soft);border-color:var(--ux-gold);border-radius:12px;}
.transcript-live-line p {font-size:1.125rem;line-height:1.55;white-space:pre-wrap;}
.pair-reaction-dialog {width:min(620px,calc(100vw - 28px));max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior:contain;padding:24px;}
.pair-reaction-dialog .pair-break-art {display:none;}
.pair-reaction-dialog .pair-break-kicker {margin-top:0;}
.pair-vote-card {background:var(--paper);border:1px solid var(--paper-edge);border-radius:18px;padding:18px 20px;margin:16px 0 18px;text-align:left;box-shadow:var(--ux-shadow);overflow-wrap:anywhere;}
.pair-vote-line + .pair-vote-line {margin-top:18px;}
.pair-vote-line span {color:var(--ux-teal);font-size:.76rem;font-weight:800;letter-spacing:.065em;}
.pair-vote-line + .pair-vote-line span {color:var(--ux-purple);}
.pair-vote-line p {font-size:clamp(1rem,2.8vw,1.2rem);line-height:1.5;margin:8px 0 0;white-space:pre-wrap;}
.pair-reaction-dialog .pair-reaction-grid {grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;}
.pair-reaction-dialog .pair-reaction {min-height:66px;padding:8px 2px;}
.pair-reaction-dialog .pair-reaction-emoji {font-size:1.7rem;}
.pair-reaction-dialog .pair-break-next {gap:10px;min-width:0;}
.pair-reaction-dialog .pair-break-next strong {overflow-wrap:anywhere;}
.pair-reaction-dialog .pair-break-clock {flex:none;}
.ideas-modal-open {overflow:hidden;}
.ideas-dialog {box-sizing:border-box;width:min(660px,calc(100vw - 28px));max-height:calc(100dvh - 32px);margin:auto;padding:24px;border:1px solid var(--line);border-radius:24px;background:var(--panel);color:var(--ink);box-shadow:0 28px 90px #0006;overflow-y:auto;overscroll-behavior:contain;}
.ideas-dialog::backdrop {background:rgba(8,12,28,.7);backdrop-filter:blur(6px);}
.ideas-dialog-heading {display:flex;align-items:center;gap:12px;}
.ideas-dialog-heading>span {display:flex;align-items:center;justify-content:center;width:48px;height:48px;flex:none;border-radius:15px;background:var(--ux-gold-soft);font-size:1.8rem;}
.ideas-dialog-heading>div {min-width:0;flex:1;}.ideas-dialog-heading .meta {font-size:.65rem;letter-spacing:.06em;margin:0 0 4px;color:var(--muted);}
.ideas-dialog-heading h2 {font-size:1.5rem;margin:0;}
.ideas-dialog-heading button {font-size:.85rem;flex:none;padding:10px;min-height:44px;}
#ideasStatus {font-size:.92rem;color:var(--muted);line-height:1.5;min-height:1.5em;margin:18px 0 14px;}
.modal-ideas {display:grid;gap:12px;}
.modal-ideas .suggestion {box-sizing:border-box;width:100%;white-space:normal;overflow-wrap:anywhere;min-height:86px;line-height:1.5;font-size:1.06rem;text-align:left;padding:18px;border:1px solid var(--line);border-left:4px solid var(--ux-purple);border-radius:16px;background:var(--ux-soft);color:var(--ink);box-shadow:none;}
.modal-ideas .suggestion:hover,.modal-ideas .suggestion:focus-visible {background:var(--ux-purple-soft);border-color:var(--ux-purple);}
.ideas-dialog-footer {display:flex;flex-wrap:wrap;gap:10px;margin-top:20px;}.ideas-dialog-footer button {flex:1;min-height:48px;font-size:.95rem;min-width:150px;}
.ideas-dialog .btn-purple {background:var(--ux-purple);color:var(--panel);border:1px solid var(--ux-purple);}
.ideas-dialog .btn-neutral {background:var(--ui-surface);color:var(--ink);border:1px solid var(--ui-border);}
.karma-success-toast {position:fixed;inset:auto 20px max(22px,env(safe-area-inset-bottom)) 20px;z-index:3000;width:max-content;max-width:calc(100vw - 40px);margin:auto;padding:16px 20px;border:1px solid var(--ux-purple);border-radius:18px;box-shadow:var(--ux-shadow-raised);background:var(--ux-purple-soft);color:var(--ink);font-size:.98rem;line-height:1.4;overflow-wrap:anywhere;display:flex;align-items:center;gap:12px;}
.karma-success-toast button {background:transparent;color:var(--ink);border:0;padding:8px;min-width:44px;min-height:44px;}
@media(max-width:480px){.reading-view-toolbar {gap:8px;}.reading-view-toggle button {padding:10px 11px;font-size:.85rem;}.private-card-button {padding:8px;font-size:.78rem;gap:6px;}.private-card-button svg {width:23px;}.pair-reaction-dialog {padding:18px;}.pair-reaction-dialog .pair-reaction-grid {grid-template-columns:repeat(3,minmax(0,1fr));}.pair-reaction-dialog .pair-reaction {min-height:50px;display:flex;gap:10px;justify-content:center;align-items:center;}.ideas-dialog {padding:18px;}.ideas-dialog-heading h2 {font-size:1.25rem;}.ideas-dialog-heading {gap:8px;}.ideas-dialog-heading>span {width:38px;height:42px;}.modal-ideas .suggestion {padding:16px;}}
@media(prefers-reduced-motion:reduce){.ideas-dialog *, .live-pair-card * {animation:none!important;transition:none!important;}}
