/* Keep native form controls inside their grid cells, including Safari dates. */
#detail-card .field{min-width:0}
#detail-card [hidden]{display:none!important}
.invoice-entry .fields{align-items:start}
.invoice-entry .field input,.invoice-entry .field select,.invoice-entry .field textarea{min-width:0;max-width:100%;box-sizing:border-box}
.invoice-entry .invoice-header{row-gap:16px;column-gap:18px}
.invoice-entry .invoice-header .field input,.invoice-entry .invoice-header .field select{height:48px;min-height:48px;padding:10px 12px;border-radius:10px;line-height:1.4}
.invoice-entry .invoice-header .field input[type="date"]{appearance:none;-webkit-appearance:none;direction:ltr;text-align:start}
.invoice-entry input[type="date"]::-webkit-date-and-time-value{min-height:1.4em;text-align:start}
.invoice-entry .invoice-header .field select{appearance:none;-webkit-appearance:none;padding-inline-end:34px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%2331475a' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:16px;background-position:left 12px center}
.invoice-cost-toggle{margin:20px 0 16px;padding:0;overflow:clip}
.invoice-cost-toggle>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;list-style:none;padding:16px 18px;color:#163e5b;font-size:1rem;min-height:56px}
.invoice-cost-toggle>summary::-webkit-details-marker{display:none}
.invoice-cost-toggle>summary:focus-visible{outline:3px solid #ef9630;outline-offset:-3px;border-radius:14px}
.invoice-cost-toggle>summary:hover{background:#f3f8fc}
.invoice-cost-toggle>summary .cost-toggle-icon{display:grid;place-items:center;flex:0 0 28px;height:28px;border:1px solid #bfd0dc;border-radius:8px;font-size:1.25rem}
.invoice-cost-toggle>summary .cost-toggle-icon::before{content:"+"}
.invoice-cost-toggle[open]>summary .cost-toggle-icon::before{content:"−"}
.invoice-cost-toggle[open]{padding:0 18px 16px}
.invoice-cost-toggle[open]>summary{margin:0 -18px 14px;border-bottom:1px solid #d4dfe6}
@media(max-width:470px){.invoice-entry .invoice-header{grid-template-columns:minmax(0,1fr)}.invoice-cost-toggle>summary{font-size:.94rem;padding:14px}.invoice-cost-toggle[open]{padding:0 14px 14px}.invoice-cost-toggle[open]>summary{margin:0 -14px 12px}}
