: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-collapsed{grid-template-columns:44px minmax(0,1fr)}.app.rail-left-collapsed.rail-right-open{grid-template-columns:44px minmax(0,1fr) 248px}.app.rail-left-collapsed.rail-right-collapsed{grid-template-columns:44px minmax(0,1fr) 44px}.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) 248px}.app.rail-left-open.rail-right-collapsed{grid-template-columns:248px minmax(0,1fr) 44px}.app.rail-right-open:not(.rail-left-open):not(.rail-left-collapsed){grid-template-columns:minmax(0,1fr) 248px}.app.rail-right-collapsed:not(.rail-left-open):not(.rail-left-collapsed){grid-template-columns:minmax(0,1fr) 44px}.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.mode-toggle{min-width:52px}.bar-btn.mode-toggle.is-edit{background:var(--accent);color:#fff8f3;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{border-left:1px solid #ddd4c6}.app.rail-left-collapsed .stage{grid-column:2;grid-row:2}.app.rail-left-collapsed.rail-right-open .stage{grid-column:2}.app.rail-left-collapsed.rail-right-open .tool-rail{grid-column:3;grid-row:2}.app.rail-left-collapsed.rail-right-collapsed .stage{grid-column:2;grid-row:2}.app.rail-left-collapsed.rail-right-collapsed .tool-rail{grid-column:3;grid-row:2}.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;grid-row:2}.app.rail-left-open.rail-right-collapsed .stage{grid-column:2;grid-row:2}.app.rail-left-open.rail-right-collapsed .tool-rail{grid-column:3;grid-row:2}.app.rail-right-open:not(.rail-left-open):not(.rail-left-collapsed) .stage{grid-column:1;grid-row:2}.app.rail-right-open:not(.rail-left-open):not(.rail-left-collapsed) .tool-rail{grid-column:2;grid-row:2}.app.rail-right-collapsed:not(.rail-left-open):not(.rail-left-collapsed) .stage{grid-column:1;grid-row:2}.app.rail-right-collapsed:not(.rail-left-open):not(.rail-left-collapsed) .tool-rail{grid-column:2;grid-row:2}.tool-rail.is-collapsed{align-items:center;padding:10px 4px;gap:10px}.tool-rail.is-expanded .rail-head h2{margin:0;font-family:Fraunces,Georgia,serif;font-weight:560;font-size:20px}.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}.page-rail.is-collapsed{align-items:center;padding:10px 4px;gap:10px}.rail-expand{flex:none;width:32px;height:32px;border:1px solid #ddd4c6;border-radius:8px;background:#fff;color:var(--ink);font-size:20px;line-height:1}.rail-expand:hover{border-color:#cfc4b6;background:#fffefb}.rail-collapsed-label{flex:1;writing-mode:vertical-rl;transform:rotate(180deg);font-family:Fraunces,Georgia,serif;font-size:13px;font-weight:600;color:var(--muted);text-align:center;-webkit-user-select:none;user-select:none}.rail-collapsed-meta{flex:none;font-size:10px;font-weight:700;color:var(--accent);writing-mode:vertical-rl;transform:rotate(180deg)}.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,.thumb.sheet 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,.tool-actions{display:flex;flex-wrap:wrap;gap:6px}.tool-actions .solid-btn{flex:1 1 calc(50% - 6px);min-width:120px;height:34px;border-radius:8px;font-size:12px;font-weight:650}.sheet-find-btn{width:100%;margin-top:8px;height:34px;border-radius:8px;font-weight:650}.ico-btn{width:30px;height:30px;padding:0;display:grid;place-items:center;border:1px solid #e0d8cc;border-radius:6px;background:#fff;color:#1c1915}.ico-btn svg{width:16px;height:16px;display:block}.ico-btn.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:#fffaf6}.ico-btn:disabled{opacity:.35;cursor:default}.ico-btn:not(:disabled):hover{border-color:#cfc4b6}.sheet-tool-bar{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:8px}.sheet-tool-divider{width:1px;height:22px;margin:0 2px;background:#ddd4c6}.tool-panel-compact .tool-body{padding:8px 10px 10px}.tool-panel-compact .tool-note{padding:8px 10px 10px;font-size:11px;line-height:1.35}.field-compact{margin-top:4px}.field-compact span{margin-bottom:4px;font-size:10px}.field-compact textarea{min-height:52px;font-size:12px;padding:6px 8px}.field-compact select{height:30px;font-size:12px}.sheet-find-row{display:flex;gap:4px;align-items:center;margin-top:4px}.sheet-find-field{flex:1;min-width:0;margin:0}.sheet-find-field input{width:100%;height:30px;border:1px solid #e0d8cc;border-radius:6px;padding:0 8px;font-size:12px;background:#fff}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.tool-rail.is-expanded .rail-head{padding:10px 10px 6px}.tool-rail.is-expanded .rail-head h2{font-size:16px}.field input[type=text]{height:34px;border:1px solid #e0d8cc;border-radius:8px;padding:0 10px;background:#fff;color:var(--ink)}.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}.swatch-clear{background-color:#fff;background-image:linear-gradient(45deg,#cfc6ba 25%,transparent 25%),linear-gradient(-45deg,#cfc6ba 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#cfc6ba 75%),linear-gradient(-45deg,transparent 75%,#cfc6ba 75%);background-size:10px 10px;background-position:0 0,0 5px,5px -5px,-5px 0}.field{display:flex;flex-direction:column}.field textarea,.field input[type=text],.field select,.field input[type=range]{width:100%}.field select{height:34px;border:1px solid #e0d8cc;border-radius:8px;padding:0 8px;background:#fff;color:var(--ink)}.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;box-sizing:border-box;display:flex;flex-direction:column;min-width:72px;min-height:48px;padding:4px 8px 8px;border-radius:3px 10px 10px;box-shadow:0 8px 18px #281e0f29;color:#2a241c;font-size:13px;line-height:1.35;z-index:2}.note-grip{flex:none;height:10px;margin:0 -4px 4px;border:0;border-radius:3px 8px 0 0;background:transparent;cursor:grab;touch-action:none}.note-grip:active{cursor:grabbing}.note-text{flex:1;min-height:0;overflow:auto;white-space:pre-wrap;word-break:break-word;outline:none;cursor:text}.note-resize{position:absolute;right:0;bottom:0;width:14px;height:14px;border:0;padding:0;background:linear-gradient(135deg,transparent 50%,rgba(40,30,15,.55) 50%);cursor:nwse-resize;touch-action:none}.note.is-selected{outline:2px solid #1c1915}.note.is-ink{color:#f6f3ee}.note.is-ink.is-selected{outline-color:#f3efe6}.note.is-ink .note-resize{background:linear-gradient(135deg,transparent 50%,rgba(243,239,230,.9) 50%)}.note.is-clear{box-shadow:none}.note.is-clear.is-selected{outline-style:dashed}.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}.stage-scroll.fill:has(.excel-workbook){padding:0;background:#e6e6e6}.excel-workbook{flex:1;min-height:0;display:flex;flex-direction:column;width:100%;font-family:Calibri,Segoe UI,Candara,sans-serif}.excel-formula-bar{flex:none;display:flex;align-items:stretch;height:28px;background:#fff;border-bottom:1px solid #d4d4d4}.excel-quick-ops{flex:none;display:flex;align-items:center;gap:2px;padding:0 4px;border-right:1px solid #d4d4d4;background:#f9f9f9}.excel-icon-btn{width:26px;height:24px;border:1px solid #d4d4d4;border-radius:4px;background:#fff;color:#333;font-size:14px;line-height:1;padding:0}.excel-icon-btn:disabled{opacity:.35}.excel-icon-btn:not(:disabled):hover{border-color:#217346;color:#217346}.excel-name-box{flex:none;width:108px;max-width:140px;padding:0 6px;display:grid;place-items:center;border-right:1px solid #d4d4d4;font-family:Consolas,Segoe UI,monospace;font-size:11px;font-weight:600;color:#333;background:#f9f9f9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.excel-fx{flex:none;width:28px;display:grid;place-items:center;border-right:1px solid #d4d4d4;font-size:11px;font-style:italic;color:#6b6b6b;background:#f9f9f9}.excel-formula-input{flex:1;min-width:0;border:0;padding:0 10px;font-family:inherit;font-size:11px;line-height:28px;color:#000;background:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.excel-formula-input.is-readonly{display:flex;align-items:center}.excel-formula-input:focus-visible{outline:none;box-shadow:inset 0 0 0 1px #217346}.sheet-wrap{position:relative;flex:1;min-height:0;align-self:stretch;max-width:100%;overflow:auto;background:#e6e6e6;border:0;box-shadow:none}.sheet-sel-frame{position:absolute;pointer-events:none;z-index:4;box-sizing:border-box;outline:2px solid #217346;outline-offset:-2px}.sheet-sel-edge{position:absolute;pointer-events:auto;z-index:1}.sheet-sel-edge.edge-top{top:-3px;left:0;right:0;height:6px;cursor:move}.sheet-sel-edge.edge-bottom{bottom:-3px;left:0;right:0;height:6px;cursor:move}.sheet-sel-edge.edge-left{left:-3px;top:0;bottom:0;width:6px;cursor:move}.sheet-sel-edge.edge-right{right:-3px;top:0;bottom:0;width:6px;cursor:move}.sheet-sel-move-grip{position:absolute;right:-4px;bottom:-4px;width:10px;height:10px;padding:0;border:1px solid #217346;background:#217346;border-radius:1px;cursor:move;pointer-events:auto;z-index:2}.sheet-sel-preview{position:absolute;pointer-events:none;z-index:3;box-sizing:border-box;border:2px dashed #217346;background:#2173461f}body.sheet-is-moving{cursor:move;-webkit-user-select:none;user-select:none}body.sheet-is-moving .sheet-sel-frame{opacity:.35}body.sheet-is-moving .sheet-sel-edge,body.sheet-is-moving .sheet-sel-move-grip{pointer-events:none}.sheet-ctx{position:fixed;z-index:10000;min-width:216px;max-width:min(320px,calc(100vw - 16px));background:#fff;border:1px solid #c8c8c8;border-radius:8px;box-shadow:0 10px 32px #00000029,0 2px 6px #00000014;padding:0;font-size:12px;color:#1a1a1a}.sheet-ctx-target{display:flex;flex-direction:column;gap:2px;padding:8px 14px 6px;border-bottom:1px solid #e8e8e8;background:#f5faf7}.sheet-ctx-range{font-size:12px;font-weight:600;color:#185a3a}.sheet-ctx-target-meta{font-size:11px;color:#555;line-height:1.35}.sheet-ctx-mini{display:flex;flex-wrap:wrap;align-items:center;gap:2px;padding:6px 8px;border-bottom:1px solid #e8e8e8;background:#fafafa;border-radius:8px 8px 0 0}.sheet-ctx-mini .ico-btn{width:28px;height:28px}.sheet-ctx-mini-sep{width:1px;height:20px;margin:0 4px;background:#dcdcdc}.sheet-ctx-list{display:flex;flex-direction:column;padding:4px 0}.sheet-ctx-item{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;margin:0;padding:7px 14px;border:0;background:transparent;font:inherit;color:inherit;text-align:left;cursor:pointer}.sheet-ctx-item:hover:not(:disabled){background:#e8f3ec}.sheet-ctx-item:disabled{opacity:.4;cursor:default}.sheet-ctx-kbd{font-family:inherit;font-size:11px;color:#666;font-weight:500}.sheet-ctx-sep{height:1px;margin:4px 10px;background:#e8e8e8}.sheet.excel-grid .sheet-col-head,.sheet.excel-grid .sheet-row-head{position:sticky}.sheet-resize-col{position:absolute;top:0;right:0;width:6px;height:100%;cursor:col-resize;z-index:3}.sheet-resize-row{position:absolute;left:0;bottom:0;width:100%;height:6px;cursor:row-resize;z-index:3}.sheet-move-hint{margin:0 0 8px;padding:6px 8px;border-radius:6px;background:#fff4ce;color:#5c4a1f;font-size:11px;line-height:1.35}.truncate-note{position:sticky;left:0;margin:0;padding:6px 10px;background:#fff4ce;color:#5c4a1f;font-size:11px;font-family:Figtree,Segoe UI,sans-serif}.sheet.excel-grid{border-collapse:separate;border-spacing:0}.sheet.excel-grid th,.sheet.excel-grid td{border-right:1px solid #d4d4d4;border-bottom:1px solid #d4d4d4;min-width:48px;max-width:420px;height:21px;padding:0 4px;background:#fff;font-size:11px;font-weight:400;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#000}.sheet.excel-grid .sheet-col-head{position:sticky;top:0;z-index:2;min-width:48px;height:20px;padding:0;background:#217346;color:#fff;font-size:11px;font-weight:600;text-align:center;border-color:#1a5c38;cursor:pointer;-webkit-user-select:none;user-select:none}.sheet.excel-grid .sheet-row-head{position:sticky;left:0;z-index:1;min-width:36px;width:36px;padding:0;background:#f0f0f0;color:#333;font-size:11px;font-weight:600;text-align:center;border-color:#d4d4d4;cursor:pointer;-webkit-user-select:none;user-select:none}.sheet.excel-grid .sheet-row-head.in-range{background:#d4eadc;color:#1a5c38}.sheet.excel-grid .sheet-col-head.in-range{background:#185a3a;box-shadow:inset 0 0 0 2px #b8e6c8;color:#fff}.sheet.excel-grid .sheet-corner{position:sticky;left:0;top:0;z-index:3;min-width:36px;width:36px;background:#f0f0f0;border-color:#d4d4d4}.sheet.excel-grid td.in-range{background:#e8f3ec;box-shadow:inset 0 0 0 1px #b8dcc8}.sheet.excel-grid td.selected,.sheet.excel-grid td.active-cell{outline:2px solid #217346;outline-offset:-2px;background:#fff;z-index:1}.sheet.excel-grid td.in-range.active-cell{background:#fff}.sheet-selection-banner{margin-bottom:8px;padding:8px 10px;border:1px solid #d4d4d4;border-radius:8px;background:#f3faf5}.sheet-selection-range{display:block;font-family:Consolas,Segoe UI,monospace;font-size:13px;font-weight:700;color:#1a5c38}.sheet-selection-meta{display:block;margin-top:2px;font-size:11px;color:var(--muted)}.cell-input{width:100%;height:19px;border:0;padding:0 2px;background:transparent;color:inherit;font:inherit;font-size:11px}.cell-input:focus-visible{outline:none}.sheet.excel-grid .num{display:block;text-align:right}.sheet.excel-grid .link{color:#0563c1;text-decoration:underline}.excel-tabstrip{flex:none;height:30px;display:flex;align-items:stretch;background:#e6e6e6;border-top:1px solid #c7c7c7;overflow:hidden}.excel-tabstrip-scroll{display:flex;align-items:flex-end;gap:2px;padding:0 4px;overflow-x:auto;min-width:0}.excel-tab{flex:none;height:26px;padding:0 14px;border:1px solid transparent;border-bottom:0;border-radius:4px 4px 0 0;background:#d8d8d8;color:#333;font-family:inherit;font-size:11px;font-weight:400}.excel-tab:hover{background:#ececec}.excel-tab.active{background:#fff;border-color:#c7c7c7;color:#217346;font-weight:600}.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{box-sizing:border-box;width:100%;height:100%;overflow:hidden;white-space:pre-wrap;word-break:break-word;padding:4px 8px;line-height:1.2;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):not(.rail-left-collapsed){grid-template-rows:56px minmax(0,1fr) auto}.app.rail-left-collapsed{grid-template-columns:44px minmax(0,1fr);grid-template-rows:56px minmax(0,1fr)}.app.rail-left-collapsed.rail-right-open{grid-template-columns:44px minmax(0,1fr);grid-template-rows:56px minmax(0,1fr) auto}.app.rail-left-collapsed.rail-right-collapsed{grid-template-columns:44px minmax(0,1fr) 44px;grid-template-rows:56px minmax(0,1fr)}.app.rail-left-open.rail-right-collapsed{grid-template-rows:56px 148px minmax(0,1fr)}.app.rail-left-open.rail-sheets.rail-right-collapsed{grid-template-columns:168px minmax(0,1fr) 44px;grid-template-rows:56px minmax(0,1fr)}.app.rail-left-collapsed .page-rail{grid-column:1;grid-row:2;border-right:1px solid #ddd4c6;border-bottom:0}.app.rail-left-collapsed .stage{grid-column:2;grid-row:2}.app.rail-left-collapsed.rail-right-open .tool-rail{grid-column:1 / -1;grid-row:3;max-height:280px;border-left:0;border-top:1px solid #ddd4c6}.app.rail-left-collapsed.rail-right-collapsed .tool-rail,.app.rail-left-open.rail-sheets.rail-right-collapsed .tool-rail{grid-column:3;grid-row:2;max-height:none;border-left:1px solid #ddd4c6;border-top:0}.app.rail-left-open.rail-sheets.rail-right-collapsed .stage{grid-column:2;grid-row:2}.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):not(.rail-left-collapsed) .stage{grid-row:2}.app.rail-right-open:not(.rail-left-open):not(.rail-left-collapsed) .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}.app.rail-left-open.rail-sheets{grid-template-columns:168px minmax(0,1fr);grid-template-rows:56px minmax(0,1fr)}.app.rail-left-open.rail-sheets.rail-right-open{grid-template-columns:168px minmax(0,1fr);grid-template-rows:56px minmax(0,1fr) auto}.app.rail-left-open.rail-sheets .page-rail{grid-column:1;grid-row:2;border-right:1px solid #ddd4c6;border-bottom:0}.app.rail-left-open.rail-sheets .stage{grid-column:2;grid-row:2}.app.rail-left-open.rail-sheets.rail-right-open .tool-rail{grid-column:1 / -1;grid-row:3}.app.rail-left-open.rail-sheets .page-list{flex-direction:column}.app.rail-left-open.rail-sheets .page-card{width:100%}.doc-name{max-width:120px}.pager-hint{display:none}}.legacy-doc{width:816px;max-width:100%;margin:0 auto;padding:48px 56px 64px;background:#fffef9;color:#1c1915;font-family:Georgia,Times New Roman,serif;font-size:12pt;line-height:1.5;box-shadow:0 1px #00000014}.legacy-doc-badge,.legacy-ppt-badge{margin:0 0 20px;padding:8px 10px;border-radius:6px;background:#f5f0e6;color:#5c4a1f;font-family:system-ui,sans-serif;font-size:11px;line-height:1.4}.legacy-doc-p{margin:0 0 .75em;white-space:pre-wrap}.legacy-doc-p.align-center{text-align:center}.legacy-doc-p.align-end{text-align:right}.legacy-doc-p.align-justify{text-align:justify}.legacy-ppt-slide{position:relative;margin:0 auto;background:#fff;border:1px solid #d8d0c4;box-shadow:0 10px 28px #0000001f;overflow:hidden}.legacy-ppt-text{margin:16px 20px;font-family:Calibri,Arial,sans-serif;font-size:18px;line-height:1.35;white-space:pre-wrap}.legacy-ppt-shape{padding:4px 6px;font-family:Calibri,Arial,sans-serif;font-size:14px;line-height:1.3}.legacy-ppt-shape-text{margin:0;white-space:pre-wrap}.legacy-ppt-empty{margin:2rem;font-family:system-ui,sans-serif;color:#5c4a1f}
