:root{color:#17202a;background:#f6f4ee;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font:inherit}button{align-items:center;background:#fff;border:1px solid #d8d3c8;border-radius:8px;color:#26313d;cursor:pointer;display:inline-flex;gap:8px;min-height:42px;padding:0 14px;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;white-space:nowrap}button:hover:not(:disabled){border-color:#7f6f53;box-shadow:0 8px 20px #2a251c1a;transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.55}button.primary{background:#1f6f68;border-color:#1f6f68;color:#fff}.app-shell{display:flex;flex-direction:column;gap:16px;min-height:100vh;padding:20px}.toolbar{align-items:center;background:#fffdfa;border:1px solid #e3ded2;border-radius:8px;display:flex;gap:18px;justify-content:space-between;padding:16px}.brand-block{align-items:center;display:flex;gap:12px;min-width:0}.brand-icon{align-items:center;background:#e9f4f1;border:1px solid #cae1db;border-radius:8px;color:#1f6f68;display:flex;flex:0 0 48px;height:48px;justify-content:center}h1{font-size:24px;font-weight:760;letter-spacing:0;line-height:1.15;margin:0}p{color:#68717c;margin:6px 0 0}.actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.tenant-switch{background:#eee9de;border:1px solid #d8d3c8;border-radius:8px;display:inline-flex;gap:2px;padding:3px}.tenant-switch button{background:transparent;border-color:transparent;min-height:34px;padding:0 12px}.tenant-switch button.active{background:#fff;border-color:#cfc6b6;color:#1f6f68;font-weight:720;box-shadow:0 4px 12px #2a251c14}.file-input{display:none}.summary-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.totals-strip{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.total-pill{background:#1f6f68;border:1px solid #1a5e58;border-radius:8px;color:#fff;padding:13px 14px}.total-pill span{display:block;font-size:13px;opacity:.82}.total-pill strong{display:block;font-size:22px;font-weight:780;letter-spacing:0;line-height:1.25;margin-top:4px}.summary-item,.formula-panel,.voice-panel{background:#fffdfa;border:1px solid #e3ded2;border-radius:8px;padding:14px}.summary-item span{color:#68717c;display:block;font-size:13px;margin-bottom:6px}.summary-item strong{display:block;font-size:18px;font-weight:720;letter-spacing:0;line-height:1.3}.panel-title{align-items:center;color:#26313d;display:flex;font-weight:720;gap:8px;margin-bottom:10px}.formula-list{display:flex;flex-wrap:wrap;gap:8px}.formula-list span{background:#eef4f3;border:1px solid #d2e3df;border-radius:8px;color:#24514d;font-family:SFMono-Regular,Consolas,monospace;font-size:13px;line-height:1.4;padding:6px 8px}.voice-row{align-items:stretch;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto}.voice-row textarea{background:#fff;border:1px solid #d9d4c9;border-radius:8px;color:#17202a;min-height:76px;padding:10px 12px;resize:vertical;width:100%}.voice-row textarea:focus{border-color:#1f6f68;box-shadow:0 0 0 3px #1f6f6826;outline:none}.voice-actions{display:flex;flex-direction:column;gap:10px;justify-content:stretch;min-width:156px}.voice-actions button{flex:1;justify-content:center}.table-wrap{background:#fffdfa;border:1px solid #e3ded2;border-radius:8px;flex:1;overflow:auto}table{border-collapse:separate;border-spacing:0;min-width:1280px;width:100%}th,td{border-bottom:1px solid #ebe6dc;border-right:1px solid #ebe6dc;min-width:130px;padding:8px;vertical-align:middle}.action-col{min-width:76px;text-align:center}th{background:#f2eee5;color:#26313d;font-size:13px;font-weight:720;position:sticky;text-align:left;top:0;z-index:2}th span,th small{display:block}th small{color:#717b86;font-size:12px;font-weight:500;margin-top:3px}td{background:#fffdfa}.icon-button{border-radius:8px;justify-content:center;min-height:36px;padding:0;width:38px}.icon-button.danger{color:#a23a2f}.icon-button.danger:hover:not(:disabled){border-color:#c85a4e;box-shadow:0 8px 18px #a23a2f1f}td input{background:#fff;border:1px solid #d9d4c9;border-radius:6px;color:#17202a;min-height:38px;padding:8px 9px;width:100%}td input:focus{border-color:#1f6f68;box-shadow:0 0 0 3px #1f6f6826;outline:none}.formula-cell{background:#f4f7f6;color:#60716d;font-size:13px;text-align:center}.formula-cell strong,.formula-cell small{display:block}.formula-cell strong{color:#24514d;font-size:14px;font-weight:760}.formula-cell small{color:#71827e;font-size:11px;margin-top:2px}.sticky-col{left:0;min-width:72px;position:sticky;z-index:3}td.sticky-col{background:#fbf8f1;font-weight:720;z-index:1}.row-number{color:#58636f;text-align:center}.empty-state{align-items:center;color:#68717c;display:flex;flex-direction:column;gap:10px;justify-content:center;min-height:320px;padding:32px;text-align:center}@media(max-width:860px){.app-shell{gap:12px;padding:12px}.toolbar{align-items:stretch;flex-direction:column}.actions{display:grid;grid-template-columns:1fr 1fr;justify-content:stretch}.tenant-switch{grid-column:1 / -1;justify-content:stretch}.tenant-switch button{flex:1}button{justify-content:center;padding:0 10px}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-item.wide{grid-column:1 / -1}.voice-row{grid-template-columns:1fr}.voice-actions{flex-direction:row}h1{font-size:21px}}@media(max-width:520px){.actions{grid-template-columns:1fr}.voice-actions{flex-direction:column}.summary-grid{grid-template-columns:1fr}.brand-icon{flex-basis:42px;height:42px}}
