@font-face{font-family:Athelas;src:url(../../fonts/Athelas-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Athelas;src:url(../../fonts/Athelas-Italic.ttf) format("truetype");font-weight:400;font-style:italic}@font-face{font-family:Athelas;src:url(../../fonts/Athelas-Bold.ttf) format("truetype");font-weight:700;font-style:normal}@font-face{font-family:Athelas;src:url(../../fonts/Athelas-BoldItalic.ttf) format("truetype");font-weight:700;font-style:italic}:root{--color-bg-light: #f3f0e8;--color-bg-dark: #14171b;--color-bg: var(--color-bg-light);--theme-color-light: #f3f0e8;--theme-color-dark: #14171b;--color-surface: #ffffff;--color-panel-soft: #f8f5ef;--color-ink: #1f1d1a;--color-muted: #6f675c;--color-line: #d6cec2;--color-accent: #b44b2d;--color-danger: #c0392b;--color-danger-soft: #cc5b47;--color-warning: #b07a2f;--color-success: #1a9e5c;--color-success-soft: #2e9d5b;--color-error-bg: #ffe6e6;--color-error-ink: #8a1f1f;--success-bg: rgba(31, 111, 42, .1);--success-bg-strong: rgba(31, 111, 42, .24);--danger-bg: rgba(178, 42, 42, .09);--danger-bg-mid: rgba(178, 42, 42, .15);--danger-bg-strong: rgba(178, 42, 42, .22);--overlay-faint: rgba(0, 0, 0, .02);--overlay-soft: rgba(0, 0, 0, .03);--overlay-line: rgba(0, 0, 0, .08);--overlay-strong: rgba(0, 0, 0, .12);--scrim: rgba(20, 23, 27, .45);--font-ui: "-apple-system-body", "ui-sans-serif", "-apple-system", "system-ui", sans-serif;--font-editor: "Athelas", "Georgia", "Times New Roman", serif;--text-3xs: .625rem;--text-2xs: .5rem;--text-sm: .75rem;--text-base: 1rem;--text-lg: 2rem;--text-xl: 3rem;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-xs: .25rem;--radius-sm: .5rem;--radius-md: 1rem;--radius-lg: 2rem;--radius-pill: 999px;--leading-none: 1;--leading-tight: 1.25;--leading-normal: 1.5;--shadow-panel: 0 .5rem 2rem rgba(31, 29, 26, .08);--shadow-menu: 0 .5rem 1rem rgba(31, 29, 26, .12);--transition: .2s ease;--z-mobile-bar: 60;--z-mobile-backdrop: 65;--z-panel: 70;--z-backdrop: 100;--z-backdrop-top: 110;--z-sticky: 200;--z-dialog: 1000;--z-tooltip: 9999;--app-gap: var(--space-4);--panel-padding: var(--space-8);--binder-padding: var(--space-8);--text-padding: var(--space-24) var(--space-24) var(--space-0);--muted-1: .75}[data-theme=dark]{--color-bg: var(--color-bg-dark);--color-surface: #1b2026;--color-ink: #adaeb0;--color-muted: #a6b0bd;--color-line: #2b333d;--color-accent: #7aa7ff;--color-panel-soft: #20262e;--color-danger: #de7064;--color-danger-soft: #e08574;--color-warning: #d6b15e;--color-success: #45c489;--color-success-soft: #54c794;--color-error-bg: #2b1a1c;--color-error-ink: #f2b8c0;--success-bg: rgba(69, 196, 137, .15);--success-bg-strong: rgba(69, 196, 137, .3);--danger-bg: rgba(222, 112, 100, .15);--danger-bg-mid: rgba(222, 112, 100, .22);--danger-bg-strong: rgba(222, 112, 100, .32);--overlay-faint: rgba(255, 255, 255, .03);--overlay-soft: rgba(255, 255, 255, .04);--overlay-line: rgba(255, 255, 255, .08);--overlay-strong: rgba(255, 255, 255, .14);--shadow-panel: 0 .5rem 2rem rgba(0, 0, 0, .35);--shadow-menu: 0 .5rem 1rem rgba(0, 0, 0, .4)}*{box-sizing:border-box;scrollbar-width:none;-ms-overflow-style:none}[hidden]{display:none!important}body{margin:0;background:var(--color-bg);color:var(--color-ink);font-family:var(--font-ui);height:100vh;overflow:hidden}button{border:none;border-radius:var(--radius-sm);cursor:pointer}button,input,select,textarea{font-family:inherit}a{color:var(--color-accent)}.app{grid-template-columns:1fr 3fr 1fr;height:100vh;gap:var(--app-gap);padding:var(--app-gap)}.app.hide-binder{grid-template-columns:1fr 20rem}.app.hide-meta{grid-template-columns:20rem 1fr}.app.hide-binder.hide-meta{grid-template-columns:1fr}.app.hide-meta.expand-binder{grid-template-columns:40rem 1fr}.app.hide-binder.expand-meta{grid-template-columns:1fr 40rem}.panel{background:var(--color-surface);border-radius:var(--radius-md);padding:var(--panel-padding);box-shadow:var(--shadow-panel)}.text-panel{padding:var(--text-padding);min-height:0;position:relative}.revision-session-bar{position:fixed;top:var(--space-2);left:50%;width:min(56rem,calc(100vw - 2rem));z-index:var(--z-sticky);justify-content:space-between;border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-panel-soft);padding:var(--space-2);margin-bottom:0;transform:translate(-50%,-130%);opacity:0;pointer-events:none;transition:transform .2s ease,opacity .2s ease}.revision-session-bar.is-open{transform:translate(-50%);opacity:1;pointer-events:auto}.revision-session-text{font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.revision-session-icon{background:var(--color-surface);color:var(--color-ink);height:2rem;min-width:2rem;padding:0 var(--space-2);cursor:pointer}.revision-session-icon:disabled{opacity:.4;cursor:default}.eyebrow{font-family:var(--font-ui);font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted)}.heading{font-size:clamp(1.35rem,2.4vw,1.75rem);line-height:var(--leading-none);margin:var(--space-1) 0 0;font-family:var(--font-editor);font-weight:400;letter-spacing:-.03em}.text-meta{font-size:var(--text-sm);color:var(--color-muted)}.text-empty{color:var(--color-muted);font-style:italic}.icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:0;background:none;color:var(--color-muted);cursor:pointer}.btn{font:inherit;font-size:var(--text-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-sm);cursor:pointer}.pill{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);font-size:var(--text-sm);letter-spacing:.03em;text-transform:uppercase;cursor:pointer}.soft-btn{border-radius:var(--radius-sm);background:var(--color-panel-soft);color:var(--color-ink);cursor:pointer;padding:var(--space-2) var(--space-4);font:inherit;font-size:var(--text-sm);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.solid-btn{font:inherit;font-size:var(--text-sm);font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);background:var(--color-ink);color:var(--color-surface);cursor:pointer}.soft-btn:hover:not(:disabled),.solid-btn:hover:not(:disabled){opacity:.9}.solid-btn:disabled{opacity:.55;cursor:default}.btn-square{flex:0 0 auto;width:3rem;height:3rem;padding:0}.bg-panel{background:var(--color-panel-soft);color:var(--color-ink)}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.w-full{width:100%}.flex-col{flex-direction:column}.wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.binder{min-height:0;opacity:var(--muted-1);padding:var(--binder-padding)}.app.hide-binder .binder,.app.hide-meta .meta-panel{display:none}.meta-panel{opacity:var(--muted-1);min-height:0;grid-template-rows:minmax(0,1fr) auto}.meta-content{gap:0;overflow:hidden;min-height:0}#scene-meta{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.side-panel{display:none;min-height:0;overflow:hidden;flex-direction:column;gap:var(--space-2);flex:1 1 auto}.meta-panel.side-panel-open .side-panel,.binder.side-panel-open .side-panel{display:flex}.binder.side-panel-open #scene-list,.meta-panel.side-panel-open .meta-content{display:none}.side-panel-head{justify-content:space-between;padding-bottom:var(--space-2);border-bottom:1px solid var(--color-line)}.side-panel-action:hover,.side-panel-action[data-copied="1"]{color:var(--color-ink)}button.side-panel-action.side-panel-copy{background:no-repeat}.side-panel-close{background:none;cursor:pointer}.side-panel-body{overflow:auto;min-height:0;padding-right:var(--space-1);line-height:var(--leading-normal)}.side-panel-body h2{font-size:var(--text-base);margin-block:var(--space-2)}.side-panel-body h3{font-size:var(--text-base)}.side-panel-body ul{padding-left:var(--space-5);display:grid;gap:var(--space-1)}.side-panel-body code{font-family:SF Mono,Menlo,Monaco,monospace;font-size:.85em;background:var(--overlay-line);padding:var(--space-1);border-radius:var(--radius-xs)}.binder h2{font-size:var(--text-base);margin:0;text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted)}.binder-footer{justify-content:space-between;padding-top:var(--space-6);border-top:1px solid var(--color-line);margin-top:auto}.binder-footer-group--start{flex:1 1 auto;min-width:0}.binder-footer-group--end{flex:0 0 auto;margin-left:auto}.binder-search{flex:1 1 auto;max-width:0;max-height:0;overflow:hidden;opacity:0;pointer-events:none;transition:max-width var(--transition),max-height var(--transition),opacity var(--transition)}.binder-footer.search-open .binder-search{max-width:100%;max-height:10rem;opacity:1;pointer-events:auto}.binder-footer.search-open .binder-footer-group--end{display:none}.binder-search input{width:100%;height:3rem;border-radius:var(--radius-sm);border:none;outline:none;background:var(--color-panel-soft);color:var(--color-ink);font-size:var(--text-base);padding:0 var(--space-4)}.binder-replace input{flex:1 1 auto;min-width:0}#analysis-toggle[aria-pressed=true]{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-bg)}.chapter-list{align-content:start;overflow:auto;counter-reset:chapter;flex:1 1 auto;min-height:0}.title-card{padding-bottom:var(--space-6);border-bottom:1px solid var(--color-line)}.title-main{font-family:var(--font-editor);font-size:var(--text-lg);font-weight:700;letter-spacing:-2px;justify-content:flex-start;width:100%}.title-main-text{display:inline-block;line-height:var(--leading-none);outline:none}.title-main-chevron{flex:0 0 auto;width:1.4rem;height:1.4rem;padding:0;background:none;color:var(--color-muted);cursor:pointer;transition:color .16s ease,transform .22s ease}.title-main-chevron:hover{color:var(--color-ink);transform:translateY(1px)}.title-sub{letter-spacing:.66rem;text-transform:lowercase;color:var(--color-muted);outline:none}.title-tagline{font-size:var(--space-5);color:var(--color-muted);line-height:var(--leading-normal);outline:none}.title-main-text:focus,.title-sub:focus,.title-tagline:focus{color:var(--color-ink)}.chapter-header{position:relative;justify-content:space-between}.chapter-left{cursor:pointer}.chapter-left:hover{color:var(--color-accent)}.chapter-toggle,.chapter.collapsed .scene-list{display:none}.chapter-order-handle{position:relative;flex:0 0 auto;cursor:pointer;user-select:none}.chapter-chevron{display:none;position:absolute;inset:0;align-items:center;justify-content:flex-start;pointer-events:none}.chapter-chevron svg{display:block}.chapter:not(.collapsed) .chapter-chevron svg{transform:rotate(180deg)}@media (hover: hover) and (pointer: fine){.chapter-header:hover .chapter-order-num{opacity:0}.chapter-header:hover .chapter-chevron{display:inline-flex}}.chapter-title{width:100%}.chapter-title-text{flex:1 1 auto;min-width:0;overflow-wrap:anywhere;cursor:grab;user-select:none}.chapter-title-text:active{cursor:grabbing}.chapter-title-percent{flex:0 0 auto;white-space:nowrap;opacity:.7}.scene-list{list-style:none;padding:0;margin:var(--space-8) 0;counter-reset:scene}.scene-item{position:relative;display:block}.scene-item.dragging{opacity:.6}.scene-block{position:relative}.scene-block:not(:last-child):after{content:"\2605\2605\2605";display:block;text-align:center;margin:var(--space-8) 0;color:var(--color-muted);letter-spacing:.35rem;user-select:none;pointer-events:none;font-size:var(--text-sm)}.scene-block:last-child{padding-bottom:0}.scene-block:last-child:empty{height:100vh}.scene-block:last-child:has(p:empty){height:100dvh}.scene-list button{position:relative;z-index:1;width:100%;text-align:left;background:transparent;color:var(--color-ink);font-size:var(--text-base);cursor:pointer;padding:0;display:flex;align-items:center;gap:var(--space-2)}.scene-order-handle{display:inline-block;text-align:right;width:1.5rem;padding-right:var(--space-4);flex:0 0 auto;cursor:grab;user-select:none}.scene-order-handle:active{cursor:grabbing}.scene-list button.active{text-decoration:underline}.scene-list button:hover{color:var(--color-accent)}.scene-title-text{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}.scene-issues-badge{display:inline-grid;min-width:1rem;border-radius:var(--radius-sm);background:var(--color-danger-soft);color:#fff;font-size:var(--text-2xs);font-weight:700;line-height:var(--leading-none);place-items:center;padding:0 var(--space-1)}.scene-title-percent{flex:0 0 auto;white-space:nowrap;opacity:.7}.contextual-menu{position:fixed;display:none;flex-direction:column;gap:var(--space-1);background:var(--color-surface);border:0;min-width:8.75rem;box-shadow:var(--shadow-menu);z-index:var(--z-dialog);pointer-events:auto;border-radius:var(--radius-lg)}.contextual-menu.open{display:flex}.contextual-menu button{background:transparent;color:var(--color-ink);padding:var(--space-2);border-radius:0;text-align:center;cursor:pointer}.contextual-menu button:hover{background:var(--color-panel-soft)}.contextual-menu button:disabled{opacity:.8;cursor:default}.contextual-menu-spinner{width:.8rem;height:.8rem;border-radius:var(--radius-pill);border:2px solid var(--color-line);border-top-color:transparent;display:inline-block;opacity:0}.contextual-menu-inline.is-loading .contextual-menu-spinner{opacity:1;animation:meta-report-spin .7s linear infinite}#scene-text .ai-inline-pending{opacity:.45;filter:grayscale(.35);transition:opacity .18s ease,filter .18s ease}.contextual-menu button:first-child:hover{border-top-left-radius:2rem;border-top-right-radius:2rem}.contextual-menu button:last-child:hover{border-bottom-left-radius:2rem;border-bottom-right-radius:2rem}.scene-list button:focus{outline:none}.meta-status{display:none;margin-top:var(--space-4);color:var(--color-muted)}.meta-status.error{background:var(--color-error-bg);color:var(--color-error-ink);padding:var(--space-4);border-radius:var(--radius-sm)}.meta-tabs-layout{min-height:0;flex:1 1 auto}.meta-tab-panels{min-height:0;flex:1 1 auto;overflow:auto}.meta-tab-panel{display:none}.meta-tab-panel.is-active{display:block}.meta-tabs{border-top:0;border-bottom:1px solid var(--color-line);padding-top:0;padding-bottom:0}.meta-tab{border:1px solid var(--color-line);border-radius:var(--radius-sm) var(--radius-sm) 0 0;color:var(--color-muted);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.06em;padding:var(--space-2) var(--space-1);margin-bottom:-1px;flex:1 1 auto;min-width:0}.meta-tab-badge{display:inline-grid;min-width:1rem;border-radius:var(--radius-sm);background:var(--color-danger-soft);color:#fff;font-size:var(--text-2xs);font-weight:700;line-height:var(--leading-none);place-items:center;padding:0 var(--space-1);margin-left:var(--space-1)}.meta-tab.is-active{background:transparent;color:var(--color-ink);border-bottom-color:var(--color-surface);margin-bottom:-1px}.meta-problems-detail code{word-break:break-word}.meta-problems-group h4{margin:0;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);font-weight:400}.meta-problems-list{margin:0;padding-left:var(--space-4)}.meta-problems-item-title{font-weight:600}.meta-problems-item.severity-high .meta-problems-item-title{color:var(--color-danger-soft)}.meta-problems-item.severity-medium .meta-problems-item-title{color:var(--color-warning)}.meta-problems-notes{border-top:1px solid var(--color-line);padding-top:var(--space-2)}.meta-problems-notes h4{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);font-weight:400}.meta-problems-notes ul{margin:var(--space-1) 0 0;padding-left:var(--space-4)}.meta-problems-empty{color:var(--color-muted)}.meta-report-title{margin:0;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);font-weight:400}.meta-report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.meta-report-card{padding:var(--space-2);grid-template-columns:auto 1fr;gap:var(--space-1) var(--space-2);text-align:left}.meta-report-circle{width:2rem;height:2rem;border-radius:var(--radius-pill);border:2px solid var(--color-line);place-items:center;font-size:var(--text-sm);font-weight:700;color:var(--color-accent);background:var(--color-surface);position:relative}.meta-report-circle.is-loading{color:transparent}.meta-report-circle.is-loading:after{content:"";position:absolute;inset:-2px;border-radius:var(--radius-pill);border:2px solid transparent;border-top-color:var(--color-accent);border-right-color:var(--color-accent);animation:meta-report-spin .7s linear infinite}@keyframes meta-report-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.meta-report-card-title{font-size:var(--text-sm);line-height:var(--leading-tight)}.meta-report-prompt-input{border:none;padding:var(--space-3);font:inherit;line-height:var(--leading-normal)}.meta-report-prompt-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-accent) 18%,transparent)}.meta-report-prompt-submit{background:var(--color-surface);padding:var(--space-2);grid-template-columns:auto 1fr;gap:var(--space-1) var(--space-2);text-align:left;cursor:pointer;color:var(--color-ink)}.meta-report-prompt-submit:disabled{cursor:default;opacity:.9}.meta-report-prompt-submit-label{font-size:var(--text-sm);line-height:var(--leading-tight)}.meta-report-prompt-error{font-size:var(--text-sm);color:var(--color-danger-soft)}.database-dictionary-entry{margin-bottom:var(--space-2)}.database-dictionary-headword{font-family:var(--font-serif, Georgia, serif);font-size:var(--text-base);line-height:var(--leading-none);color:var(--color-ink)}.database-dictionary-translation{font-family:var(--font-serif, Georgia, serif);font-size:var(--text-base);line-height:var(--leading-tight);color:var(--color-ink)}.database-dictionary-language,.database-dictionary-source{font-size:var(--text-sm);color:var(--color-muted)}.database-dictionary-context{margin-top:var(--space-3)}.database-dictionary-context-block{margin:0;padding:0!important;background:transparent;border:0;border-radius:0}.database-dictionary-context-block.is-active{background:transparent;border:0}.database-dictionary-context-block p{margin:0}.meta-row{align-items:baseline}.meta-score-circle{width:1.15rem;height:1.15rem;border-radius:var(--radius-pill);border:1px solid var(--color-line);display:inline-grid;place-items:center;font-size:var(--text-2xs);font-weight:700;color:var(--color-accent);background:var(--color-surface);position:relative;cursor:pointer;padding:0}.meta-score-circle.is-loading{color:transparent}.meta-score-circle.is-loading:after{content:"";position:absolute;inset:-1px;border-radius:var(--radius-pill);border:1px solid transparent;border-top-color:var(--color-accent);border-right-color:var(--color-accent);animation:meta-report-spin .7s linear infinite}.meta-score-circle.is-error{border-color:var(--color-danger-soft);color:var(--color-danger-soft)}.meta-refresh-link{background:transparent;padding:0;cursor:pointer}.meta-refresh-link:hover{color:var(--color-accent)}.meta-score-title{background:transparent;cursor:pointer;padding:0}.meta-score-title:hover{color:var(--color-accent)}.meta-inline-spinner{width:.72rem;height:.72rem;border-radius:var(--radius-pill);border:1px solid transparent;border-top-color:var(--color-accent);border-right-color:var(--color-accent);opacity:0;pointer-events:none}.meta-inline-spinner.is-loading{opacity:1;animation:meta-report-spin .7s linear infinite}.meta-refresh-badge{min-width:2.5rem;display:inline-block;font-size:var(--text-2xs);text-transform:none;letter-spacing:0}.meta-refresh-badge.is-loading{width:.72rem;height:.72rem;min-width:.72rem;border-radius:var(--radius-pill);border:1px solid transparent;border-top-color:var(--color-accent);border-right-color:var(--color-accent);animation:meta-report-spin .7s linear infinite}.meta-refresh-badge.is-error{color:var(--color-danger-soft)}.meta-score-comment-action{background:transparent;color:inherit;font:inherit;padding:0;margin:0;text-align:left;cursor:pointer}.meta-score-comment-action:hover{color:var(--color-accent)}.meta-score-comment-action:disabled{cursor:default}[data-theme=dark] .meta-score-comment{--comment-surface: #1f2a38;--comment-line: #31445d;--comment-icon: #8ea3bc;--comment-name: #9eb2c9;--comment-text: #d7e2f1}[data-theme=dark] .meta-score-comment-body{box-shadow:0 1px #00000040}.meta-time-day{margin-left:var(--space-2);color:var(--color-accent);font-weight:600}.dictionary-dialog{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface);padding:0;width:min(32rem,92vw)}.dictionary-dialog::backdrop{background:#1f1d1a59}.dictionary-form{padding:var(--space-4)}.dictionary-term{font-weight:600}.dictionary-language,.dictionary-text{width:100%;border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-panel-soft);color:var(--color-ink);font-size:var(--text-base);padding:var(--space-2)}.dictionary-language{min-height:2.75rem}.dictionary-text{min-height:8rem;resize:vertical}.dictionary-close,.dictionary-save{background:var(--color-panel-soft);color:var(--color-ink);padding:var(--space-2) var(--space-4);cursor:pointer}.meta-edit,.meta-value{line-height:var(--leading-normal)}.meta-edit:empty:before{content:"\2014";color:var(--color-muted)}.meta-edit:focus{outline:none}.meta-select{width:100%;font-size:var(--text-base);color:var(--color-ink);background:var(--color-panel-soft);border:1px solid var(--color-line);border-radius:var(--radius-sm);padding:var(--space-1)}.meta-select:focus{outline:1px solid var(--color-line)}.tag-autocomplete{width:100%}.tag-autocomplete-tags{align-items:center;padding:var(--space-1);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-panel-soft)}.tag-autocomplete-tags:focus-within{outline:1px solid var(--color-line)}.tag-autocomplete-chip{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-pill);padding:var(--space-1) var(--space-2);font-size:var(--text-sm)}.tag-autocomplete-chip-remove{background:transparent;color:var(--color-muted);cursor:pointer;padding:0;line-height:var(--leading-none)}.tag-autocomplete-chip-remove:hover,.tag-autocomplete-chip-remove:focus-visible{color:var(--color-ink)}.tag-autocomplete-input{min-width:10rem;flex:1 1 10rem;border:0;background:transparent;color:var(--color-ink);font-size:var(--text-sm);padding:var(--space-1)}.tag-autocomplete-input:focus{outline:none}.meta-dramaturgy .research-chapter-summary{margin:0;padding:0;border:0;font-size:var(--text-sm)}.meta-dramaturgy .research-chapter-summary-row,.meta-dramaturgy .research-chapter-summary-detail{grid-template-columns:minmax(6rem,8rem) 1fr}.meta-dramaturgy .research-chapter-summary-label{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.06em}.meta-emotion,.meta-state,.meta-similarity{display:grid;gap:var(--space-1)}#scene-text{min-height:60vh;flex:1 1 auto;overflow:auto;font-family:var(--font-editor);font-size:var(--space-7);line-height:var(--space-10);display:grid;gap:0;width:100%;max-width:60rem;margin:0 auto;padding-bottom:60vh}#scene-text:focus{outline:none}#scene-text [data-dictionary-slot="1"].dictionary-slot-active{text-decoration:underline;text-underline-offset:.14em;text-decoration-thickness:.08em}#scene-text p{text-indent:var(--space-8);margin:0}#scene-text p:empty{min-height:2.5rem}#scene-text .markdown-blockquote,#scene-text blockquote{margin:var(--space-4) 0;padding:0 var(--space-4);border-left:3px solid var(--color-accent);color:color-mix(in srgb,var(--color-ink) 72%,var(--color-muted) 28%)}#scene-text .markdown-blockquote p,#scene-text blockquote p{margin:0;text-indent:0}#scene-text .markdown-link{color:var(--color-accent);text-decoration:underline;text-underline-offset:.1em}.analysis-title{font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:var(--color-muted)}.analysis-item{grid-template-columns:4fr 8fr}.meta-panel .analysis-item{padding-left:var(--space-6)}.analysis-label{font-size:var(--text-sm);text-transform:none;letter-spacing:.02em;color:var(--color-muted)}.analysis-value{font-size:var(--text-base);line-height:var(--leading-normal)}.page{position:relative;margin:0 auto var(--space-16);padding:var(--space-12) var(--space-12) var(--space-16);box-sizing:border-box}.book-title-card,.chapter-title-card{text-align:center;margin:var(--space-16) auto var(--space-16);display:grid;gap:var(--space-3);max-width:52rem;padding:0 var(--space-8);user-select:none}.book-title-card{margin-top:var(--space-20);margin-bottom:var(--space-20)}.book-title-main{font-size:var(--text-xl);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.book-title-sub{font-family:var(--font-ui);font-size:var(--text-base);text-transform:uppercase;letter-spacing:.35em;color:var(--color-muted)}.chapter-title-line{font-family:var(--font-ui);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.35em;color:var(--color-muted)}.chapter-title-name{font-size:var(--text-lg);font-weight:600;line-height:3rem}.footnotes p{font-size:var(--text-base);text-indent:0;margin:var(--space-2) 0;color:var(--color-muted)}.word-count{padding:var(--space-4) 0;text-align:center;opacity:.5;cursor:pointer;width:100%;max-width:42rem;margin:0 auto}.page-count{position:absolute;top:var(--space-12);left:50%;transform:translate(-50%,-50%);text-align:center;opacity:.6;z-index:4;pointer-events:none}.status{font-size:var(--text-base);color:var(--color-muted);margin-right:auto}.meta-footer{padding-top:var(--space-6);border-top:1px solid var(--color-line);margin-top:auto}.meta-footer-group--end{margin-left:auto}.panel-icon{position:relative}.panel-icon[aria-pressed=true]{background:var(--color-accent);color:var(--color-bg);fill:var(--color-bg)}.panel-icon-badge{position:absolute;top:-4px;right:-4px;min-width:1.05rem;height:1.05rem;padding:0 var(--space-1);background:var(--badge-bg, var(--color-danger-soft));color:#fff;font-size:var(--text-sm);font-weight:700;line-height:var(--leading-none);border-radius:999px;box-shadow:0 0 0 2px var(--color-bg);pointer-events:none;user-select:none}[data-theme=dark] .panel-icon-badge{--badge-bg: #e06b56}.user-toggle{padding:0;border-radius:50%}.user-toggle[aria-pressed=true]{background:var(--color-accent);color:var(--color-bg)}.user-toggle-avatar{flex:0 0 auto;width:100%;height:100%;border-radius:50%;background-color:var(--color-bg);background-size:cover;background-position:center;display:inline-grid;place-items:center;font-size:var(--text-sm);font-weight:600;letter-spacing:.04em}.user-toggle-avatar.has-image{color:transparent}.user-toggle[aria-pressed=true] .user-toggle-avatar:not(.has-image){background-color:#ffffff2e}.theme-toggle{outline:none;transition:border-color var(--transition),background var(--transition),opacity var(--transition);min-width:7.5rem;padding:var(--space-3)}.theme-toggle-track{width:2.5rem;height:1.4rem;border-radius:var(--radius-pill);background:var(--color-panel-soft);border:.25rem solid var(--color-line);position:relative}.theme-toggle-thumb{width:1rem;height:1rem;border-radius:var(--radius-pill);background:var(--color-accent);position:absolute;top:50%;left:var(--space-1);transform:translateY(-50%);transition:transform var(--transition)}.theme-toggle[aria-pressed=true] .theme-toggle-thumb{transform:translate(1rem,-50%)}.theme-toggle[aria-pressed=true]{background:var(--color-panel-soft)}.theme-toggle-label{font-size:var(--text-base);color:var(--color-muted)}.meta-plot-head h3{margin:0;font-size:var(--text-base);text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted)}.meta-plot-toolbar{align-items:center}.meta-plot-filter{justify-items:start}.meta-plot-filter-select{border:1px solid var(--color-line);background:var(--color-panel-soft);color:var(--color-ink);border:none;border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);font:inherit;min-width:13rem}.meta-plot-toggle{padding:var(--space-1) var(--space-2);font:inherit;font-size:var(--text-sm)}.meta-plot-toggle.is-active{background:var(--color-accent);color:var(--color-bg)}.meta-plot-graph{position:relative;overflow-x:auto;overflow-y:hidden;border:none;border-radius:var(--radius-md);background:var(--color-panel-soft);padding:var(--space-2)}.meta-plot-graph::-webkit-scrollbar{display:none}.meta-plot-canvas{position:relative;min-height:354px}.meta-plot-empty{margin:0}.meta-plot-axis{stroke:var(--color-line);stroke-width:1}.meta-plot-grid{stroke:color-mix(in srgb,var(--color-line) 60%,transparent);stroke-width:1}.meta-plot-grid-label{fill:var(--color-muted);font-size:var(--text-3xs)}.meta-plot-score-line{fill:none;stroke:var(--plot-score-color);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.meta-plot-score circle{fill:var(--plot-score-color);stroke:var(--color-bg);stroke-width:.8}.meta-plot-score-dot{cursor:help}.meta-plot-tooltip{position:fixed;z-index:var(--z-tooltip);display:none;width:min(22rem,92vw);max-width:min(22rem,92vw);pointer-events:none}.meta-plot-tooltip.is-visible{display:block}.meta-plot-tooltip-card{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:0 10px 24px #0c111a29;padding:var(--space-2)}.meta-plot-tooltip-metric{font-size:var(--text-sm);font-weight:700;color:var(--color-ink)}.meta-plot-tooltip-shift{font-size:var(--text-sm);font-weight:600;color:var(--color-ink)}.meta-plot-tooltip-reason{font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--color-ink)}.meta-plot-moment-line{stroke:color-mix(in srgb,var(--color-accent) 48%,var(--color-line) 52%);stroke-width:1}.meta-plot-toggle-dot{width:10px;height:10px;border-radius:999px;display:inline-block;margin-right:6px;box-shadow:none}.meta-plot-chapter rect{fill:color-mix(in srgb,var(--color-panel-soft) 70%,var(--color-line) 30%);stroke:var(--color-line);stroke-width:1}.meta-plot-chapter text{fill:var(--color-muted);font-size:var(--text-3xs)}.meta-plot-chapter-sep{stroke:var(--color-line);stroke-width:1}.meta-plot-moment-label{max-width:3rem;width:3rem;height:48px;min-height:48px;display:flex;align-items:center;justify-content:center;text-align:center;white-space:normal;word-break:break-word;overflow-wrap:anywhere;line-height:var(--leading-none);font-size:var(--text-3xs);color:var(--color-ink);font-weight:700;padding:1px;border-radius:var(--radius-xs);background:color-mix(in srgb,var(--color-surface) 88%,var(--color-panel-soft) 12%);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-line) 78%,var(--color-surface) 22%)}.meta-plot-scene{position:absolute;width:18px;height:18px;border-radius:var(--radius-pill);background:var(--color-surface);cursor:pointer}.meta-plot-scene.is-active{background:var(--color-accent)}#scene-text.revision-mode{caret-color:transparent}#scene-text.revision-mode .revision-diff{padding:0;overflow:visible;font:inherit;max-height:none;text-indent:var(--space-8)}.revision-paragraph{position:relative}.revision-paragraph p{margin:0 0 var(--space-3)}.revision-diff-line{margin:0}.revision-line{-webkit-box-decoration-break:clone;box-decoration-break:clone}.revision-line--del{background:var(--danger-bg)}.revision-line--add{background:var(--success-bg)}.revision-del{background:var(--danger-bg-strong)}.revision-add{background:var(--success-bg-strong)}.revision-discard-btn{position:absolute;top:var(--space-1);right:0;width:1.35rem;height:1.35rem;border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-muted);cursor:pointer;opacity:0;pointer-events:none;font-size:var(--text-base);line-height:var(--leading-none);padding:0}.revision-stage-btn{position:absolute;top:var(--space-1);right:var(--space-7);width:1.35rem;height:1.35rem;border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-muted);cursor:pointer;opacity:0;pointer-events:none;line-height:var(--leading-none);padding:0}.revision-paragraph.is-change:hover .revision-discard-btn,.revision-paragraph.is-change:focus-within .revision-discard-btn,.revision-paragraph.is-change:hover .revision-stage-btn,.revision-paragraph.is-change:focus-within .revision-stage-btn{opacity:1;pointer-events:auto}.revision-discard-btn:hover,.revision-stage-btn:hover{color:var(--color-ink)}.projects-dialog-backdrop{position:fixed;inset:0;z-index:var(--z-backdrop);background:#14171b8c;place-items:center;padding:clamp(var(--space-4),4vw,var(--space-12));overflow-y:auto;animation:projects-dialog-backdrop-in .22s ease-out both}@keyframes projects-dialog-backdrop-in{0%{opacity:0}to{opacity:1}}.projects-dialog{width:100%;max-width:560px;background:var(--color-surface, #fdfaf7);color:var(--color-ink, var(--color-bg-dark));border:1px solid var(--color-line, var(--overlay-line));border-radius:var(--radius-md, 12px);box-shadow:0 30px 80px #0000002e;animation:projects-dialog-in .28s cubic-bezier(.32,0,.4,1) both}@keyframes projects-dialog-in{0%{opacity:0;transform:translateY(.6rem) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.projects-dialog-body{padding:clamp(var(--space-8),3vw,var(--space-8))}.projects-dialog-loading{text-align:center;padding:var(--space-8) 0}.projects-dialog-title{margin:0;font-family:var(--font-serif, var(--font-ui));font-weight:600;font-size:clamp(1.4rem,2.2vw,1.7rem);letter-spacing:-.01em;line-height:var(--leading-tight)}.projects-dialog-empty-copy{margin:0;font-family:var(--font-serif, var(--font-ui));font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-muted)}.projects-dialog-list{list-style:none;margin:0;padding:0}.project-row{grid-template-columns:1fr auto;gap:var(--space-2) var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-panel-soft, transparent);transition:border-color .16s ease}.project-row.is-active{border-color:var(--color-ink)}.project-row-info{min-width:0}.project-row-name{font-family:var(--font-serif, var(--font-ui));font-size:var(--text-base);font-weight:600;letter-spacing:-.005em;color:var(--color-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;outline:none}.project-row-name:focus,.book-row-name:focus{color:var(--color-ink)}.project-row-meta{margin-top:var(--space-1);letter-spacing:.04em}.project-row-actions{flex:0 0 auto}.project-row-enter,.project-row-delete{font:inherit;font-size:var(--text-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:var(--space-2) var(--space-4);cursor:pointer}.project-row-enter{background:var(--color-ink);color:var(--color-bg, var(--color-bg-light))}.project-row-enter:hover{opacity:.92}.project-row-delete{background:transparent;color:var(--color-muted)}.project-row-delete:hover{color:var(--color-danger)}.project-row.is-confirming{grid-template-columns:1fr;gap:var(--space-4)}.project-row.is-confirming .project-row-actions{display:none}.project-row-confirm{grid-column:1 / -1;padding-top:var(--space-2);border-top:1px solid var(--color-line)}.project-row-confirm-title{font-size:var(--text-sm);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-danger)}.project-row-confirm-text{margin:0;line-height:var(--leading-normal)}.project-row-confirm-name{font-family:var(--font-serif, var(--font-ui));font-size:var(--text-base);color:var(--color-ink)}.project-row-confirm-input{font:inherit;font-size:var(--text-base);padding:var(--space-2) var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-bg, #fff);color:inherit}.project-row-confirm-input:focus{outline:none;border-color:var(--color-danger)}.project-row-confirm-actions{justify-content:flex-end}.project-row-confirm-cancel,.project-row-confirm-submit{font:inherit;font-size:var(--text-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:var(--space-2) var(--space-4);cursor:pointer}.project-row-confirm-cancel{background:transparent;color:var(--color-muted)}.project-row-confirm-cancel:hover{color:var(--color-ink)}.project-row-confirm-submit{background:var(--color-danger);color:#fff}.project-row-confirm-submit:hover:not(:disabled){opacity:.92}.project-row-confirm-submit:disabled{opacity:.4;cursor:not-allowed}.projects-dialog-create{padding-top:var(--space-4);border-top:1px solid var(--color-line)}.projects-dialog-create-input{flex:1 1 auto;font:inherit;font-size:var(--text-base);padding:var(--space-2) var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-bg, #fff);color:inherit;min-width:0}.projects-dialog-create-input:focus{outline:none;border-color:var(--color-ink)}.projects-dialog-create-button{flex:0 0 auto;padding:var(--space-2) var(--space-4);background:var(--color-ink);color:var(--color-bg, var(--color-bg-light))}.projects-dialog-create-button:hover:not(:disabled){opacity:.92}.projects-dialog-create-button:disabled{opacity:.5;cursor:progress}.projects-dialog-error{font-size:var(--text-sm);color:var(--color-danger)}.book-list{grid-column:1 / -1;list-style:none;margin:var(--space-2) 0 0 0;padding:var(--space-3) 0 0 var(--space-4);border-top:1px solid var(--color-line)}.book-row{grid-template-columns:auto 1fr auto;gap:var(--space-2) var(--space-4);padding:var(--space-2) var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-panel-soft, transparent)}.book-row.dragging{opacity:.6}.book-row-handle{color:var(--color-muted);cursor:grab;user-select:none;flex:0 0 auto}.book-row-handle:active{cursor:grabbing}.book-row.is-active{border-color:var(--color-ink)}.book-row-name{font-family:var(--font-serif, var(--font-ui));font-size:var(--text-base);font-weight:500;color:var(--color-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;outline:none}.book-row-actions{flex:0 0 auto}.book-row-enter,.book-row-clone{font:inherit;font-size:var(--text-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:var(--space-2) var(--space-3);cursor:pointer}.book-row-enter{background:var(--color-ink);color:var(--color-bg, var(--color-bg-light))}.book-row-enter:hover{opacity:.92}.book-row-clone{background:transparent;color:var(--color-muted)}.book-row-clone:hover{color:var(--color-ink)}.book-row-clone:disabled{opacity:.6;cursor:progress}.book-row-delete{width:2rem;height:2rem;padding:0;background:transparent;color:var(--color-muted);cursor:pointer}.book-row-delete:hover{color:var(--color-danger)}.book-row.is-confirming{grid-template-columns:1fr}.book-row.is-confirming .book-row-actions{display:none}.book-row-confirm{grid-column:1 / -1;padding-top:var(--space-2);border-top:1px solid var(--color-line)}.book-row-confirm-title{font-size:var(--text-sm);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-danger)}.book-row-confirm-text{margin:0;line-height:var(--leading-normal)}.book-row-confirm-name{font-family:var(--font-serif, var(--font-ui));font-size:var(--text-base)}.book-row-confirm-input{font:inherit;padding:var(--space-2) var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-bg, transparent);color:var(--color-ink)}.book-row-confirm-cancel,.book-row-confirm-submit{font:inherit;font-size:var(--text-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:var(--space-2) var(--space-3);cursor:pointer}.book-row-confirm-cancel{background:transparent;color:var(--color-muted)}.book-row-confirm-submit{background:var(--color-danger);color:var(--color-bg, var(--color-bg-light))}.book-row-confirm-submit:disabled{opacity:.5;cursor:not-allowed}.book-row-create{grid-template-columns:1fr;border:1px dashed var(--color-line);background:transparent}.book-create-input{flex:1 1 auto;font:inherit;padding:var(--space-2) var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-bg, transparent);color:var(--color-ink)}.book-create-button{padding:var(--space-2) var(--space-3);background:var(--color-ink);color:var(--color-bg, var(--color-bg-light))}.book-create-button:disabled{opacity:.5;cursor:progress}@media (max-width: 720px){.projects-dialog-backdrop{padding:var(--space-2);place-items:stretch}.projects-dialog{max-width:none;border-radius:var(--radius-sm);max-height:calc(100dvh - 1.2rem)}.projects-dialog-body{padding:clamp(var(--space-3),3.4vw,var(--space-4));gap:var(--space-4);overflow-y:auto;min-height:0}.projects-dialog-title{font-size:clamp(1.15rem,4.8vw,1.35rem)}.projects-dialog-list{gap:var(--space-2)}.project-row{padding:var(--space-3)}.book-list{margin-top:var(--space-2);padding:var(--space-2) 0 0 var(--space-1)}}@media (max-width: 600px){.project-row{grid-template-columns:1fr;padding:var(--space-3);gap:var(--space-2)}.project-row-actions{justify-content:flex-start;flex-wrap:wrap;width:100%}.projects-dialog-create-form{flex-direction:column}.projects-dialog-create-button,.project-row-enter,.project-row-delete,.book-row-enter,.book-row-clone{font-size:var(--text-sm);letter-spacing:.04em;padding:var(--space-2) var(--space-3)}.book-row{grid-template-columns:1fr;padding:var(--space-2) var(--space-3);gap:var(--space-2)}.book-row-handle{display:none}.book-list{padding-left:0}.book-row-actions{justify-content:flex-start;flex-wrap:wrap;width:100%}.book-row-delete{width:1.9rem;height:1.9rem}}.users-dialog-create-form{grid-template-columns:1fr 1fr 1fr auto}.users-row-self{font-size:var(--text-sm);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted);padding:var(--space-2) var(--space-3)}.users-row-login,.users-row-role{display:inline-block}.users-row-role{margin-left:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-muted);font-size:var(--text-sm);font-weight:600;letter-spacing:.1em;text-transform:uppercase}.users-row.is-self .project-row-name{color:var(--color-ink)}@media (max-width: 640px){.users-dialog-create-form{grid-template-columns:1fr}}.onboarding-backdrop{position:fixed;inset:0;z-index:var(--z-backdrop-top);background:var(--scrim);place-items:center;padding:clamp(var(--space-4),4vw,var(--space-12));overflow-y:auto;animation:onboarding-backdrop-in .22s ease-out both}@keyframes onboarding-backdrop-in{0%{opacity:0}to{opacity:1}}.onboarding-dialog{width:100%;max-width:540px;background:var(--color-surface, #fdfaf7);color:var(--color-ink, var(--color-bg-dark));border:1px solid var(--color-line, var(--overlay-line));border-radius:var(--radius-md, 12px);box-shadow:0 30px 80px #0000002e;animation:onboarding-dialog-in .28s cubic-bezier(.32,0,.4,1) both}@keyframes onboarding-dialog-in{0%{opacity:0;transform:translateY(.6rem) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.onboarding-header{padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-line)}.onboarding-step-count{font-size:var(--text-sm);font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--color-muted)}.onboarding-close{background:none;padding:var(--space-1);color:var(--color-muted);cursor:pointer}.onboarding-close:hover{color:var(--color-ink);background:var(--color-panel-soft, transparent)}.onboarding-body{padding:clamp(var(--space-4),3vw,var(--space-8))}.onboarding-title{margin:0;font-family:var(--font-serif, var(--font-ui));font-weight:600;font-size:clamp(1.4rem,2.2vw,1.7rem);letter-spacing:-.01em;line-height:var(--leading-tight)}.onboarding-copy{margin:0;font-family:var(--font-serif, var(--font-ui));font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-muted)}.onboarding-textarea{font:inherit;font-family:var(--font-serif, var(--font-ui));font-size:var(--text-base);line-height:var(--leading-normal);padding:var(--space-3) var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-bg, #fff);color:inherit;resize:vertical;min-height:6rem}.onboarding-textarea:focus{outline:none;border-color:var(--color-ink)}.onboarding-character-list-wrap{margin-top:var(--space-2)}.onboarding-character-list{list-style:none;margin:0;padding:0}.onboarding-character-row{padding:var(--space-2) var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-panel-soft, transparent)}.onboarding-character-row.dragging{opacity:.6}.onboarding-character-handle{color:var(--color-muted);cursor:grab;user-select:none;flex:0 0 auto}.onboarding-character-handle:active{cursor:grabbing}.onboarding-character-name{font-family:var(--font-serif, var(--font-ui));font-size:var(--text-base);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 auto;min-width:0}.onboarding-character-remove{padding:var(--space-2) var(--space-3);background:transparent;color:var(--color-muted)}.onboarding-character-remove:hover:not(:disabled){color:var(--color-danger)}.onboarding-character-remove:disabled{opacity:.5;cursor:progress}.onboarding-empty{margin:0;font-family:var(--font-serif, var(--font-ui));font-size:var(--text-base)}.onboarding-character-add,.onboarding-island-carousel,.onboarding-island-form-wrap{margin-top:var(--space-2)}.onboarding-island-input,.onboarding-island-textarea{font:inherit;font-size:var(--text-base);padding:var(--space-2) var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-bg, #fff);color:inherit}.onboarding-island-textarea{font-family:var(--font-serif, var(--font-ui));line-height:var(--leading-normal);resize:vertical;min-height:5rem}.onboarding-island-input:focus,.onboarding-island-textarea:focus{outline:none;border-color:var(--color-ink)}.onboarding-character-input{flex:1 1 auto;font:inherit;font-size:var(--text-base);padding:var(--space-2) var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-bg, #fff);color:inherit;min-width:0}.onboarding-character-input:focus{outline:none;border-color:var(--color-ink)}.onboarding-footer{justify-content:space-between;padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-line)}.onboarding-footer-left,.onboarding-footer-right{display:flex;align-items:center;gap:var(--space-2)}.onboarding-btn{padding:var(--space-2) var(--space-4)}.onboarding-btn--primary{background:var(--color-ink);color:var(--color-bg, var(--color-bg-light))}.onboarding-btn--primary:hover{opacity:.92}.onboarding-btn--ghost{background:transparent;color:var(--color-muted)}.onboarding-btn--ghost:hover{color:var(--color-ink)}@media (max-width: 600px){.onboarding-character-add{flex-direction:column}.onboarding-footer{flex-direction:column-reverse;align-items:stretch}.onboarding-footer-left,.onboarding-footer-right{justify-content:space-between}}.app-dialog-backdrop{z-index:var(--z-dialog)}.app-dialog{max-width:460px}.app-dialog-body{gap:var(--space-4)}.app-dialog-copy{white-space:pre-wrap}.app-dialog-label{font-weight:600}.app-dialog-input{width:100%;box-sizing:border-box;font:inherit;padding:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-bg, #fff);color:var(--color-ink)}.app-dialog-input:focus{outline:none;border-color:var(--color-ink)}.app-dialog-actions{justify-content:flex-end}.app-dialog--danger .app-dialog-submit{background:var(--danger-bg-mid);color:var(--color-ink)}.carousel-header{grid-template-columns:auto 1fr auto}.carousel-nav{width:2.2rem;height:2.2rem;background:none;border-radius:50%;color:var(--color-muted, #777);cursor:pointer;transition:background .16s ease,color .16s ease;padding:0}.carousel-nav--placeholder{width:2.2rem;height:2.2rem}.carousel-nav:hover{background:var(--color-panel-soft, rgba(0, 0, 0, .04));color:var(--color-ink, var(--color-bg-dark))}.carousel-nav:active{transform:scale(.96)}.carousel-nav svg{width:1.4rem;height:1.4rem}.carousel-label{text-align:center;min-width:0}.carousel-label-text{font-weight:600;letter-spacing:-.01em;line-height:var(--leading-none);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.carousel-counter{font-size:var(--text-2xs);font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--color-muted)}.carousel-body{display:block}.carousel-empty{text-align:center;padding:var(--space-4) 0}.loader{width:80px;height:80px;border-radius:50%;border:8px solid color-mix(in srgb,var(--color-accent) 58%,var(--color-surface) 42%);box-sizing:border-box;--loader-topping: no-repeat radial-gradient(farthest-side, var(--color-accent) 94%, transparent);--loader-olive: no-repeat radial-gradient(farthest-side, var(--color-ink) 94%, transparent);background:var(--loader-topping) 11px 15px,var(--loader-olive) 6px 15px,var(--loader-topping) 35px 23px,var(--loader-olive) 29px 15px,var(--loader-topping) 11px 46px,var(--loader-olive) 11px 34px,var(--loader-topping) 36px 0,var(--loader-olive) 50px 31px,var(--loader-topping) 47px 43px,var(--loader-olive) 31px 48px,color-mix(in srgb,var(--color-bg) 46%,#f6d353 54%);background-size:15px 15px,6px 6px;animation:loader-pizza 3s infinite}.loader-wrap{min-height:10rem;place-items:center}.boot-loader{position:fixed;inset:0;z-index:var(--z-dialog);place-items:center;background:var(--color-bg);color:var(--color-accent)}body:not(.boot-pending) .boot-loader{display:none}@keyframes loader-pizza{0%{-webkit-mask:conic-gradient(transparent 0,#000 0);mask:conic-gradient(transparent 0,#000 0)}16.67%{-webkit-mask:conic-gradient(transparent 60deg,#000 0);mask:conic-gradient(transparent 60deg,#000 0)}33.33%{-webkit-mask:conic-gradient(transparent 120deg,#000 0);mask:conic-gradient(transparent 120deg,#000 0)}50%{-webkit-mask:conic-gradient(transparent 180deg,#000 0);mask:conic-gradient(transparent 180deg,#000 0)}66.67%{-webkit-mask:conic-gradient(transparent 240deg,#000 0);mask:conic-gradient(transparent 240deg,#000 0)}83.33%{-webkit-mask:conic-gradient(transparent 300deg,#000 0);mask:conic-gradient(transparent 300deg,#000 0)}to{-webkit-mask:conic-gradient(transparent 360deg,#000 0);mask:conic-gradient(transparent 360deg,#000 0)}}@media (prefers-reduced-motion: reduce){.loader{animation:none}}.list-more-btn{display:block;margin-top:var(--space-2);padding:var(--space-2) var(--space-3);background:transparent;color:var(--color-muted)}.list-more-btn:hover{color:var(--color-ink)}.module-primitive{display:block;margin-top:var(--space-2)}.primitive-title{margin-bottom:var(--space-1)}.primitive-kv-row,.primitive-sr-row{display:flex;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:1px dashed var(--color-line)}.primitive-kv-row:last-child,.primitive-sr-row:last-child{border-bottom:none}.primitive-kv-label,.primitive-sr-label{flex:0 0 9rem;font-size:var(--text-sm);font-weight:600;color:var(--color-muted);letter-spacing:.04em}.primitive-kv-value,.primitive-sr-value{flex:1 1 auto;font-size:var(--text-base);color:var(--color-ink);word-break:break-word}.primitive-issue{margin-top:var(--space-2);padding:var(--space-2) var(--space-3);border-left:3px solid var(--color-line);background:var(--color-bg);border-radius:var(--radius-sm)}.primitive-issue-head{font-size:var(--text-sm)}.primitive-issue-severity{font-weight:700;letter-spacing:.06em;text-transform:uppercase}.primitive-issue-title{font-weight:600;color:var(--color-ink)}.primitive-issue-scope{margin-left:auto}.primitive-issue-row{margin-top:var(--space-2);font-size:var(--text-base)}.primitive-issue-row-label{flex:0 0 7rem;font-weight:600;letter-spacing:.04em}.primitive-issue-row-value{flex:1 1 auto}.primitive-issue-notes{margin-top:var(--space-2)}.primitive-tt-text{white-space:pre-wrap;font-size:var(--text-base);color:var(--color-ink)}.primitive-tt-risks ul{margin:0;padding-left:var(--space-5)}.research-view{width:100%;max-width:60rem;margin:0 auto;line-height:var(--leading-normal);flex:1 1 auto;overflow:auto}.revision-view,.characters-view,.cast-view,.library-view,.graph-view,.checklist-view{width:100%;max-width:70rem;margin:0 auto;line-height:var(--leading-normal);flex:1 1 auto;overflow:auto;padding-right:var(--space-2)}.settings-view{width:100%;margin:0 auto;line-height:var(--leading-normal);flex:1 1 auto;overflow:auto;padding-right:var(--space-2)}.library-view{height:100%;min-height:0;overflow:hidden}.revision-view{overflow:hidden}.revision-panel{grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0;padding-bottom:var(--space-16);font-size:var(--text-base);overflow:hidden}.revision-view-head{margin-bottom:0;flex:none}.revision-body{min-height:0;overflow:auto;align-content:start;padding-right:var(--space-2)}.revision-workspace{grid-template-columns:minmax(10rem,17rem) minmax(0,1fr);min-height:auto;height:auto}.revision-column{min-width:0;min-height:0}.revision-column-left{grid-template-rows:auto auto;align-content:stretch}.revision-list-panel{background:var(--color-panel-soft);border-radius:var(--radius-sm);grid-template-rows:auto minmax(0,1fr);min-height:0;overflow:hidden}.revision-list-head{padding:var(--space-3);border-bottom:none}.revision-list-title{display:block;font-size:var(--text-sm);color:var(--color-ink)}.revision-section-title{display:inline-flex;align-items:center;gap:var(--space-2);text-transform:uppercase;letter-spacing:.08em;font-size:var(--text-sm);color:var(--color-muted)}.revision-list-head span{font-size:var(--text-sm);letter-spacing:.18em;text-transform:uppercase;color:var(--color-accent)}.revision-list-actions button,.revision-commit-box button{background:var(--color-bg);color:var(--color-ink);cursor:pointer;font:inherit;font-size:var(--text-sm);padding:var(--space-1) var(--space-2)}.revision-list-actions button:hover:not(:disabled),.revision-commit-box button:hover:not(:disabled){background:var(--color-accent);color:var(--color-bg)}.revision-list-actions button:disabled,.revision-commit-box button:disabled{cursor:default;opacity:.45}.revision-list-actions .revision-primary-btn{background:#1f6f2a24;color:var(--color-ink)}.revision-list-actions .revision-primary-btn:hover:not(:disabled){background:#1f6f2a47;color:var(--color-ink)}.revision-list-actions .revision-danger-btn{background:#b22a2a1a;color:var(--color-ink)}.revision-list-actions .revision-danger-btn:hover:not(:disabled){background:#b22a2a33;color:var(--color-ink)}.revision-list-actions .revision-subtle-btn{background:#7f7f7f1f;color:var(--color-muted)}.revision-list-actions .revision-subtle-btn:hover:not(:disabled){background:#7f7f7f33;color:var(--color-ink)}.revision-list-body{overflow:auto;padding:0 var(--space-2) var(--space-2);align-content:start}.revision-column-left .revision-list-body{max-height:38vh}.revision-file-row{display:block;text-align:left;background:var(--color-bg);padding:var(--space-2);font:inherit;color:var(--color-ink);cursor:pointer}.revision-file-line{min-width:0}.revision-file-icon{flex:0 0 auto}.revision-file-badge{--badge-border: #2a2a2a;--badge-bg: rgba(90, 90, 90, .12);min-height:1.3rem;padding:var(--space-1) var(--space-3) var(--space-1) var(--space-2);border:2px solid var(--badge-border);border-radius:var(--radius-xs);background:var(--badge-bg);color:var(--badge-border);position:relative;font-size:var(--text-sm);font-weight:700;line-height:var(--leading-none);letter-spacing:.02em;text-transform:uppercase;clip-path:polygon(0 0,100% 0,calc(100% - .44rem) 50%,100% 100%,0 100%)}.revision-file-badge:after{content:"";position:absolute;top:0;right:0;width:.45rem;height:100%;pointer-events:none;background:linear-gradient(to bottom right,transparent 40%,var(--badge-border) 45%,var(--badge-border) 62%,transparent 63%) top / 100% 50% no-repeat,linear-gradient(to top right,transparent 40%,var(--badge-border) 45%,var(--badge-border) 62%,transparent 63%) bottom / 100% 50% no-repeat}.revision-file-badge--added{--badge-border: #237a3b;--badge-bg: rgba(35, 122, 59, .12)}.revision-file-badge--changed{--badge-border: #2f5f9e;--badge-bg: rgba(47, 95, 158, .12)}.revision-file-badge--deleted{--badge-border: #a64343;--badge-bg: rgba(166, 67, 67, .12)}.revision-file-title{display:block;font-size:var(--text-sm);line-height:var(--leading-tight);color:var(--color-ink);overflow:hidden;text-overflow:ellipsis}.revision-file-row.is-selected .revision-file-title{font-weight:700}.revision-file-row.is-selected .revision-file-badge{filter:saturate(1.1)}.revision-column-right{grid-template-rows:minmax(0,1fr) auto;min-height:0}.revision-diff-panel{min-height:0;grid-template-rows:auto minmax(0,1fr)}.revision-diff-panel .research-visibility-options{grid-template-columns:1fr 1fr}.revision-diff-panel .research-visibility-group{background:var(--color-panel-soft)}.revision-history-mode{margin:0 0 var(--space-2) 0}.revision-history-mode-options{grid-template-columns:repeat(2,minmax(0,1fr))}.revision-diff{margin:0;border-radius:var(--radius-sm);padding:var(--space-3);overflow:auto;font-size:var(--space-7);line-height:var(--space-10);font-family:var(--font-editor);max-height:50vh}.revision-full-text{margin:0;font:inherit;font-family:var(--font-editor);font-size:var(--text-base);line-height:var(--leading-normal);white-space:pre-wrap;word-break:break-word}.revision-diff-block{padding:var(--space-1) 0}.revision-diff-block+.revision-diff-block{border-top:none}.revision-diff-block .revision-diff-line{margin:0}.revision-diff-block .revision-line{-webkit-box-decoration-break:clone;box-decoration-break:clone}.revision-diff-block .revision-line--del{background:var(--danger-bg)}.revision-diff-block .revision-line--add{background:var(--success-bg)}.revision-diff-block .revision-add{background:var(--success-bg-strong)}.revision-diff-block .revision-del{background:var(--danger-bg-strong)}.revision-json-row{font-family:var(--font-ui, inherit);font-size:var(--text-base);line-height:var(--leading-normal);padding:var(--space-2) 0}.revision-json-change{word-break:break-word}.revision-json-change .revision-add,.revision-json-change .revision-del{padding:var(--space-1);border-radius:var(--radius-sm)}.revision-commit-box{background:var(--color-panel-soft);border-radius:var(--radius-sm);padding:var(--space-3)}.revision-commit-subject,.revision-commit-description{width:100%;font:inherit;border:none;border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);background:var(--color-bg);color:var(--color-ink)}.revision-commit-description{min-height:5rem;resize:vertical}.revision-history-layout{grid-template-rows:auto auto;min-height:auto;height:auto}.revision-history-list{background:var(--color-panel-soft);border-radius:var(--radius-sm);align-content:start;min-height:0;overflow:auto}.revision-history-detail{grid-template-columns:minmax(10rem,17rem) minmax(0,1fr);min-height:0}.revision-history-row{background:var(--color-bg);color:var(--color-ink);cursor:pointer;font:inherit;padding:var(--space-2);text-align:left}.revision-history-row.is-active .revision-history-subject,.revision-history-row.is-active .revision-history-date{font-weight:700}.revision-history-copy{min-width:0;flex:1}.revision-history-subject{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:var(--leading-tight)}.revision-history-notes{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.revision-history-date{flex:none;white-space:nowrap}.revision-empty{color:var(--color-muted)}.revision-confirm-backdrop{z-index:var(--z-dialog);background:var(--scrim);padding:clamp(var(--space-4),4vw,var(--space-12))}.revision-confirm-dialog{max-width:540px}.revision-confirm-list{padding:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-bg)}.revision-confirm-actions{justify-content:flex-end}.revision-confirm-actions .revision-confirm-submit{background:var(--danger-bg-mid);color:var(--color-ink)}@media (max-width: 860px){.revision-workspace,.revision-history-detail{grid-template-columns:1fr}}.settings-panel{min-height:100%;align-content:start;padding:0 var(--space-2) calc(var(--space-8) * 2)}.settings-card{border-radius:var(--radius-sm);background:var(--color-panel-soft);box-shadow:none;padding:var(--space-4)}.settings-card-head{margin-bottom:var(--space-4)}.settings-eyebrow{font-size:var(--text-sm);letter-spacing:.18em;text-transform:uppercase;color:var(--color-accent)}.settings-copy,.settings-note{margin:0;color:var(--color-muted);max-width:42rem}.settings-note{max-width:20rem;font-size:var(--text-sm)}.settings-toggle-row{align-items:stretch}.settings-section-block{background:var(--color-bg);border-radius:var(--radius-sm);padding:var(--space-3)}.settings-shortcuts-wrap{overflow-x:auto;border-radius:var(--radius-sm);background:var(--color-bg)}.settings-shortcuts-table{width:100%;min-width:42rem;border-collapse:separate;border-spacing:0}.settings-shortcuts-table th,.settings-shortcuts-table td{padding:var(--space-3) var(--space-4);text-align:left;vertical-align:top}.settings-shortcuts-table thead th{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.09em;color:var(--color-muted);font-weight:400}.settings-shortcuts-table tbody td,.settings-shortcuts-table tbody tr:first-child td{border-top:none}.settings-shortcut-keys{align-items:center;white-space:nowrap}.settings-shortcut-keys span{color:var(--color-muted);font-size:var(--text-sm)}.settings-shortcut-times{min-width:1.8rem;padding:var(--space-1);border-radius:var(--radius-pill);background:var(--color-surface)}.settings-shortcuts-table kbd{display:inline-flex;align-items:center;justify-content:center;min-height:1.9rem;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:none;font:inherit;font-size:var(--text-sm)}@media (max-width: 720px){.settings-card{padding:var(--space-4)}.settings-card-head{align-items:flex-start;flex-direction:column}.settings-note{max-width:none}.settings-shortcuts-table{min-width:34rem}}.settings-user-card{padding:var(--space-2) var(--space-4)}.settings-user-avatar{flex:0 0 auto;width:2.6rem;height:2.6rem;border-radius:50%;background-color:var(--color-surface);background-size:cover;background-position:center;display:inline-grid;place-items:center;font-size:var(--text-sm);font-weight:600;letter-spacing:.04em}.settings-user-avatar.has-image{color:transparent}.settings-user-meta{flex:1 1 auto;min-width:0}.settings-user-name{font-family:var(--font-editor, var(--font-ui));font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-user-login{letter-spacing:.06em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-user-logout,.settings-user-users{flex:0 0 auto;font-size:var(--text-sm);font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:var(--space-2) var(--space-4);background:var(--color-bg);color:var(--color-ink);cursor:pointer}.settings-user-logout:hover,.settings-user-users:hover{background:var(--color-accent);color:var(--color-bg)}.settings-user-actions{flex:0 0 auto}.settings-phase-row{margin-top:var(--space-2)}.settings-phase-visibility{display:grid;gap:var(--space-3);margin-top:0;grid-template-columns:1fr;padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-bg);position:relative}.settings-phase-visibility-head{display:none}.settings-phase-visibility-group{display:grid;align-items:flex-start;grid-template-columns:minmax(7rem,10rem) 1fr;gap:var(--space-2) var(--space-4)}.settings-phase-visibility-title{padding-top:var(--space-1)}button.settings-phase-visibility-title{background:transparent;text-align:left;font-family:inherit;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted);cursor:pointer}button.settings-phase-visibility-title:hover{color:var(--color-accent)}button.settings-phase-visibility-title:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.settings-phase-visibility-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,max-content));gap:var(--space-2) var(--space-4)}.settings-phase-visibility-option{display:grid;align-items:center;gap:var(--space-2);grid-template-columns:auto 1fr}.settings-resource-select{width:100%;min-height:2.6rem;border:none;color:var(--color-ink);font:inherit;padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-surface)}.settings-resources-grid{overflow:hidden}.settings-resource-field{grid-template-columns:1fr 2fr}.settings-phase-visibility-option input{accent-color:var(--color-accent)}@media (max-width: 720px){.settings-phase-visibility-group,.settings-phase-visibility-options{display:grid;grid-template-columns:1fr}.settings-user-row{flex-direction:column;align-items:center}}.checklist-body{font-size:var(--text-base);line-height:var(--leading-normal)}.checklist-summary{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));padding:var(--space-4);border-radius:var(--radius-sm);border:1px solid var(--color-line);background:var(--color-panel-soft);font-variant-numeric:tabular-nums}.checklist-summary>div{padding:var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-line);background:var(--color-surface);font-size:var(--text-base);line-height:var(--leading-normal)}.checklist-summary>div:first-child{grid-column:1 / -1;padding:0;background:transparent;font-family:var(--font-editor);font-size:var(--text-base);letter-spacing:-.5px}.checklist-summary>div:first-child strong{font-weight:600}.checklist-table{width:100%;border-collapse:collapse;font-size:var(--text-base);background:var(--color-panel-soft);border:1px solid var(--color-line);border-radius:var(--radius-sm);overflow:hidden}.checklist-table thead th{text-align:left;font-weight:600;font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted);padding:var(--space-2) var(--space-4);background:var(--overlay-faint);border-bottom:1px solid var(--color-line)}.checklist-table tbody tr{border-bottom:1px solid var(--color-line)}.checklist-table tbody tr:last-child{border-bottom:none}.checklist-table td{padding:var(--space-2) var(--space-4);vertical-align:top}.checklist-list{padding:var(--space-4);border-radius:var(--radius-sm);border:1px solid var(--color-line);background:var(--color-panel-soft)}.checklist-list h3{margin:0;font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted)}.checklist-list ol{margin:0;padding-left:var(--space-4);display:grid;gap:var(--space-1)}.heading-block{padding-bottom:var(--space-6);border-bottom:1px solid var(--color-line);margin-bottom:var(--space-8)}.view-title-copy{min-width:0}.view-close{flex:0 0 auto;width:3rem;height:3rem;background:transparent;color:var(--color-muted);cursor:pointer}.view-close:hover,.view-close:focus-visible{background:var(--color-panel-soft);color:var(--color-ink)}.heading-block-title{font-family:var(--font-editor);font-size:var(--text-xl);text-transform:uppercase}.heading-block-subtitle{color:var(--color-muted)}.characters-section{margin-bottom:var(--space-12)}.characters-section-title{font-size:var(--text-base);letter-spacing:.06em;text-transform:uppercase}.characters-section-note{max-width:28rem;text-align:right}.archetypes-table{width:100%;border-collapse:collapse;font-size:var(--text-base);background:var(--color-panel-soft);border:1px solid var(--color-line);border-radius:var(--radius-sm);overflow:hidden}.archetypes-table thead th{text-align:left;font-weight:600;font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted);padding:var(--space-2) var(--space-4);background:var(--overlay-faint);border-bottom:1px solid var(--color-line)}.archetypes-table tbody tr{border-bottom:1px solid var(--color-line)}.archetypes-table tbody tr:last-child{border-bottom:none}.archetypes-table td{padding:var(--space-2) var(--space-4);vertical-align:top}.archetypes-character-button,.archetypes-link-button{background:none;padding:0;margin:0;font:inherit;color:inherit;cursor:pointer;text-align:left}.archetypes-character-button:hover,.archetypes-character-button:focus-visible,.archetypes-link-button:hover,.archetypes-link-button:focus-visible{color:var(--color-accent);text-decoration:underline;outline:none}.characters-empty{padding:var(--space-4);border:1px dashed var(--color-line);border-radius:var(--radius-sm);color:var(--color-muted)}.character-arc-summary-title{margin-bottom:var(--space-1)}.character-arc-summary-title:empty{display:none}.char-research-hero{gap:var(--space-4);border-bottom:0;padding-bottom:0}.char-research-controls{grid-template-columns:minmax(14rem,18rem) minmax(0,1fr);border-top:1px solid var(--color-line);padding-top:var(--space-4)}.char-research-control{display:block}.char-research-control select{width:100%;height:100%;min-height:3.05rem;border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-panel-soft);color:var(--color-ink);font-size:var(--text-base);padding:var(--space-2) var(--space-3)}.char-research-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.char-research-stat{background:var(--color-panel-soft);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3)}.char-research-stat span{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted)}.char-research-stat strong{font-size:var(--text-base);font-weight:600;color:var(--color-ink)}.char-research-table-wrap{overflow:auto;border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-panel-soft)}.char-research-table{width:100%;min-width:66rem;border-collapse:collapse;font-size:var(--text-base)}.char-research-table thead th{text-align:left;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted);padding:var(--space-2);border-bottom:1px solid var(--color-line);background:var(--overlay-soft);position:sticky;top:0;z-index:1}.char-research-table tbody td{padding:var(--space-2);border-bottom:1px solid var(--color-line);vertical-align:top}.char-research-table tbody tr:last-child td{border-bottom:none}.char-research-row{--flag-irrev: #9a3d2e;--flag-direction: #2e6f98;--flag-cost: #7b3f8f;transition:background var(--transition);cursor:pointer}.char-research-row:hover{background:var(--overlay-soft)}.char-research-row.is-flag-irrev{box-shadow:inset .25rem 0 0 var(--flag-irrev)}.char-research-row.is-flag-direction{box-shadow:inset .25rem 0 0 var(--flag-direction)}.char-research-row.is-flag-cost{box-shadow:inset .25rem 0 0 var(--flag-cost)}.char-research-level{min-width:1.55rem;height:1.55rem;border-radius:var(--radius-pill);border:1px solid var(--color-line);background:var(--color-surface);font-weight:700;font-size:var(--text-sm);color:var(--color-accent)}.char-research-level.is-highlight{border-color:var(--color-accent);color:var(--color-ink)}.char-research-empty,.char-research-sub{color:var(--color-muted);font-size:var(--text-sm)}.char-research-scene-link{background:none;padding:0;margin:0;font:inherit;color:inherit;cursor:pointer;text-align:left}.char-research-scene-link:hover,.char-research-scene-link:focus-visible{color:var(--color-accent);text-decoration:underline;outline:none}.char-charts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.char-chart{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-panel-soft);padding:var(--space-2)}.char-chart-svg{width:100%;height:auto;display:block}.char-chart-line{fill:none;stroke:var(--color-accent);stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}.char-chart-dots circle{fill:var(--color-accent);opacity:.9}.char-chart-axis{stroke:var(--color-line);stroke-width:1}.char-research-list{margin:0;padding-left:var(--space-4)}.char-research-table-illusion{min-width:54rem}@media (max-width: 1100px){.char-research-controls{grid-template-columns:1fr}.char-research-stats{grid-template-columns:repeat(3,minmax(8rem,1fr))}}@media (max-width: 860px){.characters-section-head{flex-direction:column;align-items:flex-start}.characters-section-note{text-align:left}.char-charts-grid,.char-research-stats{grid-template-columns:1fr}}.character-arc-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.database-view{grid-template-rows:auto auto minmax(0,1fr);height:100%;min-height:0;padding-bottom:var(--space-16)}.database-hero-title{font-size:var(--text-base);letter-spacing:.08em;text-transform:uppercase}.database-layout{grid-template-columns:minmax(10rem,17rem) minmax(0,1fr);min-height:0}.database-top-menu{flex-wrap:nowrap;width:100%}.database-filter-row.is-sub{gap:var(--space-1)}.database-filter-btn{padding:var(--space-1) var(--space-2);font:inherit}.database-filter-btn:hover{color:var(--color-accent)}.database-filter-row.is-sub .database-filter-btn{font-size:var(--text-sm);opacity:.95}.database-filter-btn.is-active{background:var(--color-accent);color:var(--color-bg)}.database-filter-btn.is-drop-target{outline:2px dashed var(--color-accent);outline-offset:1px}.database-sidebar{align-content:stretch;grid-template-rows:minmax(0,1fr) auto;min-height:0}.database-icon-btn{min-height:4.25rem;flex:1 1 0;min-width:0;padding:var(--space-1);font:inherit;color:var(--color-muted)}.database-icon-btn:hover{color:var(--color-accent)}.database-icon-btn.is-active{background:var(--color-accent);color:var(--color-bg);box-shadow:none}.database-icon-btn svg{width:1.35rem;height:1.35rem}.database-icon-label{font-size:var(--text-sm);line-height:var(--leading-none);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.database-list{grid-auto-rows:min-content;align-content:start;min-height:0;overflow:auto;padding-right:var(--space-1)}.database-doc-item{position:relative;grid-template-columns:minmax(0,1fr) auto;cursor:grab}.database-entry-item{position:relative;grid-template-columns:minmax(0,1fr) auto}.database-item-menu{display:none;width:var(--space-8);height:var(--space-8)}.database-item-menu svg{width:var(--space-5);height:var(--space-5)}.database-doc-item.is-active .database-item-menu,.database-entry-item.is-active .database-item-menu{display:inline-flex}.database-item-menu:hover{color:var(--color-accent)}.database-doc-item.dragging{opacity:.6}.database-doc-item:active{cursor:grabbing}.database-add-wrap{margin-top:var(--space-1);border-top:1px solid var(--color-line);padding-top:var(--space-2)}.database-add{width:2.1rem;height:2.1rem;color:inherit}.database-item{padding:var(--space-2);font:inherit;color:inherit}.database-doc-title{min-width:0;overflow:hidden;text-overflow:ellipsis}.database-doc-ai-icon{flex:0 0 auto;width:1rem;height:1rem;color:var(--color-accent)}.database-doc-ai-icon svg{width:1rem;height:1rem}.database-item.is-active .database-doc-ai-icon{color:currentColor}.database-item:hover{color:var(--color-accent)}.database-item.is-active{background:var(--color-accent);color:var(--color-bg);box-shadow:none}.database-list-empty,.database-loading,.database-empty{color:var(--color-muted);font-style:italic}.database-detail{background:var(--color-panel-soft);border-radius:var(--radius-md);padding:var(--space-4);min-height:0;overflow:auto}.database-detail-head{margin-bottom:var(--space-2)}.database-detail-title{margin:0;font-size:var(--text-base)}.database-markdown>:first-child{margin-top:0}.database-markdown .markdown-blockquote{margin:var(--space-2) 0;padding:var(--space-2) var(--space-4);border-left:3px solid var(--color-accent);background:color-mix(in srgb,var(--color-panel-soft) 80%,var(--color-surface) 20%);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.database-markdown .markdown-blockquote p{margin:0}.database-markdown .markdown-link{color:var(--color-accent);text-decoration:underline;text-underline-offset:.1em}.markdown-table-wrap{width:100%;overflow-x:auto}.markdown-table{width:100%;border-collapse:collapse;margin:var(--space-2) 0;background:var(--color-panel-soft);border:1px solid var(--color-line);border-radius:var(--radius-sm);overflow:hidden}.markdown-table th,.markdown-table td{padding:var(--space-2) var(--space-4);vertical-align:top;text-align:left;border-bottom:1px solid var(--color-line)}.markdown-table thead th{font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted);background:var(--overlay-faint)}.markdown-table tbody tr:last-child td{border-bottom:none}.database-detail-body.is-pinnable{cursor:pointer}.database-editor{display:inline-table;width:100%;min-height:24rem;resize:vertical;border:none;border-radius:0;background:transparent;color:var(--color-ink);font:inherit;line-height:var(--leading-normal);padding:0;outline:none}.database-editor[data-saving="1"]{color:color-mix(in srgb,var(--color-ink) 78%,var(--color-accent) 22%)}@media (max-width: 860px){.database-layout{grid-template-columns:1fr}.database-sidebar{min-height:16rem}}.research-share{padding-bottom:var(--space-6);border-bottom:1px solid var(--color-line);margin-bottom:var(--space-8)}.research-character-filter{color:var(--color-muted)}.research-character-filter select{font:inherit;font-size:var(--text-base);padding:var(--space-2);border:none;border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink);min-width:14rem}.research-view [data-research-visibility-key][hidden]{display:none!important}.research-view[data-show-scene-word-count=false] .research-target:before{content:"";margin-right:0}.research-visibility{display:grid;gap:var(--space-4);margin-top:var(--space-5);grid-template-columns:1fr;padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-panel-soft);position:relative}.research-visibility-head{display:flex;align-items:center;justify-content:space-between;grid-column:1 / -1;background:none;padding:0;width:100%;cursor:pointer;text-align:left}.research-visibility-head:hover .research-visibility-heading{color:var(--color-accent)}.research-visibility-heading{display:inline-flex;align-items:center;gap:var(--space-2);text-transform:uppercase;letter-spacing:.08em;font-size:var(--text-sm);color:var(--color-muted)}.research-visibility-toggle svg{transition:transform var(--transition)}.research-visibility.is-collapsed .research-visibility-toggle svg{transform:rotate(180deg)}.research-visibility.is-collapsed .research-visibility-group,.research-visibility.is-collapsed .research-export{display:none}.research-visibility-title{cursor:pointer;background:none;text-transform:uppercase;letter-spacing:.08em;font-size:var(--text-sm);color:var(--color-muted);padding-top:var(--space-1)}.research-visibility-group{display:grid;grid-template-columns:minmax(7rem,10rem) 1fr;gap:var(--space-2) var(--space-4);padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-bg)}.research-visibility-option{display:grid;grid-template-columns:auto 1fr;font-size:var(--text-base);color:var(--color-ink);gap:var(--space-2)}.research-visibility-option input{accent-color:var(--color-accent)}.research-export{justify-self:end;grid-column:1 / -1}.research-export-action{background:none;padding:0;cursor:pointer;color:var(--color-accent);text-transform:uppercase;letter-spacing:.08em;font-size:var(--text-sm)}.research-export-action:hover,.research-export-action:focus{color:var(--color-ink)}.research-export-action:disabled{cursor:wait;color:var(--color-muted)}.research-visibility-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2);align-items:start}.meta-setup-visibility{display:grid;gap:var(--space-3);margin-top:var(--space-1);grid-template-columns:1fr;padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-panel-soft);position:relative}.meta-setup-visibility-head{display:flex;align-items:center;justify-content:space-between;grid-column:1 / -1;background:none;padding:0;width:100%;cursor:pointer;text-align:left}.meta-setup-visibility-heading{display:inline-flex;align-items:center;gap:var(--space-2);text-transform:uppercase;letter-spacing:.08em;font-size:var(--text-sm);color:var(--color-muted)}.meta-setup-visibility-toggle svg{transition:transform var(--transition)}.meta-setup-visibility.is-collapsed .meta-setup-visibility-toggle svg{transform:rotate(180deg)}.meta-setup-visibility.is-collapsed .meta-setup-visibility-group{display:none}.meta-setup-visibility-group{display:grid;align-items:flex-start;gap:var(--space-2);grid-template-columns:1fr}.meta-setup-visibility-options{display:grid;gap:var(--space-2);grid-template-columns:1fr}.meta-setup-visibility-option{display:grid;align-items:center;gap:var(--space-2);grid-template-columns:auto 1fr}.meta-setup-visibility-option input{accent-color:var(--color-accent)}@media (max-width: 60rem){.research-visibility-group,.research-visibility-options{grid-template-columns:1fr}}.research-chapter.is-filtered-out,.research-row.is-filtered-out{display:none}.research-footer{margin-top:var(--space-8);padding-top:var(--space-4);padding-bottom:var(--space-8);border-top:1px solid var(--color-line)}.research-chapter{background:var(--color-panel-soft);padding:var(--space-4) var(--space-8);border-radius:var(--radius-lg)}.research-chapter-head{grid-template-columns:auto 1fr auto;background:none;padding:0;width:100%;text-align:left;cursor:pointer}.research-chapter-toggle{background:none;padding:0;color:var(--color-muted)}.research-chapter-toggle svg{transition:transform var(--transition)}.research-chapter.is-collapsed .research-chapter-toggle svg{transform:rotate(180deg)}.research-chapter.is-collapsed .research-chapter-body{display:none}.research-chapter-index{font-size:var(--text-xl);letter-spacing:0;color:var(--color-muted);cursor:grab;user-select:none}.research-chapter-index:active{cursor:grabbing}.research-chapter-title{font-size:var(--text-base);text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted)}.research-chapter-purpose{margin:0;color:var(--color-muted);max-width:42rem}.research-chapter-score{margin-top:-var(--space-1);margin-bottom:var(--space-3)}.research-chapter-summary{margin-top:var(--space-4);padding-top:var(--space-4);padding-left:calc(var(--space-16) + var(--space-2));border-top:1px dashed var(--color-line);font-size:var(--text-sm)}.research-chapter-summary-empty{color:var(--color-muted)}.research-chapter-summary-row{grid-template-columns:1fr 11fr}.research-chapter-summary-label{color:var(--color-muted)}.research-chapter-summary-trigger{background:none;padding:var(--space-4) 0;text-align:left;cursor:pointer}.research-chapter-summary-trigger:hover,.research-chapter-summary-trigger:focus{color:var(--color-ink)}.research-chapter-summary-detail{display:none;grid-template-columns:1fr 11fr;gap:var(--space-2);color:var(--color-muted)}.research-chapter-summary-detail.is-open{display:grid}.research-scene-risk,.research-scene-pressure,.research-scene-cost,.research-scene-illusion-reality,.research-scene-control,.research-scene-direction,.research-scene-irreversibility,.research-scene-timeline-illusion,.research-scene-interludes,.research-scene-memory,.research-scene-motifs,.research-scene-rhythm{margin-top:var(--space-1)}.research-view .analysis-block{margin-bottom:var(--space-4)}.research-view .analysis-title{font-size:var(--text-sm);letter-spacing:.18em;text-transform:uppercase;color:var(--color-accent)}.research-view .analysis-item{grid-template-columns:minmax(5.2rem,7.2rem) 1fr;gap:var(--space-2)}.research-view .analysis-label{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.09em;color:var(--color-muted)}.research-view .analysis-value,.research-view .analysis-illusion-reality-plain,.research-view .analysis-illusion-reality-speaker{color:var(--color-muted)}.research-attr-pill{padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);border:1px solid rgba(15,23,36,.12);background:linear-gradient(120deg,#ffffffbf,#ffffff59),linear-gradient(120deg,#0f17240f,#0f172400);color:var(--color-ink);position:relative;--attr-color: #b7b7b7;--attr-ink: #0f1724;box-shadow:inset 0 0 0 1px #ffffff40}.research-chapter-summary-values{color:var(--color-ink)}.research-attr-name{letter-spacing:.02em}.research-attr-value{min-width:1.7rem;height:1.7rem;border-radius:50%;font-size:var(--text-sm);font-weight:600;background:var(--attr-color);color:var(--attr-ink);box-shadow:inset 0 0 0 1px #ffffff59,0 2px 6px #0f172426}.research-attr-pill[data-delta=down] .research-attr-value{filter:saturate(.9) brightness(.95)}.research-attr-pill[data-delta=up] .research-attr-value{filter:saturate(1.05) brightness(1.02)}[data-theme=dark] .research-attr-pill{border-color:#ffffff14;background:linear-gradient(120deg,#1c232ce6,#141a2266),linear-gradient(120deg,#ffffff0d,#0000);box-shadow:inset 0 0 0 1px #00000059}.research-row{display:grid;grid-template-columns:var(--research-columns, 4rem minmax(0, 2fr) 4rem 5rem);gap:var(--space-2);align-items:start;margin-block:var(--space-4)}.research-row.dragging{opacity:.6}.research-chapter.dragging{opacity:.7}.research-order-handle{cursor:grab}.research-order-handle:active{cursor:grabbing}.research-cell-muted{color:var(--color-muted)}.research-summary-inline{color:var(--color-muted);font-size:var(--text-base)}.research-scene-meta{gap:var(--space-2) var(--space-3)}.research-scene-time,.research-scene-day{white-space:nowrap}.research-scene-score{margin-top:var(--space-1)}.research-scene-score-label{text-transform:uppercase;letter-spacing:.08em;font-size:var(--text-2xs)}.research-scene-score-item{padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--color-line)}.research-scene-score-value{width:1.55rem;height:1.55rem;border-radius:var(--radius-pill);border:1px solid var(--color-line);color:var(--color-accent);font-weight:700;background:var(--color-panel-soft)}.research-character-tag{background:#0f172414;color:var(--color-ink);border:1px solid rgba(15,23,36,.12);transition:transform var(--transition),box-shadow var(--transition)}.research-character-tag:hover,.research-character-tag:focus-visible{transform:translateY(-1px);box-shadow:0 .25rem 1rem var(--overlay-strong);outline:none}.doc-panel-content{min-height:0}.doc-panel-content:empty{display:none}.doc-nav{padding-top:var(--space-4)}.doc-nav-breadcrumbs{align-items:center}.doc-nav-crumb{background:none;padding:0;margin:0;color:inherit;font:inherit;cursor:pointer}.doc-nav-crumb.is-active{color:var(--color-ink);font-weight:600;cursor:default}.doc-nav-sep{color:var(--color-muted)}.doc-nav-grid{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:var(--space-1) var(--space-3)}.doc-nav-link{background:none;padding:0;margin:0;font:inherit;color:var(--color-ink);cursor:pointer;text-align:left;width:100%}.doc-nav-link:hover,.doc-nav-link:focus-visible{color:var(--color-accent);text-decoration:underline;outline:none}.doc-nav-type-button{border:1px solid var(--color-line);border-radius:var(--radius-pill);padding:var(--space-1) var(--space-3);font-size:var(--text-sm);letter-spacing:.03em;text-transform:uppercase;transition:transform var(--transition),box-shadow var(--transition),color var(--transition)}.doc-nav-type-button:hover,.doc-nav-type-button:focus-visible{transform:translateY(-1px);box-shadow:0 .25rem 1rem var(--overlay-strong);color:var(--color-accent);outline:none}.doc-nav-empty{color:var(--color-muted)}.research-moment-tag{gap:var(--space-1);background:var(--moment-bg, rgba(15, 23, 36, .08));color:var(--moment-ink, var(--color-ink));border:1px solid rgba(15,23,36,.12);transition:transform var(--transition),box-shadow var(--transition)}.research-moment-tag:hover,.research-moment-tag:focus-visible{transform:translateY(-1px);box-shadow:0 .25rem 1rem var(--overlay-strong);outline:none}[data-theme=dark] .research-moment-tag{border-color:#ffffff14}[data-theme=dark] .research-character-tag{border-color:#ffffff14;background:#ffffff14}.research-scene-emotions,.research-scene-states{display:flex;flex-wrap:wrap;gap:var(--space-1)}.research-emotion-tag,.research-state-tag{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);font-size:var(--text-sm);letter-spacing:.03em;text-transform:uppercase;background:var(--tag-bg, rgba(15, 23, 36, .08));color:var(--tag-ink, var(--color-ink));border:1px solid rgba(15,23,36,.12);cursor:pointer;transition:transform var(--transition),box-shadow var(--transition)}.research-emotion-tag:hover,.research-state-tag:hover,.research-emotion-tag:focus-visible,.research-state-tag:focus-visible{transform:translateY(-1px);box-shadow:0 .25rem 1rem var(--overlay-strong);outline:none}[data-theme=dark] .research-emotion-tag,[data-theme=dark] .research-state-tag{border-color:#ffffff14}.research-scene-location:before{content:"Lokace: ";text-transform:uppercase;letter-spacing:.08em;font-size:var(--text-sm);color:var(--color-muted);margin-right:var(--space-1)}.research-scene-location[data-location-id]{cursor:pointer}.research-scene-location[data-location-id]:hover,.research-scene-location[data-location-id]:focus-visible{color:var(--color-accent);text-decoration:underline;outline:none}.research-scene-characters:before{content:"Postavy: ";text-transform:uppercase;letter-spacing:.08em;font-size:var(--text-sm);color:var(--color-muted);margin-right:var(--space-1)}.research-purpose-inline{color:var(--color-muted);font-size:var(--text-base)}.research-similarity-warning{--sim-50: #b45309;--sim-80: #b91c1c;--sim-100: #dc2626;color:var(--color-error-ink);font-size:var(--text-sm);margin-bottom:var(--space-1)}.research-similarity-warning .similarity-list{margin:var(--space-1) 0 0;padding-left:var(--space-4);display:grid;gap:var(--space-1)}.research-similarity-warning .similarity-list li{list-style:disc}.research-similarity-warning.is-50{color:var(--sim-50)}.research-similarity-warning.is-80{color:var(--sim-80)}.research-similarity-warning.is-100{color:var(--sim-100)}[data-theme=dark] .research-similarity-warning{--sim-50: #fca5a5;--sim-80: #f87171;--sim-100: #ef4444}.research-scene-attributes{margin-top:var(--space-1)}.research-scene-attributes.is-empty{display:none}.research-target{outline:none;min-width:2.5rem}.research-target[data-has-target=true]:before{content:attr(data-current) " / "}.research-target[data-has-target=false]:before{content:attr(data-current);margin-right:var(--space-1);color:var(--color-muted)}.research-view[data-show-scene-word-count=true] .research-target:before{content:"";margin-right:0}.research-target.target-pending{font-weight:700}@media (max-width: 68.75rem){.app{grid-template-columns:1fr}}.cast-view{max-width:none}.cast-body{width:100%}.cast-list{list-style:none;margin:0;padding:0}.cast-row{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--color-panel-soft, transparent)}.cast-row-details{grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));padding-left:var(--space-6)}.cast-detail-block{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--color-bg);font-size:var(--text-sm);line-height:var(--leading-normal)}.cast-detail-title{font-weight:600;color:var(--color-ink)}.cast-detail-subheading{margin-top:var(--space-1)}.cast-detail-line{color:var(--color-ink)}.cast-detail-reason{color:var(--color-muted);margin-bottom:var(--space-1)}.cast-row.dragging{opacity:.6}.cast-handle{color:var(--color-muted);cursor:grab;user-select:none;flex:0 0 auto}.cast-handle:active{cursor:grabbing}.cast-name{font-family:var(--font-serif, var(--font-ui));font-size:var(--text-base);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:0 1 auto;min-width:3rem;cursor:text}.cast-name:focus{outline:none;border-bottom:1px dashed var(--color-line)}.cast-mbti-badge,.cast-archetype-badge{font-size:var(--text-sm);font-weight:600;letter-spacing:.04em;padding:var(--space-1) var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-pill);color:var(--color-muted);white-space:nowrap;flex:0 0 auto}.cast-archetype-badge{color:var(--color-ink)}.cast-combo-badge{font-size:var(--text-sm);font-weight:600;letter-spacing:.04em;padding:var(--space-1) var(--space-2);border:1px solid var(--color-accent, var(--color-line));border-radius:var(--radius-pill);color:var(--color-accent, var(--color-ink));background:color-mix(in srgb,var(--color-accent, var(--color-ink)) 10%,transparent);white-space:nowrap;flex:0 0 auto}.cast-error{font-size:var(--text-sm);color:var(--color-danger);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.cast-actions{margin-left:auto;flex:0 0 auto}.cast-spinner{width:.72rem;height:.72rem;border-radius:var(--radius-pill);border:1px solid transparent;border-top-color:var(--color-accent);border-right-color:var(--color-accent);opacity:0;pointer-events:none}.cast-spinner.is-loading{opacity:1;animation:cast-spin .7s linear infinite}@keyframes cast-spin{to{transform:rotate(360deg)}}.cast-btn{padding:var(--space-2) var(--space-3);background:transparent;color:var(--color-muted)}.cast-btn:disabled{opacity:.5;cursor:progress}.cast-btn-icon{width:2rem;height:2rem;padding:0}.cast-btn-mbti:hover:not(:disabled),.cast-btn-archetype:hover:not(:disabled){color:var(--color-ink)}.cast-btn-remove:hover:not(:disabled){color:var(--color-danger)}.cast-empty{margin:0;font-family:var(--font-serif, var(--font-ui));font-size:var(--text-base)}.cast-add-input{flex:1 1 auto;font:inherit;padding:var(--space-2) var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink)}.cast-btn-add:hover{color:var(--color-ink)}.cast-tools{width:100%;margin-bottom:var(--space-4)}.cast-occupancy-badge{font-weight:600;letter-spacing:.04em;padding:var(--space-1) var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-pill);white-space:nowrap;flex:0 0 auto}.cast-archetype-badge[data-archetype-doc-id]{cursor:pointer}.cast-archetype-badge[data-archetype-doc-id]:hover{border-color:var(--color-accent);color:var(--color-ink)}.cast-detail-link{font:inherit;font-weight:600;padding:0;background:transparent;color:var(--color-ink);cursor:pointer;text-align:left}.cast-detail-link:hover{color:var(--color-accent);text-decoration:underline}body.boot-pending .app,body.is-anonymous .app{display:none!important}body.boot-pending,body.is-anonymous{background:var(--color-bg, var(--color-bg-light))}.auth-splash{position:fixed;inset:0;grid-template-columns:minmax(240px,320px) minmax(0,1fr) minmax(280px,360px);background:var(--color-bg, var(--color-bg-light));z-index:1;overflow:hidden}.auth-splash>aside,.auth-splash>main{padding:clamp(var(--space-8),4vw,var(--space-12));overflow-y:auto;min-width:0}.auth-splash-left{border-right:1px solid var(--color-line)}.auth-splash-name{font-size:clamp(1.6rem,2.4vw,2.4rem);font-weight:600;letter-spacing:-.01em}.auth-splash-tagline{line-height:var(--leading-normal);color:var(--color-muted)}.auth-splash-menu ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.auth-splash-menu-link{display:block;width:100%;text-align:left;background:none;padding:var(--space-1) 0;font:inherit;cursor:pointer;border-radius:0;line-height:var(--leading-normal)}.auth-splash-menu-link:hover{color:var(--color-ink)}.auth-splash-menu-link.is-active{color:var(--color-ink);font-weight:600}.auth-splash-middle{border-right:1px solid var(--color-line)}.auth-splash-prose{max-width:56ch;width:100%;font-family:var(--font-editor);font-size:var(--text-lg);line-height:var(--leading-normal)}.auth-splash-prose--wide{max-width:none}.auth-splash-prose h1{font-size:clamp(1.3rem,1.7vw,1.6rem);font-weight:600;margin:0 0 var(--space-4);letter-spacing:-.005em}.auth-splash-prose .content-title{font-size:clamp(2.2rem,4vw,3rem);line-height:var(--leading-tight);letter-spacing:-.015em;margin:0 0 var(--space-6)}.auth-splash-prose.auth-splash-prose--wide .content-title{text-align:center}.auth-splash-prose p{margin:0 0 var(--space-4)}.auth-splash-prose blockquote{background:radial-gradient(120% 78% at 50% -12%,color-mix(in srgb,var(--color-surface) 52%,transparent) 0%,transparent 58%),radial-gradient(96% 62% at 52% 10%,color-mix(in srgb,var(--color-accent) 14%,transparent) 0%,transparent 66%),linear-gradient(180deg,color-mix(in srgb,var(--color-bg) 84%,var(--color-surface) 16%) 0%,var(--color-bg) 100%);color:var(--color-accent);margin:0;padding:var(--space-4) 0}.auth-splash-prose ol,.auth-splash-prose ul{margin:0 0 var(--space-4) var(--space-5);padding-left:var(--space-2)}.auth-splash-prose li{margin:var(--space-1) 0}.auth-splash-prose strong{font-weight:600}.content-image-figure{margin:0}.content-image{display:block;width:100%;height:auto}.auth-splash-middle:has(.hero-mini){padding:0;align-items:stretch}.auth-splash-prose:has(.hero-mini){max-width:none}.auth-splash-form{width:100%;max-width:280px}.auth-splash-form h2{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.1em;color:var(--color-muted);margin:0 0 var(--space-2);font-weight:600}.auth-splash-field{font-size:var(--text-sm)}.auth-splash-field span{text-transform:uppercase;letter-spacing:.07em;color:var(--color-muted)}.auth-splash-field input{font:inherit;font-size:var(--text-base);padding:var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-panel-soft, transparent);color:inherit}.auth-splash-field input:focus{outline:none;border-color:var(--color-ink)}.auth-splash-submit{font:inherit;font-size:var(--text-sm);font-weight:600;letter-spacing:.04em;padding:var(--space-3);background:var(--color-ink);color:var(--color-bg, var(--color-bg-light));cursor:pointer;margin-top:var(--space-2)}.auth-splash-submit:hover:not(:disabled){opacity:.92}.auth-splash-submit:disabled{opacity:.6;cursor:progress}.auth-splash-error{font-size:var(--text-sm);color:var(--color-danger);margin-top:var(--space-1)}.hero-mini{position:relative;width:100%;min-height:320vh;--scroll-progress: 0}.hero-mini-stage{position:sticky;top:0;width:100%;height:100vh;overflow:hidden;isolation:isolate}.hero-mini-stage:before{content:"";position:absolute;inset:0 0 auto;height:88%;z-index:2;pointer-events:none;background:linear-gradient(180deg,color-mix(in srgb,var(--color-bg) 72%,var(--color-surface) 28%) 0%,color-mix(in srgb,var(--color-bg) 34%,transparent) 48%,transparent 100%)}.hero-mini-bg{position:absolute;inset:0;z-index:0;overflow:hidden;background:radial-gradient(120% 78% at 50% -12%,color-mix(in srgb,var(--color-surface) 52%,transparent) 0%,transparent 58%),radial-gradient(96% 62% at 52% 10%,color-mix(in srgb,var(--color-accent) 14%,transparent) 0%,transparent 66%),linear-gradient(180deg,color-mix(in srgb,var(--color-bg) 84%,var(--color-surface) 16%) 0%,var(--color-bg) 100%)}.hero-mini-bg:before,.hero-mini-bg:after{content:"";position:absolute;inset:-18%;pointer-events:none}.hero-mini-bg:before{background:radial-gradient(34% 28% at 22% 36%,color-mix(in srgb,var(--color-ink) 28%,transparent) 0%,transparent 72%),radial-gradient(44% 34% at 82% 16%,color-mix(in srgb,var(--color-accent) 42%,transparent) 0%,transparent 70%),radial-gradient(30% 26% at 68% 30%,color-mix(in srgb,var(--color-ink) 34%,transparent) 0%,transparent 74%),radial-gradient(34% 26% at 56% 62%,color-mix(in srgb,var(--color-accent) 24%,transparent) 0%,transparent 70%),radial-gradient(32% 24% at 80% 80%,color-mix(in srgb,var(--color-ink) 20%,transparent) 0%,transparent 68%);filter:blur(16px);opacity:.88;animation:heroSmokeDriftA 5s ease-in-out infinite alternate}.hero-mini-bg:after{background:radial-gradient(44% 32% at 80% 14%,color-mix(in srgb,var(--color-surface) 62%,transparent) 0%,transparent 74%),radial-gradient(38% 30% at 70% 28%,color-mix(in srgb,var(--color-surface) 48%,transparent) 0%,transparent 74%),radial-gradient(44% 36% at 58% 68%,color-mix(in srgb,var(--color-surface) 44%,transparent) 0%,transparent 76%),radial-gradient(30% 24% at 24% 76%,color-mix(in srgb,var(--color-accent) 14%,transparent) 0%,transparent 74%);filter:blur(14px);opacity:.8;animation:heroSmokeDriftB 5s ease-in-out infinite alternate}@keyframes heroSmokeDriftA{0%{transform:translate3d(-7%,-4%,0) scale(1.01)}30%{transform:translate3d(8%,-7%,0) scale(1.08)}65%{transform:translate3d(5%,6%,0) scale(1.04)}to{transform:translate3d(-6%,8%,0) scale(1.09)}}@keyframes heroSmokeDriftB{0%{transform:translate3d(6%,-7%,0) scale(1.02)}35%{transform:translate3d(-7%,-2%,0) scale(1.08)}70%{transform:translate3d(7%,4%,0) scale(1.05)}to{transform:translate3d(-6%,7%,0) scale(1.09)}}.hero-mini-parallax{position:absolute;inset:0;z-index:1;pointer-events:none}.parallax-item{position:absolute;bottom:0;left:0;right:0;width:100%;transform:translateY(calc((1 - var(--scroll-progress, 0)) * var(--parallax-offset, 60%)));will-change:transform}.parallax-item img{width:100%;height:auto;display:block;object-position:bottom}.parallax-mountains{z-index:1;--parallax-offset: 80%}.parallax-castle{z-index:2;--parallax-offset: 55%}.parallax-tree{z-index:3;--parallax-offset: 25%}.hero-mini-line{position:absolute;left:50%;top:50%;z-index:4;margin:0;padding:0 var(--space-5);text-align:center;font-weight:500;font-size:clamp(2.4rem,4.5vw,3.6rem);text-wrap:balance;line-height:var(--leading-tight);letter-spacing:-.01em;pointer-events:none;max-width:16ch;transform:translate(-50%,-50%);opacity:0;transition:opacity 3s cubic-bezier(.45,0,.55,1)}.hero-mini[data-phase=intro] .hero-mini-line--top{opacity:1;transition:opacity 2s cubic-bezier(.32,0,.4,1) .3s}.hero-mini[data-phase=fading-top] .hero-mini-line--top,.hero-mini[data-phase=revealing] .hero-mini-line--top,.hero-mini[data-phase=fading-bottom] .hero-mini-line--top{opacity:0}.hero-mini-parallax{transition:opacity 1s cubic-bezier(.45,0,.55,1)}.hero-mini[data-phase=revealing] .hero-mini-parallax,.hero-mini[data-phase=fading-bottom] .hero-mini-parallax{opacity:0}.hero-mini[data-phase=revealing] .hero-mini-line--bottom{opacity:1}.hero-mini[data-phase=fading-bottom] .hero-mini-line--bottom{opacity:0;transition:opacity 5s cubic-bezier(.45,0,.55,1)}@media (max-width: 900px){.auth-splash{grid-template-columns:1fr;grid-template-rows:auto 1fr auto;overflow-y:auto}.auth-splash-left{flex-direction:column;justify-content:flex-start;gap:var(--space-4);border-right:none;border-bottom:1px solid var(--color-line)}.auth-splash-middle{border-right:none;border-bottom:1px solid var(--color-line)}.auth-splash>aside,.auth-splash>main{overflow:visible}}:root{--plot-act-1: #5f7ea6;--plot-act-2: #9a6b3f;--plot-act-3: #9a3d3d;--plot-score-clarity: #2f7de1;--plot-score-conflict: #db4335;--plot-score-cost: #d89a18;--plot-score-illusion-vs-reality: #d34a84;--plot-score-reader-fit: var(--color-success-soft);--plot-score-scene-cost: #b78318;--plot-score-specificity: #7a5ad1;--plot-score-attribute-fit: #0094a6;--plot-score-protagonist-feels: #c0539d;--plot-score-things-go-wrong: #5a6470}.research-emotion-tag[data-emotion-id="01"]{--tag-bg: #7b2a2a;--tag-ink: #ffe7e7}.research-emotion-tag[data-emotion-id="05"]{--tag-bg: #6b5d4d;--tag-ink: #f6ead5}.research-emotion-tag[data-emotion-id="08"]{--tag-bg: #4a3d6b;--tag-ink: #efe7ff}.research-emotion-tag[data-emotion-id="12"]{--tag-bg: #6b4a5a;--tag-ink: #ffe6f0}.research-emotion-tag[data-emotion-id="16"]{--tag-bg: #4b5b7a;--tag-ink: #e6efff}.research-emotion-tag[data-emotion-id="20"]{--tag-bg: #4a545a;--tag-ink: #e8eef2}.research-emotion-tag[data-emotion-id="24"]{--tag-bg: #5b3d2e;--tag-ink: #f7e5d9}.research-emotion-tag[data-emotion-id="28"]{--tag-bg: #7b3f2a;--tag-ink: #ffe6d9}.research-emotion-tag[data-emotion-id="32"]{--tag-bg: #4a4a4a;--tag-ink: #f1f1f1}.research-emotion-tag[data-emotion-id="36"]{--tag-bg: #4a6b3a;--tag-ink: #e7f7df}.research-emotion-tag[data-emotion-id="40"]{--tag-bg: #8a2f2f;--tag-ink: #ffe0e0}.research-emotion-tag[data-emotion-id="44"]{--tag-bg: #2f4f6a;--tag-ink: #e2f2ff}.research-emotion-tag[data-emotion-id="46"]{--tag-bg: #6b5a2a;--tag-ink: #f8f1d6}.research-emotion-tag[data-emotion-id="48"]{--tag-bg: #6b3f2a;--tag-ink: #f8e6d6}.research-emotion-tag[data-emotion-id="56"]{--tag-bg: #5b6b7a;--tag-ink: #e6f0ff}.research-emotion-tag[data-emotion-id="60"]{--tag-bg: #7a6b2a;--tag-ink: #fff3cc}.research-emotion-tag[data-emotion-id="64"]{--tag-bg: #58636b;--tag-ink: #e6edf2}.research-emotion-tag[data-emotion-id="68"]{--tag-bg: #6b6b6b;--tag-ink: #f2f2f2}.research-emotion-tag[data-emotion-id="72"]{--tag-bg: #3d6b4a;--tag-ink: #e7f7eb}.research-emotion-tag[data-emotion-id="76"]{--tag-bg: #4a6b5b;--tag-ink: #e6f7f0}.research-emotion-tag[data-emotion-id="80"]{--tag-bg: #2f6b6b;--tag-ink: #dff7f7}.research-emotion-tag[data-emotion-id="84"]{--tag-bg: #3a5a6b;--tag-ink: #e6f3ff}.research-emotion-tag[data-emotion-id="88"]{--tag-bg: #4a6b7a;--tag-ink: #e6f4ff}.research-emotion-tag[data-emotion-id="92"]{--tag-bg: #7a3a3a;--tag-ink: #ffe6e6}.research-emotion-tag[data-emotion-id="95"]{--tag-bg: #8a6b2a;--tag-ink: #fff1cc}.research-emotion-tag[data-emotion-id="97"]{--tag-bg: #7a4a6b;--tag-ink: #ffe6f7}.research-emotion-tag[data-emotion-id="99"]{--tag-bg: #8a4a2a;--tag-ink: #ffe6d6}.research-moment-tag[data-moment-id="1"]{--moment-bg: #c7d2e3;--moment-ink: #1a2433}.research-moment-tag[data-moment-id="2"]{--moment-bg: #e6dcc6;--moment-ink: #2a2318}.research-moment-tag[data-moment-id="3"]{--moment-bg: #bfe3c6;--moment-ink: #1f2b22}.research-moment-tag[data-moment-id="4"]{--moment-bg: #f1b0a2;--moment-ink: #32120e}.research-moment-tag[data-moment-id="5"]{--moment-bg: #b9c9f1;--moment-ink: #1a2233}.research-moment-tag[data-moment-id="6"]{--moment-bg: #f1c08a;--moment-ink: #3a2310}.research-moment-tag[data-moment-id="7"]{--moment-bg: #92d1c5;--moment-ink: #0f2c2a}.research-moment-tag[data-moment-id="8"]{--moment-bg: #f08a8a;--moment-ink: #3a1010}.research-moment-tag[data-moment-id="9"]{--moment-bg: #c3b6f2;--moment-ink: #241a3a}.research-moment-tag[data-moment-id="10"]{--moment-bg: #f1d58a;--moment-ink: #3a2a10}.research-moment-tag[data-moment-id="11"]{--moment-bg: #a78bd6;--moment-ink: #23143b}.research-moment-tag[data-moment-id="12"]{--moment-bg: #9fb0c0;--moment-ink: #1a2430}.research-moment-tag[data-moment-id="13"]{--moment-bg: #c7d68b;--moment-ink: #2a3010}.research-moment-tag[data-moment-id="14"]{--moment-bg: #f3a35b;--moment-ink: #3a1f0b}.research-moment-tag[data-moment-id="15"]{--moment-bg: #d87373;--moment-ink: #2b0f0f}.research-moment-tag[data-moment-id="16"]{--moment-bg: #f2da8a;--moment-ink: #3a2a10}.research-moment-tag[data-moment-id="17"]{--moment-bg: #cc7fbf;--moment-ink: #33102e}.research-moment-tag[data-moment-id="18"]{--moment-bg: #d45b5b;--moment-ink: #2b0a0a}.research-moment-tag[data-moment-id="19"]{--moment-bg: #6fa2d9;--moment-ink: #0f1c2a}.research-moment-tag[data-moment-id="20"]{--moment-bg: #d4d1c8;--moment-ink: #2a2620}[data-theme=dark] .research-moment-tag[data-moment-id="1"]{--moment-bg: #4c6680;--moment-ink: #eef4ff}[data-theme=dark] .research-moment-tag[data-moment-id="2"]{--moment-bg: #6a5b43;--moment-ink: #f7ead4}[data-theme=dark] .research-moment-tag[data-moment-id="3"]{--moment-bg: #3d6a4a;--moment-ink: #e7f7eb}[data-theme=dark] .research-moment-tag[data-moment-id="4"]{--moment-bg: #8b3f33;--moment-ink: #ffe6de}[data-theme=dark] .research-moment-tag[data-moment-id="5"]{--moment-bg: #4a5f88;--moment-ink: #edf2ff}[data-theme=dark] .research-moment-tag[data-moment-id="6"]{--moment-bg: #8a5a2a;--moment-ink: #ffe9cc}[data-theme=dark] .research-moment-tag[data-moment-id="7"]{--moment-bg: #2f6f66;--moment-ink: #dff7f3}[data-theme=dark] .research-moment-tag[data-moment-id="8"]{--moment-bg: #8a2f2f;--moment-ink: #ffdede}[data-theme=dark] .research-moment-tag[data-moment-id="9"]{--moment-bg: #5a4f8a;--moment-ink: #efe9ff}[data-theme=dark] .research-moment-tag[data-moment-id="10"]{--moment-bg: #8a6a2a;--moment-ink: #fff2cc}[data-theme=dark] .research-moment-tag[data-moment-id="11"]{--moment-bg: #4b357a;--moment-ink: #efe6ff}[data-theme=dark] .research-moment-tag[data-moment-id="12"]{--moment-bg: #506173;--moment-ink: #eef3f9}[data-theme=dark] .research-moment-tag[data-moment-id="13"]{--moment-bg: #5c6b2a;--moment-ink: #f1f7cc}[data-theme=dark] .research-moment-tag[data-moment-id="14"]{--moment-bg: #b06224;--moment-ink: #ffe6cc}[data-theme=dark] .research-moment-tag[data-moment-id="15"]{--moment-bg: #8a2f2f;--moment-ink: #ffdede}[data-theme=dark] .research-moment-tag[data-moment-id="16"]{--moment-bg: #8a6a2a;--moment-ink: #fff2cc}[data-theme=dark] .research-moment-tag[data-moment-id="17"]{--moment-bg: #7a3a6b;--moment-ink: #ffe3f5}[data-theme=dark] .research-moment-tag[data-moment-id="18"]{--moment-bg: #a32f2f;--moment-ink: #ffe0e0}[data-theme=dark] .research-moment-tag[data-moment-id="19"]{--moment-bg: #345b8a;--moment-ink: #e0ecff}[data-theme=dark] .research-moment-tag[data-moment-id="20"]{--moment-bg: #6b6458;--moment-ink: #f2eee6}.research-state-tag[data-state-id="05"]{--tag-bg: #6b5a4a;--tag-ink: #f3e6d8}.research-state-tag[data-state-id="10"]{--tag-bg: #6b4a6b;--tag-ink: #f3e6ff}.research-state-tag[data-state-id="15"]{--tag-bg: #8a2f2f;--tag-ink: #ffe0e0}.research-state-tag[data-state-id="20"]{--tag-bg: #4a6b7a;--tag-ink: #e6f4ff}.research-state-tag[data-state-id="30"]{--tag-bg: #6b4a2a;--tag-ink: #f8e6d6}.research-state-tag[data-state-id="35"]{--tag-bg: #8a6b2a;--tag-ink: #fff1cc}.research-state-tag[data-state-id="40"]{--tag-bg: #2f4f6a;--tag-ink: #e2f2ff}.research-state-tag[data-state-id="55"]{--tag-bg: #5b6b7a;--tag-ink: #e6f0ff}.research-state-tag[data-state-id="65"]{--tag-bg: #6b4a7a;--tag-ink: #f1e6ff}.research-state-tag[data-state-id="80"]{--tag-bg: #8a5a2a;--tag-ink: #ffe9cc}.research-attr-pill[data-attribute-id="1"]{--attr-color: #9bb9d6;--attr-ink: #0b1d2b}.research-attr-pill[data-attribute-id="2"]{--attr-color: #d86b56;--attr-ink: #2a0f0a}.research-attr-pill[data-attribute-id="3"]{--attr-color: #caa04a;--attr-ink: #2a1b06}.research-attr-pill[data-attribute-id="4"]{--attr-color: #d884a7;--attr-ink: #2a0f1b}.research-attr-pill[data-attribute-id="8"]{--attr-color: #7f95a8;--attr-ink: #0f1a24}.research-attr-pill[data-attribute-id="9"]{--attr-color: #5eb6b0;--attr-ink: #042523}.research-attr-pill[data-attribute-id="10"]{--attr-color: #9a87c3;--attr-ink: #1b1433}.research-attr-pill[data-attribute-id="11"]{--attr-color: #e6e2d8;--attr-ink: #2b2720}.research-attr-pill[data-attribute-id="12"]{--attr-color: #7db08a;--attr-ink: #0e1f12}.research-attr-pill[data-attribute-id="13"]{--attr-color: #c7773e;--attr-ink: #2a1406}.research-attr-pill[data-attribute-id="14"]{--attr-color: #2f2f3a;--attr-ink: #f2e6c9}[data-theme=dark] .research-attr-pill[data-attribute-id="1"]{--attr-color: #4c7aa6;--attr-ink: #e6f0fb}[data-theme=dark] .research-attr-pill[data-attribute-id="2"]{--attr-color: #b04b3a;--attr-ink: #ffe6df}[data-theme=dark] .research-attr-pill[data-attribute-id="3"]{--attr-color: #b78b2e;--attr-ink: #fff1cf}[data-theme=dark] .research-attr-pill[data-attribute-id="4"]{--attr-color: #b35a7a;--attr-ink: #ffe7f1}[data-theme=dark] .research-attr-pill[data-attribute-id="8"]{--attr-color: #586b83;--attr-ink: #e4eef9}[data-theme=dark] .research-attr-pill[data-attribute-id="9"]{--attr-color: #2f8f88;--attr-ink: #dff8f5}[data-theme=dark] .research-attr-pill[data-attribute-id="10"]{--attr-color: #6a58a6;--attr-ink: #efe7ff}[data-theme=dark] .research-attr-pill[data-attribute-id="11"]{--attr-color: #b7b0a3;--attr-ink: #1c1a16}[data-theme=dark] .research-attr-pill[data-attribute-id="12"]{--attr-color: #4b8262;--attr-ink: #e0f6ea}[data-theme=dark] .research-attr-pill[data-attribute-id="13"]{--attr-color: #a85d2d;--attr-ink: #ffe7d3}[data-theme=dark] .research-attr-pill[data-attribute-id="14"]{--attr-color: #1b1b22;--attr-ink: #f5e9cf}.mobile-bar,.mobile-backdrop{display:none}@media (max-width: 1180px){.app{grid-template-columns:1fr!important;gap:0;padding:0;padding-top:calc(var(--space-12) + env(safe-area-inset-top))}.heading-block{padding-bottom:var(--space-6);margin-bottom:var(--space-2)}.app:not(.editor-mode) .heading-block{display:none}.settings-shortcuts-card{display:none}.mobile-bar{display:flex;justify-content:space-between;position:fixed;top:0;left:0;right:0;height:calc(3.25rem + env(safe-area-inset-top));padding:env(safe-area-inset-top) var(--space-2) 0;background:var(--color-bg);z-index:var(--z-mobile-bar)}.mobile-bar-title{flex:1 1 auto;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-bar-close{flex:0 0 auto;width:1.5rem;height:1.5rem;background:none;color:var(--color-ink);cursor:pointer;padding:0}.mobile-bar-btn{flex:0 0 auto;width:2.75rem;height:2.75rem;background:none;color:var(--color-ink);cursor:pointer}.text-panel{border-radius:0;box-shadow:none;padding-top:clamp(var(--space-4),15vw,var(--space-12));padding-inline:clamp(var(--space-4),15vw,var(--space-8));height:calc(100dvh - clamp(1rem,15vw,3rem))}.editor-mode .text-panel{padding-inline:var(--space-4)}.view-mode .text-panel{padding-top:var(--space-4)}.chapter-title-card{margin-block-start:0;margin-block-end:var(--space-8)}.page-count{top:clamp(var(--space-4),15vw,var(--space-8))}#scene-text .scene-block{width:calc(100% - 1rem);max-width:650px;margin:auto;line-height:var(--space-8)}#scene-text p{font-size:1.25rem;text-indent:var(--space-4)}.book-title-main{font-size:inherit}.binder{display:flex!important;left:0;transform:translate(-100%)}.meta-panel{display:grid!important;right:0;transform:translate(100%)}.binder,.meta-panel{opacity:100;position:fixed;top:0;bottom:0;width:min(88vw,21rem);margin:0;border-radius:0;overflow:auto;z-index:var(--z-panel);transition:transform .22s ease;padding-top:calc(var(--panel-padding) + env(safe-area-inset-top))}.chapter-list,.scene-list{gap:0}.scene-list{margin-block:0;margin-inline:var(--space-6)}.app.binder-open .binder,.app.meta-open .meta-panel{transform:none}.app.binder-open .mobile-backdrop,.app.meta-open .mobile-backdrop{display:block;position:fixed;inset:0;background:#14171ba6;z-index:var(--z-mobile-backdrop);backdrop-filter:blur(2px)}.scene-list button,.chapter-left{min-height:2.25rem}.auth-splash>aside,.auth-splash>main{padding:var(--space-16)}.auth-splash-left{background:var(--color-panel-soft)}.auth-splash-middle:has(.hero-mini){display:none}.auth-splash-prose p,.auth-splash-prose ul{font-size:var(--text-base);line-height:2rem}.auth-splash-prose h3{font-size:var(--text-lg);line-height:2rem}.database-icon-btn{min-height:2.5rem}.database-icon-label{display:none}.database-sidebar{min-height:min-content}}
