/* Shared disclosure controls: native keyboard behavior with a visible hit area. */
:root details>summary{display:flex;align-items:center;gap:12px;list-style:none;cursor:pointer;min-height:48px;padding:13px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface2);color:var(--text);font-weight:600;font-size:.9rem;line-height:1.8;transition:background .15s,border-color .15s;user-select:none}
details>summary::-webkit-details-marker{display:none}
details>summary::marker{content:""}
details>summary::after{content:"";flex:none;width:9px;height:9px;border-inline-end:2px solid var(--orange-dark);border-bottom:2px solid var(--orange-dark);transform:rotate(45deg);margin-inline-start:auto;margin-inline-end:4px;margin-top:-5px;transition:transform .15s}
details>summary:hover{border-color:var(--orange);background:color-mix(in srgb,var(--orange) 8%,var(--surface))}
details>summary:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
details[open]>summary{border-color:color-mix(in srgb,var(--orange) 45%,var(--line));background:color-mix(in srgb,var(--orange) 9%,var(--surface));margin-bottom:16px}
details[open]>summary::after{transform:rotate(225deg);margin-top:4px}
details.card.card-body{padding:16px}
details.card:not([open]){box-shadow:none}
details+details{margin-top:12px}
details>summary .icon{width:19px;height:19px;flex-shrink:0}
/* Common spacing across forms and later-added panels. */
.heading-actions,.toolbar,.toolbar>.row{gap:10px}
.toolbar{row-gap:12px;flex-wrap:wrap}
.ent-layout>.card-body{padding:22px}
.ent-layout h2{line-height:1.65}
.ent-layout .toolbar{margin-block:18px}
.ent-layout .table-wrap{margin-block:16px}
.ent-layout td .button+.button{margin-inline-start:6px}
.modal-body form>h3{font-size:1.05rem;margin:22px 0 14px;line-height:1.8}
.modal-body form>h3:first-child{margin-top:0}
.modal-body form>.field+.field,.modal-body form>.note+.field,.modal-body form>.field+.checkbox{margin-top:16px}
.modal-body form>.help-text,.modal-body form>.note{margin-block:16px}
.modal-body .field label:has(>select),.modal-body .field label:has(>textarea){display:flex;flex-direction:column;gap:7px}
.ent-st-summary strong,.ent-totals strong,.ledger-amount{font-variant-numeric:tabular-nums}
.button:focus-visible,.ent-select:focus-visible,.tab:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.button.small{min-height:34px}
@media(prefers-reduced-motion:reduce){details>summary,details>summary::after{transition:none}}
