.ledger-memo-cell textarea { width:100%; min-height:44px; height:44px; resize:vertical; font:inherit; color:var(--color-text); border:1px solid var(--color-border); border-radius:4px; padding:6px 8px; background:var(--color-surface); }
.ledger-memo-cell-footer { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:4px; }
.ledger-memo-cell-footer small { font-size:12px; color:var(--color-text-muted); }
.ledger-memo-cell .form-error { white-space:normal; margin:4px 0; }
.ledger-memo-help { display:flex; align-items:center; gap:12px; padding:8px 0; }
.ledger-memo-help p { margin:0; font-size:12px; color:var(--color-text-muted); }
.ledger-memo-conflict { white-space:pre-wrap; overflow-wrap:anywhere; padding-top:4px; }
.ledger-memo-conflict p { margin:4px 0; font-size:12px; }

/* Operational memos remain beside the list row, independent of fee inputs. */
.f10-grid .f10-memo-column { min-width: 220px; width: 240px; }
.f10-grid .f10-memo-column textarea { box-sizing: border-box; width: 100%; min-height: 74px; resize: vertical; white-space: pre-wrap; overflow-wrap: anywhere; scroll-margin-inline-start:184px; }
.f10-grid .f10-memo-save { min-width: 150px; }
.f10-grid .f10-memo-save small { white-space: normal; overflow-wrap: anywhere; }
.f10-grid .f10-memo-latest { white-space: pre-wrap; overflow-wrap: anywhere; }
.f10-grid .f10-memo-feedback { white-space:normal; overflow-wrap:anywhere; }
.f10-grid .f10-memo-feedback details { min-width:0; }
.f10-scroll-workspace { min-width:0; }
.f10-scroll-workspace .f10-table-scroll { max-height:min(70dvh,720px); }
.f10-top-scrollbar-wrap { position:sticky; top:0; z-index:5; padding:6px 8px 4px; background:var(--color-surface); border:1px solid var(--color-border); border-bottom:0; border-radius:8px 8px 0 0; }
.f10-top-scrollbar-wrap[hidden] { display:none; }
.f10-top-scrollbar-wrap>span { display:block; font-size:12px; color:var(--color-text-muted); }
.f10-top-scrollbar { height:24px; overflow-x:scroll; overflow-y:hidden; overscroll-behavior-x:contain; scrollbar-width:auto; scrollbar-color:var(--color-text-secondary) var(--color-surface-muted); }
.f10-top-scrollbar::-webkit-scrollbar { display:block; height:16px; }
.f10-top-scrollbar::-webkit-scrollbar-track { background:var(--color-surface-muted); border-radius:8px; }
.f10-top-scrollbar::-webkit-scrollbar-thumb { background:var(--color-text-secondary); border:3px solid var(--color-surface-muted); border-radius:8px; }
.f10-top-scrollbar::-webkit-scrollbar-thumb:hover { background:var(--color-primary); }
.f10-top-scrollbar-control { position:relative; height:24px; }
.f10-top-scrollbar-control .f10-top-scrollbar { position:absolute; inset:0; opacity:0; }
.f10-top-scrollbar-control:focus-within { outline:3px solid var(--color-primary); outline-offset:2px; }
.f10-seasonal input.f10-horizontal-range { appearance:none; -webkit-appearance:none; position:absolute; inset:0; display:block; width:100%; height:24px; min-height:24px; margin:0; padding:0; border:0; border-radius:0; background:transparent; cursor:pointer; touch-action:pan-y; }
.f10-horizontal-range::-webkit-slider-runnable-track { height:8px; border-radius:4px; background:var(--color-control-border,var(--color-border)); }
.f10-horizontal-range::-webkit-slider-thumb { appearance:none; -webkit-appearance:none; box-sizing:border-box; width:24px; height:24px; margin-top:-8px; border:2px solid var(--color-surface); border-radius:50%; background:var(--color-primary); }
.f10-horizontal-range::-moz-range-track { height:8px; border-radius:4px; background:var(--color-control-border,var(--color-border)); }
.f10-horizontal-range::-moz-range-thumb { box-sizing:border-box; width:24px; height:24px; border:2px solid var(--color-surface); border-radius:50%; background:var(--color-primary); }
.f10-scroll-workspace .f10-grid input,.f10-scroll-workspace .f10-grid select,.f10-scroll-workspace .f10-grid textarea,.f10-scroll-workspace .f10-grid button { scroll-margin-block-start:64px; }
/* A fixed name plus the memo exceeds phone width and obscures keyboard focus. */
@media(max-width:700px) {
  .f10-grid-list .f10-name { position:static; left:auto; box-shadow:none; }
  .f10-grid-list thead .f10-name { position:sticky; top:0; }
  .f10-grid-list .f10-memo-column textarea { scroll-margin-inline-start:0; }
}
