:root{color-scheme:light;--ink: #1c1915;--muted: #6f685e;--line: #e0d8cc;--rail: #f4f0e8;--desk: #e6dfd2;--accent: #c4622d;--white: #fffcf7;font-family:Figtree,Segoe UI,sans-serif;color:var(--ink);background:var(--desk)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0}button,input,select,textarea{font-family:inherit}button{cursor:pointer}button:disabled{cursor:default}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app{height:100dvh;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:56px minmax(0,1fr);overflow:hidden}.app.rail-left-open{grid-template-columns:248px minmax(0,1fr)}.app.rail-left-open.rail-right-open{grid-template-columns:248px minmax(0,1fr) 300px}.app.rail-right-open:not(.rail-left-open){grid-template-columns:minmax(0,1fr) 300px}.topbar{grid-column:1 / -1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;height:56px;padding:0 12px;min-width:0;background:#1c1915;color:#f3efe6}.brand,.top-actions,.doc-title,.zoom-box,.segment{display:flex;align-items:center}.brand{gap:10px}.mark{width:16px;height:20px;background:linear-gradient(#f3efe6,#f3efe6);clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,0 100%);position:relative}.mark:after{content:"";position:absolute;top:0;right:0;border-top:6px solid #1c1915;border-left:6px solid #e7d3c4}.brand-name{font-family:Fraunces,Georgia,serif;font-weight:650;font-size:20px;letter-spacing:-.03em}.doc-title{gap:8px;min-width:0}.doc-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600}.doc-name.muted{color:#f3efe68c;font-weight:500}.kind-pill{flex:none;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:4px 6px;border-radius:999px;background:#f3efe61a;color:#e7d3c4}.top-actions{gap:8px}.zoom-box{height:32px;padding:2px;border-radius:9px;background:#ffffff0f}.zoom-box button,.segment button,.bar-btn{height:28px;border:0;background:transparent;color:#f3efe6c7;font-weight:650;font-size:13px}.zoom-box button{width:28px;border-radius:7px}.zoom-readout{width:auto!important;min-width:48px;padding:0 6px}.bar-btn{height:32px;padding:0 12px;border-radius:8px;border:1px solid rgba(243,239,230,.16)}.bar-btn.primary{background:#f3efe6;color:#1c1915;border-color:transparent}.bar-btn:disabled,.zoom-box button:disabled,.segment button:disabled{opacity:.4}.segment{padding:2px;border-radius:9px;background:#ffffff0f}.segment button{padding:0 12px;border-radius:7px}.segment button[aria-pressed=true]{background:#f3efe6;color:#1c1915}.segment button[data-mode=edit][aria-pressed=true]{background:var(--accent);color:#fff8f3}.page-rail,.tool-rail{min-height:0;min-width:0;background:var(--rail);display:flex;flex-direction:column;overflow:hidden}.page-rail{grid-column:1;grid-row:2;border-right:1px solid #ddd4c6}.tool-rail{grid-column:2;grid-row:2;border-left:1px solid #ddd4c6}.app.rail-left-open .stage{grid-column:2;grid-row:2}.app.rail-left-open.rail-right-open .stage{grid-column:2}.app.rail-left-open.rail-right-open .tool-rail{grid-column:3}.app.rail-right-open:not(.rail-left-open) .stage{grid-column:1}.app.rail-right-open:not(.rail-left-open) .tool-rail{grid-column:2}.rail-head,.tool-head{padding:16px 16px 8px}.rail-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.rail-title{display:flex;align-items:baseline;gap:8px;min-width:0}.rail-close{flex:none;width:28px;height:28px;border:1px solid #ddd4c6;border-radius:8px;background:#fff;color:var(--muted);font-size:18px;line-height:1}.rail-close:hover{color:var(--ink);border-color:#cfc4b6}.tool-rail-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.tool-rail-sink{position:absolute;width:0;height:0;overflow:hidden;clip:rect(0 0 0 0)}.top-actions .rail-toggles{margin-right:2px}.rail-head h2,.tool-head h2{margin:0;font-family:Fraunces,Georgia,serif;font-weight:560;font-size:20px}.rail-count,.eyebrow,.hint,.tool-note,.fine,.pager-hint,.thumb-text{color:var(--muted)}.eyebrow{margin:0;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.page-list,.tool-body{overflow:auto;min-height:0}.page-list{flex:1;padding:8px;display:flex;flex-direction:column;gap:8px}.rail-empty{margin:8px 16px;color:var(--muted);font-size:13px;line-height:1.45}.page-card{display:flex;flex-direction:column;gap:6px;width:100%;text-align:left;padding:8px;border-radius:10px;border:1px solid transparent;background:transparent;color:inherit}.page-card.active{background:#fff;border-color:#e4d9cc;box-shadow:inset 3px 0 0 var(--accent)}.thumb{position:relative;display:grid;place-items:start;overflow:hidden;border-radius:6px;border:1px solid var(--line);background:#fff}.thumb.page{aspect-ratio:3 / 4}.thumb.slide{aspect-ratio:16 / 9}.thumb.sheet{aspect-ratio:4 / 3}.thumb img{width:100%;height:100%;object-fit:cover}.thumb.slide img{object-fit:contain;background:#fff}.thumb-text{padding:26px 8px 8px;font-size:11px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.page-index{position:absolute;top:6px;left:6px;z-index:1;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#1c1915c7;color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center}.page-label{font-size:12px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stage{grid-column:1;grid-row:2;min-width:0;min-height:0;display:flex;flex-direction:column;background:radial-gradient(1000px 420px at 50% -10%,rgba(255,255,255,.45),transparent 55%),var(--desk)}.viewer-root{flex:1;min-height:0;display:flex;flex-direction:column}.stage-scroll{position:relative;flex:1;min-height:0;overflow:auto;display:grid;place-items:center;padding:28px 24px}.stage-scroll.fill{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:16px}.stage-doc{max-width:100%}.stage-doc.is-loading{opacity:0}.stage-scroll.fill .stage-doc{flex:1;width:100%;min-width:0;min-height:0;display:flex}.loading-card{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:grid;place-items:center;pointer-events:none}.loading-card span,.banner,.dropveil strong{background:#fff;border-radius:12px;box-shadow:0 16px 40px #281e0f24}.loading-card span{padding:12px 16px;font-weight:650}.pager{height:48px;display:flex;align-items:center;justify-content:center;gap:12px;border-top:1px solid #ddd4c6;background:#f4f0e8eb;font-size:13px}.pager button{height:30px;padding:0 12px;border-radius:999px;border:1px solid #ddd4c6;background:#fff;color:var(--ink);font-weight:650;font-size:13px}.pager button:disabled{opacity:.4}.pager-hint{font-size:12px}.tool-body{flex:1;padding:4px 16px 16px}.tool-note{margin:0;padding:12px 16px 16px;border-top:1px solid var(--line);font-size:12px;line-height:1.45}.tool-group{margin-top:16px}.tool-group h3,.field span{margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.fmt-row,.swatches{display:flex;flex-wrap:wrap;gap:6px}.fmt,.text-btn,.swatch,.solid-btn,.sample-row button{border:1px solid #e0d8cc;background:#fff;color:var(--ink)}.fmt{min-width:36px;height:34px;padding:0 10px;border-radius:8px;font-weight:650;font-size:14px;text-transform:capitalize}.fmt.on,.swatch.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.swatch{width:28px;height:28px;border-radius:50%;padding:0}.field{display:flex;flex-direction:column}.field textarea,.field input[type=text],.field select,.field input[type=range]{width:100%}.field textarea{min-height:96px;resize:vertical;border:1px solid #e0d8cc;border-radius:8px;padding:8px 10px;color:var(--ink);background:#fff}.hint{margin:8px 0 0;font-size:13px;line-height:1.45}.text-btn{margin-top:14px;border:0;background:transparent;color:#8c3a3a;padding:0;font-weight:650;font-size:13px}.empty{max-width:460px;text-align:center;padding:24px}.empty h2{margin:0;font-family:Fraunces,Georgia,serif;font-weight:560;font-size:34px;letter-spacing:-.03em;line-height:1.15}.empty p{color:var(--muted);font-size:15px;line-height:1.5}.fine{font-size:12px!important}.empty-sheet{width:92px;height:116px;margin:0 auto 18px;background:#fff;border-radius:2px 12px 2px 2px;box-shadow:0 16px 40px #281e0f24;position:relative;padding:28px 14px 0;display:flex;flex-direction:column;gap:8px}.empty-sheet:before{content:"";position:absolute;top:0;right:0;border-top:18px solid var(--desk);border-left:18px solid #e7d3c4}.empty-sheet span{display:block;height:6px;border-radius:99px;background:#efe7db}.empty-sheet span:first-child{width:68%;background:#e7cbb8}.solid-btn{height:40px;padding:0 16px;border:0;border-radius:999px;background:#1c1915;color:#f3efe6;font-weight:650;font-size:14px}.sample-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center;margin-top:18px;color:var(--muted);font-size:13px}.sample-row button{height:30px;padding:0 10px;border-radius:999px;font-weight:650;font-size:13px}.pdf-page,.slide-frame,.docx-host section.folio-docx{background:#fff;box-shadow:0 18px 50px #281e0f29}.pdf-page{position:relative;line-height:0}.pdf-page canvas{display:block}.pdf-page.placing{cursor:crosshair}.note{position:absolute;width:148px;min-height:56px;padding:8px 10px;border-radius:3px 10px 10px;box-shadow:0 8px 18px #281e0f29;color:#2a241c;font-size:13px;line-height:1.35;white-space:pre-wrap;cursor:grab;z-index:2;touch-action:none}.note.is-selected{outline:2px solid #1c1915}.docx-host .folio-docx-wrapper{background:transparent!important;padding:0!important}.docx-host section.folio-docx{margin:0 auto!important}.docx-host section[hidden]{display:none!important}.docx-host section[contenteditable=true]:focus{outline:2px solid rgba(196,98,45,.45);outline-offset:6px}.sheet-wrap{flex:0 1 auto;align-self:flex-start;max-width:100%;max-height:100%;overflow:auto;background:#fff;box-shadow:0 18px 50px #281e0f1f}.truncate-note{position:sticky;left:0;margin:0;padding:8px 12px;background:#fff6e8;color:#6f4b2d;font-size:12px}.sheet{border-collapse:separate;border-spacing:0}.sheet th,.sheet td{border-right:1px solid #eadfce;border-bottom:1px solid #eadfce;min-width:96px;height:30px;padding:0 8px;background:#fff;font-size:13px;font-weight:450;text-align:left;white-space:nowrap}.sheet th{position:sticky;top:0;z-index:2;min-width:42px;background:#f6f3ec;color:var(--muted);font-weight:700;text-align:center}.sheet tbody th{left:0;z-index:1}.sheet thead th:first-child{left:0;z-index:3}.sheet td.selected{outline:2px solid var(--accent);outline-offset:-2px;background:#fffaf3}.cell-input{width:100%;height:28px;border:0;padding:0;background:transparent;color:inherit;font-size:13px}.cell-input:focus-visible{outline:none}.sheet .num{display:block;text-align:right}.slide-scaler{flex:none;box-shadow:0 18px 50px #281e0f29}.slide-frame{position:relative;overflow:hidden;box-shadow:none}.ppt-shape{position:absolute;display:flex;flex-direction:column}.ppt-text{width:100%;height:100%;overflow:hidden;white-space:pre-wrap;word-break:break-word;line-height:1.15;font-family:Calibri,Segoe UI,Figtree,sans-serif;outline:none}.slide-frame.is-editing .ppt-shape.is-selected{box-shadow:inset 0 0 0 2px var(--accent)}.ppt-image{position:absolute;margin:0;padding:0;border:0;background:transparent;overflow:hidden;cursor:default}.ppt-image img{width:100%;height:100%;object-fit:fill;pointer-events:none;display:block}.slide-frame.is-editing .ppt-image{cursor:pointer}.slide-frame.is-editing .ppt-image.is-selected{box-shadow:inset 0 0 0 2px var(--accent)}.image-preview{width:100%;max-height:140px;object-fit:contain;border-radius:8px;border:1px solid var(--line);background:#fff}.field input[type=file]{width:100%;font-size:13px}.file-input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.open-veil{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;display:grid;place-items:center;padding:24px;background:#1c19156b}.open-card{width:min(420px,100%);padding:20px 20px 18px;border-radius:16px;background:#fffcf7;box-shadow:0 24px 60px #00000038}.open-name{margin:4px 0 0;font-family:Fraunces,Georgia,serif;font-size:22px;font-weight:560;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.open-meta,.open-hint,.open-percent{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.open-percent{margin-top:10px;font-weight:700;color:var(--ink)}.open-track{margin-top:14px;height:8px;border-radius:999px;background:#e8dfd2;overflow:hidden}.open-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#c4622d,#e7a56b);transition:width .18s ease}.dropveil{position:fixed;top:12px;right:12px;bottom:12px;left:12px;z-index:20;display:grid;place-items:center;align-content:center;gap:6px;border:2px dashed #e7d3c4;border-radius:18px;background:#1c1915b8;color:#f3efe6;text-align:center}.dropveil strong{background:transparent;box-shadow:none;font-family:Fraunces,Georgia,serif;font-size:40px;font-weight:560}.dropveil p{margin:0;color:#e7d3c4}.banner{position:fixed;z-index:30;top:68px;left:50%;transform:translate(-50%);width:min(560px,calc(100% - 32px));display:flex;gap:12px;align-items:flex-start;padding:12px 12px 12px 14px;background:#3a2420;color:#fff6ef;box-shadow:0 12px 40px #0003}.banner span{flex:1;font-size:14px;line-height:1.45}.banner button{border:0;background:transparent;color:#f3c9a0;font-weight:700}@media(max-width:920px){.app{grid-template-columns:minmax(0,1fr);grid-template-rows:56px minmax(0,1fr)}.app.rail-left-open{grid-template-rows:56px 148px minmax(0,1fr)}.app.rail-left-open.rail-right-open{grid-template-rows:56px 148px minmax(0,1fr) auto}.app.rail-right-open:not(.rail-left-open){grid-template-rows:56px minmax(0,1fr) auto}.page-rail,.stage,.tool-rail{grid-column:1}.app.rail-left-open .page-rail{grid-row:2;border-right:0;border-bottom:1px solid #ddd4c6}.app.rail-left-open .stage{grid-row:3}.app.rail-left-open.rail-right-open .tool-rail{grid-row:4;max-height:280px;border-left:0;border-top:1px solid #ddd4c6}.app.rail-right-open:not(.rail-left-open) .stage{grid-row:2}.app.rail-right-open:not(.rail-left-open) .tool-rail{grid-row:3;max-height:280px;border-left:0;border-top:1px solid #ddd4c6}.app:not(.rail-left-open) .stage{grid-row:2}.page-list{flex-direction:row}.page-card{width:148px;flex:none}.doc-name{max-width:120px}.pager-hint{display:none}}
