:root{--green:#287858;--line:#dfe7e1;--ink:#293e34;--muted:#839388}*{box-sizing:border-box}body{margin:0;background:#f8faf8;color:var(--ink);font:13px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,input,select{font:inherit}button{cursor:pointer;border:0;background:none;color:inherit;border-radius:6px;padding:8px 11px;white-space:nowrap}button:hover{background:#e7eee8}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #3c956a;outline-offset:1px}button:disabled{opacity:.35;cursor:default}a{color:var(--green)}aside{width:216px;position:fixed;inset:0 auto 0 0;background:#f0f4f0;border-right:1px solid var(--line);padding:27px 17px}.brand{font-size:29px;font-weight:750;letter-spacing:-1px;display:flex;gap:10px;align-items:center;text-decoration:none;color:var(--ink)}.logo{background:var(--green);color:white;border-radius:11px;padding:4px 10px}.tag{font-size:9px;letter-spacing:1.5px;color:var(--muted);margin:14px 0 30px}aside>button{width:100%;text-align:left;margin:3px 0;padding:11px 13px}aside .active{background:#ddebe0;color:#206044;font-weight:600}.side-label{font-size:9px;letter-spacing:1.5px;color:var(--muted);margin:29px 12px 12px}.file{padding:13px;border-radius:8px;background:#fff;border:1px solid var(--line);overflow-wrap:anywhere}.file small{display:block;margin-top:8px;color:var(--muted);font-size:11px}.features{display:grid;gap:15px;color:#79917f;padding:5px 12px;font-size:11px}.aside-bottom{position:absolute;bottom:22px;display:flex;gap:9px;align-items:center;font-size:11px}.aside-bottom small{display:block;color:var(--muted);margin-top:5px;font-size:10px}.circle{background:#dfe9df;border-radius:50%;padding:10px;color:#52735a}main{margin-left:216px;height:100dvh;display:flex;flex-direction:column;min-width:0}header{padding:23px 29px 20px;background:#fff;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:12px}h1{font-size:22px;font-weight:600;margin:0 0 8px;letter-spacing:-.5px;max-width:500px;outline:0;overflow-wrap:anywhere}.muted{color:var(--muted);font-size:11px}.green{background:var(--green);color:white}.green:hover{background:#1d6246}.outline{border:1px solid var(--line);background:white}.header-actions{display:flex;gap:10px}.crumb{font-size:11px;color:var(--muted);margin-bottom:17px}.crumb span{padding:0 10px;color:#c1cbc3}.titleline{display:flex;align-items:center;gap:12px}.badge{font-size:9px;letter-spacing:.6px;background:#eef5ec;color:#628158;padding:5px 8px;border-radius:5px;white-space:nowrap}.menu{display:flex;gap:5px;padding:5px 22px;background:#fff;border-bottom:1px solid var(--line)}.toolbar{padding:9px 19px;display:flex;align-items:center;gap:5px;background:#fff;border-bottom:1px solid var(--line);overflow:auto;min-height:52px}.group{display:flex;gap:1px;align-items:center;border-right:1px solid var(--line);padding-right:7px;margin-right:4px}.toolbar button{padding:7px 9px}.toolbar select{border:0;background:#f5f7f4;padding:7px;border-radius:5px;max-width:112px}.color-label{position:relative;cursor:pointer;padding:6px 8px}.color-label input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.search{width:155px;min-width:130px;margin-left:auto;border:1px solid transparent;outline:0;padding:8px 10px;background:#f4f6f3;border-radius:5px}.formula{display:flex;background:#fff;border-bottom:1px solid var(--line);min-height:41px;align-items:center}#address{width:110px;text-align:center;font-size:11px;border:0;border-right:1px solid var(--line);padding:10px;color:var(--ink)}.fx{padding:0 16px;color:#81948a;font:italic 18px Georgia}#formula{flex:1;min-width:20px;border:0;outline:0;padding:10px;color:#4b5c53;font-size:12px}.formula button{margin-right:8px;color:var(--green)}.sheethead{display:flex;justify-content:space-between;align-items:center;padding:14px 25px;gap:15px}.sheethead strong{font-size:13px;font-weight:600}.sheethead #dimensions{font-size:11px;color:var(--muted);margin-left:12px}.page-controls{display:flex;align-items:center;gap:4px;white-space:nowrap}.page-controls small{font-size:10px;color:var(--muted)}.page-controls button{padding:3px 7px}.separator{width:1px;height:14px;background:var(--line);margin:0 8px}.workspace{flex:1;display:flex;min-height:0;gap:14px;padding:0 24px}.gridwrap{overflow:auto;flex:1;background:white;border:1px solid var(--line);border-radius:7px 7px 0 0;position:relative;min-width:0}table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content;min-width:100%;font-size:12px;user-select:none}th{background:#f1f5f1;color:#84958a;font-weight:400;height:28px;position:sticky;top:0;z-index:3;cursor:pointer}th:first-child{left:0;z-index:5}th,td{border-right:1px solid #e6ece6;border-bottom:1px solid #e6ece6}td{height:32px;min-width:128px;width:128px;max-width:128px;padding:0 10px;outline:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}td.rownum,th:first-child{min-width:40px;width:40px;max-width:40px;text-align:center;color:#97a299;background:#f5f8f4;padding:0;position:sticky;left:0;z-index:2;cursor:pointer}td.in-range{background-color:#eff7ef}td.selected{box-shadow:inset 0 0 0 2px #39865d;position:relative;z-index:1}td.editing{user-select:text;overflow:visible;background:#fff!important;box-shadow:inset 0 0 0 2px var(--green);z-index:4}td.found{background-color:#fff0b8!important}td.error{color:#b24c48}th.in-range{background:#dfebdf;color:#287858}footer{display:flex;padding:0 24px;background:#fff;align-items:center;min-height:45px;border-bottom:1px solid var(--line);gap:4px;overflow:auto}#tabs{display:flex}footer .tab{border-radius:0;height:45px;font-size:11px;padding:10px 15px}footer .chosen{color:var(--green);border-bottom:3px solid var(--green);background:#f5f9f3;font-weight:600}.chart-toggle{margin-left:auto;color:var(--green);font-size:11px}.status{display:flex;justify-content:space-between;padding:9px 25px;font-size:10px;color:var(--muted);gap:10px;min-height:30px}#localStatus{color:#5d8668}.notice{background:#fff6df;color:#87652d;font-size:11px;line-height:1.6;padding:8px 25px;border-bottom:1px solid #eee1be}.notice button{float:right;padding:0 5px}.chart-panel{width:360px;min-width:310px;overflow:auto;background:#f0f4ef;border:1px solid var(--line);border-radius:7px;padding:14px}.panel-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:12px}.chart-card{background:white;border:1px solid var(--line);padding:12px;border-radius:7px;margin-bottom:12px}.chart-card h3{font-size:12px;margin:0}.chart-card header{padding:0 0 8px;border:0}.chart-card small{color:var(--muted);font-size:10px}.chart-card .canvas-wrap{height:200px;position:relative}.chart-card button{font-size:11px;padding:5px}.chart-card .chart-error{color:#ae5b48;font-size:12px}.full{width:100%}#toast{position:fixed;bottom:52px;left:50%;transform:translateX(-35%);background:#284e3a;color:white;padding:12px 20px;border-radius:8px;display:none;z-index:20;max-width:80vw;font-size:12px;line-height:1.5}dialog{border:1px solid var(--line);border-radius:13px;padding:24px;max-width:min(640px,95vw);width:560px;color:var(--ink);box-shadow:0 20px 90px #1d392f33}dialog::backdrop{background:#142d2455;backdrop-filter:blur(2px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}h2{font-size:19px;margin:0;letter-spacing:-.3px}dialog label{display:block;font-size:12px;margin:14px 0 6px;color:#5a7060}dialog input:not([type=checkbox]),dialog select{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:white;color:var(--ink)}dialog p{font-size:12px;line-height:1.7;color:#748579}dialog .actions{display:flex;gap:8px;justify-content:flex-end;margin-top:22px}dialog .hint{font-size:11px;color:var(--muted);margin-top:8px}.function-list{max-height:320px;overflow:auto;margin-top:15px}.function-item{display:block;width:100%;text-align:left;padding:9px 10px;border-bottom:1px solid #edf1ec;border-radius:0}.function-item b{font-size:12px}.function-item small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.book-item{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);gap:8px}.book-item .book-open{text-align:left;white-space:normal;flex:1}.book-item small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.help-grid div{padding:12px;background:#f3f7f0;border-radius:7px;font-size:12px;line-height:1.7}.help-grid b{display:block}.help-grid code{font-size:11px}.delete{color:#ad5e50}.empty{padding:30px 10px;color:var(--muted);font-size:12px;text-align:center}[hidden]{display:none!important}@media(max-width:1250px){aside{width:185px;padding:25px 12px}main{margin-left:185px}.tag{font-size:8px}.toolbar{gap:2px;padding:8px}.toolbar .group{margin-right:1px;padding-right:4px}.toolbar button{padding:7px}.toolbar .group button span{display:none}.chart-panel{width:310px}.header-actions{gap:5px}}@media(max-width:850px){aside{width:60px;padding:20px 8px}.brand{font-size:22px}.brand b,.tag,aside>button,.side-label,.file,.features,.aside-bottom{display:none}main{margin-left:60px}header{padding:17px}.crumb{margin-bottom:12px}.badge{display:none}h1{font-size:18px}.header-actions .outline{display:none}.menu{padding:4px 8px;overflow:auto}.toolbar{min-height:49px}.sheethead{padding:10px 12px}.workspace{padding:0 10px}.sheethead #dimensions{display:none}.status{padding:8px 12px}.status>span:last-child{display:none}.chart-panel{position:fixed;right:10px;top:100px;bottom:85px;z-index:8;width:min(360px,85vw);box-shadow:0 15px 50px #21452b33}.help-grid{grid-template-columns:1fr}footer{padding:0 10px}.chart-toggle span{display:none}.status{font-size:9px}}
dialog .actions{flex-wrap:wrap}
.chart-types{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:8px 0 17px}.chart-type{white-space:normal;border:1px solid var(--line);padding:12px 5px;background:#fff;display:flex;flex-direction:column;align-items:center;gap:8px}.chart-type svg{width:37px;height:37px;color:#69947b}.chart-type b{font-size:10px;font-weight:600}.chart-type small{font-size:9px;line-height:1.4;color:var(--muted)}.chart-type[aria-pressed=true]{background:#edf6ed;border-color:#388566;box-shadow:0 0 0 1px #388566}.chart-type[aria-pressed=true] svg{color:#287858}.import-options{display:grid;grid-template-columns:1fr 1fr;gap:14px}.checkbox-label{display:flex!important;align-items:center;gap:8px;line-height:1.5}.txt-preview{overflow:auto;border:1px solid var(--line);border-radius:6px;max-height:210px;margin-top:12px}.txt-preview table{min-width:100%;font-size:11px;user-select:text}.txt-preview td{min-width:100px;max-width:160px}.txt-preview tr:first-child{background:#f0f5ed;font-weight:600}#txtSummary{font-size:11px;color:var(--green);margin-top:12px}.import-error{font-size:12px;color:#b65045;margin-top:10px}.sheet-charts{position:absolute;left:0;top:0;width:0;height:0;z-index:6;pointer-events:none}.inline-chart{position:absolute;background:#fff;border:1px solid #bdcfc0;border-radius:8px;box-shadow:0 5px 20px #284d3920;pointer-events:auto;display:flex;flex-direction:column;padding:10px 12px 17px;min-width:260px;min-height:210px;overflow:hidden}.inline-chart-header{display:flex;justify-content:space-between;align-items:center;gap:10px;cursor:grab;touch-action:none;min-height:27px;outline-offset:1px}.inline-chart-header:active{cursor:grabbing}.inline-chart-header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.inline-chart-header>div{display:flex}.inline-chart-header button{padding:3px 7px;font-size:12px}.inline-chart>small{font-size:10px;color:var(--muted);margin:3px 0 8px}.inline-canvas{position:relative;flex:1;min-height:0}.chart-resize{position:absolute;bottom:0;right:0;padding:0 4px;color:#6d9679;font-size:14px;cursor:nwse-resize;touch-action:none;border-radius:0}.chart-error{color:#b25045;font-size:11px}.function-item small{line-height:1.6}.function-item{white-space:normal}@media(max-width:580px){.chart-types{grid-template-columns:repeat(3,1fr)}.import-options{grid-template-columns:1fr}.chart-type{padding:8px 5px}.chart-type svg{width:29px;height:29px}}
.visibility-banner{padding:7px 25px;background:#eef5ec;border-bottom:1px solid #dce8d8;color:#5c7a60;font-size:11px;line-height:1.5}.header-actions{flex-wrap:wrap;justify-content:flex-end;max-width:400px}#resolveConflict{color:#a26c27;border-color:#dac394}.library-tools{display:flex;gap:7px;align-items:center;margin-bottom:10px}.library-tools input{flex:1;min-width:80px}.library-tools select{width:auto}.public-list{max-height:260px;overflow:auto}.public-list:empty{padding:15px;color:var(--muted)}#draftSection{border-top:1px solid var(--line);margin-top:18px}#draftSection h3{font-size:12px;color:#748777;margin:18px 0 6px}#localDrafts{max-height:150px;overflow:auto}#shareBook{display:inline-block}#publishBook{display:inline-block}#resolveConflict{display:inline-block}@media(max-width:850px){.visibility-banner{padding:6px 12px;font-size:10px}.header-actions{max-width:260px}.header-actions #publishBook,.header-actions #shareBook,.header-actions #resolveConflict{display:inline-block;font-size:11px;padding:7px}.library-tools{flex-wrap:wrap}.library-tools input{flex-basis:100%}.header-actions .green{font-size:11px}}
