.credit-display{transition:all .3s ease-in-out}.credit-display:hover{transform:scale(1.02)}.credit-status-good{color:#059669;background-color:#f0fdf4;border-color:#bbf7d0}.credit-status-warning{color:#d97706;background-color:#fffbeb;border-color:#fed7aa}.credit-status-critical{color:#ea580c;background-color:#fff7ed;border-color:#fed7aa}.credit-status-exhausted{color:#dc2626;background-color:#fef2f2;border-color:#fecaca}.credit-progress-bar{position:relative;overflow:hidden;border-radius:9999px}.credit-progress-fill{height:100%;border-radius:9999px;transition:all .5s ease-out;background:linear-gradient(90deg,var(--progress-color) 0,var(--progress-color-light) 100%)}.credit-progress-fill.animate{animation:creditProgress .8s ease-out}@keyframes creditProgress{0%{width:0;opacity:.7}to{opacity:1}}.credit-chat-input{position:relative;transition:all .2s ease-in-out}.credit-chat-input:focus-within{transform:scale(1.01)}.credit-input-disabled{opacity:.6;cursor:not-allowed}.credit-input-disabled textarea{background-color:#f9fafb;color:#9ca3af}.credit-button{transition:all .2s ease-in-out}.credit-button:not(:disabled):hover{transform:scale(1.05);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.credit-button:disabled{cursor:not-allowed;opacity:.6}.credit-alert{animation:creditAlertSlideIn .3s ease-out}@keyframes creditAlertSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.credit-alert.dismissing{animation:creditAlertSlideOut .3s ease-in forwards}@keyframes creditAlertSlideOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.credit-timer{font-family:ui-monospace,SFMono-Regular,SF Mono,Consolas,Liberation Mono,Menlo,monospace;font-size:.875rem;line-height:1.25rem}.credit-timer.warning{color:#d97706}.credit-timer.critical{color:#ea580c}.credit-timer.exhausted{color:#dc2626}.credit-stats-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}.credit-status-indicator{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem .75rem;border-radius:9999px;font-size:.875rem;line-height:1.25rem;font-weight:500;border:1px solid;transition:all .2s ease-in-out}.credit-status-indicator.pulse{animation:creditStatusPulse 2s infinite}@keyframes creditStatusPulse{0%,to{opacity:1}50%{opacity:.7}}.credit-loading{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.credit-loading-skeleton{background-color:#e5e7eb;border-radius:.25rem;animation:creditLoadingSkeleton 1.5s ease-in-out infinite}@keyframes creditLoadingSkeleton{0%,to{opacity:.6}50%{opacity:1}}.credit-tooltip{position:absolute;z-index:50;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;color:white;background-color:#111827;border-radius:.5rem;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);opacity:0;pointer-events:none;transition:opacity .2s ease-in-out;transform:translateY(-100%);margin-top:-8px}.credit-tooltip.show{opacity:1}.credit-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:6px solid transparent;border-top-color:#111827}.credit-modal-overlay{position:fixed;inset:0;background-color:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:50;padding:1rem;animation:creditModalFadeIn .2s ease-out}@keyframes creditModalFadeIn{0%{opacity:0}to{opacity:1}}.credit-modal{background-color:white;border-radius:.75rem;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);max-width:28rem;width:100%;animation:creditModalSlideIn .3s ease-out}@keyframes creditModalSlideIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}@media (max-width:640px){.credit-display{font-size:.875rem;line-height:1.25rem}.credit-display h3{font-size:1rem;line-height:1.5rem}.credit-stats-grid{grid-template-columns:repeat(3,1fr);gap:.5rem}.credit-status-indicator{padding:.5rem .75rem;font-size:.75rem;line-height:1rem}.credit-chat-input{row-gap:.5rem}.credit-alert{padding:.75rem}.credit-alert h3{font-size:.875rem;line-height:1.25rem}.credit-alert p{font-size:.75rem;line-height:1rem}}@media (max-width:480px){.credit-display{padding:.75rem}.credit-display h3{font-size:.875rem;line-height:1.25rem}.credit-display .text-3xl{font-size:1.5rem;line-height:2rem}.credit-stats-grid{gap:.25rem}.credit-stats-grid>div{text-align:center}.credit-stats-grid .text-lg{font-size:1rem;line-height:1.5rem}.credit-stats-grid .text-xs{font-size:.75rem;line-height:1rem}}@media (prefers-color-scheme:dark){.credit-display{background-color:#1f2937;border-color:#374151;color:#f9fafb}.credit-display h3{color:#f9fafb}.credit-display .text-gray-500{color:#9ca3af}.credit-display .text-gray-600{color:#d1d5db}.credit-display .text-gray-900{color:#f9fafb}.credit-status-good{background-color:rgba(6,78,59,.2);border-color:#047857;color:#6ee7b7}.credit-status-warning{background-color:rgba(120,53,15,.2);border-color:#d97706;color:#fbbf24}.credit-status-critical{background-color:rgba(194,65,12,.2);border-color:#ea580c;color:#fb923c}.credit-status-exhausted{background-color:rgba(185,28,28,.2);border-color:#dc2626;color:#f87171}.credit-chat-input textarea{background-color:#374151;border-color:#4b5563;color:#f9fafb}.credit-chat-input textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 2px rgba(59,130,246,.2)}.credit-alert,.credit-modal{background-color:#1f2937;border-color:#374151}}@media (prefers-contrast:high){.credit-alert,.credit-chat-input,.credit-display,.credit-status-indicator{border-width:2px}}@media (prefers-reduced-motion:reduce){.credit-alert,.credit-button,.credit-chat-input,.credit-display{transition:none}.credit-button:hover,.credit-chat-input:focus-within,.credit-display:hover{transform:none}.credit-progress-fill{transition:none}.credit-loading-skeleton{animation:none}}@media print{.credit-display{border:1px solid #d1d5db;background-color:white;color:black}.credit-alert,.credit-chat-input{display:none}.credit-display .credit-status-indicator{border:1px solid #d1d5db;background-color:#f3f4f6;color:#374151}}.credit-button:focus-visible,.credit-chat-input textarea:focus-visible{outline:none;box-shadow:0 0 0 2px #3b82f6,0 0 0 4px white}.credit-status-indicator:focus-visible{outline:none;box-shadow:0 0 0 2px #3b82f6,0 0 0 4px white}:root{--credit-green:#10b981;--credit-green-light:#34d399;--credit-yellow:#f59e0b;--credit-yellow-light:#fbbf24;--credit-orange:#f97316;--credit-orange-light:#fb923c;--credit-red:#ef4444;--credit-red-light:#f87171;--credit-blue:#3b82f6;--credit-blue-light:#60a5fa}.credit-bounce{animation:creditBounce .6s ease-in-out}@keyframes creditBounce{0%,20%,53%,80%,to{transform:translateY(0)}40%,43%{transform:translateY(-8px)}70%{transform:translateY(-4px)}90%{transform:translateY(-2px)}}.credit-shake{animation:creditShake .5s ease-in-out}@keyframes creditShake{0%,to{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}.credit-success{animation:creditSuccess .6s ease-out}@keyframes creditSuccess{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.credit-warning-pulse{animation:creditWarningPulse 2s infinite}@keyframes creditWarningPulse{0%,to{box-shadow:0 0 0 0 rgba(245,158,11,.7)}50%{box-shadow:0 0 0 10px rgba(245,158,11,0)}}.credit-critical-flash{animation:creditCriticalFlash 1.5s infinite}@keyframes creditCriticalFlash{0%,50%,to{opacity:1}25%,75%{opacity:.5}}