:root{--font-ui: "Yu Gothic UI", "Yu Gothic", "Meiryo UI", sans-serif;--sheet-font-biz-ud: "BIZ UDゴシック", "BIZ UDGothic", "ＭＳ ゴシック", "MS Gothic", monospace;--sheet-font-ms: "ＭＳ ゴシック", "MS Gothic", monospace;--sheet-font-ms-ui: "MS UI Gothic", "ＭＳ ゴシック", "MS Gothic", monospace;--font-sheet: var(--sheet-font-biz-ud);--bg: #f4f4f6;--panel: #ececef;--panel-hover: #e2e2e6;--panel-active: #d0d0d6;--border: #c6c6cc;--border-subtle: #e6e6ea;--text: #1c1c22;--text-dim: #5a5a66;--text-muted: #8a8a95;--surface: #ffffff;--field-bg: #ffffff;--cell-bg: #ffffff;--grid-line: #e3e3e8;--row-alt: #f8f8fa;--selected-row: #eaf1fb;--sticky-bg: #fdf6df;--info-soft: #fbfbe8;--accent: #2456a6;--accent-soft: #d6e2f5;--accent-contrast: #ffffff;--accent-contrast-dim: #e5edff;--range-fill: rgba(37, 99, 235, .14);--edited: #fff3c4;--edited-border: #e0b400;--danger: #b3261e;--warning: #d97706;--warning-soft: #fff6e0;--warning-border: #e0c470;--success: #16a34a;--formula-text: #14532d;--formula-marker: #2f855a;--void-a: #fafafa;--void-b: #f1f1f4;--find-highlight: rgba(36, 86, 166, .18);--scrim: rgba(20, 20, 28, .35);--scrim-light: rgba(255, 255, 255, .55);--tooltip-bg: #2b2b33;--tooltip-text: #ffffff;--toast-warn-bg: #7a5b00;--toast-error-bg: #8f1d17;--shadow: rgba(0, 0, 0, .15);--shadow-strong: rgba(0, 0, 0, .3);--fref-1: #2563eb;--fref-2: #16a34a;--fref-3: #d97706;--fref-4: #9333ea;color-scheme:light}:root[data-theme=dark]{--bg: #17171b;--panel: #24242b;--panel-hover: #32323b;--panel-active: #3d3d47;--border: #3a3a43;--border-subtle: #2c2c33;--text: #e7e7ec;--text-dim: #a6a6b3;--text-muted: #74747f;--surface: #212128;--field-bg: #1b1b21;--cell-bg: #1c1c22;--grid-line: #33333b;--row-alt: #202027;--selected-row: #1f2c44;--sticky-bg: #2f2a1a;--info-soft: #24240f;--accent: #5b8fe0;--accent-soft: #26364f;--accent-contrast: #0f141d;--accent-contrast-dim: #0f141d;--range-fill: rgba(91, 143, 224, .22);--edited: #45391a;--edited-border: #cfa93a;--danger: #f2726a;--warning: #f0a83a;--warning-soft: #382c12;--warning-border: #6a5520;--success: #4ade80;--formula-text: #86e0ac;--formula-marker: #4ade80;--void-a: #23232a;--void-b: #1a1a20;--find-highlight: rgba(120, 160, 230, .3);--scrim: rgba(0, 0, 0, .55);--scrim-light: rgba(0, 0, 0, .45);--tooltip-bg: #3a3a45;--tooltip-text: #f2f2f6;--toast-warn-bg: #6a5214;--toast-error-bg: #7c241d;--shadow: rgba(0, 0, 0, .5);--shadow-strong: rgba(0, 0, 0, .72);--fref-1: #6ea8ff;--fref-2: #4ade80;--fref-3: #fbbf24;--fref-4: #c084fc;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;margin:0}body{font-family:var(--font-ui);font-size:13px;color:var(--text);background:var(--bg);overflow:hidden}#app{display:flex;flex-direction:column;height:100vh;height:100dvh;touch-action:manipulation}button{font:inherit;color:inherit}.menu-bar{display:flex;align-items:center;background:var(--panel);border-bottom:1px solid var(--border);padding:0 4px;user-select:none}.menu-bar .app-icon{width:20px;height:20px;flex:none;margin-left:6px;border-radius:4px;display:block}.menu-bar .app-name{font-weight:600;padding:4px 10px 4px 6px;color:var(--text-dim)}.menu-bar-toggle{display:none;border:none;background:none;padding:6px 10px;border-radius:3px;cursor:default;font-size:16px;line-height:1}.menu-bar-toggle:hover,.menu-bar-toggle[aria-expanded=true]{background:var(--accent-soft)}.menu-row{display:flex;align-items:center}.menu{position:relative}.menu>button{border:none;background:none;padding:6px 10px;cursor:default;border-radius:3px}.menu>button:hover,.menu>button[aria-expanded=true]{background:var(--accent-soft)}.menu-list{position:fixed;top:0;left:0;min-width:230px;background:var(--surface);border:1px solid var(--border);border-radius:4px;box-shadow:0 4px 14px var(--shadow);padding:4px 0;z-index:50}.menu-list.submenu{z-index:60}.submenu-arrow:after{content:"▸";color:var(--text-dim)}[dir=rtl] .submenu-arrow:after{content:"◂"}.menu-item.has-submenu[aria-expanded=true]{background:var(--accent-soft)}.menu-item{display:flex;width:100%;align-items:center;gap:8px;border:none;background:none;padding:6px 14px;text-align:left;cursor:default}.menu-item:hover:not(:disabled),.menu-item:focus-visible{background:var(--accent-soft);outline:none}.menu-item:disabled{color:var(--text-muted)}.menu-item .label{flex:1}.menu-item .shortcut{color:var(--text-dim);font-size:11px}.menu-item .check{width:1em}.menu-separator{border:none;border-top:1px solid var(--border);margin:4px 0}.menu-heading{padding:4px 14px 2px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-dim);cursor:default}.tab-bar{display:flex;align-items:flex-end;background:var(--panel);border-bottom:1px solid var(--border);padding:4px 6px 0;gap:2px;overflow-x:auto;min-height:30px}.tab{display:flex;align-items:center;gap:6px;border:1px solid var(--border);border-bottom:none;border-radius:5px 5px 0 0;background:var(--panel-hover);padding:4px 6px 4px 12px;max-width:240px;cursor:default}.tab[aria-selected=true]{background:var(--surface);font-weight:600}.tab .tab-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab .dirty-mark{color:var(--accent);font-weight:700}.sheet-bar{display:flex;align-items:center;flex:none;background:var(--panel);border-top:1px solid var(--border);min-height:28px}.sheet-bar[hidden]{display:none}.sheet-strip{display:flex;align-items:stretch;gap:2px;padding:3px 6px;overflow-x:auto;width:100%}.sheet-tab{display:flex;align-items:center;border:1px solid var(--border);border-top:none;border-radius:0 0 5px 5px;background:var(--panel-hover);padding:3px 10px;max-width:200px;cursor:default;white-space:nowrap}.sheet-tab.active{background:var(--surface);font-weight:600;border-bottom:2px solid var(--accent)}.sheet-tab .sheet-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sheet-tab:focus-visible,.sheet-add:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.sheet-tab.dragging{opacity:.5}.sheet-tab.drop-before{box-shadow:inset 2px 0 0 var(--accent)}.sheet-tab.drop-after{box-shadow:inset -2px 0 0 var(--accent)}.sheet-add{border:1px solid var(--border);border-top:none;border-radius:0 0 5px 5px;background:var(--panel-hover);color:inherit;padding:3px 10px;cursor:pointer;font:inherit;line-height:1}.sheet-add:disabled{opacity:.5;cursor:default}.sheet-note{padding:3px 8px;opacity:.7;font-size:.9em}.sheet-name-input{width:100%;box-sizing:border-box}.dialog-error{color:var(--danger, #c0392b);min-height:1.2em;margin:4px 0 0}.tab .tab-close{border:none;background:none;border-radius:3px;padding:0 5px;font-size:13px;line-height:1.3}.tab .tab-close:hover{background:var(--panel-active)}.find-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:5px 8px;background:var(--info-soft);border-bottom:1px solid var(--border)}.find-bar[hidden]{display:none}.find-bar input[type=text]{font:inherit;padding:3px 6px;border:1px solid var(--border);border-radius:3px;width:200px;background:var(--field-bg);color:var(--text)}.find-bar label{display:inline-flex;align-items:center;gap:3px}.find-bar button{border:1px solid var(--border);background:var(--surface);border-radius:3px;padding:3px 8px}.find-bar button:disabled{color:var(--text-muted)}.find-count{color:var(--text-dim);min-width:130px}.find-error{color:var(--danger);width:100%}.find-error:empty{display:none}.formula-bar{display:flex;align-items:stretch;gap:6px;padding:4px 8px;background:var(--panel);border-bottom:1px solid var(--border)}.formula-bar .cell-ref{min-width:90px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:3px;background:var(--field-bg);font-family:var(--font-sheet);font-size:12px}.formula-bar .formula-field{position:relative;flex:1;display:flex}.formula-bar textarea{flex:1;font:inherit;font-family:var(--font-sheet);font-size:calc(13px * var(--sheet-zoom, 1));font-style:normal;border:1px solid var(--border);border-radius:3px;padding:3px 6px;resize:vertical;min-height:calc(26px * var(--sheet-zoom, 1));height:calc(26px * var(--sheet-zoom, 1));background:var(--field-bg);color:var(--text)}.formula-autocomplete{position:absolute;top:100%;left:0;z-index:30;margin:2px 0 0;padding:2px;list-style:none;min-width:260px;max-height:240px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:4px;box-shadow:0 4px 12px var(--shadow)}.formula-autocomplete.floating{position:fixed;top:0;left:0;z-index:60}.formula-autocomplete[hidden]{display:none}.formula-autocomplete .ac-item{display:flex;flex-direction:column;gap:1px;padding:4px 8px;border-radius:3px;cursor:pointer}.formula-autocomplete .ac-item.active{background:var(--accent);color:var(--accent-contrast)}.formula-autocomplete .ac-sig{font-family:var(--font-sheet);font-size:12px}.formula-autocomplete .ac-desc{font-size:11px;color:var(--text-dim)}.formula-autocomplete .ac-item.active .ac-desc{color:var(--accent-contrast-dim)}.grid-container{flex:1;overflow:auto;background:var(--cell-bg);position:relative;outline-offset:-2px}.grid-empty{padding:40px;color:var(--text-dim);font-size:14px;text-align:center}.vgrid-canvas{position:relative;font-family:var(--font-sheet);font-size:calc(12px * var(--sheet-zoom, 1))}.vgrid-header{position:sticky;top:0;z-index:5;display:flex}.vgrid-stickyrow{position:sticky;z-index:4;display:flex;border-bottom:2px solid var(--accent)}.vgrid-stickyrow .vcell{background:var(--sticky-bg)}.vgrid-stickyrow[hidden]{display:none}.vgrid-rows{position:relative}.vgrid-row{position:absolute;left:0;display:flex}:root{--sheet-zoom: 1;--grid-row-height: 26px;--grid-wrap-line: 18px}.vcell{flex:none;border-right:1px solid var(--grid-line);border-bottom:1px solid var(--grid-line);padding:0 calc(8px * var(--sheet-zoom, 1));line-height:calc(var(--grid-row-height) - 1px);overflow:hidden;text-overflow:ellipsis;white-space:pre;background:var(--cell-bg);position:relative}.vgrid-measure{position:absolute;visibility:hidden;top:0;left:0;height:0;border:0;pointer-events:none}.vgrid-row.wrapped .vcell[data-col]{display:flex;align-items:center;white-space:pre-wrap;overflow-wrap:break-word;word-break:normal;text-overflow:clip;line-height:var(--grid-wrap-line)}.vgrid-row.wrapped .vcell.vrowhead{display:flex;align-items:center;justify-content:flex-end}.vspacer{flex:none;border:none;padding:0}.col-resize-handle{position:absolute;top:0;right:-3px;width:7px;height:100%;cursor:col-resize;z-index:6;touch-action:none}.col-resize-handle:hover{background:var(--accent);opacity:.45}.fill-handle{position:absolute;right:0;bottom:0;width:calc(8px * var(--sheet-zoom, 1));height:calc(8px * var(--sheet-zoom, 1));background:var(--accent);border:1px solid var(--cell-bg);cursor:crosshair;z-index:7;touch-action:none}.vcell.fill-target{outline:1px dashed var(--accent);outline-offset:-1px}.move-handle{position:absolute;left:0;top:0;width:calc(10px * var(--sheet-zoom, 1));height:calc(10px * var(--sheet-zoom, 1));background:var(--accent);border:1px solid var(--cell-bg);border-radius:2px;cursor:move;z-index:7;touch-action:none}.grid-container.moving-range{cursor:move}.grid-container.moving-range.move-invalid{cursor:not-allowed}.vcell.move-source{outline:1px dashed var(--text-dim);outline-offset:-1px;opacity:.7}.vcell.move-target{outline:2px solid var(--accent);outline-offset:-2px;background:var(--accent-soft)}.vcell.move-target-invalid{outline:2px dashed var(--danger);outline-offset:-2px;background:repeating-linear-gradient(45deg,transparent,transparent 4px,var(--danger-soft, rgba(200, 0, 0, .12)) 4px,var(--danger-soft, rgba(200, 0, 0, .12)) 8px)}.vgrid-row.alt .vcell{background:var(--row-alt)}.vgrid-row.selected-row .vcell,.vgrid-stickyrow.selected-row .vcell{background:var(--selected-row)}.vcell.vhead,.vcell.vrowhead{background:var(--panel)!important;color:var(--text-dim);font-weight:600;text-align:center;user-select:none}.vcell.vrowhead{position:sticky;left:0;z-index:2;text-align:right}.vcell.vrowhead.pinned{color:var(--accent)}.filter-indicator{position:absolute;top:50%;right:calc(6px * var(--sheet-zoom, 1));transform:translateY(-50%);z-index:3;display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 2px;font-size:9px;line-height:1;color:var(--text-dim);background:var(--field-bg);border:1px solid var(--border);border-radius:3px;cursor:pointer}.filter-indicator:hover{color:var(--accent);border-color:var(--accent)}.filter-indicator.active{color:var(--accent-contrast);background:var(--accent);border-color:var(--accent)}.filter-indicator:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.status-filter,.status-sort{color:var(--accent);font-weight:600}.sort-key-row{display:flex;gap:6px;margin-bottom:6px}.sort-key-row select{flex:1 1 auto;min-width:0}.dialog-subhead{margin:12px 0 4px;font-size:13px;font-weight:600}.filter-condition-row{display:flex;gap:6px;margin-bottom:6px}.filter-condition-row select{flex:0 0 auto}.filter-condition-row input{flex:1 1 auto;min-width:0}.filter-add{margin:2px 0 4px}.filter-value-list{max-height:180px;overflow-y:auto;border:1px solid var(--border);border-radius:3px;padding:4px 6px;margin-top:4px}.filter-value{display:flex;align-items:center;gap:6px;padding:1px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vcell.vcorner{position:sticky;left:0;z-index:6;border-top:0;border-left:0;text-align:center;cursor:pointer}.vcell.vcorner:hover{background:var(--accent-soft)!important;color:var(--accent)}.grid-container.sel-all .vcell.vcorner{background:var(--accent)!important;color:var(--accent-contrast);box-shadow:inset 0 0 0 2px var(--accent)}.vcell.in-range,.vgrid-row.alt .vcell.in-range,.vgrid-row.selected-row .vcell.in-range{background:var(--accent-soft)}.vcell.selected{outline:2px solid var(--accent);outline-offset:-2px}.vcell.anchor{outline:2px dashed var(--accent);outline-offset:-2px}.vcell.vrowhead.hdr-sel,.vcell.vhead.hdr-sel{background:var(--accent-soft)!important;color:var(--accent)}.grid-container.sel-rows .vcell.vrowhead.hdr-sel,.grid-container.sel-cols .vcell.vhead.hdr-sel{box-shadow:inset 0 0 0 2px var(--accent)}.vcell.edited{background:var(--edited)!important;box-shadow:inset 2px 0 0 var(--edited-border)}.vcell.malformed{text-decoration:underline wavy var(--danger);text-underline-offset:3px}.vcell.formula{color:var(--formula-text);font-style:normal}.vcell.formula:after{content:"";position:absolute;top:0;right:0;border-top:5px solid var(--formula-marker);border-left:5px solid transparent;opacity:.8;pointer-events:none}.vcell.cell-error{color:var(--danger);font-weight:700;font-style:normal}.vcell.cell-error:after{border-top-color:var(--danger)}.vcell.void{background:repeating-linear-gradient(45deg,var(--void-a),var(--void-a) 6px,var(--void-b) 6px,var(--void-b) 12px)}.vgrid-canvas .grid-sink{position:absolute;left:0;top:0;width:1px;height:1px;margin:0;border:none;padding:0;font:inherit;background:transparent;color:transparent;caret-color:transparent;opacity:0;overflow:hidden;resize:none;outline:none;pointer-events:none;z-index:3}.vgrid-canvas .grid-sink.cell-editor{border:2px solid var(--accent);padding:1px 6px;color:var(--text);caret-color:auto;background:var(--field-bg);opacity:1;pointer-events:auto;z-index:4;resize:none;overflow:auto;white-space:pre-wrap;overflow-wrap:break-word;line-height:var(--grid-wrap-line)}.context-menu{position:fixed;top:0;left:0;background:var(--surface);border:1px solid var(--border);border-radius:4px;box-shadow:0 4px 14px var(--shadow);padding:4px 0;z-index:100;min-width:180px;max-width:min(320px,calc(100vw - 8px))}.context-menu.submenu{z-index:110}.context-menu .menu-item .label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-bar{display:flex;flex-wrap:wrap;align-items:center;gap:2px 14px;background:var(--panel);border-top:1px solid var(--border);padding:3px 10px;font-size:12px;color:var(--text-dim);min-height:24px}.status-bar .warn{color:var(--danger);font-weight:600}.status-bar .sel-stat{font-variant-numeric:tabular-nums}.status-bar .sel-stat.calculating{font-style:italic;opacity:.75}.status-bar .sel-stats{display:inline-flex;flex-wrap:wrap;gap:2px 14px}.status-bar button.status-problems{border:none;background:none;color:var(--danger);font-weight:600;text-decoration:underline;padding:0;cursor:pointer}dialog{border:1px solid var(--border);border-radius:6px;box-shadow:0 10px 32px var(--shadow-strong);padding:0;max-width:min(680px,92vw);max-height:86vh;font-size:13px;background:var(--surface);color:var(--text)}dialog::backdrop{background:var(--scrim)}.filter-popover{position:fixed;top:0;left:0;border:1px solid var(--border);border-radius:6px;box-shadow:0 10px 32px var(--shadow-strong);max-width:min(420px,calc(100vw - 8px));font-size:13px;background:var(--surface);color:var(--text);z-index:100}.dialog-title{margin:0;padding:12px 18px;font-size:14px;background:var(--panel);border-bottom:1px solid var(--border)}.dialog-body{padding:14px 18px;overflow:auto;max-height:55vh}.dialog-body p{margin:0 0 10px;line-height:1.5}.dialog-note{color:var(--text-dim);font-size:12px}.about-links{margin:0 0 10px;padding-left:20px;line-height:1.6}.dialog-link{color:var(--accent);text-decoration:underline}.dialog-link:hover{text-decoration:none}.dialog-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.dialog-warning{background:var(--warning-soft);border:1px solid var(--warning-border);border-radius:4px;padding:8px 10px;margin:0 0 10px;line-height:1.5}.dialog-buttons{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid var(--border);background:var(--panel)}.dialog-buttons button{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:4px;padding:6px 16px}.dialog-buttons button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.dialog-buttons button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}table.diag-table{border-collapse:collapse;width:100%;margin-bottom:10px}table.diag-table th,table.diag-table td{border:1px solid var(--border);padding:4px 8px;text-align:left;vertical-align:top}table.diag-table th{background:var(--panel)}.form-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}.form-row label:first-child{min-width:130px}.form-row select{font:inherit;padding:3px 6px;min-width:200px}.form-row input[type=number]{font:inherit;padding:3px 6px;width:8em}.form-unit{margin-left:6px;color:var(--text-dim)}.shortcut-table{border-collapse:collapse;width:100%}.shortcut-table td{padding:3px 8px;border-bottom:1px solid var(--border-subtle)}.shortcut-table td:first-child{font-family:var(--font-sheet);white-space:nowrap}.formula-help .formula-help-search{width:100%;font:inherit;padding:5px 8px;border:1px solid var(--border);border-radius:3px}.formula-help .help-section{margin-top:12px}.formula-help .help-section h3{margin:0 0 4px;font-size:13px}.formula-help .help-code,.formula-help .help-fn-table td:first-child code,.formula-help .help-fn-table td:last-child code{font-family:var(--font-sheet);font-style:normal;background:var(--panel);border-radius:3px;padding:0 4px}.formula-help .help-examples code{margin-right:2px}.formula-help .help-fn-group{margin-top:10px}.formula-help .help-fn-group:first-child{margin-top:0}.formula-help .help-fn-group h4{margin:0 0 4px;font-size:12px;font-weight:600}.formula-help .help-fn-table{border-collapse:collapse;width:100%}.formula-help .help-fn-table th,.formula-help .help-fn-table td{padding:4px 8px;border-bottom:1px solid var(--border-subtle);text-align:left;vertical-align:top}.formula-help .help-errors{margin:4px 0 0;padding-left:20px}.formula-help .help-errors li{margin:3px 0}.drop-overlay{position:fixed;inset:0;background:var(--find-highlight);border:4px dashed var(--accent);display:none;align-items:center;justify-content:center;z-index:200;pointer-events:none}.drop-overlay.active{display:flex}.drop-overlay .drop-message{background:var(--surface);border:1px solid var(--accent);border-radius:8px;padding:18px 30px;font-size:16px;color:var(--accent);box-shadow:0 8px 24px var(--shadow-strong)}.loading-overlay{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:var(--scrim-light);z-index:250;pointer-events:none}.loading-overlay[hidden]{display:none}.loading-overlay .loading-spinner{width:40px;height:40px;border:4px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:loading-spin .8s linear infinite}.loading-overlay .loading-progress{width:220px;height:8px;appearance:none;border:none;border-radius:4px;overflow:hidden}.loading-overlay .loading-progress::-webkit-progress-bar{background:var(--border);border-radius:4px}.loading-overlay .loading-progress::-webkit-progress-value{background:var(--accent);border-radius:4px;transition:width .15s ease-out}.loading-overlay .loading-progress::-moz-progress-bar{background:var(--accent);border-radius:4px}.loading-overlay .loading-progress[hidden]{display:none}.loading-overlay .loading-label{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:10px 20px;font-size:14px;color:var(--text);box-shadow:0 8px 24px var(--shadow)}@keyframes loading-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.loading-overlay .loading-spinner{animation:none}}.toasts{position:fixed;right:14px;bottom:38px;display:flex;flex-direction:column;gap:8px;z-index:300;max-width:380px}.toast{background:var(--tooltip-bg);color:var(--tooltip-text);border-radius:6px;padding:10px 14px;box-shadow:0 6px 18px var(--shadow-strong);line-height:1.45;overflow-wrap:anywhere}.toast.warn{background:var(--toast-warn-bg)}.toast.error{background:var(--toast-error-bg)}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@media(forced-colors:active){.vcell.selected,.vcell.anchor,:focus-visible{outline-color:Highlight}}@media(max-width:700px){.menu-bar{flex-wrap:wrap}.menu-bar-toggle{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;min-width:44px;min-height:44px;font-size:20px}.menu-row{display:none;flex-basis:100%;flex-direction:column;align-items:stretch}.menu-bar.mobile-open .menu-row{display:flex}.menu-row .menu>button{width:100%;text-align:left}.menu>button,.menu-item{padding:12px 14px;min-height:44px}.tab{padding:10px 10px 10px 14px}.tab .tab-close{padding:10px;min-width:36px;min-height:36px}.sheet-tab,.sheet-add{padding:11px 12px;min-height:40px}.dialog-buttons button{padding:10px 16px;min-height:44px}.find-bar button{padding:8px 12px;min-height:40px}.welcome-action{padding:12px 20px;min-height:44px}.dialog-body input[type=text],.dialog-body input[type=number],.dialog-body input[type=search],.dialog-body select{font-size:16px}.find-bar input[type=text]{font-size:16px;width:100%}.formula-bar textarea{font-size:max(16px,calc(13px * var(--sheet-zoom, 1)))}.vgrid-canvas .grid-sink.cell-editor{font-size:max(16px,calc(12px * var(--sheet-zoom, 1)))}.form-row{flex-wrap:wrap}.form-row label:first-child{min-width:100%}.form-row select,.form-row input[type=number]{width:100%;min-width:0}.filter-condition-row{flex-wrap:wrap}.filter-condition-row select,.filter-condition-row input{min-width:0;max-width:100%}.sort-key-row{flex-wrap:wrap}.sort-key-row select{min-width:0;max-width:100%}}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.vcell.fref-0{background-color:#2563eb24}.vcell.fref-1{background-color:#16a34a1f;background-image:repeating-linear-gradient(45deg,transparent 0 6px,rgba(22,163,74,.14) 6px 8px)}.vcell.fref-2{background-color:#d977061f;background-image:repeating-linear-gradient(-45deg,transparent 0 6px,rgba(217,119,6,.14) 6px 8px)}.vcell.fref-3{background-color:#9333ea1f;background-image:repeating-linear-gradient(0deg,transparent 0 6px,rgba(147,51,234,.14) 6px 8px)}.vcell.fref-0.fref-top{border-top:2px solid var(--fref-1)}.vcell.fref-0.fref-bottom{border-bottom:2px solid var(--fref-1)}.vcell.fref-0.fref-left{border-left:2px solid var(--fref-1)}.vcell.fref-0.fref-right{border-right:2px solid var(--fref-1)}.vcell.fref-1.fref-top{border-top:2px dashed var(--fref-2)}.vcell.fref-1.fref-bottom{border-bottom:2px dashed var(--fref-2)}.vcell.fref-1.fref-left{border-left:2px dashed var(--fref-2)}.vcell.fref-1.fref-right{border-right:2px dashed var(--fref-2)}.vcell.fref-2.fref-top{border-top:2px dotted var(--fref-3)}.vcell.fref-2.fref-bottom{border-bottom:2px dotted var(--fref-3)}.vcell.fref-2.fref-left{border-left:2px dotted var(--fref-3)}.vcell.fref-2.fref-right{border-right:2px dotted var(--fref-3)}.vcell.fref-3.fref-top{border-top:3px double var(--fref-4)}.vcell.fref-3.fref-bottom{border-bottom:3px double var(--fref-4)}.vcell.fref-3.fref-left{border-left:3px double var(--fref-4)}.vcell.fref-3.fref-right{border-right:3px double var(--fref-4)}.ref-indicator{position:fixed;z-index:60;background:var(--panel);border:1px solid var(--border);border-radius:4px;padding:3px 8px;font-size:12px;color:var(--text-dim);box-shadow:0 2px 6px var(--shadow);pointer-events:none}.ref-indicator[hidden]{display:none}.welcome-screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px;text-align:center;background:var(--surface);overflow:auto}.welcome-screen[hidden]{display:none}.welcome-icon{width:72px;height:72px;flex:none;border-radius:16px;display:block}.welcome-title{margin:0;font-size:22px}.welcome-subtitle{margin:0;color:var(--text-dim)}.welcome-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:10px 0 2px}.welcome-action{border:1px solid var(--accent);background:var(--surface);color:var(--accent);border-radius:5px;padding:9px 18px;font-size:14px;cursor:pointer}.welcome-action.primary{background:var(--accent);color:var(--accent-contrast)}.welcome-action:hover{background:var(--accent-soft);color:var(--accent)}.welcome-drop{margin:6px 0 0;border:2px dashed var(--border);border-radius:8px;padding:14px 26px;color:var(--text-dim)}.welcome-note{margin:0;max-width:560px;color:var(--text-dim);font-size:12px;line-height:1.6}#app.welcome-mode .tab-bar,#app.welcome-mode .formula-bar,#app.welcome-mode .find-bar,#app.welcome-mode .grid-container{display:none}.tab.dragging{opacity:.5}.tab.drop-before{box-shadow:inset 3px 0 0 var(--accent)}.tab.drop-after{box-shadow:inset -3px 0 0 var(--accent)}
