.official-rates { margin:0 0 16px; padding:12px 14px; border:1px solid #dfe5eb; border-radius:6px; background:#fff; }
.official-rates-heading { font-weight:600; margin-bottom:7px; }
.official-rates-quotes { display:flex; flex-wrap:wrap; gap:8px 24px; }
.official-rates-quotes[hidden] { display:none; }
.official-rates-quotes > span { white-space:nowrap; }
.official-rates-note { margin-top:6px; font-size:12px; color:#667085; }
.official-rates-note a { color:inherit; }
.balance-fx { display:inline-block; border-bottom:1px dotted #8693a6; cursor:help; }
.balance-fx:focus-visible { outline:2px solid #007aff; outline-offset:3px; }
.balance-fx-tooltip { display:none; position:fixed; z-index:10000; box-sizing:border-box; width:260px; max-width:calc(100vw - 16px); padding:12px 14px; border:1px solid #dfe5eb; border-radius:8px; background:white; color:#20242a; box-shadow:0 5px 20px #0002; font-size:13px; line-height:1.6; font-weight:normal; white-space:normal; text-align:left; }
.balance-fx:hover .balance-fx-tooltip, .balance-fx:focus .balance-fx-tooltip, .balance-fx.is-open .balance-fx-tooltip { display:block; }
.balance-fx-tooltip .fx-equivalent { display:block; font-size:15px; font-weight:600; }
.balance-fx-tooltip .fx-date { display:block; margin-top:5px; color:#667085; font-size:11px; line-height:1.4; }

/* Official quotations sit to the right of the transaction form. */
.operation-entry-layout { display:flex; flex-wrap:wrap; align-items:stretch; gap:12px; }
.operation-entry-controls { flex:0 0 220px; min-width:0; }
.operation-entry-layout > .official-rates { flex:1 0 170px; min-width:0; margin:0; padding:0 0 0 12px; border:0; border-left:1px solid #ddd; border-radius:0; box-sizing:border-box; }
.operation-entry-layout .official-rates-heading { margin-bottom:12px; }
.operation-entry-layout .official-rates-quotes { flex-direction:column; gap:10px; }
.operation-entry-layout .official-rates-note { margin-top:12px; line-height:1.5; }

.dashboard-calendar-entry { display:flex; gap:20px; align-items:stretch; }
.calendar-card { flex:0 0 220px; border:1px solid #ddd; padding:10px; background:#fff; display:flex; flex-direction:column; }
.calendar-days { flex:none; }
.calendar-today { margin-top:auto; border-top:1px solid #e8e8e8; padding-top:12px; padding-bottom:2px; font-size:13px; line-height:1.5; color:#555; }
.operation-entry-card { flex:1; border:1px solid #ddd; padding:10px; background:#fff; }
