.bus-quantity-summary{grid-template-columns:repeat(5,minmax(0,1fr))}
.bus-quantity-summary>div{min-width:0}
.bus-quantity-summary strong{font-variant-numeric:tabular-nums}
.bus-quantity-summary p{margin:9px 0 0;color:var(--muted);font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.bus-quantity-summary p b{color:var(--ink);font-size:15px}
.bus-quantity-summary .bus-total-amount{font-size:clamp(22px,2.4vw,34px);overflow-wrap:anywhere}
.bus-quantity-definition,.bus-allocation-note{color:var(--muted);font-size:13px;line-height:1.7;margin:12px 0}
.bus-money-calculator{border:1px solid var(--line-strong);background:var(--surface);border-radius:12px;margin:18px 0;overflow:hidden}
.bus-money-calculator>summary{cursor:pointer;padding:16px 20px;font-weight:700;color:var(--accent);background:var(--surface-soft);min-height:48px}
.bus-money-calculator>summary span{font-weight:400;color:var(--muted);font-size:12px;margin-left:10px}
.bus-money-calculator>summary:focus-visible{outline:3px solid var(--focus);outline-offset:-3px}
.bus-calculator-body{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:20px}
.bus-calculator-body>div{padding:14px;border:1px solid var(--line);border-radius:9px}
.bus-calculator-body span{display:block;color:var(--muted);font-size:13px}
.bus-calculator-body strong{display:block;font-size:clamp(20px,2vw,28px);margin-top:10px;overflow-wrap:anywhere;color:var(--ink)}
.bus-calculator-body p{grid-column:1/-1;color:var(--muted);line-height:1.7;margin:0}
#main:has(.bus-money-calculator:not([open])) .ops-settlement-table .bus-money-column{display:none}
@media(max-width:1100px){.bus-quantity-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.bus-quantity-summary>div:last-child{grid-column:1/-1}}
@media(max-width:600px){.bus-calculator-body{grid-template-columns:1fr;padding:12px}.bus-money-calculator>summary{padding:14px}.bus-money-calculator>summary span{display:block;margin:6px 0 0}.bus-quantity-summary{gap:10px}.bus-quantity-summary>div{padding:16px}.bus-quantity-summary strong{font-size:26px}.bus-quantity-summary p{font-size:12px}}

.bus-calculator-tabs{display:flex;align-items:stretch;flex-wrap:wrap;gap:10px;padding:18px 20px 0}
.bus-calculator-tabs .btn{display:flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:44px;padding:10px 16px;line-height:1.4;text-align:center}
.bus-calculator-tabs .btn:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.bus-calculator-mode-label{align-self:center;flex:1 1 220px;min-width:0;font-size:13px;color:var(--muted);line-height:1.6;overflow-wrap:anywhere}
.bus-manual-calculator{padding:20px}
.bus-calculator-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.bus-calculator-inputs .form-field{min-width:0;margin:0}
.bus-calculator-inputs label{line-height:1.6;display:block;margin-bottom:8px}
.bus-calculator-inputs input{width:100%;min-width:0;min-height:46px;font-size:18px;font-variant-numeric:tabular-nums;background:var(--surface);color:var(--ink);border:1px solid var(--line-strong);border-radius:8px;padding:10px 12px}
.bus-calculator-inputs input[aria-invalid=true]{border-color:var(--accent)}
.bus-manual-result{margin-top:20px;padding:20px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface-soft);overflow-wrap:anywhere}
.bus-manual-result>span{font-size:14px;color:var(--muted)}
.bus-manual-result strong{display:block;color:var(--ink);font-size:clamp(28px,4vw,40px);font-variant-numeric:tabular-nums;margin-top:8px;line-height:1.3}
.bus-manual-result strong small{font-size:18px;margin-left:4px}
.bus-calculator-equation,.bus-calculator-message{margin:10px 0 0;color:var(--muted);font-size:14px;line-height:1.7}
.bus-manual-result[data-result-state=invalid] .bus-calculator-message{color:var(--ink);font-weight:600}
.bus-calculator-help,.bus-auto-context{color:var(--muted);font-size:13px;line-height:1.7;overflow-wrap:anywhere}
.bus-calculator-help{margin:14px 0 0}
.bus-auto-context{margin:16px 20px 0}
#main:has(.bus-money-calculator[data-calculator-mode=manual]) .ops-settlement-table .bus-money-column,#main:has(.bus-money-calculator[data-calculator-mode=manual]) .bus-ledger-money-row{display:none}
@media(max-width:600px){.bus-calculator-tabs{padding:14px 12px 0;gap:8px}.bus-calculator-tabs .btn{flex:1 1 0;min-width:0;padding:10px 8px;white-space:normal;overflow-wrap:normal}.bus-calculator-mode-label{flex-basis:100%}.bus-manual-calculator{padding:14px 12px}.bus-calculator-inputs{grid-template-columns:1fr;gap:14px}.bus-manual-result{padding:16px}.bus-auto-context{margin:14px 12px 0}}
