.quota-toggle {min-height:34px;padding:6px 12px;border:1px solid #4a5261;border-radius:7px;background:#252b38;color:#dbe6ff;font:inherit;font-size:12px;white-space:nowrap;}
.quota-toggle:hover {background:#303a4d;}
.quota-dialog {box-sizing:border-box;width:min(94vw,520px);max-height:88dvh;margin:auto;padding:22px;border:1px solid #414650;border-radius:15px;background:#191b20;color:#ecedf2;box-shadow:0 20px 80px #0008;overflow-y:auto;color-scheme:dark;}
.quota-dialog::backdrop {background:#0009;}
.quota-heading,.quota-section-heading,.quota-actions {display:flex;align-items:center;gap:12px;}
.quota-heading {justify-content:space-between;align-items:flex-start;}
.quota-heading h2 {margin:0;font-size:20px;line-height:1.4;}
.quota-heading p {margin:6px 0 0;font-size:13px;color:#a8b0c0;}
.quota-dialog button,.quota-dialog select {min-height:36px;padding:6px 12px;border:1px solid #424854;border-radius:7px;background:#262a33;color:#e7eaf0;font:inherit;font-size:13px;}
.quota-dialog button:disabled {opacity:.55;cursor:wait;}
.quota-section {padding:20px 0;border-bottom:1px solid #343941;}
.quota-section h3 {margin:0 0 15px;font-size:14px;font-weight:600;}
.quota-section-heading h3 {margin-bottom:0;}
.quota-note {font-size:12px;line-height:1.7;color:#a8b0c0;margin:7px 0 0;}
.quota-meter {margin:16px 0 0;}
.quota-meter-label {display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;}
.quota-meter-label strong {font-size:17px;font-variant-numeric:tabular-nums;}
.quota-meter-track {height:8px;border-radius:8px;background:#343a46;margin-top:9px;overflow:hidden;}
.quota-meter-fill {display:block;height:100%;border-radius:inherit;transition:width .2s ease;}
.quota-meter-fill.blue {background:#6d9fff;}
.quota-meter-fill.purple {background:#b294ee;}
.quota-message {margin-top:14px;font-size:13px;line-height:1.6;color:#adb9ce;}
.quota-message:empty {display:none;}
.quota-message.warning {padding:10px 12px;background:#59441d55;border:1px solid #866b3644;border-radius:8px;color:#eed39c;}
.quota-actions {margin-top:18px;flex-wrap:wrap;font-size:13px;}
.quota-actions select {flex:1;}
.quota-token-grid {
  display:grid;
  grid-template-columns:repeat(2,max-content);
  column-gap:18px;
  row-gap:5px;
  margin:12px 0 0;
}
.quota-token {
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-width:0;
  color:#ecedf2;
  font-size:13px;
  font-weight:500;
  font-variant-numeric:tabular-nums;
}
.quota-token svg {width:14px;height:14px;flex:none;}
.quota-token.input svg {color:#34d399;}
.quota-token.output svg {color:#a78bfa;}
.quota-token.cache-read {color:#38bdf8;}
.quota-token.cache-write {color:#fbbf24;}
.quota-token-accessible {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
#quota-value {font-size:15px;font-weight:600;font-variant-numeric:tabular-nums;margin:12px 0 0;}
.quota-empty {margin:12px 0;font-size:13px;line-height:1.6;color:#b8c2d2;}
#quota-own {font-size:15px;font-variant-numeric:tabular-nums;}
@media(max-width:640px) {
  .quota-dialog {padding:18px;max-height:90dvh;}
}
@media(prefers-reduced-motion:reduce) {.quota-meter-fill {transition:none;}}

@media (max-width: 820px) {
  .quota-toggle { flex: 0 0 auto; min-height: 44px; padding: 4px 7px; }
}
