@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:300;font-display:swap;src:url(../media/c412b9dae757a56d-s.p.1cdo_ayqo8nkw.woff2)format("woff2");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:300;font-display:swap;src:url(../media/c667f24a0ff78f14-s.2uew94uao4-oz.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:300;font-display:swap;src:url(../media/eb89c7e1d2156adb-s.3h2q_oi0hwy8r.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:300;font-display:swap;src:url(../media/c24ca030dfcb5061-s.p.42x_n7yf15d0k.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:400;font-display:swap;src:url(../media/c9a0d344f313d307-s.p.3ik2qu-u9tgho.woff2)format("woff2");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:400;font-display:swap;src:url(../media/aa914dbbd9a27e94-s.0n4hkusom70ae.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5a1ede1938590d51-s.19gzon4xl8qiz.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5d6231e6818a3930-s.p.2vs72h_x6qrve.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:500;font-display:swap;src:url(../media/280fac012b00b901-s.p.3ihiqn4pviisd.woff2)format("woff2");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:500;font-display:swap;src:url(../media/65b08f011bd29e21-s.00vfn3_g-ftpg.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a1b65e215f8df202-s.3w3hylgez90of.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:500;font-display:swap;src:url(../media/3347fc7792f0b5ea-s.p.0c7ha31nuacbu.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:600;font-display:swap;src:url(../media/ceec3e50f42c26e3-s.p.0da8nscnv1nkd.woff2)format("woff2");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b140408e2d7eae5d-s.2x1j3gzzngp4x.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:600;font-display:swap;src:url(../media/d3af3242084a193c-s.1jr_z050he_qo.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:600;font-display:swap;src:url(../media/441492499fc86682-s.p.1fbvi_fot8u4l.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:700;font-display:swap;src:url(../media/5ad8fdb5805e9b4a-s.p.0-uv4l43gdmt7.woff2)format("woff2");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:700;font-display:swap;src:url(../media/bb8a9270184a3556-s.0phk7_etl12r4.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b3f2ed44161db83e-s.3c64at4xi6rda.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:700;font-display:swap;src:url(../media/84cd8d504984ae62-s.p.0iritm8hg8q1a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Arabic Fallback;src:local(Arial);ascent-override:107.25%;descent-override:41.02%;line-gap-override:0.0%;size-adjust:101.17%}.ibm_plex_sans_arabic_6335932b-module__II5Zpq__className{font-family:IBM Plex Sans Arabic,IBM Plex Sans Arabic Fallback;font-style:normal}.ibm_plex_sans_arabic_6335932b-module__II5Zpq__variable{--font-plex:"IBM Plex Sans Arabic", "IBM Plex Sans Arabic Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--juniper:#21342a;--juniper-deep:#15211a;--stone:#48413a;--sky:#b6d0d2;--sand:#e6dcc7;--cloud:#f4efe4;--white:#fdfbf6;--sage:#8b948a;--night:#1d1e1a;--danger:#9b3f36;--mist:#edeee6;--surface-page:var(--cloud);--surface-card:var(--white);--surface-sunken:var(--cloud);--surface-timeline:#e6dcc766;--surface-frozen:#efe8d9;--surface-focus:#f1ebde;--hairline:#48413a1c;--hairline-strong:#48413a3d;--ink-heading:var(--juniper);--ink-body:var(--stone);--ink-secondary:#48413acc;--ink-faint:#48413a70;--ink-on-dark:var(--cloud);--accent-sky:var(--sky);--accent-sand:var(--sand);--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:32px;--space-6:48px;--space-7:64px;--radius-sm:10px;--radius-btn:12px;--radius-md:16px;--radius-lg:20px;--radius-xl:24px;--radius-pill:999px;--font-sans:var(--font-plex), "IBM Plex Sans Arabic", "Segoe UI", system-ui, sans-serif;--text-display:44px;--text-h1:34px;--text-h2:26px;--text-body:18px;--text-label:15px;--text-hint:13px;--text-caption:12px;--leading-tight:1.2;--leading-heading:1.22;--leading-body:1.7;--leading-prose:1.9;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--letter-heading-ar:0;--shadow-card:0 1px 2px #21342a0d, 0 8px 20px #21342a0d;--shadow-raised:0 2px 4px #21342a0f, 0 14px 34px #21342a12;--shadow-pop:0 4px 8px #21342a14, 0 28px 64px #21342a29;--shadow-ambient:0 12px 30px #21342a0f;--shadow:var(--shadow-raised);--dur-fast:.12s;--dur-base:.2s;--dur-slow:.32s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-entrance:cubic-bezier(.16, 1, .3, 1);--press-brightness:.94;--grain-opacity:.5;--texture-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)' opacity='0.06'/%3E%3C/svg%3E");--focus-border:var(--sky);--focus-ring:0 0 0 4px #b6d0d273;--page-margin:32px;--grid-gutter:24px;--shell-max:1200px}@media (min-width:768px){:root{--page-margin:64px}}[data-theme=night]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--juniper:#b7cfc0;--juniper-deep:#cadfd2;--stone:#d3ccbe;--sand:#a99a72;--cloud:#1d1e1a;--white:#26271f;--sage:#99a396;--danger:#d47c72;--mist:#2b2c25;--surface-timeline:#a99a721f;--surface-frozen:#2a2b24;--surface-focus:#191a15;--hairline:#f4efe41c;--hairline-strong:#f4efe43d;--ink-secondary:#e6e1d5c2;--ink-faint:#e6e1d56b;--ink-on-dark:#1c221d;--shadow-card:0 1px 2px #0000003d, 0 8px 20px #00000038;--shadow-raised:0 2px 4px #00000042, 0 14px 34px #00000042;--shadow-pop:0 4px 8px #0000004d, 0 28px 64px #0006;--shadow-ambient:0 12px 30px #0000003d;--grain-opacity:.25;--focus-ring:0 0 0 4px #b6d0d24d;--press-brightness:1.12}
*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--hairline-strong) transparent}::-webkit-scrollbar{block-size:10px;inline-size:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background-color:var(--hairline-strong);background-clip:padding-box;border:2px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background-color:var(--sage)}html{background:var(--surface-page);min-block-size:100%}body{min-block-size:100%;color:var(--ink-body);background:var(--surface-page);font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;position:relative}body:before{content:"";z-index:0;pointer-events:none;opacity:var(--grain-opacity);background-image:var(--texture-grain);background-size:180px 180px;position:fixed;inset:0}body>*{z-index:1;position:relative}@media (prefers-reduced-data:reduce){body:before{display:none}}@media (prefers-reduced-transparency:reduce){body:before{display:none}}h1,h2,h3,h4{color:var(--ink-heading);line-height:var(--leading-heading);font-weight:var(--weight-semibold);margin:0}p{margin:0}a{color:inherit}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}[dir=rtl] body{text-align:right}:focus{outline:none}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[role=button]:focus-visible,[tabindex]:focus-visible,.ui-btn:focus-within,.avatar-upload:focus-within{box-shadow:var(--focus-ring);outline:none}a,button,[role=button],.ui-btn,.avatar-upload,.cover-choice__swatch,.character-row,.world-entry-node,.character-tab,.detail-tab,.reference-filter,.project-search-filter,.project-search-result,.project-nav-bar__link,.app-home-link,.color-swatch,.chip-x,.overview-secondary-card{transition:color var(--dur-fast) var(--ease-standard), background-color var(--dur-base) var(--ease-standard), border-color var(--dur-base) var(--ease-standard), box-shadow var(--dur-base) var(--ease-standard), filter var(--dur-fast) var(--ease-standard), transform var(--dur-fast) var(--ease-standard)}a:active,button:active,[role=button]:active,.ui-btn:active,.avatar-upload:active,.cover-choice__swatch:active,.color-swatch:active,.chip-x:active{filter:brightness(var(--press-brightness))}@media (prefers-reduced-motion:no-preference){button:active,[role=button]:active,.ui-btn:active,.avatar-upload:active,.cover-choice__swatch:active,.color-swatch:active,.chip-x:active{transform:scale(.98)}}:is([disabled]:active,[aria-disabled=true]:active,.ui-btn:has(input:disabled):active,.avatar-upload:has(input:disabled):active){filter:none;transform:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.lucide{stroke-width:1.75px}.tnum{font-variant-numeric:tabular-nums}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}
.brand-lockup{align-items:center;gap:var(--space-2);color:var(--ink-heading);font-size:var(--text-h1);font-weight:var(--weight-bold);text-decoration:none;display:inline-flex}.brand-lockup.compact{font-size:var(--text-h2)}.brand-image{object-fit:contain;filter:drop-shadow(0 2px 6px #21342a1a);block-size:2.35rem;inline-size:2.35rem;transition:transform var(--dur-base) var(--ease-standard)}.brand-lockup.compact .brand-image{block-size:2rem;inline-size:2rem}@media (prefers-reduced-motion:no-preference){.brand-lockup:hover .brand-image{transform:rotate(-3deg)scale(1.05)}}
.ui-btn{justify-content:center;align-items:center;gap:var(--space-2);min-block-size:44px;padding:0 var(--space-4);border-radius:var(--radius-btn);font-size:var(--text-label);font-weight:var(--weight-medium);cursor:pointer;transition:background-color var(--dur-base) var(--ease-standard), box-shadow var(--dur-base) var(--ease-standard), color var(--dur-fast) var(--ease-standard), filter var(--dur-fast) var(--ease-standard), transform var(--dur-fast) var(--ease-standard);border:0;text-decoration:none;display:inline-flex}.ui-btn[disabled],.ui-btn[aria-disabled=true]{cursor:not-allowed}.ui-btn:has(input:disabled){cursor:not-allowed}.ui-btn--block{inline-size:100%;display:flex}.ui-btn--primary{color:var(--ink-on-dark);background:var(--juniper);box-shadow:0 2px 8px #21342a24}.ui-btn--primary:hover{background:var(--juniper-deep);transform:translateY(-1px);box-shadow:0 6px 18px #21342a33}.ui-btn--primary:active{transform:translateY(0)}.ui-btn--primary[disabled],.ui-btn--primary[aria-disabled=true]{background:#23362a47}.ui-btn--secondary{color:var(--juniper);background:var(--white);box-shadow:inset 0 0 0 1.5px var(--juniper)}.ui-btn--secondary:hover{background:var(--mist)}.ui-btn--secondary[disabled],.ui-btn--secondary[aria-disabled=true]{color:#4a443c59;box-shadow:inset 0 0 0 1.5px #4a443c38}.ui-btn--ghost{color:var(--juniper);background:0 0}.ui-btn--ghost:hover{background:#23362a12}.ui-btn--ghost[disabled],.ui-btn--ghost[aria-disabled=true]{color:#4a443c59}.ui-btn__icon{flex:none;display:inline-flex}.ui-btn__icon svg,.icon-btn svg{block-size:18px;inline-size:18px}.icon-btn{block-size:32px;inline-size:32px;color:var(--ink-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--dur-base) var(--ease-standard), box-shadow var(--dur-base) var(--ease-standard), color var(--dur-fast) var(--ease-standard), filter var(--dur-fast) var(--ease-standard), transform var(--dur-fast) var(--ease-standard);background:0 0;border:0;flex:none;place-items:center;padding:0;display:inline-grid}.icon-btn:hover{color:var(--juniper);background:#23362a12;transform:scale(1.06)}.icon-btn:active{transform:scale(.96)}.icon-btn[aria-pressed=true]{color:var(--juniper);box-shadow:inset 0 0 0 1.5px var(--sky);background:#23362a14}.icon-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.icon-btn[disabled],.icon-btn[aria-disabled=true]{opacity:.35;cursor:not-allowed}.ui-btn:has(input:disabled){color:#4a443c59;background:var(--white);filter:none;transform:none;box-shadow:inset 0 0 0 1.5px #4a443c38}.ui-btn:has(input:disabled):hover{color:#4a443c59;background:var(--white);filter:none;transform:none;box-shadow:inset 0 0 0 1.5px #4a443c38}.ui-btn:has(input:disabled):active{color:#4a443c59;background:var(--white);filter:none;transform:none;box-shadow:inset 0 0 0 1.5px #4a443c38}
.ui-field{gap:var(--space-2);display:grid}.ui-field__label{font-size:var(--text-label);font-weight:var(--weight-medium);color:var(--ink-secondary)}.ui-input,.ui-textarea{min-block-size:44px;inline-size:100%;min-inline-size:0;padding:12px var(--space-3);color:var(--ink-body);background:var(--white);border:1px solid var(--hairline-strong);border-radius:var(--radius-btn);font-size:var(--text-body);transition:border-color var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard), background-color var(--dur-fast) var(--ease-standard)}.ui-input::placeholder,.ui-textarea::placeholder{color:var(--ink-faint)}.ui-input:focus,.ui-textarea:focus{border-color:var(--focus-border);padding:11px calc(var(--space-3) - 1px);box-shadow:var(--focus-ring);background:#fffdf8;border-width:2px;outline:none}.ui-textarea{min-block-size:8rem;line-height:var(--leading-body);font-weight:var(--weight-light);resize:vertical}.ui-input[disabled],.ui-textarea[disabled]{color:var(--ink-faint);background:#eeefea}.ui-search{align-items:center;display:flex;position:relative}.ui-search__icon{color:var(--ink-secondary);pointer-events:none;display:inline-flex;position:absolute;inset-inline-start:var(--space-3)}.ui-search .ui-input{padding-inline-start:calc(var(--space-3) + 28px)}
.ui-card{background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-xl);box-shadow:var(--shadow-card)}.ui-card--flat{box-shadow:none}.ui-cover{place-items:center;block-size:130px;display:grid;position:relative}.ui-cover--juniper{background:linear-gradient(155deg, var(--juniper), var(--juniper-deep))}.ui-cover--sky{background:linear-gradient(155deg, var(--sky), #b6d0d2b8)}.ui-cover--sand{background:linear-gradient(155deg, var(--sand), #e6dcc7c7)}.ui-cover:before{content:"";pointer-events:none;background-image:repeating-linear-gradient(var(--cover-texture-angle,20deg), var(--cover-texture-line,#ffffff38) 0, var(--cover-texture-line,#ffffff38) 1px, transparent 1px, transparent var(--cover-texture-spacing,24px));position:absolute;inset:0}.ui-cover--sky:before,.ui-cover--sand:before{--cover-texture-line:#21342a1a}.ui-cover:after{content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 1px #ffffff47,inset 0 -16px 28px -18px #0000002e}.ui-cover img{block-size:auto;inline-size:78px;position:relative}.project-card{color:inherit;transition:box-shadow var(--dur-base) var(--ease-standard), transform var(--dur-base) var(--ease-standard);flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.project-card:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.project-card .ui-cover img{transition:transform var(--dur-slow) var(--ease-standard)}.project-card:hover .ui-cover img{transform:scale(1.05)}.project-card__body{gap:var(--space-2);padding:var(--space-4);display:grid}.project-card__title{font-size:var(--text-h2);font-weight:var(--weight-semibold);color:var(--ink-heading)}.project-card__meta{color:var(--ink-secondary);font-size:var(--text-label);font-variant-numeric:tabular-nums}.new-project-card{place-items:center;gap:var(--space-3);min-block-size:220px;padding:var(--space-4);color:var(--ink-secondary);border-radius:var(--radius-lg);font-size:var(--text-label);transition:border-color var(--dur-base) var(--ease-standard), color var(--dur-base) var(--ease-standard), background-color var(--dur-base) var(--ease-standard), transform var(--dur-base) var(--ease-standard);background:#e6dcc724;border:2px dashed #48413a40;text-decoration:none;display:grid}.new-project-card:hover{color:var(--juniper);border-color:var(--juniper);background:#21342a0a;transform:translateY(-2px)}.new-project-card svg{transition:transform var(--dur-base) var(--ease-standard)}.new-project-card:hover svg{transform:scale(1.06)}
.ui-pill{border-radius:var(--radius-pill);font-size:var(--text-label);font-weight:var(--weight-medium);white-space:nowrap;align-items:center;gap:6px;padding:6px 14px;display:inline-flex}.ui-pill--idea{color:var(--ink-secondary);background:var(--cloud);border:1px solid var(--hairline)}.ui-pill--outline{color:var(--stone);background:var(--sand)}.ui-pill--draft{color:var(--ink-on-dark);background:var(--juniper)}.ui-pill--done{color:var(--juniper);background:var(--sky);box-shadow:inset 0 0 0 1px #b6d0d299}.ui-chip{color:var(--juniper);background:var(--cloud);border:1px solid var(--hairline-strong);border-radius:var(--radius-pill);font-size:var(--text-label);align-items:center;gap:6px;padding:6px 14px;display:inline-flex}.ui-chip--accent{background:var(--sky);border-color:#0000}
.ui-segmented{background:var(--cloud);border:1px solid var(--hairline);border-radius:10px;gap:4px;padding:6px;display:inline-flex}.ui-segmented__option{min-block-size:36px;color:var(--ink-secondary);border-radius:var(--radius-sm);font-size:var(--text-label);font-weight:var(--weight-medium);background:0 0;border:0;padding:8px 18px}.ui-segmented__option:not([aria-pressed=true]):hover{color:var(--juniper);background:#23362a0f}.ui-segmented__option[aria-pressed=true]{color:var(--juniper);background:var(--white);box-shadow:0 1px 3px #23362a1a,inset 0 1px #ffffffb3}
.ui-topbar{justify-content:space-between;align-items:center;gap:var(--space-4);min-block-size:74px;display:flex}.ui-topbar__title{font-size:var(--text-h1);font-weight:var(--weight-semibold);color:var(--ink-heading)}.ui-topbar__actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ui-eyebrow{align-items:center;gap:var(--space-2);color:var(--sage);font-size:var(--text-label);font-weight:var(--weight-semibold);letter-spacing:.04em;display:inline-flex}.ui-eyebrow svg{block-size:14px;inline-size:14px}
.ui-empty{justify-items:center;gap:var(--space-3);padding:var(--space-7) var(--space-4);color:var(--ink-secondary);text-align:center;display:grid}@media (prefers-reduced-motion:no-preference){.ui-empty{animation:emptyAppear var(--dur-slow) var(--ease-entrance) both}}@keyframes emptyAppear{0%{opacity:0;transform:translateY(6px)}}.ui-empty__icon{block-size:64px;inline-size:64px;color:var(--juniper);border:1px solid var(--hairline-strong);border-radius:var(--radius-pill);box-shadow:var(--shadow-card);background:#e6dcc738;place-items:center;display:grid}.ui-empty__illustration{place-items:center;display:grid}.ui-empty__title{color:var(--ink-heading);font-size:var(--text-h2);font-weight:var(--weight-semibold)}.ui-empty__body{max-inline-size:44ch;line-height:var(--leading-body)}
.ui-progress{background:#48413a1f;border-radius:4px;block-size:8px;overflow:hidden;box-shadow:inset 0 1px #fff6}.ui-progress__fill{background:linear-gradient(90deg, var(--juniper-deep), var(--juniper));block-size:100%;transition:inline-size var(--dur-slow) var(--ease-standard);border-radius:4px}.ui-progress__meta{color:var(--ink-secondary);font-size:var(--text-label);font-variant-numeric:tabular-nums;justify-content:space-between;margin-block-start:var(--space-1);display:flex}.overview-progress{gap:var(--space-2);grid-column:1/-1;display:grid}.overview-progress__head{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.overview-progress__head strong{color:var(--ink-heading);font-size:var(--text-body);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.overview-progress__ratio{color:var(--ink-secondary);font-size:var(--text-caption);font-variant-numeric:tabular-nums;margin-inline-start:auto}.overview-progress__bar{border-radius:var(--radius-pill);gap:2px;block-size:6px;display:flex;overflow:hidden}.overview-progress__seg{border-radius:var(--radius-pill);min-inline-size:6px}.overview-progress__seg--idea{background:var(--hairline-strong)}.overview-progress__seg--outline{background:var(--sand)}.overview-progress__seg--draft{background:var(--juniper)}.overview-progress__seg--done{background:var(--sky)}
.save-state{align-items:center;gap:var(--space-1);min-block-size:40px;padding:0 var(--space-3);color:var(--ink-secondary);background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-btn);font-size:var(--text-label);transition:color var(--dur-slow) var(--ease-standard), border-color var(--dur-slow) var(--ease-standard), background-color var(--dur-slow) var(--ease-standard);display:inline-flex}.save-state svg{block-size:16px;inline-size:16px}.save-state.saved{color:var(--juniper);background:#b6d0d21f;border-color:#b6d0d273}.save-state.saving{color:var(--ink-secondary)}.save-state.unsaved{color:var(--stone)}.save-state.error{color:var(--danger);border-color:#9b3f3673}
.project-search-trigger{justify-content:center;align-items:center;gap:var(--space-2);min-block-size:36px;padding:0 var(--space-2);color:var(--ink-secondary);border-radius:var(--radius-sm);font:inherit;font-size:var(--text-label);cursor:pointer;background:0 0;border:0;flex:none;display:inline-flex}.project-search-trigger:hover{color:var(--juniper);background:#23362a12}.project-search-trigger kbd{color:var(--ink-faint);font:inherit;font-size:var(--text-hint)}.project-search-trigger--editor{background:var(--white);border:1px solid var(--hairline)}.project-search-backdrop{z-index:90;padding:min(10vh, 5rem) var(--page-margin) var(--space-5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#15211a6b;place-items:start center;display:grid;position:fixed;inset:0}.project-search-dialog{background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-xl);max-block-size:min(78svh,44rem);inline-size:min(100%,46rem);box-shadow:var(--shadow-pop);border-block-start-color:#ffffff8c;grid-template-rows:auto auto minmax(0,1fr);display:grid;overflow:hidden}.project-search-head{align-items:center;gap:var(--space-2);padding:var(--space-3);border-block-end:1px solid var(--hairline);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.project-search-input{min-inline-size:0;color:var(--ink-heading);font:inherit;font-size:var(--text-body);background:0 0;border:0;outline:0}.project-search-input::placeholder{color:var(--ink-faint)}.project-search-filters{gap:var(--space-1);padding:var(--space-2) var(--space-3);border-block-end:1px solid var(--hairline);scrollbar-width:none;display:flex;overflow-x:auto}.project-search-filters::-webkit-scrollbar{display:none}.project-search-filter{min-block-size:34px;padding:0 var(--space-2);color:var(--ink-secondary);border-radius:var(--radius-sm);font:inherit;font-size:var(--text-label);cursor:pointer;background:0 0;border:0;flex:none}.project-search-filter:hover,.project-search-filter[aria-selected=true]{color:var(--juniper);background:#b6d0d247}.project-search-results{align-content:start;gap:var(--space-4);min-block-size:0;padding:var(--space-3);display:grid;overflow:auto}.project-search-note{padding:var(--space-4);color:var(--ink-secondary);background:var(--surface-sunken);border:1px dashed var(--hairline-strong);border-radius:var(--radius-sm);margin:0}.project-search-group{gap:var(--space-2);display:grid}.project-search-group__head{justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--ink-secondary);font-size:var(--text-label);display:flex}.project-search-group__head span{align-items:center;gap:var(--space-2);color:var(--ink-heading);font-weight:var(--weight-semibold);display:inline-flex}.project-search-list{gap:var(--space-2);display:grid}.project-search-result{min-inline-size:0;padding:var(--space-3);text-align:start;background:var(--surface-sunken);border:1px solid var(--hairline);border-radius:var(--radius-sm);font:inherit;cursor:pointer;display:grid}.project-search-result:hover,.project-search-result:focus-visible{background:var(--white);box-shadow:inset 0 0 0 1.5px var(--sky)}.project-search-result span{gap:var(--space-1);min-inline-size:0;display:grid}.project-search-result strong,.project-search-result em,.project-search-result small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-search-result strong{color:var(--ink-heading);font-weight:var(--weight-semibold)}.project-search-result em{color:var(--ink-secondary);font-style:normal;font-size:var(--text-label)}.project-search-result small{color:var(--ink-faint);font-size:var(--text-hint)}.project-search-more{color:var(--ink-faint);font-size:var(--text-hint);margin:0}@media (max-width:760px){.project-search-backdrop{padding:var(--space-2);align-items:stretch}.project-search-dialog{max-block-size:calc(100svh - var(--space-4))}.project-search-trigger--appbar kbd{display:none}}.project-search-command{align-items:center;gap:var(--space-2);min-block-size:40px;padding:0 var(--space-3);background:var(--surface-sunken);border:1px solid var(--hairline);border-radius:var(--radius-sm);color:var(--ink-body);font:inherit;font-size:var(--text-label);text-align:start;cursor:pointer;display:flex}.project-search-command svg{color:var(--sage);flex-shrink:0}.project-search-command:hover,.project-search-command.is-active,.project-search-result.is-active{background:var(--white);box-shadow:inset 0 0 0 1.5px var(--sky)}.shortcuts-sheet{grid-template-rows:auto minmax(0,1fr);inline-size:min(100%,30rem)}.shortcuts-sheet__head{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-3) 0;display:flex}.shortcuts-sheet__head h2{color:var(--ink-heading);font-size:var(--text-body);font-weight:var(--weight-semibold);margin:0}.shortcuts-sheet__list{gap:var(--space-1);padding:var(--space-3);margin:0;list-style:none;display:grid;overflow:auto}.shortcuts-sheet__list li{justify-content:space-between;align-items:center;gap:var(--space-3);min-block-size:38px;padding:0 var(--space-2);color:var(--ink-body);font-size:var(--text-label);border-block-end:1px solid var(--hairline);display:flex}.shortcuts-sheet__list li:last-child{border-block-end:0}.shortcuts-sheet__keys{direction:ltr;gap:4px;display:flex}.shortcuts-sheet__keys kbd{border:1px solid var(--hairline-strong);background:var(--cloud);color:var(--ink-secondary);font-family:inherit;font-size:var(--text-caption);border-block-end-width:2px;border-radius:6px;padding:1px 7px}
.reference-panel{gap:var(--space-3);min-inline-size:0;padding:var(--space-4);background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);display:grid}.reference-panel--compact{box-shadow:none;border:0;border-radius:0;padding:0}.reference-panel__head{justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--ink-secondary);font-size:var(--text-label);display:flex}.reference-panel__head>div{align-items:center;gap:var(--space-2);color:var(--ink-heading);display:flex}.reference-panel__head h2{font-size:var(--text-body);font-weight:var(--weight-semibold);margin:0}.reference-filters{gap:var(--space-1);scrollbar-width:none;display:flex;overflow-x:auto}.reference-filters::-webkit-scrollbar{display:none}.reference-filter{padding:6px var(--space-2);color:var(--ink-secondary);border-radius:var(--radius-sm);font:inherit;font-size:var(--text-label);cursor:pointer;background:0 0;border:0;flex:none}.reference-filter[aria-selected=true],.reference-filter:hover{color:var(--juniper);background:#b6d0d247}.reference-add{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr)) auto;display:grid}.reference-add select,.reference-row input,.reference-row textarea{inline-size:100%;min-inline-size:0;color:var(--ink-heading);background:var(--white);border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);font:inherit;font-size:var(--text-label)}.reference-add select,.reference-row input{min-block-size:40px;padding-inline:var(--space-2)}.reference-row textarea{min-block-size:42px;padding:var(--space-2);resize:vertical}.reference-list{gap:var(--space-2);display:grid}.reference-row{align-items:start;gap:var(--space-2);padding:var(--space-3);background:var(--surface-sunken);border:1px solid var(--hairline);border-radius:var(--radius-md);grid-template-columns:minmax(12rem,1.1fr) minmax(8rem,.8fr) minmax(8rem,.8fr) minmax(10rem,1fr) auto;display:grid}.reference-row__main{gap:var(--space-1);min-inline-size:0;display:grid}.reference-row__main span{color:var(--ink-faint);font-size:var(--text-hint)}.reference-row__main strong,.reference-row__main a{color:var(--ink-heading);font-weight:var(--weight-semibold);text-decoration:none}.reference-empty{padding:var(--space-3);color:var(--ink-secondary);background:var(--surface-sunken);border:1px dashed var(--hairline-strong);border-radius:var(--radius-sm);margin:0}.overview-tabs{gap:var(--space-2);display:flex;overflow-x:auto}.overview-tab{min-block-size:38px;padding-inline:var(--space-3);color:var(--ink-secondary);background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-sm);font:inherit;cursor:pointer}.overview-tab:not([aria-selected=true]):hover{color:var(--juniper);background:#b6d0d238}.overview-tab[aria-selected=true]{color:var(--juniper);box-shadow:inset 0 0 0 1.5px var(--sky)}@media (max-width:900px){.reference-add,.reference-row{grid-template-columns:1fr}}
.stack{gap:var(--space-5);display:grid}.stack--tight{gap:var(--space-3)}.app-shell{flex-direction:column;min-block-size:100svh;display:flex}.app-bar{align-items:center;gap:var(--space-4);padding:var(--space-2) var(--page-margin);background:var(--surface-card);border-block-end:1px solid var(--hairline);grid-template-columns:auto minmax(0,1fr) auto;display:grid;box-shadow:0 6px 18px #21342a0a}.app-bar__actions{justify-content:flex-end;align-items:center;gap:var(--space-3);min-inline-size:0;display:flex}.app-bar__primary{align-items:center;gap:var(--space-2);min-inline-size:0;display:flex}.app-bar .brand-lockup{min-inline-size:0}.app-home-link{block-size:36px;inline-size:36px;color:var(--ink-secondary);border-radius:var(--radius-sm);background:0 0;flex:none;place-items:center;text-decoration:none;display:inline-grid}.app-home-link:hover{color:var(--juniper);background:#b6d0d238}.app-home-link[aria-current=page]{color:var(--juniper);background:var(--white);box-shadow:inset 0 0 0 1.5px var(--sky)}.app-bar__actions .ui-btn{text-overflow:ellipsis;white-space:nowrap;max-inline-size:14rem;overflow:hidden}.project-nav-bar{justify-content:center;align-items:center;gap:var(--space-3);grid-template-columns:minmax(10rem,auto) minmax(0,1fr) auto;min-inline-size:0;display:grid}.project-nav-bar__meta{justify-content:flex-start;align-items:baseline;gap:var(--space-2);min-inline-size:0;display:flex}.project-nav-bar__title{min-inline-size:0;max-inline-size:18rem;color:var(--ink-heading);font-size:var(--text-label);font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-nav-bar__title--loading{background:var(--mist);border-radius:var(--radius-pill);block-size:1rem;inline-size:7rem;display:inline-block}.project-nav-bar__kind{color:var(--ink-secondary);font-size:var(--text-hint);flex:none}.project-nav-bar__links{justify-content:center;align-items:center;gap:var(--space-1);scrollbar-width:none;min-inline-size:0;display:flex;overflow-x:auto}.project-nav-bar__links::-webkit-scrollbar{display:none}.project-nav-bar__link{min-block-size:34px;padding:6px var(--space-2);color:var(--ink-secondary);border-radius:var(--radius-sm);font-size:var(--text-label);font-weight:var(--weight-medium);white-space:nowrap;flex:none;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.project-nav-bar__link:hover{color:var(--juniper);background:#b6d0d238}.project-nav-bar__link[aria-current=page]{color:var(--juniper);background:var(--white);box-shadow:inset 0 0 0 1.5px var(--sky)}@media (max-width:1120px){.app-bar{gap:var(--space-2);grid-template-columns:auto minmax(0,1fr) auto}.project-nav-bar{gap:var(--space-1);grid-template-columns:minmax(0,1fr) auto}.project-nav-bar__meta{grid-column:1/-1;justify-content:center}.project-nav-bar__title{max-inline-size:16rem}}@media (max-width:760px){.app-bar{grid-template-columns:minmax(0,1fr) auto}.app-bar__primary{grid-area:1/1}.app-bar__actions{grid-area:1/2}.app-bar__actions .ui-btn{max-inline-size:9rem}.project-nav-bar{grid-area:2/1/auto/-1}.project-nav-bar__meta{justify-content:flex-start}.project-nav-bar__links{justify-content:flex-start;margin-inline:0;padding-inline:0}}.guest-banner{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--page-margin);color:var(--ink-body);background:var(--sand);font-size:var(--text-label);flex-wrap:wrap;display:flex}.app-main{inline-size:min(100%, var(--shell-max));padding:var(--space-6) var(--page-margin) var(--space-7);flex:1;margin-inline:auto}.app-main:has(.project-shell){padding-block-start:var(--space-3)}.library-grid{gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));margin-block-start:var(--space-4);display:grid}@media (max-width:1024px){.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.library-grid{grid-template-columns:1fr}}.section-label{margin-block:var(--space-5) 0;color:var(--sage);font-size:var(--text-label);font-weight:var(--weight-semibold);letter-spacing:.04em;display:block}.project-shell{gap:var(--space-4);display:grid}.overview-command{gap:var(--space-5);display:grid}.overview-command .section-label{margin-block:0}.overview-hero{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-5);background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-xl);box-shadow:var(--shadow-card), inset 0 1px 0 #ffffff8c;display:flex}.overview-hero__copy{gap:var(--space-2);min-inline-size:0;display:grid}.overview-hero h1{color:var(--ink-heading);font-size:clamp(1.8rem, 3vw, var(--text-display));line-height:var(--leading-tight)}.overview-hero p{max-inline-size:44rem;color:var(--ink-secondary);line-height:var(--leading-body);margin:0}.overview-hero__meta{align-items:center;gap:var(--space-2);color:var(--ink-secondary);font-size:var(--text-label);flex-wrap:wrap;display:flex}.overview-suggestion{align-items:center;gap:var(--space-2);inline-size:fit-content;max-inline-size:100%;padding:var(--space-2) var(--space-3);color:var(--ink-body);border-radius:var(--radius-sm);background:#b6d0d22e;border:1px solid #b6d0d2a6;flex-wrap:wrap;text-decoration:none;display:flex}.overview-suggestion:hover{background:#b6d0d242;border-color:#b6d0d2d1}.overview-suggestion>span,.overview-suggestion small{color:var(--sage);font-size:var(--text-caption);font-weight:var(--weight-medium);align-items:center;gap:4px;display:inline-flex}.overview-suggestion strong{min-inline-size:0;color:var(--ink-heading);font-size:var(--text-label);font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overview-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));display:grid}.overview-stat{gap:var(--space-1);padding:var(--space-4);background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-lg);box-shadow:var(--shadow-card), inset 0 1px 0 #ffffff80;display:grid}.overview-stat__value{color:var(--ink-heading);font-size:var(--text-h1);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.overview-stat__label{color:var(--ink-secondary);font-size:var(--text-label)}.overview-command-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.overview-panel{align-content:start;gap:var(--space-3);min-inline-size:0;padding:var(--space-4);background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-xl);box-shadow:var(--shadow-card), inset 0 1px 0 #ffffff80;display:grid}.overview-panel__head{justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--ink-secondary);font-size:var(--text-label);display:flex}.overview-panel__head>div{align-items:center;gap:var(--space-2);min-inline-size:0;color:var(--ink-heading);display:flex}.overview-panel__head h2{font-size:var(--text-body);font-weight:var(--weight-semibold)}.overview-panel__head a{color:var(--juniper);font-weight:var(--weight-semibold);text-decoration:none}.overview-list{gap:var(--space-2);display:grid}.overview-inline-action{min-block-size:34px;padding:5px var(--space-3);color:var(--juniper);border:1px dashed var(--hairline-strong);border-radius:var(--radius-sm);font:inherit;font-size:var(--text-label);font-weight:var(--weight-medium);cursor:pointer;background:0 0;justify-self:start}.overview-inline-action:hover{border-color:var(--juniper)}.overview-list-item{justify-content:space-between;align-items:center;gap:var(--space-3);min-inline-size:0;padding:var(--space-3);color:inherit;background:var(--surface-sunken);border:1px solid var(--hairline);border-radius:var(--radius-sm);text-decoration:none;display:flex}.overview-list-item>span{gap:var(--space-1);min-inline-size:0;display:grid}.overview-list-item strong,.overview-list-item small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overview-list-item strong{color:var(--ink-heading);font-weight:var(--weight-semibold)}.overview-list-item small{color:var(--ink-secondary);font-size:var(--text-hint)}.overview-list-item--soft{background:var(--surface-card)}.overview-list-item:hover,.overview-quick-link:hover,.overview-secondary-card:hover{border-color:var(--hairline-strong);box-shadow:var(--shadow-card);transform:translateY(-2px)}.overview-empty-note{align-items:center;gap:var(--space-2);padding:var(--space-3);color:var(--ink-secondary);background:var(--surface-sunken);border:1px dashed var(--hairline-strong);border-radius:var(--radius-sm);display:flex}.overview-empty-note p{margin:0}.overview-quality{gap:var(--space-4);display:grid}.overview-quality-summary{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-5);background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-xl);box-shadow:var(--shadow-card), inset 0 1px 0 #ffffff8c;display:flex}.overview-quality-summary>div{gap:var(--space-2);min-inline-size:0;display:grid}.overview-quality-summary h1{color:var(--ink-heading);font-size:var(--text-h1);line-height:var(--leading-tight)}.overview-quality-summary p,.overview-quality-hint{color:var(--ink-secondary);line-height:var(--leading-body);margin:0}.overview-quality-count{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);color:var(--juniper);background:var(--surface-sunken);border:1px solid var(--hairline);border-radius:var(--radius-sm);font-weight:var(--weight-semibold);flex:none;display:inline-flex}.overview-quality-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.overview-quick-grid{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));margin-block-start:var(--space-3);display:grid}.overview-quick-link{justify-content:space-between;align-items:center;gap:var(--space-3);min-inline-size:0;padding:var(--space-3);color:inherit;background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-sm);text-decoration:none;display:flex}.overview-quick-link span{align-items:center;gap:var(--space-2);min-inline-size:0;color:var(--ink-heading);font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap;display:flex;overflow:hidden}.overview-secondary{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.overview-secondary-card{justify-content:space-between;align-items:center;gap:var(--space-3);min-inline-size:0;padding:var(--space-3);color:inherit;text-align:start;background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-sm);font:inherit;cursor:pointer;display:flex}.overview-secondary-card[aria-expanded=true]{border-color:var(--sky);box-shadow:var(--focus-ring)}.overview-secondary-card>span{gap:2px var(--space-2);grid-template-columns:auto minmax(0,1fr);min-inline-size:0;display:grid}.overview-secondary-card svg{color:var(--sage);grid-row:span 2}.overview-secondary-card strong,.overview-secondary-card small{text-overflow:ellipsis;white-space:nowrap;min-inline-size:0;overflow:hidden}.overview-secondary-card strong{color:var(--ink-heading);font-size:var(--text-label);font-weight:var(--weight-semibold)}.overview-secondary-card small{color:var(--ink-secondary);font-size:var(--text-caption)}.overview-secondary-card b{color:var(--juniper);font-size:var(--text-label);font-weight:var(--weight-semibold);flex:none}.overview-secondary-panel{gap:var(--space-3);display:grid}.overview-secondary-panel__head{justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--ink-heading);font-weight:var(--weight-semibold);display:flex}.overview-secondary-panel__head button{min-block-size:34px;padding:5px var(--space-3);color:var(--ink-secondary);background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-sm);font:inherit;font-size:var(--text-label);cursor:pointer}.section-card{gap:var(--space-2);padding:var(--space-4);color:inherit;text-decoration:none;display:grid}.section-card__title{align-items:center;gap:var(--space-2);color:var(--ink-heading);font-size:var(--text-h2);font-weight:var(--weight-semibold);display:flex}.section-card__body{color:var(--ink-secondary);font-size:var(--text-label);line-height:var(--leading-body)}@media (max-width:820px){.overview-hero,.overview-command-grid,.overview-quality-grid,.overview-secondary{grid-template-columns:1fr}.overview-hero,.overview-quality-summary{align-items:start;display:grid}.overview-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.overview-quick-grid{grid-template-columns:1fr}}.modal-backdrop{z-index:50;padding:var(--space-4);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#15211a6b;place-items:center;display:grid;position:fixed;inset:0}.modal{gap:var(--space-4);inline-size:min(100%,30rem);padding:var(--space-5);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-pop);display:grid}.modal h2{font-size:var(--text-h2)}.modal__actions{justify-content:flex-start;gap:var(--space-2);display:flex}.form-error{color:var(--danger);font-size:var(--text-label);margin:0}.cover-choice{gap:var(--space-2);display:flex}.cover-choice__swatch{border-radius:var(--radius-md);cursor:pointer;border:2px solid #0000;block-size:44px;inline-size:44px}.cover-choice__swatch:not([aria-pressed=true]):hover{border-color:var(--hairline-strong)}.cover-choice__swatch[aria-pressed=true]{border-color:var(--juniper);box-shadow:var(--focus-ring)}.cover-choice__swatch--juniper{background:var(--juniper)}.cover-choice__swatch--sky{background:var(--sky)}.cover-choice__swatch--sand{background:var(--sand)}
.board-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-block-end:var(--space-4);display:flex}.board-hint{color:var(--ink-secondary);font-size:var(--text-label)}.status-pill-btn{cursor:pointer;background:0 0;border:0;padding:0}.status-pill-btn:hover{filter:brightness(.97)}.status-pill-btn--detail{justify-self:start}.book-plan{--board-details-collapsed-width:56px;--board-details-open-width:clamp(280px, 26vw, 340px);--board-details-width:var(--board-details-collapsed-width);--board-details-gap:var(--space-3);--board-drawer-top:86px;gap:var(--space-4);box-sizing:border-box;padding-left:calc(var(--board-details-width) + var(--board-details-gap));padding-block-end:96px;transition:padding-left .18s;display:grid}.book-plan.details-open{--board-details-width:var(--board-details-open-width)}.book-plan.details-collapsed{--board-details-width:var(--board-details-collapsed-width)}.book-plan:has(.idea-inbox:not(.is-collapsed)){padding-block-end:min(390px,50dvh)}.book-plan__topline{gap:var(--space-3);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.book-plan__stats{gap:var(--space-2);flex-wrap:wrap;min-inline-size:0;display:flex}.book-plan__actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.chapter-filter{gap:var(--space-1);background:var(--surface-sunken);border:1px solid var(--hairline);border-radius:var(--radius-sm);flex-wrap:wrap;padding:3px;display:flex}.chapter-filter button{min-block-size:32px;padding:4px var(--space-2);color:var(--ink-secondary);border-radius:calc(var(--radius-sm) - 3px);font:inherit;font-size:var(--text-hint);cursor:pointer;background:0 0;border:0}.chapter-filter button:not([aria-pressed=true]):hover{color:var(--juniper);background:#23362a0f}.chapter-filter button[aria-pressed=true]{color:var(--juniper);background:var(--white);box-shadow:0 1px 3px #23362a12}.book-filter-empty{align-items:center;gap:var(--space-2);padding:var(--space-3);color:var(--ink-secondary);background:var(--white);border:1px dashed var(--hairline-strong);border-radius:var(--radius-sm);font-size:var(--text-label);display:flex}.book-filter-empty p{margin:0}.book-stat{align-items:center;gap:var(--space-2);min-block-size:42px;padding:var(--space-2) var(--space-3);color:var(--ink-body);background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);grid-template-columns:auto auto auto;display:inline-grid}.book-stat svg{color:var(--sage)}.book-stat strong{color:var(--ink-heading);font-weight:var(--weight-semibold)}.book-stat span{color:var(--ink-secondary);font-size:var(--text-label)}.tool-btn,.empty-add,.write-link{justify-content:center;align-items:center;gap:var(--space-2);min-block-size:42px;padding:var(--space-2) var(--space-3);color:var(--juniper);background:var(--white);border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);font-size:var(--text-label);font-weight:var(--weight-medium);text-decoration:none;display:inline-flex}.tool-btn:hover,.empty-add:hover,.write-link:hover{border-color:var(--juniper);box-shadow:0 4px 12px #23362a14}.idea-inbox,.book-part,.detail-panel{background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}.idea-inbox,.book-part{padding:var(--space-3)}.book-section-head,.book-part__head,.detail-panel__head{justify-content:space-between;align-items:center;gap:var(--space-3);min-inline-size:0;display:flex}.book-section-head h3,.detail-panel__head h3{color:var(--ink-heading);font-size:20px;line-height:var(--leading-heading);margin:0}.book-section-head__actions{align-items:center;gap:var(--space-2);display:inline-flex}.book-section-head__eyebrow{color:var(--ink-secondary);font-size:var(--text-hint);display:block}.collapse-toggle,.drag-handle{block-size:32px;inline-size:32px;color:var(--ink-secondary);border-radius:var(--radius-sm);background:0 0;border:0;flex:none;place-items:center;display:inline-grid}.collapse-toggle:hover,.drag-handle:hover{color:var(--juniper);background:#23362a12}.part-toggle{min-block-size:34px;color:var(--juniper);border-radius:var(--radius-sm);font-size:var(--text-hint);font-weight:var(--weight-semibold);white-space:nowrap;background:#b6d0d22e;border:1px solid #b6d0d2b8;flex:none;justify-content:center;align-items:center;gap:6px;padding:5px 10px;display:inline-flex}.part-toggle:hover{color:var(--juniper-deep);border-color:var(--sky);background:#b6d0d247}.collapse-toggle--wide{text-align:start;grid-template-columns:auto minmax(0,1fr);justify-content:start;block-size:auto;inline-size:auto;min-inline-size:0;padding:0}.collapse-toggle--wide strong{color:var(--ink-heading);font-size:20px;line-height:var(--leading-heading);display:block}.drag-handle{cursor:grab;touch-action:none;color:var(--ink-faint)}.chapter-node:hover .drag-handle,.idea-node:hover .drag-handle,.book-part__head:hover .drag-handle{color:var(--ink-secondary)}.drag-handle:active{cursor:grabbing}.idea-node,.chapter-node{border:1px solid var(--hairline);border-radius:var(--radius-sm);min-inline-size:0}.book-plan__workspace{direction:rtl;grid-template-columns:minmax(0,1fr);grid-template-areas:"outline";align-items:start;min-inline-size:0;display:grid}.book-outline{gap:var(--space-3);direction:rtl;grid-area:outline;min-inline-size:0;display:grid}.part-drop-wrap,.chapter-drop-wrap{gap:var(--space-2);min-inline-size:0;display:grid}.outline-drop-line{background:var(--sky);border-radius:999px;min-block-size:4px;display:block;box-shadow:0 0 0 3px #b6d0d259}.outline-drop-line--chapter{margin-inline:var(--space-4)}.outline-drop-line--idea{min-block-size:3px;margin-block:2px}.idea-inbox{left:calc(var(--board-details-width) + var(--board-details-gap) + ((100vw - var(--board-details-width) - var(--board-details-gap)) / 2));bottom:max(var(--space-3), env(safe-area-inset-bottom));z-index:30;gap:var(--space-2);inline-size:min(760px, calc(100vw - var(--board-details-width) - var(--board-details-gap) - (var(--space-3) * 2)));background:linear-gradient(0deg, #b6d0d229, #b6d0d229), var(--white);direction:rtl;max-block-size:min(360px,100dvh - 112px);min-inline-size:0;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 12px 32px #23362a24}.idea-inbox>.book-section-head{flex-direction:row;align-items:center}.idea-inbox .book-section-head__actions{inline-size:auto}.book-part{gap:var(--space-3);display:grid}.book-part.is-selected,.chapter-node.is-selected,.idea-node.is-selected{border-color:var(--sky);box-shadow:var(--focus-ring)}.book-part.is-drop-target{border-color:var(--sky)}.book-part__head{gap:var(--space-2) var(--space-3);border-block-end:1px solid var(--hairline);grid-template-columns:auto minmax(0,1fr);grid-template-areas:"actions identity""meta summary";align-items:start;padding-block-end:var(--space-3);display:grid}.book-part.is-collapsed .book-part__head{border-block-end:0;padding-block-end:0}.book-part.is-dragging,.chapter-node.is-dragging,.idea-node.is-dragging{opacity:.48}.book-part__identity{align-items:center;gap:var(--space-1);grid-area:identity;justify-content:flex-start;min-inline-size:0;display:flex}.book-part__title,.chapter-node__title{align-items:center;gap:var(--space-2);min-inline-size:0;color:var(--ink-heading);display:flex}.book-part__summary{min-inline-size:0;color:var(--ink-secondary);font-size:var(--text-label);line-height:var(--leading-body);text-overflow:ellipsis;white-space:nowrap;grid-area:summary;margin:0;overflow:hidden}.book-part__meta{justify-content:flex-start;align-items:center;gap:var(--space-1);flex-wrap:wrap;grid-area:meta;display:flex}.book-part__metric{min-block-size:28px;padding:4px var(--space-2);color:var(--ink-secondary);background:var(--cloud);border:1px solid var(--hairline);border-radius:var(--radius-sm);font-size:var(--text-hint);white-space:nowrap;align-items:center;display:inline-flex}.chapter-stack{gap:0;padding-block-start:var(--space-1);display:grid}.insert-line{justify-content:center;align-items:center;gap:var(--space-2);min-block-size:24px;inline-size:100%;color:var(--ink-secondary);cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);padding:0;display:grid}.insert-line:before,.insert-line:after{content:"";background:var(--hairline);block-size:1px}.insert-line__icon{background:var(--white);border:1px dashed var(--hairline-strong);border-radius:999px;justify-content:center;align-items:center;gap:2px;min-block-size:24px;min-inline-size:42px;padding:0 8px;display:inline-flex}.insert-line:hover{color:var(--juniper)}.insert-line:hover .insert-line__icon,.insert-line:focus-visible .insert-line__icon{border-color:var(--juniper);box-shadow:0 3px 10px #23362a14}.insert-line:focus-visible{outline:none}.part-insert{min-block-size:30px}.idea-insert{min-block-size:22px}.idea-insert .insert-line__icon{min-block-size:22px;min-inline-size:38px;padding-inline:7px}.chapter-node{align-items:start;gap:var(--space-3);padding:var(--space-3);background:var(--cloud);transition:border-color var(--dur-base) var(--ease-standard), box-shadow var(--dur-base) var(--ease-standard);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.chapter-node:hover{border-color:var(--hairline-strong);box-shadow:var(--shadow-card)}.chapter-node--filtered{grid-template-columns:minmax(0,1fr) auto}.chapter-node__main{gap:var(--space-2);min-inline-size:0;display:grid}.chapter-node__meta{align-items:center;gap:var(--space-2);color:var(--ink-secondary);font-size:var(--text-label);flex-wrap:wrap;display:flex}.chapter-readiness{min-block-size:28px;padding:3px var(--space-2);color:var(--ink-secondary);background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-pill);font-size:var(--text-hint);font-weight:var(--weight-medium);white-space:nowrap;transition:background-color var(--dur-base) var(--ease-standard), border-color var(--dur-base) var(--ease-standard);align-items:center;gap:4px;display:inline-flex}.chapter-readiness--readyToWrite,.chapter-readiness--complete{color:var(--juniper);background:#b6d0d242;border-color:#b6d0d2c7}.chapter-readiness--needsGoal,.chapter-readiness--needsIdeas{color:var(--ink-secondary);background:var(--surface-sunken);border-style:dashed}.chapter-readiness--partialDraft{color:var(--stone);background:color-mix(in srgb, var(--sand) 22%, transparent);border-color:color-mix(in srgb, var(--sand) 60%, var(--hairline))}.chapter-node__goal,.chapter-node__summary{color:var(--ink-secondary);font-size:var(--text-label);line-height:var(--leading-body);margin:0}.chapter-node__summary{color:var(--ink-faint)}.idea-list{gap:var(--space-1);min-inline-size:0;margin-block-start:var(--space-3);display:grid}.idea-list--compact{border-block-start:1px dashed var(--hairline-strong);grid-column:1/-1;margin-block-start:0;padding-block-start:var(--space-2)}.idea-inbox>.idea-list{overscroll-behavior:contain;max-block-size:min(230px,32dvh);padding-inline-end:2px;overflow:auto}.idea-list--collapsed-drop{min-block-size:2px;margin-block-start:0}.idea-inbox.is-collapsed{max-block-size:64px;padding-block:var(--space-2)}.idea-drop-wrap{gap:var(--space-1);min-inline-size:0;display:grid}.idea-node{align-items:center;gap:var(--space-2);min-block-size:42px;padding:var(--space-2);color:var(--ink-body);background:var(--white);overflow-wrap:anywhere;grid-template-columns:auto auto minmax(0,1fr) auto;display:grid}.drag-handle--idea{block-size:26px;inline-size:26px}.inline-title{inline-size:100%;min-inline-size:0;color:inherit;font:inherit;overflow-wrap:anywhere;text-overflow:ellipsis;background:0 0;border:0}.inline-title--strong{color:var(--ink-heading);font-size:20px;font-weight:var(--weight-semibold)}.inline-title:focus{box-shadow:inset 0 -2px 0 var(--sky);outline:none}.row-actions{align-items:center;gap:2px;display:inline-flex}.book-part__head>.row-actions{grid-area:actions;justify-self:start}.empty-add{inline-size:100%;color:var(--ink-secondary);background:0 0;border-style:dashed}.detail-panel{inset-block-start:var(--board-drawer-top);inset-block-end:max(var(--space-3), env(safe-area-inset-bottom));left:max(0px, env(safe-area-inset-left));z-index:42;gap:var(--space-2);inline-size:var(--board-details-width);max-inline-size:calc(100vw - var(--space-3));overscroll-behavior:contain;padding:var(--space-2);scrollbar-gutter:stable;background:color-mix(in srgb, var(--surface-card) 94%, transparent);border:1px solid var(--hairline);border-radius:0 var(--radius-sm) var(--radius-sm) 0;min-inline-size:0;box-shadow:var(--shadow-pop);transition:inline-size var(--dur-base) var(--ease-standard);direction:rtl;border-left:0;display:grid;position:fixed;overflow:auto}.detail-panel.is-open{inline-size:var(--board-details-open-width)}.detail-panel--collapsed{inline-size:var(--board-details-collapsed-width);padding:0;display:block;overflow:hidden}.detail-panel__rail{place-items:center;gap:var(--space-2);block-size:100%;inline-size:100%;min-block-size:min(360px, calc(100dvh - var(--board-drawer-top) - var(--space-4)));padding:var(--space-2) 0;color:var(--juniper);background:linear-gradient(0deg, #b6d0d21f, #b6d0d21f), var(--white);font:inherit;font-size:var(--text-hint);font-weight:var(--weight-semibold);border:0;grid-template-rows:auto minmax(0,1fr);display:grid}.detail-panel__rail:hover{background:#b6d0d22e}.detail-panel__rail span{writing-mode:vertical-rl;white-space:nowrap;transform:rotate(180deg)}.detail-panel--placeholder{align-content:start}.detail-panel__head-actions{align-items:center;gap:2px;display:inline-flex}.detail-panel__empty{gap:var(--space-2);padding:var(--space-2);color:var(--ink-secondary);display:grid}.detail-panel__empty svg{color:var(--sage)}.detail-panel__empty h3{color:var(--ink-heading);margin:0;font-size:18px}.detail-panel__empty p{font-size:var(--text-label);line-height:var(--leading-body);margin:0}.field{gap:var(--space-2);display:grid}.detail-panel .field{gap:6px}.field span{color:var(--ink-secondary);font-size:var(--text-label);font-weight:var(--weight-medium)}.field input,.field textarea,.field select{min-block-size:42px;inline-size:100%;min-inline-size:0;padding:10px var(--space-3);color:var(--ink-body);background:var(--cloud);border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);font:inherit}.detail-panel .field input,.detail-panel .field textarea,.detail-panel .field select{min-block-size:38px;padding:8px var(--space-2)}.field textarea{min-block-size:96px;line-height:var(--leading-body);resize:vertical}.detail-panel .field textarea{min-block-size:72px;max-block-size:120px}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--focus-border);box-shadow:var(--focus-ring);outline:none}.write-link{inline-size:100%;color:var(--ink-on-dark);background:var(--juniper);border-color:var(--juniper)}.write-link:hover{background:var(--juniper-deep)}.write-link--compact{min-block-size:32px;inline-size:auto;padding:5px var(--space-2);font-size:var(--text-hint)}.detail-panel .write-link{min-block-size:38px;padding-block:var(--space-2)}@media (max-width:1080px){.book-plan__workspace{direction:rtl;grid-template-columns:minmax(0,1fr);grid-template-areas:"outline"}.book-plan__topline{align-items:stretch}.book-part__head{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"actions identity""summary summary""meta meta"}.book-part__summary,.book-part__meta{grid-column:1/-1}.book-part__meta{justify-content:flex-start}}@media (max-width:640px){.book-plan{--board-details-collapsed-width:48px;--board-details-open-width:clamp(210px, 52vw, 280px);--board-details-gap:var(--space-2);--board-drawer-top:74px}.book-section-head,.book-part__head,.chapter-node{align-items:stretch}.book-part__head,.chapter-node{grid-template-columns:1fr;grid-template-areas:none}.book-part__head{grid-template-areas:"identity""summary""meta""actions"}.book-section-head,.book-part__head{flex-direction:column}.book-plan__stats,.row-actions,.book-section-head__actions,.book-part__identity,.book-part__meta{inline-size:100%}.idea-inbox{bottom:max(var(--space-2), env(safe-area-inset-bottom));inline-size:min(760px, calc(100vw - var(--board-details-width) - var(--board-details-gap) - (var(--space-2) * 2)));max-block-size:min(340px,100dvh - 92px);padding-inline:var(--space-2)}.idea-inbox>.book-section-head{flex-direction:row;align-items:center}.idea-inbox .book-section-head__actions{inline-size:auto}.idea-inbox>.idea-list{max-block-size:min(220px,34dvh)}.book-part__summary{white-space:normal}.book-stat{flex:160px}.write-link--compact{inline-size:100%}.chapter-node{display:grid}}
.editor-shell{background-color:var(--cloud);background-image:var(--texture-grain);flex-direction:column;min-block-size:100svh;display:flex}.editor-topbar{justify-content:space-between;align-items:center;gap:var(--space-3);block-size:74px;padding-inline:var(--page-margin);background:color-mix(in srgb, var(--white) 82%, transparent);-webkit-backdrop-filter:saturate(1.05)blur(8px);backdrop-filter:saturate(1.05)blur(8px);border-block-end:1px solid var(--hairline);transition:background var(--dur-base) var(--ease-standard);flex-shrink:0;display:flex;position:relative}.editor-crumbs{align-items:center;gap:var(--space-2);min-inline-size:0;color:var(--ink-secondary);font-size:var(--text-label);display:flex}.editor-crumbs a{color:var(--ink-secondary);text-decoration:none}.editor-crumbs a:hover{color:var(--juniper)}.editor-crumbs__current{color:var(--ink-heading);font-weight:var(--weight-medium);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.editor-tools{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.editor-count{color:var(--ink-secondary);font-size:var(--text-label);font-variant-numeric:tabular-nums}.editor-count__session{color:var(--sage)}.editor-goal{block-size:2px;position:absolute;inset-block-end:-1px;inset-inline:0;overflow:hidden}.editor-goal__fill{background:var(--sky);block-size:100%;transition:inline-size var(--dur-slow) var(--ease-standard);display:block}.editor-goal__fill.is-reached{background:var(--juniper)}.editor-prefs{position:relative}.editor-prefs__menu{z-index:40;gap:var(--space-1);min-inline-size:230px;padding:var(--space-2);background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);display:grid;position:absolute;inset-block-start:calc(100% + var(--space-2));inset-inline-end:0}.editor-prefs__group{gap:var(--space-1);padding:var(--space-1) var(--space-2);color:var(--ink-body);font-size:var(--text-label);display:grid}.editor-prefs__row{justify-content:space-between;align-items:center;gap:var(--space-3);min-block-size:38px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--ink-body);font:inherit;font-size:var(--text-label);text-align:start;cursor:pointer;background:0 0;border:0;display:flex}.editor-prefs__row:hover{background:var(--mist)}.editor-prefs__row input[type=checkbox]{accent-color:var(--juniper);block-size:16px;inline-size:16px}.editor-prefs__row input[type=number]{min-block-size:30px;inline-size:84px;padding:2px var(--space-2);border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--cloud);color:var(--ink-body);font:inherit;font-size:var(--text-label);font-variant-numeric:tabular-nums}.editor-body{flex:1;grid-template-columns:300px minmax(0,1fr) 56px;min-block-size:0;display:grid}.editor-body.has-reference{grid-template-columns:300px minmax(0,1fr) minmax(280px,340px)}.editor-rail{align-content:start;gap:var(--space-1);padding:var(--space-5) var(--space-4);background:var(--cloud);border-inline-start:1px solid var(--hairline);display:grid;overflow:auto}.editor-rail__label{color:var(--sage);font-size:var(--text-label);font-weight:var(--weight-semibold);letter-spacing:.04em;margin-block-end:var(--space-2)}.editor-rail__item{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);color:var(--ink-secondary);border-radius:var(--radius-btn);font-size:var(--text-label);text-decoration:none;display:flex}.editor-rail__item:hover{background:#23362a0d}.editor-rail__item[aria-current=page]{color:var(--ink-heading);background:var(--white);box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--sky) 85%, transparent), var(--shadow-card);font-weight:var(--weight-medium)}.editor-dot{border-radius:var(--radius-pill);background:var(--hairline-strong);flex-shrink:0;block-size:9px;inline-size:9px}.editor-dot--done{background:var(--juniper)}.editor-dot--draft{background:var(--sand)}.editor-dot--outline{background:var(--sky)}.editor-main{padding:clamp(var(--space-6), 5vw, var(--space-7)) var(--space-5) calc(var(--space-7) + var(--space-5));justify-content:center;display:flex;overflow:auto}.editor-reference{min-inline-size:0;padding:var(--space-4);background:var(--white);border-inline-start:1px solid var(--hairline);box-shadow:inset 1px 0 0 var(--hairline);flex-direction:column;display:flex;overflow:auto}.editor-reference.is-collapsed{padding-inline:var(--space-2);align-items:center}.editor-reference__toggle{justify-content:space-between;align-items:center;gap:var(--space-2);border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--cloud);min-block-size:42px;inline-size:100%;color:var(--ink-heading);font:inherit;font-size:var(--text-label);font-weight:var(--weight-semibold);cursor:pointer;display:flex}.editor-reference__toggle:hover{border-color:var(--hairline-strong);background:var(--mist)}.editor-reference.is-collapsed .editor-reference__toggle{justify-content:center;inline-size:40px;padding:0}.editor-reference.is-collapsed .editor-reference__toggle span{display:none}.editor-reference__content{gap:var(--space-4);margin-block-start:var(--space-4);display:grid}.editor-reference-section{gap:var(--space-3);display:grid}.editor-reference-section__head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.editor-reference-section__head>div{align-items:center;gap:var(--space-2);min-inline-size:0;color:var(--ink-heading);display:flex}.editor-reference-section__head h2{font-size:var(--text-label);font-weight:var(--weight-semibold);margin:0}.editor-reference-section__head a{color:var(--sage);font-size:var(--text-caption);font-weight:var(--weight-medium);flex:none;text-decoration:none}.editor-reference-section__head a:hover{color:var(--juniper)}.editor-reference-field,.editor-reference-card{gap:var(--space-1);padding:var(--space-3);border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--cloud);transition:border-color var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard);display:grid}.editor-reference-card:hover{border-color:var(--hairline-strong);box-shadow:var(--shadow-card)}.editor-reference-field span,.editor-reference-card__head span{color:var(--sage);font-size:var(--text-caption);font-weight:var(--weight-medium)}.editor-reference-field p,.editor-reference-card p,.editor-reference__empty{color:var(--ink-secondary);font-size:var(--text-label);line-height:var(--leading-body);margin:0}.editor-reference__cards{gap:var(--space-2);display:grid}.editor-reference-card strong{color:var(--ink-heading);font-size:var(--text-label);font-weight:var(--weight-semibold)}.editor-reference-card__head{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.editor-reference-facts{gap:var(--space-1);flex-wrap:wrap;display:flex}.editor-reference-facts span{border-radius:var(--radius-pill);background:var(--white);color:var(--ink-secondary);font-size:var(--text-caption);padding:.18rem .5rem}.editor-brief{gap:var(--space-2);padding:var(--space-3);color:var(--ink-secondary);border-radius:var(--radius-sm);background:#b6d0d21f;border:1px solid #b6d0d28c;display:grid}.editor-brief__main{gap:var(--space-3);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.editor-brief__block{gap:var(--space-1);min-inline-size:0;display:grid}.editor-brief__block>span{color:var(--sage);font-size:var(--text-caption);font-weight:var(--weight-semibold)}.editor-brief__block p,.editor-brief__ideas{color:var(--ink-secondary);font-size:var(--text-label);line-height:var(--leading-body);margin:0}.editor-brief__ideas{gap:var(--space-1);flex-wrap:wrap;padding:0;list-style:none;display:flex}.editor-brief__ideas li{max-inline-size:100%;padding:2px var(--space-2);color:var(--ink-heading);text-overflow:ellipsis;white-space:nowrap;background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-pill);overflow:hidden}.editor-brief__quick{align-items:center;gap:var(--space-2);border-block-start:1px dashed #b6d0d299;grid-template-columns:auto minmax(0,1fr) auto;padding-block-start:var(--space-2);display:grid}.editor-brief__quick svg{color:var(--sage)}.editor-brief__quick input{min-block-size:34px;inline-size:100%;min-inline-size:0;padding:6px var(--space-2);color:var(--ink-body);background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-sm);font:inherit;font-size:var(--text-label)}.editor-brief__quick input:focus{border-color:var(--focus-border);box-shadow:var(--focus-ring);outline:none}.editor-column{gap:var(--space-3);align-content:start;inline-size:100%;min-inline-size:0;max-inline-size:920px;display:grid}.editor-eyebrow{color:var(--sage);font-size:var(--text-label);font-weight:var(--weight-medium);letter-spacing:.04em}.editor-title{inline-size:100%;color:var(--ink-heading);font:inherit;font-size:clamp(1.9rem,4vw,2.5rem);font-weight:var(--weight-semibold);line-height:var(--leading-heading);background:0 0;border:0;margin-block-end:var(--space-1)}.editor-titlecard{padding:var(--space-3);margin-inline:calc(var(--space-3) * -1);border-radius:var(--radius-lg);position:relative}.editor-titlecard.has-cover{padding-block:var(--space-5) var(--space-3)}.editor-titlecard.has-cover:before{content:"";z-index:0;border-radius:inherit;background-image:linear-gradient(to bottom, #f4efe4e0, #f4efe4f7), var(--titlecard-bg);background-position:50%;background-size:cover;position:absolute;inset:0}.editor-titlecard>*{z-index:1;position:relative}.editor-titlecard__actions{z-index:2;gap:var(--space-1);opacity:0;transition:opacity var(--dur-base) var(--ease-standard);display:flex;position:absolute;inset-block-start:var(--space-2);inset-inline-end:var(--space-2)}.editor-titlecard:hover .editor-titlecard__actions,.editor-titlecard:focus-within .editor-titlecard__actions{opacity:1}.editor-titlecard__actions .icon-btn{background:var(--surface-card);box-shadow:var(--shadow-card)}[data-theme=night] .editor-titlecard.has-cover:before{background-image:linear-gradient(to bottom, #1d1e1ae0, #1d1e1af7), var(--titlecard-bg)}.editor-prose{inline-size:100%}.editor-prose__body{position:relative}.editor-section-bg-layer{z-index:0;pointer-events:none;position:absolute;inset-block-start:0;inset-inline:0;overflow:hidden}.editor-section-bg{transition:opacity var(--dur-base) var(--ease-standard);background-position:50%;background-size:cover;position:absolute;inset-inline:0}.editor-prose__body .ProseMirror{z-index:1;position:relative}.editor-prose .ProseMirror{min-block-size:60svh;color:var(--ink-body);font:inherit;font-size:clamp(1.18rem,.6vw + 1.1rem,1.3rem);font-weight:var(--weight-light);line-height:var(--leading-prose);white-space:pre-wrap;word-break:break-word;outline:none}.editor-prose .ProseMirror p{margin:0}.editor-prose .ProseMirror strong{font-weight:var(--weight-semibold)}.editor-prose .ProseMirror u{-webkit-text-decoration-color:var(--sage);text-decoration-color:var(--sage)}.editor-prose .ProseMirror mark{border-radius:var(--radius-sm);color:inherit;padding:0 .15em}.editor-prose .ProseMirror a{color:var(--ink-heading);-webkit-text-decoration-color:var(--sage);text-decoration-color:var(--sage)}.editor-prose .ProseMirror h2,.editor-prose .ProseMirror h3{color:var(--ink-heading);font-weight:var(--weight-semibold);line-height:var(--leading-heading);margin:1.2em 0 .5em}.editor-prose .ProseMirror h2{font-size:1.3em}.editor-prose .ProseMirror h3{font-size:1.15em}.editor-prose .ProseMirror ul,.editor-prose .ProseMirror ol{margin:.6em 0;padding-inline-start:1.4em}.editor-prose .ProseMirror li+li{margin-block-start:.3em}.editor-prose .ProseMirror blockquote{border-inline-start:2px solid var(--hairline-strong);color:var(--ink-secondary);margin:.8em 0;padding-inline-start:1em}.editor-prose .ProseMirror blockquote p{margin:.2em 0}.editor-prose .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:inline-start;block-size:0;color:var(--ink-secondary);opacity:.65;pointer-events:none}.editor-prose .ProseMirror hr[data-scene-break]{margin-block:var(--space-4);text-align:center;border:0;overflow:visible}.editor-prose .ProseMirror hr[data-scene-break]:before{content:"⁂";color:var(--sage);letter-spacing:.35em;padding-inline-start:.35em;font-size:1.05em}.editor-prose .ProseMirror hr[data-scene-break].ProseMirror-selectednode:before{color:var(--juniper)}.editor-prose .ProseMirror figure[data-chapter-image]{justify-items:center;gap:var(--space-2);margin:var(--space-4) 0;inline-size:var(--chapter-image-width,100%);display:grid}.editor-prose .ProseMirror figure[data-chapter-image][data-align=left]{float:left;margin-inline-end:var(--space-4)}.editor-prose .ProseMirror figure[data-chapter-image][data-align=right]{float:right;margin-inline-start:var(--space-4)}.editor-prose .ProseMirror figure[data-chapter-image][data-align=center]{float:none;margin-inline:auto}.editor-prose .ProseMirror figure[data-chapter-image][data-align=full]{float:none;inline-size:100%}.editor-prose .ProseMirror hr[data-scene-break],.editor-prose .ProseMirror h2,.editor-prose .ProseMirror h3,.editor-prose .ProseMirror blockquote{clear:both}.editor-prose .ProseMirror figure[data-chapter-image] img{border-radius:var(--radius-sm);max-block-size:70svh;max-inline-size:100%;box-shadow:var(--shadow-card)}.editor-prose .ProseMirror figure[data-chapter-image].ProseMirror-selectednode img{outline:2px solid var(--sky);outline-offset:2px}.editor-prose .ProseMirror figure[data-chapter-image] figcaption{color:var(--ink-secondary);font-size:var(--text-caption)}.editor-upload-hint{margin:var(--space-2) 0 0;color:var(--sage);font-size:var(--text-caption)}.editor-upload-hint.is-error{color:var(--danger)}.editor-sticky{z-index:5;gap:var(--space-2);margin-block-end:var(--space-3);display:grid;position:sticky;inset-block-start:var(--space-2)}.editor-toolbar{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-md);box-shadow:var(--shadow-card);flex-wrap:wrap;display:flex}.editor-toolbar__group{border-inline-end:1px solid var(--hairline);align-items:center;gap:2px;padding-inline-end:var(--space-2);display:flex}.editor-toolbar__group:last-child{border-inline-end:0;padding-inline-end:0}.editor-toolbar__fontsize{gap:1px}.editor-toolbar__step{block-size:28px;min-inline-size:28px;color:var(--ink-secondary);border-radius:var(--radius-sm);font-size:var(--text-hint);font-weight:var(--weight-medium);cursor:pointer;transition:background-color var(--dur-base) var(--ease-standard), color var(--dur-fast) var(--ease-standard);background:0 0;border:0;place-items:center;padding:0 4px;display:inline-grid}.editor-toolbar__step:hover{color:var(--juniper);background:#23362a12}.editor-toolbar__step[aria-pressed=true]{color:var(--juniper);box-shadow:inset 0 0 0 1.5px var(--sky);background:#23362a14}.editor-toolbar__popover{position:relative}.editor-toolbar__popover-menu{z-index:40;padding:var(--space-2);background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);align-items:center;gap:6px;display:flex;position:absolute;inset-block-start:calc(100% + var(--space-2));inset-inline-start:0}.editor-toolbar__clear-swatch{color:var(--ink-secondary);background:var(--mist);place-items:center;display:inline-grid}.editor-toolbar__link-menu{min-inline-size:280px}.editor-toolbar__image-caption{min-block-size:30px;min-inline-size:140px;padding:4px var(--space-2);border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--cloud);color:var(--ink-body);font:inherit;font-size:var(--text-hint);flex:1}.editor-toolbar__link-menu input{min-block-size:32px;min-inline-size:0;padding:4px var(--space-2);border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--cloud);color:var(--ink-body);font:inherit;font-size:var(--text-label);flex:1}.editor-find{gap:var(--space-1);max-inline-size:420px;padding:var(--space-2);background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-md);box-shadow:var(--shadow-card);display:grid}.editor-find__row{align-items:center;gap:var(--space-1);display:flex}.editor-find__row input{min-block-size:32px;min-inline-size:0;padding:4px var(--space-2);border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--cloud);color:var(--ink-body);font:inherit;font-size:var(--text-label);flex:1}.editor-find__count{color:var(--ink-secondary);font-size:var(--text-caption);font-variant-numeric:tabular-nums;flex-shrink:0}.editor-find-match{background:#b6d0d273;border-radius:3px}.editor-find-match.is-active{background:var(--sky)}[data-theme=night] .editor-find-match{background:#b6d0d242}[data-theme=night] .editor-find-match.is-active{background:color-mix(in srgb, var(--sky) 55%, transparent)}.editor-mention{border-radius:var(--radius-pill);background:var(--mist);color:var(--ink-heading);white-space:nowrap;padding:0 .3em}.editor-mention[data-color=juniper]{background:color-mix(in srgb, var(--juniper) 16%, transparent)}.editor-mention[data-color=sky]{background:color-mix(in srgb, var(--sky) 34%, transparent)}.editor-mention[data-color=sand]{background:color-mix(in srgb, var(--sand) 45%, transparent)}.editor-mention[data-color=stone]{background:color-mix(in srgb, var(--stone) 14%, transparent)}.editor-mention[data-color=sage]{background:color-mix(in srgb, var(--sage) 24%, transparent)}.editor-mention[data-stale]{background:var(--mist);opacity:.55}.editor-prose .ProseMirror .editor-mention.ProseMirror-selectednode{outline:2px solid var(--sky);outline-offset:1px}.mention-menu{z-index:70;min-inline-size:220px;max-inline-size:min(320px,100vw - 16px);padding:var(--space-1);background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);gap:2px;display:grid;position:fixed}.mention-menu__empty{padding:var(--space-2);color:var(--ink-secondary);font-size:var(--text-caption)}.mention-menu__item{align-items:center;gap:var(--space-2);min-block-size:34px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--ink-body);font:inherit;font-size:var(--text-label);text-align:start;cursor:pointer;background:0 0;border:0;display:flex}.mention-menu__item.is-active,.mention-menu__item:hover{background:var(--mist)}.mention-menu__label{min-inline-size:0;color:var(--ink-heading);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.mention-menu__kind{color:var(--sage);font-size:var(--text-caption);flex-shrink:0}.editor-title:focus-visible{box-shadow:none}.editor-shell.is-focus{--cloud:var(--surface-focus);--surface-sunken:var(--surface-focus);--hairline:#48413a14;background-color:var(--surface-focus)}[data-theme=night] .editor-shell.is-focus{--hairline:#f4efe412}[data-theme=night] .editor-rail__item:hover{background:#f4efe40f}.editor-shell.is-focus .editor-main{background-image:radial-gradient(120% 80% at 50% 0,#0000,#48413a0a)}.editor-shell.is-focus .editor-topbar{background:color-mix(in srgb, var(--white) 55%, transparent);border-color:#0000}.editor-shell.is-focus .editor-rail{display:none}.editor-shell.is-focus .editor-body{grid-template-columns:minmax(0,1fr) 56px}.editor-shell.is-focus .editor-body.has-reference{grid-template-columns:minmax(0,1fr) minmax(280px,340px)}.editor-shell.is-focus .editor-crumbs{visibility:hidden}@media (max-width:768px){.editor-body,.editor-body.has-reference,.editor-shell.is-focus .editor-body,.editor-shell.is-focus .editor-body.has-reference{grid-template-columns:minmax(0,1fr)}.editor-rail{display:none}.editor-main{padding:var(--space-5) var(--space-4) var(--space-7)}.editor-reference{border-block-start:1px solid var(--hairline);border-inline-start:0;max-block-size:none}.editor-reference.is-collapsed{align-items:stretch}.editor-reference.is-collapsed .editor-reference__toggle{inline-size:100%}.editor-reference.is-collapsed .editor-reference__toggle span{display:inline}.editor-brief__main{grid-template-columns:1fr}}.editor-reference__scenes{gap:var(--space-1);display:grid}.editor-reference-scene{padding:var(--space-2) var(--space-3);border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--cloud);color:var(--ink-body);font:inherit;font-size:var(--text-label);text-align:start;cursor:pointer;gap:2px;display:grid}.editor-reference-scene:hover{border-color:var(--hairline-strong)}.editor-reference-scene span{color:var(--sage);font-size:var(--text-caption);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.editor-reference-scene small{color:var(--ink-body);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.editor-reference-backdrop{display:none}@media (max-width:768px){.editor-reference-backdrop{z-index:60;background:#1d1e1a2e;border:0;padding:0;display:block;position:fixed;inset:0}.editor-reference.is-open{z-index:61;border:1px solid var(--hairline);max-block-size:72svh;box-shadow:var(--shadow-pop);animation:reference-sheet-rise var(--dur-slow) var(--ease-entrance);border-block-end:0;border-start-start-radius:var(--radius-xl);border-start-end-radius:var(--radius-xl);flex-direction:column;display:flex;position:fixed;inset-block-end:0;inset-inline:0;overflow:hidden}.editor-reference.is-open .editor-reference__content{overscroll-behavior:contain;overflow:auto}.editor-reference.is-collapsed{z-index:55;box-shadow:none;background:0 0;border:0;padding:0;position:fixed;inset-block-end:var(--space-4);inset-inline-start:50%;transform:translate(-50%)}.editor-reference.is-collapsed .editor-reference__toggle{inline-size:auto;padding-inline:var(--space-3);border-radius:var(--radius-pill);background:var(--surface-card);box-shadow:var(--shadow-raised)}}@keyframes reference-sheet-rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.editor-reference.is-open{animation:none}}
.entity-grid{justify-content:start;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),26rem));display:grid}.entity-card{gap:var(--space-3);min-inline-size:0;padding:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}.entity-card__head{align-items:center;gap:var(--space-2);display:flex}.entity-name{min-inline-size:0;color:var(--ink-heading);font:inherit;font-size:var(--text-h2);font-weight:var(--weight-semibold);background:0 0;border:0;flex:1}.entity-row{align-items:center;gap:var(--space-3);flex-wrap:wrap;justify-content:flex-start;display:flex}.entity-select{min-block-size:40px;inline-size:auto;font-size:var(--text-label);padding:8px 12px}.color-dot{border-radius:var(--radius-pill);flex-shrink:0;block-size:18px;inline-size:18px}.color-pick{gap:6px;display:inline-flex}.color-swatch{border-radius:var(--radius-pill);cursor:pointer;border:2px solid #0000;block-size:26px;inline-size:26px;padding:0}.color-swatch:hover{box-shadow:var(--shadow-card);transform:translateY(-1px)}.color-swatch[aria-pressed=true]{border-color:var(--ink-heading)}.color-dot--juniper,.color-swatch--juniper{background:var(--juniper)}.color-dot--sky,.color-swatch--sky{background:var(--sky)}.color-dot--sand,.color-swatch--sand{background:var(--sand)}.color-dot--stone,.color-swatch--stone{background:var(--stone)}.color-dot--sage,.color-swatch--sage{background:var(--sage)}.trait-list{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.chip-x{block-size:18px;inline-size:18px;color:inherit;border-radius:var(--radius-pill);background:0 0;border:0;place-items:center;margin-inline-start:2px;padding:0;display:inline-grid}.chip-x:hover{background:#23362a1a}.trait-add{border:1px dashed var(--hairline-strong);border-radius:var(--radius-pill);min-block-size:36px;min-inline-size:6rem;color:var(--ink-body);font:inherit;font-size:var(--text-label);background:0 0;flex:1;padding:6px 10px}.workbench{gap:var(--space-3);display:grid}.workbench-toolbar,.workbench-toolbar__group,.workbench-stats,.workbench-tabs{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-inline-size:0;display:flex}.workbench-toolbar{justify-content:space-between}.workbench-toolbar__group,.workbench-stats{min-inline-size:0}.workbench-tabs{overflow-x:auto}.workbench-toolbox{flex:none;display:inline-flex;position:relative}.workbench-tools-menu{z-index:20;gap:var(--space-1);min-inline-size:13rem;padding:var(--space-1);background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);display:grid;position:absolute;inset-block-start:calc(100% + var(--space-1));inset-inline-end:0}.workbench-menu-item{align-items:center;gap:var(--space-2);min-block-size:38px;inline-size:100%;padding:var(--space-2);color:var(--ink-body);border-radius:var(--radius-sm);font:inherit;font-size:var(--text-label);text-align:inherit;background:0 0;border:0;display:flex}.workbench-menu-item:hover,.workbench-menu-item[aria-current=page]{color:var(--juniper);background:var(--cloud)}.workbench-advanced{gap:var(--space-3);display:grid}.workbench-advanced__head{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);flex-wrap:wrap;display:flex}.workbench-advanced__head h2{color:var(--ink-heading);font-size:var(--text-h2);margin:0}.workbench-tab{white-space:nowrap;flex:none}.workbench-layout{--workbench-detail-width:minmax(300px, 380px);grid-template-areas:"detail main";grid-template-columns:var(--workbench-detail-width) minmax(0, 1fr);gap:var(--space-4);direction:ltr;align-items:start;min-inline-size:0;display:grid}.workbench-main{direction:rtl;grid-area:main;min-inline-size:0}.workbench-detail{overscroll-behavior:contain;scrollbar-gutter:stable;direction:rtl;grid-area:detail;align-self:start;max-block-size:min(680px,100dvh - 112px);min-inline-size:0;overflow:auto}.book-plan__workspace{--workbench-detail-width:minmax(0, 1fr)}.book-plan__workspace .workbench-main{grid-area:outline}.character-registry,.world-wiki{--workbench-detail-width:minmax(320px, 400px)}@media (max-width:1100px){.workbench-layout{direction:rtl;grid-template-columns:1fr;grid-template-areas:"main""detail"}.workbench-detail{max-block-size:none;position:static;overflow:visible}.workbench-layout.book-plan__workspace{direction:rtl;grid-template-columns:minmax(0,1fr);grid-template-areas:"outline"}}@media (max-width:760px){.workbench-toolbar,.workbench-toolbar__group{flex-direction:column;justify-content:flex-start;align-items:stretch}.workbench-stats{inline-size:100%}.workbench-tabs{flex-wrap:nowrap;inline-size:100%;padding-block-end:2px}.workbench-toolbox,.workbench-toolbox>.ui-btn{inline-size:100%}.workbench-tools-menu{inline-size:100%;margin-block-start:var(--space-1);position:static}}.character-workbench{gap:var(--space-3);display:grid}.character-toolbar,.character-stats,.character-tabs,.detail-tabs,.avatar-controls{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.avatar-upload-stack{gap:var(--space-1);display:grid}.avatar-upload-stack.is-dropping,.world-media-panel.is-dropping{border-radius:var(--radius-sm);box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--sky) 80%, transparent);background:color-mix(in srgb, var(--sky) 8%, transparent)}.media-drop-hint{color:var(--ink-secondary);font-size:var(--text-caption)}.character-toolbar{justify-content:space-between}.character-toolbar__group{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-inline-size:0;display:flex}.character-toolbar__group--end{justify-content:flex-end}.character-stat{align-items:center;gap:var(--space-2);min-block-size:42px;padding:var(--space-2) var(--space-3);color:var(--ink-body);background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-sm);grid-template-columns:auto auto auto;display:inline-grid}.character-stat svg{color:var(--sage)}.character-stat strong{color:var(--ink-heading)}.character-stat span{color:var(--ink-secondary);font-size:var(--text-label)}.character-tab,.detail-tab{min-block-size:38px;padding:var(--space-2) var(--space-3);color:var(--ink-secondary);background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-sm);font:inherit;font-size:var(--text-label)}.character-tab:not([aria-selected=true]):hover,.detail-tab:not([aria-selected=true]):hover{color:var(--juniper);border-color:var(--hairline-strong);background:var(--cloud)}.character-tab[aria-selected=true],.detail-tab[aria-selected=true]{color:var(--juniper);border-color:var(--sky);box-shadow:var(--focus-ring)}.character-registry{grid-template-columns:var(--workbench-detail-width) minmax(0, 1fr);gap:var(--space-4);align-items:start;display:grid}.character-list,.character-detail,.relationships-workspace,.templates-workspace,.relation-builder,.relationship-map,.template-section{background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-sm);box-shadow:var(--shadow-card)}.character-list{gap:var(--space-2);padding:var(--space-2);display:grid}.character-row{gap:var(--space-2);inline-size:100%;padding:var(--space-2);text-align:inherit;color:var(--ink-body);border-radius:var(--radius-sm);background:0 0;border:1px solid #0000;grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.character-row:hover,.character-row.is-selected{border-color:var(--sky);background:#b6d0d224}.character-row__body{gap:2px;min-inline-size:0;display:grid}.character-row__body strong,.character-row__body span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.character-row__body strong{color:var(--ink-heading)}.character-row__body>span{color:var(--ink-secondary);font-size:var(--text-label)}.character-row__meta{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.character-row__meta small{color:var(--ink-secondary);background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-pill);padding:2px 8px}.reference-indicators{align-items:center;gap:4px;min-inline-size:0;display:inline-flex}.reference-indicators--world{margin-block-start:2px}.reference-indicator{block-size:22px;inline-size:22px;color:var(--ink-faint);background:var(--surface-sunken);border:1px solid var(--hairline);border-radius:var(--radius-pill);place-items:center;display:inline-grid}.reference-indicator.is-active{color:var(--juniper);background:#b6d0d233;border-color:#b6d0d2b3}.character-avatar{block-size:48px;inline-size:48px;color:var(--ink-on-dark);background:var(--juniper);border-radius:var(--radius-pill);font-weight:var(--weight-semibold);box-shadow:var(--shadow-card);place-items:center;display:inline-grid;overflow:hidden}.character-avatar img{object-fit:cover;block-size:100%;inline-size:100%}.character-avatar--large{block-size:84px;inline-size:84px;font-size:28px}.character-avatar--sky,.relationship-node--sky,.relationship-edge--sky{background:var(--sky);color:var(--juniper)}.character-avatar--sand,.relationship-node--sand,.relationship-edge--sand{background:var(--sand);color:var(--juniper)}.character-avatar--stone,.relationship-node--stone,.relationship-edge--stone{background:var(--stone);color:var(--ink-on-dark)}.character-avatar--sage,.relationship-node--sage,.relationship-edge--sage{background:var(--sage);color:var(--juniper)}.character-detail{gap:var(--space-3);padding:var(--space-3);display:grid;position:sticky;inset-block-start:var(--space-3)}.character-detail__top{gap:var(--space-3);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;display:grid}.character-detail__identity{gap:var(--space-2);min-inline-size:0;display:grid}.character-name-input{inline-size:100%;min-inline-size:0;color:var(--ink-heading);font:inherit;font-size:var(--text-h2);font-weight:var(--weight-semibold);background:0 0;border:0}.character-name-input:focus{box-shadow:inset 0 -2px 0 var(--sky);outline:none}.character-detail__empty{gap:var(--space-2);color:var(--ink-secondary);display:grid}.character-detail__empty h3,.template-group h4{color:var(--ink-heading);margin:0}.avatar-upload,.tool-btn{justify-content:center;align-items:center;gap:var(--space-2);min-block-size:40px;padding:var(--space-2) var(--space-3);color:var(--juniper);background:var(--white);border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);font-size:var(--text-label);font-weight:var(--weight-medium);cursor:pointer;display:inline-flex}.avatar-upload:not(:has(input:disabled)):hover{background:var(--mist);border-color:var(--juniper);box-shadow:0 4px 12px #23362a14}.avatar-upload:has(input:disabled){color:#4a443c59;cursor:not-allowed;box-shadow:inset 0 0 0 1.5px #4a443c38}.avatar-upload input{display:none}.detail-fields,.relation-list,.template-list,.templates-workspace,.relationships-workspace{gap:var(--space-3);display:grid}.relationships-workspace,.templates-workspace,.template-section,.relation-builder,.relationship-map{padding:var(--space-3)}.relation-builder,.relation-editor,.relationship-template-row,.template-field-row,.fact-row,.appearance-add,.appearance-row{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:center;display:grid}.relation-builder select,.relation-editor select,.relation-editor input,.relationship-template-row input,.relationship-template-row select,.template-field-row input,.template-field-row select,.fact-row input,.appearance-add select,.appearance-row input{min-block-size:38px;min-inline-size:0;color:var(--ink-body);background:var(--cloud);border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);font:inherit;font-size:var(--text-label);padding:8px 10px}.fact-row{grid-template-columns:minmax(0,1fr) minmax(0,2fr) auto}.appearance-row{padding:var(--space-2);background:var(--cloud);border:1px solid var(--hairline);border-radius:var(--radius-sm);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr) auto}.relation-card,.relation-editor,.relationship-template-row,.template-field-row{padding:var(--space-2);background:var(--cloud);border:1px solid var(--hairline);border-radius:var(--radius-sm)}.relation-card{gap:var(--space-2);display:grid}.relation-card span{color:var(--ink-secondary);font-size:var(--text-label)}.relation-card textarea{background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-sm);min-block-size:74px;font:inherit;resize:vertical;padding:8px 10px}.relationship-nodes,.relationship-edges{gap:var(--space-2);flex-wrap:wrap;display:flex}.relationship-edges{margin-block-start:var(--space-3)}.relationship-node,.relationship-edge{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-pill);font-size:var(--text-label);display:inline-flex}.relationship-edge{border-radius:var(--radius-sm)}.relationship-node,.relationship-edge{background:var(--juniper);color:var(--ink-on-dark)}.template-group{gap:var(--space-2);margin-block-start:var(--space-3);display:grid}.template-group__head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}@media (max-width:1100px){.character-registry{grid-template-columns:1fr}.character-detail{position:static}}@media (max-width:760px){.character-toolbar{flex-direction:column;align-items:stretch}.character-toolbar__group,.character-toolbar__group--end{justify-content:flex-start}.character-detail__top,.relation-builder,.relation-editor,.relationship-template-row,.template-field-row,.fact-row,.appearance-add,.appearance-row{grid-template-columns:1fr}}.world-workbench{gap:var(--space-3);display:grid}.world-toolbar,.world-toolbar__group{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.world-toolbar{justify-content:space-between}.world-toolbar__group--end{justify-content:flex-end}.world-wiki{grid-template-columns:var(--workbench-detail-width) minmax(0, 1fr);gap:var(--space-4);align-items:start;display:grid}.world-tree,.world-detail,.world-axis,.world-type,.world-media-card,.relationship-edge-card,.world-template-row{background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-sm);box-shadow:var(--shadow-card)}.world-tree{gap:var(--space-2);padding:var(--space-2);display:grid}.world-axis{gap:var(--space-1);padding:var(--space-2);display:grid}.world-axis__head,.world-type__head button,.world-entry-node__body,.world-map-entry-link{color:inherit;font:inherit;text-align:inherit;background:0 0;border:0}.world-axis__head,.world-type__head,.world-type__head button{align-items:center;gap:var(--space-2);min-inline-size:0;display:flex}.world-axis__head{color:var(--ink-heading);font-weight:var(--weight-semibold);justify-content:space-between}.world-axis__head small{color:var(--ink-secondary);font-weight:var(--weight-regular)}.world-type-list,.world-entry-list,.world-entry-children{gap:var(--space-1);display:grid}.world-type{padding:var(--space-2);background:var(--cloud)}.world-type__head{color:var(--ink-body);font-size:var(--text-label);font-weight:var(--weight-medium);justify-content:space-between}.world-entry-node{--depth:0;align-items:center;gap:var(--space-1);padding:6px 6px 6px calc(6px + (var(--depth) * 14px));border-radius:var(--radius-sm);border:1px solid #0000;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.world-entry-node:hover,.world-entry-node.is-selected{border-color:var(--sky);background:#b6d0d224}.world-entry-node__toggle{block-size:26px;inline-size:26px;color:var(--ink-secondary);border-radius:var(--radius-sm);background:0 0;border:0;place-items:center;display:inline-grid}.world-entry-node__toggle:disabled{opacity:.3}.world-entry-node__body{gap:1px;min-inline-size:0;display:grid}.world-entry-node__body strong,.world-entry-node__body span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.world-entry-node__body strong{color:var(--ink-heading)}.world-entry-node__body span,.world-detail__head span{color:var(--ink-secondary);font-size:var(--text-hint)}.world-detail{gap:var(--space-3);padding:var(--space-3);min-inline-size:0;display:grid;position:sticky;inset-block-start:var(--space-3)}.world-detail__head{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.world-detail__head>div,.world-detail__section,.template-values,.fact-list,.relationship-list,.world-media-panel,.appearance-list,.map-pin-list{gap:var(--space-2);min-inline-size:0;display:grid}.world-form-grid{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.media-upload,.world-media-card__head,.map-pin-row,.appearance-add,.relationship-edge-card{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));align-items:center;display:grid}.world-media-card{gap:var(--space-2);padding:var(--space-3);display:grid}.world-map-preview{background:var(--cloud);border:1px solid var(--hairline);border-radius:var(--radius-sm);aspect-ratio:16/9;position:relative;overflow:hidden}.world-map-preview img{object-fit:cover;block-size:100%;inline-size:100%}.world-map-pin{block-size:24px;inline-size:24px;color:var(--ink-on-dark);background:var(--juniper);border:2px solid var(--white);border-radius:var(--radius-pill);font-size:var(--text-hint);font-weight:var(--weight-semibold);box-shadow:var(--shadow-card);place-items:center;display:inline-grid;position:absolute;transform:translate(50%,-50%)}.relationships-workspace,.templates-workspace,.world-map-gallery{gap:var(--space-3);display:grid}.relationship-edge-card,.world-template-row{padding:var(--space-3)}.world-template-row,.world-template-row__children{gap:var(--space-2);display:grid}@media (max-width:1100px){.world-wiki{grid-template-columns:1fr}.world-detail{position:static}}@media (max-width:760px){.world-toolbar,.world-toolbar__group,.world-toolbar__group--end{flex-direction:column;justify-content:flex-start;align-items:stretch}.world-form-grid,.map-pin-row,.appearance-add,.relationship-edge-card{grid-template-columns:1fr}}.field-rich-editor{background:var(--cloud);border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);display:grid;overflow:hidden}.field-rich-editor:focus-within{border-color:var(--focus-border);box-shadow:var(--focus-ring)}.field-rich-editor .editor-toolbar--field{gap:var(--space-1);padding:6px var(--space-2);border:0;border-block-end:1px solid var(--hairline);box-shadow:none;background:0 0;border-radius:0}.field-rich-editor__content{min-block-size:96px;padding:8px var(--space-3);color:var(--ink-body);font:inherit;line-height:var(--leading-body);outline:none}.field-rich-editor__content p{margin:0}.field-rich-editor__content strong{font-weight:var(--weight-semibold)}.field-rich-editor__content u{-webkit-text-decoration-color:var(--sage);text-decoration-color:var(--sage)}.field-rich-editor__content a{color:var(--ink-heading);-webkit-text-decoration-color:var(--sage);text-decoration-color:var(--sage)}.field-rich-editor__content h3{color:var(--ink-heading);font-size:1.05em;font-weight:var(--weight-semibold);line-height:var(--leading-heading);margin:.6em 0 .3em}.field-rich-editor__content ul,.field-rich-editor__content ol{margin:.4em 0;padding-inline-start:1.4em}.field-rich-editor__content li+li{margin-block-start:.2em}.field-rich-editor__content blockquote{color:var(--ink-secondary);border-inline-start:2px solid var(--hairline-strong);margin:.5em 0;padding-inline-start:1em}.field-rich-editor__content blockquote p{margin:.1em 0}.field-rich-editor__content p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:inline-start;block-size:0;color:var(--ink-secondary);opacity:.65;pointer-events:none}
.book-preview{gap:var(--space-4);padding:var(--space-5) var(--page-margin) var(--space-6);flex-direction:column;display:flex}.book-preview__toolbar{align-items:center;gap:var(--space-2);display:flex}.book-preview__toolbar h1{margin:0;color:var(--ink-heading);font-size:var(--text-h2);font-weight:var(--weight-semibold);margin-inline-end:auto}.book-preview__pages{color:var(--ink-secondary);font-size:var(--text-label);font-variant-numeric:tabular-nums}.book-preview__loading{color:var(--ink-secondary);font-size:var(--text-label);margin:0}.book-scroller{overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding-block:var(--space-2) var(--space-5);overflow-x:auto}.book-scroller:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-sm);outline:none}.book-canvas{inline-size:max-content;min-inline-size:100%;position:relative}.book-frames{pointer-events:none;position:absolute;inset:0}.book-frame{inline-size:var(--page-w);background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);scroll-snap-align:center;position:absolute;inset-block:0}.book-frame__num{color:var(--ink-faint);font-size:var(--text-caption);font-variant-numeric:tabular-nums;text-align:center;position:absolute;inset-block-end:10px;inset-inline:0}.book-flow{z-index:1;box-sizing:border-box;block-size:var(--page-h);inline-size:max-content;padding-inline:var(--side-margin);padding-block:var(--v-margin);column-width:var(--col-w);column-gap:var(--col-gap);column-fill:auto;color:var(--ink-body);font-size:var(--preview-font-size);font-weight:var(--weight-light);line-height:var(--preview-leading);position:relative}.book-chapter{max-inline-size:var(--col-w)}.book-chapter+.book-chapter{break-before:column}.book-chapter__title{color:var(--ink-heading);font-size:1.35em;font-weight:var(--weight-semibold);line-height:var(--leading-heading);margin:0 0 1.2em}.book-chapter__title.has-cover{border-radius:var(--radius-lg);padding:.9em .8em;position:relative}.book-chapter__title.has-cover:before{content:"";z-index:0;border-radius:inherit;background-image:linear-gradient(to bottom, #f4efe4e0, #f4efe4f7), var(--titlecard-bg);background-position:50%;background-size:cover;position:absolute;inset:0}.book-chapter__title.has-cover>*{z-index:1;position:relative}[data-theme=night] .book-chapter__title.has-cover:before{background-image:linear-gradient(to bottom, #1d1e1ae0, #1d1e1af7), var(--titlecard-bg)}.rich-text-view p{margin:0}.rich-text-view p:empty:before{content:" "}.rich-text-view strong{font-weight:var(--weight-semibold)}.rich-text-view h2,.rich-text-view h3{color:var(--ink-heading);font-weight:var(--weight-semibold);line-height:var(--leading-heading);margin:1.2em 0 .5em}.rich-text-view h2{font-size:1.2em}.rich-text-view h3{font-size:1.08em}.rich-text-view ul,.rich-text-view ol{margin:.6em 0;padding-inline-start:1.4em}.rich-text-view li+li{margin-block-start:.3em}.rich-text-view blockquote{border-inline-start:2px solid var(--hairline-strong);color:var(--ink-secondary);margin:.8em 0;padding-inline-start:1em}.rich-text-view blockquote p{margin:.2em 0}.rich-text-view a{color:var(--ink-heading);-webkit-text-decoration-color:var(--sage);text-decoration-color:var(--sage)}.rich-text-view mark{border-radius:var(--radius-sm);color:inherit;padding:0 .15em}.rich-text-view hr[data-scene-break]{text-align:center;border:0;margin-block:1.2em;overflow:visible}.rich-text-view hr[data-scene-break]:before{content:"⁂";color:var(--sage);letter-spacing:.35em;padding-inline-start:.35em}.rt-figure{justify-items:center;gap:var(--space-2);inline-size:var(--chapter-image-width,100%);break-inside:avoid;margin:1em 0;display:grid}.rt-figure[data-align=left]{float:left;margin-inline-end:1em}.rt-figure[data-align=right]{float:right;margin-inline-start:1em}.rt-figure[data-align=center]{float:none;margin-inline:auto}.rt-figure[data-align=full]{float:none;inline-size:100%}.rich-text-view hr[data-scene-break],.rich-text-view h2,.rich-text-view h3,.rich-text-view blockquote{clear:both}.rt-section{padding:var(--space-3);margin-block:var(--space-2);border-radius:var(--radius-md);position:relative}.rt-section:before{content:"";z-index:0;border-radius:inherit;background-image:var(--rt-section-bg);opacity:var(--rt-section-opacity);background-position:50%;background-size:cover;position:absolute;inset:0}.rt-section>*{z-index:1;position:relative}.rt-figure img{border-radius:var(--radius-sm);max-block-size:60svh;max-inline-size:100%}.rt-figure figcaption{color:var(--ink-secondary);font-size:.8em}.rt-mention{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--sky) 25%, transparent);color:var(--ink-heading);padding:0 .3em}@media (max-width:768px){.book-preview{padding-inline:var(--space-3)}.book-preview__toolbar{flex-wrap:wrap}}
.snapshots-backdrop{z-index:60;background:#1d1e1a2e;position:fixed;inset:0}.snapshots-panel{z-index:61;gap:var(--space-3);inline-size:min(440px,94vw);padding:var(--space-4);background:var(--surface-card);border-inline-start:1px solid var(--hairline);box-shadow:var(--shadow-pop);animation:snapshots-slide-in var(--dur-slow) var(--ease-entrance);flex-direction:column;display:flex;position:fixed;inset-block:0;inset-inline-end:0}@keyframes snapshots-slide-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.snapshots-panel{animation:none}}.snapshots-panel__head{align-items:center;gap:var(--space-2);display:flex}.snapshots-panel__head h2{color:var(--ink-heading);font-size:var(--text-body);font-weight:var(--weight-semibold);flex:1;margin:0}.snapshots-panel__note,.snapshots-panel__hint{color:var(--ink-secondary);font-size:var(--text-caption);margin:0}.snapshots-list{gap:var(--space-2);flex-shrink:0;align-content:start;max-block-size:45%;display:grid;overflow:auto}.snapshot-row{padding:var(--space-2) var(--space-3);border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--cloud);color:var(--ink-body);font:inherit;font-size:var(--text-label);text-align:start;cursor:pointer;gap:4px;display:grid}.snapshot-row:hover{border-color:var(--hairline-strong)}.snapshot-row[aria-selected=true]{box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--sky) 85%, transparent)}.snapshot-row__time{color:var(--ink-heading);font-weight:var(--weight-medium)}.snapshot-row__meta{align-items:center;gap:var(--space-2);color:var(--ink-secondary);font-size:var(--text-caption);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.snapshots-preview{min-block-size:0;padding:var(--space-3);border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--cloud);color:var(--ink-body);font-size:var(--text-label);font-weight:var(--weight-light);line-height:var(--leading-prose);flex:1;overflow:auto}.snapshots-actions{align-items:center;gap:var(--space-2);display:flex}.snapshots-actions .tool-btn.is-armed{border-color:var(--danger);color:var(--danger)}
