/* Shared mobile layout: readable controls and cards instead of wide tables. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{min-width:0}img,svg,video{max-width:100%}
main,section,article,aside,form,fieldset,header,footer,nav,.panel,.admin-shell,.admin-main{min-width:0}
button,input,select,textarea{font-family:inherit}button,a,input,select,textarea{touch-action:manipulation}
textarea{max-width:100%}p,h1,h2,h3,.admin-message,.editor-note,.audit-item,.method-note{overflow-wrap:anywhere}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #da6871;outline-offset:3px}
.mobile-menu-toggle{display:none}.tablewrap,.admin-table-wrap{max-width:100%;-webkit-overflow-scrolling:touch}
.ticker{max-width:100%;-webkit-overflow-scrolling:touch}.ticker>div{flex-shrink:0}
dialog{max-height:85vh;max-height:85dvh;overflow:auto;overscroll-behavior:contain}.dialoghead{align-items:flex-start}.dialoghead button{flex:0 0 44px;min-height:44px}
.toast{max-width:calc(100% - 32px);overflow-wrap:anywhere;text-align:center;bottom:max(16px,env(safe-area-inset-bottom))}
.integration-body{padding:0 27px 27px}.integration-body p{line-height:1.65;font-size:16px;margin:0 0 16px}.integration-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.integration-actions>*{display:inline-flex;align-items:center;justify-content:center;min-height:44px;white-space:normal;text-align:center}.integration-result{white-space:pre-wrap;overflow-wrap:anywhere;padding:16px;background:#f5f6f8;border-radius:6px;font:14px/1.7 'DM Sans',Arial;min-height:56px}.integration-body details{border-top:1px solid var(--border);padding-top:18px;margin-top:20px}.integration-body summary{min-height:44px;cursor:pointer;font-weight:600}.integration-body code{overflow-wrap:anywhere;word-break:break-word}.integration-body ol{padding-left:22px;line-height:1.8}.integration-status{display:inline-block;padding:8px 12px;background:#f4f5f6;border-radius:6px;margin-bottom:18px;font-size:14px}.integration-body button:disabled{opacity:.55}
@media(max-width:1050px){
 body:not(.admin-body)>header{flex-wrap:wrap;gap:16px;padding-top:20px;padding-bottom:16px}
 body:not(.admin-body)>header>nav{order:3;flex-basis:100%;justify-content:space-between;gap:14px;margin:0;flex-wrap:wrap}
 body:not(.admin-body)>header>.outline{display:block;margin-left:auto}
 .index-page header>.outline{display:block}
}
@media(max-width:760px){
 body:not(.admin-body)>header{display:flex;padding:16px 5%;align-items:center;gap:12px}
 body:not(.admin-body)>header>.brand{font-size:27px;flex:1;min-width:0}
 body:not(.admin-body)>header>.outline{display:none}
 .mobile-menu-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;border:1px solid var(--border);border-radius:6px;font-size:14px;font-weight:600;background:#fff}
 body:not(.admin-body)>header>nav{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px;overflow:visible;width:100%;margin-top:4px;border-top:1px solid var(--border);padding-top:12px}
 body:not(.admin-body)>header>nav a{white-space:normal;line-height:1.45;padding:12px 10px;min-height:44px;font-size:14px;border-radius:5px}
 body:not(.admin-body)>header>nav a.active{background:#fbedef}nav a.active:after{display:none}
 main{margin-inline:5%}.sectionline{align-items:flex-start;gap:10px;flex-wrap:wrap}.sectionline>span{font-size:13px;line-height:1.5}
 .metrics,.index-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .metric,.index-stat{padding:16px 13px}.metrichead{font-size:14px;gap:8px;flex-wrap:wrap}.metric strong,.index-stat strong{font-size:26px;letter-spacing:-.7px;overflow-wrap:normal;line-height:1.5}.metric strong small,.index-stat strong small{display:block;font-size:13px}
 .metricfoot,.stat-foot{font-size:13px;line-height:1.6}.metricfoot{min-height:40px}.metrichead span{font-size:13px}.stat-label{font-size:14px;line-height:1.5}
 .panelhead,.editor-heading{gap:14px;flex-wrap:wrap;align-items:flex-start}.panelhead h2,.editor-heading h2{font-size:21px;line-height:1.45}.panelhead .outline,.editor-heading .outline{font-size:14px;min-height:44px}
 .outline,.primary,.textbutton,.reset{min-height:44px;white-space:normal;font-size:14px;line-height:1.45}
 .filters{margin-inline:16px;gap:12px}.segmented{width:100%;min-width:0}.segmented button{font-size:14px;min-width:0;min-height:44px;padding:8px 6px;line-height:1.4}.search{min-height:48px}.search input{font-size:16px}
 input,select,textarea,.index-filters input,.index-filters select,.date-editor input,.input-price input,.note-editor input,.note-editor textarea{font-size:16px;min-height:44px}
 input[type=checkbox],input[type=range]{min-height:0}.region-toggles label{min-height:44px;font-size:14px;gap:9px}.region-toggles input{width:20px;height:20px;flex-shrink:0}
 .tablewrap,.admin-table-wrap{overflow:visible}
 table.mobile-cards{display:block;min-width:0!important;white-space:normal;width:100%;border-collapse:separate}
 .mobile-cards thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
 .mobile-cards tbody{display:grid;gap:12px;padding:0 16px 16px}
 .mobile-cards tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;background:#fafbfc;border:1px solid var(--border);border-radius:8px;padding:16px;min-width:0}
 .mobile-cards td,.mobile-cards td:first-child,.mobile-cards td:last-child{display:block;border:0;min-width:0;padding:0;font-size:16px;color:var(--dark);font-weight:600;line-height:1.5;overflow-wrap:anywhere}
 .mobile-cards td:first-child{grid-column:1/-1;border-bottom:1px solid var(--border);padding-bottom:12px}
 .mobile-cards td:not(:first-child)::before{content:attr(data-label);display:block;font-size:12px;color:#737780;font-weight:500;margin-bottom:6px;letter-spacing:.2px}
 .prices .mobile-cards td:last-child{grid-column:1/-1;font-size:14px;font-weight:400;display:flex;gap:8px;align-items:baseline}.prices .mobile-cards td:last-child::before{margin:0}
 .mobile-cards td[colspan]{grid-column:1/-1}.mobile-cards .average-cell{background:none!important}
 .tablefoot{font-size:13px}.fxrow{gap:10px;margin-inline:20px}.fxrow>div{min-width:0}.fxicon{flex-shrink:0}.fxrow b{font-size:14px}.fxrow small,.softnote{font-size:13px}
 .material{padding:20px}.material dl div{gap:12px;align-items:flex-start}.material dt{min-width:0}.material dd{flex-shrink:0;font-size:16px}.material dt small{font-size:13px;margin-top:5px}.materialtop{font-size:13px}
 .notegrid p,.comparison p,.disclaimer p,.method-note p{font-size:16px}.comparison{padding:22px}.comparison .muted{display:block;line-height:1.6;font-size:13px}.barlabel{font-size:14px}.disclaimer{padding:20px}.disclaimer b{font-size:14px}
 footer{gap:16px;font-size:14px}footer a,footer button{min-height:44px;display:inline-flex;align-items:center}footer .footerbrand{display:block}
 .index-title h1{font-size:30px;line-height:1.3}.index-title p{font-size:16px}.archive-badge{white-space:normal}.archive-badge b{display:block;margin:0 0 3px}
 .index-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:16px;gap:14px}.index-filters label,.index-filters label:first-child{min-width:0;font-size:14px}.index-filters label:first-child{grid-column:1/-1}.index-filters input{max-width:100%;padding:10px 6px;min-width:0}
 .chart-wrap{min-width:0;overflow:visible;margin:0 8px}.history-chart{width:100%;min-width:0;min-height:0;touch-action:pan-y}.chart-tooltip{max-width:calc(100% - 16px);font-size:13px}.chart-tooltip div{gap:12px}.chart-top p{font-size:14px;line-height:1.6}.chart-toolbar{gap:12px}.mode-select{white-space:normal}.mode-select button{font-size:14px;min-height:44px;padding:8px;line-height:1.4}.periods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.periods button{min-height:44px;font-size:14px}.region-toggles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:4px 12px}
 .chart-bottom{font-size:14px}.chart-bottom label{white-space:normal;gap:10px}.chart-bottom input{min-width:0}.history-table .panelhead{flex-wrap:wrap}.history-table .panelhead p{line-height:1.6;font-size:14px}.pagination{font-size:14px;line-height:1.5}.page-controls{width:100%;justify-content:space-between;gap:10px}.page-controls button{min-width:44px;min-height:44px}
 .admin-sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow:visible}.admin-nav{white-space:normal;line-height:1.5;font-size:14px;min-height:48px;padding:10px}.admin-nav span{flex-shrink:0}
 .admin-top{flex-wrap:wrap;font-size:14px;padding-block:12px;gap:8px}.admin-top>a{font-size:14px;min-height:44px;display:inline-flex;align-items:center}.admin-heading h1{font-size:28px;line-height:1.4}.admin-heading p{font-size:16px}.admin-summary strong{font-size:21px;overflow-wrap:anywhere}.admin-summary article>span,.admin-summary small{font-size:13px;line-height:1.5}
 .admin-main{padding:24px 5%}.admin-message{padding:14px;font-size:15px}.editor-heading p{font-size:14px;line-height:1.6}.date-editor{margin-inline:16px}.date-editor label{font-size:14px}.date-editor p{font-size:14px}.region-ident{font-size:16px}.input-price{min-width:0;max-width:100%;width:100%}.input-price input{min-width:0;width:100%;padding:10px 8px}.input-price span{padding-right:8px}.editor-note{font-size:14px}.note-editor label{font-size:14px}.audit-item p{font-size:14px;overflow-wrap:anywhere}.audit-item>div{min-width:0}
 .save-bar{position:static;padding:16px;margin-top:18px}.save-bar b{font-size:14px}.save-bar small{font-size:13px;line-height:1.5}.save-actions{display:grid;grid-template-columns:1fr;gap:10px}.save-actions button{font-size:16px;min-height:48px;white-space:normal}.save-actions #saveBtn{grid-row:1}.admin-footnote{font-size:13px}.admin-body dialog{padding:20px 12px}.dialoghead{padding-inline:4px}.dialog-actions{flex-wrap:wrap}.dialog-actions button{flex:1;min-width:110px;min-height:48px}.source-table small{font-size:12px;margin-left:0}.source-table{margin:0}.source-table tbody{padding:16px 0 0}.admin-body dialog p{font-size:16px}.integration-body{padding:0 18px 20px}.integration-actions{display:grid;grid-template-columns:1fr}.integration-body code{font-size:13px}
 #dialogBody{font-size:16px}#dialogBody .mobile-cards tbody{padding-inline:0}#dialogBody .mobile-cards td{padding:0;font-size:15px}
}
@media(max-width:360px){.metric strong,.index-stat strong{font-size:23px}.metric{padding:14px 11px}.index-filters{grid-template-columns:1fr}.index-filters label:first-child{grid-column:auto}.admin-summary{grid-template-columns:1fr}.admin-summary article:last-child{grid-column:auto}.brand small{font-size:8px;letter-spacing:1.6px}.mobile-menu-toggle{padding-inline:10px}.fxicon{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

.history-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.mobile-sort{display:none}
@media(max-width:760px){.history-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.mobile-sort{display:block}.mobile-cards #sortDate{display:none}.history-actions button{padding:10px 8px;font-size:14px}.admin-top>span{min-width:0;overflow-wrap:anywhere}}
.price-guide{padding:26px;margin-top:30px}.price-guide h2{margin-bottom:15px}.price-guide p{font-size:16px;line-height:1.8;margin:12px 0;color:#646b74}.price-guide details{border-top:1px solid var(--border);padding:10px 0}.price-guide summary{cursor:pointer;font-size:16px;line-height:1.6;font-weight:600;padding:10px 0;min-height:44px}.price-guide a{color:var(--red);text-decoration:underline;text-underline-offset:3px}.price-guide .guide-source{font-size:14px}@media(max-width:760px){.price-guide{padding:20px}.price-guide h2{font-size:21px}}

/* Keep each indicator's source date visible at every viewport size. */
.ticker>div{display:grid;grid-template-columns:auto auto;gap:5px 10px}.ticker small{display:block;grid-column:1/-1;font-size:12px;line-height:1.5}.ticker small time{white-space:nowrap}

