:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f3eee5;--bg-elevated:#faf7f1;--surface:#fffdf8;--surface-2:#eee7db;--surface-3:#e5dccd;--ink:#222b31;--ink-soft:#526067;--muted:#7a858a;--line:#d9d0c2;--line-strong:#bfb3a2;--accent:#a84b31;--accent-strong:#873622;--accent-soft:#f1d6c9;--green:#2e6d59;--green-soft:#dcebe4;--gold:#94681d;--gold-soft:#f3e5bf;--red:#a23d3d;--red-soft:#f4d8d6;--nav:#1f2933;--nav-soft:#2d3943;--nav-text:#f5efe4;--paper:#fffefa;--paper-ink:#25272b;--shadow-sm:0 2px 10px #2b231814;--shadow-md:0 14px 38px #2b231821;--shadow-lg:0 30px 70px #2b231833;--radius-sm:8px;--radius:14px;--radius-lg:24px;font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=midnight]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#11171c;--bg-elevated:#171f25;--surface:#1c252b;--surface-2:#263139;--surface-3:#303c44;--ink:#f0ece4;--ink-soft:#c1c7c9;--muted:#919ca1;--line:#344149;--line-strong:#4d5b63;--accent:#de7a5e;--accent-strong:#f19579;--accent-soft:#4b2d29;--green:#83bda8;--green-soft:#223f36;--gold:#d9b66b;--gold-soft:#463b24;--red:#e18080;--red-soft:#4b2929;--nav:#0b1014;--nav-soft:#172027;--nav-text:#f4efe7;--paper:#20282e;--paper-ink:#ece8df;--shadow-sm:0 2px 10px #0003;--shadow-md:0 14px 38px #0000004d;--shadow-lg:0 30px 70px #00000073}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);color:var(--ink);overflow-x:hidden}button,input,select,textarea{font:inherit}button,select{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:var(--accent)}::selection{background:var(--accent-soft)}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.025em}.eyebrow{color:var(--accent);letter-spacing:.13em;text-transform:uppercase;align-items:center;gap:6px;font-size:.72rem;font-weight:800;display:inline-flex}.button{border:1px solid var(--line-strong);background:var(--surface);min-height:38px;color:var(--ink);border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:700;transition:border-color .14s,transform .14s,background .14s;display:inline-flex;box-shadow:inset 0 1px #ffffff26}.button:hover:not(:disabled){border-color:var(--accent);transform:translateY(-1px)}.button.primary{background:var(--accent);border-color:var(--accent);color:#fff}.button.primary:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong)}.button.ghost{box-shadow:none;background:0 0;border-color:#0000}.button.ghost:hover:not(:disabled){background:var(--surface-2)}.button.danger{background:var(--red);border-color:var(--red);color:#fff}.button.danger.ghost{color:var(--red);border-color:var(--red-soft);background:0 0}.button.small{border-radius:8px;min-height:32px;padding:0 11px;font-size:.82rem}.button.large{border-radius:12px;min-height:48px;padding:0 22px}.button.full{width:100%}.button-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.icon-button{width:34px;height:34px;color:var(--ink-soft);background:0 0;border:1px solid #0000;border-radius:9px;flex:none;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{background:var(--surface-2);color:var(--ink)}.icon-button.danger:hover{color:var(--red);background:var(--red-soft)}input,select,textarea{border:1px solid var(--line);background:var(--surface);width:100%;min-height:40px;color:var(--ink);border-radius:10px;outline:none;padding:9px 11px;transition:border-color .14s,box-shadow .14s}textarea{resize:vertical;line-height:1.45}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent)}.field-stack{flex-direction:column;gap:7px;display:flex}.field-stack>span,.field-label{color:var(--ink-soft);font-size:.78rem;font-weight:800}.field-stack small{color:var(--muted);font-weight:500}.field-stack.compact{gap:4px}.field-help{color:var(--muted);font-size:.78rem;line-height:1.45}.form-stack{flex-direction:column;gap:18px;display:flex}.check-row{color:var(--ink-soft);align-items:flex-start;gap:11px;display:flex}.check-row input{width:18px;min-height:18px;margin-top:2px}.check-row span{flex-direction:column;gap:3px;display:flex}.check-row small{color:var(--muted);line-height:1.4}.app-shell{min-height:100vh}.app-nav{z-index:50;background:var(--nav);width:76px;color:var(--nav-text);border-right:1px solid #ffffff0f;flex-direction:column;display:flex;position:fixed;inset:0 auto 0 0}.nav-brand-row{border-bottom:1px solid #ffffff14;justify-content:center;align-items:center;height:66px;display:flex}.app-nav nav{flex-direction:column;gap:5px;padding:12px 9px;display:flex}.app-nav nav button{color:#adb7bd;background:0 0;border:0;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:49px;font-size:.61rem;font-weight:700;display:flex}.app-nav nav button:hover{color:#fff;background:var(--nav-soft)}.app-nav nav button.active{color:#fff;background:color-mix(in srgb, var(--accent) 62%, var(--nav))}.nav-privacy{color:#93a0a7;text-align:center;flex-direction:column;align-items:center;gap:5px;margin-top:auto;padding:13px 8px 16px;font-size:.57rem;display:flex}.nav-privacy span{flex-direction:column;display:flex}.nav-privacy strong{color:#cbd3d7}.mobile-nav-close,.mobile-menu,.mobile-nav-scrim{display:none}.app-topbar{z-index:40;background:color-mix(in srgb, var(--bg-elevated) 92%, transparent);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);align-items:center;gap:18px;height:66px;padding:0 24px;display:flex;position:fixed;inset:0 0 auto 76px}.brand-mark{align-items:center;gap:10px;min-width:max-content;display:flex}.brand-mark.compact{gap:0}.brand-glyph{background:var(--accent);color:#fff;border-radius:50% 50% 45% 55%;place-items:center;width:36px;height:36px;font-family:Georgia,serif;font-size:1.25rem;font-weight:700;display:grid;transform:rotate(-4deg);box-shadow:0 5px 14px #0000002e}.brand-mark>span:not(.brand-glyph){flex-direction:column;line-height:1.05;display:flex}.brand-mark strong{font-family:Georgia,serif;font-size:1.06rem}.brand-mark small{color:var(--muted);letter-spacing:.05em;font-size:.62rem}.app-nav .brand-glyph{width:38px;height:38px}.topbar-context{flex:1;min-width:0}.project-picker{align-items:center;max-width:330px;display:inline-flex;position:relative}.project-picker select{appearance:none;background:var(--surface);min-width:210px;height:38px;padding-right:34px;font-weight:700}.project-picker svg{pointer-events:none;color:var(--muted);position:absolute;right:10px}.topbar-empty{color:var(--muted);font-size:.85rem}.model-status-button{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:11px;align-items:center;gap:9px;padding:6px 11px;display:flex}.model-status-button>span:last-child{flex-direction:column;align-items:flex-start;line-height:1.12;display:flex}.model-status-button small{color:var(--muted);font-size:.62rem}.model-status-button strong{text-transform:capitalize;font-size:.76rem}.model-status-dot{background:var(--muted);width:9px;height:9px;box-shadow:0 0 0 3px color-mix(in srgb, var(--muted) 18%, transparent);border-radius:50%}.model-status-button.status-ready .model-status-dot{background:var(--green);box-shadow:0 0 0 3px var(--green-soft)}.model-status-button.status-loading .model-status-dot,.model-status-button.status-generating .model-status-dot{background:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}.model-status-button.status-error .model-status-dot{background:var(--red);box-shadow:0 0 0 3px var(--red-soft)}.app-content{min-height:100vh;padding:66px 0 0 76px}.focus-shell .app-content{padding:0}.dashboard-view{max-width:1440px;margin:0 auto;padding:48px clamp(24px,5vw,76px) 80px}.dashboard-hero{border:1px solid var(--line);background:radial-gradient(circle at 83% 18%, color-mix(in srgb, var(--accent-soft) 58%, transparent), transparent 30%), linear-gradient(130deg, var(--surface), var(--bg-elevated));min-height:440px;box-shadow:var(--shadow-sm);border-radius:30px;grid-template-columns:minmax(0,1.15fr) minmax(390px,.85fr);align-items:center;gap:60px;padding:36px clamp(24px,4vw,58px);display:grid;overflow:hidden}.hero-copy h1{margin:18px 0 22px;font-family:Georgia,serif;font-size:clamp(3.25rem,6vw,6rem);font-weight:500;line-height:.93}.hero-copy h1 em{color:var(--accent);font-weight:500}.hero-copy p{max-width:650px;color:var(--ink-soft);font-size:1.08rem;line-height:1.75}.hero-actions{gap:11px;margin-top:28px;display:flex}.hero-visual{min-height:330px;position:relative}.poem-card{background:var(--paper);width:min(330px,85%);color:var(--paper-ink);box-shadow:var(--shadow-lg);border:1px solid #785d3d33;position:absolute}.poem-card p{font-family:Georgia,serif;line-height:1.7}.back-card{opacity:.74;min-height:250px;padding:28px;top:10px;right:35px;transform:rotate(7deg)}.back-card span{color:var(--muted);text-transform:uppercase;letter-spacing:.14em;font-size:.72rem}.front-card{flex-direction:column;min-height:276px;padding:34px;display:flex;top:60px;left:10px;transform:rotate(-5deg)}.front-card>span{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;margin-top:20px;font-size:.72rem;font-weight:800}.front-card p{margin:24px 0;font-size:1.24rem}.front-card i{color:var(--green);margin-top:auto;font-size:.72rem}.privacy-strip{border:1px solid var(--line);background:var(--line);border-radius:16px;grid-template-columns:repeat(3,1fr);gap:1px;margin:24px 0 54px;display:grid;overflow:hidden}.privacy-strip>div{background:var(--surface);color:var(--accent);align-items:center;gap:13px;padding:18px 22px;display:flex}.privacy-strip span{color:var(--muted);flex-direction:column;font-size:.73rem;display:flex}.privacy-strip strong{color:var(--ink);font-size:.83rem}.section-heading-row,.view-header{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.section-heading-row h2,.view-header h1{margin:7px 0 0;font-family:Georgia,serif;font-weight:500}.section-heading-row h2{font-size:2rem}.project-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px;margin-top:22px;display:grid}.project-card{border:1px solid var(--line);background:var(--surface);min-height:220px;box-shadow:var(--shadow-sm);border-radius:16px;grid-template-columns:100px 1fr;transition:transform .15s,box-shadow .15s;display:grid;overflow:hidden}.project-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.project-cover{color:#fff;flex-direction:column;justify-content:space-between;align-items:center;padding:25px 12px;display:flex}.project-cover span{border:1px solid #ffffff59;place-items:center;width:50px;height:62px;font-family:Georgia,serif;font-size:1.9rem;display:grid}.cover-0{background:#3a5660}.cover-1{background:#7b4a3b}.cover-2{background:#5b6641}.cover-3{background:#635579}.cover-4{background:#4f5d70}.project-card-body{flex-direction:column;min-width:0;padding:21px;display:flex}.project-updated{color:var(--muted);font-size:.68rem}.project-card h3{margin:12px 0 8px;font-family:Georgia,serif;font-size:1.25rem}.project-card p{color:var(--ink-soft);font-size:.82rem;line-height:1.5}.project-card-actions{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.library-empty{border:1px dashed var(--line-strong);color:var(--muted);text-align:center;border-radius:18px;flex-direction:column;align-items:center;margin-top:22px;padding:65px 30px;display:flex}.library-empty h3{color:var(--ink);margin:18px 0 5px}.library-empty .button{margin-top:12px}.workspace{background:var(--bg);grid-template-columns:258px minmax(0,1fr);height:calc(100vh - 66px);display:grid;overflow:hidden}.workspace.with-right-panel{grid-template-columns:258px minmax(0,1fr) 360px}.workspace.focus-mode{grid-template-columns:minmax(0,1fr);height:100vh}.outline-panel,.context-panel{background:var(--bg-elevated);min-width:0}.outline-panel{border-right:1px solid var(--line);flex-direction:column;display:flex;overflow:hidden}.outline-heading{justify-content:space-between;align-items:flex-start;gap:8px;padding:20px 17px 14px;display:flex}.outline-heading h2{white-space:nowrap;text-overflow:ellipsis;margin:5px 0 0;font-family:Georgia,serif;font-size:1.08rem;overflow:hidden}.project-progress{border:1px solid var(--line);background:var(--surface);border-radius:11px;margin:0 14px 14px;padding:12px}.project-progress strong{font-family:Georgia,serif;font-size:1.2rem}.project-progress>span{color:var(--muted);margin-left:5px;font-size:.7rem}.goal-track,.progress-track,.storage-track{background:var(--surface-3);border-radius:999px;height:6px;margin-top:10px;overflow:hidden}.goal-track span,.progress-track span,.storage-track span{border-radius:inherit;background:var(--accent);height:100%;display:block}.document-outline{flex:1;padding:0 9px 14px;overflow-y:auto}.outline-item{border-radius:9px;align-items:center;margin-bottom:3px;display:flex;position:relative}.outline-item:hover,.outline-item.active{background:var(--surface-2)}.outline-item[draggable=true]{cursor:grab}.outline-item.dragging{opacity:.45;cursor:grabbing}.outline-item.drop-target{outline:2px solid var(--accent);outline-offset:2px}.outline-item.active{box-shadow:inset 3px 0 var(--accent)}.outline-main{min-width:0;height:42px;color:var(--ink-soft);text-align:left;background:0 0;border:0;flex:1;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 9px;display:grid}.outline-main span{white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;font-weight:700;overflow:hidden}.outline-main small{color:var(--muted);font-size:.61rem}.outline-actions{background:linear-gradient(90deg, transparent, var(--surface-2) 16%);padding-left:6px;display:none;position:absolute;right:4px}.outline-item:hover .outline-actions{display:flex}.outline-actions button{width:25px;height:28px;color:var(--muted);background:0 0;border:0;place-items:center;display:grid}.outline-actions button:hover{color:var(--accent)}.outline-item:hover .outline-main small{visibility:hidden}.outline-footer{border-top:1px solid var(--line);gap:3px;padding:10px 8px;display:flex;overflow-x:auto}.workspace-editor{min-width:0;overflow:hidden}.writing-editor-shell{flex-direction:column;height:100%;display:flex}.editor-toolbar{border-bottom:1px solid var(--line);background:var(--bg-elevated);align-items:center;gap:6px;min-height:48px;padding:6px 10px;display:flex;overflow-x:auto}.toolbar-group{border-right:1px solid var(--line);align-items:center;gap:2px;padding-right:6px;display:flex}.toolbar-group:last-child{border-right:0}.toolbar-button{width:31px;height:31px;color:var(--ink-soft);background:0 0;border:1px solid #0000;border-radius:7px;place-items:center;display:grid}.toolbar-button:hover:not(:disabled),.toolbar-button.active{background:var(--surface-2);color:var(--accent);border-color:var(--line)}.toolbar-select{border-radius:7px;width:auto;height:31px;min-height:31px;padding:4px 26px 4px 8px;font-size:.75rem}.toolbar-spacer{flex:1}.find-replace-bar{border-bottom:1px solid var(--border);background:var(--surface);align-items:center;gap:6px;padding:8px 12px;display:flex;overflow-x:auto}.find-replace-bar input[type=text],.find-replace-bar input:not([type]){min-width:170px}.find-replace-bar input{border:1px solid var(--border);background:var(--paper);height:32px;color:var(--text);border-radius:7px;padding:0 9px}.find-count{min-width:64px;color:var(--muted);text-align:center;white-space:nowrap;font-size:.68rem}.find-case{color:var(--muted);white-space:nowrap;align-items:center;gap:4px;padding:0 5px;font-size:.72rem;display:inline-flex}.find-case input{width:14px;height:14px}.toolbar-button.text-tool{gap:5px;width:auto;padding:0 8px}.toolbar-button.text-tool span{font-size:.68rem}.editor-titlebar{border-bottom:1px solid var(--line);background:var(--surface);align-items:center;gap:18px;min-height:55px;padding:7px 18px;display:flex}.editor-titlebar>input{background:0 0;border-color:#0000;flex:1;min-width:0;font-family:Georgia,serif;font-size:1.15rem;font-weight:700}.editor-titlebar>input:hover,.editor-titlebar>input:focus{border-color:var(--line);background:var(--bg-elevated)}.editor-meta{color:var(--muted);white-space:nowrap;align-items:center;gap:13px;font-size:.68rem;display:flex}.save-state{align-items:center;gap:5px;display:inline-flex}.save-state.saved{color:var(--green)}.save-state.error{color:var(--red)}.paper-stage{background:color-mix(in srgb, var(--bg) 88%, var(--surface-3));flex:1;padding:42px 6vw 80px;overflow:auto}.paper-page{background:var(--paper);width:min(100%,780px);min-height:1000px;color:var(--paper-ink);box-shadow:var(--shadow-md);border:1px solid color-mix(in srgb, var(--line) 70%, transparent);margin:0 auto;padding:74px clamp(42px,7vw,94px) 100px}.page-size-a4 .paper-page{width:min(100%,794px);min-height:1123px}.page-size-letter .paper-page{width:min(100%,816px);min-height:1056px}.page-size-book .paper-page{width:min(100%,690px);min-height:970px}.paper-editor-content{outline:none;min-height:820px;font-family:Georgia,Cambria,Times New Roman,serif;font-size:1.04rem;line-height:1.82}.paper-editor-content>:first-child{margin-top:0}.paper-editor-content p{margin:0 0 1.05em}.paper-editor-content h1{margin:0 0 1.1em;font-size:2.4rem;font-weight:500;line-height:1.12}.paper-editor-content h2{margin:1.8em 0 .8em;font-size:1.75rem;line-height:1.2}.paper-editor-content h3{margin:1.5em 0 .65em;font-size:1.3rem}.paper-editor-content blockquote{border-left:3px solid var(--accent);color:color-mix(in srgb, var(--paper-ink) 72%, transparent);margin:1.6em 0;padding:.2em 0 .2em 1.25em;font-style:italic}.paper-editor-content ul,.paper-editor-content ol{padding-left:1.5em}.paper-editor-content hr{border:0;border-top:1px solid var(--line-strong);margin:2em 0}.paper-editor-content table{border-collapse:collapse;width:100%;margin:1.5em 0;font-family:ui-sans-serif,system-ui,sans-serif;font-size:.86rem}.paper-editor-content td,.paper-editor-content th{border:1px solid var(--line-strong);vertical-align:top;min-width:80px;padding:8px}.paper-editor-content th{background:var(--surface-2)}.paper-editor-content .selectedCell{background:var(--accent-soft)}.paper-editor-content .column-resize-handle{background:var(--accent);pointer-events:none;width:4px;position:absolute;top:0;bottom:-2px;right:-2px}.paper-editor-content p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--muted);pointer-events:none;height:0}.scene-divider{text-align:center;color:var(--accent);letter-spacing:.5em;margin:2.6em 0;font-size:1.3rem}.paper-break{border-top:1px dashed var(--line-strong);text-align:center;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin:2.4em 0;font-family:ui-sans-serif,system-ui,sans-serif;font-size:.65rem;position:relative}.paper-break span{background:var(--paper);padding:0 8px;position:relative;top:-.8em}.section-break{border-top-style:double}.local-image-node{border:1px solid #0000;border-radius:8px;margin:2em 0;padding:10px}.local-image-node.is-selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 25%, transparent)}.local-image-node img{border-radius:5px;max-width:100%;max-height:680px;margin:0 auto;display:block}.local-image-placeholder{border:1px dashed var(--line-strong);min-height:180px;color:var(--muted);background:var(--surface-2);flex-direction:column;justify-content:center;align-items:center;gap:8px;font-family:ui-sans-serif,system-ui,sans-serif;display:flex}.local-image-caption-row{align-items:center;gap:6px;margin-top:7px;display:flex}.local-image-caption-row input{text-align:center;background:0 0;border-color:#0000;min-height:32px;font-family:Georgia,serif;font-size:.8rem;font-style:italic}.editor-loading,.view-loading{height:100%;color:var(--muted);place-items:center;display:grid}.context-panel{border-left:1px solid var(--line);overflow-y:auto}.context-tabs{z-index:2;border-bottom:1px solid var(--line);background:var(--bg-elevated);grid-template-columns:1fr 1fr;padding:8px;display:grid;position:sticky;top:0}.context-tabs button{min-height:34px;color:var(--muted);background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;font-size:.74rem;font-weight:800;display:inline-flex}.context-tabs button.active{background:var(--surface);color:var(--accent);box-shadow:var(--shadow-sm)}.tiny-spark{color:var(--accent)}.ai-composer,.context-content{padding:18px}.panel-heading{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:17px;display:flex}.panel-heading h2{margin:5px 0 0;font-family:Georgia,serif;font-size:1.25rem}.status-pill{background:var(--surface-2);min-height:24px;color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;padding:0 8px;font-size:.62rem;font-weight:800;display:inline-flex}.status-pill.ready{background:var(--green-soft);color:var(--green)}.status-pill.loading,.status-pill.generating,.status-pill.warning{background:var(--gold-soft);color:var(--gold)}.status-pill.error{background:var(--red-soft);color:var(--red)}.ai-composer select{margin-top:6px}.ai-composer .field-stack{margin-top:14px}.selection-summary{background:var(--surface-2);border-radius:8px;justify-content:space-between;gap:8px;margin:16px 0 10px;padding:10px;font-size:.68rem;display:flex}.selection-summary span{color:var(--muted)}.inline-warning,.inline-error{margin:8px 0 0;font-size:.72rem;line-height:1.45}.inline-warning{color:var(--gold)}.inline-error{color:var(--red)}.ai-composer>.button+.button{margin-top:7px}.ai-result{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin-top:16px;overflow:hidden}.ai-result-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:38px;padding:0 9px 0 12px;font-size:.76rem;display:flex}.diff-preview{white-space:pre-wrap;max-height:320px;padding:15px;font-family:Georgia,serif;font-size:.9rem;line-height:1.65;overflow-y:auto}.diff-added{background:var(--green-soft);color:var(--green);text-decoration:none}.diff-removed{background:var(--red-soft);color:var(--red);opacity:.72;text-decoration:line-through}.ai-result-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:5px;padding:10px;display:flex}.context-card{border:1px solid var(--line);background:var(--surface);border-radius:11px;margin-bottom:10px;padding:14px}.insight-stats{grid-template-columns:1fr 1fr;gap:7px;margin:10px 0 12px;display:grid}.insight-stats div{background:var(--surface-2);border-radius:8px;padding:8px}.insight-stats dt{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.58rem}.insight-stats dd{margin:3px 0 0;font-size:.72rem;font-weight:700}.repeated-words>strong{margin-bottom:7px;font-size:.66rem;display:block}.repeated-words>div{flex-wrap:wrap;gap:5px;display:flex}.repeated-words span{border:1px solid var(--line);color:var(--ink-soft);border-radius:999px;padding:4px 7px;font-size:.61rem}.repeated-words b{color:var(--accent)}.context-card h3{margin-bottom:7px;font-size:.8rem}.context-card>p{color:var(--ink-soft);font-size:.75rem;line-height:1.55}.mini-entity{border-top:1px solid var(--line);padding:10px 0}.mini-entity:first-of-type{border-top:0}.mini-entity strong{font-size:.75rem}.mini-entity>span{color:var(--accent);text-transform:uppercase;margin-left:6px;font-size:.58rem}.mini-entity p{color:var(--muted);margin:4px 0 0;font-size:.68rem;line-height:1.4}.standard-view{max-width:1420px;margin:0 auto;padding:46px clamp(24px,5vw,72px) 80px}.view-header{margin-bottom:32px}.view-header h1{font-size:clamp(2.3rem,4vw,3.6rem)}.view-header p{max-width:740px;color:var(--ink-soft);margin:8px 0 0;line-height:1.65}.empty-state{min-height:330px;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:40px;display:flex}.empty-state .empty-icon{background:var(--surface-2);width:58px;height:58px;color:var(--accent);border-radius:18px;place-items:center;display:grid}.empty-state h2{color:var(--ink);margin:17px 0 7px;font-family:Georgia,serif}.empty-state p{max-width:520px;line-height:1.6}.empty-state .button{margin-top:8px}.story-layout{grid-template-columns:minmax(0,1fr) 330px;gap:28px;display:grid}.filter-chips{flex-wrap:wrap;gap:7px;margin-bottom:16px;display:flex}.filter-chips span{border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);border-radius:999px;align-items:center;gap:5px;padding:7px 10px;font-size:.7rem;display:inline-flex}.entity-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:13px;display:grid}.entity-card{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:14px;min-height:190px;padding:18px;transition:transform .13s,border-color .13s;position:relative}.entity-card:hover{border-color:var(--accent);transform:translateY(-2px)}.entity-card-top{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:8px;font-size:.62rem;display:flex}.entity-icon{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);border-radius:9px;place-items:center;display:grid}.entity-icon.location{background:var(--green-soft);color:var(--green)}.entity-icon.object{background:var(--gold-soft);color:var(--gold)}.entity-icon.faction{color:#65518c;background:#e0daf0}.entity-icon.theme{color:#3d6885;background:#dce7ef}.entity-card h2{margin:17px 0 5px;font-family:Georgia,serif;font-size:1.18rem}.entity-card small{color:var(--accent);font-size:.65rem}.entity-card p{color:var(--ink-soft);margin:10px 0 0;font-size:.77rem;line-height:1.5}.entity-delete{opacity:0;position:absolute;top:9px;right:9px}.entity-mentions{border:1px solid var(--line);color:var(--accent);background:0 0;border-radius:999px;align-items:center;gap:5px;margin-top:12px;padding:5px 8px;font-size:.62rem;display:inline-flex}.entity-mentions:hover{background:var(--surface-2)}.entity-card:hover .entity-delete{opacity:1}.settings-card,.settings-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:16px;padding:22px}.settings-card{align-self:start;position:sticky;top:94px}.settings-card h2{margin:6px 0 18px;font-family:Georgia,serif}.settings-card .field-stack{margin-bottom:15px}.editor-drawer{z-index:90;position:fixed;inset:0}.drawer-scrim{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#080b0d85;position:absolute;inset:0}.drawer-card{background:var(--bg-elevated);width:min(460px,96vw);height:100%;box-shadow:var(--shadow-lg);flex-direction:column;gap:16px;padding:25px;display:flex;position:absolute;top:0;right:0;overflow-y:auto}.drawer-card header{justify-content:space-between;align-items:flex-start;display:flex}.drawer-card header h2{margin:5px 0 0;font-family:Georgia,serif}.large-search{border:1px solid var(--line-strong);background:var(--surface);max-width:920px;box-shadow:var(--shadow-sm);border-radius:14px;align-items:center;gap:12px;padding:8px 13px;display:flex}.large-search input{box-shadow:none;background:0 0;border:0;font-size:1rem}.large-search kbd{border:1px solid var(--line);background:var(--surface-2);color:var(--muted);border-radius:5px;padding:4px 7px;font-size:.62rem}.search-results{max-width:920px;margin-top:24px}.results-count{color:var(--muted);font-size:.72rem}.search-result{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);text-align:left;border-radius:12px;grid-template-columns:42px minmax(0,1fr);gap:13px;margin-bottom:8px;padding:16px;display:grid}.search-result:hover{border-color:var(--accent)}.search-result-icon{background:var(--surface-2);width:38px;height:38px;color:var(--accent);border-radius:10px;place-items:center;display:grid}.search-result span:last-child{min-width:0}.search-result small{color:var(--accent);text-transform:uppercase;letter-spacing:.08em;font-size:.6rem;display:block}.search-result strong{margin-top:3px;font-family:Georgia,serif;display:block}.search-result p{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;margin:5px 0 0;font-size:.77rem;line-height:1.45;overflow:hidden}.search-suggestions{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin-top:19px;font-size:.75rem;display:flex}.search-suggestions button{border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);border-radius:999px;padding:6px 9px}.revision-layout{border:1px solid var(--line);background:var(--surface);border-radius:16px;grid-template-columns:300px minmax(0,1fr);min-height:580px;display:grid;overflow:hidden}.revision-sidebar{border-right:1px solid var(--line);background:var(--bg-elevated);padding:16px}.revision-list{margin-top:13px}.revision-list>button{width:100%;color:var(--ink-soft);text-align:left;background:0 0;border:0;border-radius:9px;grid-template-columns:22px minmax(0,1fr);gap:8px;padding:11px;display:grid}.revision-list>button:hover,.revision-list>button.active{background:var(--surface-2);color:var(--ink)}.revision-list span{flex-direction:column;gap:3px;display:flex}.revision-list strong{font-size:.75rem}.revision-list small{color:var(--muted);font-size:.63rem}.muted-copy{color:var(--muted);font-size:.75rem;line-height:1.5}.revision-preview{min-width:0;padding:28px}.revision-preview-header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.revision-preview-header h2{margin:5px 0 0;font-family:Georgia,serif}.revision-diff{border:1px solid var(--line);background:var(--paper);min-height:330px;color:var(--paper-ink);white-space:pre-wrap;margin-top:26px;padding:30px;font-family:Georgia,serif;line-height:1.75}.revision-raw{color:var(--muted);margin-top:14px;font-size:.76rem}.revision-raw pre{white-space:pre-wrap;color:var(--ink-soft);font-family:Georgia,serif;line-height:1.6}.transfer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.transfer-card{border:1px solid var(--line);background:var(--surface);border-radius:16px;grid-template-rows:1fr auto;grid-template-columns:48px minmax(0,1fr);gap:12px;min-height:220px;padding:22px;display:grid}.transfer-card.featured{border-color:color-mix(in srgb, var(--accent) 55%, var(--line));background:linear-gradient(145deg, var(--surface), color-mix(in srgb, var(--accent-soft) 23%, var(--surface)))}.transfer-icon{background:var(--surface-2);width:44px;height:44px;color:var(--accent);border-radius:12px;place-items:center;display:grid}.transfer-card h2{margin:3px 0 7px;font-family:Georgia,serif}.transfer-card p{color:var(--ink-soft);font-size:.82rem;line-height:1.55}.transfer-card>.button,.transfer-card>.button-row{grid-column:2;justify-self:start}.import-preview{border:1px solid var(--green);background:var(--green-soft);border-radius:15px;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;gap:24px;margin-top:22px;padding:22px;display:grid}.import-preview h2{margin:4px 0;font-family:Georgia,serif}.import-preview p{color:var(--ink-soft);margin:0;font-size:.75rem}.import-preview dl{gap:18px;margin:0;display:flex}.import-preview dl div{flex-direction:column;display:flex}.import-preview dt{color:var(--muted);font-size:.62rem}.import-preview dd{margin:2px 0 0;font-weight:800}.capability-panel{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px;display:grid}.capability{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:11px;padding:14px;display:flex}.capability span{color:var(--muted);flex-direction:column;font-size:.68rem;display:flex}.capability strong{color:var(--ink);font-size:.78rem}.capability.good>svg{color:var(--green)}.capability.warning>svg{color:var(--gold)}.model-progress,.error-banner,.model-notice{border-radius:12px;margin-bottom:18px;padding:15px 17px}.model-progress{border:1px solid var(--line);background:var(--surface)}.model-progress>div:first-child{grid-template-columns:24px 1fr;align-items:center;display:grid}.model-progress span{color:var(--muted);grid-column:2;font-size:.7rem}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-banner{border:1px solid var(--red);background:var(--red-soft);color:var(--red);align-items:center;gap:9px;display:flex}.model-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.model-card{border:1px solid var(--line);background:var(--surface);border-radius:17px;flex-direction:column;min-height:350px;padding:22px;display:flex;position:relative}.model-card.recommended{border-color:var(--accent)}.model-card.loaded{box-shadow:0 0 0 2px var(--green)}.recommend-badge{background:var(--accent);color:#fff;border-radius:999px;padding:4px 9px;font-size:.61rem;font-weight:800;position:absolute;top:-10px;right:15px}.model-card-top{justify-content:space-between;align-items:center;display:flex}.tier-badge,.cached-badge{border-radius:999px;align-items:center;gap:4px;min-height:24px;padding:0 8px;font-size:.62rem;font-weight:800;display:inline-flex}.tier-badge{background:var(--surface-2);color:var(--ink-soft)}.tier-standard{background:var(--accent-soft);color:var(--accent)}.tier-power{color:#65518c;background:#e3dcf0}.cached-badge{color:var(--green);background:var(--green-soft)}.model-card h2{margin:22px 0 8px;font-family:Georgia,serif}.model-card>p{color:var(--ink-soft);font-size:.8rem;line-height:1.55}.model-card dl{margin:auto 0 18px}.model-card dl div{border-top:1px solid var(--line);justify-content:space-between;gap:10px;padding:7px 0;font-size:.68rem;display:flex}.model-card dt{color:var(--muted)}.model-card dd{text-align:right;margin:0}.model-card-actions{align-items:center;gap:7px;display:flex}.model-card-actions .button{flex:1}.chrome-model-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;justify-content:space-between;align-items:center;gap:24px;margin-top:16px;padding:18px 21px;display:flex}.chrome-model-card>div{align-items:center;gap:13px;display:flex}.chrome-model-card span:last-child{display:block}.chrome-model-card p{color:var(--ink-soft);margin:4px 0 0;font-size:.75rem}.model-notice{border:1px solid var(--gold);background:var(--gold-soft);gap:12px;margin-top:16px;display:flex}.model-notice svg{color:var(--gold);flex:none}.model-notice p{color:var(--ink-soft);margin:4px 0 0;font-size:.77rem;line-height:1.5}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.settings-panel-heading{align-items:flex-start;gap:13px;margin-bottom:18px;display:flex}.settings-panel-heading h2{margin:0 0 5px;font-family:Georgia,serif}.settings-panel-heading p{color:var(--ink-soft);margin:0;font-size:.77rem;line-height:1.5}.settings-icon{background:var(--surface-2);width:42px;height:42px;color:var(--accent);border-radius:11px;flex:none;place-items:center;font-family:Georgia,serif;font-weight:700;display:grid}.settings-icon.danger{background:var(--red-soft);color:var(--red)}.storage-meter{background:var(--surface-2);border-radius:11px;padding:13px}.storage-meter>div:first-child{color:var(--muted);justify-content:space-between;font-size:.72rem;display:flex}.storage-meter strong{color:var(--ink)}.storage-meter small{color:var(--muted);margin-top:6px;font-size:.62rem;display:block}.persistence-status{border-radius:10px;gap:10px;margin:13px 0;padding:11px;display:flex}.persistence-status.good{background:var(--green-soft);color:var(--green)}.persistence-status.warning{background:var(--gold-soft);color:var(--gold)}.persistence-status span{flex-direction:column;font-size:.68rem;display:flex}.persistence-status strong{font-size:.75rem}.local-stats{border:1px solid var(--line);background:var(--line);grid-template-columns:repeat(4,1fr);gap:1px;margin:17px 0 0;display:grid}.local-stats div{background:var(--surface);flex-direction:column;padding:10px;display:flex}.local-stats dt{color:var(--muted);font-size:.6rem}.local-stats dd{margin:3px 0 0;font-weight:800}.privacy-checklist{margin:0 0 18px;padding:0;list-style:none}.privacy-checklist li{border-top:1px solid var(--line);color:var(--ink-soft);align-items:center;gap:8px;padding:9px 0;font-size:.76rem;display:flex}.privacy-checklist li:first-child{border-top:0}.privacy-checklist svg{color:var(--green)}.theme-picker{grid-template-columns:1fr 1fr;gap:9px;display:grid}.theme-picker button{border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:12px;flex-direction:column;align-items:flex-start;gap:5px;padding:16px;display:flex}.theme-picker button.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.theme-picker span{color:var(--muted);font-size:.68rem}.danger-zone{border-color:color-mix(in srgb, var(--red) 60%, var(--line))}.danger-zone>p{color:var(--red);font-size:.75rem}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#080b0d8f;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-card{border:1px solid var(--line);background:var(--bg-elevated);width:min(480px,96vw);max-height:min(760px,92vh);box-shadow:var(--shadow-lg);border-radius:18px;overflow:hidden}.modal-card.wide{width:min(880px,96vw)}.modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:58px;padding:0 16px 0 21px;display:flex}.modal-header h2{margin:0;font-family:Georgia,serif;font-size:1.25rem}.modal-body{padding:22px;overflow-y:auto}.modal-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.toast{z-index:120;border:1px solid var(--line);background:var(--surface);max-width:min(430px,100vw - 44px);color:var(--ink);box-shadow:var(--shadow-lg);border-radius:12px;grid-template-columns:22px minmax(0,1fr) 30px;align-items:center;gap:8px;padding:12px 9px 12px 14px;font-size:.78rem;display:grid;position:fixed;bottom:22px;right:22px}.toast.success>svg{color:var(--green)}.toast.error>svg{color:var(--red)}.toast.info>svg{color:var(--accent)}.pwa-prompt{z-index:110;border:1px solid var(--line);background:var(--nav);color:#fff;box-shadow:var(--shadow-lg);border-radius:11px;align-items:center;gap:10px;padding:10px 12px;font-size:.75rem;display:flex;position:fixed;bottom:22px;left:98px}@media (width<=1180px){.workspace.with-right-panel{grid-template-columns:230px minmax(0,1fr) 330px}.model-grid{grid-template-columns:1fr 1fr}.model-card:last-child{grid-column:1/-1}.story-layout{grid-template-columns:minmax(0,1fr) 300px}.dashboard-hero{grid-template-columns:1fr 360px;gap:25px}}@media (width<=940px){.app-nav{width:220px;transition:transform .17s;transform:translate(-100%)}.app-nav.mobile-open{box-shadow:var(--shadow-lg);transform:translate(0)}.app-nav nav button{flex-direction:row;justify-content:flex-start;gap:12px;padding:0 14px;font-size:.78rem}.app-nav .nav-brand-row{justify-content:space-between;padding:0 14px}.app-nav .brand-mark.compact:after{content:"PaperPoet";margin-left:10px;font-family:Georgia,serif;font-size:1.05rem}.mobile-nav-close,.mobile-menu{display:inline-flex}.mobile-nav-scrim{z-index:45;background:#00000070;border:0;display:block;position:fixed;inset:0}.app-topbar{padding:0 15px;left:0}.app-topbar>.brand-mark{display:none}.app-content{padding-left:0}.pwa-prompt{left:20px}.dashboard-hero{grid-template-columns:1fr}.hero-visual{display:none}.privacy-strip{grid-template-columns:1fr}.workspace.with-right-panel{grid-template-columns:220px minmax(0,1fr)}.context-panel{z-index:35;width:min(380px,92vw);box-shadow:var(--shadow-lg);position:fixed;top:66px;bottom:0;right:0}.story-layout{grid-template-columns:1fr}.settings-card{position:static}.capability-panel,.transfer-grid,.settings-grid,.import-preview{grid-template-columns:1fr}}@media (width<=680px){.app-topbar{gap:8px}.topbar-context{min-width:0}.project-picker{max-width:100%}.project-picker select{min-width:0;max-width:180px}.model-status-button>span:last-child{display:none}.model-status-button{padding:8px}.dashboard-view,.standard-view{padding:28px 15px 60px}.dashboard-hero{border-radius:20px;min-height:auto;padding:28px 20px}.hero-copy h1{font-size:3.1rem}.hero-actions,.section-heading-row,.view-header{flex-direction:column;align-items:stretch}.project-grid{grid-template-columns:1fr}.project-card{grid-template-columns:78px 1fr}.workspace,.workspace.with-right-panel{grid-template-columns:minmax(0,1fr)}.outline-panel,.editor-meta>span:first-child{display:none}.find-replace-bar{border-bottom:1px solid var(--border);background:var(--surface);align-items:center;gap:6px;padding:8px 12px;display:flex;overflow-x:auto}.find-replace-bar input[type=text],.find-replace-bar input:not([type]){min-width:170px}.find-replace-bar input{border:1px solid var(--border);background:var(--paper);height:32px;color:var(--text);border-radius:7px;padding:0 9px}.find-count{min-width:64px;color:var(--muted);text-align:center;white-space:nowrap;font-size:.68rem}.find-case{color:var(--muted);white-space:nowrap;align-items:center;gap:4px;padding:0 5px;font-size:.72rem;display:inline-flex}.find-case input{width:14px;height:14px}.toolbar-button.text-tool{gap:5px;width:auto;padding:0 8px}.toolbar-button.text-tool span{font-size:.68rem}.editor-titlebar{padding:6px 9px}.paper-stage{padding:14px 0 55px}.paper-page,.page-size-a4 .paper-page,.page-size-letter .paper-page,.page-size-book .paper-page{width:100%;min-height:calc(100vh - 170px);box-shadow:none;border-left:0;border-right:0;padding:46px 24px 70px}.paper-editor-content{font-size:1rem}.editor-toolbar{padding-left:4px}.revision-layout{grid-template-columns:1fr}.revision-sidebar{border-right:0;border-bottom:1px solid var(--line)}.revision-list{display:flex;overflow-x:auto}.revision-list>button{min-width:210px}.revision-preview{padding:15px}.revision-diff{padding:20px}.model-grid{grid-template-columns:1fr}.model-card:last-child{grid-column:auto}.chrome-model-card{flex-direction:column;align-items:stretch}.entity-grid{grid-template-columns:1fr}.transfer-card{grid-template-columns:42px minmax(0,1fr);padding:17px}.local-stats{grid-template-columns:1fr 1fr}.modal-backdrop{align-items:end;padding:8px}.modal-card{border-radius:18px 18px 0 0;width:100%}.toast{max-width:calc(100vw - 20px);bottom:10px;right:10px}.pwa-prompt{flex-wrap:wrap;bottom:10px;left:10px;right:10px}}@media print{.app-nav,.app-topbar,.editor-toolbar,.editor-titlebar,.outline-panel,.context-panel{display:none!important}.app-content,.workspace,.workspace-editor,.writing-editor-shell,.paper-stage{background:#fff;height:auto;padding:0;display:block;overflow:visible}.paper-page{width:auto;min-height:0;box-shadow:none;border:0;margin:0;padding:0}.page-break{break-before:page}}
