/* Compact, native disclosure and controls within the existing site style. */
.pricing-calculator{margin:18px 0 24px;min-width:0;max-width:100%;color:var(--ink,#1d1d1f)}
.pricing-calculator [hidden]{display:none!important}
.pricing-calculator .cost-panel{border:1px solid var(--line,#d8d8dc);border-radius:var(--radius,6px);min-width:0}
.pricing-calculator .cost-panel>summary{min-height:64px;padding:12px 16px;cursor:pointer;background:var(--bg-soft,#f5f5f7);border-radius:var(--radius,6px);overflow-wrap:anywhere}
.pricing-calculator .cost-panel>summary:focus-visible{outline-offset:-3px}
.pricing-calculator .cost-panel>summary h2{display:inline;font-size:1.08rem;line-height:1.35;margin:0}
.pricing-calculator .cost-panel-preview{display:inline;margin-left:14px;font-size:.9rem;line-height:1.45}
.pricing-calculator .cost-closed-assumptions{display:block;margin:4px 0 0 17px;color:var(--grey-dark,#424245);font-size:.8rem;line-height:1.45}
.pricing-calculator .cost-panel-body{padding:14px 16px 16px;border-top:1px solid var(--line,#d8d8dc)}
.pricing-calculator h3{margin:0 0 6px;font-size:1.1rem}
.pricing-calculator h4{margin:0;font-size:1rem;line-height:1.35;overflow-wrap:anywhere}
.pricing-calculator h5{margin:12px 0 5px;font-size:.9rem}
.pricing-calculator p{margin:6px 0}
.pricing-calculator fieldset{min-width:0;margin:0;padding:0;border:0}
.pricing-calculator legend{font-size:.9rem;font-weight:700;padding:0;margin:0 0 7px}
.pricing-calculator .cost-presets{margin-bottom:12px}
.pricing-calculator .cost-preset-buttons{display:flex;gap:7px;flex-wrap:wrap}
.pricing-calculator .cost-preset-buttons .btn{min-height:44px;font:inherit;font-size:.88rem;padding:8px 12px}
.pricing-calculator .cost-preset-buttons .btn[aria-pressed=true]{background:#edf5ff;border-color:var(--blue,#0066cc);color:var(--blue-hover,#004c99);font-weight:700}
.pricing-calculator .cost-mode-options{display:flex;flex-wrap:wrap;gap:4px 18px;margin-bottom:10px}
.pricing-calculator .cost-mode-option,.pricing-calculator .cost-cache-toggle{display:flex;align-items:center;gap:8px;min-height:44px;font-size:.9rem;font-weight:600;cursor:pointer}
.pricing-calculator input[type=radio],.pricing-calculator input[type=checkbox]{flex:none;width:20px;height:20px;margin:0;accent-color:var(--blue,#0066cc)}
.pricing-calculator .cost-mode-notice{font-size:.82rem;color:var(--grey-dark,#424245);margin:0 0 10px}
.pricing-calculator .cost-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
.pricing-calculator .cost-fields>legend:not(.sr-only){grid-column:1/-1;width:100%;margin:0 0 7px}
.pricing-calculator .cost-field{display:flex;flex-direction:column;gap:4px;min-width:0}
.pricing-calculator .cost-field label{font-size:.88rem;font-weight:600;line-height:1.35}
.pricing-calculator input[type=number]{width:100%;min-width:0;min-height:44px;border:1px solid #8b8b92;border-radius:var(--radius,6px);padding:8px 10px;background:#fff;color:var(--ink,#1d1d1f);font:inherit;font-size:16px;font-variant-numeric:tabular-nums}
.pricing-calculator input[aria-invalid=true]{border:2px solid var(--red,#b42318);padding:7px 9px}
.pricing-calculator input:disabled{background:var(--bg-soft,#f5f5f7);color:var(--grey-dark,#424245)}
.pricing-calculator .cost-field-help{display:block;color:var(--grey-dark,#424245);font-size:.8rem;line-height:1.4;max-width:90ch}
.pricing-calculator .cost-field-error{display:block;color:var(--red,#b42318);font-weight:600;font-size:.84rem;line-height:1.4}
.pricing-calculator .cost-advanced{margin-top:12px;border-top:1px solid var(--line,#d8d8dc)}
.pricing-calculator .cost-advanced>summary{cursor:pointer;min-height:44px;padding:10px 0;font-size:.9rem;font-weight:600;color:var(--blue,#0066cc)}
.pricing-calculator .cost-advanced-body{padding:4px 0 10px}
.pricing-calculator .cost-monthly-context{margin-bottom:12px;max-width:420px;grid-template-columns:minmax(0,1fr)}
.pricing-calculator [data-cost-cache-fields]{max-width:360px;margin:8px 0}
.pricing-calculator .cost-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.pricing-calculator .cost-actions .btn,.pricing-calculator .cost-show-all{min-height:44px;font:inherit;font-size:.9rem}
.pricing-calculator .cost-error-summary{margin:14px 0;padding:10px 12px;border:2px solid var(--red,#b42318);border-radius:var(--radius,6px);color:var(--red,#b42318);scroll-margin-top:calc(var(--site-header-height,160px) + 16px)}
.pricing-calculator .cost-error-summary p{margin:0 0 4px}
.pricing-calculator .cost-error-summary ul{margin:0;padding-left:20px}
.pricing-calculator .cost-error-summary a{color:inherit;text-decoration:underline;display:inline-block;padding:5px 0}
.pricing-calculator .cost-output{margin-top:20px;min-width:0}
.pricing-calculator .cost-assumptions{max-width:95ch;font-size:.85rem;line-height:1.45}
.pricing-calculator .cost-status{font-size:.85rem;font-weight:600;min-height:1.5em}
.pricing-calculator .cost-results{list-style:none;margin:12px 0 0;padding:0}
.pricing-calculator .cost-results>li{margin:0;padding:12px 0;border-top:1px solid var(--line,#d8d8dc)}
.pricing-calculator .cost-model-result{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,auto);gap:5px 16px;min-width:0}
.pricing-calculator .cost-model-heading,.pricing-calculator .cost-estimates,.pricing-calculator .cost-estimates>div{min-width:0}
.pricing-calculator .cost-rank{color:var(--grey-dark,#424245);font-variant-numeric:tabular-nums}
.pricing-calculator .cost-provider{margin:2px 0;font-size:.78rem;line-height:1.4;color:var(--grey-dark,#424245)}
.pricing-calculator .cost-completeness{font-size:.8rem;font-weight:600;color:var(--grey-dark,#424245)}
.pricing-calculator .cost-source{font-size:.79rem;line-height:1.45;overflow-wrap:anywhere}
.pricing-calculator .cost-source a{display:inline-flex;align-items:center;min-height:32px;padding:3px 0}
.pricing-calculator .cost-source>span{color:var(--grey-dark,#424245)}
.pricing-calculator .cost-source>span:not(:first-child)::before{content:" · "}
.pricing-calculator .cost-estimates{margin:0;max-width:190px}
.pricing-calculator .cost-estimates dt{font-size:.75rem;font-weight:600;color:var(--grey-dark,#424245);margin-bottom:3px}
.pricing-calculator .cost-estimates dd{margin:0;overflow-wrap:anywhere}
.pricing-calculator .cost-money{display:block;font-size:1.22rem;font-variant-numeric:tabular-nums;line-height:1.25}
.pricing-calculator .cost-unavailable,.pricing-calculator .cost-na{display:block;font-size:.9rem;line-height:1.4;font-weight:600}
.pricing-calculator .cost-result-label{display:block;font-size:.77rem;line-height:1.35;color:var(--grey-dark,#424245);margin-top:3px}
.pricing-calculator .cost-reasons{grid-column:1/-1;margin:3px 0;padding-left:20px;color:var(--grey-dark,#424245);font-size:.84rem}
.pricing-calculator .cost-details{grid-column:1/-1;min-width:0;font-size:.85rem;overflow-wrap:anywhere}
.pricing-calculator .cost-details>summary{cursor:pointer;min-height:44px;padding:10px 1px;font-weight:600;color:var(--blue,#0066cc)}
.pricing-calculator .cost-details>p,.pricing-calculator .cost-details ul{max-width:95ch}
.pricing-calculator .cost-details ul{padding-left:20px}
.pricing-calculator .cost-details li{margin:5px 0}
.pricing-calculator .cost-rate-list{display:flex;gap:10px 24px;flex-wrap:wrap;margin:10px 0}
.pricing-calculator .cost-rate-list dt{color:var(--grey-dark,#424245);font-size:.8rem}
.pricing-calculator .cost-rate-list dd{font-weight:600;margin:2px 0 0;font-variant-numeric:tabular-nums}
.pricing-calculator .cost-formula{margin:10px 0;padding:10px 12px;background:var(--bg-soft,#f5f5f7);border-radius:var(--radius,6px)}
.pricing-calculator .cost-formula>div+div{margin-top:6px}
.pricing-calculator .cost-formula dt{font-weight:600}
.pricing-calculator .cost-formula dd{margin:2px 0 0;font-variant-numeric:tabular-nums}
.pricing-calculator .cost-future{margin:12px 0}
.pricing-calculator .cost-chart-legend:empty,.pricing-calculator .cost-row-chart:empty{display:none}
.pricing-calculator .cost-row-chart{grid-column:1/-1;min-width:0}
.pricing-calculator .cost-show-all{margin-top:8px}
.pricing-calculator .cost-notice{padding:10px 12px;background:var(--bg-soft,#f5f5f7);border:1px solid var(--line,#d8d8dc);border-radius:var(--radius,6px)}
@media(max-width:700px){
  .pricing-calculator .cost-panel>summary{padding:11px 12px}
  .pricing-calculator .cost-panel-preview{display:block;margin:4px 0 0 17px}
  .pricing-calculator .cost-panel-body{padding:12px}
  .pricing-calculator .cost-preset-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .pricing-calculator .cost-source a,.pricing-calculator .cost-error-summary a{min-height:44px;padding-block:8px}
}
@media(max-width:400px){
  .pricing-calculator .cost-panel-body{padding:10px}
  .pricing-calculator .cost-fields{gap:10px}
  .pricing-calculator .cost-field label{font-size:.83rem}
  .pricing-calculator [data-cost-mode="requests"] .cost-field label{min-height:2.7em}
  .pricing-calculator .cost-field-help{font-size:.77rem}
  .pricing-calculator .cost-mode-options{gap:0}
  .pricing-calculator .cost-mode-option{width:100%}
  .pricing-calculator .cost-model-result{grid-template-columns:minmax(0,1fr) 108px;gap:5px 10px}
  .pricing-calculator .cost-money{font-size:1.1rem}
}
@media(forced-colors:active){
  .pricing-calculator .cost-panel,.pricing-calculator .cost-formula,.pricing-calculator .cost-notice{border:1px solid CanvasText}
  .pricing-calculator .cost-preset-buttons .btn[aria-pressed=true]{border:2px solid Highlight;color:Highlight}
  .pricing-calculator input[aria-invalid=true],.pricing-calculator .cost-error-summary{border-color:CanvasText}
}