.material .materialtop{display:flex;justify-content:flex-start;align-items:center;gap:12px;margin-bottom:0}.materialtop .material-icon{flex:0 0 22px;font-size:20px;line-height:1;text-align:center;color:#90959c}.material .materialtop h3{margin:0;min-width:0}

/* Regional comparison occupies the former exchange-rate sidebar. */
.workspace{margin-bottom:33px}
.workspace>.comparison{min-width:0;align-self:start;grid-template-columns:minmax(0,1fr);gap:25px;margin:0;padding:27px 25px}
.workspace>.comparison .eyebrow{font-size:12px;letter-spacing:1px;margin-bottom:10px}
.workspace>.comparison h2{font-size:23px;line-height:1.4;overflow-wrap:break-word}
.workspace>.comparison p{font-size:14px;line-height:1.7;margin-top:14px}
.workspace>.comparison strong{font-size:32px;margin:15px 0 6px}
.workspace>.comparison .muted{display:block;font-size:13px;line-height:1.6}
.workspace>.comparison .bars{gap:22px;padding-top:23px;border-top:1px solid var(--border)}
.workspace>.comparison .barlabel{font-size:14px;gap:12px}
.workspace>.comparison .barlabel b{white-space:nowrap}
.workspace>.comparison .axis{font-size:12px;gap:8px;flex-wrap:wrap}
@media(max-width:760px){.workspace>.comparison{padding:23px 20px}.workspace>.comparison h2{font-size:22px}.workspace>.comparison p{font-size:16px}}

/* Shared phone and tablet refinements across public pages and administration. */
.admin-menu-toggle{display:none}
@media(max-width:1024px){
 .admin-sidebar{position:static;width:auto;padding:18px 5%;border-right:0;border-bottom:1px solid var(--border);display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:16px}
 .admin-sidebar .brand{font-size:25px}.admin-sidebar .nav-caption,.admin-sidebar .sidebar-help,.admin-sidebar .admin-account{display:none}
 .admin-menu-toggle{display:block;min-height:48px;padding:10px 14px;max-width:100%;font-size:14px;line-height:1.5;border:1px solid var(--border);border-radius:7px;color:var(--red);background:#fff7f8;margin-left:auto;white-space:normal;text-align:left}
 .admin-sidebar nav{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;gap:8px;overflow:visible}
 .admin-sidebar .admin-nav{min-height:48px;font-size:14px;white-space:normal;padding:12px;line-height:1.5}
 .admin-shell{margin-left:0}.admin-main{padding:24px 5%;max-width:none}.admin-top{padding:14px 5%}
 .admin-heading h1{font-size:clamp(24px,4vw,31px)}.admin-heading p{font-size:16px}
 .admin-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-summary article:last-child{grid-column:auto}
 .admin-summary article{padding:16px;min-width:0}.admin-summary strong{font-size:22px;overflow-wrap:anywhere}
 .admin-summary article>span,.admin-summary small{font-size:14px;line-height:1.6}
 .save-bar{position:static;flex-wrap:wrap}.save-actions{flex-wrap:wrap}.save-actions button{min-height:48px;font-size:16px}
 .date-editor input,.note-editor input,.note-editor textarea{font-size:16px;min-height:48px}
 .editor-heading{flex-wrap:wrap}.editor-heading p,.editor-note{font-size:14px;line-height:1.65}
 .workspace{grid-template-columns:minmax(0,1fr)}
 .workspace .prices,.workspace .payment-panel,.workspace>.comparison{grid-column:1;grid-row:auto}
 .materials{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
 .visitor-columns table{white-space:normal}
}
@media(max-width:760px){
 .admin-sidebar{gap:12px}.admin-menu-toggle{width:100%;margin:0}.admin-heading{margin-bottom:18px}
 .admin-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-summary article:last-child{grid-column:1/-1}
 .admin-summary strong{font-size:21px}.save-actions{width:100%;margin:0;display:grid;grid-template-columns:1fr}
 .admin-body .mobile-cards td:not(:first-child)::before{font-size:14px;letter-spacing:0}
 .archive-page header nav{display:grid}.archive-page header nav a{font-size:14px}
 .archive-page .archive-card{padding:18px 14px}.archive-card .mobile-cards tbody{padding:0}
 .archive-card .mobile-cards td{flex-wrap:wrap}.archive-page .archive-pager a{min-height:44px;padding-block:10px}
 .archive-page .archive-years{grid-template-columns:repeat(2,minmax(0,1fr))}
 .archive-chart-heading select{font-size:16px;min-height:48px;width:100%}.archive-chart-heading label{font-size:14px}
 .archive-date-control input[type=range]{min-height:44px}.archive-chart-values small{display:block;margin-top:3px}
 .chart-bottom{align-items:stretch}.chart-bottom label{width:100%;flex-wrap:wrap}.chart-bottom input[type=range]{flex:1;min-height:44px}
 .chart-toolbar,.chart-top{padding-inline:18px}.chart-bottom{padding-inline:18px}.chart-wrap{min-height:0}
 .payment-foot summary,.integration-body summary{padding-block:10px;min-height:44px}
 .payment-result-wrap{overflow-wrap:anywhere}.payment-breakdown>div{flex-wrap:wrap}.payment-breakdown dd{margin-left:auto}
 .archive-intro .eyebrow{line-height:1.7}.archive-page footer nav{width:100%;gap:8px 18px;overflow:visible}
 .archive-page footer nav a{white-space:normal;padding-block:10px}
}
@media(max-width:380px){
 .admin-summary{grid-template-columns:minmax(0,1fr)}.admin-summary article:last-child{grid-column:auto}
 .price-editor.mobile-cards tr,.source-table.mobile-cards tr{grid-template-columns:minmax(0,1fr)}
 .admin-body .mobile-cards td:first-child{grid-column:auto}.admin-body .input-price input{min-height:48px}
 .metric strong{font-size:24px}.metric{padding:14px 10px}.regionbadge{margin-right:6px}
 .archive-chart-values{gap:8px}.archive-chart-values>div{padding:10px}.archive-chart-values strong{font-size:18px}
 .archive-chart-heading h2{font-size:21px}.archive-page .archive-intro h1{font-size:27px}
}
@media(max-width:760px){
 .admin-summary{grid-template-columns:minmax(0,1fr);gap:8px}
 .admin-summary article,.admin-summary article:first-child{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;align-items:center;padding:12px 14px;border-top-width:1px}
 .admin-summary article:first-child{border-left:3px solid var(--red)}
 .admin-summary article>span{grid-column:1;font-size:13px}.admin-summary article>small{grid-column:1;font-size:12px}
 .admin-summary strong{grid-column:2;grid-row:1/3;margin:0;font-size:20px;text-align:right}
 .admin-summary strong small{font-size:13px}.admin-heading .eyebrow{margin-bottom:8px}
}
.visitor-privacy-note{width:100%;font-size:13px;line-height:1.7;color:var(--muted)}

/* Compact homepage regional price cards. */
#metrics .metric{padding:9px 20px}
#metrics .metric:first-child{padding-top:7px}
#metrics .metrichead{line-height:1.3}
#metrics .metric strong{margin-top:3px;font-size:27px;line-height:1.15}
#metrics .metric strong small{display:inline;font-size:12px}
#metrics .metricfoot{margin-top:3px;min-height:0;line-height:1.3}
@media(max-width:760px){#metrics .metric{padding:8px 12px}#metrics .metric:first-child{padding-top:6px}#metrics .metric strong{font-size:24px}#metrics .metricfoot{font-size:11px}}
