.credits-dialog { max-width: 540px; border: 1px solid #bad4cf; border-radius: 18px; padding: 28px; color: #19463f; font-family: system-ui,sans-serif; box-shadow: 0 20px 70px #0003; }
.credits-dialog::backdrop { background: #183b3955; }
.credits-dialog p { line-height: 1.6; }
.credits-dialog button, #credits-page button { padding: 11px 15px; margin: 8px 10px 8px 0; border: 1px solid #277368; border-radius: 8px; background: #277368; color: white; cursor: pointer; font: inherit; }
.credits-dialog button:disabled, #credits-page button:disabled { opacity: .5; cursor: default; }
.credits-dialog a { display: block; margin-top: 16px; color: #277368; }
.credits-table { overflow: auto; } .credits-table table { width: 100%; border-collapse: collapse; text-align: left; }
.credits-table td, .credits-table th { padding: 12px 8px; border-bottom: 1px solid #dae5e2; font-size: 13px; }

/* Explicit positioning overrides the application's universal margin reset. */
dialog.credits-dialog { position: fixed; inset: 0; margin: auto; box-sizing: border-box; width: min(540px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); overflow-y: auto; }
.credits-dialog h2 { font-size: 24px; line-height: 1.25; margin: 0 0 16px; }
.credits-composer-budget { padding: 8px 10px; font-size: 12px; line-height: 1.5; color: #315f59; }
.credits-composer-budget[hidden] { display: none; }
.credits-composer-budget span { font-weight: 600; }
.credits-composer-budget small { display: block; font: inherit; }
.credits-composer-budget a { color: #256b65; text-decoration: underline; }
.credits-explanation { border-top: 1px solid #dae5e2; margin-top: 24px; padding-top: 8px; }
.credits-explanation h3 { font-size: 18px; margin: 22px 0 8px; }
.credits-explanation p { font-size: 14px; }

.credits-meter { display: flex; align-items: center; gap: 9px; flex-shrink: 0; margin: 4px 12px 8px; padding: 7px 10px; border: 1px solid #d5e6e1; border-radius: 10px; background: #f5faf8; color: #19463f; text-decoration: none; --credit-color: #277b70; }
.credits-meter[hidden] { display: none; }
.credits-meter:hover { background: #eaf5ef; }
.credits-meter:focus-visible { outline: 3px solid #277b70; outline-offset: 2px; }
.credits-meter[data-level="warning"] { --credit-color: #d4a300; }
.credits-meter[data-level="low"] { --credit-color: #d44444; }
.credits-meter-ring { width: 44px; height: 44px; flex-shrink: 0; border-radius: 50%; background: conic-gradient(var(--credit-color) var(--credit-fill, 0deg), #dfe8e5 0); position: relative; }
.credits-meter-ring::after { content: ''; position: absolute; inset: 7px; border-radius: 50%; background: #f5faf8; }
.credits-meter-copy { min-width: 0; display: grid; gap: 1px; }
.credits-meter-copy strong { font-size: 14px; line-height: 1.3; font-variant-numeric: tabular-nums; }
.credits-meter-copy small { font-size: 11px; font-weight: 500; }
.credits-meter-detail { font-size: 10px; line-height: 1.4; color: #52716b; }

/* Exact balances support multiple packs; color indicates low balance, not a fraction. */
.credits-meter-ring { width: 8px; height: 8px; background: var(--credit-color); }
.credits-meter-ring::after { display: none; }
#credits-page select { display: block; width: 100%; padding: 14px; margin: 16px 0 8px; border: 1px solid #bad4cf; border-radius: 10px; background: white; color: #19463f; font: inherit; }
/* Credit balance stays with account controls in desktop and mobile navigation. */
.credits-meter{display:flex;align-items:center;gap:8px;min-height:44px;box-sizing:border-box;margin:4px 10px;padding:6px 10px;border:0;border-radius:9px;background:transparent;box-shadow:none}
.credits-meter[hidden]{display:none}.credits-meter-copy{flex:1;min-width:0;display:block}.credits-meter-copy strong{font-size:13px;font-weight:500;white-space:nowrap}.credits-meter-copy small{font-size:12px;font-weight:400}.credits-meter-detail{display:none}.credits-meter-add{display:flex;align-items:center;justify-content:center;width:26px;height:26px;flex-shrink:0;font-size:20px;font-weight:400;line-height:1;color:#52716b}.credits-meter:hover{background:#edf5f2}.credits-meter:hover .credits-meter-add{color:#19463f}.credits-meter[data-level="warning"] .credits-meter-value{color:#856300}.credits-meter[data-level="low"] .credits-meter-value{color:#ba3434}

.credits-checkout-body{background:#fff;color:#173c37}.credits-checkout-body .billing-shell{max-width:690px;margin:70px auto 45px}.credits-page-nav{position:absolute;top:20px;left:24px;right:24px;display:flex;align-items:center;justify-content:space-between}.credits-page-nav a{text-decoration:none}.credits-close{font-size:30px;line-height:1;width:38px;height:38px;display:grid;place-items:center;color:#657771;border-radius:50%}.credits-close:hover{background:#f2f6f4}.credits-home-logo{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#18776f;color:white;font-weight:800;font-size:20px}.credits-checkout-body header{text-align:center;margin:42px 0 30px}.credits-checkout-body h1{font-size:37px;line-height:1.2;letter-spacing:-1.1px}.credits-checkout-body header>p:last-child{color:#6c7e78;font-size:14px}.credits-checkout-body .plan-card{padding:0;border:0;box-shadow:none;border-radius:0}.credits-checkout-body h2{font-size:21px;letter-spacing:-.4px;margin:24px 0 10px}.credits-checkout-body p{font-size:14px}.credits-balance-summary{padding:18px 20px;border-radius:16px;background:#f1f7f4;display:flex;justify-content:space-between;align-items:center;gap:14px}.credits-balance-summary strong{font-size:25px;display:block}.credits-balance-summary small{font-size:12px}.credits-subtle{color:#6b7b76;font-size:12px!important}.credits-pack-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.credits-pack-grid button.credits-pack{margin:0!important;padding:17px 8px!important;min-height:122px;background:#f5f7f6!important;color:#203e37!important;border:1.5px solid transparent!important;border-radius:15px!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px}.credits-pack-grid button.credits-pack[aria-pressed="true"]{border-color:#247b66!important;background:#f0f7f3!important;box-shadow:0 0 0 1px #247b66}.credits-pack strong{font-size:19px}.credits-pack small{font-size:12px;color:#6a7c74}.credits-saving{font-size:10px;font-weight:700;padding:3px 7px;border-radius:20px;background:#2d8156;color:#fff}.credits-custom{display:grid;gap:7px;margin:15px 0;font-size:13px}.credits-custom input{font:inherit;padding:13px;border:1px solid #b8ccc3;border-radius:10px;width:100%;box-sizing:border-box}.credits-checkout-body [hidden]{display:none!important}.credits-reload{border:1px solid #dbe5df;border-radius:15px;padding:18px;margin:22px 0;background:linear-gradient(120deg,#f7faf8,#fff)}.credits-reload label{display:flex;gap:12px;align-items:flex-start;font-size:14px;font-weight:600;cursor:pointer}.credits-reload input[type="checkbox"]{accent-color:#267b62;width:18px;height:18px;margin:2px 0;flex-shrink:0}.credits-reload p{margin:7px 0 0 30px;font-size:12px;line-height:1.6;color:#63796c}.credits-checkout-body #credits-page .credits-pay{display:block;width:100%;margin:14px 0 8px;padding:14px;background:#193f35;border-radius:25px;font-weight:600}.credits-checkout-body #credits-page .credits-text-button{background:transparent;color:#426b5b;border:0;font-size:12px;padding:0;margin:0;text-decoration:underline}.credits-checkout-body .credits-explanation{border:0;background:#f7f9f6;border-radius:19px;padding:25px;margin-top:32px}.credits-explanation .credits-mission-title{font-size:25px;line-height:1.25;margin:12px 0}.credits-explanation .credits-mission-mark{font-size:11px;color:#5b876d;text-transform:uppercase;letter-spacing:1.6px}.credits-explanation .credits-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:22px 0}.credits-principles span{border:1px solid #dfe7dc;border-radius:12px;padding:12px 8px;font-size:12px;text-align:center;background:white}.credits-explanation details{border-top:1px solid #dce6dc;padding-top:16px;margin-top:16px}.credits-explanation summary{cursor:pointer;font-weight:600;font-size:14px}.credits-history{margin-top:25px}.credits-history summary{font-size:14px;font-weight:600;cursor:pointer}.credits-checkout-body .footer{text-align:center;margin-top:30px}@media(max-width:540px){.credits-checkout-body .billing-shell{margin:70px auto 30px;padding:0 18px}.credits-checkout-body h1{font-size:30px}.credits-pack-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.credits-pack-grid button.credits-pack{min-height:105px}.credits-checkout-body .credits-explanation{padding:20px}.credits-explanation .credits-mission-title{font-size:23px}.credits-page-nav{left:16px;right:16px}}

.credits-checkout-body{display:flow-root;min-height:100dvh}
