.grid-stage{position:relative;display:grid;align-content:start;justify-content:start;background:var(--paper);color:var(--paper-text);border:1px solid var(--line-strong);box-shadow:0 5px 18px rgba(30,40,60,.12);transform-origin:top left;isolation:isolate}.corner,.col-header,.row-header,.cell{min-width:0;min-height:0;border-right:1px solid #d9dee5;border-bottom:1px solid #d9dee5;overflow:hidden}.corner,.col-header,.row-header{background:#f1f3f6;color:#4b5563;font-size:var(--sheet-header-font,12px);font-weight:650;display:flex;align-items:center;user-select:none}.corner{position:sticky;top:0;left:0;z-index:8;border-left:1px solid #d9dee5;border-top:1px solid #d9dee5}.col-header{position:sticky;top:0;z-index:6;justify-content:center;border-top:1px solid #d9dee5}.row-header{position:sticky;left:0;z-index:5;justify-content:flex-end;padding-right:6px;border-left:1px solid #d9dee5}.cell{position:relative;background:#fff;color:#111;display:flex;align-items:center;padding:2px 4px;white-space:nowrap;font-size:14px;line-height:1.12;user-select:none}.cell[data-wrap="1"]{white-space:normal}.cell.in-range{background:color-mix(in srgb,#267a45 10%,#fff)}.cell.selected{outline:2px solid #267a45;outline-offset:-2px;z-index:3;background:#fff}.col-header.axis-active,.row-header.axis-active{background:#dff0e5;color:#195b34}.cell.editing{user-select:text;cursor:text;outline:2px solid #267a45;z-index:10}.fill-handle{position:absolute;right:0;bottom:0;width:8px;height:8px;border:1px solid #fff;border-radius:1px;background:#267a45;box-shadow:0 0 0 1px #267a45;cursor:crosshair;touch-action:none;z-index:12}.cell.fill-preview{background:color-mix(in srgb,#267a45 16%,#fff)}.grid-stage.fill-dragging{cursor:crosshair}.cell[data-halign="center"]{justify-content:center;text-align:center}.cell[data-halign="right"]{justify-content:flex-end;text-align:right}.cell.structured-table-header{font-weight:700;background:#e5f3ea}.cell.structured-table-band{background:#f5faf7}.resize-handle{position:absolute;z-index:3}.col-header .resize-handle{right:-4px;top:0;width:9px;height:100%;cursor:col-resize}.row-header .resize-handle{left:0;bottom:-4px;width:100%;height:9px;cursor:row-resize}.selection-marquee{position:absolute;pointer-events:none;border:2px solid #267a45;z-index:20}.start-state{position:absolute;inset:var(--content-y) var(--content-x);display:grid;place-items:center;pointer-events:none}.start-card{width:min(430px,100%);padding:28px;border:1px solid var(--line);border-radius:22px;background:var(--chrome);box-shadow:var(--shadow);text-align:center;pointer-events:auto}.start-card img{width:68px;height:68px;border-radius:16px}.start-card h1{margin:14px 0 6px}.start-card p{margin:0 0 18px;color:var(--muted)}.start-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}html[data-ui-density="desktop"] .start-actions{flex-flow:row nowrap}.start-actions button{min-height:44px;border:1px solid var(--line);border-radius:11px;background:var(--panel);padding:0 16px}.start-actions .primary{background:var(--accent);color:#fff;border-color:var(--accent)}
:root[data-appearance-resolved="dark"] .grid-stage{box-shadow:0 5px 18px rgba(0,0,0,.35)}
body.hide-gridlines .cell{border-right-color:transparent;border-bottom-color:transparent}.resize-guide{position:fixed;z-index:170;background:var(--accent);pointer-events:none}.resize-guide.column{top:0;bottom:0;width:1px}.resize-guide.row{left:0;right:0;height:1px}.resize-badge{position:fixed;z-index:171;padding:5px 8px;border-radius:8px;background:var(--text);color:var(--bg);font-size:11px;pointer-events:none}

.drawing-layer{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:visible}.sheet-drawing{position:absolute;box-sizing:border-box;pointer-events:none;transform-origin:top left}.sheet-drawing.image{object-fit:contain;display:block}.sheet-drawing.shape{white-space:pre-line;overflow:hidden;color:#111;line-height:1.15;padding:1px 2px}.cell.selected{z-index:4}.cell.editing{z-index:10}
#ssPrintSheet{display:none}
@media print{html.ss-printing,html.ss-printing body{background:#fff!important;height:auto!important;min-height:0!important;overflow:visible!important;position:static!important}html.ss-printing body>*:not(#ssPrintSheet){display:none!important}html.ss-printing #ssPrintSheet{display:block}.ss-print-wrap{position:relative}.ss-print-wrap .sheet-drawing{-webkit-print-color-adjust:exact;print-color-adjust:exact}.ss-print-table{border-collapse:collapse;table-layout:fixed;color:#000;font-family:Calibri,"InkDOS Sans",Arial,sans-serif;-webkit-print-color-adjust:exact;print-color-adjust:exact}.ss-print-table td{border:.5px solid #d0d4da;overflow:hidden;white-space:nowrap;text-overflow:clip;vertical-align:bottom;box-sizing:border-box}.ss-print-table td[data-wrap]{white-space:pre-wrap}.ss-print-table tr{break-inside:avoid;page-break-inside:avoid}}
.cell.overflowing{overflow:visible}.cell.overflowing:not(.selected):not(.editing){z-index:1}
.ss-print-table td.ss-print-overflowing{position:relative;overflow:visible}.ss-print-overflow{position:absolute;white-space:nowrap;overflow:hidden;line-height:inherit}
.ss-print-table:not(.ss-print-grid) td{border:0 none}
/* InkDOS Sans: Calibri-metric fallback (derived from Carlito, OFL) for hosts without Calibri. */
@font-face{font-family:"InkDOS Sans";src:url("../vendor/fonts/InkDOSSans-Regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"InkDOS Sans";src:url("../vendor/fonts/InkDOSSans-Bold.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"InkDOS Sans";src:url("../vendor/fonts/InkDOSSans-Italic.ttf") format("truetype");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"InkDOS Sans";src:url("../vendor/fonts/InkDOSSans-BoldItalic.ttf") format("truetype");font-weight:700;font-style:italic;font-display:swap}
