:root{color:#1a1a18;background:#f4f2ed;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--graphite:#1A1A18;--coral:#D85A30;--coral-dark:#B84824;--coral-soft:#FAECE7;--warm:#F4F2ED;--white:#FFFFFF;--secondary:#888780;--ink:#1A1A18;--muted:#888780;--line:rgba(136,135,128,.48);--line-strong:#888780;--panel:#FFFFFF;--panel-soft:#FAF8F3;--field:#FFFFFF;--brand:#1A1A18;--brand-2:#2A2A27;--accent:#D85A30;--danger:#993C1D}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,#1a1a180b,#f4f2ed00 280px),var(--warm)}button,input,select,textarea{font:inherit}button{cursor:pointer}.appShell{width:min(1560px,calc(100% - 32px));margin:0 auto;padding:26px 0 52px}.topbar,.pageHeader,.formHeader,.sectionHeader,.headerActions,.formActions{display:flex;align-items:center}.topbar{min-height:34px;gap:12px;margin-bottom:12px}.userTopbar{justify-content:flex-end}.brandMark{width:38px;height:38px;display:grid;place-items:center;border-radius:8px;background:var(--brand);color:#fff;font-size:.82rem;font-weight:900}.brandCopy{display:grid;gap:1px}.brandCopy strong{font-size:.98rem}.brandCopy span,.topbarStatus{color:var(--muted);font-size:.82rem;font-weight:700}.topbarStatus{margin-left:auto;display:inline-flex;align-items:center;gap:8px;min-height:34px;border:1px solid rgba(136,135,128,.42);border-radius:999px;background:#fff;padding:0 12px}.statusDot{width:8px;height:8px;border-radius:999px}.statusDot.online{background:#d85a30}.statusDot.offline{background:#993c1d}.pageHeader{justify-content:space-between;gap:20px;margin-bottom:22px}.pageTitleGroup{display:flex;align-items:center;gap:14px;min-width:0}.pageLogoMark{width:72px;height:72px;display:grid;place-items:center;flex:0 0 auto}.pageLogo{width:62px;height:62px;display:block;object-fit:contain}h1{font-weight:860;letter-spacing:0}.eyebrow{margin:0 0 5px;color:var(--muted);font-size:.76rem;font-weight:850;letter-spacing:0;text-transform:uppercase}h1,h2,h3,p{margin:0}h1{color:#1a1a18;font-size:clamp(2rem,3vw,3rem);line-height:1}h2{color:var(--ink);font-size:1.03rem}h3{color:#1a1a18;font-size:.78rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.headerActions,.formActions{gap:10px}.primaryButton,.secondaryButton,.ghostButton,.iconButton,.dangerButton{border:1px solid transparent;border-radius:7px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;font-weight:820;transition:transform .14s ease,border-color .14s ease,background .14s ease,box-shadow .14s ease}.primaryButton{background:var(--coral);color:#1a1a18;box-shadow:0 10px 24px #d85a3038}.primaryButton:hover{background:var(--coral-dark);color:#fff}.secondaryButton,.ghostButton,.iconButton{background:#fff;border-color:var(--line);color:#1a1a18}.ghostButton{min-height:34px}.iconButton{width:36px;height:36px;padding:0}.primaryButton:hover,.secondaryButton:hover,.ghostButton:hover,.iconButton:hover,.dangerButton:hover{transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.55;transform:none}.notice,.errorBox{border-radius:7px;margin-bottom:14px;padding:12px 14px;font-weight:760}.notice{background:#faece7;border:1px solid rgba(216,90,48,.28);color:#993c1d}.errorBox{background:#faece7;border:1px solid rgba(216,90,48,.36);color:#993c1d}.entryForm,.tableSection,.fxSection,.adminRolesSection{background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 18px 46px #1a1a1814}.entryForm,.fxSection,.tableSection,.adminRolesSection{padding:18px}.formHeader,.sectionHeader{justify-content:space-between;gap:12px;margin-bottom:16px}.formHeader p,.sectionHeader p{color:var(--muted);font-size:.88rem;margin-top:4px}.periodSelectorWrap,.periodReadOnly{width:min(520px,100%);display:grid;gap:8px;margin-bottom:14px}.periodLockedValue{min-height:54px;display:grid;gap:2px;justify-content:start;border:1px solid rgba(136,135,128,.48);border-radius:8px;background:#f4f2ed;padding:10px 12px}.periodLockedValue span{color:#888780;font-size:.72rem;font-weight:850}.periodLockedValue strong{color:#1a1a18;font-size:1rem;font-weight:850;text-transform:capitalize}.periodSelectorHeader{min-height:38px;display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px;color:#1a1a18}.periodSelectorHeader svg{color:var(--accent)}.periodSelectorHeader span{color:#888780;font-size:.75rem;font-weight:850}.periodSelectorHeader strong{justify-self:start;overflow:hidden;color:#1a1a18;font-size:1rem;font-weight:850;text-overflow:ellipsis;white-space:nowrap;text-transform:capitalize}.periodSplit{display:grid;grid-template-columns:180px minmax(220px,1fr);gap:10px}.periodSelectUnit{position:relative;min-width:0}.periodSelector{width:100%;min-height:54px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid rgba(216,90,48,.34);border-radius:8px;background:linear-gradient(180deg,#fff,#f4f2ed);box-shadow:0 12px 30px #1a1a180f,inset 0 1px #fff;padding:9px 12px;color:#1a1a18;cursor:pointer;text-align:left;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.periodSelector:hover,.periodSelector.open{border-color:#d85a308f;box-shadow:0 16px 36px #1a1a181a,inset 0 1px #fff;transform:translateY(-1px)}.periodSelector:focus-visible{border-color:var(--brand);outline:3px solid rgba(216,90,48,.16)}.periodSelector>svg{color:var(--accent)}.periodSelector span{display:grid;gap:2px;min-width:0}.periodSelector small{color:#888780;font-size:.72rem;font-weight:850}.periodSelector strong{overflow:hidden;color:#1a1a18;font-size:1rem;font-weight:850;text-overflow:ellipsis;white-space:nowrap;text-transform:capitalize}.periodMenu{position:absolute;z-index:35;top:calc(100% + 8px);left:0;width:100%;max-height:292px;overflow:auto;border:1px solid rgba(136,135,128,.55);border-radius:8px;background:#fff;box-shadow:0 24px 56px #1a1a182e;padding:7px}.periodMenu.compact{max-height:238px}.periodOption{width:100%;min-height:40px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;border:0;border-radius:6px;background:transparent;color:#1a1a18;padding:0 10px;text-align:left}.periodOption span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:720;text-transform:capitalize}.periodOption small{color:#888780;font-size:.76rem;font-weight:850}.periodOption:hover{background:#faece7}.periodOption.selected{background:var(--brand);color:#fff}.periodOption.selected small{color:#faece7}.formSections{display:grid;gap:14px}.formHeaderActions{display:flex;align-items:center;gap:8px}.importCsvButton{color:var(--brand);border-color:#d85a3052;background:#faece7}.formSection{position:relative;display:grid;gap:14px;border:1px solid rgba(136,135,128,.34);border-radius:8px;background:linear-gradient(180deg,#ffffffeb,#f4f2edc7);padding:18px 18px 20px;box-shadow:inset 0 1px #ffffffb8}.formSection:before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:3px;border-radius:0 3px 3px 0;background:var(--accent)}.formGrid,.operationPrimaryRow,.operationFeeRow,.operationSecondaryRow,.fxGrid{display:grid;gap:14px;align-items:start}.formGrid{grid-template-columns:repeat(6,minmax(0,1fr))}.operationRows{display:grid;gap:14px}.operationPrimaryRow{grid-template-columns:repeat(5,minmax(0,1fr))}.operationFeeRow{grid-template-columns:repeat(3,minmax(0,1fr));max-width:760px}.operationSecondaryRow{grid-template-columns:repeat(3,minmax(0,1fr))}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field span,.feePreview span,.fxSavedState span{color:#888780;font-size:.76rem;font-weight:850;text-transform:none}.field>span>small{display:inline-flex;align-items:center;min-height:18px;margin-left:5px;border:1px solid rgba(216,90,48,.25);border-radius:999px;background:#faece7;color:#993c1d;padding:0 7px;font-size:.62rem;font-weight:900;letter-spacing:.03em;text-transform:uppercase;vertical-align:middle}.field .fieldLabelWithHelp{display:flex;align-items:center;gap:5px}.fieldHelp{position:relative;display:inline-flex}.fieldHelpButton{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:0;border-radius:50%;background:transparent;color:#77756d;cursor:help}.fieldHelpButton:hover,.fieldHelpButton:focus-visible{background:#f1f0eb;color:#1d1d1b;outline:none}.field .fieldHelpTooltip{position:absolute;z-index:20;bottom:calc(100% + 9px);left:50%;display:flex;visibility:hidden;width:min(430px,calc(100vw - 32px));padding:14px;transform:translate(-50%) translateY(4px);flex-direction:column;gap:9px;border:1px solid #deddd6;border-radius:10px;background:#fff;color:#34332f;font-size:.76rem;font-weight:500;line-height:1.45;box-shadow:0 10px 30px #1d1d1b29;opacity:0;pointer-events:none;transition:opacity .15s ease,transform .15s ease,visibility .15s}.field .fieldHelpTooltip strong{color:#1d1d1b;font-weight:800}.fieldHelp:hover .fieldHelpTooltip,.fieldHelp:focus-within .fieldHelpTooltip{visibility:visible;transform:translate(-50%) translateY(0);opacity:1}.readOnlyNotice{display:flex;align-items:center;gap:10px;margin-bottom:20px;border:1px solid rgba(216,90,48,.34);border-radius:8px;background:#faece7;padding:14px 16px;color:#1a1a18}.readOnlyNotice span{color:#6f6d66;font-size:.86rem}select,input,textarea{width:100%;border:1px solid rgba(136,135,128,.62);border-radius:7px;background:var(--field);color:var(--ink)}select,input{min-height:44px;padding:0 11px}textarea{min-height:86px;padding:11px;resize:vertical}select:hover,input:hover,textarea:hover,.comboBox:hover,.selectShell:hover,.numberInput:hover{border-color:#888780}select:focus,input:focus,textarea:focus{border-color:var(--brand);outline:3px solid rgba(216,90,48,.18)}.selectShell,.comboBox,.numberInput{min-height:44px;border:1px solid rgba(136,135,128,.62);border-radius:7px;background:linear-gradient(180deg,#fff,#f4f2ed);box-shadow:inset 0 1px #ffffffbf,0 8px 18px #1a1a1809;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.selectShell{position:relative;display:flex;align-items:center}.selectShell select{appearance:none;min-height:42px;border:0;background:transparent;padding-right:38px;font-weight:500;outline:0}.selectShell>svg{position:absolute;right:12px;color:#888780;pointer-events:none}.selectShell:focus-within,.comboBox.open,.numberInput:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px #d85a3029,0 14px 28px #1a1a1814;background:#fff}.selectShell:has(select:disabled){background:#f4f2ed;box-shadow:none}.selectShell select:disabled{color:#888780}.comboField{position:relative}.comboBox{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 10px}.comboBox input{min-height:40px;border:0;background:transparent;padding:0;outline:0}.comboBox svg{color:#888780}.comboMenu{position:absolute;z-index:30;top:calc(100% + 8px);left:0;right:0;max-height:260px;overflow:auto;border:1px solid rgba(136,135,128,.55);border-radius:8px;background:#fff;box-shadow:0 24px 50px #1a1a182e;padding:6px}.comboOption{width:100%;min-height:36px;border:0;border-radius:6px;background:transparent;color:#1a1a18;display:flex;align-items:center;justify-content:flex-start;text-align:left;padding:0 10px;font-size:.86rem;font-weight:500}.comboOption:hover{background:#faece7}.comboOption.selected{background:var(--brand);color:#fff}.comboEmpty{min-height:38px;display:flex;align-items:center;color:#888780;font-size:.84rem;font-weight:750;padding:0 10px}.numberInput{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 10px}.numberInput input{border:0;background:transparent;padding:0;outline:0}.numberInput small{color:#888780;font-weight:820}.currencyPrefix{min-width:max-content}.segmented{min-height:44px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border:1px solid rgba(136,135,128,.62);border-radius:7px;background:#f4f2ed;padding:3px}.segmented button{border:0;border-radius:5px;background:transparent;color:#888780;font-weight:850}.segmented button.active{background:var(--brand);color:#fff}.feePreview{min-height:44px;align-self:end;display:flex;flex-direction:column;justify-content:center;gap:2px;border:1px solid rgba(136,135,128,.55);border-radius:7px;background:#f4f2ed;color:#888780;padding:7px 11px}.feePreview strong{font-size:.95rem;font-weight:850;color:#1a1a18}.billingRow{border-top:0;margin-top:0;padding-top:0}.fieldWide{grid-column:span 2}.purchaseOrderField{grid-column:1}.ocFileField{grid-column:2}.visuallyHiddenFileInput{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.customFileInput{width:100%;min-height:44px;display:flex;align-items:center;justify-content:flex-start;gap:9px;border:1px solid rgba(136,135,128,.62);border-radius:7px;background:linear-gradient(180deg,#fff,#f4f2ed);color:#1a1a18;padding:0 11px;font-weight:760}.customFileInput svg{color:var(--brand)}.customFileInput:hover{border-color:#888780;background:#fff}.customFileInput:focus-visible{border-color:var(--brand);outline:3px solid rgba(216,90,48,.18)}.selectedFileName{min-width:0;display:grid;gap:7px;color:#888780;font-size:.75rem}.selectedFileLabel{min-width:0;display:flex;align-items:center;gap:6px}.selectedFileLabel span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:none}.downloadAttachmentButton{width:fit-content;min-height:32px;display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(216,90,48,.32);border-radius:6px;background:#faece7;color:#993c1d;padding:0 10px;font-size:.75rem;font-weight:850}.downloadAttachmentButton:hover{border-color:var(--brand);background:#fff}.noFileSelected{color:#888780;font-size:.75rem}.formActions{justify-content:flex-end;margin-top:18px}.adminGpPanel{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);align-items:end;gap:18px;margin-bottom:18px;border:1px solid rgba(136,135,128,.42);border-radius:8px;background:linear-gradient(135deg,#fff,#faece7);box-shadow:0 16px 36px #1a1a180f;padding:16px 18px}.adminGpPanel h2{font-size:1rem}.adminGpPanel p{color:var(--muted);font-size:.88rem;margin-top:4px}.adminRolesSection{margin-bottom:18px}.roleUsersGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.roleUserRow{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,240px);align-items:center;gap:12px;border:1px solid rgba(136,135,128,.34);border-radius:8px;background:#fff;padding:12px}.roleUserIdentity{min-width:0;display:flex;align-items:center;gap:10px}.roleUserIdentity svg{flex:0 0 auto;color:var(--accent)}.roleUserIdentity div{min-width:0;display:grid;gap:2px}.roleUserIdentity strong,.roleUserIdentity span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roleUserIdentity strong{font-size:.9rem}.roleUserIdentity span{color:var(--muted);font-size:.78rem;font-weight:760}.roleSelectField{gap:5px}.roleSelectField select{font-weight:760}.tableBadge svg{flex:0 0 auto}.metricsGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.metricTile{min-height:88px;display:grid;grid-template-columns:auto 1fr;align-items:start;gap:8px 12px;border:1px solid rgba(136,135,128,.42);border-radius:8px;background:#fff;padding:15px;box-shadow:0 16px 36px #1a1a180f}.metricTile svg{color:var(--accent)}.metricTile span{color:var(--muted);font-size:.82rem;font-weight:820}.metricTile strong{grid-column:1/-1;color:#1a1a18;font-size:1.35rem;line-height:1}.metricTile:first-child{background:var(--graphite);border-color:var(--graphite);box-shadow:0 18px 42px #1a1a1829}.metricTile:first-child span,.metricTile:first-child svg{color:#ffffffad}.metricTile:first-child strong{color:#fff}.metricTile:nth-child(3){background:var(--coral-soft);border-color:var(--coral-soft);box-shadow:none}.metricTile:nth-child(3) span,.metricTile:nth-child(3) svg{color:#993c1d}.metricTile:nth-child(3) strong{color:#4a1b0c}.fxSection{margin-top:20px}.fxControls{display:grid;grid-template-columns:minmax(180px,260px) auto;align-items:end;gap:14px;margin-bottom:14px}.fxGrid{grid-template-columns:repeat(4,minmax(0,1fr))}.fxSavedState{min-height:44px;display:flex;flex-direction:column;justify-content:center;gap:3px;border:1px solid var(--line);border-radius:7px;background:#f4f2ed;padding:7px 11px;color:#1a1a18}.fxSavedState strong{font-size:.9rem}.tableSection{margin-top:20px}.recordsToolbar{display:grid;grid-template-columns:minmax(320px,520px);margin:-4px 0 14px}.recordsToolbar .periodSelectorWrap{margin-bottom:0}.tableBadge{min-height:30px;display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;color:#888780;background:#fff;padding:0 10px;font-size:.78rem;font-weight:850}.tableWrap{overflow:auto;border:1px solid rgba(136,135,128,.44);border-radius:8px;max-height:560px}table{width:100%;min-width:1440px;border-collapse:separate;border-spacing:0}th,td{border-bottom:1px solid rgba(136,135,128,.24);padding:11px 10px;text-align:left;vertical-align:middle;white-space:nowrap}th{position:sticky;top:0;z-index:1;background:#f4f2ed;color:#888780;font-size:.72rem;font-weight:900;text-transform:uppercase}td{color:#1a1a18;font-size:.86rem}tbody tr:hover td{background:#faece7}tr:last-child td{border-bottom:0}.strongCell,.moneyCell{font-weight:850}.geoChip,.feeChip,.statusChip{display:inline-flex;align-items:center;justify-content:center;min-height:26px;border-radius:999px;padding:0 9px;font-size:.78rem;font-weight:900}.geoChip,.feeChip.fixed,.statusChip.draft{background:#f4f2ed;color:#1a1a18}.feeChip.variable{background:#faece7;color:#993c1d}.statusChip.confirmed{background:#1a1a18;color:#fff}.emptyCell{color:var(--muted);padding:28px 10px;text-align:center}.rowActions{display:inline-flex;align-items:center;gap:7px}.dangerIconButton{color:var(--danger);border-color:#ead0ca;background:#fff7f5}.dangerIconButton:hover{background:#ffece7;border-color:#e0aaa0}.holdingGroups{display:grid;gap:10px}.holdingGroup{overflow:hidden;border:1px solid rgba(136,135,128,.42);border-radius:8px;background:#fff;box-shadow:0 12px 28px #1a1a180b}.holdingGroupSummary{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:none;background:linear-gradient(180deg,#fff,#f9f8f5);padding:12px 14px}.holdingGroupSummary::-webkit-details-marker{display:none}.holdingGroupSummary:before{content:"›";flex:0 0 auto;color:var(--brand);font-size:1.5rem;font-weight:700;transform:rotate(0);transition:transform .14s ease}.holdingGroup[open]>.holdingGroupSummary:before{transform:rotate(90deg)}.holdingGroupIdentity{min-width:0;display:grid;gap:3px;margin-right:auto}.holdingGroupIdentity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem}.holdingGroupIdentity span{color:var(--muted);font-size:.76rem;font-weight:760}.holdingGroupCounts{display:flex;align-items:center;justify-content:flex-end;gap:7px}.holdingCount{min-height:26px;display:inline-flex;align-items:center;border-radius:999px;padding:0 9px;font-size:.72rem;font-weight:900}.holdingCount.confirmed{background:#1a1a18;color:#fff}.holdingCount.draft{background:#f4f2ed;color:#1a1a18}.confirmHoldingButton{min-height:34px;display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(216,90,48,.34);border-radius:7px;background:#faece7;color:#993c1d;padding:0 11px;font-size:.76rem;font-weight:880}.confirmHoldingButton:hover{border-color:var(--brand);background:#fff}.holdingTableWrap{max-height:440px;border-width:1px 0 0;border-radius:0}.holdingEmptyState{display:grid;place-items:center;min-height:110px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted);font-size:.88rem;font-weight:760}.modalOverlay{position:fixed;inset:0;z-index:60;display:grid;place-items:center;background:#1a1a186b;padding:20px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.confirmModal{width:min(460px,100%);display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;border:1px solid rgba(136,135,128,.48);border-radius:8px;background:#fff;box-shadow:0 30px 80px #1a1a1847;padding:18px}.modalIcon{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;background:#faece7;color:var(--danger)}.modalCopy{display:grid;gap:7px}.modalCopy h2{font-size:1.05rem}.modalCopy p{color:#888780;font-size:.9rem;line-height:1.45}.modalCopy strong{color:#1a1a18}.modalActions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px;margin-top:6px}.dangerButton{border-color:var(--danger);background:var(--danger);color:#fff}.dangerButton:hover{background:#7d2d18}.toastStack{position:fixed;right:20px;bottom:20px;z-index:70;display:grid;gap:10px;pointer-events:none}.toastMessage{min-height:42px;display:flex;align-items:center;border:1px solid rgba(26,26,24,.18);border-radius:8px;background:#1a1a18;color:#fff;box-shadow:0 18px 42px #1a1a1838;padding:0 14px;font-size:.9rem;font-weight:820}.csvModalOverlay{place-items:stretch center;overflow:auto}.csvImportModal{width:min(1120px,100%);max-height:calc(100vh - 40px);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;align-self:center;overflow:hidden;border:1px solid rgba(136,135,128,.48);border-radius:10px;background:#f4f2ed;box-shadow:0 30px 80px #1a1a184d}.csvModalHeader,.csvModalFooter{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;padding:16px 18px}.csvModalHeader{border-bottom:1px solid var(--line)}.csvModalFooter{justify-content:flex-end;border-top:1px solid var(--line)}.csvModalTitle{display:flex;align-items:center;gap:11px}.csvModalTitle>svg{color:var(--brand)}.csvModalTitle h2{font-size:1.1rem}.csvModalTitle p{margin-top:2px;color:var(--muted);font-size:.82rem}.csvBulkActions{display:flex;justify-content:flex-end;gap:9px;border-bottom:1px solid var(--line);background:#fff;padding:11px 18px}.csvRecordList{display:grid;gap:10px;overflow:auto;padding:14px}.csvRecordCard{display:grid;gap:12px;border:1px solid rgba(136,135,128,.38);border-radius:8px;background:#fff;padding:14px}.csvRecordCard.invalid,.csvRecordCard.error{border-color:#e0aaa0;background:#fff8f6}.csvRecordCard.draft,.csvRecordCard.confirmed{opacity:.72}.csvRecordHeader,.csvRecordHeader>div,.csvRecordActions{display:flex;align-items:center;gap:8px}.csvRecordHeader{justify-content:space-between}.csvRecordHeader>div>svg{color:#3f7a52}.csvRecordCard.invalid .csvRecordHeader>div>svg,.csvRecordCard.error .csvRecordHeader>div>svg{color:var(--danger)}.csvRecordStatus{min-height:24px;display:inline-flex;align-items:center;border-radius:999px;background:#edf6ef;color:#326442;padding:0 9px;font-size:.7rem;font-weight:900;text-transform:uppercase}.csvRecordStatus.invalid,.csvRecordStatus.error{background:#ffece7;color:var(--danger)}.csvRecordStatus.saving{background:#f1eee8;color:var(--muted)}.csvRecordStatus.draft{background:#f4f2ed;color:#1a1a18}.csvRecordStatus.confirmed{background:#1a1a18;color:#fff}.csvRecordFields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.csvRecordFields>div{min-width:0;display:grid;gap:2px;border:1px solid rgba(136,135,128,.24);border-radius:6px;background:#f9f8f5;padding:8px 9px}.csvRecordFields span{color:var(--muted);font-size:.68rem;font-weight:850}.csvRecordFields strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem}.csvRecordError{border-radius:6px;background:#ffece7;color:var(--danger);padding:9px 10px;font-size:.8rem;font-weight:760}.csvRecordActions{justify-content:flex-end}.csvRecordActions button{min-height:34px;font-size:.78rem}.csvRecordDetails{border-top:1px solid rgba(136,135,128,.24);padding-top:9px}.csvRecordDetails summary{width:fit-content;cursor:pointer;color:var(--brand);font-size:.76rem;font-weight:850}.csvRecordFullFields{margin-top:9px}.csvRecordFullFields .csvCommentField{grid-column:span 2}.csvRecordFullFields .csvCommentField strong{white-space:normal}.csvEditForm{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border-top:1px solid var(--line);padding-top:12px}.csvEditForm label{min-width:0;display:grid;gap:5px}.csvEditForm label>span{color:var(--muted);font-size:.7rem;font-weight:850}.csvEditForm input{min-height:38px;font-size:.8rem}.csvEditWide{grid-column:span 2}.csvEditActions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px;margin-top:3px}.csvEditActions button{min-height:34px;font-size:.78rem}@media(max-width:1320px){.operationPrimaryRow{grid-template-columns:repeat(4,minmax(0,1fr))}.operationFeeRow{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}.fxGrid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1180px){.formGrid,.operationPrimaryRow,.operationFeeRow,.operationSecondaryRow,.fxGrid,.metricsGrid,.roleUsersGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.adminGpPanel{grid-template-columns:1fr}.fieldWide{grid-column:span 2}}@media(max-width:720px){.pageTitleGroup{gap:12px}.pageLogoMark{width:58px;height:58px}.pageLogo{width:50px;height:50px}.appShell{width:min(100% - 20px,1560px);padding-top:12px}.topbar,.pageHeader,.headerActions{align-items:stretch;flex-direction:column}.topbarStatus{margin-left:0;width:fit-content}.periodSplit,.recordsToolbar,.formGrid,.operationPrimaryRow,.operationFeeRow,.operationSecondaryRow,.fxControls,.fxGrid,.metricsGrid,.roleUsersGrid,.roleUserRow,.csvRecordFields,.csvEditForm{grid-template-columns:1fr}.purchaseOrderField,.ocFileField,.csvEditWide{grid-column:1}.fieldWide{grid-column:1/-1}.pageHeader h1{font-size:2rem}.modalActions,.csvBulkActions{flex-direction:column-reverse}.modalActions button,.csvBulkActions button{width:100%}.csvImportModal{max-height:calc(100vh - 20px)}.csvModalOverlay{padding:10px}.holdingGroupSummary{align-items:flex-start;flex-wrap:wrap}.holdingGroupCounts{width:100%;flex-wrap:wrap;justify-content:flex-start;padding-left:24px}.confirmHoldingButton{width:100%;justify-content:center}}.topbarAuth{margin-left:auto;display:inline-flex;align-items:center;gap:10px;min-height:34px;border:1px solid rgba(136,135,128,.42);border-radius:999px;background:#fff;padding:0 8px 0 12px;color:var(--muted);font-size:.82rem;font-weight:800}.roleBadge{min-height:24px;display:inline-flex;align-items:center;border:1px solid rgba(216,90,48,.28);border-radius:999px;background:#faece7;color:var(--brand);padding:0 9px;font-size:.72rem;font-weight:900}.authShell{min-height:100vh;padding:18px 0 52px;background:linear-gradient(180deg,#1a1a180b,#f4f2ed00 280px),var(--warm)}.authFrame{width:min(1560px,calc(100% - 32px));min-height:calc(100vh - 70px);display:grid;margin:0 auto}.authTopbar{margin-bottom:0}.clerkAuthPanel{min-height:calc(100vh - 70px);display:grid;place-items:center;padding:36px 0}.clerkAuthPanel .cl-rootBox{width:min(440px,100%)}.clerkAuthPanel .cl-cardBox{width:100%;box-shadow:0 26px 70px #1a1a1829}.clerkAuthPanel .cl-card{position:relative;border:1px solid rgba(136,135,128,.42);background:#fff;padding-top:146px}.clerkAuthPanel .cl-card:before{content:"";position:absolute;top:26px;left:50%;width:min(310px,78%);height:96px;transform:translate(-50%);background:url(/winclap-lockup.png) center/contain no-repeat}.clerkAuthPanel .cl-logoImage{display:none}.clerkAuthPanel .cl-headerTitle{color:#1a1a18;font-size:0;font-weight:850;letter-spacing:0;line-height:1.15}.clerkAuthPanel .cl-headerTitle:after{content:"Sign in to Winclap Finance";font-size:1.62rem}.clerkAuthPanel .cl-headerSubtitle{color:var(--muted);font-size:0;font-weight:650;line-height:1.35}.clerkAuthPanel .cl-headerSubtitle:after{content:"Use your account to continue";font-size:.9rem}.clerkAuthPanel .cl-formButtonPrimary{min-height:42px;background:var(--coral);color:#1a1a18;box-shadow:0 10px 24px #d85a3038;font-weight:820}.clerkAuthPanel .cl-formFieldInput{min-height:44px;border-color:#8887809e;background:var(--field);box-shadow:inset 0 1px #ffffffbf}.clerkAuthPanel .cl-formFieldInput:focus{box-shadow:0 0 0 3px #d85a3029}.clerkAuthPanel .cl-footerActionText{font-size:0}.clerkAuthPanel .cl-footerActionText:after{content:"Need an account?";font-size:.85rem}.clerkAuthPanel .cl-footerActionLink{font-size:0}.clerkAuthPanel .cl-footerActionLink:after{content:"Contact an administrator";font-size:.85rem}.clerkAuthPanel .cl-footerActionLink,.clerkAuthPanel .cl-identityPreviewEditButton{color:var(--brand);font-weight:800}.editRequestsGrid{display:grid;gap:10px}.editRequestCard{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:15px}.editRequestCard>div{display:grid;gap:5px}.editRequestCard h3{font-size:1rem}.editRequestCard p,.editRequestCard small{color:var(--muted)}.editRequestCard p{font-size:.84rem}.editRequestCard small{font-size:.72rem}@media(max-width:720px){.topbarAuth{margin-left:0;width:fit-content}.authShell{padding-top:12px}.authFrame{width:min(100% - 20px,1560px)}.authTopbar{align-items:flex-start;flex-direction:row}.clerkAuthPanel{padding:24px 0}}
