:root,:root[data-theme=dark]{--bg:#0f1115;--panel:#1a1d24;--input-bg:#0f1218;--border:#2a2f3a;--text:#e6e8eb;--muted:#9aa3b2;--accent:#6366f1;--accent-hover:#4f53e0;--error-bg:#3a1d22;--error-text:#ffb4b4;--series-1:#3987e5;--series-2:#008300;--series-3:#d55181;--series-4:#c98500;--series-5:#199e70;--series-6:#d95926;--series-7:#9085e9;--series-8:#e66767;--series-other:#6b7280;--chart-track:#2a2f3a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg:#f7f8fa;--panel:#fff;--input-bg:#fff;--border:#d8dce3;--text:#1a1d24;--muted:#5f6776;--accent:#6366f1;--accent-hover:#4f53e0;--error-bg:#fde8e8;--error-text:#c0392b;--series-1:#2a78d6;--series-2:#008300;--series-3:#e87ba4;--series-4:#eda100;--series-5:#1baf7a;--series-6:#eb6834;--series-7:#4a3aa7;--series-8:#e34948;--series-other:#9aa1ae;--chart-track:#e6e9ee;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);transition:background .2s,color .2s}.theme-toggle{width:2rem;height:2rem;color:var(--text);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;padding:0;font-size:1rem;line-height:1;display:inline-flex}.theme-toggle:hover{color:var(--text);background:var(--panel);border-color:var(--accent)}.auth-screen{place-items:center;min-height:100%;padding:1.5rem;display:grid}.auth-card{background:var(--panel);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:1rem;width:100%;max-width:360px;padding:2rem;display:flex}.auth-card-top{justify-content:space-between;align-items:center;display:flex}.auth-card h1{margin:0;font-size:1.6rem}.auth-card .subtitle{color:var(--muted);margin:-.5rem 0 .5rem;font-size:.9rem}.auth-card label{color:var(--muted);flex-direction:column;gap:.35rem;font-size:.85rem;display:flex}.auth-card input{background:var(--input-bg);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:.65rem .75rem;font-size:.95rem}.auth-card input:focus{border-color:var(--accent);outline:none}.auth-card button,.dashboard-user button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.7rem 1rem;font-size:.95rem;font-weight:600}.auth-card button:hover:not(:disabled),.dashboard-user button:hover{background:var(--accent-hover)}.auth-card button:disabled{opacity:.6;cursor:default}.auth-error{background:var(--error-bg);color:var(--error-text);border-radius:8px;padding:.6rem .75rem;font-size:.85rem}.dashboard-header{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem 1rem;padding:.6rem 1.25rem;display:flex}.dashboard-header h1{margin:0;font-size:1.2rem}.dashboard-user{color:var(--muted);align-items:center;gap:.6rem;font-size:.9rem;display:flex}.dashboard-user button{color:var(--text);border:1px solid var(--border);background:0 0;padding:.45rem .8rem;font-size:.85rem}.dashboard-user button:hover{background:var(--panel)}.header-who{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:12rem;font-size:.85rem;overflow:hidden}.dashboard{flex-direction:column;height:100%;display:flex}.header-left{flex-wrap:wrap;align-items:center;gap:.4rem .9rem;min-width:0;display:flex}.nav-toggle{width:2.25rem;height:2.25rem;color:var(--text);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;padding:0;font-size:1.1rem;line-height:1;display:none}.nav-toggle:hover{border-color:var(--accent)}.sidebar-toggle{width:2.25rem;height:2.25rem;color:var(--text);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;padding:0;font-size:1.05rem;line-height:1;display:inline-flex}.sidebar-toggle:hover{border-color:var(--accent)}.sidebar-toggle:disabled{visibility:hidden}.sidebar-backdrop{display:none}.book-menu{align-items:center;min-width:0;display:inline-flex;position:relative}.book-title{min-width:0;max-width:20rem;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:.4rem;padding:.25rem .45rem;font-size:1.05rem;font-weight:650;line-height:1.3;display:inline-flex}.book-title-static{cursor:default;padding-left:0}.book-title:hover:not(.book-title-static){background:var(--panel)}.book-glyph{font-size:.95rem;line-height:1}.book-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.book-caret{color:var(--muted);font-size:.7rem}.book-group{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.book-popover{max-width:20rem;left:0;right:auto}.book-popover button{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-body{flex:1;min-height:0;display:flex}.sidebar{border-right:1px solid var(--border);flex-shrink:0;width:220px;padding:1rem .75rem;overflow-y:auto}.sidebar.collapsed{display:none}.sidebar-heading{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:0 .5rem .5rem;font-size:.75rem}.sidebar-empty,.main-empty,.section-empty{color:var(--muted);font-size:.9rem}.section-nav{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.section-nav-item[draggable=true]{cursor:grab}.section-nav-item.dragging{opacity:.4}.section-nav-item.dnd-insert-before{box-shadow:0 -3px 0 -1px var(--accent)}.section-nav-item.dnd-insert-after{box-shadow:0 3px 0 -1px var(--accent)}.section-nav-btn{text-align:left;width:100%;color:var(--text);cursor:pointer;pointer-events:auto;background:0 0;border:none;border-radius:7px;align-items:center;gap:.4rem;padding:.4rem .6rem;font-size:.9rem;display:flex;overflow:hidden}.section-nav-btn:hover{background:var(--panel)}.section-nav-status{flex-shrink:0;font-size:.85rem;line-height:1}.section-nav-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.subsection-nav{margin:2px 0 0;padding:0;border-inline-start:1px solid var(--border);flex-direction:column;gap:1px;margin-inline-start:.7rem;padding-inline-start:.5rem;list-style:none;display:flex}.subsection-nav-item[draggable=true]{cursor:grab}.subsection-nav-item.dragging{opacity:.4}.subsection-nav-item.dnd-insert-before{box-shadow:0 -3px 0 -1px var(--accent)}.subsection-nav-item.dnd-insert-after{box-shadow:0 3px 0 -1px var(--accent)}.subsection-nav-btn{color:var(--muted);padding:.3rem .5rem;font-size:.82rem}.subsection-nav-btn:hover{color:var(--text)}.sidebar-section{margin-bottom:1.25rem}.sidebar-section.threads{border-top:1px solid var(--border);padding-top:.9rem}button.sidebar-heading{cursor:pointer;background:0 0;border:none;align-items:center;gap:.35rem;width:100%;display:flex}.sidebar-heading .caret{width:.7rem;font-size:.7rem;display:inline-block}.thread-search{background:var(--input-bg);width:100%;color:var(--text);border:1px solid var(--border);border-radius:7px;margin-bottom:.6rem;padding:.4rem .55rem;font-size:.85rem}.thread-search:focus{border-color:var(--accent);outline:none}.dashboard-main{flex:1;padding:1.5rem 2rem;scroll-padding-top:1rem;overflow-y:auto}.lang-switch{border:1px solid var(--border);background:var(--panel);border-radius:8px;padding:2px;display:inline-flex}.lang-opt{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.3rem .75rem;font-size:.82rem}.lang-opt:hover:not(.active){color:var(--text)}.lang-opt.active{background:var(--accent);color:#fff}.export-menu{align-items:center;gap:.5rem;display:inline-flex;position:relative}.export-status{color:var(--muted);font-size:.8rem}.export-status.error{color:var(--error-text)}.export-popover{z-index:20;background:var(--panel);border:1px solid var(--border);border-radius:8px;flex-direction:column;min-width:200px;padding:.3rem;display:flex;position:absolute;top:calc(100% + .35rem);right:0;box-shadow:0 8px 24px #0000002e}.export-popover button{color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.5rem .6rem;font-size:.85rem}.export-popover button:hover{background:var(--bg)}.export-group{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:.35rem 0 .1rem;padding:0 .6rem;font-size:.7rem;font-weight:600}.export-group:first-child{margin-top:.15rem}.export-popover button:disabled{opacity:.5;cursor:default;background:0 0}.actions-menu{align-items:center;gap:.5rem;display:inline-flex;position:relative}.actions-sep{background:var(--border);height:1px;margin:.3rem .3rem .25rem}.export-popover button.actions-subitem{padding-left:1.6rem}.notes-panel{border-left:1px solid var(--border);flex-direction:column;flex-shrink:0;width:440px;padding:1.25rem 1rem;display:flex;overflow-y:auto}.notes-head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.6rem;display:flex}.notes-title{color:var(--text);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.notes-status{color:var(--muted);min-height:1em;margin-left:auto;font-size:.7rem}.notes-close{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.15rem .3rem;font-size:.85rem;line-height:1}.notes-close:hover{color:var(--text);background:var(--panel)}.notes-open-btn{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:6px;padding:.3rem .7rem;font-size:.8rem}.notes-open-btn:hover{background:var(--panel);border-color:var(--accent)}.notes-status.error{color:var(--error-text)}.notes-toolbar{flex-wrap:wrap;align-items:center;gap:.25rem;margin-bottom:.5rem;display:flex}.notes-tool{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:6px;padding:.2rem .5rem;font-size:.8rem;line-height:1.2}.notes-tool:hover{background:var(--panel);border-color:var(--accent)}.notes-tool-sep{background:var(--border);align-self:stretch;width:1px;margin:0 .15rem}.notes-editor{background:var(--input-bg);border:1px solid var(--border);min-height:320px;color:var(--text);border-radius:8px;outline:none;flex:1;padding:.7rem .8rem;font-size:1rem;line-height:1.55;overflow-y:auto}.notes-editor:focus{border-color:var(--accent)}.notes-editor:empty:before{content:attr(data-placeholder);color:var(--muted);pointer-events:none}.notes-editor ul,.notes-editor ol{margin:.3rem 0;padding-left:1.4rem}.translation-notes-editor{resize:none;box-sizing:border-box;width:100%;font-family:inherit}.translation-notes-editor::placeholder{color:var(--muted)}.translation-notes-actions{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.translation-notes-hint{color:var(--muted);font-size:.7rem}.notes-hint{color:var(--muted);margin:0 0 .5rem;font-size:.72rem;line-height:1.45}.section-list{flex-direction:column;gap:1.75rem;max-width:720px;display:flex}.outline-stats{align-items:baseline;gap:.9rem;margin-bottom:-.5rem;display:flex}.outline-stat{align-items:baseline;gap:.35rem;display:inline-flex}.outline-stat-num{color:var(--text);font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:700;line-height:1}.outline-stat-label{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:.7rem;font-weight:600}.outline-stat-divider{background:var(--border);align-self:center;width:1px;height:1rem}.mini-dash{background:var(--panel);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:.9rem;padding:1rem 1.25rem 1.1rem;display:flex}.mini-dash-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.mini-dash-total{align-items:baseline;gap:.4rem;display:flex}.mini-dash-num{color:var(--text);font-size:1.9rem;font-weight:700;line-height:1}.mini-dash-label{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:600}.mini-dash-sub{color:var(--muted);font-size:.8rem}.mini-dash-chips{flex-wrap:wrap;gap:.4rem;display:flex}.mini-chip{border:1px solid var(--border);color:var(--muted);background:0 0;border-radius:999px;align-items:center;gap:.3rem;padding:.18rem .55rem;font-size:.74rem;line-height:1;display:inline-flex}.mini-chip-count{color:var(--text);font-weight:700}.mini-chip-label{font-weight:600}.mini-chip.is-amber{color:#d97706;border-color:color-mix(in srgb, #d97706 45%, var(--border));background:#d977061f}.mini-chip.is-green{color:#16a34a;border-color:color-mix(in srgb, #16a34a 45%, var(--border));background:#16a34a1f}.mini-chip.is-amber .mini-chip-count,.mini-chip.is-green .mini-chip-count{color:inherit}.mini-dash-progress{align-items:center;gap:.7rem;display:flex}.mini-progress-track{background:var(--border);border-radius:999px;flex:1;height:8px;display:flex;overflow:hidden}.mini-progress-seg{height:100%;transition:width .2s}.mini-progress-seg.is-green{background:#16a34a}.mini-progress-seg.is-amber{background:#d97706}.mini-progress-pct{color:var(--muted);flex-shrink:0;font-size:.74rem;font-weight:600}.section-head{border-bottom:1px solid var(--border);align-items:center;gap:.5rem;margin-bottom:.75rem;padding-bottom:.4rem;display:flex}.section-head.editing{flex-wrap:wrap}.section-title{flex:1;min-width:0;margin:0;font-size:1.1rem}.section-head-actions{opacity:0;flex-shrink:0;gap:.25rem;transition:opacity .12s;display:flex}.section-head:hover .section-head-actions,.section-head:focus-within .section-head-actions{opacity:1}.section-action{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:7px;padding:.25rem .6rem;font-size:.78rem}.section-action:hover:not(:disabled){color:var(--text);border-color:var(--accent)}.section-delete:hover:not(:disabled){color:var(--error-text);border-color:var(--error-text)}.section-action:disabled{opacity:.6;cursor:default}.section-status{border:1px solid var(--border);white-space:nowrap;color:var(--muted);background:0 0;border-radius:999px;flex-shrink:0;align-items:center;gap:.3rem;padding:.2rem .55rem;font-size:.72rem;font-weight:600;line-height:1;display:inline-flex}.section-status-emoji{font-size:.85rem}.section-status-btn{cursor:pointer;transition:color .12s,border-color .12s,background .12s}.section-status-btn:hover:not(:disabled){border-color:var(--accent);color:var(--text)}.section-status-btn:disabled{opacity:.6;cursor:default}.section-status-done{color:#16a34a;border-color:color-mix(in srgb, #16a34a 45%, var(--border));background:#16a34a1f}.section-status-btn.section-status-done:hover:not(:disabled){color:#16a34a;border-color:#16a34a}.section-name-input{background:var(--input-bg);min-width:0;color:var(--text);border:1px solid var(--accent);border-radius:7px;flex:1;padding:.45rem .6rem;font-size:1rem;font-weight:600}.section-name-input:focus{outline:none}.section-error{color:var(--error-text);flex-basis:100%;font-size:.8rem}.btn-add-section{color:var(--muted);border:1px dashed var(--border);cursor:pointer;background:0 0;border-radius:8px;align-self:flex-start;padding:.6rem 1rem;font-size:.9rem}.btn-add-section:hover:not(:disabled){color:var(--text);border-color:var(--accent)}.btn-add-section:disabled{cursor:default;opacity:.4}.beat-list{flex-direction:column;gap:.6rem;margin:0;padding-inline-start:1.25rem;display:flex}.beat{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:.7rem .85rem;line-height:1.5;position:relative}.beat[role=button]{cursor:text;align-items:flex-start;gap:.5rem;display:flex}.beat[role=button]:hover{border-color:var(--accent)}.beat-content{flex:1}.beat-text{white-space:pre-wrap}.beat-status-cell{flex-shrink:0}.beat-status{border:1px solid var(--border);white-space:nowrap;color:var(--muted);background:0 0;border-radius:999px;align-items:center;gap:.25rem;padding:.12rem .45rem;font-size:.68rem;font-weight:600;line-height:1;display:inline-flex}.beat-status-emoji{font-size:.7rem}.beat-status-btn{cursor:pointer;transition:color .12s,border-color .12s,background .12s}.beat-status-btn:hover:not(:disabled){border-color:var(--accent);color:var(--text)}.beat-status-btn:disabled{opacity:.6;cursor:default}.beat-status-draft-1{color:#16a34a;border-color:color-mix(in srgb, #16a34a 45%, var(--border));background:#16a34a1f}.beat-status-draft-2{color:#d97706;border-color:color-mix(in srgb, #d97706 45%, var(--border));background:#d977061f}@keyframes spin{to{transform:rotate(360deg)}}.beat-chapter-tag{top:.5rem;letter-spacing:.04em;color:var(--accent);background:color-mix(in srgb, var(--accent) 11%, var(--panel));white-space:nowrap;border-radius:6px;align-items:center;gap:.32rem;max-width:11rem;padding:.18rem .55rem;font-size:.7rem;font-weight:700;line-height:1.3;transition:opacity .12s;display:inline-flex;position:absolute;inset-inline-end:.55rem}.beat-chapter-tag-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.beat-chapter-tag:before{content:"";clip-path:polygon(0 0,100% 0,100% 100%,50% 70%,0 100%);background:currentColor;flex-shrink:0;width:.5rem;height:.78rem}.beat-chapter-tag.done{color:#16a34a;background:color-mix(in srgb, #16a34a 12%, var(--panel))}.beat-chapter-tag.done:before{content:"✓";clip-path:none;background:0 0;width:auto;height:auto}button.beat-chapter-tag{cursor:pointer;border:0;font-family:inherit}button.beat-chapter-tag:hover{background:color-mix(in srgb, var(--accent) 22%, var(--panel))}button.beat-chapter-tag.done:hover{background:color-mix(in srgb, #16a34a 22%, var(--panel))}.beat.beat-has-chapter .beat-row-actions{top:2.15rem;position:absolute;inset-inline-end:.55rem}.beat.beat-has-chapter{padding-inline-end:4.5rem}.beat-tasks{border-left:2px solid color-mix(in srgb, var(--accent) 35%, var(--border));margin:.5rem 0 .1rem;padding-left:.7rem}.beat-tasks-head{letter-spacing:.04em;color:var(--muted);margin-bottom:.1rem;font-size:.68rem}.beat-tasks-list{margin:0;padding:0;list-style:none}.task-in-beat{border-bottom:none;gap:.5rem;padding:.25rem 1.6rem .25rem 0;font-size:.82rem}.task-in-beat .task-check{border-radius:5px;width:1rem;height:1rem}.task-in-beat .task-check:checked:after{width:.24rem;height:.46rem;top:.1rem;left:.31rem}.task-in-beat .task-delete{top:.15rem}.beat-tasks-add{color:var(--muted);cursor:pointer;background:0 0;border:none;margin-top:.2rem;padding:.1rem 0;font-size:.75rem}.beat-tasks-add:hover{color:var(--accent)}.beat-row-actions{flex-shrink:0;align-items:center;gap:.15rem;display:flex}.beat-delete,.beat-add-below,.beat-add-task{color:var(--muted);cursor:pointer;opacity:0;background:0 0;border:none;padding:0 .25rem;font-size:1.1rem;line-height:1;transition:opacity .12s}.beat-add-task{font-size:.95rem}.beat[role=button]:hover .beat-delete,.beat[role=button]:hover .beat-add-below,.beat[role=button]:hover .beat-add-task,.beat-delete:focus,.beat-add-below:focus,.beat-add-task:focus{opacity:1}.beat-edit{color:var(--muted);cursor:pointer;opacity:0;background:0 0;border:none;padding:0 .25rem;font-size:.95rem;line-height:1;transition:opacity .12s}.beat-edit:focus{opacity:1}.beat-edit:hover{color:var(--accent)}.beat-delete:hover{color:var(--error-text)}.beat-add-below:hover,.beat-add-task:hover{color:var(--accent)}.beat.editing{border-color:var(--accent);cursor:default;list-style:none}.beat[draggable=true]{cursor:grab}.beat.dragging{opacity:.4}.beat.dnd-insert-before{box-shadow:0 -3px 0 -1px var(--accent)}.beat.dnd-insert-after{box-shadow:0 3px 0 -1px var(--accent)}.section.dnd-target-empty{outline:2px dashed var(--accent);outline-offset:4px;border-radius:10px}.sub-section{border-inline-start:3px solid var(--accent);background:#6366f10f;border-radius:10px;margin:.9rem 0 .4rem;padding:.6rem .75rem .7rem}.sub-section.dnd-target-empty{outline:2px dashed var(--accent);outline-offset:3px}.sub-section.dnd-insert-before{box-shadow:0 -3px 0 -1px var(--accent)}.sub-section.dnd-insert-after{box-shadow:0 3px 0 -1px var(--accent)}.sub-section-bar{align-items:center;gap:.4rem;margin-bottom:.5rem;display:flex}.sub-section-bar .section-head{border-bottom:none;flex:1;min-width:0;margin:0;padding:0}.sub-section-title{text-transform:uppercase;letter-spacing:.07em;color:var(--accent);margin:0;font-size:.72rem;font-weight:700}.sub-section-drag{cursor:grab;color:var(--muted);-webkit-user-select:none;user-select:none;opacity:.3;flex-shrink:0;padding:.1rem .15rem;font-size:.95rem;line-height:1;transition:opacity .12s}.sub-section-bar:hover .sub-section-drag{opacity:.7}.sub-section-drag:active{cursor:grabbing}.btn-add-subsection{color:var(--muted);border:1px dashed var(--border);cursor:pointer;background:0 0;border-radius:8px;align-self:flex-start;padding:.4rem .8rem;font-size:.85rem}.btn-add-subsection:hover:not(:disabled){color:var(--text);border-color:var(--accent)}.btn-add-subsection:disabled{cursor:default;opacity:.4}.beat.beat-selected{outline:2px solid var(--accent);outline-offset:1px;border-radius:8px}.selection-bar{background:var(--accent);color:#fff;z-index:30;border-radius:999px;align-self:center;align-items:center;gap:.75rem;padding:.5rem .9rem;font-size:.85rem;display:flex;position:sticky;bottom:.75rem;box-shadow:0 6px 20px #00000040}.selection-clear{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:999px;padding:.2rem .7rem;font-size:.8rem}.selection-clear:hover{background:#ffffff52}.context-menu-overlay{z-index:40;position:fixed;inset:0}.context-menu{z-index:41;background:var(--panel);border:1px solid var(--border);border-radius:10px;min-width:190px;max-width:260px;margin:0;padding:.3rem;list-style:none;position:fixed;box-shadow:0 10px 30px #0000004d}.context-menu-label{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);padding:.3rem .6rem .4rem;font-size:.72rem}.context-menu-item{text-align:left;width:100%;color:var(--text);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;border-radius:7px;padding:.45rem .6rem;font-size:.88rem;overflow:hidden}.context-menu-item:hover{background:var(--accent);color:#fff}.context-menu-current{color:var(--accent);font-weight:600}.ss-modal-backdrop{z-index:50;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.ss-modal{background:var(--panel);border:1px solid var(--border);border-radius:12px;width:min(420px,100%);padding:1.25rem;box-shadow:0 18px 48px #00000073}.ss-modal-title{margin:0 0 .3rem;font-size:1.05rem}.ss-modal-sub{color:var(--muted);margin:0 0 .9rem;font-size:.85rem}.ss-modal-input{box-sizing:border-box;background:var(--input-bg);width:100%;color:var(--text);border:1px solid var(--border);border-radius:8px;padding:.55rem .7rem;font-size:.95rem}.ss-modal-input:focus{border-color:var(--accent);outline:none}.ss-modal-actions{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.ss-modal.book-ai{flex-direction:column;width:min(560px,100%);max-height:min(78vh,640px);display:flex}.book-ai-list{border:1px solid var(--border);border-radius:8px;flex:1;min-height:0;margin:0;padding:.2rem;list-style:none;overflow-y:auto}.book-ai-row{border-radius:6px;flex-wrap:wrap;align-items:center;gap:.15rem .6rem;padding:.4rem .5rem;display:flex}.book-ai-row:nth-child(odd){background:color-mix(in srgb, var(--bg) 55%, transparent)}.book-ai-name{cursor:pointer;flex:1;align-items:center;gap:.5rem;min-width:0;font-size:.9rem;display:flex}.book-ai-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.book-ai-name:has(input:disabled){cursor:default;color:var(--muted)}.book-ai-state{text-align:right;max-width:45%;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:0 auto;font-size:.78rem;overflow:hidden}.book-ai-state.flagged,.book-ai-state.done{color:var(--series-2)}.book-ai-state.running{color:var(--accent)}.book-ai-state.error{color:var(--error-text)}.book-ai-why{color:var(--error-text);overflow-wrap:anywhere;flex-basis:100%;margin:0;padding:.15rem 0 .1rem 1.65rem;font-size:.76rem;line-height:1.45}.book-ai-empty{color:var(--muted);padding:.8rem .7rem;font-size:.88rem}.ss-modal.export-modal{flex-direction:column;width:min(520px,100%);max-height:min(82vh,700px);display:flex}.export-row{align-items:center;gap:.75rem;padding:.3rem 0;display:flex}.export-row-label{color:var(--muted);flex:0 0 5.5rem;font-size:.85rem}.export-row .lang-switch{flex-wrap:wrap}.export-row .lang-opt:disabled{opacity:.4;cursor:not-allowed}.export-modal .export-chapters{border-top:1px solid var(--border);flex-direction:column;flex:auto;min-height:0;margin-top:.7rem;padding-top:.5rem;display:flex}.export-chapters-head{color:var(--muted);align-items:baseline;gap:.5rem;margin:0 0 .35rem;font-size:.85rem;display:flex}.export-chapters-head button{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8rem}.export-chapters-head button:hover{text-decoration:underline}.export-chapter-list{overscroll-behavior:contain;flex:auto;min-height:3rem;margin:0;padding:0;list-style:none;overflow-y:auto}.export-error{color:var(--error-text);margin:.7rem 0 0;font-size:.82rem}.chapter-picker{flex-direction:column;width:min(460px,100%);max-height:min(70vh,560px);display:flex}.chapter-picker-list{border:1px solid var(--border);border-radius:8px;flex:1;min-height:0;margin:.6rem 0 0;padding:0;list-style:none;overflow-y:auto}.chapter-picker-empty{color:var(--muted);padding:.8rem .7rem;font-size:.88rem}.chapter-picker-item{text-align:left;width:100%;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.5rem .7rem;font-size:.92rem;display:block}.chapter-picker-item.cursor{background:var(--accent);color:#fff}.chapter-picker-item.current .chapter-picker-name{font-weight:600}.chapter-picker-item.current:not(.cursor) .chapter-picker-name{color:var(--accent)}.chapter-picker-name,.chapter-picker-desc{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.chapter-picker-desc{color:var(--muted);margin-top:.1rem;font-size:.8rem}.chapter-picker-item.cursor .chapter-picker-desc{color:#ffffffd9}.beat-placeholder{color:var(--muted);font-style:italic}.beat-input{background:var(--input-bg);width:100%;color:var(--text);border:1px solid var(--border);font:inherit;resize:vertical;border-radius:7px;padding:.55rem .65rem;line-height:1.5}.beat-input:focus{border-color:var(--accent);outline:none}.beat-actions{align-items:center;gap:.5rem;margin-top:.55rem;display:flex}.btn-primary{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:7px;padding:.4rem .85rem;font-size:.85rem;font-weight:600}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-ghost{color:var(--text);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:7px;padding:.4rem .85rem;font-size:.85rem}.btn-ghost:hover:not(:disabled){background:var(--panel)}.btn-primary:disabled,.btn-ghost:disabled{opacity:.6;cursor:default}.beat-hint{color:var(--muted);margin-left:auto;font-size:.75rem}.beat-error{color:var(--error-text);margin-top:.4rem;font-size:.8rem}.btn-add-beat{color:var(--muted);border:1px dashed var(--border);cursor:pointer;background:0 0;border-radius:8px;margin-top:.75rem;padding:.5rem .85rem;font-size:.85rem}.btn-add-beat:hover:not(:disabled){color:var(--text);border-color:var(--accent)}.btn-add-beat:disabled{cursor:default;opacity:.4}.tasks-view{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:1.5rem;display:flex}.tasks-col{background:var(--panel);border:1px solid var(--border);border-radius:16px;flex:34rem;width:100%;min-width:0;max-width:42rem;margin:0 auto 2rem;padding:1rem 2.5rem 2.5rem;box-shadow:0 6px 24px #0000000f}.tasks-filter{margin:.25rem 0 .75rem}.tasks-empty{color:var(--muted);text-align:center;padding:2.25rem 0 1.5rem;font-style:italic}.task-group{margin-top:1.25rem}.task-group:first-of-type{margin-top:.25rem}.task-group-title{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--border);z-index:2;background:var(--panel);align-items:center;gap:.6rem;margin:0;padding:.4rem .35rem .35rem;font-size:.72rem;font-weight:600;display:flex;position:sticky;top:0}.task-group-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.task-group-stat{letter-spacing:normal;text-transform:none;font-variant-numeric:tabular-nums;flex:none}.task-group-bar{background:var(--chart-track);border-radius:999px;flex:none;width:56px;height:4px;display:block;overflow:hidden}.task-group-bar-fill{background:var(--accent);border-radius:999px;min-width:0;height:100%;transition:width .28s;display:block}.task-list{margin:.25rem 0 1rem;padding:0;list-style:none}.task{border-bottom:1px solid color-mix(in srgb, var(--border) 55%, transparent);align-items:flex-start;gap:.75rem;padding:.7rem 2rem .7rem .35rem;transition:background .12s;display:flex;position:relative}.task:last-child{border-bottom:none}.task:not(.task-editing):hover{background:color-mix(in srgb, var(--accent) 5%, transparent)}.task-check{appearance:none;border:1.5px solid color-mix(in srgb, var(--muted) 55%, var(--border));background:var(--input-bg);cursor:pointer;border-radius:6px;flex-shrink:0;width:1.2rem;height:1.2rem;margin:.12rem 0 0;transition:background .12s,border-color .12s;position:relative}.task-check:hover{border-color:var(--accent)}.task-check:checked{background:var(--accent);border-color:var(--accent)}.task-check:checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:.28rem;height:.55rem;position:absolute;top:.15rem;left:.4rem;transform:rotate(45deg)}.task-check:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.task-main{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.task-content{cursor:text;color:var(--text);border-radius:6px;margin:-.05rem -.25rem;padding:.05rem .25rem;font-size:1.02rem;font-weight:500;line-height:1.5}.task-beat{flex-wrap:wrap;align-items:center;gap:.35rem .55rem;margin-top:.1rem;display:flex}.task-beat-context{min-width:0;max-width:100%;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;margin:-.1rem -.3rem;padding:.1rem .3rem;font-family:inherit;font-size:.8rem;line-height:1.4;transition:color .12s,background .12s;display:block;overflow:hidden}.task-beat-context:hover{color:var(--text);background:color-mix(in srgb, var(--accent) 12%, transparent)}.task-beat-context:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.task-beat-arrow{color:var(--accent);font-weight:600}.task-text{white-space:pre-wrap}.task-placeholder{color:var(--muted);font-style:italic}.task-done .task-content{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb, var(--muted) 55%, transparent);text-decoration-color:color-mix(in srgb, var(--muted) 55%, transparent);font-weight:400}.task-delete{width:1.35rem;height:1.35rem;color:var(--muted);cursor:pointer;opacity:0;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:1.1rem;line-height:1;transition:opacity .12s;display:inline-flex;position:absolute;top:.6rem;right:.3rem}.task:hover .task-delete,.task-delete:focus{opacity:1}.task-delete:hover{color:var(--error-text)}.task-edit{flex:1;min-width:0}.task-input{box-sizing:border-box;background:var(--input-bg);width:100%;color:var(--text);border:1px solid color-mix(in srgb, var(--accent) 40%, var(--border));font:inherit;resize:vertical;border-radius:8px;padding:.5rem .7rem;font-size:1rem;line-height:1.55}.task-input:focus{border-color:var(--accent);outline:none}.task-actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.5rem;display:flex}.task-hint{color:var(--muted);font-size:.75rem}.task-error{color:var(--error-text);background:var(--error-bg);border-radius:6px;margin-top:.4rem;padding:.3rem .5rem;font-size:.8rem}.btn-add-task{border:1px dashed color-mix(in srgb, var(--border) 90%, transparent);width:100%;color:var(--muted);cursor:pointer;background:0 0;border-radius:10px;padding:.65rem .8rem;font-size:.9rem;font-weight:500;transition:border-color .12s,color .12s,background .12s}.btn-add-task:hover{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb, var(--accent) 5%, transparent)}.loading{height:100%;color:var(--muted);place-items:center;display:grid}@media (width<=640px){.nav-toggle{display:inline-flex}.sidebar-toggle{display:none}.sidebar.collapsed{display:block}.section-head-actions,.beat-delete,.beat-add-below,.beat-add-task,.beat-edit,.task-delete{opacity:1}.beat-hint{display:none}}.mode-switch{margin-right:.25rem}.dashboard-main.write-mode{flex-direction:column;padding:0;display:flex;overflow:hidden}.dashboard-main.write-mode .auth-error{margin:1.5rem 2rem 0}.dashboard-main.write-mode>.main-empty{padding:1.5rem 2rem}.write-view{flex-direction:column;flex:1;min-height:0;display:flex}.write-body{flex:1;min-height:0;display:flex}.write-scroll{flex:1;min-width:0;min-height:0;padding:1.5rem 2rem 0;overflow-y:auto}.beats-panel{border-left:1px solid var(--border);background:var(--panel);flex-direction:column;flex-shrink:0;gap:.75rem;width:20rem;padding:.9rem 1rem 1.25rem;display:flex;overflow-y:auto}.beats-panel-head{align-items:center;gap:.5rem;display:flex}.beats-panel-title{font-size:.9rem;font-weight:700}.beats-panel-close{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0 .15rem;font-size:1.15rem;line-height:1}.beats-panel-close:hover{color:var(--text)}.beats-filter{border:1px solid var(--border);border-radius:999px;margin-left:auto;display:inline-flex;overflow:hidden}.beats-filter-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:.2rem .55rem;font-size:.72rem}.beats-filter-btn.active{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent);font-weight:600}.beats-score{flex-direction:column;gap:.3rem;display:flex}.beats-score-label{color:var(--muted);font-size:.78rem}.beats-score-label.done{color:#16a34a;font-weight:600}.beats-score-bar{background:var(--border);border-radius:999px;height:6px;overflow:hidden}.beats-score-fill{border-radius:inherit;background:#16a34a;height:100%;transition:width .25s}.beats-group{flex-direction:column;gap:.4rem;display:flex}.beats-group-name{letter-spacing:.05em;color:var(--muted);margin:0;font-size:.72rem;font-variant-caps:all-small-caps;font-weight:700}.beats-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.beat-card{border:1px solid var(--border);background:var(--panel);border-radius:10px;align-items:flex-start;gap:.45rem;padding:.5rem .55rem;display:flex}.beat-card.done{border-color:color-mix(in srgb, #16a34a 35%, var(--border));background:color-mix(in srgb, #16a34a 6%, var(--bg))}.beat-card-actions{flex-direction:column;align-items:center;gap:.3rem;display:flex}.beat-card-text{white-space:pre-wrap;overflow-wrap:break-word;-webkit-user-select:text;user-select:text;cursor:text;flex:1;min-width:0;font-size:.95rem;line-height:1.5}.beat-card.done .beat-card-text{color:var(--muted);text-decoration:line-through}.beat-card-check,.beat-card-copy,.beat-card-insert,.beat-card-prose,.beat-card-goto,.beat-card-unassign{cursor:pointer;text-align:center;background:0 0;border:none;width:1.4rem;padding:0;font-size:.85rem;line-height:1.4}.beat-card-check:disabled{cursor:default}.beat-card-insert:disabled,.beat-card-prose:disabled{cursor:default;opacity:.4}.beat-card-copy,.beat-card-insert,.beat-card-prose,.beat-card-goto,.beat-card-unassign{opacity:0;transition:opacity .12s}.beat-card:hover .beat-card-copy,.beat-card:hover .beat-card-insert,.beat-card:hover .beat-card-prose,.beat-card:hover .beat-card-goto,.beat-card:hover .beat-card-unassign,.beat-card-prose.busy,.beat-card-copy.copied{opacity:1}.beat-card-copy.copied{color:#16a34a}.beats-empty{color:var(--muted);margin:0;font-size:.82rem}.navigation-panel{width:19rem}.nav-stale{color:var(--muted);margin:0;font-size:.75rem}.nav-list{flex-direction:column;gap:.15rem;margin:0;padding:0;list-style:none;display:flex}.nav-row{text-align:left;width:100%;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:none;border-left:2px solid #0000;border-radius:6px;padding:.3rem .45rem;font-size:.82rem;line-height:1.45;display:block}.nav-row:hover,.nav-row:focus-visible{background:color-mix(in srgb, var(--accent) 10%, transparent);border-left-color:var(--accent)}.nav-todo-toggle{border:1px solid var(--border);color:var(--muted);cursor:pointer;font:inherit;letter-spacing:.02em;background:0 0;border-radius:999px;margin-left:auto;padding:.1rem .5rem;font-size:.7rem;font-weight:600}.nav-todo-toggle:hover{color:var(--text)}.nav-todo-toggle.on{border-color:color-mix(in srgb, #facc15 45%, var(--border));color:var(--text);background:#facc1538}.navigation-panel .nav-todo-toggle~.ask-clear{margin-left:0}.nav-row.todo{background:#facc1538}.nav-row.todo:hover,.nav-row.todo:focus-visible{background:#facc1557}.nav-row.todo .nav-what{color:var(--text)}.nav-where{font-weight:600}.nav-dash,.nav-what{color:var(--muted)}.chapter-input p.nav-target{border-radius:4px;animation:1.6s ease-out nav-flash}@keyframes nav-flash{0%{background:color-mix(in srgb, var(--accent) 22%, transparent)}to{background:0 0}}.actions-panel{width:19rem}.actions-intro{flex-direction:column;gap:.6rem;display:flex}.actions-intro p{color:var(--muted);margin:0;font-size:.82rem;line-height:1.5}.actions-intro code,.actions-placeholder code{background:color-mix(in srgb, var(--accent) 10%, transparent);border-radius:4px;padding:.05rem .25rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78em}.actions-empty{color:var(--muted);margin:0;font-size:.82rem}.actions-run{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--border));background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--text);font:inherit;cursor:pointer;border-radius:8px;align-self:flex-start;padding:.35rem .7rem;font-size:.82rem}.actions-run:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 20%, transparent)}.actions-run:disabled{opacity:.45;cursor:default}.actions-bar{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.actions-count{color:var(--muted);font-size:.78rem}.actions-list{flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.actions-row{border:1px solid var(--border);background:var(--bg);border-radius:10px;flex-direction:column;gap:.3rem;padding:.55rem .65rem;display:flex}.actions-row.skipped{opacity:.5}.actions-placeholder{color:var(--muted);margin:0;font-size:.75rem}.actions-text{margin:0;font-size:.88rem;line-height:1.45}.actions-note{color:var(--muted);margin:0;font-size:.75rem}.actions-row-buttons{gap:.35rem;display:flex}.actions-accept,.actions-skip{border:1px solid var(--border);color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:7px;padding:.22rem .5rem;font-size:.78rem}.actions-accept{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));background:color-mix(in srgb, var(--accent) 12%, transparent)}.actions-accept:hover{background:color-mix(in srgb, var(--accent) 20%, transparent)}.actions-skip:hover{background:color-mix(in srgb, var(--muted) 12%, transparent)}.tasks-panel{width:17rem}.ctask-add-form{gap:.35rem;display:flex}.ctask-add-input{border:1px solid var(--border);background:var(--bg);min-width:0;color:var(--text);font:inherit;border-radius:8px;flex:1;padding:.3rem .5rem;font-size:.85rem}.ctask-add-input:focus{border-color:color-mix(in srgb, var(--accent) 55%, var(--border));outline:none}.ctask-add-btn{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--border));width:1.9rem;color:var(--accent);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;font-size:1rem;line-height:1}.ctask-add-btn:disabled{opacity:.45;cursor:default}.ctask-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.ctask-card{border:1px solid var(--border);background:var(--panel);border-radius:10px;align-items:flex-start;gap:.4rem;padding:.4rem .5rem;display:flex}.ctask-card.done{border-color:color-mix(in srgb, #16a34a 35%, var(--border));background:color-mix(in srgb, #16a34a 6%, var(--bg))}.ctask-text{white-space:pre-wrap;overflow-wrap:break-word;flex:1;min-width:0;font-size:.88rem;line-height:1.45}.ctask-text.editable{cursor:text}.ctask-card.done .ctask-text{color:var(--muted);text-decoration:line-through}.ctask-edit-input{border:1px solid color-mix(in srgb, var(--accent) 55%, var(--border));background:var(--bg);min-width:0;color:var(--text);font:inherit;border-radius:6px;flex:1;padding:.1rem .3rem;font-size:.88rem;line-height:1.45}.ctask-edit-input:focus{outline:none}.ctask-delete{cursor:pointer;text-align:center;opacity:0;background:0 0;border:none;flex-shrink:0;width:1.2rem;padding:0;font-size:.8rem;line-height:1.4;transition:opacity .12s}.ctask-card:hover .ctask-delete{opacity:1}.snap-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.snap-card{border:1px solid var(--border);background:var(--panel);border-radius:10px;align-items:flex-start;gap:.4rem;padding:.45rem .55rem;display:flex}.snap-card-main{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.snap-label{max-width:100%;font:inherit;color:var(--text);text-align:left;overflow-wrap:anywhere;cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:.35rem;padding:0;font-size:.85rem;font-weight:600;line-height:1.35;display:inline-flex}.snap-label:hover{color:var(--accent);text-decoration:underline}.snap-label.unnamed{color:var(--muted);font-weight:500}.snap-label .spinner{border:2px solid color-mix(in srgb, var(--accent) 30%, transparent);border-top-color:var(--accent);border-radius:50%;width:.7rem;height:.7rem;animation:.7s linear infinite spin}.snap-card.previewing{border-color:color-mix(in srgb, var(--accent) 55%, var(--border));background:color-mix(in srgb, var(--accent) 8%, var(--panel))}.snap-card.previewing .snap-label{color:var(--accent)}.snap-meta{color:var(--muted);font-size:.72rem}.snap-delta{font-variant-numeric:tabular-nums;margin-left:.35rem}.snap-delta.more{color:#16a34a}.snap-delta.less{color:#dc2626}.snap-card-actions{opacity:0;flex-shrink:0;gap:.1rem;transition:opacity .12s;display:flex}.snap-card:hover .snap-card-actions,.snap-card:focus-within .snap-card-actions{opacity:1}.snap-action{cursor:pointer;text-align:center;background:0 0;border:none;width:1.3rem;padding:0;font-size:.8rem;line-height:1.4}.snap-action:disabled{opacity:.4;cursor:default}.chapter-preview-banner{z-index:5;border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));background:color-mix(in srgb, var(--accent) 12%, var(--panel));border-radius:10px;flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:1.25rem;padding:.5rem .75rem;font-size:.8rem;display:flex;position:sticky;top:0;box-shadow:0 2px 10px #0000000f}.chapter-preview-what{flex-direction:column;gap:.1rem;min-width:0;margin-right:auto;display:flex}.chapter-preview-when{color:var(--muted);font-size:.72rem}.chapter-preview-empty{color:var(--muted);font-style:italic}.diff{flex-direction:column;gap:.15rem;margin-bottom:1rem;display:flex}.diff-split-row{align-items:stretch;gap:.5rem;display:flex}.diff-split-row>*{flex:1 1 0;min-width:0}.diff-split-head{letter-spacing:.05em;color:var(--muted);margin-bottom:.3rem;font-size:.72rem;font-variant-caps:all-small-caps;font-weight:700}.diff-split .diff-row{font-size:.95rem;line-height:1.7}.diff-blank{background:repeating-linear-gradient(-45deg, color-mix(in srgb, var(--muted) 8%, transparent) 0 6px, transparent 6px 12px);border-radius:6px}.diff-summary{border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;padding-bottom:.6rem;font-size:.8rem;display:flex}.diff-count-add{color:#16a34a;font-weight:700}.diff-count-remove{color:#dc2626;font-weight:700}.diff-legend{color:var(--muted)}.diff-same{color:var(--muted);margin:0 0 1rem;font-style:italic}.diff-change{flex-direction:column;gap:.15rem;margin:.35rem 0;display:flex}.diff-row{font-family:var(--prose-en);border-radius:6px;gap:.6rem;padding:.2rem .5rem;font-size:1rem;line-height:1.75;display:flex}.diff-gutter{opacity:.7;-webkit-user-select:none;user-select:none;flex:none;width:1ch;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;line-height:1.9}.diff-line{overflow-wrap:break-word;white-space:pre-wrap;min-width:0}.diff-equal{color:var(--muted)}.diff-remove{color:var(--text);background:#dc26261a}.diff-remove .diff-gutter{color:#dc2626}.diff-add{color:var(--text);background:#16a34a1a}.diff-add .diff-gutter{color:#16a34a}.diff-word{color:inherit;background:0 0;border-radius:3px;padding:0 .05em}.diff-word-old{background:#dc262647;-webkit-text-decoration:line-through #dc262699;text-decoration:line-through #dc262699}.diff-word-new{background:#16a34a47}.diff-expand{border:1px dashed var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;align-self:flex-start;margin:.25rem 0;padding:.2rem .6rem;font-size:.78rem}.diff-expand:hover{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.beats-toggle-btn{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:.35rem;padding:.25rem .55rem;font-size:.78rem;font-weight:600;display:inline-flex}.beats-toggle-btn:hover{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.beats-toggle-btn.active{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 45%, var(--border));background:color-mix(in srgb, var(--accent) 10%, transparent)}.beats-toggle-count{background:color-mix(in srgb, var(--muted) 12%, transparent);border-radius:999px;padding:.15rem .35rem;font-size:.7rem;line-height:1}.beats-toggle-count.done{background:#16a34a26}.ai-organize-btn{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--border));background:color-mix(in srgb, var(--accent) 10%, var(--panel));color:var(--accent);cursor:pointer;border-radius:8px;align-items:center;gap:.4rem;padding:.35rem .8rem;font-size:.82rem;font-weight:600;display:inline-flex}.ai-organize-btn:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 18%, var(--panel))}.ai-organize-btn:disabled{opacity:.6;cursor:default}.ai-organize-btn .spinner{border:2px solid color-mix(in srgb, var(--accent) 30%, transparent);border-top-color:var(--accent);border-radius:50%;width:.85rem;height:.85rem;animation:.7s linear infinite spin}.ai-organize-msg{color:var(--muted);font-size:.78rem}.chapter-nav{margin:.25rem 0 0;padding:0;list-style:none}.chapter-nav-item{border-radius:6px;align-items:center;display:flex}.chapter-nav-item.active{background:color-mix(in srgb, var(--accent) 14%, transparent)}.chapter-nav-item[draggable=true]{cursor:grab}.chapter-nav-item.dragging{opacity:.4}.chapter-nav-item.dnd-insert-before{box-shadow:0 -3px 0 -1px var(--accent)}.chapter-nav-item.dnd-insert-after{box-shadow:0 3px 0 -1px var(--accent)}.chapter-nav-btn{text-align:left;min-width:0;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;padding:.3rem .4rem;font-size:.85rem}.chapter-nav-name,.chapter-nav-desc{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.chapter-nav-desc{color:var(--muted);margin-top:.1rem;font-size:.75rem;font-weight:400}.chapter-nav-btn:hover{color:var(--accent)}.chapter-nav-item.active .chapter-nav-btn{color:var(--accent);font-weight:600}.chapter-nav-del,.chapter-nav-rename{color:var(--muted);cursor:pointer;opacity:0;background:0 0;border:none;padding:0 .35rem;font-size:1rem;line-height:1;transition:opacity .12s}.chapter-nav-rename{font-size:.8rem}.chapter-nav-item:hover .chapter-nav-del,.chapter-nav-item.active .chapter-nav-del,.chapter-nav-item:hover .chapter-nav-rename,.chapter-nav-item.active .chapter-nav-rename{opacity:1}.chapter-nav-del:hover{color:var(--error-text)}.chapter-nav-rename:hover{color:var(--accent)}.chapter-nav-input{background:var(--panel);border:1px solid var(--accent);min-width:0;color:var(--text);border-radius:6px;flex:1;padding:.28rem .4rem;font-family:inherit;font-size:.85rem}.chapter-nav-input:focus{outline:none}.chapter-nav-add{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.25rem .4rem;font-size:.8rem}.chapter-nav-add:hover{color:var(--accent)}:root{--prose-en:Georgia, "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, "Times New Roman", serif;--prose-he:"Assistant", "Arial Hebrew", "Helvetica Neue", Arial, sans-serif}.writer-col{background:var(--panel);border:1px solid var(--border);border-radius:14px;flex:auto;width:100%;min-width:0;max-width:62rem;margin:0 auto 2rem;padding:3rem 3.25rem 3.5rem;box-shadow:0 6px 24px #0000000f}.chapter-page-header{text-align:center;border-bottom:1px solid var(--border);margin-bottom:2.25rem;padding-bottom:1.5rem}.chapter-title{font-family:var(--prose-en);color:var(--text);margin:0;font-size:2rem;font-weight:700;line-height:1.2}.chapter-title-btn{font:inherit;color:inherit;cursor:text;background:0 0;border:0;border-radius:4px;padding:0}.chapter-title-btn:hover{color:var(--accent)}.chapter-title-input{text-align:center;border:0;border-bottom:2px solid var(--accent);background:0 0;width:100%;padding:0 0 .15rem;display:block}.chapter-title-input:focus{outline:none}.chapter-description,.chapter-description-btn,.chapter-description-input{max-width:42rem;font-family:var(--prose-en);color:var(--muted);text-align:center;margin:.5rem auto 0;font-size:.95rem;line-height:1.5;display:block}.chapter-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.chapter-description-btn{cursor:text;width:100%;font:inherit;color:var(--muted);background:0 0;border:0;padding:0}.chapter-description-btn.empty{opacity:.55;font-style:italic}.chapter-description-btn:hover{color:var(--accent);opacity:1}.chapter-description-input{box-sizing:border-box;border:0;border-bottom:1px solid var(--accent);resize:none;width:100%;color:var(--text);background:0 0;padding:0 0 .15rem}.chapter-description-input:focus{outline:none}.writer-empty{color:var(--muted);font-family:var(--prose-en);text-align:center;padding:1rem 0;font-style:italic}.chapter-input,.chapter-preview-text,.chapter-translation-text{box-sizing:border-box;width:100%;color:var(--text);font-family:var(--prose-en);white-space:pre-wrap;overflow-wrap:break-word;background:0 0;border:none;border-radius:0;margin:0 0 1rem;padding:0;font-size:1.12rem;line-height:1.9;display:block}.chapter-input p,.chapter-preview-text p,.chapter-translation-text p{margin:0 0 .55em}.chapter-input p:last-child,.chapter-preview-text p:last-child,.chapter-translation-text p:last-child{margin-bottom:0}.chapter-input strong,.chapter-preview-text strong,.chapter-translation-text strong{font-weight:700}.chapter-input em,.chapter-preview-text em,.chapter-translation-text em{font-style:italic}.chapter-input{min-height:12rem;position:relative}.chapter-input[hidden]{display:none}.chapter-input:focus{outline:none}.chapter-input[data-empty]:before{content:attr(data-placeholder);color:var(--muted);pointer-events:none;position:absolute}.format-popover{z-index:45;border:1px solid var(--border);background:var(--panel);border-radius:8px;gap:.15rem;padding:.2rem;display:flex;position:fixed;transform:translate(-50%,calc(-100% - .5rem));box-shadow:0 6px 20px #0000002e}.format-popover button{min-width:2rem;color:var(--text);font-family:var(--prose-en);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.25rem .45rem;font-size:1rem;line-height:1.2}.format-popover button:first-child{font-weight:700}.format-popover button:last-child{font-style:italic}.format-popover button:hover{background:var(--hover,#7f7f7f26)}.format-popover button.is-active{background:var(--accent);color:#fff}.write-footer{background:var(--panel);border-top:1px solid var(--border);flex-wrap:nowrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:.55rem 2rem;display:flex;box-shadow:0 -4px 16px #00000014}.write-footer-actions{flex-wrap:nowrap;align-items:center;gap:.4rem;min-width:0;display:flex}.write-actions-menu{flex:none;display:inline-flex;position:relative}.write-actions-menu .beats-toggle-btn{padding:.35rem .8rem;font-size:.82rem}.write-actions-popover{min-width:15rem;inset:auto auto calc(100% + .4rem) 0}.write-actions-popover button{white-space:nowrap;justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.write-actions-label{align-items:center;gap:.4rem;display:inline-flex}.write-actions-popover button.active{color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent)}.write-footer-status{color:var(--muted);white-space:nowrap;flex:none;align-items:center;gap:.5rem;margin-left:auto;font-size:.78rem;display:flex}.write-footer-words{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:5.5rem;font-size:.92rem}.write-footer-words.is-selection{color:var(--accent)}.shortcut-hint{color:color-mix(in srgb, var(--accent) 75%, var(--muted));border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));border-radius:5px;margin-left:.15rem;padding:.15rem .3rem;font-family:inherit;font-size:.7rem;font-weight:600;line-height:1}.write-progress{background:var(--border);border-radius:999px;width:8rem;height:6px;overflow:hidden}.write-progress-fill{border-radius:inherit;background:var(--accent);height:100%;transition:width .25s}.write-progress-fill.done{background:#16a34a}.chapter-save-state{letter-spacing:.06em;border:1px solid var(--border);box-sizing:border-box;text-align:center;white-space:nowrap;border-radius:999px;flex:none;width:6rem;padding:.2rem .4rem .3rem;font-variant-caps:all-small-caps;line-height:1;transition:color .15s,background-color .15s,border-color .15s}.chapter-save-saved{color:#16a34a;border-color:color-mix(in srgb, #16a34a 45%, var(--border));background:#16a34a1f}.chapter-save-dirty,.chapter-save-saving{color:var(--muted);background:color-mix(in srgb, var(--muted) 10%, transparent)}.chapter-save-error{color:var(--error-text);border-color:color-mix(in srgb, var(--error-text) 45%, var(--border));background:var(--error-bg)}.chapter-save-conflict{color:#b45309;border-color:color-mix(in srgb, #f59e0b 55%, var(--border));background:color-mix(in srgb, #f59e0b 16%, var(--panel))}.chapter-conflict-banner{z-index:6;border:1px solid color-mix(in srgb, #f59e0b 55%, var(--border));background:color-mix(in srgb, #f59e0b 14%, var(--panel));border-radius:10px;flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:1.25rem;padding:.5rem .75rem;font-size:.8rem;display:flex;position:sticky;top:0;box-shadow:0 2px 10px #0000000f}.chapter-conflict-what{flex-direction:column;gap:.1rem;min-width:0;margin-right:auto;display:flex}.chapter-conflict-detail{color:var(--muted)}.chapter-error{color:var(--error-text);background:var(--error-bg);overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;border-radius:6px;max-height:8rem;margin-top:.4rem;padding:.3rem .5rem;font-size:.8rem;overflow-y:auto}.write-footer .chapter-error{margin-top:0}.chapter-translation-text{font-family:var(--prose-he);margin-bottom:0;font-size:1.2rem}.stats-rail{flex-direction:column;flex:20rem;gap:1rem;width:100%;min-width:0;max-width:24rem;margin:0 auto 2rem;display:flex}@media (width>=1024px){.stats-rail{position:sticky;top:1rem}}.stat-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:1.15rem 1.25rem 1.25rem;box-shadow:0 6px 24px #0000000f}.stat-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);text-overflow:ellipsis;white-space:nowrap;margin-bottom:.4rem;font-size:.68rem;font-weight:600;overflow:hidden}.stat-card-title{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 .9rem;font-size:.7rem;font-weight:600}.stat-empty{color:var(--muted);margin:0;font-size:.85rem;font-style:italic}.stat-hero{flex-wrap:wrap;align-items:baseline;gap:.6rem;display:flex}.stat-hero-figure{letter-spacing:-.02em;color:var(--text);font-size:3rem;font-weight:700;line-height:1}.stat-hero-sub{color:var(--muted);font-size:.85rem}.stat-meter{background:var(--chart-track);border-radius:999px;height:8px;margin:.9rem 0 0;overflow:hidden}.stat-meter-fill{background:var(--accent);border-radius:999px;min-width:0;height:100%;transition:width .28s;display:block}.stat-kpis{border-top:1px solid var(--border);gap:.5rem;margin-top:1rem;padding-top:.9rem;display:flex}.stat-kpi{flex-direction:column;flex:1 1 0;gap:.15rem;min-width:0;display:flex}.stat-kpi-value{color:var(--text);font-size:1.25rem;font-weight:600;line-height:1.1}.stat-kpi-label{color:var(--muted);font-size:.72rem}.share-bar{gap:2px;height:12px;margin-bottom:1rem;display:flex}.share-seg{background:var(--series-other);border-radius:3px;min-width:3px;transition:flex-grow .28s}.series-1{background:var(--series-1)}.series-2{background:var(--series-2)}.series-3{background:var(--series-3)}.series-4{background:var(--series-4)}.series-5{background:var(--series-5)}.series-6{background:var(--series-6)}.series-7{background:var(--series-7)}.series-8{background:var(--series-8)}.stat-legend{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.stat-legend-row{align-items:center;gap:.55rem;font-size:.85rem;display:flex}.stat-legend-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text);flex:auto;overflow:hidden}.stat-legend-value{font-variant-numeric:tabular-nums;color:var(--text);flex:none;font-weight:600}.stat-legend-of{color:var(--muted);font-weight:400}.stat-note{color:var(--muted);margin:.9rem 0 0;font-size:.72rem;line-height:1.45}.stat-tiles{gap:1rem;display:flex}.stat-tile{background:var(--panel);border:1px solid var(--border);border-radius:16px;flex-direction:column;flex:1 1 0;gap:.2rem;min-width:0;padding:1rem 1.1rem;display:flex;box-shadow:0 6px 24px #0000000f}.stat-tile-value{color:var(--text);font-size:1.5rem;font-weight:700;line-height:1.1}.stat-tile-of{color:var(--muted);font-size:.95rem;font-weight:500}.stat-tile-label{color:var(--muted);font-size:.72rem}.stats-view{flex-direction:column;gap:1.15rem;max-width:72rem;margin:0 auto;display:flex}.stats-plan{margin-bottom:0}.stats-cards{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1rem;display:grid}.stats-view .stat-hero-figure{font-size:2.25rem}.stats-table-card{overflow-x:auto}.stats-table{border-collapse:collapse;width:100%;font-size:.85rem}.stats-table th,.stats-table td{text-align:left;padding:.55rem .75rem}.stats-table thead th{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--border);padding-bottom:.5rem;font-size:.68rem;font-weight:600}.stats-table tbody tr+tr{border-top:1px solid var(--border)}.stats-row{cursor:pointer;transition:background .15s}.stats-row:hover{background:color-mix(in srgb, var(--accent) 8%, transparent)}.stats-row:has(.stats-chapter-btn:focus-visible){background:color-mix(in srgb, var(--accent) 8%, transparent)}.stats-chapter{max-width:16rem}.stats-chapter-btn{font:inherit;color:var(--text);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;max-width:100%;padding:0;font-weight:600;overflow:hidden}.stats-chapter-btn:hover{color:var(--accent)}.stats-chapter-desc{max-width:100%;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:.15rem;font-size:.78rem;font-weight:400;display:block;overflow:hidden}.stats-open-groups{flex-direction:column;gap:1.5rem;margin:0;padding:0;list-style:none;display:flex}.stats-open-head{border-bottom:1px solid var(--border);color:var(--muted);align-items:center;gap:.6rem;padding-bottom:.4rem;font-size:.72rem;font-weight:600;display:flex}.stats-open-chapter{min-width:0;font:inherit;letter-spacing:.06em;text-transform:uppercase;text-align:left;color:var(--muted);cursor:pointer;background:0 0;border:0;flex:auto;padding:0;font-size:.72rem;font-weight:600;transition:color .12s}.stats-open-chapter:hover,.stats-open-chapter:focus-visible{color:var(--accent)}.stats-open-list{margin:0;padding:0;list-style:none}.stats-open-task{border-bottom:1px solid color-mix(in srgb, var(--border) 55%, transparent);align-items:flex-start;gap:.65rem;padding:.6rem .35rem;transition:background .12s;display:flex}.stats-open-task:last-child{border-bottom:none}.stats-open-task:hover{background:color-mix(in srgb, var(--accent) 5%, transparent)}.stats-open-dot{background:var(--accent);opacity:.55;border-radius:999px;flex:none;width:6px;height:6px;margin-top:.48rem}.stats-open-text{min-width:0;color:var(--text);overflow-wrap:anywhere;flex:auto;font-size:.9rem;line-height:1.5}.stats-cell-row{align-items:center;gap:.6rem;display:flex}.stats-ratio{font-variant-numeric:tabular-nums;min-width:5.5rem;color:var(--text);white-space:nowrap;font-weight:600}.stats-of{color:var(--muted);font-weight:400}.stats-cell-meter{flex:3rem;min-width:3rem;max-width:9rem;height:6px;margin:0;display:block}.stats-pct{text-align:right;font-variant-numeric:tabular-nums;min-width:2.6rem;color:var(--muted);white-space:nowrap}.stats-cell-empty .stats-ratio{color:var(--muted);font-weight:400}.stat-meter-fill.done{background:#16a34a}@media (width<=640px){.stats-rail{gap:.85rem;max-width:none;position:static}.stat-card,.stat-tile{padding:1rem 1.1rem}.stat-hero-figure{font-size:2.5rem}.task-group-bar{display:none}}.beat-focused{border-radius:10px;animation:2.2s ease-out beat-focus-ring}@keyframes beat-focus-ring{0%,70%{box-shadow:0 0 0 2px var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent)}to{background:0 0;box-shadow:0 0 0 2px #0000}}@media (prefers-reduced-motion:reduce){.beat-focused{box-shadow:0 0 0 2px var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent);animation:none}}.users-backdrop{z-index:40;background:#00000080;position:fixed;inset:0}.users-modal{background:var(--panel);border:1px solid var(--border);z-index:41;border-radius:10px;flex-direction:column;width:min(640px,100vw - 2rem);max-height:min(80vh,720px);display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 18px 48px #00000073}.users-head{border-bottom:1px solid var(--border);align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.users-title{flex:1;font-weight:600}.users-error{background:var(--error-bg);color:var(--error-text);border-radius:6px;margin:.75rem 1rem 0;padding:.5rem .75rem;font-size:.875rem}.users-body{padding:1rem;overflow-y:auto}.users-empty{color:var(--muted);margin:0}.users-list{flex-direction:column;gap:.5rem;margin:0 0 1rem;padding:0;list-style:none;display:flex}.users-row{border:1px solid var(--border);background:var(--input-bg);border-radius:8px;padding:.625rem .75rem}.users-view{align-items:center;gap:.75rem;display:flex}.users-ident{flex-direction:column;flex:1;min-width:0;display:flex}.users-name{align-items:center;gap:.375rem;font-weight:500;display:flex}.users-you{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:0 .375rem;font-size:.6875rem}.users-email{color:var(--muted);text-overflow:ellipsis;font-size:.8125rem;overflow:hidden}.users-role{text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--border);color:var(--muted);white-space:nowrap;border-radius:999px;padding:.125rem .5rem;font-size:.75rem}.users-role.role-admin{color:var(--accent);border-color:var(--accent)}.users-role.role-editor{color:var(--series-5);border-color:var(--series-5)}.users-actions{flex-shrink:0;gap:.375rem;display:flex}.guests-view{flex-direction:column;width:100%;max-width:72rem;min-height:100%;margin:0 auto;display:flex}.guests-view .users-error{margin-inline:0}.guests-sticky{z-index:2;background:var(--bg);box-shadow:0 -2rem 0 var(--bg), 0 1px 0 var(--border);position:sticky;top:0}.guests-toolbar{align-items:center;gap:.5rem;padding:.75rem 0;display:flex}.guests-add-btn{white-space:nowrap}.guests-list-wrap{flex:1;padding-top:1.25rem}.guests-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));align-items:start;gap:.6rem;display:grid}.guests-add-form{margin:0 0 .75rem}.guests-overview{flex-direction:column;gap:1rem;padding-top:1.25rem;display:flex}.gav{width:1.75rem;height:1.75rem;color:var(--av,var(--accent));background:color-mix(in oklab, var(--av,var(--accent)) 20%, var(--panel));border:1px solid color-mix(in oklab, var(--av,var(--accent)) 45%, transparent);border-radius:50%;place-items:center;font-size:.72rem;font-weight:600;display:grid}.gav-sm{width:1.6rem;height:1.6rem;font-size:.68rem}.gbars{align-items:flex-end;gap:2px;height:2.25rem;margin:.9rem 0 0;display:flex;position:relative}.gbars:after{content:"";inset-inline:0;background:var(--chart-track);border-radius:999px;height:3px;position:absolute;bottom:0}.gbar-slot{z-index:1;flex:1;align-items:flex-end;height:100%;display:flex;position:relative}.gbar{background:var(--accent);border-radius:3px;width:100%}.greaders{margin:0;padding:0;list-style:none}.greader{grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:.65rem;padding:.45rem .1rem;display:grid}.greader+.greader{border-top:1px solid var(--border)}.greader-who{min-width:0}.greader-name,.greader-where{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.greader-name{color:var(--text);font-size:.9rem}.greader-where{color:var(--muted);font-size:.75rem}.greaders-cold{margin-top:.9rem;font-style:normal}.greader-ratio{font-variant-numeric:tabular-nums}.greader-when{text-align:end;min-width:2.5rem;color:var(--muted);font-variant-numeric:tabular-nums;font-size:.75rem}.greader-when.is-on{color:var(--accent)}.gstrip{flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none;display:flex}.gcell{--lit:0;border:1px solid var(--border);background:color-mix(in oklab, var(--accent) calc(var(--lit) * 58%), var(--input-bg));width:2.1rem;height:2.5rem;color:var(--muted);font:inherit;cursor:default;border-radius:8px;place-items:center;padding:0;transition:transform .15s;display:grid}.gcell.has-notes{color:var(--text);border-color:color-mix(in oklab, var(--accent) 45%, var(--border));cursor:pointer}.gcell.has-notes:hover{transform:translateY(-2px)}.gcell.is-private{opacity:.5;border-style:dashed}.gcell-n{font-variant-numeric:tabular-nums;font-size:.75rem}.gstrip-note{margin-top:.9rem}.guests-group-name{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.7rem;font-weight:600}.guests-group-n{color:var(--accent);font-variant-numeric:tabular-nums;font-size:.7rem;font-weight:600}.guests-group-note{color:var(--muted);font-size:.75rem}.gfeed{margin:0;padding:0;list-style:none}.gfeed-day{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:1.5rem 0 .6rem;font-size:.7rem;font-weight:600}.gfeed-item:first-child .gfeed-day{margin-top:0}.gfeed-row{border-top:1px solid var(--border);border-radius:8px;grid-template-columns:1.6rem minmax(0,1fr) auto;align-items:baseline;gap:.75rem;padding:.5rem 0;display:grid}.gfeed-row:hover{background:color-mix(in srgb, var(--accent) 6%, transparent)}.gfeed-item.is-first .gfeed-row{border-top:0}.gfeed-face{width:1.6rem;height:1.6rem;display:block;position:relative}.gfeed-mark{inset-inline-end:-.3rem;background:var(--bg);border-radius:50%;padding:.12rem;font-size:.5625rem;line-height:1;position:absolute;bottom:-.3rem}.gfeed-row.is-quiet{opacity:.6}.gfeed-body{min-width:0}.gfeed-line{color:var(--muted);margin:0;font-size:.875rem;line-height:1.5}.gfeed-who{color:var(--text);font-weight:600}.gfeed-where{color:var(--text);font-style:italic}.gfeed-said{border-inline-start:2px solid var(--accent);color:var(--text);max-width:62ch;margin:.35rem 0 .15rem;padding-inline-start:.75rem;font-family:Georgia,Times New Roman,serif;font-size:.9375rem;line-height:1.55}.gfeed-voice{margin-top:.35rem}.gfeed-when{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.75rem}.guests-none{text-align:center;padding:4rem 1rem}.guests-none-face{color:var(--accent);margin:0 0 .75rem;font-size:2rem}.guests-none-line{color:var(--text);margin:0 0 .35rem;font-size:1.0625rem}.guests-none-sub{max-width:46ch;color:var(--muted);margin:0 auto 1.25rem;font-size:.8125rem;line-height:1.6}.guests-group{border-top:1px solid var(--border);grid-column:1/-1;align-items:baseline;gap:.5rem;margin:1.25rem 0 .1rem;padding-top:.75rem;display:flex}.guests-group:first-child{border-top:0;margin-top:0;padding-top:0}.guests-group-name{text-transform:uppercase;letter-spacing:.09em;color:var(--text);font-size:.6875rem}.guests-group-n{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.6875rem}.guests-group-note{color:var(--muted);opacity:.7;font-size:.75rem}.guests-filter{box-sizing:border-box;border:1px solid var(--border);background:var(--panel);min-width:0;color:var(--text);font:inherit;border-radius:6px;flex:1;padding:.4375rem .5rem}.guest-row{position:relative}.guest-new{animation:3s ease-out guest-new-flash}@keyframes guest-new-flash{0%,55%{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, var(--input-bg))}to{border-color:var(--border);background:var(--input-bg)}}@media (prefers-reduced-motion:reduce){.guest-new{border-color:var(--accent);animation:none}}.guest-lang{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:0 .375rem;font-size:.6875rem;font-weight:400}.guest-link{max-width:100%;color:var(--muted);font:inherit;cursor:pointer;text-align:start;background:0 0;border:1px solid #0000;border-radius:6px;align-self:flex-start;align-items:baseline;gap:.35rem;margin:.3rem 0 .1rem;padding:.2rem .4rem .2rem .35rem;font-size:.8125rem;display:inline-flex}.guest-link:hover:not(:disabled){border-color:var(--border);background:var(--panel)}.guest-link-host{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.guest-link-hint{color:var(--accent);white-space:nowrap;opacity:.75;font-size:.6875rem}.guest-link:hover .guest-link-hint,.guest-link:focus-visible .guest-link-hint,.guest-link.is-copied .guest-link-hint{opacity:1}.guest-code{letter-spacing:.1em;color:var(--text);background:var(--panel);border:1px solid var(--border);border-radius:4px;padding:0 .3rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9375rem}.guest-progress{color:var(--muted);align-items:center;gap:.45rem;margin-top:.125rem;font-size:.75rem;display:flex}.guest-progress-cold{font-style:italic}.guest-progress-words{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.guest-meter{background:var(--border);border-radius:999px;flex-shrink:0;width:5rem;height:5px;position:relative;overflow:hidden}.guest-meter-fill{border-radius:inherit;position:absolute;inset-block:0;inset-inline-start:0}.guest-meter-fill.is-started{background:color-mix(in srgb, var(--accent) 45%, transparent)}.guest-meter-fill.is-done{background:#16a34a}.guest-row .users-view{align-items:flex-start}.guest-row .users-view>.gav{flex:none;margin-top:.1rem}.guest-menu-wrap{flex-shrink:0;display:inline-flex;position:relative}.guest-more{padding-inline:.5rem;line-height:1}.guest-menu{z-index:42;min-width:240px;max-height:min(70vh,420px);overflow-y:auto}.guest-menu button.users-danger{color:var(--error-text)}.guest-menu button.users-danger:hover{background:var(--error-bg)}@media (width<=768px){.guest-menu{min-width:min(280px,100vw - 3rem)}.guest-menu button{min-height:2.75rem;font-size:.9375rem}}.users-danger:hover:not(:disabled){color:var(--error-text);border-color:var(--error-text)}.users-edit,.users-add{flex-direction:column;gap:.5rem;display:flex}.users-add{border:1px dashed var(--border);border-radius:8px;padding:.75rem}.users-edit-names{gap:.5rem;display:flex}.users-edit-names input{flex:1;min-width:0}.users-edit input,.users-edit select,.users-add input,.users-add select,.users-pw input{border:1px solid var(--border);background:var(--panel);color:var(--text);font:inherit;border-radius:6px;padding:.4375rem .5rem}.users-hint{color:var(--muted);margin:-.125rem 0 0;font-size:.75rem;line-height:1.4}.users-pw{border-top:1px solid var(--border);gap:.375rem;margin-top:.5rem;padding-top:.5rem;display:flex}.users-pw input{flex:1;min-width:0}.btn-add-user{border:1px dashed var(--border);width:100%;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:.5rem}.btn-add-user:hover{color:var(--text);border-color:var(--accent)}.guests-add-form .users-edit-names{flex-wrap:wrap}.guests-add-form .users-edit-names input{min-width:10rem}@media (width<=640px){.users-view{flex-wrap:wrap}.users-ident{flex-basis:100%}.users-actions{margin-left:auto}.users-edit-names{flex-direction:column}.guest-row .users-view{flex-wrap:nowrap}.guest-row .users-ident{flex-basis:auto}}.guests-tabs{background:var(--panel);border:1px solid var(--border);border-radius:8px;flex-shrink:0;gap:.125rem;padding:.1875rem;display:flex}.guests-tab{color:var(--muted);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:.375rem;padding:.3125rem .6875rem;font-size:.8125rem;display:inline-flex}.guests-tab:hover{color:var(--text)}.guests-tab.on{background:var(--bg);color:var(--text);box-shadow:0 1px 2px #0000002e}.guests-tab-n{font-variant-numeric:tabular-nums;background:var(--border);color:var(--text);border-radius:999px;padding:.1875rem .3125rem;font-size:.6875rem;line-height:1}.guests-tab.on .guests-tab-n{background:var(--accent);color:#fff}.guests-refresh{white-space:nowrap}.feedback-list{flex-direction:column;gap:.25rem;padding-block:.5rem 1.5rem;display:flex}.feedback-chapter{border-top:1px solid var(--border);padding:.9rem 0 1.1rem}.feedback-title{color:var(--text);align-items:baseline;gap:.5rem;margin:0 0 .55rem;font-size:.9375rem;font-weight:600;display:flex}.feedback-title-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.feedback-private{color:var(--muted);border:1px solid var(--border);border-radius:999px;flex-shrink:0;padding:.0625rem .4rem;font-size:.6875rem;font-weight:500}.feedback-count{color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0;margin-inline-start:auto;font-size:.75rem;font-weight:400}.feedback-note{border-inline-start:2px solid var(--accent);max-width:72ch;margin:0 0 .5rem;padding:.1rem 0 .1rem .7rem}.feedback-voice.gfeed-voice audio{flex:0 15rem;max-width:15rem;height:1.75rem}.feedback-voice{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.feedback-voice audio{flex:16rem;max-width:22rem;height:2rem}.feedback-voice-len{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.75rem}.feedback-note-text{color:var(--text);white-space:pre-wrap;margin:0;font-size:.875rem;line-height:1.55}.feedback-note-who{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.25rem;font-size:.75rem;display:flex}.feedback-del,.gfeed-del{color:var(--muted);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:6px;flex-shrink:0;padding:.1rem .3rem;font-size:.75rem;line-height:1;transition:opacity .12s,color .12s,background .12s}.feedback-note:hover .feedback-del,.feedback-del:focus-visible,.gfeed-row:hover .gfeed-del,.gfeed-del:focus-visible{opacity:1}.feedback-del:hover,.gfeed-del:hover{color:var(--error-text);background:color-mix(in srgb, var(--error-text) 12%, transparent)}@media (hover:none){.feedback-del,.gfeed-del{opacity:.7}}.gfeed-end{align-items:baseline;gap:.15rem;display:flex}.feedback-note-name{color:var(--text);font-weight:600}.feedback-note-lang,.feedback-note-when{color:var(--muted)}.feedback-note-lang:before,.feedback-note-when:before{content:"·";margin-inline-end:.4rem}.feedback-none{text-align:center;padding:2.5rem 0}.feedback-none-face{opacity:.5;margin:0 0 .5rem;font-size:2rem}.feedback-none .users-empty{max-width:46ch;margin-inline:auto}.guest-said{color:var(--muted);align-items:center;gap:.25rem;margin-top:.2rem;font-size:.75rem;display:flex}@media (width<=720px){.guests-toolbar{flex-wrap:wrap}.guests-add-btn,.guests-filter,.guests-tabs{flex:100%}.guests-tab{flex:1;justify-content:center}.gcell{width:2rem;height:2.4rem}}.rephrase-modal{background:var(--panel);border:1px solid var(--border);border-radius:12px;width:min(560px,100%);padding:1.25rem;box-shadow:0 18px 48px #00000073}.rephrase-original{border-inline-start:3px solid var(--border);color:var(--muted);max-height:9rem;margin:0 0 .9rem;padding:.15rem 0;padding-inline-start:.75rem;font-style:italic;line-height:1.5;overflow-y:auto}.rephrase-loading{color:var(--muted);align-items:center;gap:.55rem;padding:.4rem 0;font-size:.9rem;display:flex}.rephrase-loading .spinner{border:2px solid color-mix(in srgb, var(--accent) 30%, transparent);border-top-color:var(--accent);border-radius:50%;width:1rem;height:1rem;animation:.7s linear infinite spin}.rephrase-options{flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.rephrase-option{text-align:start;background:var(--input-bg);width:100%;color:var(--text);border:1px solid var(--border);font:inherit;cursor:pointer;border-radius:8px;padding:.6rem .75rem;line-height:1.5}.rephrase-option.picked{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.rephrase-hint{color:var(--muted);margin-top:.9rem;font-size:.78rem}.rephrase-hint kbd{border:1px solid var(--border);border-bottom-width:2px;border-radius:4px;padding:.05rem .3rem;font-size:.72rem}.suggest-panel{gap:.1rem}.suggest-source{border:1px solid var(--border);color:var(--muted);cursor:pointer;font:inherit;letter-spacing:.02em;white-space:nowrap;background:0 0;border-radius:999px;margin-left:auto;padding:.1rem .5rem;font-size:.7rem;font-weight:600}.suggest-source:hover:not(:disabled){color:var(--text)}.suggest-source.on{background:color-mix(in srgb, var(--accent) 22%, transparent);border-color:color-mix(in srgb, var(--accent) 45%, var(--border));color:var(--text)}.suggest-source:disabled{cursor:default;opacity:.55}.suggest-asked{color:var(--muted);margin:0 0 .6rem;font-size:.85rem;line-height:1.45}.suggest-asked span{color:var(--text);font-style:italic}.suggest-loading{color:var(--muted);align-items:center;gap:.55rem;margin:.2rem 0 .7rem;font-size:.9rem;display:flex}.suggest-spinner{border:2px solid color-mix(in srgb, var(--accent) 25%, transparent);border-top-color:var(--accent);border-radius:50%;flex:none;width:.95rem;height:.95rem;animation:.7s linear infinite spin}.suggest-list{flex-direction:column;flex:auto;gap:.5rem;min-height:0;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.suggest-row{align-items:stretch;gap:.35rem;display:flex}.suggest-add{background:var(--input-bg);width:2rem;color:var(--muted);border:1px solid var(--border);cursor:pointer;border-radius:8px;flex:none;font-size:.95rem;line-height:1}.suggest-add:hover:not(:disabled){border-color:var(--accent);color:var(--text)}.suggest-add:disabled{cursor:default;opacity:.5}.suggest-option{text-align:start;background:var(--input-bg);min-width:0;color:var(--text);border:1px solid var(--border);font:inherit;cursor:pointer;border-radius:8px;flex:auto;padding:.6rem .7rem;font-size:1rem;line-height:1.5}.suggest-option:hover{border-color:var(--accent)}.suggest-list-ghost{overflow:hidden}.suggest-ghost{pointer-events:none;cursor:default;flex-direction:column;gap:.45rem;width:100%;animation:1.6s ease-in-out infinite suggest-ghost-pulse;display:flex}.suggest-ghost-line{background:linear-gradient(90deg, var(--border) 0%, color-mix(in srgb, var(--border) 45%, var(--panel)) 50%, var(--border) 100%);background-size:220% 100%;border-radius:4px;height:.72rem;animation:1.6s linear infinite suggest-shimmer;display:block}.suggest-ghost-line.short{width:62%}.suggest-ghost-line.note{opacity:.6;width:38%;height:.6rem;margin-top:.15rem}@keyframes suggest-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}@keyframes suggest-ghost-pulse{0%,to{opacity:1}50%{opacity:.72}}@media (prefers-reduced-motion:reduce){.suggest-spinner{animation-duration:2.4s}.suggest-ghost,.suggest-ghost-line{animation:none}}.suggest-option-text{white-space:pre-wrap;display:block}.suggest-typed{color:var(--muted)}.suggest-note{color:var(--muted);margin-top:.35rem;font-size:.84rem;line-height:1.35;display:block}.suggest-foot{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:.5rem;padding-top:.7rem;display:flex}.beat-prose-note{white-space:pre-wrap}.expand-rows{color:var(--muted);align-items:center;gap:.6rem;margin-top:.9rem;font-size:.85rem;display:flex}.expand-rows .ss-modal-input{width:6rem}.expand-refs{border:none;border-top:1px solid var(--border);margin:.9rem 0 0;padding:.5rem 0 0}.expand-refs legend{color:var(--muted);padding:0;font-size:.85rem}.expand-refs ul{max-height:11rem;margin:.4rem 0 0;padding:0;list-style:none;overflow-y:auto}.expand-ref{cursor:pointer;border-radius:6px;align-items:flex-start;gap:.55rem;padding:.3rem .2rem;display:flex}.expand-ref:hover{background:var(--input-bg)}.expand-ref.is-fixed{cursor:default;opacity:.75}.expand-ref.is-fixed:hover{background:0 0}.expand-ref input{accent-color:var(--accent);margin:.15rem 0 0}.expand-ref-text{min-width:0}.expand-ref-name,.expand-ref-desc{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.expand-ref-name{font-size:.9rem}.expand-ref-desc{color:var(--muted);font-size:.78rem}.prose-option-note{color:var(--muted);margin-top:.35rem;font-size:.78rem;line-height:1.35;display:block}.question-asked{margin:0 0 .75rem;font-weight:600;line-height:1.4}.question-answer{background:var(--input-bg);border:1px solid var(--border);white-space:pre-wrap;-webkit-user-select:text;user-select:text;border-radius:8px;max-height:min(20rem,50vh);padding:.6rem .75rem;line-height:1.55;overflow-y:auto}.question-answer-actions{align-items:center;gap:.75rem;margin-top:.9rem;display:flex}.question-answer-actions .rephrase-hint{margin-top:0}.examples-suggestions{margin-top:.55rem}.examples-suggestions .rephrase-option{justify-content:space-between;align-items:center;gap:.6rem;padding:.45rem .7rem;font-size:.9rem;display:flex}.examples-question:focus{border-color:var(--border)}.examples-question.picked,.examples-question.picked:focus{border-color:var(--accent)}.define-head{flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}.define-term{font-size:1.15rem;font-weight:600}.define-pos{color:var(--muted);font-size:.82rem;font-style:italic}.define-note{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:.05rem .4rem;font-size:.72rem}.define-from{color:var(--muted);margin:.2rem 0 0;font-size:.78rem}.define-meaning{margin:.55rem 0 0;line-height:1.5}.define-example{border-left:3px solid var(--border);color:var(--muted);margin:.5rem 0 0;padding-left:.75rem;font-style:italic;line-height:1.5}.define-hebrew{align-items:baseline;gap:.5rem;margin:.65rem 0 0;display:flex}.define-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem}.define-synonyms-label{margin:.85rem 0 .4rem}.define-synonyms{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.define-synonym{background:var(--input-bg);color:var(--text);border:1px solid var(--border);font:inherit;cursor:pointer;border-radius:999px;padding:.3rem .7rem;font-size:.9rem}.define-synonym.picked{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.ask-panel{width:25rem;overflow:hidden}.ask-clear{border:1px solid var(--border);color:var(--muted);cursor:pointer;font:inherit;background:0 0;border-radius:999px;margin-left:auto;padding:.15rem .6rem;font-size:.75rem}.ask-clear:hover:not(:disabled){color:var(--text);border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.ask-clear:disabled{opacity:.5;cursor:default}.ask-thread{flex:1;min-height:0;margin:0 -.35rem;padding:0 .35rem;overflow-y:auto}.ask-intro{flex-direction:column;gap:.6rem;display:flex}.ask-starters{flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.ask-starter{background:var(--input-bg);color:var(--text);border:1px solid var(--border);font:inherit;cursor:pointer;border-radius:999px;padding:.25rem .65rem;font-size:.85rem}.ask-starter:hover{border-color:color-mix(in srgb, var(--accent) 55%, var(--border));color:var(--accent)}.ask-turns{flex-direction:column;gap:1.1rem;margin:0;padding:0;list-style:none;display:flex}.ask-turn{flex-direction:column;gap:.45rem;display:flex}.ask-q{border-left:2px solid var(--accent);flex-wrap:wrap;align-items:baseline;gap:.35rem;padding-left:.55rem;display:flex}.ask-q-text{overflow-wrap:anywhere;flex:1;min-width:0;margin:0;font-size:.98rem;font-weight:600}.ask-q-when{color:var(--muted);font-size:.75rem}.ask-turn-actions{opacity:0;gap:.1rem;transition:opacity .12s;display:flex}.ask-turn:hover .ask-turn-actions,.ask-turn:focus-within .ask-turn-actions{opacity:1}.ask-action{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:.1rem .15rem;font-size:.85rem;line-height:1}.ask-action:hover:not(:disabled){color:var(--text)}.ask-action:disabled{opacity:.4;cursor:default}.ask-waiting{color:var(--muted);align-items:center;gap:.4rem;margin:0;font-size:.9rem;display:flex}.ask-waiting .spinner,.ask-send .spinner{border:2px solid color-mix(in srgb, var(--accent) 30%, transparent);border-top-color:var(--accent);border-radius:50%;flex-shrink:0;width:.8rem;height:.8rem;animation:.7s linear infinite spin}.ask-form{flex-shrink:0;align-items:flex-end;gap:.4rem;display:flex}.ask-input{resize:vertical;border:1px solid var(--border);background:var(--bg);min-width:0;max-height:9rem;color:var(--text);font:inherit;border-radius:8px;flex:1;padding:.4rem .55rem;font-size:.95rem;line-height:1.45}.ask-input:focus{border-color:color-mix(in srgb, var(--accent) 55%, var(--border));outline:none}.ask-send{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--border));width:2.1rem;height:2.1rem;color:var(--accent);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;display:flex}.ask-send:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 12%, transparent)}.ask-send:disabled{opacity:.45;cursor:default}.md{overflow-wrap:anywhere;font-size:1rem;line-height:1.6}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md p{margin:0 0 .6rem}.md h2,.md h3,.md h4{margin:1rem 0 .4rem;line-height:1.3}.md h2{font-size:1.1rem}.md h3{font-size:1rem}.md h4{color:var(--muted);font-size:.95rem}.md ul,.md ol{margin:0 0 .6rem;padding-left:1.15rem}.md li{margin:0 0 .3rem}.md li>ul,.md li>ol{margin-top:.3rem}.md li>p{margin-bottom:.2rem}.md li>:last-child{margin-bottom:0}.md blockquote{border-left:2px solid var(--border);color:var(--muted);margin:0 0 .6rem;padding:.1rem 0 .1rem .7rem;font-style:italic}.md blockquote p{margin:0 0 .35rem}.md code{background:color-mix(in srgb, var(--muted) 16%, transparent);border-radius:4px;padding:.05rem .25rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em}.md pre{background:var(--input-bg);border:1px solid var(--border);border-radius:8px;margin:0 0 .6rem;padding:.55rem .7rem;overflow-x:auto}.md pre code{background:0 0;padding:0}.md hr{border:none;border-top:1px solid var(--border);margin:.9rem 0}.md a{color:var(--accent)}.md strong{font-weight:700}.audio-view{flex-direction:column;gap:1rem;max-width:72rem;margin:0 auto;display:flex}.audio-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.audio-title{margin:0;font-size:1.35rem}.audio-voice{align-items:center;gap:.5rem;display:flex}.audio-voice-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.68rem}.audio-voice-select,.audio-rate select{background:var(--input-bg);color:var(--text);border:1px solid var(--border);border-radius:7px;padding:.3rem .5rem;font-size:.85rem}.audio-voice-name{color:var(--text);font-size:.9rem}.audio-layout{grid-template-columns:minmax(0,1fr) 22rem;align-items:start;gap:1rem;display:grid}@media (width<=60rem){.audio-layout{grid-template-columns:minmax(0,1fr)}}.audio-queue{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:.35rem}.audio-list{margin:0;padding:0;list-style:none}.audio-row{border-radius:9px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.65rem;padding:.5rem .6rem;display:grid}.audio-row+.audio-row{border-top:1px solid var(--border)}.audio-row.current{background:color-mix(in srgb, var(--accent) 14%, transparent)}.audio-play{border:1px solid var(--border);background:var(--input-bg);width:2rem;height:2rem;color:var(--text);cursor:pointer;border-radius:50%;font-size:.8rem}.audio-play:disabled{opacity:.35;cursor:default}.audio-row-main{min-width:0}.audio-row-name,.audio-row-desc,.audio-now-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.audio-row-name{font-size:.95rem}.audio-row-desc{color:var(--muted);font-size:.78rem}.audio-row-meta{color:var(--muted);align-items:center;gap:.45rem;font-size:.78rem;display:flex}.audio-dur{font-variant-numeric:tabular-nums}.audio-chip{border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:.1rem .45rem;font-size:.7rem}.audio-chip.stale{color:var(--series-4);border-color:color-mix(in srgb, var(--series-4) 45%, var(--border))}.audio-chip.none{opacity:.7}.audio-chip.working{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 55%, var(--border))}.audio-chip.pub{cursor:pointer;opacity:.55;transition:opacity .15s,color .15s,border-color .15s}.audio-chip.pub:hover:not(:disabled){opacity:1}.audio-chip.pub.on{opacity:1;color:var(--series-2);border-color:color-mix(in srgb, var(--series-2) 50%, var(--border));background:color-mix(in srgb, var(--series-2) 10%, transparent)}.audio-chip.pub:disabled{cursor:default}.audio-row-actions{gap:.15rem;display:flex}.audio-icon{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:.25rem .35rem;font-size:.95rem;line-height:1}.audio-icon:hover:not(:disabled){background:var(--input-bg);color:var(--text)}.audio-icon:disabled{opacity:.3;cursor:default}.audio-side{flex-direction:column;gap:1rem;display:flex;position:sticky;top:.5rem}.audio-now{background:var(--panel);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:.4rem;padding:.9rem;display:flex}.audio-now-kicker{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.66rem}.audio-now-title{font-size:1.05rem;font-weight:600}.audio-now-sub{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.78rem;display:-webkit-box;overflow:hidden}.audio-scrub{width:100%;accent-color:var(--accent);margin:.35rem 0 0}.audio-times{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:.72rem;display:flex}.audio-transport{justify-content:center;align-items:center;gap:.35rem;margin-top:.2rem;display:flex}.audio-transport .audio-icon{font-size:1.05rem}.audio-big{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:50%;width:2.9rem;height:2.9rem;font-size:1.1rem}.audio-big:hover{background:var(--accent-hover)}.audio-extras{justify-content:space-between;align-items:center;gap:.5rem;margin-top:.3rem;display:flex}.audio-rate{color:var(--muted);align-items:center;gap:.35rem;font-size:.75rem;display:flex}.audio-link{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8rem}.audio-tasks{width:auto;max-height:none}.pron-suggestions{border:1px solid var(--border);background:var(--input-bg);border-radius:8px;margin-bottom:.6rem;padding:.5rem .6rem}.pron-list{flex-direction:column;gap:.4rem;max-height:16rem;margin:0 0 .5rem;padding:0;list-style:none;display:flex;overflow-y:auto}.pron-row{flex-direction:column;gap:.1rem;display:flex}.pron-rule{align-items:baseline;gap:.35rem;font-size:.85rem;display:flex}.pron-word{color:var(--muted)}.pron-arrow{color:var(--muted);font-size:.75rem}.pron-say{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem}.pron-why{color:var(--muted);font-size:.72rem}.pron-actions,.pron-hint{margin:.35rem 0 0}.pron-preview{align-items:center;gap:.4rem;display:flex}.pron-empty{color:var(--muted);margin:0;font-size:.8rem}.pron-preview{margin-top:.5rem}.pron-preview-input{background:var(--input-bg);border:1px solid var(--border);min-width:0;color:var(--text);font:inherit;border-radius:6px;flex:1;padding:.35rem .5rem;font-size:.82rem}.pron-preview .notes-open-btn{min-width:2.4rem}.audio-queue-head{border-bottom:1px solid var(--border);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.15rem;padding:.5rem .6rem .55rem;font-size:.72rem;display:flex}.audio-queue-total{letter-spacing:normal;color:var(--text);font-variant-numeric:tabular-nums;font-size:.85rem}.audio-queue-actions{align-items:baseline;gap:.6rem;display:flex}.audio-zip{border:1px solid var(--border);color:var(--muted);cursor:pointer;font:inherit;letter-spacing:.06em;text-transform:uppercase;font-variant-numeric:tabular-nums;white-space:nowrap;background:0 0;border-radius:7px;padding:.2rem .5rem;font-size:.72rem;line-height:1.4}.audio-zip:hover:not(:disabled){background:var(--input-bg);color:var(--text);border-color:var(--accent)}.audio-zip:disabled{opacity:.4;cursor:default}.map-view{flex-direction:column;max-width:68rem;padding:1.25rem 1.5rem 3rem;display:flex}.map-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.9rem;display:flex}.map-head-text{flex-direction:column;gap:.25rem;display:flex}.map-title{margin:0;font-size:1.35rem}.map-sub{color:var(--muted);margin:0;font-size:.9rem}.map-head-actions{align-items:center;gap:.6rem;display:flex}.map-progress{color:var(--muted);align-items:center;gap:.4rem;font-size:.82rem;display:inline-flex}.map-chapter{border-top:1px solid var(--border);flex-direction:column;gap:.2rem;padding:.7rem 0 .55rem;display:flex}.map-chapter:first-of-type{border-top:none}.map-chapter-head{align-items:baseline;gap:.5rem;display:flex}.map-chapter-name{color:var(--text);font:inherit;cursor:pointer;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;padding:0;font-size:1.12rem;font-weight:700;overflow:hidden}.map-chapter-name:hover,.map-chapter-name:focus-visible{color:var(--accent)}.map-chapter-meta{flex-shrink:0;align-items:center;gap:.5rem;margin-left:auto;display:inline-flex}.map-chapter-state{color:var(--muted);align-items:center;gap:.35rem;font-size:.82rem;display:inline-flex}.map-chapter-state.error{color:var(--error-text)}.map-chapter-read{border:1px solid var(--border);color:var(--text);font:inherit;cursor:pointer;opacity:0;background:0 0;border-radius:7px;padding:.2rem .55rem;font-size:.82rem}.map-chapter:hover .map-chapter-read,.map-chapter-read:focus-visible,.map-chapter-read:disabled{opacity:1}.map-chapter-read:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 12%, transparent)}.map-chapter-read:disabled{opacity:.45;cursor:default}.map-chapter-desc{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:0 auto;font-size:.92rem;overflow:hidden}.map-chapter-desc:before{content:"— "}.map-chapter-body{flex-direction:column;gap:.15rem;display:flex}.map-rows-wrap .map-rows{padding-left:0}.map-line{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;flex:0 0 2.5rem;padding-right:.75rem;font-size:.82rem}.map-row-text,.map-rows-wrap{flex:auto;min-width:0}.map-rows{margin:0;padding:0;list-style:none}.map-row-item{align-items:center;gap:.25rem;display:flex}.map-row-item .map-row{flex:auto;min-width:0}.map-row{text-align:left;width:100%;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:baseline;padding:.1rem .4rem;font-size:.97rem;line-height:1.6;display:flex}.map-row:hover,.map-row:focus-visible{background:color-mix(in srgb, var(--accent) 10%, transparent)}.map-row-item.todo .map-row{background:#facc1538}.map-row-item.todo .map-row:hover,.map-row-item.todo .map-row:focus-visible{background:#facc1557}.map-row-item.todo .map-what{color:var(--text)}.map-row-actions{opacity:0;gap:.15rem;display:inline-flex}.map-row-item:hover .map-row-actions,.map-row-item:focus-within .map-row-actions{opacity:1}.map-row-actions button{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:5px;padding:.25rem;font-size:.88rem;line-height:1}.map-row-actions button:hover{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--text)}.map-gap{align-items:center;height:.35rem;display:flex}.map-gap.open{height:auto;padding:.25rem 0}.map-gap-add{color:var(--muted);font:inherit;cursor:pointer;opacity:0;background:0 0;border:none;border-radius:5px;margin-left:3.25rem;padding:0 .45rem;font-size:.82rem}.map-gap:hover .map-gap-add,.map-gap-add:focus-visible{opacity:1}.map-gap-add:hover{color:var(--accent)}.map-gap-form{align-items:center;gap:.35rem;width:100%;padding-left:3.25rem;display:flex}.map-gap-input{border:1px solid var(--border);background:var(--bg);min-width:0;color:var(--text);font:inherit;border-radius:7px;flex:auto;padding:.35rem .55rem;font-size:.95rem}.map-gap-input:focus{border-color:var(--accent);outline:none}.map-gap-save,.map-gap-cancel{border:1px solid var(--border);color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:7px;padding:.25rem .55rem;font-size:.88rem}.map-gap-save:not(:disabled):hover{background:color-mix(in srgb, var(--accent) 15%, transparent)}.map-gap-save:disabled{opacity:.45;cursor:default}.map-empty{color:var(--muted);margin:.25rem 0 0;font-size:.9rem}.map-loose-name{color:var(--text);font-size:1.12rem;font-weight:700}.map-tasks{flex-direction:column;gap:.15rem;max-width:38rem;padding-left:3.6rem;display:flex}.map-tasks .ctask-card{background:0 0;border:none;border-radius:4px;padding:.15rem .35rem}.map-tasks .ctask-card:hover{background:color-mix(in srgb, var(--accent) 8%, transparent)}.map-tasks .ctask-list{gap:0}.map-tasks .ctask-text{font-size:.97rem;line-height:1.6}.map-tasks .beat-card-check{font-size:.85rem}.ctask-add-open{color:var(--muted);font:inherit;cursor:pointer;opacity:0;background:0 0;border:none;border-radius:5px;align-self:flex-start;padding:.1rem .35rem;font-size:.82rem}.map-chapter:hover .ctask-add-open,.ctask-add-open:focus-visible{opacity:1}.ctask-add-open:hover{color:var(--accent)}.ctask-add-form.compact{max-width:22rem}.m-app{background:var(--bg);height:100dvh;color:var(--text);flex-direction:column;display:flex;overflow:hidden}.m-header{padding:calc(env(safe-area-inset-top) + .6rem) 1rem .6rem;border-bottom:1px solid var(--border);background:var(--bg);flex-direction:column;flex-shrink:0;gap:.55rem;display:flex}.m-header-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.m-header-plan{min-width:0;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:.4rem;padding:.15rem 0;display:flex}.m-header-glyph{flex-shrink:0;font-size:.9rem;line-height:1}.m-header-title{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:1.05rem;font-weight:700;overflow:hidden}.m-header-caret{color:var(--accent);flex-shrink:0;font-size:.8rem}.m-header-actions{flex-shrink:0;align-items:center;gap:.4rem;display:flex}.m-icon-btn{width:2.4rem;height:2.4rem;color:var(--text);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-items:center;padding:0;font-size:1.2rem;line-height:1;display:inline-flex}.m-icon-btn:active{background:var(--panel);border-color:var(--accent);color:var(--accent)}.m-modebar{display:flex}.m-app .mode-switch{scrollbar-width:none;flex:1;margin:0;display:flex;overflow-x:auto}.m-app .mode-switch::-webkit-scrollbar{display:none}.m-app .mode-switch .lang-opt{white-space:nowrap;flex:1 0 auto;padding:.5rem .4rem;font-size:.8rem;font-weight:600}.m-app .lang-opt.active{background:linear-gradient(135deg, var(--accent), #8b5cf6);color:#fff}.m-controls{border-bottom:1px solid var(--border);background:var(--bg);z-index:4;flex-shrink:0;justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem 1rem;display:flex;position:sticky;top:0}.m-filter-btn{border:1px solid var(--border);color:var(--text);cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;align-items:center;gap:.4rem;padding:.35rem .7rem;font-size:.82rem;display:inline-flex}.m-filter-btn.active{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, var(--bg))}.m-filter-badge{background:var(--accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:1.1rem;height:1.1rem;padding:0 .3rem;font-size:.68rem;font-weight:700;display:inline-flex}.m-screen{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;padding:1rem 1rem calc(env(safe-area-inset-bottom) + 1.5rem);flex:1;overflow-y:auto}.m-empty{color:var(--muted);text-align:center;padding:3rem 1rem}.m-screen-flush{padding:0}.m-app .tasks-view{flex-direction:column;align-items:stretch;gap:1rem}.m-app .tasks-col{max-width:none;box-shadow:none;background:0 0;border:none;border-radius:0;padding:.25rem 0 1.5rem}.m-app .stats-rail{width:100%;max-width:none}.m-sheet-root{z-index:40;flex-direction:column;justify-content:flex-end;display:flex;position:fixed;inset:0}.m-sheet-backdrop{background:#00000080;position:absolute;inset:0}.m-sheet{background:var(--bg);border-top:1px solid var(--border);max-height:85dvh;padding:.5rem 1rem calc(env(safe-area-inset-bottom) + 1rem);border-top-left-radius:18px;border-top-right-radius:18px;flex-direction:column;animation:.2s m-sheet-up;display:flex;position:relative;box-shadow:0 -8px 30px #00000059}@keyframes m-sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.m-sheet-grip{background:color-mix(in srgb, var(--accent) 45%, var(--border));border-radius:999px;flex-shrink:0;align-self:center;width:2.5rem;height:.28rem;margin:.4rem 0 .7rem}.m-sheet-title{text-transform:uppercase;letter-spacing:.06em;color:var(--accent);margin-bottom:.6rem;font-size:.75rem;font-weight:700}.m-sheet-body{-webkit-overflow-scrolling:touch;overflow-y:auto}.m-plan-field{margin-bottom:1rem}.m-plan-field-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:.35rem;font-size:.72rem;font-weight:600;display:block}.m-plan-list{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.m-plan-item{text-align:left;border:1px solid var(--border);width:100%;color:var(--text);cursor:pointer;background:0 0;border-radius:10px;padding:.75rem .85rem;font-size:.95rem}.m-plan-item.active{background:linear-gradient(135deg, var(--accent), #8b5cf6);color:#fff;border-color:#0000}.m-actions{flex-direction:column;gap:.6rem;display:flex}.m-action-btn{border:1px solid var(--border);width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border-radius:10px;padding:.75rem .85rem;font-size:.95rem;transition:transform .12s,background .15s}.m-action-btn:active:not(:disabled){background:var(--panel);transform:scale(.98)}.m-action-note{color:var(--muted);margin:-.2rem 0 0;font-size:.82rem}.m-action-chapter-name{display:block}.m-action-chapter-desc{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:.15rem;font-size:.78rem;display:block;overflow:hidden}.m-desktop-hint{border-top:1px solid var(--border);color:var(--muted);margin-top:.5rem;padding-top:.75rem;font-size:.8rem;line-height:1.5}.m-deck{flex-direction:column;gap:.75rem;display:flex}.m-deck-stats{background:linear-gradient(135deg, var(--accent), #8b5cf6 55%, #a855f7);color:#ffffffd1;box-shadow:0 6px 18px color-mix(in srgb, var(--accent) 30%, transparent);border-radius:14px;justify-content:space-around;gap:1rem;padding:.75rem 1rem;font-size:.78rem;display:flex}.m-deck-stat{flex-direction:column;align-items:center;gap:.05rem;display:flex}.m-deck-stat strong{color:#fff;font-size:1.15rem;font-weight:800}.m-deck-list{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.m-deck-card{--sec-color:var(--accent);background:linear-gradient(135deg, color-mix(in srgb, var(--sec-color) 7%, var(--panel)), var(--panel) 55%);border:1px solid var(--border);border-inline-start:4px solid var(--sec-color);width:100%;color:var(--text);text-align:start;cursor:pointer;border-radius:14px;align-items:center;gap:.75rem;padding:.9rem 1rem;transition:transform .12s,border-color .12s;display:flex}.m-deck-card:active{border-color:var(--sec-color);transform:scale(.98)}.m-deck-num{background:color-mix(in srgb, var(--sec-color) 16%, var(--panel));border:1px solid color-mix(in srgb, var(--sec-color) 45%, var(--border));width:1.9rem;height:1.9rem;color:var(--sec-color);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:inline-flex}.m-deck-main{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.m-deck-name{overflow-wrap:anywhere;font-size:1rem;font-weight:700;line-height:1.3}.m-deck-meta{color:var(--muted);font-size:.75rem}.m-deck-chevron{color:var(--sec-color);flex-shrink:0;font-size:1.3rem;line-height:1}.m-deck-add,.m-add-sub,.m-add-beat{border:1.5px dashed color-mix(in srgb, var(--sec-color,var(--accent)) 45%, var(--border));width:100%;color:color-mix(in srgb, var(--sec-color,var(--accent)) 75%, var(--muted));cursor:pointer;background:0 0;border-radius:12px;padding:.7rem;font-size:.9rem;font-weight:600;transition:background .15s,border-color .15s}.m-deck-add:active,.m-add-sub:active,.m-add-beat:active{border-color:var(--sec-color,var(--accent));background:color-mix(in srgb, var(--sec-color,var(--accent)) 10%, transparent)}.m-section-screen{--sec-color:var(--accent);flex-direction:column;min-height:100%;display:flex}.m-section-bar{z-index:5;background:linear-gradient(to bottom, color-mix(in srgb, var(--sec-color) 12%, var(--bg)), var(--bg));border-bottom:1px solid color-mix(in srgb, var(--sec-color) 40%, var(--border));align-items:center;gap:.5rem;padding:.55rem .75rem;display:flex;position:sticky;top:0}.m-back{width:2.2rem;height:2.2rem;color:var(--sec-color);cursor:pointer;background:0 0;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1.6rem;line-height:1;display:inline-flex}.m-back:active{background:var(--panel)}.m-section-bar-title{flex-direction:column;flex:1;min-width:0;display:flex}.m-section-bar-name{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:.4rem;font-size:1rem;font-weight:700;display:flex;overflow:hidden}.m-section-bar-name:before{content:"";background:var(--sec-color);border-radius:999px;flex-shrink:0;width:.55em;height:.55em}.m-section-bar-meta{color:var(--muted);font-size:.72rem}.m-section-content{padding:1rem 1rem calc(env(safe-area-inset-bottom) + 2rem);flex-direction:column;gap:.6rem;display:flex}.m-subsection{border-inline-start:3px solid color-mix(in srgb, var(--sec-color) 55%, var(--border));flex-direction:column;gap:.6rem;margin:.35rem 0;padding-inline-start:.7rem;display:flex}.m-subsection-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.m-subsection-name{text-transform:uppercase;letter-spacing:.05em;color:color-mix(in srgb, var(--sec-color) 55%, var(--text));overflow-wrap:anywhere;min-width:0;margin:0;font-size:.8rem;font-weight:700}.m-group-empty{color:var(--muted);margin:.25rem 0;font-size:.85rem}.m-beat-list{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.m-beat{background:var(--panel);border:1px solid var(--border);border-inline-start:3px solid color-mix(in srgb, var(--sec-color,var(--accent)) 45%, var(--border));border-radius:14px;padding:.8rem .9rem;transition:transform .12s;position:relative}.m-beat:has(>.m-beat-body.m-tappable):active{transform:scale(.99)}.m-beat-body{font-size:.95rem;line-height:1.55}.m-beat-body.m-tappable{cursor:pointer}.m-beat:has(>.m-beat-menu) .m-beat-body{padding-inline-end:1.7rem}.m-beat-text{white-space:pre-wrap;overflow-wrap:anywhere}.m-beat-menu{width:2rem;height:2rem;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;font-size:1.15rem;line-height:1;display:inline-flex}.m-beat>.m-beat-menu{top:.3rem;position:absolute;inset-inline-end:.3rem}.m-beat-menu:active{background:var(--bg);color:var(--text)}.m-sub-menu{color:color-mix(in srgb, var(--sec-color,var(--accent)) 60%, var(--muted));flex-shrink:0}.m-beat-chips{flex-wrap:wrap;align-items:center;gap:.35rem;margin-top:.55rem;display:flex}.m-beat-ch{color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, var(--panel));white-space:nowrap;text-overflow:ellipsis;border-radius:999px;align-items:center;max-width:60%;padding:.12rem .55rem;font-size:.7rem;font-weight:700;display:inline-flex;overflow:hidden}.m-beat-ch.done{color:#16a34a;background:color-mix(in srgb, #16a34a 12%, var(--panel))}.m-pager{border-top:1px solid var(--border);gap:.6rem;margin-top:1rem;padding-top:.9rem;display:flex}.m-pager>span{flex:1}.m-pager-btn{--sec-color:var(--accent);background:var(--panel);border:1px solid var(--border);border-inline-start:3px solid var(--sec-color);min-width:0;color:var(--text);cursor:pointer;text-align:start;border-radius:12px;flex-direction:column;flex:1;align-items:flex-start;gap:.15rem;padding:.6rem .75rem;transition:transform .12s,border-color .12s;display:flex}.m-pager-btn:active{border-color:var(--sec-color);transform:scale(.98)}.m-pager-next{text-align:end;border-inline-start:1px solid var(--border);border-inline-end:3px solid var(--sec-color);align-items:flex-end}.m-pager-next:active{border-color:var(--sec-color)}.m-pager-dir{text-transform:uppercase;letter-spacing:.04em;color:var(--sec-color);font-size:.68rem;font-weight:700}.m-pager-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.85rem;font-weight:600;overflow:hidden}.m-sheet-sub{color:var(--muted);margin:0 0 .75rem;font-size:.85rem;line-height:1.45}.m-sheet-preview{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.m-sheet-error{color:#ef4444;margin-bottom:.6rem;font-size:.85rem}.m-sheet-actions{justify-content:flex-end;gap:.6rem;margin-top:.9rem;display:flex}.m-sheet-actions .btn-primary,.m-sheet-actions .btn-ghost{padding:.6rem 1.1rem;font-size:.95rem}.m-sheet .btn-primary:not(:disabled){background:linear-gradient(135deg, var(--accent), #8b5cf6);border-color:#0000}.m-name-input,.m-beat-input{background:var(--bg);width:100%;color:var(--text);border:1px solid var(--border);border-radius:10px;padding:.7rem .8rem;font-family:inherit;font-size:1rem}.m-beat-input{resize:vertical;min-height:7rem;line-height:1.5}.m-name-input:focus,.m-beat-input:focus{border-color:var(--accent);outline:none}.m-action-list{flex-direction:column;gap:.5rem;display:flex}.m-action-pair{gap:.5rem;display:flex}.m-action-pair .m-action-btn{flex:1}.m-action-btn:disabled{opacity:.45;cursor:default}.m-action-danger{color:#ef4444;border-color:color-mix(in srgb, #ef4444 40%, var(--border))}.m-action-back{color:var(--muted);text-align:start;background:0 0;border:none;padding:.25rem .2rem;font-size:.85rem}.m-action-indent{width:calc(100% - 1.1rem);margin-inline-start:1.1rem}.m-action-current{border-color:var(--accent);color:var(--accent)}.m-write{flex-direction:column;flex:1;min-height:0;display:flex}.m-chapter-bar{background:linear-gradient(to bottom, color-mix(in srgb, var(--accent) 10%, var(--bg)), var(--bg));border-bottom:1px solid color-mix(in srgb, var(--accent) 30%, var(--border));flex-shrink:0;align-items:center;gap:.4rem;padding:.4rem .5rem;display:flex}.m-chapter-bar[hidden],.m-write-page[hidden]{display:none}.m-chapter-step{width:2.6rem;height:2.6rem;color:var(--accent);cursor:pointer;background:0 0;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1.7rem;line-height:1;display:inline-flex}.m-chapter-step:active:not(:disabled){background:var(--panel)}.m-chapter-step:disabled{opacity:.25;cursor:default}.m-chapter-pick{min-width:0;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:.05rem;padding:.3rem;display:flex}.m-chapter-pick:active{background:var(--panel)}.m-chapter-name{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:700;display:block;overflow:hidden}.m-chapter-meta{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;display:block;overflow:hidden}.m-chapter-more{height:2.6rem;color:var(--accent);cursor:pointer;background:0 0;border:none;border-radius:10px;flex:0 0 2.6rem;justify-content:center;align-items:center;padding:0;font-size:1.15rem;line-height:1;display:inline-flex}.m-chapter-more:active:not(:disabled){background:var(--panel)}.m-chapter-more:disabled{opacity:.25;cursor:default}.m-chapter-save{text-align:right;color:var(--muted);white-space:nowrap;flex:0 0 4.1rem;padding-right:.15rem;font-size:.7rem;font-weight:600;overflow:hidden}.m-chapter-save-dirty,.m-chapter-save-saving{color:var(--accent)}.m-chapter-save-error{color:#ef4444}.m-chapter-save-conflict{color:#b45309}.m-write-error{background:color-mix(in srgb, #ef4444 12%, var(--bg));color:#ef4444;margin:0;padding:.5rem 1rem;font-size:.85rem}.m-write-conflict{background:color-mix(in srgb, #f59e0b 14%, var(--bg));border-bottom:1px solid color-mix(in srgb, #f59e0b 45%, var(--border));flex-direction:column;gap:.5rem;margin:0;padding:.7rem 1rem;display:flex}.m-write-conflict-what{color:var(--text);margin:0;font-size:.82rem;line-height:1.45}.m-write-conflict-btn{background:linear-gradient(135deg, var(--accent), #8b5cf6);color:#fff;cursor:pointer;border:none;border-radius:10px;align-self:flex-start;padding:.55rem .9rem;font-size:.88rem;font-weight:600}.m-write-page{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;padding:1rem 1.1rem calc(env(safe-area-inset-bottom) + 1rem);flex-direction:column;flex:1;display:flex;overflow-y:auto}.m-md-input{box-sizing:border-box;appearance:none;width:100%;box-shadow:none;color:var(--text);font-family:var(--prose-en);white-space:pre-wrap;overflow-wrap:break-word;resize:none;-webkit-text-size-adjust:100%;background:0 0;border:none;border-radius:0;flex:1 0 auto;padding:0;font-size:1.05rem;line-height:1.75;display:block;overflow:hidden}.m-md-input[hidden]{display:none}.m-md-input:focus{outline:none}.m-md-input::placeholder{color:var(--muted)}.m-chapter-row{align-items:stretch;gap:.4rem;display:flex}.m-chapter-rename-btn{border:1px solid var(--border);width:2.75rem;color:var(--muted);cursor:pointer;background:0 0;border-radius:10px;flex-shrink:0;font-size:1rem}.m-chapter-rename{flex-direction:column;gap:.5rem;display:flex}.m-chapter-rename-input{background:var(--panel);border:1px solid var(--accent);width:100%;color:var(--text);border-radius:10px;padding:.7rem .85rem;font-family:inherit;font-size:1rem}.m-chapter-rename-input:focus{outline:none}.m-chapter-desc-input{box-sizing:border-box;background:var(--panel);border:1px solid var(--border);width:100%;color:var(--text);resize:none;border-radius:10px;padding:.6rem .85rem;font-family:inherit;font-size:.9rem;line-height:1.4}.m-chapter-desc-input:focus{border-color:var(--accent);outline:none}.m-chapter-rename-actions{gap:.5rem;display:flex}.m-sheet-btn{border:1px solid var(--border);min-height:2.75rem;color:var(--text);cursor:pointer;background:0 0;border-radius:10px;flex:1;font-family:inherit;font-size:.9rem;font-weight:600}.m-sheet-btn-primary{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, var(--bg));color:var(--accent)}.m-chapter-item{text-align:start;border:1px solid var(--border);width:100%;min-width:0;color:var(--text);cursor:pointer;background:0 0;border-radius:10px;flex-direction:column;flex:1;gap:.15rem;padding:.7rem .85rem;display:flex}.m-chapter-item.active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, var(--bg))}.m-chapter-item-head{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.m-chapter-item-name{text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:700;overflow:hidden}.m-chapter-item-words{color:var(--muted);white-space:nowrap;font-size:.78rem}.m-chapter-item-preview,.m-chapter-item-desc{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.m-chapter-item-desc{color:var(--text);opacity:.75}.m-chapter-add{margin-top:.75rem}.m-chapter-action{text-align:start;border:1px solid var(--border);width:100%;color:var(--text);cursor:pointer;background:0 0;border-radius:10px;align-items:center;gap:.75rem;padding:.7rem .85rem;display:flex}.m-chapter-action:active:not(:disabled){background:var(--panel);border-color:var(--accent)}.m-chapter-action:disabled{opacity:.45;cursor:default}.m-chapter-action-icon{flex-shrink:0;font-size:1.25rem;line-height:1}.m-chapter-action-text{flex-direction:column;gap:.1rem;min-width:0;display:flex}.m-chapter-action-label{font-size:.95rem;font-weight:600}.m-chapter-action-hint{color:var(--muted);font-size:.75rem}.m-panel{flex-direction:column;flex:1;min-height:0;display:flex}.m-panel-bar{background:linear-gradient(to bottom, color-mix(in srgb, var(--accent) 10%, var(--bg)), var(--bg));border-bottom:1px solid color-mix(in srgb, var(--accent) 30%, var(--border));flex-shrink:0;align-items:center;gap:.4rem;padding:.4rem .5rem;display:flex}.m-panel-heading{flex-direction:column;flex:1;gap:.05rem;min-width:0;display:flex}.m-panel-title{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:700;overflow:hidden}.m-panel-sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.m-panel-action{border:1px solid var(--border);min-height:2.4rem;color:var(--text);cursor:pointer;background:0 0;border-radius:10px;flex-shrink:0;padding:0 .7rem;font-family:inherit;font-size:.85rem;font-weight:600}.m-panel-action:active:not(:disabled){background:var(--panel)}.m-panel-action:disabled{opacity:.4;cursor:default}.m-panel-count{color:var(--muted);flex-shrink:0;padding-right:.4rem;font-size:.8rem;font-weight:600}.m-panel-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;padding:.9rem 1rem calc(env(safe-area-inset-bottom) + 1.5rem);flex:1;overflow-y:auto}.m-ask-thread{flex-direction:column;display:flex}.m-ask-intro{flex-direction:column;gap:.5rem;display:flex}.m-ask-starters{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.m-ask-starter{text-align:start;border:1px solid var(--border);width:100%;color:var(--accent);cursor:pointer;background:0 0;border-radius:999px;padding:.6rem .95rem;font-size:.9rem}.m-ask-turns{flex-direction:column;gap:1.1rem;margin:0;padding:0;list-style:none;display:flex}.m-ask-q{background:color-mix(in srgb, var(--accent) 12%, var(--bg));border:1px solid color-mix(in srgb, var(--accent) 25%, var(--border));border-radius:12px;flex-direction:column;gap:.25rem;padding:.6rem .8rem;display:flex}.m-ask-q-text{white-space:pre-wrap;margin:0;font-size:.92rem;font-weight:600;line-height:1.4}.m-ask-q-foot{align-items:center;gap:.35rem;display:flex}.m-ask-q-when{color:var(--muted);flex:1;font-size:.7rem}.m-ask-action{cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:2.1rem;height:2.1rem;padding:0;font-size:.9rem;display:inline-flex}.m-ask-action:active:not(:disabled){background:var(--panel)}.m-app .m-ask-a{padding:.15rem .2rem 0;font-size:.92rem;line-height:1.6}.m-ask-waiting{color:var(--muted);align-items:center;gap:.5rem;margin:.4rem 0 0;font-size:.85rem;display:flex}.m-ask-form{padding:.6rem .8rem calc(env(safe-area-inset-bottom) + .6rem);border-top:1px solid var(--border);background:var(--bg);flex-shrink:0;align-items:flex-end;gap:.5rem;display:flex}.m-ask-input{background:var(--panel);border:1px solid var(--border);min-width:0;max-height:40dvh;color:var(--text);resize:none;border-radius:14px;flex:1;padding:.65rem .8rem;font-family:inherit;font-size:.95rem;line-height:1.4}.m-ask-input:focus{border-color:var(--accent);outline:none}.m-ask-send{background:linear-gradient(135deg, var(--accent), #8b5cf6);color:#fff;cursor:pointer;border:none;border-radius:50%;flex:0 0 2.75rem;justify-content:center;align-items:center;height:2.75rem;padding:0;font-size:1.05rem;display:inline-flex}.m-ask-send:disabled{opacity:.4;cursor:default}.m-task-add{gap:.5rem;margin-bottom:.9rem;display:flex}.m-task-add-input{background:var(--panel);border:1px solid var(--border);min-width:0;color:var(--text);border-radius:10px;flex:1;padding:.7rem .85rem;font-family:inherit;font-size:.95rem}.m-task-add-input:focus{border-color:var(--accent);outline:none}.m-task-add-btn{background:color-mix(in srgb, var(--accent) 14%, var(--bg));border:1px solid var(--accent);color:var(--accent);cursor:pointer;border-radius:10px;flex:0 0 2.9rem;justify-content:center;align-items:center;font-size:1.2rem;display:inline-flex}.m-task-add-btn:disabled{opacity:.4;cursor:default}.m-task-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.m-task-card{border:1px solid var(--border);border-radius:10px;align-items:flex-start;gap:.3rem;padding:.25rem;display:flex}.m-task-card.done .m-task-text{color:var(--muted);text-decoration:line-through}.m-task-check,.m-task-delete{cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:2.4rem;height:2.4rem;padding:0;font-size:1rem;display:inline-flex}.m-task-check:active:not(:disabled),.m-task-delete:active{background:var(--panel)}.m-task-text{text-align:start;min-width:0;color:var(--text);white-space:pre-wrap;cursor:pointer;background:0 0;border:none;flex:1;padding:.55rem .15rem;font-family:inherit;font-size:.92rem;line-height:1.45}.m-task-text:disabled{color:var(--text);opacity:1;cursor:default}.m-snap-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.m-snap-delta{margin-inline-start:.4rem;font-weight:600}.m-snap-delta.more{color:#16a34a}.m-snap-delta.less{color:#dc2626}.m-chapter-item-name.unnamed{color:var(--muted);font-weight:600}.m-snap-read{font-size:1rem;line-height:1.7}.m-snap-read p{margin:0 0 .9rem}.m-snap-read-actions{border-top:1px solid var(--border);gap:.5rem;margin-top:1.5rem;padding-top:1rem;display:flex}.m-translate-btn{background:color-mix(in srgb, var(--accent) 14%, var(--bg));border:1px solid var(--accent);width:100%;min-height:2.9rem;color:var(--accent);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.6rem .9rem;font-family:inherit;font-size:.92rem;font-weight:600;display:flex}.m-translate-btn:disabled{opacity:.7;cursor:default}.m-translation{font-size:1.05rem;line-height:1.8}.m-translation p{margin:0 0 .9rem}.m-stats{flex-direction:column;gap:.9rem;display:flex}.m-stat-hero{background:linear-gradient(135deg, var(--accent), #8b5cf6 55%, #a855f7);color:#ffffffd9;box-shadow:0 6px 18px color-mix(in srgb, var(--accent) 30%, transparent);border-radius:16px;flex-direction:column;gap:.15rem;padding:1rem 1.1rem;display:flex}.m-stat-hero-label{letter-spacing:.06em;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:700;overflow:hidden}.m-stat-hero-figure{color:#fff;font-size:2.6rem;font-weight:800;line-height:1.05}.m-stat-hero-sub{font-size:.85rem}.m-stat-hero-meter{background:#ffffff40;border-radius:999px;height:.45rem;margin-top:.6rem;overflow:hidden}.m-stat-hero-fill{background:#fff;border-radius:999px;height:100%;display:block}.m-stat-hero-kpis{gap:1.25rem;margin-top:.7rem;font-size:.78rem;display:flex}.m-stat-hero-kpis strong{color:#fff;font-size:1.05rem;font-weight:800}.m-stat-tiles{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.6rem;display:grid}.m-stat-tile{background:var(--panel);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:.1rem;padding:.75rem .85rem;display:flex}.m-stat-tile-title{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:.7rem;font-weight:700}.m-stat-tile-figure{font-size:1.5rem;font-weight:800;line-height:1.2}.m-stat-tile-sub,.m-stat-tile-empty{color:var(--muted);font-size:.78rem}.m-stat-tile .m-stat-bar{margin-top:.45rem}.m-stat-note{color:var(--muted);margin:0;font-size:.78rem;line-height:1.5}.m-stat-heading{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin:.4rem 0 -.3rem;font-size:.75rem;font-weight:700}.m-stat-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.m-stat-chapter{text-align:start;background:var(--panel);border:1px solid var(--border);width:100%;color:var(--text);cursor:pointer;border-radius:14px;flex-direction:column;gap:.35rem;padding:.75rem .9rem;transition:transform .12s,border-color .12s;display:flex}.m-stat-chapter:active{border-color:var(--accent);transform:scale(.99)}.m-stat-chapter-head{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.m-stat-chapter-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.95rem;font-weight:700;overflow:hidden}.m-stat-chapter-words{white-space:nowrap;font-size:.82rem;font-weight:700}.m-stat-chapter-desc{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:.15rem 0 .35rem;font-size:.78rem;font-weight:400;display:block;overflow:hidden}.m-stat-of{color:var(--muted);font-weight:500}.m-stat-bar{background:var(--bg);border:1px solid var(--border);border-radius:999px;height:.35rem;display:block;overflow:hidden}.m-stat-bar-fill{background:linear-gradient(90deg, var(--accent), #8b5cf6);border-radius:999px;height:100%;display:block}.m-stat-bar-fill.done{background:linear-gradient(90deg,#16a34a,#22c55e)}.m-stat-chapter-meta{color:var(--muted);gap:.6rem;font-size:.75rem;display:flex}.m-stat-ratio.done{color:#16a34a;font-weight:600}.m-stat-open{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.m-stat-open-head{color:var(--accent);cursor:pointer;background:0 0;border:none;align-items:baseline;gap:.5rem;padding:0;font-size:.85rem;font-weight:700;display:flex}.m-stat-open-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.m-stat-open-count{color:var(--muted);font-size:.75rem;font-weight:500}.m-stat-open-list{flex-direction:column;gap:.3rem;margin:.35rem 0 0;padding:0;list-style:none;display:flex}.m-stat-open-task{overflow-wrap:anywhere;padding-inline-start:.9rem;font-size:.88rem;line-height:1.45;position:relative}.m-stat-open-task:before{content:"";inset-inline-start:0;background:color-mix(in srgb, var(--accent) 60%, var(--border));border-radius:999px;width:.35rem;height:.35rem;position:absolute;top:.55em}.m-sel-bar{z-index:30;padding:.45rem .6rem calc(.45rem + env(safe-area-inset-bottom));background:var(--panel);border-top:1px solid var(--border);overscroll-behavior-x:contain;scrollbar-width:none;align-items:center;gap:.4rem;display:flex;position:fixed;inset-inline:0;overflow-x:auto;box-shadow:0 -6px 18px #0000001f}.m-sel-bar::-webkit-scrollbar{display:none}.m-sel-btn{background:var(--bg);border:1px solid var(--border);min-height:2.3rem;color:var(--text);white-space:nowrap;cursor:pointer;border-radius:999px;flex:none;padding:.35rem .7rem;font-family:inherit;font-size:.85rem}.m-sel-btn:active{border-color:var(--accent);color:var(--accent)}.m-sel-bold,.m-sel-italic{min-width:2.3rem;font-family:var(--prose-en);text-align:center;font-size:1rem}.m-sel-bold{font-weight:800}.m-sel-italic{font-style:italic}.m-sel-sep{background:var(--border);flex:0 0 1px;align-self:stretch;margin:.25rem .15rem}.m-ai-passage{border-inline-start:3px solid var(--accent);background:color-mix(in srgb, var(--accent) 7%, var(--bg));color:var(--text);font-family:var(--prose-en);border-radius:0 10px 10px 0;margin:0 0 .9rem;padding:.6rem .8rem;font-size:.95rem;line-height:1.6}.m-ai-hint,.m-ai-label{color:var(--muted);margin:0 0 .6rem;font-size:.85rem;line-height:1.5}.m-ai-label{margin-top:1rem;font-weight:600}.m-ai-asked{color:var(--text);margin:0 0 .9rem;font-size:.92rem;font-weight:600}.m-ai-form{flex-direction:column;display:flex}.m-ai-input-row{align-items:center;gap:.5rem;display:flex}.m-ai-count{min-width:0;color:var(--muted);flex:1;align-items:center;gap:.6rem;font-size:.9rem;display:flex}.m-ai-count .m-ai-input{flex:0 0 5.5rem}.m-ai-refs{margin-top:1.1rem}.m-ai-ref{border-top:1px solid var(--border);align-items:flex-start;gap:.7rem;padding:.6rem .2rem;display:flex}.m-ai-ref input{width:1.1rem;height:1.1rem;accent-color:var(--accent);margin:.2rem 0 0}.m-ai-ref.is-fixed{opacity:.75}.m-ai-ref-text{min-width:0}.m-ai-ref-name,.m-ai-ref-desc{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.m-ai-ref-name{font-size:.95rem}.m-ai-ref-desc{color:var(--muted);font-size:.8rem}.m-ai-input{background:var(--panel);border:1px solid var(--border);min-width:0;color:var(--text);border-radius:12px;flex:1;padding:.7rem .85rem;font-family:inherit;font-size:1rem}.m-ai-input:focus{border-color:var(--accent);outline:none}.m-ai-presets{flex-wrap:wrap;gap:.4rem;margin:.8rem 0 0;padding:0;list-style:none;display:flex}.m-ai-preset{background:color-mix(in srgb, var(--accent) 10%, var(--bg));border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));min-height:2.4rem;color:var(--accent);cursor:pointer;border-radius:999px;padding:.4rem .8rem;font-family:inherit;font-size:.88rem}.m-ai-preset:active{background:color-mix(in srgb, var(--accent) 20%, var(--bg))}.m-ai-waiting{color:var(--muted);align-items:center;gap:.5rem;padding:1.5rem 0;font-size:.9rem;display:flex}.m-ai-options{flex-direction:column;gap:.8rem;margin:0;padding:0;list-style:none;display:flex}.m-ai-option{border:1px solid var(--border);background:var(--panel);border-radius:14px;padding:.85rem .9rem}.m-ai-option-text{color:var(--text);font-family:var(--prose-en);margin:0;font-size:1rem;line-height:1.65}.m-ai-option-text.multiline{white-space:pre-wrap}.m-ai-option-note{color:var(--muted);margin:.5rem 0 0;font-size:.82rem;font-style:italic}.m-action-placeholder{color:var(--muted);margin:0 0 .4rem;font-size:.78rem}.m-action-placeholder code,.m-panel-body code{background:color-mix(in srgb, var(--accent) 12%, transparent);border-radius:4px;padding:.05rem .3rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}.m-action-skipped{opacity:.5}.m-action-bar{justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.75rem;display:flex}.m-action-count{color:var(--muted);font-size:.85rem}.m-ai-more{justify-content:center;display:flex}.m-ai-option-actions{justify-content:flex-end;gap:.5rem;margin-top:.75rem;display:flex}.m-ai-entry{flex-direction:column;display:flex}.m-ai-term{flex-wrap:wrap;align-items:baseline;gap:.5rem;margin:0 0 .4rem;font-size:1.3rem;font-weight:700;display:flex}.m-ai-pos,.m-ai-note{color:var(--muted);font-size:.8rem;font-style:italic;font-weight:500}.m-ai-meaning{margin:0;font-size:1rem;line-height:1.6}.m-ai-example{color:var(--muted);font-family:var(--prose-en);margin:.6rem 0 0;font-size:.95rem;font-style:italic;line-height:1.6}.m-ai-hebrew{margin:.6rem 0 0;font-size:1.05rem}.m-panel-filter{gap:.5rem;margin-bottom:.9rem;display:flex}.m-beat-progress{margin-bottom:.8rem}.m-beat-progress-label{color:var(--muted);margin-bottom:.4rem;font-size:.82rem;display:block}.m-beat-progress-label.done{color:#16a34a;font-weight:600}.m-beat-progress-bar{background:var(--border);border-radius:999px;height:6px;overflow:hidden}.m-beat-progress-fill{background:linear-gradient(90deg, var(--accent), #8b5cf6);border-radius:999px;height:100%;transition:width .25s}.m-beat-progress-fill.done{background:linear-gradient(90deg,#16a34a,#22c55e)}.m-beat-group{margin-top:1rem}.m-beat-group-name{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0 0 .5rem;font-size:.75rem;font-weight:700}.m-beat-cards{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.m-beat-card{border:1px solid var(--border);border-radius:12px;padding:.75rem .8rem .5rem}.m-beat-card.done{background:color-mix(in srgb, #16a34a 6%, var(--bg));border-color:color-mix(in srgb, #16a34a 25%, var(--border))}.m-beat-card.done .m-beat-card-text{color:var(--muted)}.m-beat-card-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 .5rem;font-size:.95rem;line-height:1.55}.m-beat-card-actions{flex-wrap:wrap;align-items:center;gap:.3rem;display:flex}.m-beat-act{min-width:2.5rem;height:2.5rem;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:none;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:1rem;display:inline-flex}.m-beat-act:active:not(:disabled){background:var(--panel)}.m-beat-act:disabled{opacity:.4;cursor:default}.m-beat-act-wide{border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));background:color-mix(in srgb, var(--accent) 10%, var(--bg));min-width:0;color:var(--accent);white-space:nowrap;text-overflow:ellipsis;flex:100%;padding:0 .6rem;font-size:.82rem;font-weight:600;overflow:hidden}.m-chapter-stat{margin:0 0 .9rem}.m-chapter-stat-words{margin-bottom:.4rem;font-size:.9rem;font-weight:600;display:block}.m-chapter-stat-goal{color:var(--muted);font-weight:500}.m-app .diff{font-size:.88rem}.m-app .diff-summary{flex-wrap:wrap;gap:.4rem}.m-app .diff-row{padding-inline:.35rem}.m-app .diff-line{overflow-wrap:anywhere}.m-audio-row{border-radius:10px;align-items:center;gap:.4rem;display:flex}.m-audio-row.current{background:color-mix(in srgb, var(--accent) 16%, transparent)}.m-audio-row-main{min-width:0;min-height:2.75rem;color:var(--text);text-align:left;font:inherit;background:0 0;border:none;flex:1;align-items:center;gap:.65rem;padding:.75rem .5rem;display:flex}.m-audio-row-main:disabled{opacity:.55}.m-audio-row-icon{text-align:center;width:1.4rem;font-size:1.1rem}.m-audio-row-text{flex-direction:column;gap:.1rem;min-width:0;display:flex}.m-audio-row-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.m-audio-row-desc{color:var(--text);opacity:.75;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.m-audio-row-sub{color:var(--muted);font-size:.78rem}.m-audio-more{width:2.75rem;height:2.75rem;color:var(--muted);background:0 0;border:none;border-radius:10px;flex:none;justify-content:center;align-items:center;font-size:1.35rem;line-height:1;display:flex}.m-audio-more:active{background:var(--input-bg)}.m-audio-mini-bar{border:1px solid var(--border);background:var(--panel);width:100%;color:var(--text);font:inherit;border-radius:999px;align-items:center;gap:.6rem;margin-top:.75rem;padding:.7rem .85rem;display:flex;position:sticky;bottom:.5rem;box-shadow:0 6px 18px #00000047}.m-audio-mini-name{text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1;min-width:0;overflow:hidden}.m-audio-mini-time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.8rem}.m-audio-player{flex-direction:column;align-items:center;gap:.5rem;display:flex}.m-audio-art{margin:.75rem 0 .25rem;font-size:3.5rem}.m-audio-now-title{text-align:center;margin:0;font-size:1.15rem}.m-audio-now-sub{color:var(--muted);text-align:center;margin:0;font-size:.85rem}.m-audio-now-desc{color:var(--muted);text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.85rem;display:-webkit-box;overflow:hidden}.m-audio-scrub{width:100%;accent-color:var(--accent);height:1.75rem;margin-top:.5rem}.m-audio-times{width:100%;color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:.75rem;display:flex}.m-audio-transport{justify-content:center;align-items:center;gap:.5rem;margin:.35rem 0;display:flex}.m-audio-btn{color:var(--text);background:0 0;border:none;border-radius:10px;padding:.7rem;font-size:1.35rem}.m-audio-btn:disabled{opacity:.3}.m-audio-play-big{background:var(--accent);color:#fff;border:none;border-radius:50%;width:4.25rem;height:4.25rem;font-size:1.5rem}.m-audio-speeds{flex-wrap:wrap;justify-content:center;gap:.3rem;margin-bottom:.5rem;display:flex}.m-audio-speed{background:var(--input-bg);border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:.4rem .7rem;font-size:.8rem}.m-audio-speed.active{background:var(--accent);border-color:var(--accent);color:#fff}.m-audio-player .m-actions{width:100%;margin-top:.5rem}.m-audio-lang{margin:0 .5rem .6rem;display:flex}.m-audio-lang .lang-opt{flex:1;padding:.5rem .75rem}.m-audio-total{color:var(--muted);border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.4rem;padding:0 .5rem .6rem;font-size:.75rem;display:flex}.m-audio-total span:last-child{font-variant-numeric:tabular-nums;color:var(--text)}.m-audio-bulk{padding:0 .5rem .55rem}.m-map{flex-direction:column;display:flex}.m-map-head{flex-direction:column;gap:.4rem;display:flex}.m-map-title{margin:0;font-size:1.2rem}.m-map-sub{color:var(--muted);margin:0;font-size:.9rem}.m-map-copy{border:1px solid var(--border);width:100%;color:var(--text);font:inherit;background:0 0;border-radius:12px;padding:.6rem .9rem;font-size:.95rem}.m-map-copy:active{background:color-mix(in srgb, var(--accent) 10%, transparent)}.m-map-read{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--border));background:color-mix(in srgb, var(--accent) 12%, transparent);width:100%;color:var(--text);font:inherit;border-radius:12px;padding:.75rem .9rem;font-size:1rem}.m-map-read:disabled{opacity:.5}.m-map-run{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.m-map-progress{color:var(--muted);align-items:center;gap:.4rem;font-size:.9rem;display:inline-flex}.m-map-chapter{border-top:1px solid var(--border);flex-direction:column;gap:.35rem;padding:.7rem 0 .5rem;display:flex}.m-map-chapter:first-of-type{border-top:none}.m-map-chapter-head{width:100%;color:var(--text);text-align:start;background:0 0;border:none;align-items:baseline;gap:.4rem;padding:0;display:flex}.m-map-chapter-name{flex-shrink:0;font-size:1.08rem;font-weight:700}.m-map-chapter-desc{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:0 auto;font-size:.9rem;overflow:hidden}.m-map-chapter-desc:before{content:"— "}.m-map-chapter-state{color:var(--muted);justify-content:space-between;align-items:center;gap:.5rem;padding-left:2.6rem;font-size:.82rem;display:flex}.m-map-chapter-state:empty{display:none}.m-map-reread{margin-left:auto}.m-map-error{color:var(--error-text)}.m-map-reread{border:1px solid var(--border);color:var(--text);font:inherit;background:0 0;border-radius:999px;padding:.3rem .7rem;font-size:.82rem}.m-map-reread:disabled{opacity:.45}.m-map-rows{flex-direction:column;gap:.1rem;margin:0;padding:0;list-style:none;display:flex}.m-map-row-main{text-align:start;width:100%;color:var(--text);font:inherit;background:0 0;border:none;border-radius:6px;align-items:baseline;padding:.45rem .5rem;font-size:.98rem;line-height:1.5;display:flex}.m-map-row-main:active{background:color-mix(in srgb, var(--accent) 10%, transparent)}.m-map-row.todo .m-map-row-main{background:#facc1538}.m-map-line{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;flex:0 0 2rem;padding-right:.6rem;font-size:.8rem}.m-map-row-text{flex:auto;min-width:0}.m-map-where{font-weight:600}.m-map-where+.m-map-what:before{content:" — "}.m-map-what{color:var(--muted)}.m-map-row.todo .m-map-what{color:var(--text)}.m-map-chapter-foot{gap:.5rem;padding-left:2.6rem;display:flex}.m-map-add,.m-map-tasks{border:1px dashed color-mix(in srgb, var(--border) 70%, transparent);color:var(--muted);font:inherit;background:0 0;border-radius:8px;flex:1 1 0;padding:.45rem .5rem;font-size:.88rem}.m-map-tasks{border-style:solid}.m-map-add:active,.m-map-tasks:active{background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--text)}.m-suggest-open{text-align:start;background:var(--panel);width:100%;color:var(--text);border:1px solid var(--border);font:inherit;border-radius:14px;margin-bottom:.7rem;padding:.7rem .85rem;display:block}.m-suggest-open:active{background:color-mix(in srgb, var(--accent) 10%, transparent)}.m-suggest-open:disabled{opacity:.5}.m-suggest-open-label{font-size:.98rem;display:block}.m-suggest-open-note{color:var(--muted);margin-top:.15rem;font-size:.8rem;line-height:1.35;display:block}.m-suggest-source.on{background:color-mix(in srgb, var(--accent) 14%, var(--panel));border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.m-suggest-asked{color:var(--muted);margin:0 0 .7rem;font-size:.85rem;line-height:1.45}.m-suggest-asked span{color:var(--text);font-style:italic}.m-suggest-loading{color:var(--muted);align-items:center;gap:.55rem;margin:.1rem 0 .7rem;font-size:.9rem;display:flex}.m-suggest-spinner{border:2px solid color-mix(in srgb, var(--accent) 25%, transparent);border-top-color:var(--accent);border-radius:50%;flex:none;width:.95rem;height:.95rem;animation:.7s linear infinite m-suggest-spin}@keyframes m-suggest-spin{to{transform:rotate(360deg)}}.m-suggest-typed{color:var(--muted)}.m-suggest-ghost{flex-direction:column;gap:.5rem;animation:1.6s ease-in-out infinite m-suggest-ghost-pulse;display:flex}.m-suggest-ghost-line{background:linear-gradient(90deg, var(--border) 0%, color-mix(in srgb, var(--border) 45%, var(--panel)) 50%, var(--border) 100%);background-size:220% 100%;border-radius:4px;height:.8rem;animation:1.6s linear infinite m-suggest-shimmer;display:block}.m-suggest-ghost-line.short{width:62%}.m-suggest-ghost-line.note{opacity:.6;width:38%;height:.65rem}@keyframes m-suggest-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}@keyframes m-suggest-ghost-pulse{0%,to{opacity:1}50%{opacity:.72}}@media (prefers-reduced-motion:reduce){.m-suggest-spinner{animation-duration:2.4s}.m-suggest-ghost,.m-suggest-ghost-line{animation:none}}.m-guests-screen{padding:0 .75rem calc(env(safe-area-inset-bottom) + 1.5rem)}.m-app .guests-toolbar{padding-top:.75rem}.m-app .guest-link{min-height:2.25rem}.m-app .guest-more{min-width:2.75rem;min-height:2.25rem}.m-app .guests-add-btn,.m-app .btn-add-user{min-height:2.75rem}.m-app .guests-filter,.m-app .users-edit input,.m-app .users-edit select,.m-app .users-add input,.m-app .users-add select{width:100%;min-height:2.5rem;font-size:1rem}.m-app .guests-tab,.m-app .guests-refresh{min-height:2.5rem}.m-app .feedback-note{max-width:none}
