:root{--bg: #f5f5f7;--bg-deep: #ececee;--paper: #ffffff;--card: #ffffff;--surface: #ffffff;--surface-2: #f5f5f7;--surface-3: #e8e8ed;--border: rgba(0, 0, 0, .08);--border-strong: rgba(0, 0, 0, .16);--ink: #1d1d1f;--ink-soft: #6e6e73;--ink-faint: #86868b;--accent: #0071e3;--accent-soft: #eaf3fd;--accent-ink: #ffffff;--btn: #0071e3;--btn-hover: #0077ed;--btn-ink: #ffffff;--danger: #d70015;--danger-soft: #ffe9e9;--ok: #068a3c;--ok-soft: #e8f7ee;--warn: #a24a00;--warn-soft: #fff3e6;--glass: rgba(255, 255, 255, .8);--glass-strong: rgba(255, 255, 255, .9);--glass-border: rgba(0, 0, 0, .06);--glass-blur: saturate(180%) blur(20px);--glow-0: rgba(255, 255, 255, .5);--glow-1: rgba(255, 255, 255, 0);--glow-2: rgba(0, 0, 0, 0);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .03), 0 4px 14px rgba(0, 0, 0, .04);--shadow-md: 0 2px 6px rgba(0, 0, 0, .04), 0 12px 32px rgba(0, 0, 0, .07);--shadow-lg: 0 6px 18px rgba(0, 0, 0, .06), 0 28px 70px rgba(0, 0, 0, .1);--inset-top: inset 0 1px 0 rgba(255, 255, 255, .9);--radius: 12px;--radius-lg: 18px;--radius-xl: 28px;--radius-pill: 980px;--ease-ios: cubic-bezier(.32, .72, 0, 1);--dur-fast: .18s;--dur-base: .28s;--header-h: 56px;--sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro SC", "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--serif: "Noto Serif SC", "Songti SC", "Source Han Serif SC", "SimSun", Georgia, serif;--mono: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236e6e73' d='M2.2 4.4 6 8.2 9.8 4.4'/%3E%3C/svg%3E");color-scheme:light}[data-theme=dark]{--bg: #000000;--bg-deep: #000000;--paper: #161617;--card: #1d1d1f;--surface: #1d1d1f;--surface-2: #2c2c2e;--surface-3: #3a3a3c;--border: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .2);--ink: #f5f5f7;--ink-soft: #a1a1a6;--ink-faint: #6e6e73;--accent: #2997ff;--select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23a1a1a6' d='M2.2 4.4 6 8.2 9.8 4.4'/%3E%3C/svg%3E");--accent-soft: rgba(41, 151, 255, .14);--accent-ink: #ffffff;--btn: #0071e3;--btn-hover: #2997ff;--btn-ink: #ffffff;--danger: #ff453a;--danger-soft: rgba(255, 69, 58, .14);--ok: #30d158;--ok-soft: rgba(48, 209, 88, .12);--warn: #ff9f0a;--warn-soft: rgba(255, 159, 10, .12);--glass: rgba(29, 29, 31, .72);--glass-strong: rgba(22, 22, 23, .9);--glass-border: rgba(255, 255, 255, .09);--glow-0: rgba(255, 255, 255, .03);--glow-1: rgba(255, 255, 255, 0);--glow-2: rgba(255, 255, 255, 0);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5), 0 6px 20px rgba(0, 0, 0, .35);--shadow-md: 0 2px 8px rgba(0, 0, 0, .5), 0 18px 44px rgba(0, 0, 0, .45);--shadow-lg: 0 10px 30px rgba(0, 0, 0, .55), 0 40px 90px rgba(0, 0, 0, .6);--inset-top: inset 0 1px 0 rgba(255, 255, 255, .06);color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}#root{position:relative;z-index:1}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;opacity:.012;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");background-size:160px 160px}[data-theme=dark] body:after{opacity:.03;mix-blend-mode:screen}h1,h2,h3{margin:0 0 .4em;line-height:1.3;font-weight:600}h1{font-size:1.5rem;letter-spacing:-.01em}h2{font-size:1rem}h3{font-size:.9rem}p{margin:0 0 .6em}ul{margin:0;padding:0;list-style:none}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.muted{color:var(--ink-soft)}.small{font-size:.82rem}.clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.boot{display:grid;place-items:center;height:100%;color:var(--ink-soft)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion: reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}input,select,textarea,button{font:inherit;color:inherit}input,select,textarea{width:100%;padding:.5rem .65rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .15s ease,background .15s ease}select{color:var(--ink);padding-right:2rem;background-color:var(--surface);background-image:var(--select-chevron);background-repeat:no-repeat;background-position:right .55rem center;background-size:.65rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}select option{color:var(--ink);background-color:var(--surface)}input:hover,select:hover,textarea:hover{border-color:var(--border-strong)}textarea{resize:vertical;min-height:60px;line-height:1.6}label{display:block;font-size:.85rem;color:var(--ink-soft)}label input,label select,label textarea{margin-top:.25rem;color:var(--ink)}button{cursor:pointer;padding:.45rem .8rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:background var(--dur-fast) var(--ease-ios),border-color var(--dur-fast) var(--ease-ios),opacity var(--dur-fast) var(--ease-ios),transform var(--dur-fast) var(--ease-ios)}button:active:not(:disabled){transform:scale(.985)}@media (prefers-reduced-motion: reduce){button:active:not(:disabled){transform:none}}button:hover{background:var(--surface-2)}button:disabled{opacity:.5;cursor:not-allowed}.primary:disabled{opacity:1;background:var(--surface-2);color:var(--ink-faint);border-color:var(--border);box-shadow:none}.primary{background:var(--btn);border-color:transparent;border-radius:var(--radius-pill);padding:.5rem 1.1rem;color:var(--btn-ink);font-weight:500;letter-spacing:.01em;box-shadow:none}.primary:hover{background:var(--btn-hover);filter:none}.primary:active{filter:brightness(.94)}.ghost-button{background:transparent}.ghost-button:hover{background:var(--surface-2)}.ghost-button.danger{color:var(--danger);border-color:var(--border)}.ghost-button.danger:hover{background:var(--danger-soft)}.primary-button{background:var(--accent);color:var(--accent-ink);border:1px solid var(--accent);font-weight:500;transition:background .18s var(--ease-ios),transform .12s var(--ease-ios)}.primary-button:hover{background:color-mix(in srgb,var(--accent) 88%,black)}.primary-button:active{transform:scale(.985)}.block,.wide{width:100%}.link-button{background:none;border:none;padding:0 0 0 .35rem;color:var(--accent);text-decoration:underline;font-size:inherit}.icon-button{width:26px;height:26px;padding:0;display:grid;place-items:center;background:transparent;border-color:transparent;color:var(--ink-faint);border-radius:6px}.icon-button:hover{background:var(--surface-2);color:var(--ink)}.icon-button.danger:hover{background:var(--danger-soft);color:var(--danger)}.row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:.6rem}.notice{padding:.5rem .7rem;background:var(--accent-soft);border-radius:var(--radius);color:var(--ink);font-size:.85rem}.idea-develop-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;display:grid;place-items:center;padding:1.25rem;background:#14141261;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:idea-develop-dialog-in var(--dur-enter) var(--ease-out) both}.idea-develop-dialog{position:relative;width:min(22rem,100%);padding:1.35rem 1.15rem 1.1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.idea-develop-dialog-close{position:absolute;top:.35rem;right:.35rem;width:28px;height:28px;display:grid;place-items:center;padding:0;border:none;border-radius:8px;background:transparent;color:var(--ink-faint);font-size:1.15rem;line-height:1;cursor:pointer}.idea-develop-dialog-close:hover{background:var(--surface-3);color:var(--ink-soft)}.idea-develop-dialog-msg{margin:0;padding-right:1.25rem;font-size:.92rem;line-height:1.65;color:var(--ink)}@keyframes idea-develop-dialog-in{0%{opacity:0}to{opacity:1}}.form-error{padding:.5rem .7rem;background:var(--danger-soft);color:var(--danger);border-radius:var(--radius);font-size:.85rem}.app-shell{display:flex;flex-direction:column;height:100%;min-height:0}.app-header{display:flex;align-items:center;gap:1.35rem;height:var(--header-h);padding:0 1.35rem;background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:.5rem;color:var(--ink);font-weight:600}.brand:hover{text-decoration:none}.brand-mark{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:var(--ink);color:var(--bg);font-family:var(--serif);font-size:1rem}[data-theme=dark] .brand-mark{background:#f5f5f7;color:#1d1d1f;box-shadow:none}.brand-mark.large{width:46px;height:46px;font-size:1.4rem;border-radius:12px}.brand-text{display:flex;align-items:baseline;gap:.3rem;letter-spacing:.02em}.brand-sub{font-size:.7rem;color:var(--ink-faint);letter-spacing:.16em;text-transform:uppercase}.app-nav{display:flex;gap:.15rem}.app-nav a{padding:.3rem .6rem;border-radius:8px;color:var(--ink-soft);font-size:.84rem;letter-spacing:.005em}.app-nav a:hover{background:transparent;color:var(--ink);text-decoration:none}.app-nav a.active{background:transparent;color:var(--ink);font-weight:600}.app-header-right{margin-left:auto;display:flex;align-items:center;gap:.5rem}.theme-select{width:auto;padding:.3rem 1.35rem .3rem .45rem;font-size:.82rem;background-color:transparent}.app-main{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.canvas-keep{flex:1;min-height:0;display:flex;flex-direction:column}.canvas-keep[hidden]{display:none!important}.mobile-nav{display:none}.sync-badge{display:flex;align-items:center;gap:.35rem;padding:.25rem .6rem;border-radius:999px;background:var(--surface-2);font-size:.8rem;color:var(--ink-soft)}.sync-dot{width:7px;height:7px;border-radius:50%;background:var(--ok)}.sync-syncing .sync-dot{background:var(--accent);animation:pulse 1s ease-in-out infinite}.sync-offline .sync-dot{background:var(--ink-faint)}.sync-conflict .sync-dot{background:var(--warn)}.sync-error .sync-dot{background:var(--danger)}.sync-badge .link-button{padding:0;font-size:.8rem}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.page{flex:1;min-height:0;overflow-y:auto;padding:1.75rem clamp(1rem,4vw,3rem) 3rem;max-width:1100px;width:100%;margin:0 auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.page-head h1{margin-bottom:.15rem}.page-head p{margin:0;font-size:.88rem}.head-actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.empty-state{padding:3rem 1rem;text-align:center;border:1px dashed var(--border);border-radius:var(--radius-lg);background:var(--surface)}.empty-state h2{margin-bottom:.3rem}.empty-state .primary{margin-top:.75rem}.page-foot{display:flex;justify-content:flex-end;gap:1.25rem;margin-top:2.5rem;padding-top:1.25rem;border-top:1px solid var(--border)}.muted-link{color:var(--ink-faint);font-size:.85rem;text-decoration:none;transition:color .15s ease}.muted-link:hover{color:var(--ink)}.trash-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.trash-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.trash-item-body{min-width:0;flex:1}.trash-item-title{font-size:1.02rem;margin-bottom:.25rem}.trash-item-meta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.4rem;font-size:.78rem;color:var(--ink-faint)}.trash-item-actions{display:flex;gap:.5rem;flex:none}.work-trash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:1.2rem}.work-trash-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:none;padding:0;background:#00000042;cursor:default;animation:work-trash-fade .12s var(--ease-ios)}[data-theme=dark] .work-trash-backdrop{background:#0000008f}@keyframes work-trash-fade{0%{opacity:0}}.work-trash-panel{position:relative;width:min(27rem,100%);max-height:min(76vh,34rem);display:flex;flex-direction:column;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}.work-trash-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:1rem .9rem .8rem 1.1rem;border-bottom:1px solid var(--border)}.work-trash-head h2{margin:0;font-size:1rem;font-weight:600}.work-trash-head p{margin:.2rem 0 0}.work-trash-body{padding:.35rem .6rem .9rem;overflow-y:auto;overscroll-behavior:contain}.work-trash-group+.work-trash-group{margin-top:.8rem}.work-trash-group-title{margin:.7rem .5rem .3rem;font-size:.72rem;font-weight:600;letter-spacing:.04em;color:var(--ink-faint)}.work-trash-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px}.work-trash-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem .55rem;border-radius:10px}.work-trash-item:hover{background:var(--surface-2)}.work-trash-item-body{min-width:0;display:flex;flex-direction:column;gap:.12rem}.work-trash-item-title{font-size:.88rem;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.work-trash-item-meta{font-size:.72rem}.work-trash-item .ghost-button{flex:none;padding:.28rem .7rem;font-size:.78rem}.work-trash-hint{margin:.4rem .5rem .6rem;padding:.5rem .65rem;border-radius:8px;background:var(--surface-2);color:var(--ink-soft);font-size:.78rem;line-height:1.5}.work-trash-empty{padding:1.1rem .8rem;text-align:center;line-height:1.6}@media (max-width: 560px){.trash-item{flex-direction:column;align-items:stretch}.trash-item-actions{justify-content:flex-end}}.card{padding:1.1rem 1.2rem;margin-bottom:1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.card>h2{margin-bottom:.35rem}.card>p{margin-bottom:.75rem}.warning-card{border-color:var(--warn);background:var(--warn-soft)}.danger-card{border-color:var(--danger-soft)}.chip{display:inline-flex;align-items:center;padding:.05rem .45rem;border-radius:999px;background:var(--surface-2);color:var(--ink-soft);font-size:.72rem;letter-spacing:.02em;white-space:nowrap}.chip-draft{background:var(--surface-2);color:var(--ink-soft)}.chip-in_progress{background:var(--accent-soft);color:var(--accent)}.chip-complete{background:var(--ok-soft);color:var(--ok)}.chip-archived{background:var(--surface-3);color:var(--ink-faint)}.chip-sync-clean{background:var(--ok-soft);color:var(--ok)}.chip-sync-pending{background:var(--warn-soft);color:var(--warn)}.chip-sync-conflict,.chip-sync-error{background:var(--danger-soft);color:var(--danger)}.chip-idea-inbox{background:var(--accent-soft);color:var(--accent)}.chip-idea-developing{background:var(--warn-soft);color:var(--warn)}.chip-idea-used{background:var(--ok-soft);color:var(--ok)}.chip-idea-archived{background:var(--surface-3);color:var(--ink-faint)}.chip-kind-character,.chip-kind-location,.chip-kind-rule,.chip-kind-organization,.chip-kind-item,.chip-kind-other{background:var(--surface-2);color:var(--ink-soft)}.chip-current{margin-left:.4rem;background:var(--ok-soft);color:var(--ok)}.auth-page{display:grid;grid-template-columns:minmax(320px,420px) minmax(0,1fr);gap:clamp(2rem,6vw,5rem);align-items:center;min-height:100%;padding:clamp(1.5rem,5vw,4rem);max-width:1000px;margin:0 auto}.auth-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.75rem;box-shadow:var(--shadow-md)}.auth-brand{text-align:center;margin-bottom:1.5rem}.admin-help{margin:1.4rem 0 0;text-align:center;font-size:.78rem;line-height:1.6}.admin-help>summary{display:inline-block;padding:.15rem .4rem;border-radius:var(--radius-pill);color:var(--ink-faint);opacity:.7;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none;transition:opacity var(--dur-fast) var(--ease-ios)}.admin-help>summary::-webkit-details-marker{display:none}.admin-help>summary:hover,.admin-help>summary:focus-visible,.admin-help[open]>summary{opacity:1;color:var(--ink-soft)}.admin-help-body{display:flex;align-items:center;justify-content:center;gap:.45rem;margin-top:.4rem;color:var(--ink-soft)}.admin-help-body b{font-weight:500;letter-spacing:.02em;color:var(--ink);user-select:all;-webkit-user-select:all}.admin-help-body a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.admin-help-copy{padding:.05rem .42rem;border:1px solid var(--border);border-radius:var(--radius-pill);background:transparent;color:var(--ink-faint);font-size:.72rem;cursor:pointer;transition:color var(--dur-fast) var(--ease-ios),border-color var(--dur-fast) var(--ease-ios)}.admin-help-copy:hover{color:var(--ink);border-color:var(--border-strong)}.auth-brand .brand-mark{margin:0 auto .6rem}.auth-brand h1{font-family:var(--serif);letter-spacing:.02em;font-weight:500}.auth-brand p{font-size:.85rem;margin:0}.auth-brand .auth-hint{margin-top:.5rem;font-size:.8rem;color:var(--ink-soft)}.auth-brand .tagline{font-family:var(--serif);font-size:.98rem;letter-spacing:.07em;color:var(--ink);margin:0 0 .45rem}.auth-form{display:flex;flex-direction:column;gap:.8rem}.auth-code-row{display:flex;gap:.5rem;align-items:center}.auth-code-row input{flex:1;min-width:0}.auth-code-row .ghost-button{flex-shrink:0;white-space:nowrap}.auth-reset-title{font-family:var(--sans);font-size:1.1rem;font-weight:500;margin:0}.auth-aside h2{font-family:var(--sans);font-size:1.5rem;font-weight:500;letter-spacing:-.015em;margin-bottom:.9rem}.auth-aside ul{display:flex;flex-direction:column;gap:.6rem;color:var(--ink-soft);font-size:.9rem}.auth-aside li{padding-left:1rem;position:relative}.auth-aside li:before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;border-radius:50%;background:var(--accent)}.auth-aside-lead{color:var(--ink-soft);font-size:.92rem;line-height:1.7;margin:0 0 1.1rem}.auth-aside .segmented{margin-bottom:1rem}.auth-aside .segmented button{flex:1 1 0;padding:.4rem .2rem;font-size:.86rem}.auth-feature-panel{min-height:9.5rem;padding:1.05rem 1.15rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.auth-feature-panel h3{font-size:.95rem;font-weight:600;margin:0 0 .35rem}.auth-feature-panel>p{color:var(--ink-soft);font-size:.86rem;line-height:1.65;margin:0 0 .6rem}.auth-feature-panel ul{display:flex;flex-direction:column;gap:.3rem;color:var(--ink-soft);font-size:.82rem}.auth-feature-panel li{padding-left:.85rem;position:relative}.auth-feature-panel li:before{content:"";position:absolute;left:0;top:.55em;width:4px;height:4px;border-radius:50%;background:var(--accent)}.auth-aside>.muted{margin-top:.85rem}.segmented{display:flex;padding:3px;gap:2px;background:var(--surface-2);border-radius:var(--radius)}.segmented button{flex:1;background:transparent;border:none;padding:.35rem;border-radius:7px;font-size:.88rem;color:var(--ink-soft)}.segmented button.active{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:var(--shadow-sm)}.create-form{display:flex;gap:.5rem;margin-bottom:1.25rem}.create-form select{width:auto;min-width:130px}.create-form input{flex:1}.work-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.9rem}.work-card{display:flex;flex-direction:column;gap:.4rem;height:auto;padding:1rem 1.1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);color:inherit;box-shadow:var(--shadow-sm);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.work-card:hover{text-decoration:none;transform:translateY(-2px);border-color:var(--border-strong);box-shadow:var(--shadow-md)}.work-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.work-card-head h2{font-family:var(--serif);font-size:1.02rem;margin:0}.work-card p{margin:0;font-size:.85rem;min-height:2.6em}.work-card-meta{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center;font-size:.75rem;color:var(--ink-faint)}.work-page{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr) 340px;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.mobile-pane-switch{display:none}.chapter-rail{display:flex;flex-direction:column;gap:.6rem;padding:.9rem .75rem;background:var(--surface);border-right:1px solid var(--border);min-height:0;overflow:hidden}.chapter-rail>:not(.chapter-groups){flex:none}.chapter-rail .map-rail-head{margin-bottom:.25rem}.left-rail-slot{position:relative;z-index:12;isolation:isolate;min-height:0;align-self:stretch;flex:none;width:var(--left-rail-width);max-width:var(--left-rail-width);transition:width .18s var(--ease-ios),max-width .18s;overflow:visible}.left-rail-slot--write{--left-rail-width: 250px}.left-rail-slot--bible{--left-rail-width: 260px}.left-rail-slot--map{--left-rail-width: 210px}.left-rail-slot.is-collapsed{width:var(--left-rail-collapsed-strip, 36px);max-width:var(--left-rail-collapsed-strip, 36px)}.left-rail-slot>aside{width:var(--left-rail-width);max-width:var(--left-rail-width);height:100%;min-height:0;transition:opacity .16s ease,visibility .16s}.left-rail-slot.is-collapsed>aside{position:absolute;left:0;top:0;opacity:0;visibility:hidden;pointer-events:none}.left-rail-toggle{position:absolute;top:50%;right:0;z-index:13;width:28px;height:58px;padding:0;transform:translate(calc(100% + 5px),-50%);border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--ink-soft);font-size:1rem;line-height:1;cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none;box-shadow:2px 0 10px color-mix(in srgb,var(--ink) 8%,transparent)}.left-rail-toggle:before{content:"";position:absolute;top:-6px;right:-10px;bottom:-6px;left:-10px}.left-rail-slot:not(.is-collapsed) .left-rail-toggle:before{top:-8px;right:-12px;bottom:-8px;left:0}.left-rail-slot.is-collapsed .left-rail-toggle{right:auto;left:50%;transform:translate(-50%,-50%)}.left-rail-slot.is-collapsed .left-rail-toggle:before{top:-8px;right:-8px;bottom:-8px;left:-8px}.left-rail-toggle:hover{color:var(--accent);background:var(--surface-2)}.left-rail-toggle:active{transform:translate(calc(100% + 5px),-50%) scale(.97)}.left-rail-slot.is-collapsed .left-rail-toggle:active{transform:translate(-50%,-50%) scale(.97)}@media (prefers-reduced-motion: reduce){.left-rail-toggle:active{transform:translate(calc(100% + 5px),-50%)}.left-rail-slot.is-collapsed .left-rail-toggle:active{transform:translate(-50%,-50%)}}.bible-body .left-rail-slot{position:sticky;top:0;align-self:start}.bible-body .bible-rail{position:static;top:auto}@media (min-width: 1101px){.bible-page{display:flex;flex-direction:column;overflow:hidden}.bible-page>.structure-head,.bible-page>.remote-notice{flex:none}.bible-page>.bible-body{flex:1;min-height:0;align-items:stretch;grid-template-rows:minmax(0,1fr)}.bible-body .left-rail-slot{position:relative;top:auto;align-self:stretch;overflow:visible}.bible-body .bible-rail{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.bible-detail{min-height:0;height:100%;overflow-y:auto}}@media (max-width: 1100px){.bible-body .left-rail-slot{position:static;top:auto}}@media (max-width: 1100px){.left-rail-slot.is-collapsed{width:var(--left-rail-width);max-width:var(--left-rail-width)}.left-rail-slot.is-collapsed>aside{opacity:1;visibility:visible;pointer-events:auto}.left-rail-toggle{display:none}}.rail-head{display:flex;flex-direction:column;gap:.4rem}.back-link{font-size:.82rem;color:var(--ink-soft)}.work-title-input{padding:.25rem .3rem;border:1px solid transparent;background:transparent;font-family:var(--serif);font-size:1.05rem;font-weight:600}.work-title-input:hover,.work-title-input:focus{border-color:var(--border);background:var(--surface)}.rail-meta{display:flex;align-items:center;gap:.5rem}.chapter-list{display:flex;flex-direction:column;gap:1px;min-height:0}.chapter-list li{display:flex;align-items:center;gap:.2rem;border-radius:var(--radius)}.chapter-list li:hover{background:var(--surface-2)}.chapter-list li.active{background:var(--accent-soft)}.chapter-link{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:.05rem;padding:.45rem .5rem;background:transparent;border:none;text-align:left}.chapter-link:hover{background:transparent}.chapter-title{font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.chapter-list li.active .chapter-title{color:var(--ink);font-weight:600}.chapter-tools{display:none;gap:0;padding-right:.2rem}.chapter-list li:hover .chapter-tools,.chapter-list li.active .chapter-tools{display:flex}.chapter-group-events{flex:0 0 auto;padding:.14rem .4rem;border:1px solid var(--accent-soft);border-radius:999px;background:transparent;color:var(--accent);font-size:.66rem;line-height:1.2;font-weight:600;white-space:nowrap;cursor:pointer;transition:background .14s var(--ease-ios),border-color .14s var(--ease-ios)}.chapter-group-events:hover{background:var(--accent-soft);border-color:var(--accent)}.volume-events-panel{width:min(20rem,calc(100vw - 2rem));max-height:min(26rem,calc(100vh - 6rem));overflow-y:auto}.volume-events-head{display:flex;align-items:baseline;gap:.45rem;margin:0 0 .65rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.volume-events-title{font-family:var(--serif);font-size:.95rem;font-weight:600;color:var(--ink)}.volume-events-sub{font-size:.68rem;letter-spacing:.14em;color:var(--ink-faint)}.volume-events-timeline{list-style:none;margin:0;padding:0;position:relative;max-height:min(56vh,420px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-right:.2rem}.volume-timeline-block.is-compact .volume-events-timeline{max-height:min(48vh,340px)}.volume-events-item{position:relative;padding:0 0 .85rem 1.05rem}.volume-events-item:before{content:"";position:absolute;left:.24rem;top:.55rem;bottom:-.1rem;width:1px;background:var(--border)}.volume-events-item:last-child{padding-bottom:.2rem}.volume-events-item:last-child:before{display:none}.volume-events-node{position:absolute;left:0;top:.28rem;width:.55rem;height:.55rem;border-radius:50%;background:var(--ink-faint);box-shadow:0 0 0 .14rem var(--surface)}.volume-events-item.kind-twist .volume-events-node{background:var(--warn)}.volume-events-item.kind-reveal .volume-events-node{background:var(--ok)}.volume-events-name-toggle{display:flex;align-items:baseline;gap:.3rem;width:100%;border:0;background:none;padding:0;font:inherit;color:inherit;text-align:left;cursor:pointer}.volume-events-name-toggle:hover .volume-events-name{text-decoration:underline}.volume-events-caret{flex:none;font-size:.68rem;color:var(--ink-faint)}.volume-events-body{min-width:0}.volume-events-meta{display:flex;align-items:baseline;gap:.45rem;margin:0 0 .1rem}.volume-events-time{font-family:var(--serif);font-size:.72rem;color:var(--accent);font-weight:600}.volume-events-kind{font-size:.62rem;padding:.04rem .32rem;border-radius:999px;border:1px solid var(--border);color:var(--ink-faint)}.volume-events-name{margin:0;font-size:.84rem;color:var(--ink);line-height:1.5}.volume-events-desc{margin:.2rem 0 0;font-family:var(--serif);font-size:.76rem;line-height:1.65;color:var(--ink-soft);white-space:pre-wrap;overflow-wrap:anywhere}.volume-events-more{display:block;margin-top:.55rem;padding-top:.55rem;border-top:1px solid var(--border);font-size:.76rem}.volume-timeline-block{margin:.55rem 0 .65rem;padding:.55rem .65rem;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--accent-soft) 35%,var(--surface))}.volume-timeline-block.is-compact{margin:.45rem 0 .55rem;padding:.45rem .55rem}.volume-timeline-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.35rem}.volume-timeline-compact-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.25rem}.volume-timeline-title{font-size:.82rem;font-weight:600}.volume-timeline-sub{font-size:.72rem;color:var(--ink-soft)}.volume-timeline-empty{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .65rem}.volume-timeline-block.is-compact .volume-events-timeline{margin-top:.15rem}.volume-timeline-block.is-compact .volume-events-desc{font-size:.76rem;opacity:.86}.volume-timeline-badge-btn{border:0;background:none;padding:0;font:inherit;color:var(--accent);cursor:pointer}.volume-timeline-badge-btn:hover,.volume-timeline-badge-btn.is-open{text-decoration:underline}.volume-timeline-badge{color:var(--accent)}.timeline-volume-focus{margin:0 0 .75rem;padding:.45rem .65rem;border-radius:8px;background:color-mix(in srgb,var(--accent-soft) 50%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 20%,var(--border))}.editor-column{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg)}.editor-head{padding:.85rem clamp(1rem,4vw,2.5rem) .5rem;display:flex;flex-direction:column;gap:.2rem;flex:none}.chapter-title-input{padding:.15rem .25rem;border:1px solid transparent;background:transparent;font-family:var(--serif);font-size:1.35rem;font-weight:600}.chapter-title-input:hover,.chapter-title-input:focus{border-color:var(--border);background:var(--surface)}.editor-status{display:flex;gap:.75rem;justify-content:space-between}.editor-surface,.ProseMirror{min-height:100%;padding:0 clamp(1rem,4vw,2.5rem) 30vh;outline:none;font-family:var(--serif);font-size:1.02rem;line-height:1.9;max-width:42em;margin:0 auto;width:100%}.ProseMirror>*+*{margin-top:.85em}.ProseMirror p{margin:0}.ProseMirror h1,.ProseMirror h2,.ProseMirror h3{font-family:var(--serif);margin-top:1.4em}.ProseMirror blockquote{margin:0;padding-left:.9rem;border-left:3px solid var(--border-strong);color:var(--ink-soft)}.ProseMirror ul,.ProseMirror ol{list-style:revert;padding-left:1.4rem}.ProseMirror code{background:var(--surface-2);padding:.1em .3em;border-radius:4px;font-size:.9em}.ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--ink-faint);float:left;height:0;pointer-events:none}.editor-column .ProseMirror,.editor-column{overflow-y:auto}.inline-warning{position:sticky;bottom:0;padding:.5rem clamp(1rem,4vw,2.5rem);background:var(--warn-soft);color:var(--warn);font-size:.82rem;border-top:1px solid var(--border)}.inspector{display:flex;flex-direction:column;min-height:0;overflow:hidden;background:var(--surface);border-left:1px solid var(--border)}.tab-bar{display:flex;gap:2px;padding:.5rem .6rem 0;border-bottom:1px solid var(--border);overflow-x:auto}.tab-bar button{padding:.3rem .55rem;border:none;background:transparent;border-radius:6px 6px 0 0;font-size:.82rem;color:var(--ink-soft);white-space:nowrap}.tab-bar button:hover{background:var(--surface-2)}.tab-bar button.active{color:var(--accent);font-weight:600;box-shadow:inset 0 -2px 0 var(--accent)}.inspector-body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:.9rem .85rem 2rem}.panel{display:flex;flex-direction:column;gap:.6rem}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.panel-head h2{margin:0;font-size:.92rem}.entity-list{display:flex;flex-direction:column;gap:.35rem}.entity-list li{display:flex;align-items:flex-start;gap:.25rem}.entity-card{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.55rem .6rem;background:var(--surface-2);border:1px solid transparent;border-radius:var(--radius);text-align:left}.entity-card:hover{background:var(--surface-3)}.entity-card.static{background:var(--surface-2)}.entity-card strong{font-size:.88rem}.entity-card p{margin:0;font-size:.82rem}.vhist-total{margin-left:.4rem;padding:.05rem .34rem;border-radius:999px;background:var(--surface-3);color:var(--ink-faint);font-size:.66rem;font-weight:500;font-variant-numeric:tabular-nums;vertical-align:1px}.vhist-empty{line-height:1.7}.vhist-skeleton{display:flex;flex-direction:column;gap:.3rem}.vhist-skeleton li{height:44px;border-radius:10px;background:var(--surface-2);animation:vhist-pulse 1.4s var(--ease-ios) infinite}@keyframes vhist-pulse{0%,to{opacity:.55}50%{opacity:1}}.vhist-day{margin-top:.5rem}.vhist-day-head{display:flex;align-items:center;gap:.35rem;width:100%;padding:.25rem .3rem;border:none;border-radius:8px;background:transparent;text-align:left}.vhist-day-head:hover{background:var(--surface-2)}.vhist-caret{flex:none;font-size:.52rem;color:var(--ink-faint);transition:transform .16s var(--ease-ios)}.vhist-caret.is-open{transform:rotate(90deg)}.vhist-day-label{flex:1;min-width:0;font-size:.78rem;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vhist-day-count{flex:none;font-size:.68rem;color:var(--ink-faint);font-variant-numeric:tabular-nums}.vhist-rows{min-width:0;display:flex;flex-direction:column;gap:1px;list-style:none;margin:0;padding:0}.vhist-row{display:flex;flex-direction:column;gap:.08rem;width:100%;min-width:0;overflow:hidden;padding:.4rem .5rem;border:none;border-radius:9px;background:transparent;text-align:left;transition:background .14s var(--ease-ios)}.vhist-row:hover{background:var(--surface-2)}.vhist-row-line{display:flex;align-items:center;gap:.32rem;min-width:0}.vhist-time{font-size:.8rem;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}.vhist-tag{padding:.02rem .3rem;border-radius:999px;background:var(--surface-3);color:var(--ink-soft);font-size:.62rem;line-height:1.5}.vhist-delta{margin-left:auto;flex:none;font-size:.68rem;color:var(--ink-faint);font-variant-numeric:tabular-nums}.vhist-preview{display:block;width:100%;max-width:100%;font-size:.76rem;color:var(--ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}li.is-open .vhist-row{background:var(--surface-2)}.vhist-body{padding:.15rem .5rem .55rem}.vhist-text{margin:0;padding-left:.55rem;border-left:2px solid var(--border-strong);font-family:var(--serif);font-size:.84rem;line-height:1.8;color:var(--ink-soft);white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto;overscroll-behavior:contain}.vhist-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;margin-top:.5rem}.vhist-actions .primary-button{padding:.34rem .72rem;font-size:.8rem}.vhist-actions .muted{flex:1;min-width:8rem;line-height:1.45}.vhist-more-row{width:100%;padding:.32rem .5rem;border:none;border-radius:9px;background:transparent;text-align:left;font-size:.74rem;color:var(--ink-soft)}.vhist-more-row:hover{background:var(--surface-2);color:var(--ink)}.vhist-load{margin-top:.6rem}.ai-proposal{padding:.75rem;background:var(--surface-2);border-radius:var(--radius)}.proposal-preview{margin:.5rem 0;padding:.6rem;max-height:260px;overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--serif);font-size:.85rem;white-space:pre-wrap}.file-label{display:inline-flex;align-items:center;font-size:.82rem;cursor:pointer}.idea-capture{display:flex;flex-direction:column;gap:.5rem;padding:.9rem;margin-bottom:1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.filter-bar{display:flex;gap:.3rem;margin-bottom:1rem;flex-wrap:wrap}.filter-bar button{padding:.3rem .7rem;border-radius:999px;background:transparent;border-color:var(--border);font-size:.82rem;color:var(--ink-soft)}.filter-bar button.active{background:var(--accent-soft);border-color:transparent;color:var(--accent);font-weight:600}.idea-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));align-items:stretch;gap:.9rem}.idea-card{position:relative;display:flex;flex-direction:column;gap:.5rem;padding:.9rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.idea-card-head{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;padding-right:1.5rem}.idea-card .icon-button.idea-card-del{position:absolute;top:.5rem;right:.45rem;color:var(--ink-faint)}.idea-body{margin:0;font-family:var(--serif);font-size:.95rem;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;cursor:text}.clamp-box{position:relative}.clamp-box.is-under-popover{visibility:hidden;pointer-events:none}.idea-body.is-clipped{height:calc(1.8em * var(--clamp-lines, 5));overflow:hidden}.idea-body.is-faded{-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 2.4em),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 2.4em),transparent)}.clip-toggle{position:absolute;right:0;bottom:0;padding:.05rem 0 .05rem 1.6rem;border:none;border-radius:4px;background:linear-gradient(to right,transparent,var(--card) 1.1rem);color:var(--accent);font-size:.78rem;line-height:1.7}.clip-toggle:hover{background:linear-gradient(to right,transparent,var(--card) 1.1rem);text-decoration:underline}.clip-toggle.is-inline{position:static;display:block;margin-top:.15rem;padding-left:0;background:none}.clip-toggle.is-inline:hover{background:none}.idea-card.is-clip-open{z-index:30;content-visibility:visible}.clip-pop{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 14px 40px #0003;box-sizing:border-box}.clip-pop--fixed{position:fixed;z-index:100;max-height:min(72vh,30rem);display:flex;flex-direction:column;overflow:hidden;isolation:isolate}.clip-pop-head{flex-shrink:0;display:flex;justify-content:flex-end;padding:.65rem 1rem .35rem;background:var(--card);border-bottom:1px solid var(--border)}.clip-pop-scroll{flex:1;min-height:0;overflow:auto;padding:.5rem 1rem .9rem;-webkit-overflow-scrolling:touch}.clip-pop-body{margin:0;font-family:var(--serif);font-size:.95rem;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.clip-pop-close{padding:0;border:none;background:none;color:var(--accent);font-size:.78rem}.clip-pop-close:hover{text-decoration:underline}.idea-card-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:flex-end;margin-top:auto;padding-top:.4rem;border-top:1px dashed var(--border)}.idea-card-actions .inline-field{flex:1 1 calc(50% - .25rem);min-width:0}.idea-card-actions .inline-field select{width:100%;min-width:0}.idea-card-actions .row{flex:1 1 100%;flex-wrap:nowrap}.idea-card-actions .row>*{flex:0 0 auto}.idea-card-actions .row>a{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.idea-links{margin-top:.4rem;padding-top:.4rem;border-top:1px dashed var(--border)}.idea-links-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.3rem}.idea-links .ghost-button.small{padding:.1rem .5rem;font-size:.72rem}.idea-link-list{list-style:none;margin:0;padding:0}.idea-link-list li{display:flex;align-items:center;gap:.4rem;padding:.25rem 0;border-bottom:1px solid var(--border);font-size:.78rem}.idea-link-list li:last-child{border-bottom:none}.idea-link-list li.used .idea-link-title{text-decoration:line-through;color:var(--ink-faint)}.idea-link-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.idea-link-title:hover{color:var(--accent)}.idea-link-picker{padding:.4rem;max-width:260px;max-height:280px;overflow:auto}.idea-link-pick-list{list-style:none;margin:0;padding:0}.idea-link-pick-list button{display:block;width:100%;text-align:left;padding:.4rem .5rem;border:none;background:transparent;border-radius:6px;font-size:.8rem;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.idea-link-pick-list button:hover{background:var(--surface-2)}.idea-links .danger-text{color:var(--danger)}.inline-field{display:flex;flex-direction:column;gap:.1rem;font-size:.8rem}.inline-field select{width:auto;min-width:120px;padding:.25rem 1.75rem .25rem .4rem;font-size:.82rem}.search-bar{margin-bottom:1rem}.search-bar input{padding:.6rem .8rem;font-size:.95rem}.search-facets{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin-bottom:.9rem}.search-facets .segmented{flex:0 0 auto}.search-facets .segmented button{flex:0 0 auto;padding:.35rem .9rem}.search-select{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem}.search-select select{width:auto;max-width:11rem;margin-top:0;padding:.28rem 1.75rem .28rem .5rem}.search-idle{margin-top:.2rem}.search-results{display:flex;flex-direction:column;gap:.5rem}.search-hit{display:block;padding:.7rem .85rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:inherit}.search-hit:hover{text-decoration:none;border-color:var(--border-strong);background:var(--surface-2)}.search-hit-head{display:flex;align-items:center;gap:.45rem;margin-bottom:.2rem}.search-hit p{margin:0;font-size:.85rem}.settings-page{max-width:760px;width:100%;align-self:center;margin-inline:auto}.settings-page .card,.settings-page .settings-group{max-width:none}.settings-group{margin-bottom:1.4rem}.settings-group-title{margin:0 0 .4rem 1rem;font-size:.76rem;font-weight:500;color:var(--ink-faint);letter-spacing:.02em}.settings-group-note{margin:.45rem 1rem 0}.settings-group-body{overflow:hidden;border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm)}.settings-row+.settings-row{border-top:1px solid var(--border)}.settings-row-head{display:flex;align-items:center;gap:.7rem;width:100%;min-height:52px;padding:.55rem .9rem;border:none;border-radius:0;background:none;color:inherit;font:inherit;text-align:left;transition:background-color var(--dur-fast) var(--ease-ios)}.settings-row-head:hover{background:var(--surface-2)}.settings-row .settings-row-head:active{transform:none;background:var(--surface-3)}.settings-icon{display:grid;flex:none;place-items:center;width:26px;height:26px;border-radius:7px;background:var(--accent-soft);color:var(--accent)}.settings-row-main{display:grid;gap:.1rem;min-width:0}.settings-row-title{font-size:.92rem}.settings-row-hint{overflow:hidden;color:var(--ink-faint);font-size:.76rem;white-space:nowrap;text-overflow:ellipsis}.settings-row-summary{max-width:45%;margin-left:auto;overflow:hidden;color:var(--ink-soft);font-size:.82rem;font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis}.settings-row-summary.is-warn{color:var(--warn)}.settings-row-head .chev{flex:none;color:var(--ink-faint);transition:transform var(--dur-fast) var(--ease-ios)}.settings-row-head[aria-expanded=true] .chev{transform:rotate(90deg)}.settings-row-body{display:grid;gap:.8rem;padding:.1rem .9rem 1.1rem}.settings-row-body>button,.settings-row-body .stack>button,.settings-panel .stack>button{align-self:start;justify-self:start}.settings-panel{display:grid;gap:.8rem}.panel-title{margin:0;color:var(--ink-soft);font-size:.82rem;font-weight:600}.session-list,.workspace-list,.export-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.session-list li{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.6rem .7rem;background:var(--surface-2);border-radius:var(--radius)}.session-list p{margin:0;font-size:.78rem}.session-list li>button{flex:none;white-space:nowrap}.workspace-list li{display:flex;align-items:baseline;gap:.5rem;padding:.35rem 0;border-bottom:1px dashed var(--border)}.export-list li{display:flex;align-items:center;gap:.5rem}.settings-page form.row input{flex:1;min-width:180px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:1rem;background:#14141273;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal{width:min(860px,100%);max-height:86vh;overflow-y:auto;padding:1.1rem 1.25rem 1.4rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.modal-header h2{margin:0}.conflict-list{display:flex;flex-direction:column;gap:1rem}.conflict-item{padding:.8rem;background:var(--surface-2);border-radius:var(--radius)}.conflict-title{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.85rem}.conflict-compare{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.conflict-column{padding:.6rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.conflict-column h3{margin-bottom:.25rem;font-size:.78rem;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.06em}.conflict-column p{margin:0;font-family:var(--serif);font-size:.85rem;max-height:180px;overflow-y:auto;white-space:pre-wrap}.conflict-actions{display:flex;gap:.5rem;margin-top:.6rem;flex-wrap:wrap}.toast{position:fixed;right:1rem;bottom:1rem;z-index:40;max-width:380px;padding:.6rem .85rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);font-size:.85rem}.toast.warn{border-color:var(--warn);background:var(--warn-soft);color:var(--warn)}.undo-bar{position:fixed;left:50%;bottom:calc(1.25rem + var(--safeb, 0px));transform:translate(-50%);z-index:70;display:flex;align-items:center;gap:.75rem;max-width:min(540px,calc(100vw - 1.5rem));padding:.5rem .5rem .5rem .9rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-lg);animation:undo-bar-in .22s var(--ease-ios)}@keyframes undo-bar-in{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}.undo-bar-text{min-width:0;display:flex;flex-direction:column;gap:.1rem}.undo-bar-line{font-size:.85rem;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.undo-bar-hint{font-size:.72rem;color:var(--ink-faint)}.undo-bar-action{flex:none;padding:.32rem .7rem;border:none;border-radius:8px;background:transparent;color:var(--accent);font-size:.85rem;font-weight:600}.undo-bar-action:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.undo-bar-close{flex:none;width:26px;height:26px;padding:0;display:grid;place-items:center;border:none;border-radius:7px;background:transparent;color:var(--ink-faint);font-size:.72rem}.undo-bar-close:hover{background:var(--surface-2);color:var(--ink)}.light-confirm-bar{position:fixed;left:50%;bottom:calc(1.25rem + var(--safeb, 0px));transform:translate(-50%);z-index:75;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem 1rem;max-width:min(520px,calc(100vw - 1.5rem));padding:.65rem .75rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-lg);animation:undo-bar-in .22s var(--ease-ios)}.light-confirm-text{display:grid;gap:.12rem;min-width:0}.light-confirm-msg{font-size:.86rem;font-weight:600;color:var(--ink);word-break:break-word}.light-confirm-detail{font-size:.74rem;line-height:1.45;color:var(--ink-soft)}.light-confirm-actions{display:flex;flex-shrink:0;gap:.4rem}.light-confirm-danger{padding:.35rem .65rem;border:1px solid transparent;border-radius:var(--radius);background:var(--danger);color:#fff;font-size:.78rem}.light-confirm-danger:hover{background:color-mix(in srgb,var(--danger) 88%,#000)}@media (max-width: 1100px){.work-page{grid-template-columns:minmax(0,1fr)}.mobile-pane-switch{display:flex;gap:2px;padding:.4rem .6rem;background:var(--surface);border-bottom:1px solid var(--border);grid-column:1 / -1}.mobile-pane-switch button{flex:1;border:none;background:transparent;font-size:.85rem;color:var(--ink-soft);border-radius:7px}.mobile-pane-switch button.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.work-page>.left-rail-slot,.work-page>.editor-column,.work-page>.inspector{display:none;grid-column:1 / -1;border:none}.work-page[data-pane=chapters]>.left-rail-slot{display:flex;flex-direction:column;flex:1 1 0;min-height:0;width:100%;max-width:none;overflow:hidden}.work-page[data-pane=chapters]>.left-rail-slot>aside{flex:1 1 auto;min-height:0;width:100%;max-width:none;height:auto;overflow:hidden;opacity:1;visibility:visible;pointer-events:auto}.work-page[data-pane=chapters] .chapter-groups{-webkit-overflow-scrolling:touch;touch-action:pan-y}.work-page[data-pane=editor]>.editor-column{display:flex}.work-page[data-pane=inspector]>.inspector{display:flex}.chapter-rail{border-right:none}}@media (max-width: 860px){.auth-page{grid-template-columns:minmax(0,1fr);padding:2rem 1.25rem}.auth-aside,.auth-leaf,.app-nav{display:none}.app-header{gap:.6rem;padding:0 .75rem}.app-header>*,.app-header-right>*{flex:none;white-space:nowrap}.app-header-right .theme-select{display:none}.mobile-nav{display:flex;border-top:1px solid var(--border);background:var(--surface)}.mobile-nav a{flex:1;padding:.6rem 0;text-align:center;font-size:.82rem;color:var(--ink-soft)}.mobile-nav a.active{color:var(--accent);font-weight:600}.page{padding:1.25rem 1rem 2rem}.page-head{flex-direction:column}.conflict-compare{grid-template-columns:1fr}.create-form{flex-wrap:wrap}.create-form select{width:100%}.editor-surface,.ProseMirror{padding-bottom:20vh}}@media (max-width: 560px){.brand-sub,.app-header .palette-trigger{display:none}}.field{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;color:var(--ink-soft)}.field>select,.field>input{font:inherit;color:var(--ink)}.tag{display:inline-block;padding:.1rem .45rem;border-radius:999px;background:var(--accent-soft);color:var(--ink);font-size:.75rem}.row.space-between{justify-content:space-between;width:100%}.notice.danger{background:var(--danger-soft);color:var(--danger)}.invite-page{min-height:100vh;display:grid;place-items:center;padding:2rem 1rem;background:var(--bg, var(--surface))}.invite-card{width:min(520px,100%);padding:1.8rem;border:1px solid var(--border);border-radius:calc(var(--radius) * 1.6);background:var(--surface);box-shadow:0 18px 48px #0f141e14}.invite-card h1{font-size:1.35rem;margin:.4rem 0 1rem}.invite-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.7rem;margin:0 0 1.2rem}.invite-meta dt{font-size:.75rem;color:var(--ink-soft)}.invite-meta dd{margin:.15rem 0 0;font-size:.9rem;word-break:break-all}a.button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem 1rem;border-radius:var(--radius);border:1px solid var(--border);text-decoration:none;color:var(--ink);font-size:.9rem}a.button.primary{background:var(--accent);border-color:var(--accent);color:#fff}.member-list{list-style:none;margin:0 0 1rem;padding:0;display:flex;flex-direction:column;gap:.4rem}.member-list>li{display:flex;justify-content:space-between;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.5rem .6rem;border:1px solid var(--border);border-radius:var(--radius)}.member-list>li>div:first-child{display:flex;flex-direction:column;gap:.1rem;min-width:0}.inline-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.6rem;margin-bottom:.6rem}.inline-form>label{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;color:var(--ink-soft);min-width:140px}.link-box{display:flex;align-items:flex-end;gap:.5rem;flex-wrap:wrap;padding:.6rem;margin:.6rem 0;border:1px dashed var(--border);border-radius:var(--radius)}.link-box>label{flex:1;display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;color:var(--ink-soft);min-width:220px}.data-table{width:100%;border-collapse:collapse;font-size:.85rem;margin:.8rem 0}.data-table caption{text-align:left;padding-bottom:.35rem}.data-table th,.data-table td{text-align:left;padding:.4rem .5rem;border-bottom:1px solid var(--border);vertical-align:middle}.data-table th{font-weight:600;color:var(--ink-soft);font-size:.78rem}.usage-card,.ai-budget{padding:.7rem .8rem;border:1px solid var(--border);border-radius:var(--radius);margin-bottom:.8rem}.usage-card .row,.usage-bar+p{margin-bottom:.35rem}.usage-bar{height:6px;border-radius:999px;background:var(--accent-soft);overflow:hidden;margin:.35rem 0 .4rem}.usage-bar>span{display:block;height:100%;background:var(--accent);transition:width .25s ease}.ai-source-bar{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;margin:.5rem 0 .7rem}.chip-model{background:var(--surface-3);color:var(--ink);font-family:var(--mono);letter-spacing:0}.chip-source-own{background:var(--ok-soft);color:var(--ok)}.chip-source-hosted{background:var(--accent-soft);color:var(--accent)}.credential-cards{display:grid;align-items:start;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.9rem;margin:.8rem 0}.credential-card{display:flex;flex-direction:column;gap:.5rem;padding:.9rem 1rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg)}.credential-card.is-active{background:var(--surface);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.credential-card header{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.credential-card p{margin:0}.ai-advanced summary{cursor:pointer;font-size:.82rem;color:var(--ink-soft)}.ai-advanced input{margin-top:.4rem}.billing-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding-top:.7rem;border-top:1px dashed var(--border)}.idea-engine{display:flex;flex-direction:column;gap:.6rem;padding:.9rem 1rem;margin-bottom:1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.idea-engine p{margin:.15rem 0 0}.idea-engine-prompt{display:block;width:100%;min-height:0;line-height:1.35}.idea-engine .row{flex-wrap:wrap;align-items:flex-end;gap:.45rem .65rem}.idea-engine .inline-field select{min-width:7.5rem}.idea-candidates{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.6rem;list-style:none;padding:0;margin:0}.idea-candidate{display:flex;flex-direction:column;justify-content:space-between;gap:.5rem;padding:.7rem .8rem;background:var(--surface-2);border:1px dashed var(--border-strong);border-radius:var(--radius)}.idea-candidate p{margin:0;font-family:var(--serif);font-size:.92rem;line-height:1.55}.syntax-hints{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.4rem 1rem;margin:.6rem 0 1rem;padding:.7rem .9rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.syntax-hints div{display:flex;gap:.5rem;font-size:.82rem;align-items:baseline}.syntax-hints code{flex:0 0 auto;padding:.05rem .35rem;border-radius:4px;background:var(--accent-soft);font-size:.78rem}.syntax-hints-note{grid-column:1 / -1;margin:0 0 .15rem}.filter-chips{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.8rem}.filter-chips .tag{display:inline-flex;gap:.25rem;align-items:center}@media (prefers-reduced-motion: reduce){.usage-bar>span{transition:none}}.error-known{display:flex;flex-direction:column;gap:.25rem;margin:.9rem 0 .2rem;padding:.7rem .85rem;border-radius:10px;background:var(--danger-soft, rgba(190, 60, 45, .09));font-size:.88rem;line-height:1.55}.error-known strong{font-weight:600;color:var(--ink)}.error-details{margin:.9rem 0 .2rem}.error-details>summary{cursor:pointer;font-size:.84rem;color:var(--ink-soft);-webkit-user-select:none;user-select:none}.error-details>summary:hover{color:var(--ink)}.error-detail{margin:12px 0;padding:10px 12px;max-height:180px;overflow:auto;border-radius:10px;background:var(--surface-sunken, #f2efe9);color:var(--text-muted, #6b6357);font-size:12px;line-height:1.6;white-space:pre-wrap;word-break:break-word}:root{--manuscript: 52rem}html[data-manuscript=narrow]{--manuscript: 40rem}html[data-manuscript=wide]{--manuscript: 60rem}@media (min-width: 1500px){:root{--manuscript: 56rem}html[data-manuscript=narrow]{--manuscript: 44rem}html[data-manuscript=wide]{--manuscript: 66rem}}.editor-head{width:100%;max-width:var(--manuscript);margin:0 auto;padding:1.6rem clamp(1rem,4vw,2rem) .3rem;gap:.35rem}.editor-eyebrow{color:var(--accent);letter-spacing:.16em;font-size:.7rem;text-transform:uppercase;display:flex;gap:.4rem;align-items:center}.chapter-title-input{font-family:var(--serif);font-size:1.85rem;font-weight:700;line-height:1.3;padding:.1rem 0;letter-spacing:.01em}.chapter-title-input:hover,.chapter-title-input:focus{background:transparent;border-color:transparent;box-shadow:inset 0 -1px 0 var(--border)}.editor-meta{display:flex;align-items:center;gap:.7rem;padding-bottom:.9rem;border-bottom:1px solid var(--border);font-size:.75rem;flex-wrap:wrap}.editor-copy{margin-left:auto;white-space:nowrap;padding:.18rem .7rem;border:1px solid var(--border-strong, var(--border));border-radius:999px;background:transparent;color:var(--ink-soft);font-size:.75rem;line-height:1.7;text-decoration:none;transition:color .15s ease,border-color .15s ease}.editor-copy:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.editor-copy.is-done{color:var(--ok);border-color:var(--ok)}.editor-copy.is-error{color:var(--danger);border-color:var(--danger)}.editor-copy:disabled{opacity:.6;cursor:default}.manuscript{width:100%;max-width:var(--manuscript);margin:0 auto;padding:0 clamp(1rem,4vw,2rem);display:flex;flex-direction:column;flex:1;min-height:0}.manuscript .ProseMirror,.manuscript .editor-surface{max-width:none;margin:0;padding:1.4rem 0 18vh;font-family:var(--serif);font-size:1.09rem;line-height:1.95;letter-spacing:.015em;overflow-y:visible}.manuscript .ProseMirror p{margin:0 0 1.05em;text-indent:2em}.manuscript .ProseMirror li p,.manuscript .ProseMirror blockquote p{text-indent:0}.manuscript .ProseMirror h1,.manuscript .ProseMirror h2,.manuscript .ProseMirror h3{font-family:var(--sans);letter-spacing:.02em;margin:1.8em 0 .7em}.manuscript .ProseMirror h2{font-size:1.15rem;color:var(--ink)}.manuscript .ProseMirror blockquote{border-left:2px solid var(--accent);padding-left:1rem;color:var(--ink-soft);font-style:normal}.manuscript-foot{display:flex;align-items:center;gap:.5rem;padding:.75rem 0 1.6rem;border-top:1px solid var(--border);font-size:.72rem;margin-top:auto}.manuscript-foot-right{margin-left:auto}.chapter-volume{color:var(--accent);font-size:.66rem;letter-spacing:.08em;opacity:.85}.work-switch{grid-column:1 / -1;display:flex;align-items:center;min-width:0;padding:.4rem .75rem;background:var(--bg);border-bottom:1px solid var(--border)}.work-nav{display:flex;gap:2px;padding:.2rem 0;flex-wrap:wrap;min-width:0}.work-switch .work-nav{flex-wrap:nowrap;overflow-x:auto;padding:0}.work-nav a{white-space:nowrap;padding:.28rem .6rem;border-radius:999px;font-size:.78rem;color:var(--ink-soft);border:1px solid transparent}.work-nav a:hover{background:var(--surface-2);color:var(--ink)}.work-nav a.active{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 35%,transparent);color:var(--accent);font-weight:600}.inspector-body>*+*{margin-top:.65rem}.dock-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:.7rem .75rem}.dock-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.45rem}.dock-head h2{margin:0;font-size:.82rem;letter-spacing:.03em}.dock-hint{margin:0 0 .55rem;line-height:1.6}.spark{color:var(--accent)}.ai-dock{background:linear-gradient(160deg,var(--surface-2),var(--surface));border-color:color-mix(in srgb,var(--accent) 22%,var(--border))}.ai-dock-fold{display:flex;align-items:center;gap:.4rem;width:100%;padding:0;border:none;background:transparent;color:var(--ink);font-size:.82rem;font-weight:600;letter-spacing:.03em;text-align:left;cursor:pointer}.ai-dock-fold:hover{color:var(--accent)}.ai-dock-fold-caret{margin-left:auto;font-size:.6rem;color:var(--ink-faint);transition:transform .14s var(--ease-ios)}.ai-dock-fold:hover .ai-dock-fold-caret{color:var(--accent)}.ai-presets{display:grid;grid-template-columns:1fr 1fr;gap:.35rem}.ai-presets button{padding:.42rem .5rem;border:1px solid var(--border);background:var(--surface);border-radius:7px;font-size:.74rem;color:var(--ink-soft);text-align:left}.ai-presets button:hover{border-color:var(--accent);color:var(--accent)}.ai-dock.expanded .panel{gap:.5rem}.scene-count{color:var(--ink-soft);font-variant-numeric:tabular-nums}.scene-count.done{color:var(--accent)}.scene-check{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.08rem}.scene-check li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:.1rem .45rem;padding:.24rem 0;font-size:.8rem;line-height:1.45;flex-shrink:0}.scene-check-box{width:1.35rem;height:1.35rem;margin-top:.06rem;display:grid;place-items:center;padding:0;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--accent);font-size:.7rem;line-height:1;cursor:pointer;transition:border-color .14s var(--ease-ios),background .14s var(--ease-ios)}.scene-check-box:hover{border-color:var(--accent)}.scene-check-box:disabled{opacity:.5;cursor:default}.scene-check-body{min-width:0;display:flex;flex-direction:column;gap:.12rem;cursor:default;border-radius:5px;transition:background .14s var(--ease-ios)}.scene-check-body:hover{background:var(--surface-2)}.scene-check-title{overflow-wrap:anywhere;word-break:break-word}.scene-check-goal{font-size:.72rem;line-height:1.55;color:var(--ink-soft);white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.scene-check-flag{margin-left:.35rem;padding:0 .28rem;border-radius:4px;background:var(--surface-2);color:var(--ink-faint);font-size:.66rem;white-space:nowrap}.scene-check-copied{margin-left:.35rem;padding:0 .28rem;border-radius:4px;background:color-mix(in srgb,var(--ok) 14%,transparent);color:var(--ok);font-size:.66rem;white-space:nowrap}.scene-check li.written .scene-check-box{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--surface))}.scene-check li.written .scene-check-title,.scene-check li.cut .scene-check-title{color:var(--ink-faint);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--ink-faint) 55%,transparent)}.chapter-scenes{margin-left:.4rem;padding:0 .3rem;border-radius:999px;background:var(--surface-2);color:var(--ink-faint);font-size:.68rem;font-variant-numeric:tabular-nums}.chapter-scenes.done{color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,transparent)}.ai-dock.expanded .panel-head{display:none}.dock-lore{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px}.dock-lore-groups{display:flex;flex-direction:column;gap:.6rem}.dock-lore-group{display:flex;flex-direction:column;gap:.12rem}.dock-lore-kind{font-size:.66rem;font-weight:600;letter-spacing:.04em;color:var(--ink-faint);text-transform:none}.dock-lore li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.35rem;flex-shrink:0}.dock-lore-main,.dock-lore li a{min-width:0}.dock-lore li.used strong{text-decoration:line-through;color:var(--ink-faint)}.dock-lore-use{flex-shrink:0;min-height:2rem;padding:.2rem .55rem;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--ink-faint);font-size:.72rem;line-height:1.4;cursor:pointer;white-space:nowrap}.dock-lore-use:hover{border-color:var(--accent);color:var(--accent)}.dock-lore a{display:block;padding:.35rem .35rem .1rem;border-radius:6px}.dock-lore li{padding-bottom:.35rem;border-bottom:1px solid var(--border)}.dock-lore li:last-child{border-bottom:none;padding-bottom:0}.dock-lore a:hover{background:var(--surface-2)}.dock-lore a.dock-lore-more{display:inline-flex;align-items:center;min-height:2rem;margin-top:.15rem;padding:.1rem .35rem;font-size:.75rem;color:var(--accent)}.dock-lore a.dock-lore-more:hover{text-decoration:underline;background:transparent}.dock-lore strong{display:block;font-size:.78rem;font-weight:600;line-height:1.45;overflow-wrap:anywhere}.dock-lore span{display:block;font-size:.7rem;line-height:1.55;overflow-wrap:anywhere;word-break:break-word}.dock-idea-list,.dock-lore-groups,.dock-scenes .scene-check{--dock-list-visible: 3;--dock-list-row-h: 3.05rem;min-height:0;max-height:calc(var(--dock-list-visible) * var(--dock-list-row-h));overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior:contain;scrollbar-gutter:stable;transform:translateZ(0);backface-visibility:hidden}.dock-idea-list .dock-fold,.dock-lore-groups .dock-fold,.dock-scenes .scene-check .dock-fold{max-height:none;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;text-overflow:ellipsis}.dock-idea-list .dock-fold-hint,.dock-lore-groups .dock-fold-hint,.dock-scenes .scene-check .dock-fold-hint{display:none}.dock-list-hint{display:block;margin-top:.2rem;font-size:.68rem;line-height:1.4;color:var(--ink-faint)}.dock-idea-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.12rem}.dock-fold-wrap{min-width:0}.dock-fold{max-height:6.6em;min-height:0;margin:.12rem 0 0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior:contain;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.dock-fold.is-scroll{padding-right:.2rem}.dock-fold-hint{display:block;margin-top:.05rem;font-size:.68rem;line-height:1.4;color:var(--ink-faint)}.dock-idea-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.45rem;padding:.3rem .35rem;border-radius:6px;border-bottom:1px solid var(--border);transition:background .14s var(--ease-ios);flex-shrink:0}@media (hover: hover){.dock-idea-item:hover{background:var(--surface-2)}}.dock-idea-text{min-width:0;font-family:var(--serif);font-size:.8rem;line-height:1.7;color:var(--ink-soft);overflow-wrap:anywhere;word-break:break-word;white-space:pre-wrap}.dock-idea-use{flex-shrink:0;min-height:2rem;padding:.2rem .55rem;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--ink-faint);font-size:.68rem;line-height:1.6;cursor:pointer;white-space:nowrap;transition:color .14s var(--ease-ios),border-color .14s var(--ease-ios),background .14s var(--ease-ios)}.dock-idea-use:hover{color:var(--accent);border-color:var(--accent)}.dock-idea-use:disabled{opacity:.5;cursor:default}.inspector-tabs{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding-bottom:.5rem}.inspector-tabs .tab-bar{padding:.35rem .4rem 0}.inspector-tabs>.panel,.inspector-tabs>p{padding:.55rem .65rem 0}.structure-page{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;max-width:100%;padding:1.5rem clamp(1rem,4vw,2.5rem) 3rem}.structure-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.8rem;margin-bottom:1rem}.structure-title h1{margin:.15rem 0 .2rem;font-family:var(--serif);font-size:1.7rem;font-weight:700}.structure-title p{margin:0;max-width:46ch;line-height:1.7}.remote-notice{display:flex;align-items:center;gap:.6rem;padding:.55rem .75rem;margin-bottom:.9rem;border-radius:var(--radius);background:var(--surface-2);color:var(--ink-soft);font-size:.8rem}.remote-notice.error{background:var(--danger-soft);color:var(--danger)}.outline-stats{display:flex;gap:1.4rem;padding:.65rem 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:.9rem;font-size:.78rem;color:var(--ink-soft)}.outline-stats b{color:var(--ink);font-size:.95rem;margin-right:.2rem}.outline-stat-note{margin-left:.15rem;font-size:.72rem;color:var(--ink-faint);white-space:nowrap}.outline-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.6rem;margin-bottom:1rem}.outline-actions-side{display:flex;align-items:center;gap:.6rem}.outline-body{display:flex;flex-direction:column;gap:1rem}.outline-volume{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);padding:.9rem 1rem 1rem}.outline-volume.ungrouped,.outline-volume.loose{border-style:dashed;background:color-mix(in srgb,var(--surface) 60%,transparent)}.outline-grip{display:inline-flex;align-items:center;justify-content:center;width:.9rem;flex:0 0 auto;color:var(--ink-faint);opacity:0;cursor:grab;transition:opacity .12s ease;touch-action:none}@media (hover: hover){.outline-volume:hover .outline-grip,.outline-chapter:hover .outline-grip,.scene-item:hover .outline-grip{opacity:.5}}.outline-grip:hover{color:var(--ink);opacity:.9}.outline-grip:active{cursor:grabbing}.outline-row-dragging{opacity:.42}.outline-volume,.outline-chapter,.scene-item{position:relative}.outline-row-drop-before:after,.outline-row-drop-after:after{content:"";position:absolute;z-index:1;left:0;right:0;height:2px;border-radius:2px;background:var(--accent);pointer-events:none}.outline-row-drop-before:after{top:-5px}.outline-row-drop-after:after{bottom:-5px}.volume-head{display:flex;align-items:center;justify-content:space-between;gap:.7rem;flex-wrap:wrap}.volume-head.is-toggle{cursor:pointer}.volume-head.is-toggle .volume-title input{cursor:text}.outline-volume.is-collapsed{padding-bottom:.9rem}.volume-fold{color:var(--ink-faint)}.volume-fold:hover{color:var(--ink)}.volume-head h2{margin:0;font-size:1rem;font-family:var(--serif)}.volume-title{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.volume-index{font-family:var(--serif);font-size:1.1rem;color:var(--accent);font-weight:700}.volume-title input{flex:1;min-width:8rem;max-width:22rem;padding:.15rem .25rem;border:1px solid transparent;background:transparent;font-family:var(--serif);font-size:1.02rem;font-weight:600;color:var(--ink)}.volume-title input:hover,.volume-title input:focus{border-color:var(--border);background:var(--surface-2)}.volume-tools,.chapter-row-tools,.scene-tools,.timeline-tools{display:flex;align-items:center;gap:.1rem}.icon-button.danger{color:var(--danger)}.volume-summary{margin:.35rem 0 .6rem;line-height:1.7}.outline-chapters{list-style:none;margin:.7rem 0 0;padding:0;display:flex;flex-direction:column;gap:.7rem}.outline-chapter{border-left:2px solid var(--border);padding-left:.75rem}.chapter-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.chapter-row-title{font-weight:600;font-size:.9rem}.chapter-row-title:hover{color:var(--accent)}.chapter-row-summary-input{display:block;width:100%;margin:.3rem 0 0;padding:.18rem .35rem;font-family:var(--sans);font-size:.78rem;line-height:1.6;color:var(--ink-soft);background:transparent;border:1px solid transparent;border-radius:6px}.chapter-row-summary-input::placeholder{color:var(--ink-faint)}.chapter-row-summary-input:hover:not(:disabled){border-color:var(--border)}.chapter-row-summary-input:focus{outline:none;border-color:var(--accent);background:var(--surface-2);color:var(--ink)}.chapter-row-tools select,.scene-item select,.lore-link-select{width:auto;max-width:9rem;font-size:.72rem;padding:.18rem 1.35rem .18rem .3rem;border:1px solid var(--border);border-radius:6px;background-color:var(--surface);color:var(--ink)}.lore-link-trigger{display:inline-flex;align-items:center;gap:.3rem;max-width:none;padding:.3rem .55rem;font-size:.8rem;cursor:pointer}.lore-link-trigger[aria-expanded=true]{border-color:var(--accent);color:var(--ink)}.chapter-picker{width:min(280px,calc(100vw - 1.5rem));max-height:min(60vh,24rem);gap:2px}.chapter-picker-search{width:100%;margin-bottom:.15rem;padding:.4rem .55rem;font-size:.82rem;border:1px solid var(--border);border-radius:9px;background:var(--surface-2);color:var(--ink)}.chapter-picker-group{display:flex;flex-direction:column;gap:1px}.chapter-picker-head{display:flex;align-items:center;gap:.35rem;width:100%;padding:.42rem .55rem;border:none;border-radius:9px;background:transparent;color:var(--ink);font-size:.8rem;font-weight:600;text-align:left}.chapter-picker-head:hover{background:var(--surface-2)}.chapter-picker-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chapter-picker-caret{font-size:.62rem;color:var(--ink-faint);transition:transform .14s var(--ease-ios)}.chapter-picker-head[aria-expanded=true] .chapter-picker-caret{transform:rotate(90deg)}.chapter-picker-item{padding-left:1.5rem}.chapter-picker-empty{padding:.5rem .6rem}.chapter-picker-add{margin-top:.35rem;padding-top:.4rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.25rem}.chapter-picker-inline{font-size:.72rem}.chapter-picker-error{padding:.4rem .6rem;color:var(--danger)}.scene-list{list-style:none;margin:.45rem 0 0;padding:0;display:flex;flex-direction:column;gap:2px}.scene-item{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto auto;align-items:start;column-gap:.45rem;row-gap:.1rem;padding:.3rem .4rem;border-radius:7px;font-size:.8rem}.scene-item>.outline-grip{grid-area:1 / 1 / 3 / 2;margin-top:.22rem}.scene-item>.scene-dot{grid-area:1 / 2 / 3 / 3;margin-top:.5rem}.scene-item>select{grid-area:1 / 4 / 2 / 5}.scene-item>.scene-tools{grid-area:1 / 5 / 2 / 6}.scene-item:hover{background:var(--surface-2)}.scene-dot{width:5px;height:5px;border-radius:50%;background:var(--accent);flex-shrink:0}.scene-item.status-written .scene-dot{background:var(--ok)}.scene-item.status-cut{opacity:.55}.scene-item.status-cut .scene-title{text-decoration:line-through}.scene-title,.scene-goal{width:100%;padding:.08rem .3rem;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--ink);font-family:inherit;font-size:inherit;line-height:1.5;resize:none;overflow:hidden;overflow-wrap:anywhere;box-sizing:border-box}.scene-title{grid-area:1 / 3 / 2 / 4;font-weight:500;max-height:5.4rem;overflow-y:auto}.scene-goal{grid-area:2 / 3 / 3 / 6;font-size:.74rem;color:var(--ink-soft);max-height:8rem;overflow-y:auto}.scene-link-toggle{grid-area:3 / 3 / 4 / 4;justify-self:start;padding:.05rem .4rem;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--ink-faint);font-size:.66rem;cursor:pointer}.scene-link-toggle:hover,.scene-link-toggle.open{border-color:var(--accent);color:var(--accent)}.scene-link-panel{grid-area:4 / 3 / 5 / 6;display:flex;flex-wrap:wrap;gap:.3rem;padding:.35rem .3rem}.scene-link-chip{padding:.2rem .5rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--ink-soft);font-size:.7rem;cursor:pointer}.scene-link-chip:hover{border-color:var(--accent)}.scene-link-chip.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent)}.scene-title:hover,.scene-goal:hover{border-color:var(--border)}.scene-title:focus,.scene-goal:focus{border-color:var(--accent);background:var(--surface);outline:none}.scene-title::placeholder,.scene-goal::placeholder{color:var(--ink-faint)}.outline-empty{margin:.6rem 0 0}.outline-empty-row{display:flex;align-items:center;gap:.6rem}.outline-empty-row .outline-empty{margin:.6rem 0 0}.outline-chapter-add{list-style:none;margin-left:.75rem}.outline-chapter-add .ghost-button{font-size:.72rem}.inline-add{padding:.3rem .55rem;border:1px dashed var(--border-strong);border-radius:7px;background:transparent;color:var(--ink-soft);font-size:.75rem}.inline-add:hover{border-color:var(--accent);color:var(--accent)}.inline-add.scene-add{margin-top:.4rem;font-size:.72rem}.inline-add-form{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap}.inline-add-form input{flex:1;min-width:10rem;padding:.32rem .45rem;border:1px solid var(--border-strong);border-radius:7px;background:var(--surface);color:var(--ink);font-size:.8rem}.timeline{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column}.timeline-item{display:grid;grid-template-columns:18px minmax(0,1fr);gap:.6rem}.timeline-axis{position:relative;display:flex;justify-content:center}.timeline-axis:before{content:"";position:absolute;top:0;bottom:0;width:1px;background:var(--border)}.timeline-item:first-child .timeline-axis:before{top:14px}.timeline-item:last-child .timeline-axis:before{bottom:calc(100% - 14px)}.timeline-node{position:relative;width:9px;height:9px;border-radius:50%;background:var(--accent);margin-top:10px;z-index:1;box-shadow:0 0 0 3px var(--bg)}.timeline-item.kind-backstory .timeline-node{background:var(--ink-faint)}.timeline-item.kind-twist .timeline-node{background:var(--warn)}.timeline-item.kind-reveal .timeline-node{background:var(--ok)}.timeline-card{padding:.6rem .75rem .7rem;margin-bottom:.6rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.timeline-card-head{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin-bottom:.3rem}.timeline-time{font-family:var(--serif);font-size:.78rem;color:var(--accent);font-weight:600}.timeline-kind{font-size:.66rem;padding:.05rem .35rem;border-radius:999px;border:1px solid var(--border-strong);color:var(--ink-soft)}.timeline-tools{margin-left:auto}.timeline-card h3{margin:.1rem 0 .2rem;font-size:.92rem}.timeline-card p{margin:0;line-height:1.7}.timeline-form{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.5rem}.timeline-form label{display:flex;flex-direction:column;gap:.2rem;font-size:.72rem;color:var(--ink-soft)}.timeline-form label.full{grid-column:1 / -1}.timeline-form input,.timeline-form select,.timeline-form textarea{padding:.35rem .45rem;border:1px solid var(--border);border-radius:6px;background-color:var(--surface);color:var(--ink);font-size:.8rem;font-family:inherit}.timeline-form select{padding-right:1.75rem}.timeline-form-actions{grid-column:1 / -1;display:flex;justify-content:flex-end}.timeline-volumes{display:flex;flex-wrap:wrap;gap:.35rem}.volume-pick-chip{padding:.28rem .5rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--ink-soft);font-size:.72rem;cursor:pointer}.volume-pick-chip:hover{border-color:var(--accent)}.volume-pick-chip.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent)}.bible-body{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);gap:1rem;align-items:start;min-width:0;max-width:100%}.bible-body>.left-rail-slot{z-index:14}.bible-body>.left-rail-slot .left-rail-toggle{z-index:15}.work-page>.left-rail-slot{z-index:14}.work-page>.left-rail-slot .left-rail-toggle{z-index:15}.bible-rail{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:.6rem;position:sticky;top:0}.bible-rail-fold{display:none}.bible-rail-fold-meta{display:grid;gap:.12rem;min-width:0}.bible-rail-fold-title{font-size:.88rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bible-rail.is-open .bible-rail-fold .chev{transform:rotate(90deg)}.bible-search{width:100%;padding:.35rem .45rem;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--ink);font-size:.78rem;margin-bottom:.5rem}.bible-empty{margin:.3rem 0;line-height:1.6}.bible-group{margin-bottom:.6rem}.bible-group-head{display:flex;align-items:center;gap:.3rem;width:100%;font-size:.66rem;letter-spacing:.12em;color:var(--ink-faint);padding:.3rem .2rem;text-transform:uppercase;border:0;background:none;cursor:pointer;text-align:left}.bible-group-head:hover{color:var(--ink)}.bible-group-head>:nth-child(2){flex:1}.bible-group-caret{width:.7rem;font-size:.7rem;line-height:1;text-align:center}.timeline-volume-link{border:0;background:none;padding:0;cursor:pointer;font:inherit;color:inherit}.timeline-volume-link:hover{color:var(--ink);text-decoration:underline}.bible-group ul{list-style:none;margin:0;padding:0}.bible-item{width:100%;display:flex;align-items:center;gap:.4rem;padding:.35rem .4rem;border:none;background:transparent;border-radius:6px;text-align:left;font-size:.82rem;color:var(--ink-soft)}.bible-item:hover{background:var(--surface-2);color:var(--ink)}.bible-item.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.bible-item-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bible-item-count{font-size:.66rem;color:var(--ink-faint);border:1px solid var(--border);border-radius:999px;padding:0 .3rem}.bible-new{display:grid;gap:.3rem;margin-bottom:.55rem;padding-bottom:.55rem;border-bottom:1px dashed var(--border)}.bible-new-label{font-size:.66rem;letter-spacing:.12em;color:var(--ink-faint)}.bible-new-kinds{display:flex;flex-wrap:wrap;gap:.25rem}.bible-kind-chip{display:inline-flex;align-items:center;padding:.2rem .45rem;border:1px dashed var(--border-strong);border-radius:999px;background:transparent;color:var(--ink-soft);font-size:.72rem;line-height:1.35}.bible-kind-chip:before{content:"+";margin-right:.16rem;opacity:.65}.bible-kind-chip:hover{border-style:solid;border-color:var(--accent);color:var(--accent)}.bible-detail{min-width:0;max-width:100%;overflow-x:clip}.lore-detail{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);padding:1rem 1.1rem 1.2rem;min-width:0;max-width:100%;overflow-x:clip;overflow-y:visible}.lore-detail-head{display:flex;align-items:center;gap:.5rem;margin-bottom:.7rem}.lore-kind-tag{font-size:.66rem;padding:.1rem .4rem;border-radius:999px;background:var(--accent-soft);color:var(--accent);flex-shrink:0}.lore-kind-select{width:auto;padding-right:1.35rem;border:1px solid transparent;font-weight:600;cursor:pointer;color:var(--accent);background-color:var(--accent-soft);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%230071e3' d='M2.2 4.4 6 8.2 9.8 4.4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .35rem center;background-size:.6rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}[data-theme=dark] .lore-kind-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%232997ff' d='M2.2 4.4 6 8.2 9.8 4.4'/%3E%3C/svg%3E")}.lore-kind-select:hover,.lore-kind-select:focus-visible{border-color:var(--accent)}.lore-name-input{flex:1;min-width:0;padding:.15rem .25rem;border:1px solid transparent;background:transparent;font-family:var(--serif);font-size:1.25rem;font-weight:700;color:var(--ink)}.lore-name-input:hover,.lore-name-input:focus{border-color:var(--border);background:var(--surface-2)}.lore-field{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.7rem}.lore-field input,.lore-field textarea,.lore-field select{padding:.45rem .55rem;border:1px solid var(--border);border-radius:7px;background-color:var(--surface);color:var(--ink);font-size:.86rem;font-family:inherit;line-height:1.7;resize:vertical}.lore-field select{padding-right:2rem;line-height:1.35;resize:none}.markdown-field{display:grid;gap:.45rem}.markdown-field-source{min-height:6.5rem;padding:.45rem .55rem;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--ink);font-size:.82rem;font-family:var(--mono);line-height:1.75;resize:vertical}.markdown-field-source:focus{box-shadow:none}.lore-field .rule-section-md{padding:.55rem .65rem;border:1px solid var(--border);border-radius:7px;background:var(--surface-2)}.lore-usage{border-top:1px solid var(--border);padding-top:.7rem;margin-top:.4rem}.lore-usage header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem}.lore-usage h3{margin:0;font-size:.82rem}.lore-usage-list{list-style:none;margin:0 0 .5rem;padding:0}.lore-usage-list li{display:flex;align-items:center;gap:.45rem;padding:.3rem 0;border-bottom:1px solid var(--border);font-size:.8rem}.lore-usage-list li:last-child{border-bottom:none}.lore-usage-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lore-usage-title:hover{color:var(--accent)}.lore-usage-list li.used .lore-usage-title{text-decoration:line-through;color:var(--ink-faint)}.lore-use{flex-shrink:0;padding:.08rem .4rem;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--ink-faint);font-size:.66rem;line-height:1.6;cursor:pointer;white-space:nowrap}.lore-use:hover{border-color:var(--accent);color:var(--accent)}.lore-use.active{border-color:var(--accent);background:var(--accent);color:#fff}.palette-trigger{display:flex;align-items:center;gap:.4rem;padding:.28rem .5rem;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--ink-soft);font-size:.75rem}.palette-trigger:hover{border-color:var(--border-strong);color:var(--ink)}.palette-trigger kbd{font-family:var(--sans);font-size:.66rem;padding:.05rem .25rem;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--ink-faint)}.palette-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,#000 42%,transparent);display:flex;align-items:flex-start;justify-content:center;padding-top:12vh;z-index:60}.palette{width:min(620px,92vw);max-height:64vh;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.palette-input{padding:.85rem 1rem;border:none;border-bottom:1px solid var(--border);background:transparent;color:var(--ink);font-size:1rem;outline:none}.palette-results{list-style:none;margin:0;padding:.35rem;overflow-y:auto;flex:1}.palette-results button{width:100%;display:flex;align-items:baseline;gap:.55rem;padding:.45rem .6rem;border:none;background:transparent;border-radius:7px;text-align:left;color:var(--ink)}.palette-results button.active{background:var(--accent-soft)}.palette-group{font-size:.66rem;color:var(--ink-faint);min-width:3.4rem;letter-spacing:.06em}.palette-title{font-size:.88rem;flex-shrink:0}.palette-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.palette-empty{padding:.7rem;font-size:.82rem}.palette-foot{display:flex;gap:1rem;padding:.5rem .9rem;border-top:1px solid var(--border);font-size:.7rem}[data-theme=dark] .manuscript .ProseMirror{color:#e2e3e5}[data-theme=dark] .ai-dock{background:linear-gradient(160deg,#24272e,#1a1d22);border-color:#33363c}[data-theme=dark] .chapter-title-input{color:#f0f1f2}@media (max-width: 1100px){.bible-body{grid-template-columns:minmax(0,1fr)}.bible-rail{position:static}}@media (max-width: 820px){.chapter-title-input{font-size:1.5rem}.manuscript .ProseMirror,.manuscript .editor-surface{font-size:1.02rem}.structure-page{padding:1rem 1rem 2.5rem}.timeline-form{grid-template-columns:1fr}.palette-trigger span{display:none}}.archive-stats{display:grid;gap:.5rem;margin:.9rem 0 1rem;padding:.85rem 1rem;border-radius:var(--radius);background:var(--surface-2)}.archive-stats>div{display:flex;align-items:baseline;gap:.7rem}.archive-stats dt{flex:0 0 4.6rem;font-size:.78rem;color:var(--ink-soft)}.archive-stats dd{margin:0;min-width:0;font-size:.82rem;line-height:1.5;overflow-wrap:anywhere}.archive-stats strong{font-weight:600;font-variant-numeric:tabular-nums}.archive-ok{color:var(--ok)}.archive-warn{color:var(--warn)}.archive-tips{margin:.35rem 0 .6rem;padding-left:1.25rem;display:grid;gap:.3rem;font-size:.78rem;line-height:1.6;color:var(--ink-soft)}.archive-tips code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;padding:.08rem .3rem;border-radius:5px;background:color-mix(in srgb,var(--ink) 7%,transparent)}#local-archive .row{margin-bottom:.85rem}.archive-stats code,.archive-more code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.76rem;padding:.1rem .32rem;border-radius:5px;background:color-mix(in srgb,var(--ink) 7%,transparent)}.archive-more{margin-top:.9rem;padding-top:.85rem;border-top:1px solid var(--border)}.archive-more summary{cursor:pointer;color:var(--ink-soft);font-size:.8rem}.archive-more summary:hover{color:var(--ink)}.archive-more ul{display:grid;gap:.42rem;margin:.65rem 0 0;padding-left:1.1rem;font-size:.82rem;line-height:1.7}.deploy-list{display:grid;gap:.45rem;margin:.7rem 0}.deploy-list>div{display:flex;align-items:baseline;gap:.65rem}.deploy-list dt{flex:0 0 6.5rem;font-size:.78rem;color:var(--ink-soft)}.deploy-list dd{margin:0;min-width:0;font-size:.82rem}.deploy-list code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;padding:.1rem .32rem;border-radius:5px;background:var(--surface-2);color:var(--ink)}[data-theme=dark] .app-header{box-shadow:none}.chapter-rail,.inspector{background:var(--bg)}.chapter-rail{border-right:1px solid var(--border)}.inspector{border-left:1px solid var(--border)}.editor-column,[data-theme=dark] .editor-column{background:var(--paper);box-shadow:none}.card,.work-card,.dock-card,.idea-card,.volume-card,.timeline-card{border:1px solid transparent;border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm);transition:box-shadow .24s cubic-bezier(.22,.61,.36,1),transform .24s cubic-bezier(.22,.61,.36,1),border-color .24s ease}[data-theme=dark] .card,[data-theme=dark] .work-card,[data-theme=dark] .dock-card,[data-theme=dark] .idea-card,[data-theme=dark] .volume-card,[data-theme=dark] .timeline-card{border-color:#ffffff12}.work-card:hover,.idea-card:hover{transform:translateY(-2px);box-shadow:var(--inset-top),var(--shadow-md);border-color:var(--border-strong)}button{transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .12s cubic-bezier(.22,.61,.36,1)}button:not(:disabled):active{transform:scale(.975)}.ghost-button:not(:disabled):hover{border-color:var(--border-strong);box-shadow:var(--inset-top),0 2px 8px #2d261a0f}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 62%,transparent);outline-offset:2px;border-radius:6px}.palette{background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--shadow-lg),0 0 0 1px var(--border)}.mobile-nav{background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-top:1px solid var(--border)}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink-faint) 42%,transparent) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ink-faint) 34%,transparent);border:3px solid transparent;border-radius:999px;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--ink-faint) 58%,transparent);background-clip:content-box}::selection{background:color-mix(in srgb,var(--accent) 26%,transparent);color:var(--ink)}.ProseMirror{caret-color:var(--accent)}.work-page{background:var(--bg)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.work-card:hover,.idea-card:hover{transform:none}}.ghost-button.danger{color:color-mix(in srgb,var(--danger) 52%,var(--ink-soft));border-color:var(--border)}.ghost-button.danger:hover{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 42%,transparent);background:var(--danger-soft)}.manuscript-foot,.chapter-row .muted,.work-card-meta,.timeline-time{font-variant-numeric:tabular-nums}[data-theme=dark] .card,[data-theme=dark] .work-card,[data-theme=dark] .dock-card,[data-theme=dark] .idea-card,[data-theme=dark] .volume-card,[data-theme=dark] .timeline-card{border-color:#ffffff18}h1{font-size:clamp(1.8rem,3vw,2.55rem);line-height:1.12;letter-spacing:-.02em;font-weight:600}h2{font-size:1.28rem;line-height:1.32;letter-spacing:-.012em;font-weight:500}.page-head h1{font-family:var(--sans)}.page-head{padding-top:1.5rem;margin-bottom:2.2rem}.page-head p{margin-top:.45rem;font-size:1rem;color:var(--ink-soft)}.app-header{padding:0 1.6rem;gap:1.6rem}.brand-mark{width:34px;height:34px;border-radius:10px;font-size:1.06rem}.app-nav{gap:.35rem}.app-nav a{padding:.4rem .72rem;font-size:.92rem}.page{padding:2.7rem clamp(1rem,4vw,3rem) 4rem}.create-form{gap:.6rem;margin-bottom:1.8rem}.create-form input{height:48px;padding:0 1.05rem;border-radius:12px;font-size:.98rem;background:var(--card);box-shadow:var(--inset-top),0 1px 2px #2d261a0d}.create-form button{height:48px;padding:0 1.5rem;border-radius:12px;font-size:.95rem}.work-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.35rem}.work-card{padding:1.5rem 1.55rem 1.25rem;gap:.55rem;border-radius:18px;box-shadow:var(--shadow-md);position:relative;overflow:hidden}.work-card:hover{transform:translateY(-4px)}.work-card-head h2{font-size:1.2rem;line-height:1.35}.work-card-meta{margin-top:0;padding-top:.35rem;font-size:.78rem}.chapter-title-input{font-size:1.85rem;line-height:1.3;letter-spacing:-.015em}.editor-head{padding-top:2rem}.manuscript .ProseMirror,.manuscript .editor-surface{font-size:1.12rem;line-height:1.88}.chapter-rail{padding:1rem .7rem;gap:.7rem}.chapter-list{gap:2px}.chapter-list li{border-radius:10px}.chapter-list li.active{background:var(--surface);box-shadow:inset 2px 0 0 var(--accent),var(--shadow-sm)}.chapter-title{font-size:.9rem}.dock-card{padding:.95rem 1rem}.dock-card,.inspector-tabs{border-radius:14px}.work-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.work-card{min-height:0}.chapter-list li{position:relative}@media (hover: hover){.chapter-tools{position:absolute;top:50%;right:4px;transform:translateY(-50%);padding-left:1.4rem;background:linear-gradient(90deg,transparent,var(--surface-2) 42%);opacity:0;transition:opacity .15s ease;pointer-events:none}.chapter-list li.active .chapter-tools{background:linear-gradient(90deg,transparent,var(--accent-soft) 42%)}.chapter-list li:hover .chapter-tools,.chapter-list li:focus-within .chapter-tools{opacity:1;pointer-events:auto}.chapter-list li:hover .chapter-meta{opacity:0}}.dock-card{background:var(--surface-2);border-color:transparent;box-shadow:none}.dock-card:hover{border-color:transparent}.dock-head h2,.dock-head h3{font-size:.76rem;letter-spacing:.02em;color:var(--ink-soft);font-weight:600}.dock-card p{font-size:.8rem;line-height:1.6;color:var(--ink-soft)}.dock-card .notice,.dock-card .muted{color:var(--ink-faint)}.work-grid{grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:1.5rem;align-items:start}.work-card{display:flex;flex-direction:column;padding:0;gap:0;min-height:0;height:auto;border-radius:16px;overflow:hidden;background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-md);transition:transform .26s cubic-bezier(.22,.61,.36,1),box-shadow .26s cubic-bezier(.22,.61,.36,1)}.work-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.work-cover{position:relative;aspect-ratio:5 / 3;width:100%;flex:0 0 auto;min-height:7.5rem;padding:1.1rem 1.2rem 1rem;display:flex;flex-direction:column;justify-content:flex-end;gap:.28rem;overflow:hidden;isolation:isolate;--cover-base: #7d4a45;background-color:#e8e4e3;color:#1d1d1f;box-shadow:inset 0 0 0 1px #0000000f}[data-theme=dark] .work-cover:not(.has-image){color:#f5f5f7;box-shadow:inset 0 0 0 1px #ffffff0f}.work-cover:before{content:"";position:absolute;inset:0 auto 0 0;width:14px;background:linear-gradient(90deg,rgba(0,0,0,.06),transparent);pointer-events:none}.work-cover:after{content:"";position:absolute;inset:auto 0 0 0;height:55%;background:linear-gradient(180deg,transparent,rgba(0,0,0,.05));pointer-events:none}.work-cover-title{position:relative;z-index:1;margin:0;font-family:var(--serif);font-size:1.4rem;font-weight:600;line-height:1.28;letter-spacing:.005em;color:#1d1d1f;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.work-cover-sub{position:relative;z-index:1;font-size:.72rem;letter-spacing:.08em;color:#1d1d1f;opacity:.5;font-variant-numeric:tabular-nums}[data-theme=dark] .work-cover-title,[data-theme=dark] .work-cover-sub{color:#f5f5f7}.work-card-body{display:flex;flex-direction:column;gap:.35rem;padding:.65rem 1.1rem .85rem;flex:0 0 auto}.work-card-body p{margin:0;font-size:.82rem;line-height:1.55}.work-card-meta{margin-top:0;padding-top:0;display:flex;align-items:center;gap:.5rem;font-size:.74rem;color:var(--ink-faint);font-variant-numeric:tabular-nums}[data-theme=dark] .work-cover:before{background:linear-gradient(90deg,rgba(0,0,0,.4),transparent)}.work-cover{box-shadow:inset 0 0 0 1px #ffffff24}.collapse{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .32s cubic-bezier(.32,.72,0,1),visibility 0s linear .32s}.collapse.is-open{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .32s cubic-bezier(.32,.72,0,1),visibility 0s}.collapse-inner{min-height:0;overflow:hidden}@media (min-width: 1101px){.bible-rail .bible-rail-collapse.is-open{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;grid-template-rows:none}.bible-rail .bible-rail-collapse>.collapse-inner{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}}.chev{flex:none;color:var(--ink-faint);transition:transform .28s cubic-bezier(.32,.72,0,1)}.is-open>.chev,.is-open .chev,[aria-expanded=true] .chev{transform:rotate(90deg)}@media (prefers-reduced-motion: reduce){.collapse,.collapse.is-open,.chev{transition:none}}.inset-group{overflow:hidden;border-radius:var(--radius-lg);background:var(--card)}.inset-head{display:flex;align-items:baseline;justify-content:space-between;gap:.6rem;padding:.9rem 1rem .55rem}.inset-head h2{margin:0;font-size:.88rem;font-weight:600}.inset-empty,.inset-foot{margin:0;padding:0 1rem .9rem}.plain-list{margin:0;padding:0;list-style:none}.list-row+.list-row{border-top:1px solid var(--border)}.row-main{display:flex;align-items:center;gap:.65rem;width:100%;min-height:52px;padding:.55rem 1rem;border:none;border-radius:0;background:none;text-align:left;transition:background .16s ease}.row-main:hover:not(:disabled){background:var(--surface-2)}.row-main:active:not(:disabled){background:var(--surface-3)}.row-label{display:grid;gap:.1rem;min-width:0;flex:1}.row-title{font-size:.92rem;font-weight:500;line-height:1.35}.row-sub{overflow:hidden;color:var(--ink-faint);font-size:.78rem;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.row-cta{flex:none;color:var(--accent);font-size:.82rem}.row-flag{flex:none;color:var(--danger);font-size:.76rem}.row-body{display:grid;gap:.6rem;padding:0 1rem .9rem 2.15rem}.row-body .panel-actions{display:flex;gap:.9rem;align-items:center;margin:0}.row-body .ghost-button{padding:0;border:none;background:none;color:var(--accent);font-size:.82rem}.row-body .ghost-button:not(:disabled):hover{background:none;text-decoration:underline}.state-dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--ink-faint)}.state-dot.state-ok{background:var(--ok);box-shadow:0 0 0 3px var(--ok-soft)}.state-dot.state-expired{background:var(--danger);box-shadow:0 0 0 3px var(--danger-soft)}.add-row{display:flex;align-items:center;gap:.5rem;width:100%;padding:.8rem 1rem;border:none;border-top:1px solid var(--border);border-radius:0;background:none;color:var(--accent);font-size:.86rem}.add-row:hover{background:var(--surface-2)}.add-row span{flex:1;text-align:left}.mode-seg{border-radius:var(--radius-pill)}.mode-seg button{min-width:4.8rem;border-radius:var(--radius-pill)}.inline-alert{margin:0;padding:.5rem .8rem;border-radius:var(--radius);background:var(--accent-soft);color:var(--ink-soft);font-size:.82rem;line-height:1.5}.inline-alert.is-error{background:var(--danger-soft);color:var(--danger)}.publish-page{display:flex;flex-direction:column;gap:.75rem}.publish-page>*{flex:0 0 auto}.status-block.is-open .status-line{border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--card)}.status-block.is-open .status-panel{border-radius:0 0 var(--radius-lg) var(--radius-lg)}.status-line{display:flex;align-items:center;gap:.55rem;padding:.35rem .35rem .35rem .9rem;border-radius:var(--radius-pill);background:var(--card)}.status-line.is-ok{background:var(--ok-soft)}.status-line.is-bad{background:var(--danger-soft)}.status-line-dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--ink-faint)}.status-line.is-ok .status-line-dot{background:var(--ok)}.status-line.is-bad .status-line-dot{background:var(--danger)}.status-line-text{flex:1;min-width:0;overflow:hidden;font-size:.82rem;white-space:nowrap;text-overflow:ellipsis}.status-line-dim{color:var(--ink-faint)}.status-line-toggle{display:inline-flex;flex:none;align-items:center;gap:.2rem;padding:.28rem .7rem;border:none;border-radius:var(--radius-pill);background:var(--surface-3);color:var(--ink-soft);font-size:.78rem}.status-line-toggle:hover{background:var(--surface-3);color:var(--ink)}.status-line-toggle.is-open .chev{transform:rotate(90deg)}.status-panel{display:grid;gap:.7rem;padding:.55rem 1rem .95rem;background:var(--card)}.status-panel p{margin:0}.status-panel .panel-actions,.publish-panel .panel-actions{display:flex;gap:.5rem;align-items:center}.publish-layout{display:grid;grid-template-columns:minmax(200px,260px) minmax(0,1fr);gap:.75rem;align-items:start}@media (max-width: 900px){.publish-layout{grid-template-columns:1fr}}.publish-chapters{overflow:hidden;border-radius:var(--radius-lg);background:var(--card)}.publish-chapters-head{display:flex;align-items:center;justify-content:space-between;padding:.7rem .9rem;border-bottom:1px solid var(--border)}.publish-chapters-head h2{margin:0;font-size:.85rem;font-weight:600}.publish-chapters ul{max-height:60vh;margin:0;padding:.35rem;overflow-y:auto;list-style:none}.chapter-pick{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.5rem;align-items:center;width:100%;padding:.45rem .5rem;border:none;border-radius:8px;background:none;text-align:left}.chapter-pick:hover{background:var(--surface-2)}.chapter-pick.is-active{background:var(--accent-soft)}.chapter-no{color:var(--ink-faint);font-size:.7rem;font-variant-numeric:tabular-nums}.chapter-name{overflow:hidden;font-size:.85rem;white-space:nowrap;text-overflow:ellipsis}.chapter-dots{display:flex;gap:3px}.dot{width:6px;height:6px;border-radius:50%;background:var(--surface-3)}.dot.status-pending{background:var(--ink-faint)}.dot.status-draft_saved{background:var(--warn)}.dot.status-submitted{background:var(--accent)}.dot.status-published{background:var(--ok)}.dot.status-failed{background:var(--danger)}.dot.is-stale{box-shadow:0 0 0 2px var(--warn-soft)}.publish-panel{display:grid;gap:.75rem;padding:.95rem 1rem;border-radius:var(--radius-lg);background:var(--card)}.publish-panel-head{display:flex;flex-wrap:wrap;gap:.8rem;align-items:flex-start;justify-content:space-between}.publish-panel-head h2{margin:0;font-size:1.05rem;font-weight:600}.chip-toggle{display:inline-flex;flex:none;gap:.2rem;align-items:center;padding:.3rem .65rem .3rem .75rem;border:none;border-radius:var(--radius-pill);background:var(--surface-2);color:var(--ink-soft);font-size:.78rem}.chip-toggle:hover,.chip-toggle.is-open{background:var(--surface-3);color:var(--ink)}.chip-toggle.is-open .chev{transform:rotate(90deg)}.format-sheet{display:flex;flex-wrap:wrap;gap:.9rem;padding:.55rem .75rem;border-radius:var(--radius);background:var(--surface-2);color:var(--ink-soft);font-size:.8rem}.format-sheet label{display:flex;gap:.3rem;align-items:center;white-space:nowrap}.send-sheet{display:grid;gap:.55rem}.send-lead,.send-extra{margin:0;color:var(--ink-soft);font-size:.82rem;line-height:1.55}.send-extra{color:var(--ink-faint);font-size:.78rem}.send-list{overflow:hidden;border-radius:var(--radius);background:var(--surface-2)}.send-list .row-main{min-height:52px;flex-wrap:wrap;row-gap:.35rem}.send-actions{display:flex;flex:none;flex-wrap:wrap;gap:.35rem .7rem;align-items:center;justify-content:flex-end;margin-left:auto}.send-actions .primary{padding:.32rem .85rem;font-size:.82rem;white-space:nowrap}.send-actions .link-button,.send-extra .link-button{padding:0;font-size:.78rem;white-space:nowrap;text-decoration:none}.send-extra .link-button{margin-left:.35rem}.send-actions .link-button:hover,.send-extra .link-button:hover{background:none;text-decoration:underline}.precheck{display:grid;gap:.3rem;margin:0;padding:0;list-style:none;font-size:.8rem}.precheck .level-warn{color:var(--warn)}.precheck .level-error{color:var(--danger)}.publish-preview{max-height:168px;margin:0;padding:.75rem .9rem;overflow:hidden;border-radius:var(--radius);background:var(--surface-2);color:var(--ink-soft);font-family:var(--serif);font-size:.85rem;line-height:1.95;white-space:pre-wrap;word-break:break-word;transition:max-height .32s cubic-bezier(.32,.72,0,1)}.preview-shell{display:grid;gap:0}.preview-shell.is-open .publish-preview{max-height:60vh;overflow:auto}.preview-more{justify-self:start;margin-top:.25rem;padding:.2rem 0;border:none;background:none;color:var(--accent);font-size:.78rem}.preview-more:hover{background:none}.publish-targets{display:grid;border-radius:var(--radius);background:var(--surface-2)}.target-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:space-between;padding:.5rem .7rem}.target-row+.target-row{border-top:1px solid var(--border)}.target-info{display:grid;gap:.1rem;min-width:0}.target-info strong{font-size:.85rem;font-weight:500}.target-actions{display:flex;gap:.4rem;align-items:center}.publish-actions{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;justify-content:space-between;padding-top:.7rem;border-top:1px solid var(--border)}.warn-text{margin:0;color:var(--warn)}.error-text{color:var(--danger)}.danger-link{color:var(--ink-soft)}.danger-link:hover{color:var(--danger)}.notice-line,.busy-line{margin:0}.publish-results{display:grid;gap:.35rem;margin:0;padding:0;list-style:none}.publish-results li{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.5rem .65rem;border-radius:var(--radius);font-size:.82rem}.publish-results li.is-ok{background:var(--ok-soft);color:var(--ok)}.publish-results li.is-fail{background:var(--danger-soft);color:var(--danger)}.result-actions{display:flex;gap:.4rem;align-items:center;margin-left:auto}.head-actions{flex-direction:column;align-items:flex-end}.head-more{display:flex;justify-content:flex-end;padding-top:.35rem}.page-shelf .shelf-foot{justify-content:flex-end;align-items:center;gap:1.25rem}.page-shelf .shelf-foot .muted-link+.muted-link{margin-left:.35rem}@media (max-width: 640px){.page-shelf .page-head,.page-shelf .create-form,.page-shelf .work-grid,.page-shelf .shelf-foot,.page-shelf>.notice{width:100%;max-width:26rem;margin-inline:auto}.page-shelf .shelf-foot{padding-bottom:calc(.5rem + var(--safeb))}}.chapter-fold-body{display:flex;flex-direction:column;gap:.45rem;padding:.35rem 0 .15rem}@media (hover: hover){.volume-tools,.scene-tools{opacity:0;transition:opacity .15s ease}.outline-volume:hover .volume-tools,.outline-volume:focus-within .volume-tools,.scene-item:hover .scene-tools,.scene-item:focus-within .scene-tools{opacity:1}}.work-card-summary{margin:0;font-size:.82rem;line-height:1.55;color:var(--ink-soft);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.work-card-summary:empty{display:none}.billing-packs{display:flex;flex-wrap:wrap;gap:.45rem;padding:.35rem 0 .2rem}.billing-packs p{flex:1 1 100%;margin:0}html{height:100dvh}.app-header{height:calc(var(--header-h) + env(safe-area-inset-top,0px));padding-top:env(safe-area-inset-top,0px)}.mobile-nav{padding-bottom:env(safe-area-inset-bottom,0px)}.account-menu{position:relative}.account-button{width:32px;height:32px;padding:0;display:grid;place-items:center;border:none;border-radius:50%;background:var(--ink);color:var(--bg);font-family:var(--serif);font-size:.95rem;line-height:1}[data-theme=dark] .account-button{background:#f5f5f7;color:#1d1d1f}.account-button:hover{background:color-mix(in srgb,var(--ink) 84%,var(--bg))}[data-theme=dark] .account-button:hover{background:#d9d9dd}.account-pop{position:absolute;right:0;top:calc(100% + .45rem);z-index:40;min-width:11.5rem;display:flex;flex-direction:column;gap:.15rem;padding:.4rem;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-md)}.account-pop a,.account-pop button{display:block;width:100%;text-align:left;background:none;border:none;border-radius:8px;padding:.45rem .65rem;color:var(--ink);font:inherit;font-size:.9rem;text-decoration:none}.account-pop a:hover,.account-pop button:hover,.account-themes button.active{background:var(--surface-2)}.account-themes{display:flex;gap:.2rem;padding:.2rem;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin:.2rem 0}.account-themes button{flex:1;width:auto;text-align:center;padding:.35rem .2rem;font-size:.78rem;color:var(--ink-soft)}.sync-badge{position:relative}.sync-badge.sync-quiet{background:transparent;padding:.35rem;gap:0}.sync-badge.sync-quiet .sync-label,.sync-badge.sync-quiet .link-button{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}button.muted-link{background:none;border:none;padding:0;cursor:pointer;font:inherit}.auth-page{grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:clamp(2rem,7vw,6rem);max-width:1120px}@media (max-width: 860px){.auth-page{grid-template-columns:minmax(0,1fr);max-width:460px}}.auth-leaf{width:100%;justify-self:stretch;padding-right:0}.auth-leaf-meta{margin:0 0 .85rem;font-size:.75rem;letter-spacing:.16em;color:var(--ink-faint)}.auth-leaf h2{font-family:var(--serif);font-weight:500;font-size:2rem;letter-spacing:.04em;margin:0 0 1.1rem}.auth-leaf p{font-family:var(--serif);font-size:1.15rem;line-height:2.05;margin:0 0 1em}.auth-leaf-line{white-space:nowrap}.auth-leaf p.auth-leaf-main{font-family:var(--serif);font-weight:500;font-size:clamp(2.2rem,4vw,3.6rem);line-height:1.3;letter-spacing:.02em;margin:0 0 .85rem;white-space:nowrap}.auth-leaf p.auth-leaf-sub{font-family:var(--serif);font-size:.95rem;line-height:1.9;letter-spacing:.1em;color:var(--ink-soft);margin:0;white-space:nowrap}.focus-bar{display:flex;align-items:baseline;gap:1rem;width:min(var(--manuscript),100%);margin:0 auto;padding:1.25rem 0 .25rem;flex:none}.focus-book{font-family:var(--serif);font-size:.95rem}.focus-count{margin-left:auto;color:var(--ink-faint);font-size:.8rem}.focus-bar .typeset-menu,.focus-bar .width-switch{align-self:center}html[data-writing=focus] .app-header,html[data-writing=focus] .mobile-nav,html[data-writing=focus] .work-switch,html[data-writing=focus] .work-page>.left-rail-slot,html[data-writing=focus] .work-page>.inspector,html[data-writing=focus] .work-page>.mobile-pane-switch,html[data-writing=focus] .editor-eyebrow,html[data-writing=focus] .editor-meta{display:none}html[data-writing=focus] .work-page{grid-template-columns:minmax(0,1fr)}html[data-writing=focus] .work-page>.editor-column{display:flex}html[data-writing=focus] .manuscript{max-width:var(--manuscript);padding-top:6vh}html[data-writing=focus] .manuscript .ProseMirror,html[data-writing=focus] .manuscript .editor-surface{max-width:none;font-size:1.22rem;line-height:2.05}html[data-writing=focus] .chapter-title-input{font-family:var(--serif);font-size:1.65rem}.editor-tool{padding:.18rem .7rem;border:1px solid var(--border-strong, var(--border));border-radius:999px;background:transparent;color:var(--ink-soft);font-size:.75rem;line-height:1.7;white-space:nowrap;cursor:pointer;transition:color .15s ease,border-color .15s ease}.editor-tool:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.editor-tool[aria-expanded=true]{color:var(--accent);border-color:var(--accent)}.typeset-menu{position:relative;display:inline-flex}.typeset-pop{position:absolute;left:0;top:calc(100% + .45rem);z-index:40;width:15.5rem;padding:.5rem;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-md)}.typeset-presets{display:flex;gap:.2rem;padding:.2rem;margin-bottom:.35rem;border-bottom:1px solid var(--border)}.typeset-presets button{flex:1;padding:.25rem .4rem;border:none;border-radius:8px;background:none;color:var(--ink-soft);font:inherit;font-size:.78rem;cursor:pointer}.typeset-presets button:hover{background:var(--surface-2)}.typeset-presets button.active{background:var(--surface-2);color:var(--accent);font-weight:600}.typeset-rules{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.2rem}.typeset-rules label{display:flex;align-items:center;gap:.45rem;padding:.2rem .25rem;border-radius:8px;font-size:.82rem;color:var(--ink);cursor:pointer}.typeset-rules label:hover{background:var(--surface-2)}.typeset-rules input{accent-color:var(--accent)}.typeset-note{margin:.4rem .25rem .5rem;font-size:.72rem;line-height:1.5}.typeset-apply{width:100%}.typeset-error{margin:0 .25rem .5rem;color:var(--danger);line-height:1.5}.width-switch{display:inline-flex;gap:2px;padding:2px;border:1px solid var(--border);border-radius:999px}.width-switch button{padding:.05rem .5rem;border:none;border-radius:999px;background:none;color:var(--ink-soft);font:inherit;font-size:.72rem;line-height:1.7;white-space:nowrap;cursor:pointer}.width-switch button:hover{color:var(--ink)}.width-switch button.active{background:var(--accent);color:#fff}@media (max-width: 820px){.editor-meta{gap:.5rem}.typeset-pop{width:min(15.5rem,calc(100vw - 2rem))}}.map-page{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;padding-bottom:1rem}.map-page>.structure-head{flex:0 0 auto}.map-main{position:relative}.canvas-immersive-exit{display:none;position:absolute;top:calc(.45rem + var(--safet));right:.55rem;z-index:12;padding:.35rem .65rem;border:1px solid var(--border);border-radius:999px;background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);color:var(--ink);font:inherit;font-size:.78rem;box-shadow:var(--shadow-md);cursor:pointer}.canvas-immersive-exit:hover{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.canvas-immersive-toggle{flex-shrink:0;touch-action:manipulation}.canvas-immersive-toggle:hover{background:var(--accent-soft);color:var(--accent)}.canvas-immersive-toggle.active{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}html[data-canvas-immersive] .app-header,html[data-canvas-immersive] .mobile-nav,html[data-canvas-immersive] .install-hint{display:none!important}html[data-canvas-immersive] .app-main{flex:1;min-height:0}html[data-canvas-immersive] .map-page{padding:0;flex:1;min-height:0}html[data-canvas-immersive] .map-page>.structure-head,html[data-canvas-immersive] .map-page>.canvas-mobile-tabs,html[data-canvas-immersive] .map-page>.toast,html[data-canvas-immersive] .map-page>.undo-bar{display:none!important}html[data-canvas-immersive] .map-body{display:flex;flex:1;flex-direction:column;min-height:0;gap:0}html[data-canvas-immersive] .map-body>.left-rail-slot,html[data-canvas-immersive] .map-body>.map-side{display:none!important}html[data-canvas-immersive] .map-main{flex:1;min-height:0;gap:0}html[data-canvas-immersive] .map-toolbar{flex-shrink:0;padding:.35rem .55rem;padding-top:max(.35rem,var(--safet));background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--border);z-index:6}html[data-canvas-immersive] .map-canvas,html[data-canvas-immersive] .map-main>.map-shell,html[data-canvas-immersive] .map-main>:not(.map-toolbar):not(.canvas-immersive-exit):not(.map-status){flex:1;min-height:0}html[data-canvas-immersive] .map-shell{border-radius:0;border-left:none;border-right:none;border-bottom:none}html[data-canvas-immersive] .map-status{display:none}html[data-canvas-immersive] .canvas-immersive-exit{display:inline-flex;align-items:center}html[data-canvas-immersive] .map-main:fullscreen{background:var(--bg);padding-bottom:var(--safeb)}@media (max-width: 860px){html[data-canvas-immersive] .map-page{padding-bottom:max(.35rem,var(--safeb))}html[data-canvas-immersive] .canvas-immersive-exit{top:max(.45rem,var(--safet));right:max(.55rem,env(safe-area-inset-right,0px));min-height:44px;padding:.45rem .85rem;font-size:.84rem;font-weight:650}html[data-canvas-immersive] .map-toolbar{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}html[data-canvas-immersive] .map-toolbar-right{flex:none}html[data-canvas-immersive] .map-toolbar .canvas-immersive-toggle{background:var(--glass-strong);box-shadow:-10px 0 12px 4px var(--glass-strong)}}.map-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr) 330px;gap:.9rem}.map-body>.left-rail-slot{z-index:24}.map-body>.left-rail-slot .left-rail-toggle{z-index:25}.map-body>.map-main{position:relative;z-index:1;min-width:0}.map-rail{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:.6rem;overflow:hidden;min-height:0}.map-rail .map-list,.map-rail .map-object-browser,.map-rail .mm-templates{min-height:0;overflow-y:auto}.map-rail .rail-actions{margin-top:auto;padding-top:.55rem}.map-rail-head,.map-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.4rem}.map-rail-head-actions{display:flex;align-items:center;gap:.15rem}.map-rail-head .rail-more-trigger{width:28px;min-height:28px;font-size:.95rem}.rail-title{font-size:.78rem;font-weight:600;color:var(--ink-soft);letter-spacing:.03em}.map-empty{margin:.2rem 0 .5rem;line-height:1.6}.map-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.15rem}.map-list-item{display:flex;align-items:baseline;gap:.35rem;width:100%;padding:.3rem .4rem;border:none;border-radius:6px;background:none;color:var(--ink);font:inherit;font-size:.84rem;text-align:left;cursor:pointer}.map-list-item:hover{background:var(--surface-2)}.map-list-item.active{background:var(--surface-2);color:var(--accent);font-weight:600}.map-list-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-list-era{font-size:.68rem;color:var(--ink-faint);white-space:nowrap}.map-list-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex:0 0 auto}.map-list-dot.is-error{background:var(--danger)}.map-rail-actions{display:flex;flex-direction:column;gap:.3rem;margin-top:.7rem;padding-top:.6rem;border-top:1px solid var(--border)}.map-object-browser{display:flex;flex-direction:column;gap:.35rem;margin-top:.75rem;padding-top:.65rem;border-top:1px solid var(--border)}.map-object-browser input{width:100%;min-height:34px;padding:.28rem .45rem;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--ink);font:inherit;font-size:.78rem}.map-object-list{max-height:15rem;overflow-y:auto;display:flex;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none}.map-object-list button{width:100%;min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:.4rem;padding:.25rem .4rem;border:none;border-radius:6px;background:transparent;color:var(--ink);font:inherit;font-size:.78rem;text-align:left;cursor:pointer}.map-object-list button:hover,.map-object-list button.active{background:var(--surface-2);color:var(--accent)}.map-object-list small{color:var(--ink-faint);font-size:.66rem}.map-main{display:flex;flex-direction:column;min-height:0;gap:.5rem}.map-toolbar{flex:0 0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;position:relative}.map-tools{display:inline-flex;gap:2px;padding:2px;border:1px solid var(--border);border-radius:999px;background:var(--surface)}.map-tool-button{padding:.16rem .6rem;border:none;border-radius:999px;background:none;color:var(--ink-soft);font:inherit;font-size:.78rem;cursor:pointer;white-space:nowrap}.map-tool-button:hover{color:var(--ink);background:none}.map-tool-button.active,.map-tool-button.active:hover{background:var(--accent);color:#fff}.map-tool-button kbd{margin-left:.28rem;font-family:inherit;font-size:.62rem;color:var(--ink-faint);opacity:.65}.map-tool-button.active kbd{color:#fffc;opacity:1}.map-select{padding:.2rem 1.35rem .2rem .4rem;border:1px solid var(--border);border-radius:6px;background-color:var(--surface);color:var(--ink);font:inherit;font-size:.78rem}.map-layer-chips{display:inline-flex;gap:.25rem;flex-wrap:wrap}.map-layer-chips .chip{border:1px solid var(--border);background:none;cursor:pointer;opacity:.45}.map-layer-chips .chip.on{opacity:1;border-color:var(--accent);color:var(--accent)}.map-toolbar-more{position:relative}.map-toolbar-more>summary{min-height:30px;display:inline-flex;align-items:center;padding:.16rem .6rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--ink-soft);font-size:.78rem;cursor:pointer;list-style:none}.map-toolbar-more>summary::-webkit-details-marker{display:none}.map-toolbar-more[open]>summary{border-color:var(--accent);color:var(--accent)}.map-toolbar-pop{position:absolute;z-index:30;top:calc(100% + .4rem);left:0;width:min(19rem,calc(100vw - 2rem));display:flex;flex-direction:column;align-items:flex-start;gap:.65rem;padding:.75rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:0 12px 30px #0000002e}.canvas-mobile-tabs{display:none}.map-toolbar-right{margin-left:auto;display:inline-flex;align-items:center;gap:.4rem}.map-check{display:inline-flex;align-items:center;gap:.25rem;font-size:.76rem;color:var(--ink-soft);cursor:pointer}.map-canvas{flex:1;min-height:0}.map-shell{position:relative;width:100%;height:100%;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);touch-action:none;-webkit-user-select:none;user-select:none}.map-stage{position:absolute;left:0;top:0;transform-origin:0 0;pointer-events:none}.map-base{display:block;width:100%;height:100%;object-fit:contain;object-position:center;image-rendering:auto}.map-ocean{position:absolute;left:0;top:0;background:radial-gradient(120% 90% at 50% 40%,#0c3a6e,#061428 55%,#030a14);pointer-events:none}.map-landmass{position:absolute;display:block;pointer-events:none}.map-landmass-name{fill:#efe6d4eb;font-weight:600;letter-spacing:.06em;pointer-events:none;paint-order:stroke;stroke:#081626b8;stroke-width:2.5px}.map-landmass-mark.selected .map-landmass-name{fill:#fff8ec}.map-overlay{position:absolute;left:0;top:0}.map-grid line{stroke:#82766440;stroke-width:1px}.map-place-glyph,.map-place-name,.map-region-name,.map-route-name,.map-label{paint-order:stroke;stroke:#fff;stroke-width:var(--map-halo-width, 2.2px);stroke-linejoin:round}.map-place-glyph{font-weight:700}.map-place-name{fill:#1f1d1a}.map-region-name{fill:#3d342b;font-weight:750;letter-spacing:.04em;pointer-events:none}.map-route-name{fill:#5c4025;font-weight:650;letter-spacing:.03em;pointer-events:none}.map-place.selected .map-place-glyph{stroke:var(--accent);stroke-width:4px}.map-label{fill:#4a443c;opacity:.92}.map-region.selected,.map-route.selected{cursor:move}.map-bottom-chrome{position:absolute;left:max(.55rem,env(safe-area-inset-left,0px));right:max(.55rem,env(safe-area-inset-right,0px));bottom:max(.55rem,var(--safeb));z-index:9;display:flex;align-items:flex-end;justify-content:space-between;gap:.45rem;pointer-events:none}.map-bottom-chrome-left{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;min-width:0;flex:1 1 auto;max-width:calc(100% - 8.5rem)}.map-hud{display:flex;flex-direction:column;gap:.35rem;pointer-events:none}.map-zoom-read{font-variant-numeric:tabular-nums;font-size:.7rem;letter-spacing:.02em;color:var(--ink-soft, #6b6358);background:color-mix(in srgb,var(--surface) 88%,transparent);border:1px solid var(--border);border-radius:999px;padding:.05rem .45rem}.map-scale{display:flex;align-items:center;gap:.35rem;padding:.15rem .45rem;border-radius:999px;background:#ffffffd1;color:#1f1d1a;font-size:.7rem}.map-scale-bar{display:block;height:6px;border:1px solid #1f1d1a;border-top:none}.map-measure-read{display:flex;align-items:center;gap:.4rem;padding:.15rem .45rem;border-radius:999px;background:#1f1d1adb;color:#fff;font-size:.72rem;pointer-events:auto}.map-measure-read .link-button{color:#fff}.map-zoom{flex:0 0 auto;display:inline-flex;align-items:center;gap:.2rem;padding:.15rem .35rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);pointer-events:auto}.map-zoom button{border:none;background:none;color:var(--ink-soft);font:inherit;font-size:.78rem;padding:.05rem .3rem;border-radius:999px;cursor:pointer}.map-zoom button:hover{color:var(--accent)}.map-zoom-value{font-size:.68rem;color:var(--ink-faint);min-width:2.6em;text-align:right}.map-draft-hint{position:absolute;left:50%;top:.6rem;transform:translate(-50%);display:flex;align-items:center;gap:.4rem;padding:.2rem .6rem;border-radius:999px;background:#1f1d1adb;color:#fff;font-size:.72rem;white-space:nowrap}.map-draft-hint .link-button{color:#fff}.map-draft-hint button{min-height:26px;padding:0 .55rem;border:0;border-radius:999px;font-size:.68rem}.map-draft-cancel{background:#ffffff1f;color:#ffffffd1}.map-draft-done{background:#fff;color:#1f1d1a;font-weight:650}.map-draft-done:disabled{opacity:.36}.map-place-halo{fill:#ffffff47;stroke:var(--accent);stroke-dasharray:3 3;pointer-events:none}.map-region.hovered,.map-route.hovered{filter:brightness(1.15)}.map-label.hovered{opacity:1}.map-label-frame{fill:none;stroke:var(--accent);stroke-dasharray:3 3;pointer-events:none}.map-handle{fill:#fff;stroke:var(--accent);cursor:grab;pointer-events:none}.map-guide{stroke:var(--accent);stroke-dasharray:4 4;opacity:.8;pointer-events:none}.map-marquee{fill:var(--accent-soft);stroke:var(--accent);pointer-events:none}.map-menu{position:absolute;z-index:20;pointer-events:auto;min-width:9.5rem;padding:.25rem;border:1px solid var(--border);border-radius:9px;background:var(--surface);box-shadow:0 10px 28px #0000002e;display:flex;flex-direction:column}.map-menu button{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.32rem .5rem;border:none;border-radius:6px;background:none;color:var(--ink);font:inherit;font-size:.8rem;text-align:left;cursor:pointer}.map-menu button:hover{background:var(--surface-2)}.map-menu button span{font-size:.68rem;color:var(--ink-faint)}.map-menu button.danger{color:var(--danger)}.map-menu hr{margin:.25rem .3rem;border:none;border-top:1px solid var(--border)}.map-multi-count{display:flex;align-items:center;gap:.5rem;margin:0;font-size:.86rem}.map-blank{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;border:1px dashed var(--border);border-radius:var(--radius);padding:2rem;text-align:center}.map-status{flex:0 0 auto;margin:0}.map-side{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow-y:auto;min-height:0;padding:.6rem}.map-side-tabs{display:flex;gap:.2rem;margin-bottom:.6rem;border-bottom:1px solid var(--border)}.map-side-tabs button{padding:.25rem .6rem;border:none;background:none;color:var(--ink-soft);font:inherit;font-size:.82rem;cursor:pointer;border-bottom:2px solid transparent}.map-side-tabs button.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.map-panel{display:flex;flex-direction:column;gap:.55rem}.map-field{display:flex;flex-direction:column;gap:.2rem}.map-field>label{font-size:.72rem;color:var(--ink-soft)}.map-scale-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.3rem}.map-scale-presets button{display:flex;flex-direction:column;align-items:flex-start;gap:.05rem;padding:.32rem .4rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--ink-soft);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--dur-instant),background var(--dur-instant),color var(--dur-instant)}.map-scale-presets button strong{font-size:.76rem;font-weight:600}.map-scale-presets button span{font-size:.64rem;color:var(--ink-faint);white-space:nowrap}.map-scale-presets button:hover{border-color:var(--border-strong);color:var(--ink)}.map-scale-presets button.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--accent)}.map-scale-presets button.active span{color:color-mix(in srgb,var(--accent) 70%,var(--ink-faint))}.map-field input,.map-field select,.map-field textarea{width:100%;padding:.3rem .45rem;border:1px solid var(--border);border-radius:6px;background-color:var(--surface);color:var(--ink);font:inherit;font-size:.82rem}.map-field select{padding-right:1.75rem}.map-field textarea{resize:vertical;line-height:1.6}.map-field-row{display:flex;align-items:center;gap:.5rem}.map-field-row .map-field{flex:1}.map-field-label{flex:0 0 4.5rem;font-size:.76rem;color:var(--ink-soft)}.map-field-row input[type=number]{flex:1;padding:.25rem .4rem;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--ink);font:inherit;font-size:.8rem}.map-readout{margin:0;font-size:.78rem;color:var(--accent)}.map-panel-actions{display:flex;flex-direction:column;align-items:stretch;gap:.4rem;margin-top:.3rem;padding-top:.5rem;border-top:1px solid var(--border)}.map-panel-actions .ghost-button{width:100%;text-align:left;white-space:normal;line-height:1.4;min-height:auto;padding:.42rem .65rem}.map-panel-actions .map-check{padding:0;margin:0}.map-panel-actions-inline{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .45rem}.map-panel-actions--mind{gap:.3rem;margin-top:.25rem;padding-top:.4rem}.map-panel-actions--mind .map-check{flex:0 0 auto;white-space:nowrap;font-size:.74rem;line-height:1.2}.map-panel-actions--mind .map-panel-actions-inline .ghost-button{width:auto;flex:0 1 auto;min-height:28px;padding:.22rem .5rem;font-size:.76rem;line-height:1.25}.map-panel-actions--mind>.ghost-button.danger{min-height:30px;padding:.28rem .55rem;font-size:.78rem}.map-panel-actions.map-panel-actions--row{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between}.map-panel-actions.map-panel-actions--row .ghost-button{width:auto;flex:0 1 auto}.map-section{display:flex;flex-direction:column;gap:.35rem;padding-top:.6rem;border-top:1px solid var(--border)}.map-settings-fold{gap:0}.map-settings-fold-summary{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.35rem .5rem;padding:.35rem 0;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.map-settings-fold-summary::-webkit-details-marker{display:none}.map-settings-fold-summary:before{content:"▸";margin-right:.35rem;font-size:.72rem;color:var(--ink-faint);transition:transform .16s var(--ease-ios)}.map-settings-fold[open]>.map-settings-fold-summary:before{transform:rotate(90deg)}.map-settings-fold-meta{flex:1 1 auto;text-align:right}.map-settings-fold-body{display:flex;flex-direction:column;gap:.35rem;padding:.25rem 0 .5rem}.map-settings-subfold{margin-top:.15rem;padding:.35rem .45rem;border:1px dashed var(--border);border-radius:10px;background:color-mix(in srgb,var(--surface-2) 55%,transparent)}.map-settings-subfold summary{cursor:pointer;font-size:.78rem;color:var(--ink-soft);list-style:none}.map-settings-subfold summary::-webkit-details-marker{display:none}.map-settings-subfold[open] summary{margin-bottom:.35rem}.map-span-quick{display:flex;flex-wrap:wrap;gap:.35rem}.map-span-quick button{flex:1 1 calc(20% - .35rem);min-width:2.6rem;padding:.32rem .4rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink-soft);font-size:.74rem;font-family:var(--serif)}.map-span-quick button.active{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--ink);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}.map-scale-advanced summary{cursor:pointer}.map-section-actions{display:flex;flex-wrap:wrap;gap:.3rem}.faction-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.faction-item{display:flex;flex-direction:column;gap:.3rem;padding:.5rem;border:1px solid var(--border);border-radius:8px}.faction-item.active{border-color:var(--accent)}.faction-row{display:flex;align-items:center;gap:.35rem}.faction-row select{flex:1;min-width:0;padding:.2rem 1.35rem .2rem .35rem;border:1px solid var(--border);border-radius:6px;background-color:var(--surface);color:var(--ink);font:inherit;font-size:.76rem}.faction-row-labeled{align-items:stretch}.faction-field{flex:1;min-width:0;display:grid;gap:.12rem}.faction-capital-hint{margin:.35rem 0 0;line-height:1.55}.faction-capital-hint strong{font-weight:600;color:var(--ink-soft)}.faction-swatch{width:14px;height:14px;border-radius:4px;flex:0 0 auto;border:1px solid rgba(0,0,0,.2)}.faction-name{flex:1;min-width:0;padding:.2rem .3rem;border:1px solid transparent;border-radius:6px;background:none;color:var(--ink);font:inherit;font-size:.86rem;font-weight:600}.faction-name:hover{border-color:var(--border)}.faction-meta{display:flex;align-items:center;gap:.8rem;font-size:.74rem;color:var(--ink-soft)}.faction-color,.faction-strength{display:inline-flex;align-items:center;gap:.3rem}.faction-color input[type=color]{width:22px;height:18px;padding:0;border:1px solid var(--border);border-radius:4px;background:none}.faction-strength input[type=range]{width:84px}.faction-stat{display:flex;flex-direction:column;gap:.15rem}.faction-share{height:5px;border-radius:999px;background:var(--surface-2);overflow:hidden}.faction-share span{display:block;height:100%;border-radius:999px}.faction-neighbours{margin:0;line-height:1.5}.faction-more summary{font-size:.74rem;color:var(--ink-soft);cursor:pointer}.faction-more textarea{width:100%;margin-top:.3rem;padding:.3rem .4rem;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--ink);font:inherit;font-size:.8rem;resize:vertical}@media (max-width: 1180px){.map-body{grid-template-columns:1fr;overflow-y:auto}.map-main{min-height:62vh}.map-rail,.map-side{overflow:visible}}@media (max-width: 860px){.map-page{padding:.65rem .65rem calc(var(--tabbar-h) + var(--safeb) + .65rem)}.map-page>.structure-head{margin-bottom:.45rem}.map-page>.structure-head .structure-title>p{display:none}.canvas-mobile-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;padding:3px;margin-bottom:.45rem;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.canvas-mobile-tabs button{min-height:42px;border:none;border-radius:8px;background:transparent;color:var(--ink-soft);font:inherit;font-size:.82rem;cursor:pointer}.canvas-mobile-tabs button.active{background:var(--surface);color:var(--accent);font-weight:600}.map-body{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.map-main{order:0;flex:1;min-height:0;height:auto}.map-body.mobile-canvas>.left-rail-slot,.map-body.mobile-canvas>.map-side,.map-body.mobile-list>.map-main,.map-body.mobile-list>.map-side,.map-body.mobile-details>.left-rail-slot,.map-body.mobile-details>.map-main{display:none}.map-body.mobile-list>.left-rail-slot,.map-body.mobile-details>.map-side{display:block;flex:1;width:100%;max-width:none;overflow-y:auto}.map-body.mobile-list>.left-rail-slot>aside,.map-body.mobile-details>.left-rail-slot>aside{width:100%;max-width:none;opacity:1;visibility:visible;pointer-events:auto}.map-tool-button{min-height:40px;padding:.32rem .7rem}.map-tool-button kbd{display:none}.map-toolbar{gap:.3rem;flex-wrap:nowrap;overflow-x:auto;padding-bottom:.1rem;scrollbar-width:none}.map-toolbar-right{flex:0 0 auto}.map-tools{flex:0 0 auto;overflow-x:auto;max-width:100%;scrollbar-width:none}.map-tools::-webkit-scrollbar{display:none}.map-zoom button{min-width:42px;min-height:42px}.map-toolbar-right .ghost-button{min-height:40px}.map-toolbar .canvas-immersive-toggle{position:sticky;right:0;z-index:4;margin-left:.15rem;min-height:44px;min-width:3.1rem;padding:.38rem .85rem;font-size:.84rem;font-weight:650;border-radius:999px;background:var(--surface);box-shadow:-10px 0 12px 4px var(--surface)}.map-toolbar-more{flex:0 0 auto}.map-toolbar-more>summary{min-height:40px}.map-toolbar-pop{position:fixed;left:.65rem;right:.65rem;bottom:calc(var(--tabbar-h) + var(--safeb) + .65rem);top:auto;width:auto}.map-status{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-menu{min-width:10.5rem}.map-menu button{padding:.55rem .6rem;font-size:.86rem}}.mm-shell{position:relative;width:100%;height:100%;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background-color:var(--surface-2);background-image:radial-gradient(circle,var(--border-strong) 1px,transparent 1.1px);touch-action:none;-webkit-user-select:none;user-select:none;cursor:default}.mm-shell.tool-node,.mm-shell.tool-pen{cursor:crosshair}.mm-shell.tool-erase{cursor:cell}.mm-shell.tool-link{cursor:alias}.mm-shell.panning{cursor:grabbing}.mm-drag-readout{position:absolute;z-index:15;pointer-events:none;padding:.1rem .4rem;border:1px solid var(--border);border-radius:6px;background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:var(--ink-faint);font-size:.7rem;font-variant-numeric:tabular-nums;white-space:nowrap}.mm-stage{position:absolute;left:0;top:0;transform-origin:0 0;will-change:transform}.mm-links{position:absolute;left:0;top:0;width:1px;height:1px;overflow:visible;pointer-events:none}.mm-branch{fill:none;stroke:var(--border-strong);stroke-width:1.4}.mm-relation path{opacity:.85}.mm-relation.near path{opacity:1;stroke-width:2.2}.mm-relation-label{font-size:11px;font-weight:600;paint-order:stroke;stroke:var(--surface-2);stroke-width:3px;stroke-linejoin:round}.mm-ink{opacity:.9}.mm-ink.drawing{opacity:1}.mm-link-ghost{fill:none;stroke:var(--accent);stroke-width:1.6;stroke-dasharray:4 4;opacity:.7}.mm-node{position:absolute;display:flex;align-items:flex-start;gap:.35rem;width:max-content;max-width:260px;padding:.32rem .6rem .32rem .4rem;border:1px solid var(--border);border-left-width:3px;border-radius:9px;background:var(--surface);box-shadow:0 1px 2px #0000000f;color:var(--ink);font-size:.86rem;line-height:1.45;cursor:grab;transition:box-shadow .12s ease,outline-color .12s ease}.mm-node:active{cursor:grabbing}.mm-node.selected{outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 4px 14px #0071e32e}.mm-node.drop-target{outline:2px dashed var(--accent);outline-offset:3px}.mm-node.flash{animation:mm-flash 1.1s ease}@keyframes mm-flash{0%{background:var(--accent-soft)}to{background:var(--surface)}}.mm-node-glyph{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;margin-top:1px;border-radius:5px;color:#fff;font-size:10px;font-weight:700;line-height:1}.mm-node-text{flex:1 1 auto;min-width:2.5rem;max-width:220px;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;white-space:normal;overflow-wrap:break-word;word-break:normal;line-height:1.45}.mm-node.root .mm-node-text{max-width:252px;-webkit-line-clamp:3;line-clamp:3}.mm-node.selected:not(.editing) .mm-node-text{-webkit-line-clamp:4;line-clamp:4}.mm-node-hover-tip{position:fixed;z-index:10001;max-width:min(22rem,92vw);padding:.45rem .65rem;border:1px solid color-mix(in srgb,var(--border-strong) 55%,transparent);border-radius:8px;background:color-mix(in srgb,var(--surface) 92%,#000);color:var(--ink);font-size:.8rem;line-height:1.45;white-space:pre-wrap;word-break:break-word;pointer-events:none;box-shadow:0 10px 28px #00000038}.mm-node-marks{margin-left:.2rem;color:var(--ink-faint);font-size:.62rem;letter-spacing:.08em}.mm-node-toggle{position:absolute;right:-9px;top:50%;transform:translateY(-50%);width:17px;height:17px;padding:0;border:1px solid var(--border-strong);border-radius:50%;background:var(--surface);color:var(--ink-soft);font-size:9px;line-height:1;cursor:pointer}.mm-node-toggle:hover{border-color:var(--accent);color:var(--accent)}.mm-node-toggle.collapsed{background:var(--accent);border-color:var(--accent);color:#fff;font-size:9px}.mm-node.editing{outline:2px solid var(--accent);outline-offset:1px;cursor:text}.mm-node-input{flex:1;min-width:90px;max-width:240px;padding:0;border:none;background:transparent;color:var(--ink);font:inherit;line-height:inherit;resize:none;outline:none;overflow:hidden}.mm-hud{position:absolute;left:.6rem;bottom:.6rem;right:.6rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem;pointer-events:none}.mm-hint{padding:.16rem .55rem;border-radius:999px;background:#1d1d1fdb;color:#fff;font-size:.72rem;white-space:nowrap}.mm-zoom{margin-left:auto;display:inline-flex;align-items:center;gap:.15rem;padding:.12rem .35rem;border:1px solid var(--border);border-radius:999px;background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);pointer-events:auto}.mm-zoom button{padding:.02rem .3rem;border:none;border-radius:999px;background:none;color:var(--ink-soft);font:inherit;font-size:.74rem;cursor:pointer}.mm-zoom button:hover{color:var(--accent)}.mm-zoom-value{min-width:2.6em;color:var(--ink-faint);font-size:.68rem;text-align:center}.mm-templates{display:flex;flex-direction:column;gap:.25rem;padding:.4rem;margin-bottom:.4rem;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.mm-templates>p{margin:0 0 .15rem}.mm-template{display:flex;flex-direction:column;gap:.05rem;padding:.32rem .4rem;border:1px solid transparent;border-radius:7px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.mm-template:hover{border-color:var(--accent)}.mm-template-name{font-size:.82rem;font-weight:600}.mm-template-hint{color:var(--ink-faint);font-size:.68rem;line-height:1.4}.mm-pen{display:inline-flex;align-items:center;gap:.25rem}.mm-pen-dot{width:15px;height:15px;padding:0;border:2px solid transparent;border-radius:50%;cursor:pointer}.mm-pen-dot.active{border-color:var(--ink)}.mm-pen input[type=range]{width:74px;accent-color:var(--accent)}.mm-mode-switch{display:inline-flex;flex:0 0 auto;gap:2px;padding:2px;border:1px solid var(--border);border-radius:999px;background:var(--surface)}.mm-mode-switch button{min-height:28px;padding:.12rem .55rem;border:none;border-radius:999px;background:transparent;color:var(--ink-soft);font:inherit;font-size:.76rem;cursor:pointer}.mm-mode-switch button:hover{background:transparent;color:var(--ink)}.mm-mode-switch button.active,.mm-mode-switch button.active:hover{background:var(--accent);color:#fff}@media (max-width: 860px){.mm-mode-switch button{min-height:40px;padding-inline:.7rem}}.mm-kind-grid{display:grid;grid-template-columns:1fr 1fr;gap:.22rem}.mm-kind-expand{width:100%;margin-top:.25rem;padding:.18rem .35rem;border:none;border-radius:6px;background:transparent;color:var(--ink-soft);font:inherit;font-size:.72rem;cursor:pointer;text-align:center}.mm-kind-expand:hover{color:var(--accent);background:var(--surface-2)}.mm-kind-custom-admin{margin-top:.3rem}.mm-kind-custom-list{list-style:none;margin:.35rem 0 0;padding:0;display:flex;flex-direction:column;gap:.3rem}.mm-kind-custom-row{display:grid;grid-template-columns:2rem 1fr 2rem auto;gap:.3rem;align-items:center}.mm-kind-custom-glyph{width:2rem;padding:.2rem;text-align:center;font-size:.8rem}.mm-kind-custom-label{min-width:0;padding:.22rem .35rem;font-size:.78rem}.mm-kind-custom-color{width:2rem;height:1.6rem;padding:0;border:none;background:none}.mm-kind{display:flex;align-items:center;gap:.3rem;padding:.22rem .35rem;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--ink-soft);font:inherit;font-size:.76rem;cursor:pointer}.mm-kind:hover{color:var(--ink)}.mm-kind.active{background:var(--surface);font-weight:600}.mm-kind-glyph{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;border-radius:4px;color:#fff;font-size:9px;font-weight:700}.mm-edge-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.mm-edge-item{display:flex;flex-direction:column;gap:.3rem;padding:.45rem;border:1px solid var(--border);border-radius:8px}.mm-edge-head{display:flex;align-items:baseline;justify-content:space-between;gap:.4rem}.mm-edge-pair{min-width:0;overflow:hidden;padding:0;border:none;background:none;color:var(--ink);font:inherit;font-size:.78rem;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.mm-edge-pair:hover{color:var(--accent)}.mm-edge-label{flex:1;min-width:0;padding:.2rem .35rem;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--ink);font:inherit;font-size:.76rem}.mm-edge-flags{display:flex;gap:.7rem}:root{--safet: env(safe-area-inset-top, 0px);--safeb: env(safe-area-inset-bottom, 0px);--safel: env(safe-area-inset-left, 0px);--safer: env(safe-area-inset-right, 0px);--kb: 0px;--tabbar-h: 52px;--writerbar-h: 46px}.app-shell{padding-bottom:var(--kb);padding-left:var(--safel);padding-right:var(--safer)}html[data-native=tauri],html[data-standalone="1"]{overscroll-behavior-y:none}html[data-touch="1"]{-webkit-tap-highlight-color:transparent}html[data-touch="1"] button,html[data-touch="1"] a,html[data-touch="1"] label{touch-action:manipulation}.assistant-page{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--bg)}.assistant-bar{display:flex;align-items:center;gap:.75rem;padding:.65rem 1rem;border-bottom:1px solid var(--border)}.assistant-memory-hint{flex:none;margin:0;padding:.35rem 1rem 0;font-size:.72rem;line-height:1.45;color:var(--ink-faint)}.assistant-work-hint{flex:none;margin:0;padding:.45rem 1rem 0;font-size:.78rem;line-height:1.45;color:var(--accent, #c9a227)}.assistant-memory-wrap{flex:none;margin:.35rem 1rem 0;min-width:0}.assistant-memory-toast{display:flex;align-items:flex-start;gap:.5rem;padding:.45rem .55rem;border-radius:10px;background:color-mix(in srgb,var(--surface-2) 70%,transparent);border:1px solid var(--border);font-size:.72rem;line-height:1.45;color:var(--ink-soft)}.assistant-memory-toast-text{flex:1;min-width:0}.assistant-memory-toast-text p{margin:0}.assistant-memory-toast-text p+p{margin-top:.25rem}.assistant-memory-toast-actions{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem;flex-shrink:0}.assistant-memory-toast-link{padding:0;border:none;background:none;color:var(--accent);font-size:.68rem;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.assistant-memory-toast-close{width:1.35rem;height:1.35rem;padding:0;border:none;border-radius:6px;background:transparent;color:var(--ink-faint);font-size:1.05rem;line-height:1;cursor:pointer}.assistant-memory-toast-close:active{background:color-mix(in srgb,var(--surface-2) 80%,transparent)}.assistant-memory-link{padding:0;border:none;background:none;color:var(--ink-faint);font-size:.68rem;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.assistant-memory-details{margin-top:.35rem;padding:.45rem .55rem;border-radius:10px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface-2) 45%,transparent);font-size:.72rem;line-height:1.5;color:var(--ink-soft)}.assistant-memory-details-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.35rem;color:var(--ink);font-size:.76rem}.assistant-memory-details p{margin:0 0 .4rem}.assistant-memory-details p:last-child{margin-bottom:0}.assistant-memory-warn{color:var(--accent, #c9a227)}.assistant-memory-meta{font-size:.68rem;color:var(--ink-faint)}.assistant-work{display:flex;align-items:center;gap:.45rem;min-width:0;flex:1;font-size:.82rem;color:var(--ink-soft)}.assistant-work>span{flex:none}.assistant-bar .ghost-button{flex:none;white-space:nowrap}.assistant-bar select{flex:1;min-width:0;min-height:40px;font-size:16px}.assistant-log{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:1rem 1rem .5rem;display:flex;flex-direction:column;gap:.75rem}.assistant-empty,.assistant-pending,.assistant-error{margin:0;color:var(--ink-soft);font-size:.92rem;line-height:1.55}.assistant-error{color:var(--danger, #b42318)}.assistant-turn{max-width:min(42rem,100%);min-width:0;padding:.75rem .9rem;border-radius:14px;line-height:1.55;overflow-wrap:anywhere}.assistant-turn p{margin:0}.assistant-reply{min-width:0;max-width:100%;white-space:normal}.assistant-md{line-height:1.65;font-size:.94rem;color:inherit;white-space:normal;min-width:0;max-width:100%}.assistant-turn.is-assistant .assistant-md{color:var(--ink)}.assistant-md>:first-child{margin-top:0}.assistant-md>:last-child{margin-bottom:0}.assistant-md h2,.assistant-md h3,.assistant-md h4{margin:.85rem 0 .4rem;font-family:var(--serif);font-weight:650;letter-spacing:-.02em;color:var(--ink)}.assistant-md h2{font-size:1.05rem}.assistant-md h3{font-size:.98rem}.assistant-md h4{font-size:.92rem;color:var(--ink-soft)}.assistant-md h2:first-child,.assistant-md h3:first-child{margin-top:0}.assistant-md p{margin:.45rem 0}.assistant-md ul,.assistant-md ol{margin:.35rem 0 .55rem;padding-left:1.25rem;list-style-position:outside}.assistant-md ul{list-style:disc outside}.assistant-md ol{list-style:decimal outside}.assistant-md li{display:list-item}.assistant-md li+li{margin-top:.35rem}.assistant-md li>p{margin:.15rem 0}html[data-layout=compact] .assistant-md ul,html[data-layout=compact] .rule-section-md ul{list-style:disc outside;padding-left:1.25rem}html[data-layout=compact] .assistant-md ol,html[data-layout=compact] .rule-section-md ol{list-style:decimal outside;padding-left:1.25rem}html[data-layout=compact] .assistant-md li,html[data-layout=compact] .rule-section-md li{display:list-item}.assistant-md blockquote{margin:.5rem 0;padding:.35rem 0 .35rem .75rem;border-left:3px solid var(--border-strong);color:var(--ink-soft)}.assistant-md hr{margin:.65rem 0;border:none;border-top:1px solid var(--border)}.assistant-md code{font-family:var(--mono);font-size:.86em;padding:.06rem .28rem;border-radius:4px;background:var(--surface-2)}.md-table-scroll{display:block;width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x pan-y;margin:.5rem 0;contain:inline-size}.md-table-scroll table{width:max-content;border-collapse:collapse;font-size:.86rem}.assistant-md .md-table-scroll table,.rule-section-md .md-table-scroll table{font-size:inherit}.assistant-md .md-table-scroll th,.assistant-md .md-table-scroll td,.rule-section-md .md-table-scroll th,.rule-section-md .md-table-scroll td{padding:.4rem .55rem;border:1px solid var(--border);vertical-align:top;text-align:left;min-width:4.5rem;-webkit-text-size-adjust:100%;text-size-adjust:100%;font-size:inherit}.assistant-md .md-table-scroll th,.rule-section-md .md-table-scroll th{background:var(--surface-2);font-weight:600;white-space:nowrap}.assistant-md .md-table-scroll tr:nth-child(2n) td,.rule-section-md .md-table-scroll tr:nth-child(2n) td{background:color-mix(in srgb,var(--surface-2) 50%,transparent)}.assistant-md strong{font-weight:700;color:var(--ink)}.assistant-md h2+ul,.assistant-md h2+ol,.assistant-md h3+ul,.assistant-md h3+ol{margin-top:.25rem}.assistant-md em{color:var(--ink-soft)}.assistant-md-plain{white-space:pre-wrap;line-height:1.65;font-size:.94rem}.assistant-ids{margin-top:.65rem;padding-top:.5rem;border-top:1px dashed var(--border)}.assistant-ids-toggle{padding:0;border:none;background:none;color:var(--ink-faint);font-size:.72rem;cursor:pointer}.assistant-ids-list{list-style:none;margin:.35rem 0 0;padding:0;max-height:6rem;overflow-y:auto}.assistant-ids-list code{font-size:.68rem;word-break:break-all;color:var(--ink-faint)}.assistant-turn.is-user{align-self:flex-end;background:var(--ink);color:var(--bg);white-space:pre-wrap}.assistant-turn.is-assistant{align-self:stretch;max-width:none;padding:.35rem .5rem .5rem;background:color-mix(in srgb,var(--surface-2) 35%,transparent);border-radius:12px}.assistant-steps{margin:.55rem 0 0;padding:.45rem .55rem;border-radius:10px;background:color-mix(in srgb,var(--surface-2) 80%,transparent);font-size:.76rem}.assistant-steps summary{cursor:pointer;color:var(--ink-soft);list-style:none}.assistant-steps summary::-webkit-details-marker{display:none}.assistant-steps ul{list-style:none;margin:.4rem 0 0;padding:0;display:flex;flex-direction:column;gap:.25rem}.assistant-steps li{display:flex;gap:.4rem;min-width:0;color:var(--ink-soft)}.assistant-steps li span{min-width:0;overflow-wrap:anywhere}.assistant-steps li[data-ok="0"]{color:var(--danger, #b42318)}.assistant-composer{display:flex;gap:.5rem;align-items:flex-end;flex:none;padding:.65rem .75rem;border-top:1px solid var(--border);background:var(--glass-strong, var(--surface))}@media (min-width: 861px){.assistant-composer{padding-bottom:calc(.65rem + var(--safeb))}}@media (max-width: 560px){.assistant-work>span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}.assistant-composer textarea{flex:1;min-height:44px;max-height:8rem;resize:none;font-size:16px;line-height:1.45;padding:.55rem .7rem}.assistant-composer .primary-button{min-height:44px;flex:none}.mobile-nav{display:none;flex:none;padding:0;padding-bottom:var(--safeb);background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-top:1px solid var(--border)}.mobile-nav a{flex:1;min-width:0;height:var(--tabbar-h);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:0;font-size:.66rem;letter-spacing:.02em;color:var(--ink-faint);text-decoration:none;-webkit-user-select:none;user-select:none}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.mobile-nav,.writer-bar,.work-page>.mobile-pane-switch{background:var(--surface)}}.mobile-nav a:hover{text-decoration:none}.mobile-nav a.active{color:var(--accent);font-weight:500}.mobile-nav .tab-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-nav .tab-icon{width:23px;height:23px;transition:transform var(--dur-fast) var(--ease-ios)}.mobile-nav a.active .tab-icon{transform:translateY(-1px)}html[data-work-page] .mobile-nav,html[data-keyboard=on] .mobile-nav{display:none}.writer-bar{flex:none;display:flex;align-items:center;gap:.35rem;min-height:var(--writerbar-h);padding:.25rem .5rem calc(.25rem + var(--safeb));background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-top:1px solid var(--border)}.writer-tools{display:flex;gap:1px}.wb-btn{width:38px;height:36px;display:grid;place-items:center;padding:0;border:none;border-radius:9px;background:transparent;color:var(--ink-soft);font-family:var(--sans);font-size:1rem;line-height:1}.wb-btn:active:not(:disabled){background:var(--surface-3)}.wb-btn.active{background:var(--accent-soft);color:var(--accent)}.wb-btn:disabled{opacity:.32}.wb-done{font-size:1.25rem;color:var(--ink-faint)}.writer-words{margin-left:auto;padding:0 .15rem;font-size:.72rem;color:var(--ink-faint);font-variant-numeric:tabular-nums;white-space:nowrap}.writer-tail{display:flex;align-items:center;gap:1px}.writer-bar .typeset-menu{position:relative}.writer-bar .typeset-pop{top:auto;bottom:calc(100% + .5rem);left:auto;right:0;width:min(15.5rem,calc(100vw - 1.5rem))}.writer-bar .editor-tool{height:36px;padding:0 .55rem;border:none;font-size:.74rem}.writer-bar .typeset-pop{padding:.6rem}.writer-bar .typeset-presets button{padding:.4rem}.writer-bar .typeset-rules label{padding:.35rem .25rem}.writer-bar .typeset-apply{min-height:40px;font-size:.92rem}.inspector-toggle{display:none}@media (min-width: 861px) and (max-width: 1119px){.work-page{grid-template-columns:minmax(0,auto) minmax(0,1fr)}.work-page>.left-rail-slot,.work-page>.editor-column{display:flex;grid-column:auto}.work-page>.mobile-pane-switch{display:none}.work-page>.inspector{display:none}.work-page[data-pane=inspector]>.inspector{display:flex;position:fixed;top:calc(var(--header-h) + var(--safet));right:0;bottom:0;width:min(360px,82vw);z-index:30;border-left:1px solid var(--border);box-shadow:var(--shadow-lg)}.inspector-toggle{display:inline-flex}}@media (max-width: 860px){.mobile-nav{display:flex}.work-page{display:flex;flex-direction:column;grid-template-columns:none}.work-page>.work-switch{order:0;flex:none;padding:.3rem .6rem;grid-column:auto}.work-page>.work-switch .work-nav::-webkit-scrollbar{display:none}.work-page>.mobile-pane-switch{order:3;flex:none;display:flex;gap:4px;padding:6px 8px calc(6px + var(--safeb));grid-column:auto;background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-top:1px solid var(--border);border-bottom:none}.work-page>.mobile-pane-switch button{min-height:38px;border-radius:10px;font-size:.83rem}.work-page>.mobile-pane-switch button.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.work-page>.left-rail-slot,.work-page>.editor-column,.work-page>.inspector{order:2;flex:1 1 auto;min-height:0;grid-column:auto;scroll-padding-bottom:4rem}.work-page{overflow:hidden}.work-page>.left-rail-slot{width:100%;max-width:none}.work-page[data-pane=chapters]>.left-rail-slot{display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow:hidden}.work-page[data-pane=chapters] .left-rail-slot>aside.chapter-rail{flex:1 1 auto;min-height:0;width:100%;max-width:none;height:auto;overflow:hidden}.work-page[data-pane=chapters] .chapter-groups{-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior:contain}.work-page[data-pane=inspector]>.inspector{display:flex;flex-direction:column;flex:1 1 0;min-height:0;width:100%;max-width:none;overflow:hidden}.work-page[data-pane=inspector] .inspector-body{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior:contain}.work-page[data-pane=inspector] .dock-idea-list,.work-page[data-pane=inspector] .dock-lore-groups,.work-page[data-pane=inspector] .dock-scenes .scene-check{overflow-y:scroll;overscroll-behavior-y:none;touch-action:pan-y pinch-zoom;-webkit-transform:translateZ(0)}.work-page[data-pane=inspector] .dock-card{contain:layout style}.work-page[data-pane=editor]>.editor-column{flex:1 1 0;min-height:0;overflow:hidden;overflow-y:hidden}.work-page[data-pane=editor] .manuscript{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior:contain}.writer-bar{order:3}html[data-typing=on] .work-page>.mobile-pane-switch,html[data-typing=on] .work-page>.work-switch,html[data-typing=on] .editor-eyebrow,html[data-typing=on] .editor-meta{display:none}html[data-typing=on] .editor-head{padding-top:.4rem}html[data-typing=on] .chapter-title-input{font-size:1rem;color:var(--ink-soft)}.app-header{padding-left:calc(.75rem + var(--safel));padding-right:calc(.75rem + var(--safer))}.editor-head{padding:.55rem .9rem .2rem;gap:.1rem}.chapter-title-input{font-size:1.14rem}.editor-meta{flex-wrap:nowrap;overflow-x:auto;gap:.5rem;padding-bottom:3px;scrollbar-width:none}.editor-meta::-webkit-scrollbar{display:none}.editor-meta .width-switch{display:none}.manuscript{padding:0 1.1rem;max-width:none}.manuscript .ProseMirror,.manuscript .editor-surface{font-size:1.06rem;line-height:1.95;padding:.5rem 0 32vh}html[data-writing=focus] .manuscript .ProseMirror,html[data-writing=focus] .manuscript .editor-surface{font-size:1.12rem}.focus-bar{width:auto;flex-wrap:wrap;gap:.5rem;padding:.6rem 1rem .2rem}.toast{left:.75rem;right:.75rem;bottom:calc(var(--tabbar-h) + var(--safeb) + .75rem);max-width:none}html[data-work-page] .toast{bottom:calc(var(--tabbar-h) + var(--safeb) + .75rem)}.undo-bar{left:.75rem;right:.75rem;transform:none;max-width:none;bottom:calc(var(--tabbar-h) + var(--safeb) + .75rem)}@keyframes undo-bar-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.icon-button{width:36px;height:36px}.bible-kind-chip{padding:.34rem .6rem;font-size:.8rem}.chapter-list li{padding:.15rem 0}.chapter-link{padding:.6rem .4rem;min-height:46px;justify-content:center}input:not(.chapter-title-input):not(.work-title-input),select,textarea{font-size:16px!important}.page{padding:1.1rem 1rem calc(2rem + var(--safeb))}}@media (max-width: 860px) and (max-height: 480px) and (orientation: landscape){.editor-head{display:none}.manuscript .ProseMirror,.manuscript .editor-surface{padding-bottom:12vh}}@media (hover: none){.chapter-list .chapter-tools{display:flex;opacity:1}button:hover{background:transparent}.ghost-button:hover,.ghost-button.idea-develop-trigger:hover,.canvas-immersive-toggle:hover{background:transparent;color:inherit}.primary:hover{background:var(--btn-hover)}.primary-button:hover{background:color-mix(in srgb,var(--accent) 88%,black)}}html[data-writing=focus] .work-page{grid-template-rows:minmax(0,1fr)}.install-hint{position:fixed;left:50%;transform:translate(-50%);bottom:calc(1rem + var(--safeb));z-index:34;display:flex;align-items:center;gap:.55rem;max-width:min(30rem,calc(100vw - 1.5rem));padding:.5rem .45rem .5rem .55rem;border:1px solid var(--border);border-radius:14px;background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-lg);animation:install-hint-in .26s var(--ease-ios) both}@keyframes install-hint-in{0%{opacity:0}}.install-hint-mark{flex:none;width:26px;height:26px;display:grid;place-items:center;border-radius:8px;background:var(--ink);color:var(--paper, #f6f4ef);font-family:var(--serif, var(--sans));font-size:.82rem;line-height:1}.install-hint-text{margin:0;min-width:0;font-size:.8rem;line-height:1.35;color:var(--ink-soft)}.install-hint-text b{font-weight:600;color:var(--ink)}.install-hint-sub{display:block;margin-top:.16rem;font-size:.74rem;line-height:1.4;color:var(--ink-faint)}.install-hint-go{flex:none;height:28px;padding:0 .7rem;border:none;border-radius:8px;background:var(--accent);color:#fff;font-family:var(--sans);font-size:.76rem;font-weight:500}.install-hint-x{flex:none;width:28px;height:28px;display:grid;place-items:center;padding:0;border:none;border-radius:8px;background:transparent;color:var(--ink-faint);font-size:.78rem;line-height:1}.install-hint-x:hover{background:var(--surface-3)}@media (max-width: 860px){.install-hint{left:.6rem;right:.6rem;transform:none;width:auto;max-width:none;bottom:calc(var(--tabbar-h) + var(--safeb) + .5rem);padding:.55rem .5rem .55rem .6rem}.install-hint-text{font-size:.83rem;line-height:1.4}.install-hint-sub{font-size:.78rem}}html[data-work-page] .install-hint,html[data-assistant] .install-hint{display:none}.update-badge{display:inline-flex;align-items:center;gap:.3rem;height:26px;padding:0 .55rem;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);font-size:.72rem;font-weight:600;font-variant-numeric:tabular-nums;text-decoration:none;white-space:nowrap}.update-badge:hover{text-decoration:none;background:var(--accent);color:var(--accent-ink)}.update-badge-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.update-section{display:flex;flex-direction:column;gap:.6rem}.update-available{padding:.65rem .8rem;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius);background:var(--surface-2)}.update-available p{margin:0}.update-notes{margin:.45rem 0 0;font-family:var(--sans);font-size:.8rem;line-height:1.5;color:var(--ink-soft);white-space:pre-wrap;word-break:break-word}.update-progress{display:flex;flex-direction:column;gap:.35rem}.update-progress-bar{height:6px;border-radius:var(--radius-pill);background:var(--surface-3);overflow:hidden}.update-progress-bar span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width var(--dur-fast) linear}.update-progress p{margin:0}@media (max-width: 860px){.update-badge{display:none}}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem}.stat-card{display:flex;flex-direction:column;gap:.2rem;padding:1rem 1.1rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius)}.stat-value{font-size:1.6rem;font-weight:650;letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums}.stat-label{font-size:.85rem;color:var(--ink-soft)}.stat-hint{margin-top:.1rem}@media (max-width: 860px){.stat-grid{grid-template-columns:repeat(2,1fr)}}.rail-actions{display:flex;align-items:stretch;gap:.4rem}.rail-add{flex:1;min-width:0}.rail-more-trigger{flex:none;width:38px;padding:0;display:grid;place-items:center;border-radius:10px;background:transparent;color:var(--ink-soft);font-size:1.05rem;line-height:1;letter-spacing:.06em}.rail-more-trigger:hover,.rail-more-trigger[aria-expanded=true]{background:var(--surface-2);color:var(--ink)}.rail-more-panel{position:fixed;z-index:60;width:min(230px,calc(100vw - 1.5rem));max-height:calc(100vh - 1rem);overflow-y:auto;overscroll-behavior:contain;padding:.35rem;display:flex;flex-direction:column;gap:1px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-lg);animation:rail-more-in .16s var(--ease-ios)}@keyframes rail-more-in{0%{opacity:0;transform:translateY(6px) scale(.97)}to{opacity:1;transform:none}}.rail-more-item{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;width:100%;padding:.5rem .6rem;border:none;border-radius:9px;background:transparent;text-align:left;color:var(--ink)}.rail-more-item:hover{background:var(--surface-2)}.rail-more-label{font-size:.88rem}.rail-more-hint{font-size:.74rem;color:var(--ink-faint);line-height:1.4}.rail-more-sep{height:1px;margin:.25rem .35rem;background:var(--border)}.rail-more-item-danger .rail-more-label{color:color-mix(in srgb,var(--danger) 58%,var(--ink-soft))}.rail-more-item-danger:hover{background:var(--danger-soft)}.rail-more-item-danger:hover .rail-more-label{color:var(--danger)}.rail-more-confirm{padding:.5rem .6rem .4rem;display:flex;flex-direction:column;gap:.2rem}.rail-more-warn{font-size:.86rem;font-weight:600;color:var(--ink);word-break:break-word}.rail-more-buttons{display:flex;gap:.4rem;margin-top:.45rem}.rail-more-buttons .ghost-button{flex:1}.rail-more-danger{flex:1;padding:.45rem .5rem;border:1px solid transparent;border-radius:var(--radius);background:var(--danger);color:#fff;font-size:.82rem}.rail-more-danger:hover{background:color-mix(in srgb,var(--danger) 88%,#000)}.work-cover-image{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;object-fit:cover;display:block;-webkit-transform:translateZ(0)}.work-cover.has-image{color:#fff;box-shadow:inset 0 0 0 1px #ffffff1f}.work-cover.has-image:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;height:100%;pointer-events:none;background:linear-gradient(to top,#08080aa8,#08080a42 44%,#08080a00 74%)}.work-cover.has-image .work-cover-title,.work-cover.has-image .work-cover-sub{position:relative;z-index:1;text-shadow:0 1px 14px rgba(0,0,0,.4)}.work-cover.has-image .work-cover-sub{color:#ffffffd1}.work-cover-edit{position:absolute;top:.55rem;right:.55rem;z-index:2;padding:.28rem .62rem;border:1px solid rgba(255,255,255,.26);border-radius:999px;background:#12121485;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;font-size:.73rem;letter-spacing:.01em;opacity:0;transform:translateY(-2px);transition:opacity .16s var(--ease-ios),transform .16s var(--ease-ios),background .16s var(--ease-ios)}.work-card:hover .work-cover-edit,.work-cover-edit:focus-visible{opacity:1;transform:none}.work-cover-edit:hover{background:#121214b8}@media (hover: none){.work-cover-edit{opacity:.84;transform:none}}.work-cover:not(.has-image) .work-cover-edit{border-color:#00000024;background:#ffffffc2;color:color-mix(in srgb,var(--cover-base) 62%,#1d1d1f)}.work-cover:not(.has-image) .work-cover-edit:hover{background:#fffffff0}@media (max-width: 640px){.work-grid{grid-template-columns:1fr;gap:1rem;max-width:26rem;margin-inline:auto}.work-card{content-visibility:visible}.work-cover{aspect-ratio:3 / 2;min-height:11.5rem;padding:.85rem 1rem .75rem}.work-cover.has-image{aspect-ratio:3 / 2;min-height:11.5rem}.work-cover.has-image .work-cover-image{object-position:center center}.work-cover-title{font-size:1.15rem;-webkit-line-clamp:3}.work-card-body{padding:.45rem .85rem .6rem;gap:.2rem}.work-card-meta{font-size:.72rem}}@media (max-width: 900px) and (max-height: 460px){.work-cover,.work-cover.has-image{aspect-ratio:16 / 9;min-height:9.5rem}}.chapter-groups{flex:1;min-height:0;display:flex;flex-direction:column;gap:.45rem;overflow-y:auto;overscroll-behavior:contain;padding-bottom:.2rem;scrollbar-gutter:stable}.chapter-groups::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ink-faint) 62%,transparent);border:3px solid transparent;border-radius:999px;background-clip:content-box}.chapter-groups::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--ink-faint) 88%,transparent);background-clip:content-box}.chapter-group-head{display:flex;align-items:center;gap:.1rem;position:sticky;top:0;z-index:2;background:var(--surface);padding:.1rem 0 .15rem}.chapter-group-toggle{flex:1;min-width:0;display:flex;align-items:center;gap:.4rem;padding:.32rem .4rem;border:none;border-radius:8px;background:transparent;text-align:left}.chapter-group-toggle:hover{background:var(--surface-2)}.chapter-group-caret{flex:none;display:inline-block;font-size:.6rem;color:var(--ink-faint);transition:transform .16s var(--ease-ios)}.chapter-group-caret.is-open{transform:rotate(90deg)}.chapter-group-title{flex:1;min-width:0;font-size:.82rem;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chapter-group-count{flex:none;font-size:.68rem;color:var(--ink-faint);font-variant-numeric:tabular-nums}.chapter-group-head.is-loose .chapter-group-title{font-weight:500;color:var(--ink-soft)}.chapter-group-add{flex:none;font-size:.98rem;line-height:1;color:var(--ink-faint);opacity:.55;transition:opacity .14s var(--ease-ios),color .14s var(--ease-ios)}.chapter-group-head:hover .chapter-group-add,.chapter-group-add:hover,.chapter-group-add:focus-visible{opacity:1;color:var(--ink)}@media (hover: none){.chapter-group-add{opacity:.9}}.chapter-group-more{flex:none;opacity:0;transition:opacity .14s var(--ease-ios)}.chapter-group-head:hover .chapter-group-more,.chapter-group-more:focus-visible{opacity:1}@media (hover: none){.chapter-group-more{opacity:.7}}.chapter-blank{padding:.45rem .55rem;list-style:none}.chapter-create{display:flex;gap:.35rem;padding:.1rem .1rem .2rem}.chapter-create input{flex:1;min-width:0;height:34px;padding:0 .55rem;font-size:.84rem}.chapter-create .primary{flex:none;padding:0 .7rem;font-size:.8rem}.chapter-assign{max-height:min(60vh,380px);overflow-y:auto}.chapter-assign-head{padding:.35rem .6rem .3rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chapter-assign-empty{padding:.5rem .6rem}.rail-more-item.is-current{background:color-mix(in srgb,var(--accent) 10%,transparent)}.rail-more-item.is-current .rail-more-label:after{content:"✓";margin-left:.4rem;font-size:.78rem;color:var(--accent)}:root{--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--control-h: 36px;--control-h-touch: 44px;--dur-instant: .12s;--dur-enter: .22s;--dur-move: .34s;--ease-out: cubic-bezier(.22, 1, .36, 1);--focus-ring: 0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent)}::selection{background:color-mix(in srgb,var(--accent) 24%,transparent)}.structure-page{animation:workspace-enter var(--dur-enter) var(--ease-out) both}@keyframes workspace-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.structure-head{position:relative;align-items:flex-end;padding-bottom:.8rem;border-bottom:1px solid var(--border)}.structure-title{max-width:52rem}.structure-title h1{margin-top:.18rem;font-family:var(--serif);font-size:clamp(1.45rem,2.2vw,2rem);font-weight:650;letter-spacing:-.035em}.structure-title>.muted{max-width:46rem;line-height:1.55}.back-link{display:inline-flex;align-items:center;min-height:28px;color:var(--ink-faint);font-size:.76rem;transition:color var(--dur-instant),transform var(--dur-instant)}.back-link:hover{color:var(--accent);transform:translate(-2px)}.work-nav{padding:3px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-2)}.work-nav a{min-height:32px;display:inline-flex;align-items:center;border:0;transition:background var(--dur-instant),color var(--dur-instant),transform var(--dur-instant)}.work-nav a:active{transform:scale(.96)}.work-nav a.active{background:var(--surface);border-color:transparent;box-shadow:var(--shadow-sm)}button,a,input,textarea,select{transition:border-color var(--dur-instant),background-color var(--dur-instant),color var(--dur-instant),opacity var(--dur-instant),transform var(--dur-instant),box-shadow var(--dur-instant)}button:not(:disabled):active{transform:scale(.97)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{box-shadow:var(--focus-ring)}.primary-button,button.primary{min-height:var(--control-h);font-weight:600}.ghost-button,.editor-tool{min-height:32px}.editor-tool.active,.ghost-button.active{background:var(--accent-soft);color:var(--accent)}.toast{animation:toast-enter var(--dur-enter) var(--ease-out) both}@keyframes toast-enter{0%{opacity:0;transform:translateY(-6px) scale(.98)}}.mm-node{transition:opacity var(--dur-enter),transform var(--dur-move) var(--ease-out),box-shadow var(--dur-instant),outline-color var(--dur-instant)}.mm-node.dimmed{opacity:.16}.mm-node.selected{box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 20%,transparent)}.map-shell,.mm-shell{border-color:color-mix(in srgb,var(--border-strong) 70%,transparent);box-shadow:inset 0 1px color-mix(in srgb,var(--paper) 35%,transparent)}.map-legend{position:absolute;top:.65rem;left:.65rem;z-index:8;min-width:7.5rem;max-width:12rem;display:flex;flex-direction:column;gap:.24rem;padding:.55rem .65rem;border:1px solid var(--border);border-radius:10px;background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);pointer-events:none}.map-legend strong{margin-bottom:.15rem;color:var(--ink-faint);font-size:.66rem;font-weight:650;letter-spacing:.08em}.map-legend span{display:flex;align-items:center;gap:.38rem;overflow:hidden;color:var(--ink-soft);font-size:.7rem;white-space:nowrap;text-overflow:ellipsis}.map-legend i{width:8px;height:8px;flex:0 0 auto;border-radius:50%}.mind-minimap{position:absolute;left:auto;right:.65rem;top:.65rem;bottom:auto;z-index:9}.map-overview-dock{pointer-events:auto;display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;max-width:100%}.map-overview-fold{position:relative;z-index:2;padding:.22rem .55rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--ink-soft);font-size:.68rem;line-height:1.3;box-shadow:var(--shadow-sm);cursor:pointer;pointer-events:auto}.map-overview-fold:hover{color:var(--ink);border-color:var(--border-strong)}.map-overview-dock .canvas-overview{position:relative;z-index:1;left:auto;bottom:auto;width:138px;max-width:100%}.canvas-overview{position:relative;left:auto;bottom:auto;z-index:1;width:138px;height:84px;min-height:0;overflow:hidden;padding:0;border:1px solid color-mix(in srgb,var(--border-strong) 75%,transparent);border-radius:9px;background:linear-gradient(color-mix(in srgb,var(--ink) 3%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--ink) 3%,transparent) 1px,transparent 1px),var(--glass-strong);background-size:12px 12px;box-shadow:var(--shadow-md);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);cursor:crosshair}.canvas-overview:hover{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));transform:none}.canvas-overview>i{position:absolute;width:4px;height:4px;border-radius:50%;transform:translate(-50%,-50%);opacity:.72;pointer-events:none}.canvas-overview>i.selected{width:7px;height:7px;outline:2px solid var(--surface);opacity:1}.canvas-overview-viewport{position:absolute;min-width:12px;min-height:8px;border:1px solid var(--accent);border-radius:2px;background:color-mix(in srgb,var(--accent) 8%,transparent);pointer-events:none}.canvas-onboarding{align-items:flex-start;max-width:34rem;margin:auto;padding:clamp(1.4rem,4vw,2.5rem);text-align:left;background:var(--surface)}.canvas-onboarding-kicker{color:var(--accent);font-size:.7rem;font-weight:700;letter-spacing:.08em}.canvas-onboarding h2{margin:0;font-family:var(--serif);font-size:clamp(1.3rem,3vw,1.8rem);letter-spacing:-.025em}.canvas-onboarding>p{margin:0 0 .4rem}.canvas-onboarding ol{width:100%;display:grid;gap:.35rem;margin:.3rem 0 .8rem;padding:0;list-style:none;counter-reset:onboarding}.canvas-onboarding li{counter-increment:onboarding;display:grid;grid-template-columns:1.6rem 1fr;column-gap:.45rem;padding:.5rem 0;border-bottom:1px solid var(--border)}.canvas-onboarding li:before{content:counter(onboarding,decimal-leading-zero);grid-row:1 / 3;color:var(--ink-faint);font-family:var(--mono);font-size:.68rem}.canvas-onboarding li strong{font-size:.82rem}.canvas-onboarding li span{color:var(--ink-faint);font-size:.72rem}.work-card{content-visibility:visible}.idea-card,.search-hit,.timeline-item,.lore-card{content-visibility:auto;contain-intrinsic-size:auto 96px}html[data-layout=compact] .idea-card{content-visibility:visible}html[data-layout=compact] .work-grid{grid-template-columns:1fr;gap:1rem;max-width:26rem;margin-inline:auto}html[data-layout=compact] .work-grid>li{list-style:none;min-width:0;width:100%}html[data-layout=compact] .work-cover,html[data-layout=compact] .work-cover.has-image{aspect-ratio:3 / 2;min-height:11.5rem}html[data-layout=compact] .work-card-body{padding:.45rem .85rem .6rem}@media (max-width: 860px){:root{--control-h: var(--control-h-touch)}.structure-head{align-items:flex-start}.work-nav{border:0;border-radius:0;background:transparent}.map-legend{top:.45rem;left:.45rem;max-width:9rem;padding:.4rem .5rem}.canvas-overview{width:108px;height:66px}.mind-minimap{right:.45rem;top:.45rem}.map-bottom-chrome{left:max(.45rem,env(safe-area-inset-left,0px));right:max(.45rem,env(safe-area-inset-right,0px));bottom:max(.45rem,var(--safeb));align-items:stretch}.map-bottom-chrome-left{max-width:calc(100% - 7.75rem)}.map-overview-fold{min-height:36px;padding:.32rem .65rem;font-size:.72rem}.map-scale{max-width:100%;flex-wrap:wrap}.map-scale-bar{max-width:min(4.5rem,28vw)}.map-zoom{align-self:flex-end;min-height:40px;padding:.22rem .4rem}.map-zoom button{min-width:36px;min-height:36px;padding:.15rem .35rem}}.mm-node-search-wrap{position:relative;flex:0 1 11rem;min-width:7rem;display:flex;align-items:center}.mm-node-search{width:100%;min-height:32px;padding:.25rem 2.1rem .25rem .55rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);font-size:.78rem}.mm-node-search-count{position:absolute;right:.55rem;color:var(--ink-faint);font-size:.66rem;font-variant-numeric:tabular-nums;pointer-events:none}.mm-quick-menu{min-width:9rem}.mm-fab-add{display:none;position:absolute;right:.65rem;bottom:3.35rem;z-index:11;width:44px;height:44px;place-items:center;padding:0;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent);font-size:1.35rem;line-height:1;box-shadow:var(--shadow-md);cursor:pointer}@media (hover: none),(max-width: 860px){.mm-fab-add{display:grid}}@media (prefers-reduced-motion: reduce){.structure-page,.toast{animation:none}.mm-node,button,a,input,textarea,select{transition-duration:.01ms!important}}.rule-mode-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem .95rem;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.rule-mode-card.is-system{border-color:color-mix(in srgb,var(--accent) 26%,var(--border));background:color-mix(in srgb,var(--accent) 5%,var(--surface))}.rule-mode-card strong{font-size:.82rem}.rule-mode-card p{margin:.2rem 0 0}.rule-system-editor{display:grid;gap:1rem;padding-top:.35rem}.rule-system-head,.rule-children>header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.rule-system-head h3,.rule-children h3{margin:0;font-family:var(--serif);font-size:1rem}.rule-system-head p,.rule-children header p{margin:.18rem 0 0}.rule-system-empty{width:100%;min-height:108px;display:grid;place-content:center;gap:.35rem;border:1px dashed var(--border-strong);border-radius:12px;background:transparent;color:var(--ink-soft);text-align:center;cursor:pointer}.rule-system-empty:hover{border-color:var(--accent);background:var(--accent-soft)}.rule-system-empty:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rule-system-empty span{color:var(--ink-faint);font-size:.72rem}.markdown-field-pane[hidden]{display:none!important}.rule-system-layout{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1rem;align-items:stretch;min-width:0;max-width:100%}.rule-system-toc-rail{align-self:stretch;min-width:0;display:flex;flex-direction:column}.rule-system-toc-slot{position:sticky;top:calc(var(--header-h) + var(--safet, 0px) + .75rem);z-index:4;width:10.5rem;max-width:10.5rem;min-width:0;align-self:flex-start;flex:none;transition:width .18s var(--ease-ios),max-width .18s}@media (min-width: 1101px){.bible-detail .rule-system-toc-slot{top:.75rem}}@supports (height: 1cqh){@media (min-width: 1101px){.bible-detail{container-type:size}.bible-detail .rule-system-toc{max-height:calc(100cqh - 1.5rem)}.bible-detail .rule-system-toc-desktop{max-height:none}}}.rule-system-toc-slot.is-collapsed{width:1.85rem;max-width:1.85rem}.rule-system-toc-toggle{position:static;z-index:1;width:1.85rem;height:3.25rem;padding:0;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--ink-soft);font-size:1rem;line-height:1;cursor:pointer;box-shadow:var(--shadow-sm)}.rule-system-toc-toggle--in-head{flex:none;width:1.65rem;height:1.65rem;font-size:.88rem;border-radius:8px;box-shadow:none}.rule-system-toc-toggle:hover{color:var(--accent);background:var(--surface-2)}.rule-system-toc{position:relative;top:auto;z-index:1;align-self:start;display:flex;flex-direction:column;gap:0;min-height:0;max-height:calc(100vh - var(--header-h) - var(--safet, 0px) - 1.5rem);max-height:calc(100dvh - var(--header-h) - var(--safet, 0px) - 1.5rem);overflow:hidden;padding:.55rem .65rem .6rem;border-left:2px solid var(--border);background:var(--surface)}.rule-system-toc-head{position:static;z-index:2;flex:none;display:flex;align-items:center;justify-content:space-between;gap:.35rem;margin:0 0 .15rem;padding-bottom:.35rem;border-bottom:1px solid var(--border);background:var(--surface)}.rule-system-toc-kicker{flex:none;margin:0;color:var(--ink-faint);font-size:.66rem;font-weight:700;letter-spacing:.08em}.rule-system-toc-desktop{display:block;min-height:0;flex:1 1 auto;overflow-x:hidden;overflow-y:auto;max-height:calc(100vh - var(--header-h) - 7rem);max-height:calc(100dvh - var(--header-h) - 7rem);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;scrollbar-gutter:stable;padding-right:.12rem}.rule-system-toc-desktop a{display:block;margin-bottom:.12rem}.rule-system-toc-desktop a:last-child{margin-bottom:0}.rule-system-toc-desktop::-webkit-scrollbar{width:8px}.rule-system-toc-desktop::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ink-faint) 55%,transparent);border-radius:999px}.rule-system-toc-mobile-trigger,.rule-system-toc-mobile-panel{display:none}.rule-system-toc-mobile-trigger{width:100%;align-items:center;justify-content:space-between;gap:.5rem;padding:.55rem .65rem;border:0;border-radius:10px;background:var(--surface-2);color:var(--ink);font-size:.82rem;text-align:left;cursor:pointer}.rule-system-toc-mobile-title{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.rule-system-toc.is-open .rule-system-toc-mobile-trigger .chev{transform:rotate(90deg)}.rule-system-toc-mobile-links{display:grid;gap:.2rem;max-height:min(42vh,15rem);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;margin-top:.45rem;padding-top:.45rem;border-top:1px solid var(--border)}.rule-system-toc-mobile-links a{display:block;padding:.42rem .5rem;border-radius:8px;color:var(--ink-soft);font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rule-system-toc-mobile-links a:active{background:var(--accent-soft);color:var(--accent)}.rule-system-toc a{overflow:hidden;padding:.35rem .4rem;border-radius:6px;color:var(--ink-soft);font-size:.82rem;line-height:1.45;white-space:nowrap;text-overflow:ellipsis}.rule-system-toc a:hover{background:var(--surface-2);color:var(--accent)}.rule-sections{display:grid;gap:.8rem}.rule-section{position:relative;z-index:0;display:grid;grid-template-columns:2rem minmax(0,1fr) auto;gap:.45rem;padding:.8rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);min-width:0;max-width:100%;overflow-x:hidden}.rule-section.is-new{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent);animation:rule-section-flash 1.2s ease-out}@keyframes rule-section-flash{0%{background:color-mix(in srgb,var(--accent) 14%,var(--surface))}to{background:var(--surface)}}.rule-section-index{padding-top:.48rem;color:var(--ink-faint);font-family:var(--mono);font-size:.66rem}.rule-section>input{min-width:0;border:0;background:transparent;font-family:var(--serif);font-size:1rem;font-weight:650}.rule-section>textarea,.rule-section>.rule-section-body{grid-column:2;min-width:0}.rule-section-body{display:grid;gap:.45rem;min-width:0;max-width:100%;overflow-x:hidden}.rule-section-body-bar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.rule-section-body-tabs{display:inline-flex;padding:2px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface)}.rule-section-body-tabs button{min-height:1.55rem;padding:0 .55rem;border:0;border-radius:999px;background:transparent;color:var(--ink-soft);font-size:.68rem;cursor:pointer}.rule-section-body-tabs button:hover{background:transparent;color:var(--ink)}.rule-section-body-tabs button.active{background:var(--accent-soft);color:var(--accent);font-weight:650;box-shadow:none}.rule-section-body-tabs button.active:hover{background:var(--accent-soft);color:var(--accent)}.rule-section-source{min-height:7rem;border:0;background:transparent;line-height:1.75;resize:vertical;font-family:var(--mono);font-size:.82rem}.rule-section-preview-empty{margin:0;padding:.35rem 0}.rule-section-md{min-height:5rem;min-width:0;max-width:100%;overflow-x:hidden;padding:.15rem 0 .35rem;line-height:1.75;color:var(--ink)}.rule-section-md>:first-child{margin-top:0}.rule-section-md>:last-child{margin-bottom:0}.rule-section-md p{margin:.55rem 0}.rule-section-md ul,.rule-section-md ol{margin:.45rem 0;padding-left:1.25rem;list-style-position:outside}.rule-section-md ul{list-style:disc outside}.rule-section-md ol{list-style:decimal outside}.rule-section-md li{display:list-item}.rule-section-md li+li{margin-top:.25rem}.rule-section-md strong{font-weight:650}.rule-section-md .md-table-scroll{margin:.65rem 0}.rule-section-md .md-table-scroll table{font-size:.82rem}.rule-section-md blockquote{margin:.55rem 0;padding-left:.75rem;border-left:3px solid var(--border-strong);color:var(--ink-soft)}.rule-section-md code{font-family:var(--mono);font-size:.88em;padding:.08rem .28rem;border-radius:4px;background:var(--surface-2)}.rule-section-md pre{overflow-x:auto;margin:.55rem 0;padding:.65rem .75rem;border-radius:8px;background:var(--surface-2)}.rule-section-md pre code{padding:0;background:transparent}.rule-section-plain-pre{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.75;font-size:.84rem;color:var(--ink)}.rule-section-tools{grid-column:3;grid-row:1 / span 2;align-self:start;display:flex;flex-direction:column;gap:.12rem}.rule-section-move{width:1.65rem;height:1.35rem;padding:0;font-size:.72rem;line-height:1;opacity:.45}.rule-section-move:disabled{opacity:.15;cursor:default}.rule-section:hover .rule-section-move,.rule-section:focus-within .rule-section-move{opacity:1}.rule-section>input:focus,.rule-section-source:focus,.rule-section>textarea:focus{box-shadow:none}.rule-section-delete{width:1.65rem;height:1.35rem;padding:0;font-size:.72rem;opacity:0}.rule-section:hover .rule-section-delete,.rule-section:focus-within .rule-section-delete{opacity:1}.rule-children{display:grid;gap:.65rem;padding:.9rem;border:1px solid var(--border);border-radius:12px}.rule-children select,.rule-parent-field select{min-height:34px}.rule-children ul{display:grid;gap:.35rem;margin:0;padding:0;list-style:none}.rule-children li{display:grid;grid-template-columns:minmax(8rem,auto) minmax(0,1fr) auto;align-items:center;gap:.7rem;padding:.45rem .55rem;border-radius:7px;background:var(--surface-2)}.rule-children li>span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}@media (max-width: 860px){.rule-children li{grid-template-columns:minmax(0,1fr) auto}.rule-children li>.link-button{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.rule-children li>span{grid-column:1 / -1}.rule-mode-card,.rule-system-head,.rule-children>header{align-items:stretch;flex-direction:column}.rule-system-layout{grid-template-columns:1fr;gap:.75rem;align-items:start}.rule-system-toc-rail{align-self:auto}.rule-system-toc-slot{position:static;width:100%;max-width:none}.rule-system-toc-toggle{display:none}.rule-system-toc{position:sticky;top:calc(var(--header-h) + var(--safet, 0px) + .35rem);z-index:4;display:block;padding:.55rem .65rem;border:1px solid var(--border);border-left:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-sm)}.rule-system-toc-head,.rule-system-toc-desktop{display:none}.rule-system-toc-mobile-trigger,.rule-system-toc-mobile-panel{display:block}.rule-system-toc-mobile-trigger{display:flex}.rule-sections{margin-top:.15rem}.bible-body>.left-rail-slot{width:100%;max-width:none}.bible-body>.left-rail-slot.is-collapsed{width:100%;max-width:none}.bible-body>.left-rail-slot.is-collapsed>aside{position:static;opacity:1;visibility:visible;pointer-events:auto}.bible-body .left-rail-toggle{display:none}.left-rail-slot--bible{--left-rail-width: 100%}.left-rail-slot--bible>aside{width:100%;max-width:none}.bible-rail{padding:.45rem .5rem}.bible-rail-fold{display:flex;width:100%;align-items:center;justify-content:space-between;gap:.5rem;margin:0;padding:.15rem 0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.bible-rail-inner{max-height:min(46vh,17.5rem);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-top:.35rem}.bible-new{margin-bottom:.45rem;padding-bottom:.45rem}.bible-new-kinds{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.3rem}.bible-kind-chip{justify-content:center;padding:.28rem .35rem;font-size:.68rem}.rule-section-body-tabs button{min-height:2.75rem;padding:0 .85rem;font-size:.8rem}.structure-page.bible-page{padding:.55rem max(.35rem,var(--safel)) calc(1.75rem + var(--safeb)) max(.35rem,var(--safer))}.structure-page.bible-page .structure-head{margin-bottom:.45rem;padding-bottom:.45rem}.structure-page.bible-page .structure-title h1{font-size:1.25rem}.bible-body{gap:.28rem}.lore-detail{padding:.55rem .45rem .7rem;border-radius:10px}.lore-detail-head{margin-bottom:.45rem;gap:.35rem}.lore-name-input{font-size:1.08rem}.lore-field{margin-bottom:.5rem}.lore-field input,.lore-field textarea,.lore-field select{padding:.38rem .42rem}.lore-field .rule-section-md{padding:.12rem 0 .25rem;border:0;background:transparent}.markdown-field-source{padding:.38rem .42rem}.rule-mode-card{padding:.55rem .5rem;gap:.5rem}.rule-system-editor{margin-top:.15rem}.rule-section{grid-template-columns:1.25rem minmax(0,1fr);grid-template-rows:auto auto minmax(0,auto);padding:.48rem .42rem .52rem;gap:.28rem .32rem}.rule-section-index{padding-top:.32rem}.rule-section>input{grid-column:2 / -1;font-size:.94rem}.rule-section-tools{grid-column:2 / -1;grid-row:2;flex-direction:row;justify-content:flex-end}.rule-section>.rule-section-body{grid-column:1 / -1;grid-row:3}.rule-section-body-bar>.muted.small{display:none}.rule-section-md{padding-left:0;padding-right:0}}.world-preset-grid{display:grid;gap:.5rem;margin-top:.55rem}.world-preset-grid button{display:grid;gap:.18rem;padding:.75rem .8rem;border:1px solid var(--border);border-radius:10px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 7%,transparent),transparent 54%),var(--surface);color:var(--ink);text-align:left}.world-preset-grid button:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));box-shadow:0 8px 22px color-mix(in srgb,var(--accent) 9%,transparent);transform:translateY(-1px)}.world-preset-grid strong{font-family:var(--serif);font-size:.86rem}.world-preset-grid span{color:var(--ink-faint);font-size:.68rem}.map-span-preset-list{display:grid;gap:.45rem;margin:.55rem 0 .65rem;padding:0;list-style:none}.map-span-preset-list li{display:grid;grid-template-columns:minmax(0,1fr) minmax(5.5rem,7rem) auto;gap:.45rem;align-items:center;padding:.35rem .4rem;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.map-span-preset-list li.active{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}.map-span-preset-apply{display:grid;gap:.12rem;padding:.35rem .45rem;border:none;border-radius:8px;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.map-span-preset-apply:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}.map-span-preset-apply strong{font-family:var(--serif);font-size:.84rem}.map-span-preset-apply span{color:var(--ink-faint);font-size:.65rem}.map-span-preset-readout{color:var(--ink-faint);font-size:.68rem;white-space:nowrap}.landmass-list{display:grid;gap:.3rem;margin:.55rem 0 .7rem;padding:0;list-style:none}.landmass-list li{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem .55rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);font-size:.78rem}.landmass-list li.active{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:var(--accent-soft)}.landmass-list small{color:var(--ink-faint);font-size:.66rem}.landmass-list .landmass-name-input{flex:1;min-width:0;text-align:left;border:none;background:transparent;padding:.1rem .2rem;margin:-.1rem -.2rem;color:var(--ink);font-size:inherit;font-family:inherit;border-radius:4px;pointer-events:auto;cursor:text}.landmass-list .landmass-name-input:focus{outline:none;background:color-mix(in srgb,var(--surface) 70%,var(--accent-soft));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}.landmass-list .landmass-actions{display:inline-flex;gap:.4rem;align-items:center;flex:none}.landmass-list .landmass-actions .link-button{font-size:.68rem;padding:0}.link-button.danger{color:var(--danger, #c0392b)}.link-button.danger:hover{text-decoration:underline}.deleted-maps{margin:.6rem 0;padding:.5rem .55rem;border:1px dashed var(--border);border-radius:8px;font-size:.74rem}.rail-more-panel .rail-more-deleted.deleted-maps{margin:.15rem 0 0;padding:0;border:none;border-radius:9px;background:var(--surface-2)}.rail-more-panel .rail-more-deleted summary{list-style:none;display:flex;align-items:center;gap:.35rem;padding:.45rem .55rem;font-size:.78rem;color:var(--ink-soft);border-radius:9px}.rail-more-panel .rail-more-deleted summary::-webkit-details-marker{display:none}.rail-more-panel .rail-more-deleted summary:before{content:"▸";font-size:.65rem;color:var(--ink-faint);transition:transform .12s var(--ease-ios)}.rail-more-panel .rail-more-deleted[open] summary:before{transform:rotate(90deg)}.rail-more-panel .rail-more-deleted[open] summary{border-bottom-left-radius:0;border-bottom-right-radius:0}.rail-more-panel .rail-more-deleted ul{max-height:min(11rem,40vh);overflow-y:auto;overscroll-behavior:contain;padding:.25rem .45rem .4rem;margin:0}.rail-more-panel .rail-more-deleted li{padding:.2rem 0}.deleted-maps summary{cursor:pointer;color:var(--ink-faint);-webkit-user-select:none;user-select:none}.deleted-maps ul{margin:.5rem 0 0;padding:0;list-style:none;display:grid;gap:.3rem}.deleted-maps li{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.deleted-maps li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toast-restore{font-weight:600;color:var(--accent)}.map-base-title{display:block;margin-top:1rem}.faction-draw-cta{width:100%;min-height:34px;margin:.4rem 0;border:1px dashed color-mix(in srgb,var(--accent) 45%,var(--border));border-radius:8px;background:var(--accent-soft);color:var(--accent);font-size:.72rem}.map-concept-help{display:grid;gap:.3rem;padding:.25rem 0}.map-concept-help strong:not(:first-child){margin-top:.65rem}.map-concept-help p{margin:0;line-height:1.6}.map-base{transition:opacity var(--dur-enter)}.map-legend span.pending{opacity:.62}.map-legend span em{margin-left:auto;color:var(--ink-faint);font-size:.58rem;font-style:normal}.mm-shell{background-color:color-mix(in srgb,var(--surface-2) 92%,var(--accent) 8%);background-image:radial-gradient(circle at 20% 14%,color-mix(in srgb,var(--accent) 8%,transparent),transparent 32%),radial-gradient(circle,color-mix(in srgb,var(--ink-faint) 30%,transparent) .8px,transparent 1px),radial-gradient(circle,color-mix(in srgb,var(--ink-faint) 12%,transparent) .5px,transparent .7px);background-size:100% 100%,24px 24px,96px 96px;background-position:0 0,0 0,0 0;box-shadow:inset 0 1px color-mix(in srgb,var(--paper) 65%,transparent),inset 0 0 90px color-mix(in srgb,var(--ink) 4%,transparent)}.mm-branch{stroke:color-mix(in srgb,var(--ink-faint) 52%,var(--border));stroke-width:1.05;stroke-linecap:round;filter:drop-shadow(0 1px 0 color-mix(in srgb,var(--surface) 70%,transparent))}.mm-branch.depth-1{stroke:color-mix(in srgb,var(--ink-faint) 62%,var(--border-strong));stroke-width:1.15}.mm-branch.depth-3{stroke-width:.95;opacity:.58}.mm-branch.on-path,.mm-branch.linked{stroke:color-mix(in srgb,var(--accent) 72%,var(--border-strong));stroke-width:2.1;opacity:1}.mm-branch,.mm-relation{transition:opacity var(--dur-enter)}.mm-branch.dimmed,.mm-relation.dimmed{opacity:.1}.mm-relation path{stroke-width:1.55;filter:drop-shadow(0 1px 2px color-mix(in srgb,var(--ink) 12%,transparent))}.mm-relation.cross-branch path{stroke-dasharray:6 5}.mm-relation.linked path{stroke-width:2.5;opacity:1}.mm-node{min-height:34px;align-items:center;padding:.48rem .72rem .48rem .5rem;border:1px solid color-mix(in srgb,var(--border-strong) 72%,transparent);border-left-width:3px;border-radius:11px;background:linear-gradient(145deg,color-mix(in srgb,var(--paper) 55%,transparent),transparent),var(--surface);box-shadow:0 1px 2px color-mix(in srgb,var(--ink) 7%,transparent),0 7px 18px color-mix(in srgb,var(--ink) 4%,transparent);font-size:.84rem;font-weight:520}.mm-node:hover{border-color:color-mix(in srgb,var(--accent) 30%,var(--border-strong));box-shadow:0 2px 4px color-mix(in srgb,var(--ink) 8%,transparent),0 10px 24px color-mix(in srgb,var(--ink) 7%,transparent);transform:translateY(-1px)}.mm-node.root{min-height:48px;max-width:300px;padding:.65rem .95rem .65rem .65rem;border:1px solid color-mix(in srgb,var(--accent) 42%,var(--border));border-left-width:4px;border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 16%,var(--surface)),var(--surface));box-shadow:0 12px 34px color-mix(in srgb,var(--accent) 14%,transparent),inset 0 1px color-mix(in srgb,var(--paper) 60%,transparent);font-family:var(--serif);font-size:1rem;font-weight:700;letter-spacing:-.015em}.mm-node.depth-1{min-height:40px;font-size:.9rem;font-weight:650}.mm-node.depth-2{font-weight:570}.mm-node.depth-3{min-height:30px;color:var(--ink-soft);font-size:.78rem}.mm-node-glyph{width:20px;height:20px;border-radius:6px;box-shadow:inset 0 1px #ffffff59}.mm-node.root .mm-node-glyph{width:24px;height:24px;border-radius:8px}.mm-node.selected{outline:2px solid color-mix(in srgb,var(--accent) 86%,white);outline-offset:2px;box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 10%,transparent),0 14px 34px color-mix(in srgb,var(--accent) 18%,transparent)}.mm-node.dimmed{filter:grayscale(.6)}.mm-zoom{border:1px solid var(--border);border-radius:10px;background:var(--glass-strong);box-shadow:var(--shadow-md);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.idea-card-actions{position:relative;flex-wrap:nowrap;align-items:center;gap:.35rem}.idea-assign-select{flex:1 1 auto;min-width:0;max-width:12rem;min-height:30px;padding:.28rem 1.35rem .28rem .5rem;border:1px solid var(--border-strong);border-radius:8px;font-size:.72rem;font-weight:500;color:var(--ink);background-color:var(--surface);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%235c5348' d='M2.2 4.4 6 8.2 9.8 4.4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .45rem center;background-size:.65rem}[data-theme=dark] .idea-assign-select{background-color:var(--surface);color:var(--ink);border-color:var(--border-strong);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23c8c8cd' d='M2.2 4.4 6 8.2 9.8 4.4'/%3E%3C/svg%3E")}.idea-assign-select option{color:var(--ink);background:var(--surface)}.idea-develop-trigger{flex:0 0 auto;white-space:nowrap}.ghost-button.idea-develop-trigger:hover{background:var(--accent-soft);color:var(--accent)}.idea-more-trigger{flex:0 0 auto;width:30px;height:30px}.idea-more-panel{min-width:11.5rem}.idea-more-panel .rail-more-item{width:100%;text-decoration:none}.idea-more-status{display:grid;gap:.2rem;padding:.35rem .55rem}.select-compact{min-height:30px;padding:.28rem 1.2rem .28rem .45rem;font-size:.74rem;color:var(--ink);border:1px solid var(--border-strong);border-radius:8px;background-color:var(--surface);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%235c5348' d='M2.2 4.4 6 8.2 9.8 4.4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .4rem center;background-size:.65rem}.idea-develop-panel{display:flex;flex-wrap:wrap;gap:.4rem;align-items:end;padding:.6rem .65rem;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));border-radius:11px;background:color-mix(in srgb,var(--accent) 5%,var(--surface));animation:workspace-enter var(--dur-enter) var(--ease-out) both}.idea-develop-panel>div{display:grid;flex:1 1 100%;gap:.16rem}.idea-develop-panel input{flex:1 1 12rem;min-height:30px;padding:.25rem .5rem;font-size:.74rem;color:var(--ink);border:1px solid var(--border-strong);border-radius:8px;background-color:var(--surface)}.idea-develop-panel input:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:1px}.idea-develop-panel select,.idea-develop-panel .primary-button{min-height:30px;padding:.25rem 1.35rem .25rem .5rem;font-size:.74rem}.idea-develop-panel select{border:1px solid var(--border-strong);border-radius:8px;color:var(--ink);background-color:var(--surface);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%235c5348' d='M2.2 4.4 6 8.2 9.8 4.4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .45rem center;background-size:.65rem}[data-theme=dark] .idea-develop-panel select{background-color:var(--surface);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23c8c8cd' d='M2.2 4.4 6 8.2 9.8 4.4'/%3E%3C/svg%3E")}.idea-develop-panel .primary-button{padding:.25rem .5rem}.idea-developments{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.idea-developments a{max-width:14rem;overflow:hidden;padding:.25rem .5rem;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink-soft);font-size:.68rem;white-space:nowrap;text-overflow:ellipsis}.idea-developments a:hover{border-color:var(--accent);color:var(--accent)}.idea-links-more{border-top:1px dashed var(--border)}.idea-links-more>summary{padding-top:.45rem;color:var(--ink-faint);font-size:.7rem;cursor:pointer}.idea-links-more .idea-links{border-top:0}@media (max-width: 760px){.idea-card-actions{gap:.4rem}.idea-assign-select,.select-compact,.idea-develop-panel select,.idea-develop-panel input,.idea-develop-panel .primary-button{min-height:44px}.idea-develop-panel input{flex:1 1 100%}.idea-develop-trigger{min-height:44px;padding:.38rem .85rem}.idea-more-trigger{width:44px;height:44px}.idea-develop-panel{grid-template-columns:1fr}}.site-beian{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem 1rem;margin-top:1.25rem;font-size:.7rem;line-height:1.6;color:var(--ink-faint);text-align:center}.site-beian a{color:var(--ink-faint);text-decoration:none;transition:color .15s ease}.site-beian a:hover{color:var(--accent);text-decoration:underline}.auth-panel>.site-beian{margin-top:1rem;font-size:.66rem}.page-foot>.site-beian{margin:0;font-size:.66rem;justify-content:flex-end}@media (max-width: 860px){.page-shelf .shelf-foot{margin-bottom:calc(var(--tabbar-h) + var(--safeb) + .5rem)}}
