:root{--bg:#f5f6f4;--panel:#fff;--ink:#17201d;--muted:#68736f;--line:#dfe5e1;--line-strong:#cbd5d0;--accent:#0b746b;--accent-soft:#e5f3f1;--danger:#b42318;--shadow:0 10px 26px rgba(18,28,25,.08)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.workspace{min-height:100vh;display:grid;grid-template-rows:auto auto 1fr;grid-gap:12px;gap:12px;padding:16px}.workspaceHeader{display:flex;align-items:center;justify-content:space-between;gap:16px}.kicker{margin:0 0 4px;color:var(--accent);font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:0;font-size:30px}h2{margin-bottom:2px;font-size:18px}.sheetActions,.toolbar{display:flex;align-items:center;gap:10px}.searchBox{min-width:min(420px,44vw);height:40px;display:flex;align-items:center;gap:8px;padding:0 12px;background:var(--panel);border:1px solid var(--line);border-radius:8px}.searchBox input{width:100%;border:0;outline:0;background:transparent}.tabBar{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.tab{height:38px;display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.tab,.tab span{color:var(--muted)}.tab span{min-width:22px;padding:2px 6px;border-radius:999px;background:#eef1ef;font-size:12px}.activeTab{border-color:#98c8c2;background:var(--accent-soft);color:var(--accent)}.sheet{min-height:0;display:grid;grid-template-rows:auto 1fr;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);overflow:hidden}.sheetHeader{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border-bottom:1px solid var(--line)}.sheetHeader p{margin:0;color:var(--muted);font-size:13px}.gridScroll{min-width:0;max-width:100%;overflow-x:scroll;overflow-y:auto;padding-bottom:10px;scrollbar-color:#aebbb6 #eef3f1;scrollbar-gutter:stable;scrollbar-width:auto;-webkit-overflow-scrolling:touch}.gridScroll::-webkit-scrollbar{height:14px;width:14px}.gridScroll::-webkit-scrollbar-track{background:#eef3f1;border-radius:999px}.gridScroll::-webkit-scrollbar-thumb{background:#aebbb6;border:3px solid #eef3f1;border-radius:999px}.gridScroll::-webkit-scrollbar-thumb:hover{background:#84928d}.stickyTableScrollbar{position:fixed;left:16px;right:16px;bottom:0;z-index:20;height:18px;overflow-x:scroll;overflow-y:hidden;background:rgba(238,243,241,.96);border:1px solid var(--line);border-bottom:0;border-radius:8px 8px 0 0;box-shadow:0 -8px 20px rgba(17,24,39,.08);scrollbar-color:#84928d #eef3f1;scrollbar-width:auto}.stickyTableScrollbar.isHidden{display:none}.stickyTableScrollbar>div{height:1px}.stickyTableScrollbar::-webkit-scrollbar{height:16px}.stickyTableScrollbar::-webkit-scrollbar-track{background:#eef3f1;border-radius:999px}.stickyTableScrollbar::-webkit-scrollbar-thumb{background:#84928d;border:3px solid #eef3f1;border-radius:999px}.airTable{width:100%;min-width:980px;border-collapse:separate;border-spacing:0}.airTable td,.airTable th{height:39px;min-width:160px;padding:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;text-align:left;vertical-align:middle}.airTable th{position:-webkit-sticky;position:sticky;top:0;z-index:2;height:38px;padding:0 10px;background:#f8faf8;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase;resize:horizontal;overflow:auto}.airTable tr:hover td{background:#fbfcfb}.eventsTable{min-width:1480px}.tbcEventRow td{background:#fff8df}.tbcEventRow:hover td{background:#fff3c4}.outstandingPaymentsTable{min-width:1780px}.compactCol{min-width:112px!important;width:112px}.wideCol{min-width:240px!important;width:240px}.tightTableGrid .airTable{width:max-content;min-width:0}.tightTableGrid .airTable td,.tightTableGrid .airTable th{min-width:0}.vendorTableGrid .airTable td:nth-child(2),.vendorTableGrid .airTable th:nth-child(2){min-width:230px;width:230px}.vendorTableGrid .airTable td:nth-child(3),.vendorTableGrid .airTable th:nth-child(3){min-width:150px;width:150px}.productTableGrid .airTable td:nth-child(2),.productTableGrid .airTable th:nth-child(2){min-width:160px;width:160px}.productTableGrid .airTable td:nth-child(3),.productTableGrid .airTable th:nth-child(3){min-width:280px;width:280px}.productTableGrid .airTable td:nth-child(4),.productTableGrid .airTable th:nth-child(4){min-width:82px;width:82px}.productTableGrid .airTable td:nth-child(n+5),.productTableGrid .airTable th:nth-child(n+5){min-width:126px;width:126px}.logisticsMini{margin:0}.miniAddButton{width:-moz-fit-content;width:fit-content;height:34px;margin-top:8px}.miniDeleteButton{min-height:30px;height:30px;padding:0 9px;font-size:12px}.emptyMiniState{margin:0;padding:10px 12px;border:1px dashed var(--line-strong);border-radius:8px;background:#fff;color:var(--muted);font-size:13px}.miniTitle{margin:0 0 7px;color:var(--accent);font-size:12px;font-weight:800;text-transform:uppercase}.itemTotals{display:flex;align-items:flex-end;gap:8px}.itemTotals label{display:grid;grid-gap:4px;gap:4px;min-width:120px}.itemTotals span{color:var(--muted);font-size:12px;font-weight:800}.itemTotals .cellInput{height:34px;border:1px solid var(--line);border-radius:8px;background:#fff}.calendarQuickFields{display:flex;align-items:flex-end;gap:8px;justify-content:flex-start;margin-top:10px}.calendarQuickFields label{display:grid;grid-gap:4px;gap:4px;min-width:180px}.calendarQuickFields span{color:var(--muted);font-size:12px;font-weight:800}.selectCol{min-width:46px!important;width:46px;text-align:center!important}.selectCol input{width:16px;height:16px}.toggleCol{min-width:44px!important;width:44px}.deleteCol,.toggleCol{text-align:center!important}.deleteCol{min-width:92px!important;width:92px}.cellInput{width:100%;height:38px;border:0;outline:0;border-radius:0;padding:0 10px;background:transparent;color:var(--ink)}.cellTextarea{min-height:54px;height:auto;padding-top:8px;padding-bottom:8px;resize:vertical;line-height:1.3;white-space:normal}.cellInput:focus{background:#fff;box-shadow:inset 0 0 0 2px var(--accent)}.productColorCell .cellInput{background:var(--product-color-bg,transparent)}.productColorCell .cellInput:focus{background:#fff}.cellInput:disabled{color:var(--muted);background:#f8faf8}.duplicateWarningRow td:first-child{background:#ffe5e5}.duplicateWarningRow td:first-child .cellInput{background:#fff5f5;color:#9f1d1d}.duplicateWarningText{display:block;padding:4px 10px 6px;color:#b42318;font-size:12px;font-weight:800;line-height:1.25}.eventCodeEditor{display:grid;grid-template-columns:auto auto minmax(42px,1fr);align-items:center;grid-gap:2px;gap:2px;min-height:38px;padding:0 8px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.eventCodeEditor input{width:100%;min-width:42px;height:30px;border:0;border-radius:6px;background:transparent;color:var(--ink);outline:0;padding:0 4px}.eventCodeEditor input:focus{background:#fff;box-shadow:inset 0 0 0 2px var(--accent)}.colorCellInput{width:calc(100% - 16px);height:28px;margin:5px 8px;border:1px solid var(--line);border-radius:6px;background:#fff}.readonlyCell{display:block;padding:0 10px;color:var(--muted);line-height:38px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.amountPositive .readonlyCell{color:var(--ink);font-weight:700}.amountNegative .readonlyCell{color:#c62828;font-weight:700}.nestedRow td{background:#f7f9f8}.nestedRow>td{padding:10px}.eventDetailsCell{padding:10px!important;background:#f7f9f8!important}.eventDetailsStack{display:grid;grid-gap:10px;gap:10px}.nestedGrid{border:1px solid var(--line);border-radius:8px;background:#fff;max-height:360px}.nestedGrid .airTable{min-width:1180px}.actionButton,.ghostButton,.iconOnly,.primaryButton{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:8px;border:1px solid transparent}.primaryButton{min-height:38px;padding:0 12px;background:var(--accent);color:#fff}.primaryButton:disabled{opacity:.5}.actionButton{min-height:38px;padding:0 12px;color:#fff;font-weight:800;box-shadow:0 8px 18px rgba(18,28,25,.1)}.actionButton:disabled{cursor:not-allowed;opacity:.55}.addBookingButton{background:#0b746b;border-color:#0b746b}.addPaymentButton{background:#1d4ed8;border-color:#1d4ed8}.previewOffButton{background:#64748b;border-color:#64748b}.previewOnButton{background:#7c3aed;border-color:#7c3aed}.sendButton{background:#c2410c;border-color:#c2410c}.saveButton{background:#15803d;border-color:#15803d}.ghostButton{height:40px;padding:0 12px;background:var(--panel);border-color:var(--line);color:var(--ink)}.iconOnly{width:32px;height:32px;margin:3px auto;background:transparent;border-color:transparent;color:var(--muted)}.ghostButton:hover,.iconOnly:hover{background:#eef2ef}.statusMessage{color:var(--muted);font-size:13px}.segmented{display:inline-flex;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}.segmented button{height:38px;border:0;border-right:1px solid var(--line);padding:0 12px;background:transparent;color:var(--muted)}.segmented button:last-child{border-right:0}.segmented .activeSegment{background:var(--accent-soft);color:var(--accent);font-weight:800}.dangerButton{min-height:38px;border:0;border-radius:8px;padding:0 12px;background:var(--danger);color:#fff}.paginationBar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-top:1px solid var(--line);background:#f8faf8;color:var(--muted);font-size:13px}.paginationActions{display:flex;align-items:center;gap:8px}.paginationActions .ghostButton{height:34px}.dashboardGrid{display:grid;grid-gap:18px;gap:18px;padding:14px;min-width:0;max-width:100%;overflow-x:hidden;overflow-y:visible}.dashboardAnchorNav{position:-webkit-sticky;position:sticky;top:0;z-index:6;display:flex;flex-wrap:nowrap;gap:8px;max-width:100%;overflow-x:auto;overflow-y:hidden;padding:8px;border:1px solid var(--line);border-radius:8px;background:hsla(0,0%,100%,.96);box-shadow:0 8px 20px rgba(17,24,39,.08);scrollbar-width:thin;-webkit-overflow-scrolling:touch}.dashboardAnchorNav a{flex:0 0 auto;display:inline-flex;align-items:center;white-space:nowrap;min-height:34px;padding:0 12px;border-radius:7px;background:#f3f7f6;color:var(--ink);font-size:13px;font-weight:800;text-decoration:none}.dashboardAnchorNav a:hover{background:#dfeeea}.dashboardAnchorNav .anchorToneNewEvents{background:#fde8e6;color:#8f1d17}.dashboardAnchorNav .anchorToneNewEvents:hover{background:#fbd2ce}.dashboardAnchorNav .anchorToneEventPrep{background:#e3edff;color:#1d4a9f}.dashboardAnchorNav .anchorToneEventPrep:hover{background:#ccdcff}.dashboardAnchorNav .anchorToneOps{background:#dff3ed;color:#075f55}.dashboardAnchorNav .anchorToneOps:hover{background:#c8e9df}.dashboardGroup{display:grid;grid-gap:10px;gap:10px;min-width:0}#dashboard-add-event,#dashboard-add-payment,#dashboard-calendar-invite,#dashboard-customer-reminders,#dashboard-logistics-reminder,#dashboard-vendor-issues,#dashboard-vendor-reminders,#finance-logistics-records,#finance-receivables,#finance-unpaid-vendors,.dashboardGroup{scroll-margin-top:70px}.dashboardGroup>h2{margin:0;padding:4px 2px;color:var(--ink);font-size:20px}.dashboardGroupStack{display:grid;grid-gap:14px;gap:14px;min-width:0}.dashboardPanel{display:grid;grid-gap:12px;gap:12px;min-width:0;max-width:100%;padding:14px;border:1px solid var(--line);border-left-width:7px;border-radius:8px;background:#fff;overflow:hidden}.dashboardPanel-booking,.dashboardPanel-payment{border-left-color:#d13f35}.dashboardPanel-calendar,.dashboardPanel-customerReminder,.dashboardPanel-logistics,.dashboardPanel-vendorReminder{border-left-color:#2f6fed}.dashboardPanel-outstanding,.dashboardPanel-vendorIssues{border-left-color:#0b746b}.textLinkButton{border:0;background:transparent;color:#0b746b;cursor:pointer;font:inherit;font-weight:800;padding:0;text-align:left;text-decoration:underline}.compactDashboardPanel{gap:10px}.panelTopline{justify-content:space-between;gap:12px}.inlineActions,.panelTopline{display:flex;align-items:center}.inlineActions{gap:8px}.paymentQuickGrid{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(180px,1.2fr) minmax(120px,.7fr) minmax(130px,.7fr) auto;grid-gap:10px;gap:10px;align-items:end}.dashboardPanel label,.paymentQuickGrid label{display:grid;grid-gap:5px;gap:5px}.dashboardPanel label span,.paymentQuickGrid span{color:var(--muted);font-size:12px;font-weight:800}.dashboardPanel input,.dashboardPanel select,.paymentQuickGrid input,.paymentQuickGrid select{width:100%;min-height:38px;border:1px solid var(--line);border-radius:8px;padding:0 10px;background:#fff}.tableTopModule{margin:12px 14px;padding:12px;border:1px solid var(--line);border-left:7px solid var(--accent);border-radius:8px;background:#fff}.tableTopModule .dashboardPanel{padding:0;border:0}.quickAddGrid{display:grid;grid-gap:10px;gap:10px;align-items:end}.customerQuickAddGrid{grid-template-columns:minmax(170px,1.2fr) minmax(120px,.8fr) minmax(170px,1.1fr) minmax(160px,1fr) minmax(130px,.8fr) minmax(150px,.9fr) auto}.vendorQuickAddGrid{grid-template-columns:minmax(220px,1fr) minmax(150px,.6fr) auto}.productQuickAddGrid{grid-template-columns:minmax(190px,1fr) minmax(220px,1.2fr) minmax(110px,.4fr) minmax(150px,.7fr) auto}.quickAddGrid label{display:grid;grid-gap:5px;gap:5px}.quickAddGrid span{color:var(--muted);font-size:12px;font-weight:800}.quickAddGrid input,.quickAddGrid select{width:100%;min-height:38px;border:1px solid var(--line);border-radius:8px;padding:0 10px;background:#fff}.standaloneColorInput{width:100%;margin:0}.sectionSearch{max-width:420px;display:grid;grid-template-columns:auto 1fr;align-items:center;grid-gap:8px;gap:8px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fff}.sectionSearch input{min-height:38px;padding:0;border:0;outline:0}.profitLossPage{display:grid;grid-gap:14px;gap:14px;padding:14px;min-width:0}.axisControl{display:grid;grid-gap:5px;gap:5px;min-width:180px}.axisControl span{color:var(--muted);font-size:12px;font-weight:800}.chartScroll{width:100%;overflow-x:auto;overflow-y:hidden;padding:6px 0 2px;-webkit-overflow-scrolling:touch}.profitChart{min-width:100%;height:170px;display:block}.chartAxis{stroke:var(--line-strong);stroke-width:1}.chartGridLine{stroke:#edf1ef;stroke-width:1}.chartLine{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:3.5}.chartPoint{cursor:help;stroke:#fff;stroke-width:2}.chartPoint:hover{r:6px}.chartRevenue{stroke:#0b746b}.chartCogs{stroke:#e11d48}.chartLogistics{stroke:#2f6fed}.chartNet{stroke:#7c3aed}.chartPoint.chartRevenue{fill:#0b746b}.chartPoint.chartCogs{fill:#e11d48}.chartPoint.chartLogistics{fill:#2f6fed}.chartPoint.chartNet{fill:#7c3aed}.chartLabel{font-size:11px;text-anchor:middle}.chartLabel,.chartYAxisLabel{fill:var(--muted);font-weight:800}.chartYAxisLabel{font-size:10px;text-anchor:end}.chartTooltip rect{fill:rgba(23,32,29,.94);stroke:hsla(0,0%,100%,.18)}.chartTooltipTitle{fill:#fff;font-size:12px;font-weight:900}.chartTooltipLine{fill:#eef3f1;font-size:11px;font-weight:700}.chartLegend{display:flex;flex-wrap:wrap;gap:10px 14px;color:var(--muted);font-size:12px;font-weight:800}.chartLegend label{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.chartLegend input{width:14px;height:14px;margin:0}.chartLegend i{width:18px;height:3px;border-radius:999px}.legendRevenue{background:#0b746b}.legendCogs{background:#e11d48}.legendLogistics{background:#2f6fed}.legendNet{background:#7c3aed}.profitLossTable{min-width:690px;width:max-content}.profitLossTable td,.profitLossTable th{min-width:105px}.profitLossTable .compactCol{min-width:105px!important;width:105px}.profitLossTable td:first-child,.profitLossTable th:first-child{min-width:78px!important;width:78px}.profitLossTable td:nth-child(5),.profitLossTable th:nth-child(5){min-width:150px!important;width:150px}.profitLossTable td:nth-child(n+2) .readonlyCell,.profitLossTable th:nth-child(n+2){text-align:right}.invitePreview{max-height:240px;overflow:auto;margin:0;padding:12px;border:1px solid var(--line);border-radius:8px;background:#f8faf8;color:var(--ink);white-space:pre-wrap}.vendorIssuesLiteTable{min-width:1500px}.lightDraftTable{min-width:1040px}.draftTableHeader{display:flex;align-items:center;justify-content:space-between;gap:12px}.reminderTable{min-width:1420px}.compactInlineField{min-width:min(300px,100%)}.reminderTopline{align-items:end;flex-wrap:wrap}.reminderActions{justify-content:flex-end;flex-wrap:wrap}.reminderActions .actionButton{min-width:82px}.reminderCards{display:grid;grid-gap:12px;gap:12px}.reminderCard{display:grid;grid-gap:10px;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff}.reminderPreview{max-height:320px}.smallInlineButton{min-height:30px;height:30px;padding:0 10px;font-size:13px;text-decoration:none}.addBookingPanel{display:grid;grid-gap:14px;gap:14px;min-width:0;max-width:100%;padding:0;overflow:visible}.entryGrid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));grid-gap:10px;gap:10px;align-items:end}.colorRow,.entryGrid label{display:grid;grid-gap:5px;gap:5px}.colorRow span,.entryGrid span{color:var(--muted);font-size:12px;font-weight:800}.entryGrid input,.entryGrid select,.entryGrid textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:0 10px;background:#fff}.entryGrid input,.entryGrid select{min-height:40px}.entryGrid .checkboxField{align-self:stretch;display:flex;align-items:center;gap:8px;min-height:40px}.entryGrid .checkboxField input{width:auto;min-height:auto}.detailsField{grid-column:1/-1}.detailsField textarea{min-height:150px;padding-top:10px;resize:vertical}.entryItems{display:grid;grid-gap:10px;gap:10px;min-width:0;max-width:100%}.entryItems .airTable{min-width:1080px}.entryItemsScroll{width:100%}.colorGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:10px;gap:10px;padding:14px;overflow:auto}.colorRow{padding:12px}.colorRow,.colorRow input{border:1px solid var(--line);border-radius:8px;background:#fff}.colorRow input{width:100%;height:38px}.loginShell{min-height:100vh;display:grid;place-items:center;padding:18px}.loginCard{width:min(420px,100%);display:grid;grid-gap:12px;gap:12px;padding:22px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.loginCard h1{font-size:26px}.loginCard p{color:var(--muted)}.mark{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;background:#f0c766;font-weight:900}.loginCard .cellInput{height:42px;border:1px solid var(--line);border-radius:8px}@media (max-width:760px){.workspace{padding:10px}.sheetActions,.sheetHeader,.toolbar,.workspaceHeader{align-items:stretch;flex-direction:column}.sheetActions,.toolbar{width:100%}.searchBox{min-width:0;width:100%}h1{font-size:24px}.tab{height:36px;padding:0 10px}.sheet{min-height:70vh}.dashboardGrid{max-width:100vw;overflow-x:hidden;padding:10px}.dashboardPanel,.tableTopModule{max-width:100%;min-width:0;overflow-x:hidden}.tableTopModule{margin:10px;padding:10px}.entryGrid,.paymentQuickGrid{grid-template-columns:1fr}.paymentQuickGrid button,.paymentQuickGrid label{min-width:0}.calendarQuickFields,.itemTotals{align-items:stretch;flex-direction:column}.calendarQuickFields label,.itemTotals label{min-width:0}.lightDraftTable{min-width:760px}.customerQuickAddGrid,.productQuickAddGrid,.vendorQuickAddGrid{grid-template-columns:1fr}.inlineActions,.panelTopline{align-items:stretch;flex-direction:column}}