.model-usage-trigger { min-height: 44px; padding: 10px 16px; border: 1px solid #ddd5e8; border-radius: 10px; background: #fff; color: #49395b; font: inherit; cursor: pointer; }
.model-usage-dialog { box-sizing: border-box; width: min(480px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); overflow: auto; padding: 24px; border: 1px solid #e5dfed; border-radius: 20px; color: #30283a; background: #fff; box-shadow: 0 20px 80px #30203c33; }
.model-usage-dialog::backdrop { background: #21162b66; backdrop-filter: blur(3px); }
.model-usage-dialog header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.model-usage-dialog h2 { margin: 0; font-size: 22px; }
.model-usage-dialog p { font-size: 14px; line-height: 1.65; }
.model-usage-note, .model-usage-window, .model-usage-limit { color: #6b6274; }
.model-usage-dialog button { min-height: 44px; border: 1px solid #ddd5e8; border-radius: 10px; padding: 8px 14px; background: #fff; color: #49395b; font: inherit; cursor: pointer; }
.model-usage-dialog button:disabled { opacity: .55; cursor: wait; }
.model-usage-dialog :is(button,summary):focus-visible, .model-usage-trigger:focus-visible { outline: 3px solid #8d61ed; outline-offset: 3px; }
.model-usage-counts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin: 18px 0 8px; }
.model-usage-counts div { background: #f7f4fc; border-radius: 12px; padding: 14px 10px; }
.model-usage-counts dt { font-size: 13px; color: #6b6274; }
.model-usage-counts dd { margin: 8px 0 0; font-size: 23px; font-weight: 650; overflow-wrap: anywhere; }
.model-usage-tokens { border-top: 1px solid #e5dfed; padding-top: 16px; margin-top: 20px; }
.model-usage-tokens summary { cursor: pointer; min-height: 30px; font-size: 14px; }
.model-usage-tokens dl div { display: flex; justify-content: space-between; gap: 16px; margin: 10px 0; font-size: 14px; }
.model-usage-tokens dd { margin: 0; overflow-wrap: anywhere; }
.model-usage-dialog footer { display: flex; justify-content: flex-end; margin-top: 18px; }
@media (max-width: 420px) { .model-usage-dialog { padding: 20px; } .model-usage-counts { gap: 6px; } .model-usage-counts dd { font-size: 20px; } }
