:root{color:#1f2824;background:#f5f3ee;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;--ink:#1f2824;--muted:#68736e;--line:#ded8ce;--line-strong:#cec6ba;--panel:#fffdf8;--panel-soft:#f9f6ef;--field:#fbfaf6;--brand:#173d35;--brand-2:#25584d;--accent:#b45f3b;--danger:#9a2f24}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,#173d3513,#f5f3ee00 280px),#f5f3ee}button,input,select,textarea{font:inherit}button{cursor:pointer}.appShell{width:min(1560px,calc(100% - 32px));margin:0 auto;padding:18px 0 52px}.topbar,.pageHeader,.formHeader,.sectionHeader,.headerActions,.formActions{display:flex;align-items:center}.topbar{min-height:62px;gap:12px;margin-bottom:24px;border-bottom:1px solid rgba(49,61,55,.14)}.brandMark{width:38px;height:38px;display:grid;place-items:center;border-radius:8px;background:var(--brand);color:#f8efe2;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(49,61,55,.13);border-radius:999px;background:#ffffffc7;padding:0 12px}.statusDot{width:8px;height:8px;border-radius:999px}.statusDot.online{background:#16855d}.statusDot.offline{background:#b4532f}.pageHeader{justify-content:space-between;gap:20px;margin-bottom:18px}.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:#15221e;font-size:clamp(2rem,3vw,3rem);line-height:1}h2{color:var(--ink);font-size:1.03rem}h3{color:#394841;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(--brand);color:#fff;box-shadow:0 10px 24px #173d3529}.primaryButton:hover{background:var(--brand-2)}.secondaryButton,.ghostButton,.iconButton{background:#fff;border-color:var(--line);color:#2a342f}.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:#fff7df;border:1px solid #e8cf88;color:#6c5315}.errorBox{background:#fff0ea;border:1px solid #e6a58f;color:#8a2f1c}.entryForm,.tableSection,.fxSection{background:#fffffff0;border:1px solid var(--line);border-radius:8px;box-shadow:0 18px 46px #2f353114}.entryForm,.fxSection,.tableSection{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{width:min(520px,100%);display:grid;gap:8px;margin-bottom:14px}.periodSelectorHeader{min-height:38px;display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px;color:#26312c}.periodSelectorHeader svg{color:var(--accent)}.periodSelectorHeader span{color:#6b6258;font-size:.75rem;font-weight:850}.periodSelectorHeader strong{justify-self:start;overflow:hidden;color:#1f2824;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(180,95,59,.24);border-radius:8px;background:linear-gradient(180deg,#fffaf2,#f6efe4);box-shadow:0 12px 30px #3a302512,inset 0 1px #ffffffc7;padding:9px 12px;color:#26312c;cursor:pointer;text-align:left;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.periodSelector:hover,.periodSelector.open{border-color:#b45f3b7a;box-shadow:0 16px 36px #3a30251a,inset 0 1px #ffffffc7;transform:translateY(-1px)}.periodSelector:focus-visible{border-color:var(--brand);outline:3px solid rgba(23,61,53,.13)}.periodSelector>svg{color:var(--accent)}.periodSelector span{display:grid;gap:2px;min-width:0}.periodSelector small{color:#6b6258;font-size:.72rem;font-weight:850}.periodSelector strong{overflow:hidden;color:#1f2824;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 #d9d0c2;border-radius:8px;background:#fffdf8;box-shadow:0 24px 56px #262d282e;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:#27332e;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:#7b817d;font-size:.76rem;font-weight:850}.periodOption:hover{background:#f2ecdf}.periodOption.selected{background:var(--brand);color:#fff}.periodOption.selected small{color:#d9eee6}.formSections{display:grid;gap:14px}.formSection{position:relative;display:grid;gap:14px;border:1px solid #e3ddd3;border-radius:8px;background:linear-gradient(180deg,#fffdf8e6,#f9f6efc2);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,.operationSecondaryRow,.fxGrid{display:grid;gap:14px;align-items:start}.formGrid{grid-template-columns:repeat(6,minmax(0,1fr))}.operationRows{display:grid;gap:0}.operationPrimaryRow{grid-template-columns:repeat(7,minmax(0,1fr))}.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:#53615a;font-size:.76rem;font-weight:850;text-transform:none}select,input,textarea{width:100%;border:1px solid #d6d0c4;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:#b8b0a4}select:focus,input:focus,textarea:focus{border-color:var(--brand);outline:3px solid rgba(23,61,53,.14)}.selectShell,.comboBox,.numberInput{min-height:44px;border:1px solid #d6d0c4;border-radius:7px;background:linear-gradient(180deg,#fffdf8,#f8f4ec);box-shadow:inset 0 1px #ffffffbf,0 8px 18px #353d3709;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:#6a746f;pointer-events:none}.selectShell:focus-within,.comboBox.open,.numberInput:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px #173d3521,0 14px 28px #32383414;background:#fffdf8}.selectShell:has(select:disabled){background:#eee8df;box-shadow:none}.selectShell select:disabled{color:#8b928e}.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:#6a746f}.comboMenu{position:absolute;z-index:30;top:calc(100% + 8px);left:0;right:0;max-height:260px;overflow:auto;border:1px solid #d8d0c3;border-radius:8px;background:#fffdf8;box-shadow:0 24px 50px #262d282e;padding:6px}.comboOption{width:100%;min-height:36px;border:0;border-radius:6px;background:transparent;color:#28332e;display:flex;align-items:center;justify-content:flex-start;text-align:left;padding:0 10px;font-size:.86rem;font-weight:500}.comboOption:hover{background:#f0eadf}.comboOption.selected{background:var(--brand);color:#fff}.comboEmpty{min-height:38px;display:flex;align-items:center;color:#727b75;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:#52615a;font-weight:820}.currencyPrefix{min-width:max-content}.segmented{min-height:44px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border:1px solid #d6d0c4;border-radius:7px;background:#f5f1e8;padding:3px}.segmented button{border:0;border-radius:5px;background:transparent;color:#53615a;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 #d8d3c8;border-radius:7px;background:#ece9e2;color:#68726d;padding:7px 11px}.feePreview strong{font-size:.95rem;font-weight:850;color:#3f4b46}.billingRow{border-top:0;margin-top:0;padding-top:0}.fieldWide{grid-column:span 2}.formActions{justify-content:flex-end;margin-top:18px}.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(47,59,53,.13);border-radius:8px;background:#ffffffc7;padding:15px;box-shadow:0 16px 36px #393d370f}.metricTile svg{color:var(--accent)}.metricTile span{color:var(--muted);font-size:.82rem;font-weight:820}.metricTile strong{grid-column:1/-1;color:#14231f;font-size:1.35rem;line-height:1}.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:#f8f4ec;padding:7px 11px;color:#4c5a54}.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:#53615a;background:#fbfaf6;padding:0 10px;font-size:.78rem;font-weight:850}.tableWrap{overflow:auto;border:1px solid #e2ddd3;border-radius:8px;max-height:560px}table{width:100%;min-width:1320px;border-collapse:separate;border-spacing:0}th,td{border-bottom:1px solid #ece7de;padding:11px 10px;text-align:left;vertical-align:middle;white-space:nowrap}th{position:sticky;top:0;z-index:1;background:#eee8dd;color:#53615a;font-size:.72rem;font-weight:900;text-transform:uppercase}td{color:#26312c;font-size:.86rem}tbody tr:hover td{background:#fbf8f1}tr:last-child td{border-bottom:0}.strongCell,.moneyCell{font-weight:850}.geoChip,.feeChip{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{background:#efe8da;color:#624f32}.feeChip.fixed{background:#e6f1ed;color:#176349}.feeChip.variable{background:#f9e8df;color:#9a462b}.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}.modalOverlay{position:fixed;inset:0;z-index:60;display:grid;place-items:center;background:#141c196b;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 #e2d5cc;border-radius:8px;background:#fffdf8;box-shadow:0 30px 80px #161f1b47;padding:18px}.modalIcon{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;background:#fff0ea;color:var(--danger)}.modalCopy{display:grid;gap:7px}.modalCopy h2{font-size:1.05rem}.modalCopy p{color:#596660;font-size:.9rem;line-height:1.45}.modalCopy strong{color:#1d2823}.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:#84271e}@media(max-width:1320px){.operationPrimaryRow{grid-template-columns:repeat(4,minmax(0,1fr))}.fxGrid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1180px){.formGrid,.operationPrimaryRow,.operationSecondaryRow,.fxGrid,.metricsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.fieldWide{grid-column:span 2}}@media(max-width:720px){.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,.operationSecondaryRow,.fxControls,.fxGrid,.metricsGrid{grid-template-columns:1fr}.fieldWide{grid-column:1/-1}.pageHeader h1{font-size:2rem}.modalActions{flex-direction:column-reverse}.modalActions button{width:100%}}
