/* Meta8 archive cost calculator (1.25.0). A white card so it reads on the dark site; the same tokens style the printed report. */
.mmc-theme{--c-bg:#fff;--c-panel:#f7f5fb;--c-line:#e2dbee;--c-fg:#1b1524;--c-muted:#5b5469;--c-accent:#6b2fb3;--c-plum:#6b2fb3;
  --c-aws:#64748b;--c-s3:#a3aec2;--c-gold:#c8901a;--c-wasabi:#1f8478;--c-meta8:#6b2fb3;
  --c-display:"Bricolage Grotesque","Helvetica Neue",Arial,sans-serif;--c-body:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;--c-mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  color:var(--c-fg);font-family:var(--c-body);font-size:16px;line-height:1.5}
.entry-content #mm-calc{background:var(--c-bg);border-radius:10px;padding:clamp(20px,4vw,36px);display:flex;flex-direction:column;gap:22px;margin-top:44px}
#mm-calc *,#mmc-report *{box-sizing:border-box}
#mm-calc>*+*{margin-top:0}
#mm-calc p,#mm-calc li,#mm-calc td,#mm-calc th,#mmc-report p,#mmc-report td,#mmc-report th{color:inherit;max-width:none}
#mm-calc h3,#mm-calc h4{color:var(--c-fg)}
#mm-calc .mmc-eyebrow{font-family:var(--c-mono);font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--c-accent);margin:0}
#mm-calc .mmc-h{font-family:var(--c-display);font-weight:700;font-size:clamp(24px,3vw,34px);letter-spacing:-.02em;line-height:1.1;margin:6px 0 0}
.mmc-theme .mmc-h2{font-family:var(--c-display);font-weight:600;font-size:20px;line-height:1.3;margin:0 0 14px;color:var(--c-fg)}
#mm-calc .mmc-lede{color:var(--c-muted);font-size:17px;margin:10px 0 0}
#mm-calc .mmc-panel{background:var(--c-panel);border:1px solid var(--c-line);border-radius:6px;padding:22px}
#mm-calc .mmc-inputs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
@media (max-width:820px){#mm-calc .mmc-inputs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){#mm-calc .mmc-inputs{grid-template-columns:1fr}#mm-calc .mmc-panel{padding:18px 16px}}
#mm-calc .mmc-field{display:flex;flex-direction:column;gap:8px;min-width:0}
#mm-calc .mmc-label{font-family:var(--c-mono);font-size:13.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--c-muted)}
#mm-calc .mmc-val small{font-family:var(--c-body);font-weight:500;font-size:15px;color:var(--c-muted)}
#mm-calc .mmc-val{font-family:var(--c-display);font-weight:700;font-size:28px;line-height:1.2;font-variant-numeric:tabular-nums;color:var(--c-fg)}
#mm-calc .mmc-hint{font-size:14.5px;line-height:1.4;color:var(--c-muted);margin:0}
#mm-calc input[type=range]{width:100%;accent-color:var(--c-accent)}
#mm-calc .mmc-seg{display:flex;border:1px solid var(--c-line);border-radius:4px;overflow:hidden;background:#fff}
#mm-calc .mmc-seg input{position:absolute;opacity:0;pointer-events:none}
#mm-calc .mmc-seg label{flex:1;text-align:center;padding:9px 6px;cursor:pointer;font-size:15px;color:var(--c-fg);margin:0}
#mm-calc .mmc-seg input:checked+label{background:var(--c-plum);color:#fff}
#mm-calc .mmc-seg input:focus-visible+label{outline:2px solid var(--c-accent);outline-offset:-2px}
.mmc-theme .mmc-answer{font-size:clamp(17px,2.2vw,20px);line-height:1.45;margin:0;color:var(--c-fg)}
.mmc-theme .mmc-answer b{font-family:var(--c-display);font-weight:700;font-variant-numeric:tabular-nums}
.mmc-theme .mmc-bars{display:flex;flex-direction:column;gap:14px}
.mmc-theme .mmc-row{display:grid;grid-template-columns:230px minmax(0,1fr);gap:14px;align-items:center}
@media (max-width:560px){#mm-calc .mmc-row{grid-template-columns:1fr;gap:6px}}
.mmc-theme .mmc-name{font-weight:500}
.mmc-theme .mmc-name small{display:block;color:var(--c-muted);font-weight:400;font-size:14px;line-height:1.35}
.mmc-theme .mmc-track{display:flex;align-items:center;gap:10px;min-width:0}
.mmc-theme .mmc-bar{height:26px;border-radius:3px;min-width:2px;transition:width .25s ease;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.mmc-theme .mmc-amt{font-family:var(--c-mono);font-size:15px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}
.mmc-theme .mmc-split{font-size:14px;color:var(--c-muted);margin-top:2px}
#mm-calc .mmc-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.mmc-theme svg{display:block;width:100%;height:auto}
#mm-calc svg{min-width:560px}
.mmc-theme svg text{fill:var(--c-muted);font-family:var(--c-mono);font-size:12px}
.mmc-theme .mmc-legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:10px;font-size:14.5px;color:var(--c-muted)}
.mmc-theme .mmc-legend i{display:inline-block;width:14px;height:4px;margin-right:6px;vertical-align:middle;border-radius:2px;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.mmc-theme table{border-collapse:collapse;width:100%;font-size:15px;margin:0;background:none}
.mmc-theme th,.mmc-theme td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--c-line);vertical-align:top;background:none}
.entry-content .mmc-theme thead th,.mmc-theme th{font-family:var(--c-mono);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--c-muted);font-weight:500}
#mm-calc #mmc-beyond{min-width:560px}
.mmc-theme .mmc-notes{font-size:14.5px;line-height:1.5;color:var(--c-muted);display:flex;flex-direction:column;gap:8px}
.mmc-theme .mmc-notes p{margin:0}
.mmc-theme .mmc-notes b{color:var(--c-fg)}
.mmc-theme .mmc-disclaimer{font-style:italic}
#mm-calc .mmc-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
#mm-calc .mmc-cta,#mm-calc .mmc-pdf{display:inline-block;font-family:var(--c-display);font-weight:700;font-size:16px;line-height:1.2;padding:14px 24px;border-radius:4px;text-decoration:none;cursor:pointer}
#mm-calc .mmc-cta{background:var(--c-plum);color:#fff;border:1px solid var(--c-plum)}
#mm-calc .mmc-cta:hover{background:#7d3bd0;color:#fff}
#mm-calc .mmc-pdf{background:#fff;color:var(--c-plum);border:1px solid var(--c-plum)}
#mm-calc .mmc-pdf:hover{background:var(--c-panel)}
#mm-calc .mmc-pdf-hint{margin-top:-10px}
@media (max-width:480px){#mm-calc .mmc-cta,#mm-calc .mmc-pdf{width:100%;text-align:center}}
@media (prefers-reduced-motion:reduce){.mmc-theme .mmc-bar{transition:none}}

/* Printed report: built by meta8-calc.js on "Download PDF report"; only it prints. */
#mmc-report{display:none}
@media print{
  @page{size:letter;margin:14mm 14mm 16mm}
  html.mmc-printing,html.mmc-printing body{background:#fff!important;color:#1b1524!important}
  html.mmc-printing body::before,html.mmc-printing body::after{display:none!important}
  html.mmc-printing body>*:not(#mmc-report){display:none!important}
  html.mmc-printing #mmc-report{display:block;font-size:12.5px}
  #mmc-report .mmr-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding-bottom:12px;border-bottom:2px solid var(--c-plum)}
  #mmc-report .mmr-head img{width:210px;height:auto}
  #mmc-report .mmr-head div{text-align:right;font-size:11.5px;color:var(--c-muted);line-height:1.4}
  #mmc-report h1,#mmc-report h2{border:0;padding:0}
  #mmc-report h1{font-family:var(--c-display);font-size:24px;line-height:1.15;margin:18px 0 4px;color:var(--c-fg)}
  #mmc-report .mmr-sub{color:var(--c-muted);margin:0 0 14px}
  #mmc-report .mmr-inputs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:calc(100% - 2px);gap:1px;background:var(--c-line);border:1px solid var(--c-line);margin-bottom:14px}
  #mmc-report .mmr-inputs div{background:var(--c-panel);padding:8px 10px;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  #mmc-report .mmr-inputs span{display:block;font-family:var(--c-mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--c-muted)}
  #mmc-report .mmr-inputs b{font-family:var(--c-display);font-size:17px}
  #mmc-report .mmc-answer{font-size:14px;margin:0 0 14px}
  #mmc-report .mmr-sec{break-inside:avoid;margin:0 0 14px;padding:0;border:0}
  #mmc-report .mmc-h2{font-size:14.5px;margin:0 0 8px}
  #mmc-report .mmc-row{grid-template-columns:200px 1fr;gap:10px}
  #mmc-report .mmc-name small,#mmc-report .mmc-split{font-size:10.5px}
  #mmc-report .mmc-bar{height:16px}
  #mmc-report .mmc-amt{font-size:12px}
  #mmc-report svg{max-height:230px}
  #mmc-report svg text{font-size:13px}
  #mmc-report .mmc-legend{font-size:11px;margin-top:4px}
  #mmc-report table{font-size:11px}
  #mmc-report th,#mmc-report td{padding:5px 6px}
  #mmc-report th{font-size:9.5px}
  #mmc-report .mmc-notes{font-size:10.5px}
  #mmc-report .mmr-disclaimer{border:1px solid var(--c-line);border-radius:4px;padding:10px 12px;font-size:10px;line-height:1.45;color:var(--c-muted);break-inside:avoid}
  #mmc-report .mmr-disclaimer b{color:var(--c-fg)}
  #mmc-report .mmr-foot{margin-top:12px;padding-top:8px;border-top:1px solid var(--c-line);font-size:10.5px;color:var(--c-muted);display:flex;justify-content:space-between;gap:12px}
}
/* 1.25.1: keep the site's table striping and form-label style out of the card */
.entry-content .mmc-theme tbody tr:nth-child(odd),.mmc-theme tr{background:none}
#mm-calc .mmc-seg label{display:block;font-family:var(--c-body);text-transform:none;letter-spacing:0;font-weight:500}

/* 1.29.1, all languages since 1.31.6: tighter print spacing keeps the report to one page */
@media print{
html #mmc-report{font-size:12px}
html #mmc-report h1{margin-top:12px}
html #mmc-report .mmc-answer{font-size:13px;margin-bottom:10px}
html #mmc-report .mmc-bars{gap:8px}
html #mmc-report .mmr-sec{margin-bottom:10px}
html #mmc-report th,html #mmc-report td{padding:4px 6px}
html #mmc-report .mmc-notes{font-size:9.5px;gap:5px}
html #mmc-report .mmr-disclaimer{font-size:9px;padding:8px 10px}
html #mmc-report .mmr-foot{margin-top:8px}
html #mmc-report table{font-size:10px}
html #mmc-report th{font-size:9px}
html #mmc-report .mmc-bar{height:13px}
html #mmc-report .mmc-name small,html #mmc-report .mmc-split{font-size:9.5px}
html #mmc-report .mmc-h2{margin-bottom:6px}
html #mmc-report .mmr-inputs{margin-bottom:10px}
html #mmc-report{line-height:1.4}
html #mmc-report table{line-height:1.3}
html #mmc-report .mmc-notes{line-height:1.4}
html #mmc-report .mmr-head img{width:180px}
html #mmc-report .mmr-head{padding-bottom:8px}}

/* 1.30.3: labels share a two-line height on wide screens so the values line up when one label wraps */
@media (min-width:821px){#mm-calc .mmc-label{min-height:2.7em;display:flex;align-items:flex-end}}

/* 1.31.5: "How we calculate" folds away behind a chevron; the printed report always shows it open */
.mmc-theme .mmc-how summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:10px;color:var(--c-fg);font-weight:600}
.mmc-theme .mmc-how summary::-webkit-details-marker{display:none}
.mmc-theme .mmc-how summary::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s}
.mmc-theme .mmc-how[open] summary::after{transform:rotate(-135deg) translateY(-2px)}
.mmc-theme .mmc-how summary:focus-visible{outline:2px solid var(--c-accent);outline-offset:3px;border-radius:2px}
.mmc-theme .mmc-how p{margin:8px 0 0}
#mmc-report .mmc-how summary{cursor:default}
#mmc-report .mmc-how summary::after{display:none}
@media (prefers-reduced-motion:reduce){.mmc-theme .mmc-how summary::after{transition:none}}

/* 1.32.1: with four options the report needs tighter print spacing and slightly narrower page margins to stay on one page */
@media print{
html #mmc-report .mmr-head img{width:160px}
html #mmc-report h1{font-size:20px;margin:10px 0 2px}
html #mmc-report .mmr-sub{margin-bottom:8px}
html #mmc-report .mmr-inputs{margin-bottom:8px}
html #mmc-report .mmr-inputs div{padding:5px 9px}
html #mmc-report .mmr-inputs b{font-size:15px}
html #mmc-report .mmc-answer{font-size:12.5px;margin-bottom:8px}
html #mmc-report .mmc-bars{gap:5px}
html #mmc-report .mmc-row{gap:8px}
html #mmc-report .mmc-bar{height:11px}
html #mmc-report .mmr-sec{margin-bottom:8px}
html #mmc-report .mmc-h2{font-size:13.5px;margin-bottom:5px}
html #mmc-report .mmr-disclaimer{padding:7px 10px}
html #mmc-report .mmr-foot{margin-top:6px;padding-top:6px}}
@page{size:letter;margin:11mm 13mm 11mm}


/* 1.32.2: Spanish and Portuguese run longer; slightly smaller small print keeps their report to one page */
@media print{
:is(html[lang^="es"],html[lang^="pt"]) #mmc-report .mmc-notes{font-size:9px;line-height:1.35;gap:4px}
:is(html[lang^="es"],html[lang^="pt"]) #mmc-report .mmr-disclaimer{font-size:8.5px;line-height:1.35}
:is(html[lang^="es"],html[lang^="pt"]) #mmc-report th,:is(html[lang^="es"],html[lang^="pt"]) #mmc-report td{padding:3px 5px}
:is(html[lang^="es"],html[lang^="pt"]) #mmc-report table{font-size:9.5px}
:is(html[lang^="es"],html[lang^="pt"]) #mmc-report .mmc-name small,:is(html[lang^="es"],html[lang^="pt"]) #mmc-report .mmc-split{font-size:9px}
:is(html[lang^="es"],html[lang^="pt"]) #mmc-report .mmr-disclaimer{padding:6px 9px}
:is(html[lang^="es"],html[lang^="pt"]) #mmc-report .mmr-foot{margin-top:4px;padding-top:4px;font-size:9.5px}
:is(html[lang^="es"],html[lang^="pt"]) #mmc-report .mmr-sec{margin-bottom:6px}
:is(html[lang^="es"],html[lang^="pt"]) #mmc-report h1{font-size:18px;margin-top:8px}
:is(html[lang^="es"],html[lang^="pt"]) #mmc-report .mmr-head{padding-bottom:6px}
:is(html[lang^="es"],html[lang^="pt"]) #mmc-report .mmc-answer{font-size:12px}}


/* 1.32.5: custom sliders. The purple handle and the filled track stay visible at every position, even all the way left
   (Safari's built-in slider hid the purple under its white handle at the minimum). --fill is set by meta8-calc.js. */
#mm-calc input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:24px;margin:2px 0;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;cursor:pointer}
#mm-calc input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:linear-gradient(to right,var(--c-accent) 0 var(--fill,10px),#ded7ea var(--fill,10px))}
#mm-calc input[type=range]::-moz-range-track{height:6px;border-radius:3px;background:#ded7ea}
#mm-calc input[type=range]::-moz-range-progress{height:6px;border-radius:3px;background:var(--c-accent)}
#mm-calc input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;margin-top:-7px;border-radius:50%;background:var(--c-accent);border:3px solid #fff;box-shadow:0 0 0 1px var(--c-accent),0 1px 4px rgba(27,21,36,.35)}
#mm-calc input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--c-accent);border:3px solid #fff;box-shadow:0 0 0 1px var(--c-accent),0 1px 4px rgba(27,21,36,.35)}
#mm-calc input[type=range]:focus{outline:none}
#mm-calc input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 1px var(--c-accent),0 0 0 5px rgba(107,47,179,.3)}
#mm-calc input[type=range]:focus-visible::-moz-range-thumb{box-shadow:0 0 0 1px var(--c-accent),0 0 0 5px rgba(107,47,179,.3)}
