/* Reading workspace / checkout / administration share the existing brand tokens. */
[hidden]{display:none!important}
html{scroll-padding-top:90px}
body{font-size:16px}
button,input,select,textarea{font:inherit}
:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.wrap,.adm-main,.step-b{min-width:0}
.wrap{overflow-wrap:anywhere}
.enamad-seal{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;padding:12px;min-width:126px;border:1px solid var(--line);border-radius:12px;font-size:12px;text-align:center}
.enamad-seal img{object-fit:contain;background:white;border-radius:8px;padding:8px;box-sizing:content-box}
.foot-grid{grid-template-columns:1fr 1.5fr 1fr auto}
.bottom-nav{display:none}
.desktop-app-downloads{margin:40px 0 24px;padding:28px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(125deg,var(--card),var(--accent-faint));text-align:right;direction:rtl}
.download-app-intro{display:flex;align-items:center;gap:16px}.download-app-intro>img{flex:none}.download-app-intro h2{font-size:23px;margin:0 0 6px}.download-app-intro p{font-size:14px;line-height:1.9;color:var(--muted);margin:0}
.download-app-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}.download-app-option{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:14px;background:var(--card);color:var(--ink);padding:15px 18px;text-align:right;font:inherit;text-decoration:none;min-height:76px;box-sizing:border-box}.download-app-option strong{display:block;font-size:14px}.download-app-option small{display:block;font-size:12px;margin-top:3px;color:var(--muted)}.download-app-option.ready{background:var(--action);color:var(--on-action);border-color:transparent}.download-app-option.ready small{color:inherit;opacity:.85}.download-app-option.pending{cursor:help}.download-app-option:focus-visible{outline:3px solid var(--accent-ink);outline-offset:3px}.download-app-icon{display:grid;place-items:center;width:30px;height:32px;flex:none}.download-app-icon svg,.download-app-icon img{width:28px;height:28px;object-fit:contain}.download-app-status{font-size:12px;color:var(--muted);margin:14px 0 0;min-height:24px}
@media(max-width:1000px){.download-app-options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.desktop-app-downloads{display:none}}
.workspace-switch{display:inline-flex;margin:12px 0;align-items:center;min-height:44px}
.reading-workspace .wrap:has(nav.toc){max-width:1120px!important;margin:0 auto!important;padding:28px!important}
.reading-workspace nav.toc,.reading-workspace .toc-fab,.reading-workspace .toc-panel{display:none!important}
.reading-tools{padding:20px 0 0;border-bottom:1px solid var(--line);margin-bottom:28px}
.reading-label{font-size:12px;font-weight:700;letter-spacing:.04em;color:var(--accent-ink)}
.reading-tools h1{font-size:clamp(25px,3vw,40px);line-height:1.5;margin:8px 0}
.reading-tools>p{margin:8px 0 24px;font-size:14px}
.reading-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0;align-items:center}
.reading-tabs a{padding:10px 16px;min-height:44px;box-sizing:border-box;border:1px solid transparent;border-radius:8px;text-decoration:none;font-size:14px;font-weight:650;color:var(--ink-2)}
.reading-tabs a[aria-current=page]{color:var(--accent-ink);background:var(--accent-soft);border-color:var(--line-strong)}
.section-picker{background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:8px;max-width:100%;padding:10px;margin-bottom:20px}
.sample-context{font-size:13px;margin:0 0 16px;border-bottom:1px solid var(--line);padding:12px 0}.sample-context>summary{cursor:pointer;color:var(--muted)}.sample-context .sample-note{margin:12px 0;padding:12px}
.reading-tabs{scrollbar-width:none}.reading-tabs::-webkit-scrollbar{display:none}
.report-intro{margin:20px 0;padding:16px;border:1px solid var(--line);border-radius:10px}
.report-intro summary{cursor:pointer;font-weight:600}
.report-intro .masthead{padding:24px 0;margin:0}
.today-overview{border:0!important;margin:0!important;padding:0!important;background:transparent!important}
.today-overview h2{font-size:24px;margin:8px 0 24px}
.daily-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.daily-highlights article{padding:0 0 24px;border-bottom:1px solid var(--line)}
.daily-highlights h3{font-size:18px;line-height:1.8;margin:12px 0}
.daily-highlights .excerpt{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;font-size:15px;line-height:1.9;color:var(--ink-2)}
.daily-highlights a,.text-link{display:inline-block;padding:10px 0;min-height:44px;box-sizing:border-box;color:var(--accent-ink)}
.market-index{padding:28px 0;margin:12px 0;display:flex;flex-wrap:wrap;gap:12px}
.market-index h3{width:100%;margin:0 0 8px}
.market-index a{border:1px solid var(--line);border-radius:10px;padding:14px 20px;min-width:90px;text-align:center;background:var(--card)}
.today-overview>.text-link{margin-inline-start:20px}
.reading-workspace section{scroll-margin-top:90px}
.reading-workspace section>p,.reading-workspace section>ul{line-height:2;max-width:80ch}
.reading-workspace table{font-size:14px}
.matrix-tools{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:20px 0}
.matrix-tools input{flex:1;min-width:160px}.matrix-tools select{max-width:190px}
.asset-open{font-size:13px;display:inline-block;margin-inline-start:12px;min-height:44px;padding:10px}
.checkout-progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 28px}
.checkout-progress button{background:transparent;border:0;border-bottom:3px solid var(--line);padding:16px 8px;color:var(--muted);cursor:pointer}
.checkout-progress button[aria-current=step]{border-color:var(--accent);color:var(--accent-ink);font-weight:800}
.checkout-progress button:disabled{opacity:.5;cursor:default}
.checkout-page .hero{padding:24px 0;margin:0 0 24px}.checkout-page .hero img{display:none}.checkout-page .hero h1{font-size:30px}
.checkout-page .step{margin:0!important;padding:16px 0!important;border:0!important}.checkout-page .step-n{display:none}
.checkout-page .step-b{width:100%}.checkout-page .plans{gap:12px}
.checkout-actions{display:flex;justify-content:space-between;gap:12px;padding:20px 0;margin-top:20px;border-top:1px solid var(--line)}
.checkout-actions .btn{min-height:48px}.checkout-actions .btn:last-child{margin-inline-start:auto}
.checkout-help{margin-top:24px;padding:18px;border:1px solid var(--line);border-radius:10px}.checkout-help>summary{cursor:pointer;font-weight:650}
.checkout-page .paycard{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:24px}
.payment-status{padding:24px;border:1px solid var(--line);border-radius:14px;background:var(--card)}
.payment-status h2{margin-top:0}
.checkout-page .addr{overflow-wrap:anywhere;word-break:break-all;direction:ltr;text-align:left}
.admin-statistics{margin:16px 0;border-block:1px solid var(--line);padding:14px 0}.admin-statistics>summary{cursor:pointer;font-weight:650}
.admin-priorities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}
.admin-priorities a{padding:20px;background:var(--accent-soft);border-radius:12px;display:flex;justify-content:space-between;align-items:center}.admin-priorities strong{font-size:28px}
.admin-menu-toggle{display:none}.adm-main .masthead{padding:24px 0;margin-bottom:12px}.adm-main h1{font-size:30px}
.adm-main .tbl-scroll{max-width:100%}.adm-nav .ic{display:none}.adm-nav a{min-height:44px}
.adm-main .src-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){
  body.has-bottom-nav{--mobile-nav-clearance:calc(112px + env(safe-area-inset-bottom,0px));padding-bottom:var(--mobile-nav-clearance)}
  .site-foot,footer.site-foot{display:none!important}
  .bottom-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;z-index:80;bottom:calc(10px + env(safe-area-inset-bottom,0px));inset-inline:12px;max-width:520px;margin-inline:auto;isolation:isolate;background:color-mix(in srgb,var(--card) 94%,transparent);border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));border-radius:27px;padding:8px 5px 7px;gap:2px;box-shadow:0 12px 38px #0004,0 1px 0 #ffffff0d inset;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
  .bottom-nav a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:58px;min-width:44px;padding:2px 0;box-sizing:border-box;font-size:10px;line-height:1.5;text-decoration:none;border:0;border-radius:18px;color:var(--muted);font-weight:650;-webkit-tap-highlight-color:transparent;transition:color .18s ease,background .18s ease,transform .18s ease}
  .bottom-nav .nav-icon{display:grid;place-items:center;width:34px;height:29px;border-radius:11px;transition:background .18s ease,transform .18s ease}
  .bottom-nav svg{display:block;width:23px;height:23px;overflow:visible}
  .bottom-nav a[aria-current=page]{color:var(--accent-ink);font-weight:850}
  .bottom-nav a[aria-current=page]:not(.central) .nav-icon{background:var(--accent-soft)}
  .bottom-nav a[aria-current=page]:not(.central)::after{content:"";position:absolute;bottom:-3px;width:4px;height:4px;border-radius:50%;background:var(--accent)}
  .bottom-nav a.central{gap:3px;justify-content:flex-end;color:var(--ink);font-weight:800}
  .bottom-nav a.central .nav-icon{width:48px;height:48px;margin-top:-23px;border-radius:18px;background:linear-gradient(145deg,#6475EE,#4355DB);color:#FFFFFF;box-shadow:0 5px 14px #0003,0 1px 0 #fff7 inset;border:1px solid #f5dda080;transform:translateY(-2px)}
  .bottom-nav a.central svg{width:26px;height:26px}
  :is(.bottom-nav,.mh-grid) .geo-ring{stroke:var(--sev-alert,#E0A33A)}
  :is(.bottom-nav,.mh-grid) .geo-ping{fill:var(--sev-alert,#E0A33A);stroke:none}
  :is(.bottom-nav,.mh-grid) .p360-math{stroke:var(--accent);stroke-width:2}
  .bottom-nav a.central[aria-current=page] .nav-icon{box-shadow:0 0 0 4px var(--paper),0 0 0 5px color-mix(in srgb,var(--accent) 45%,transparent),0 6px 18px #0004}
  .bottom-nav a.central[aria-current=page] .nav-label{color:var(--accent-ink)}
  .bottom-nav a:active{transform:scale(.94)}
  .bottom-nav a:focus-visible{outline-offset:1px}
  .has-bottom-nav .sup-fab,.has-bottom-nav .toc-fab{bottom:var(--mobile-nav-clearance)}
  .reading-workspace .sup-fab{display:none}.reading-workspace .wrap:has(nav.toc){padding:16px!important}
  .reading-tools{padding-top:8px;margin-bottom:20px}.reading-tools>p{margin-bottom:16px}
  .reading-tabs{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding:4px 0 8px;gap:4px}.reading-tabs a{white-space:nowrap;flex-shrink:0;padding:10px 12px}
  .section-picker{width:100%;font-size:14px}.daily-highlights{grid-template-columns:1fr;gap:18px}.daily-highlights article{padding-bottom:18px}.daily-highlights h3{margin:6px 0;font-size:17px}.daily-highlights .excerpt{-webkit-line-clamp:3}
  .market-index{gap:8px}.market-index a{flex:1 1 32%;padding:12px 8px;font-size:14px;min-width:90px}
  .reading-workspace .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.reading-workspace section{padding:16px!important}
  .matrix-tools{gap:8px}.matrix-tools input{width:100%;flex-basis:100%}.matrix-tools select{max-width:none;flex:1}
  .reading-workspace .tbl-scroll{overflow-x:auto;max-width:100%}.reading-workspace table th,.reading-workspace table td{min-width:88px}
  .checkout-page .wrap{padding:16px}.checkout-page .hero h1{font-size:25px}.checkout-page .hero .lede{font-size:14px}
  .checkout-progress{gap:3px;margin-bottom:18px}.checkout-progress button{font-size:12px;padding:12px 3px;min-height:48px}
  .checkout-page .plans{display:grid;grid-template-columns:1fr!important}.checkout-page .plan-card{display:grid;grid-template-columns:1fr auto;text-align:right;padding:14px 18px}.checkout-page .pc-s,.checkout-page .pc-d{font-size:12px}
  .checkout-page .paycard{padding:16px}.checkout-page .qr{margin:auto}.checkout-page .credit-line{line-height:1.9}
  .checkout-actions{position:sticky;bottom:var(--mobile-nav-clearance);background:var(--paper);z-index:10;padding:12px 0}
  .adm{display:block!important}.admin-menu-toggle{display:block;width:100%;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink);text-align:right}
  .adm-nav{display:none!important;position:static!important}.adm-nav.expanded{display:grid!important;grid-template-columns:1fr 1fr;padding:8px;margin-top:8px}.adm-nav .t{grid-column:1/-1}
  .adm-main .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-priorities{gap:8px}.admin-priorities a{padding:14px;font-size:13px}.admin-priorities strong{font-size:22px}
  .adm-main .src-grid{grid-template-columns:1fr}.adm-main h1{font-size:25px;overflow-wrap:anywhere}
  .responsive-records,.responsive-records tbody,.responsive-records tr{display:block}.responsive-records thead{display:none}.responsive-records tr{border-bottom:1px solid var(--line);padding:12px 0}.responsive-records td{display:grid!important;grid-template-columns:100px minmax(0,1fr);gap:12px;width:auto!important;text-align:start!important;padding:7px 0!important;border:0!important;white-space:normal!important;overflow-wrap:anywhere}
  .responsive-records td::before{content:attr(data-label);color:var(--muted);font-size:12px;direction:rtl}.responsive-records td[colspan]{display:block!important}
  .foot-grid{grid-template-columns:1fr!important}.enamad-seal{justify-self:start;min-width:126px}.site-foot{padding-bottom:20px}
}
@media print{.reading-tools,.bottom-nav,.checkout-actions,.sup-fab{display:none!important}.reading-workspace section[hidden],.reading-workspace .report-intro[hidden]{display:block!important}.reading-workspace .report-intro>header{display:block!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.asset-reading:not(.asset-expanded)>.body,.asset-reading:not(.asset-expanded)>details,.asset-reading:not(.asset-expanded)>.asset-tabs{display:none}
.asset-tabs{display:flex;gap:8px;padding:12px 16px;border-block:1px solid var(--line)}
.asset-tabs [aria-pressed=true]{background:var(--accent-soft);color:var(--accent-ink)}
.asset-expanded[data-asset-view=overview]>.body>p:not(:first-child){display:none}
.asset-expanded[data-asset-view=sources]>.body{display:none}
.asset-expanded[data-asset-view=sources]>details{display:block}
.asset-expanded[data-asset-view=sources]>details>summary{display:none}
.asset-expanded[data-asset-view=sources]>details>.body{display:block}
.asset-expanded[data-asset-view=analysis]>details,.asset-expanded[data-asset-view=overview]>details{display:none}
@media print{.asset-reading>.body,.asset-reading>details,.asset-reading>.body>p{display:block!important}.asset-tabs,.asset-open{display:none!important}}

.reading-workspace .source-inline{display:none}.source-dialog{background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:16px;width:min(600px,calc(100vw - 40px));max-height:80dvh;overflow:auto;padding:24px}.source-dialog::backdrop{background:#0009}.source-dialog p{line-height:2}.source-dialog .btn{float:left}.source-trigger{margin:16px 0}
@media(max-width:760px){.source-dialog{margin:auto 0 0;width:100%;max-width:100%;box-sizing:border-box;border-radius:20px 20px 0 0;padding:24px 20px calc(24px + env(safe-area-inset-bottom))}}
@media print{.asset-reading[hidden],.source-inline{display:block!important}.source-trigger{display:none!important}}
.checkout-page .step{display:block!important}.checkout-page .hero img{display:none!important}.checkout-page .sup-fab{display:none}.site-foot>.enamad-seal{width:fit-content;margin-top:24px}
.reading-workspace .asset-reading>.acard-h{flex-wrap:wrap}.reading-workspace .asset-reading .px{overflow-wrap:anywhere}

.asset-facts{display:grid;grid-template-columns:160px minmax(0,1fr);gap:0 24px;line-height:2}.asset-facts dt,.asset-facts dd{margin:0;padding:14px 0;border-bottom:1px solid var(--line)}.asset-facts dt{color:var(--muted)}
@media(max-width:760px){.asset-facts{grid-template-columns:96px minmax(0,1fr);gap:0 12px;font-size:14px}.checkout-page .hero{padding:12px 0!important}}
@media print{.generated-asset[hidden]{display:none!important}}

@media(max-width:760px){
.adm .responsive-records{min-width:0!important;width:100%!important;table-layout:auto!important}
.adm .responsive-records thead{display:none!important}.adm .responsive-records tbody,.adm .responsive-records tr{display:block!important;width:100%!important}
.adm .responsive-records td{min-width:0!important;max-width:none!important;width:auto!important;grid-template-columns:90px minmax(0,1fr)}
.record-value{min-width:0;overflow-wrap:anywhere}.adm-main .tbl-scroll{overflow-x:visible}
}
@media print{.reading-workspace #matrix tr[hidden]{display:table-row!important}.reading-workspace #matrix th[hidden],.reading-workspace #matrix td[hidden]{display:table-cell!important}}

/* Mobile account shortcuts do not change the desktop account layout. */
.mobile-account-hub{display:none}
@media(max-width:760px){
.mobile-account-hub{display:grid;gap:0;margin:20px 0;border:1px solid var(--line);border-radius:20px;background:var(--card);overflow:hidden}
.mobile-account-hub>a{display:flex;align-items:center;gap:13px;min-height:80px;padding:14px 16px;border:0;text-decoration:none;color:var(--ink);box-sizing:border-box}
.mobile-account-hub>a+a{border-top:1px solid var(--line)}
.account-service-icon{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border-radius:14px;background:var(--accent-soft);color:var(--accent-ink)}
.account-service-icon svg{width:23px;height:23px}
.account-service-copy{display:flex;flex:1;flex-direction:column;gap:4px}.account-service-copy strong{font-size:14px}.account-service-copy small{font-size:11px;color:var(--muted)}
.account-service-arrow{font-size:25px;color:var(--muted)}
.mobile-account-hub>a:active{background:var(--accent-soft)}
}

@media(max-width:760px){
.reader-bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr));max-width:460px;inset-inline:14px;padding:7px 8px 8px;border-radius:25px}
.reader-bottom-nav .nav-secondary{display:none}
.reader-bottom-nav a{font-size:11px;gap:4px;min-height:56px}
.reader-bottom-nav a:not(.central) .nav-icon{width:48px;height:29px;border-radius:12px}
.reader-bottom-nav a.central .nav-icon{width:46px;height:46px;margin-top:-13px;border-radius:17px}
.reader-bottom-nav a[aria-current=page]:not(.central)::after{display:none}
}
/* Design-system guard: on phones no element may widen the layout viewport (it shifts the page and the fixed bottom nav). Grids and flex children shrink; anything wider is clipped, never scrolled. */
@media(max-width:760px){html,body{overflow-x:clip;max-width:100%}.wrap>*{min-width:0}}
@media(max-width:760px){.mobile-account .sup-fab{display:none}.mobile-account .masthead.slim{padding-top:18px;margin-bottom:0}.mobile-account .workspace-switch{margin:8px 0 16px}}

/* Reports and archives do not load account/ui.css. Own the controls added here. */
.reading-workspace .matrix-tools .inp,.reading-workspace .section-picker{
  box-sizing:border-box;min-height:46px;padding:10px 14px;margin:0;border:1px solid var(--line-strong);border-radius:10px;background-color:var(--card);color:var(--ink);font:inherit;font-size:14px;line-height:1.6
}
.reading-workspace .matrix-tools input{min-width:160px;max-width:none}
.reading-workspace .matrix-tools input::placeholder{color:var(--muted);opacity:1}
.reading-workspace .matrix-tools select.inp,.reading-workspace select.section-picker{
  appearance:none;-webkit-appearance:none;cursor:pointer;padding-inline-end:36px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23a79c86' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E");
  background-position:12px 50%;background-size:16px 16px;background-repeat:no-repeat
}
.reading-workspace select option{background:var(--card);color:var(--ink)}
.reading-workspace .section-picker{margin-bottom:20px;max-width:100%;text-overflow:ellipsis}
.reading-workspace .matrix-tools{padding:16px;background:var(--card);border:1px solid var(--line);border-radius:12px;box-sizing:border-box}
.reading-workspace .matrix-tools .muted{font-size:13px;white-space:nowrap}
.reading-workspace :is(.asset-tabs,.source-dialog) .btn,.reading-workspace .source-trigger{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 16px;box-sizing:border-box;border:1px solid var(--line-strong);border-radius:9px;background:var(--card);color:var(--ink-2);font:inherit;font-size:14px;line-height:1.5;font-weight:650;cursor:pointer;text-decoration:none
}
.reading-workspace .asset-tabs{flex-wrap:wrap;background:var(--paper)}
.reading-workspace .asset-tabs [aria-pressed=true]{background:var(--accent-soft);color:var(--accent-ink);border-color:var(--accent);font-weight:800}
.reading-workspace :is(.asset-tabs,.source-dialog) .btn:hover,.reading-workspace .source-trigger:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink)}
.reading-workspace :is(h1,h2,.acard-h)[tabindex="-1"]:focus{outline:none}

/* Keep one semantic table: only its mobile presentation becomes record cards. */
@media screen and (max-width:760px){
  .reading-workspace .tbl-scroll:has(.mobile-card-table),.mobile-account .tbl-scroll:has(.mobile-card-table){overflow:visible;border:0;background:transparent}
  .mobile-card-table{display:block!important;width:100%!important;min-width:0!important;border:0!important;background:transparent!important}
  .mobile-card-table>tbody,.mobile-card-table>thead,.mobile-card-table>tfoot{display:block;width:100%!important}
  .mobile-card-table .mobile-table-head{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .mobile-card-table .mobile-table-record{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;padding:0 16px 12px;margin:12px 0;border:1px solid var(--line);border-radius:16px;background:var(--card);overflow:hidden}
  .mobile-card-table .mobile-table-record>td,.mobile-card-table .mobile-table-record>th{display:block;width:auto!important;min-width:0!important;max-width:none!important;padding:12px 0!important;border:0!important;text-align:start!important;white-space:normal!important;overflow-wrap:anywhere;font-size:13px;line-height:1.8;background:transparent!important}
  .mobile-card-table .mobile-table-record>td:not(.mobile-record-title)::before,.mobile-card-table .mobile-table-record>th:not(.mobile-record-title)::before{content:attr(data-label);display:block;color:var(--muted);font-size:11px;font-weight:500;margin-bottom:5px}
  .mobile-card-table .mobile-table-record>.mobile-record-title{grid-column:1/-1;font-size:15px;font-weight:800;border-bottom:1px solid var(--line)!important;padding:14px 0!important}
  .mobile-card-table .mobile-record-title a{display:inline-block;min-height:32px;padding:3px 0;color:var(--accent-ink)}
  .mobile-card-table .mobile-record-wide{grid-column:1/-1}
  .mobile-card-table .mobile-table-group{display:block;margin:24px 0 8px}
  .mobile-card-table .mobile-table-group>td,.mobile-card-table .mobile-table-group>th{display:block;width:auto!important;min-width:0!important;padding:8px 0!important;border:0!important;background:transparent!important;color:var(--accent-ink);font-weight:800}
}

/* Compact desktop footer: trust seal occupies the far end of the existing row. */
@media(min-width:761px){
.site-foot .foot-grid{grid-template-columns:minmax(170px,1fr) minmax(250px,1.7fr) 116px;gap:12px 28px;align-items:start}
.site-foot .foot-brand{grid-column:1;grid-row:1}
.site-foot .foot-contact{grid-column:2;grid-row:1}
.site-foot .foot-links{grid-column:1/3;grid-row:2;padding:0}
.site-foot .foot-grid>.enamad-seal{grid-column:3;grid-row:1/3;justify-self:end;align-self:start;min-width:0;width:116px;box-sizing:border-box;padding:8px;margin:0;border:0;gap:4px;font-size:10px}
.site-foot .enamad-seal img{width:86px;height:82px;padding:4px;border-radius:6px;object-fit:contain}
}

.reading-mode{display:flex;gap:5px;padding:5px;background:var(--card);border:1px solid var(--line);border-radius:13px;width:fit-content;margin:20px 0 10px}
.reading-mode button{font:inherit;font-size:14px;min-height:46px;padding:10px 22px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--muted);cursor:pointer}
.reading-mode button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--line-strong);color:var(--accent-ink);font-weight:800}
.reading-tools .reading-mode-help{font-size:13px;color:var(--muted);line-height:1.9;margin:0 0 20px}
button.section-picker{cursor:pointer;text-align:start;line-height:1.8}
.section-dialog{box-sizing:border-box;width:min(680px,calc(100vw - 40px));max-height:85dvh;padding:24px;border:1px solid var(--line-strong);border-radius:22px;background:var(--card);color:var(--ink);overflow:auto;box-shadow:0 25px 80px #0005}
.section-dialog::backdrop{background:#0008;backdrop-filter:blur(4px)}
.section-dialog-top{display:flex;align-items:start;justify-content:space-between;gap:16px}.section-dialog h2{font-size:21px;margin:0;line-height:1.7}.section-dialog p{font-size:14px;line-height:1.9}
.section-dialog button{font:inherit;font-size:13px;min-height:44px;padding:10px 16px;border:1px solid var(--line-strong);border-radius:10px;cursor:pointer;background:var(--card);color:var(--ink)}
.section-dialog .dialog-close{flex-shrink:0;padding:8px 12px}.section-options{border:0;padding:0;margin:20px 0;display:grid;gap:8px}.section-options legend{font-size:12px;color:var(--muted);margin-bottom:10px}
.section-option{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:12px;cursor:pointer;font-size:14px;line-height:1.8;min-width:0}
.section-option:has(input:checked){background:var(--accent-soft);border-color:var(--accent)}.section-option input{accent-color:var(--accent);width:18px;height:18px;flex-shrink:0;margin:0}.section-number{font-size:11px;color:var(--muted)}
.section-dialog-actions{position:sticky;bottom:-24px;background:var(--card);border-top:1px solid var(--line);padding:16px 0 0;display:flex;justify-content:space-between;gap:12px}.section-dialog .dialog-primary{background:var(--accent);color:var(--chip-ink);border-color:var(--accent);font-weight:800}
@media(max-width:760px){.reading-mode{width:100%;box-sizing:border-box}.reading-mode button{flex:1;padding:10px 8px}.section-dialog{width:calc(100vw - 20px);max-height:88dvh;padding:20px 16px;border-radius:20px}.section-dialog h2{font-size:18px}.section-option{font-size:13px;gap:8px;padding:12px}.section-dialog-actions{bottom:-20px;flex-direction:column-reverse;padding-bottom:8px}.section-number{display:none}}
@media print{.reading-mode,.reading-mode-help,.section-dialog{display:none!important}}
/* Theme-aware scrolling; the dialog keeps its actions in view. */
html,.section-dialog,.section-options,.source-dialog{scrollbar-width:thin;scrollbar-color:var(--line-strong) var(--paper)}
html::-webkit-scrollbar,.section-options::-webkit-scrollbar,.source-dialog::-webkit-scrollbar{width:7px;height:7px}
html::-webkit-scrollbar-track,.section-options::-webkit-scrollbar-track,.source-dialog::-webkit-scrollbar-track{background:var(--paper)}
html::-webkit-scrollbar-thumb,.section-options::-webkit-scrollbar-thumb,.source-dialog::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:10px;border:2px solid var(--paper)}
.section-dialog[open]{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden;max-height:85dvh}
.section-dialog .section-options{min-height:0;min-width:0;overflow-y:auto;overscroll-behavior:contain;padding:0 4px;margin:12px 0;align-content:start}
.section-dialog .section-dialog-actions{position:static;padding:14px 0 0}
.section-option input[type=radio]{appearance:none;-webkit-appearance:none;border:1.5px solid var(--muted);border-radius:50%;background:transparent;display:grid;place-items:center}
.section-option input[type=radio]:checked{border-color:var(--accent)}
.section-option input[type=radio]:checked::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--accent)}
@media(max-width:760px){.section-dialog[open]{max-height:88dvh}.section-options{scrollbar-width:none}.section-options::-webkit-scrollbar{display:none}.section-dialog p{font-size:12px;margin:10px 0}.section-dialog .section-dialog-actions{padding-bottom:0}}
@media(forced-colors:active){.section-option input[type=radio]{appearance:auto}}
/* A shared baseline for report controls, including older generated reports. */
.reading-workspace :where(section button){appearance:none;-webkit-appearance:none;font:inherit;font-size:14px;line-height:1.6;min-height:44px;padding:9px 16px;border:1px solid var(--line-strong);border-radius:10px;background:var(--card);color:var(--ink-2);box-shadow:none;cursor:pointer}
.reading-workspace :where(section button:hover){border-color:var(--accent);color:var(--accent-ink)}
.reading-workspace :where(section button:disabled){opacity:.5;cursor:default}
.reading-workspace .tabs-h{display:flex;flex-wrap:wrap;gap:4px;width:fit-content;max-width:100%;padding:5px;margin:10px 0 20px;border:1px solid var(--line);border-radius:14px;background:var(--card);box-sizing:border-box}
.reading-workspace .tabs-h .tab{appearance:none;-webkit-appearance:none;min-height:44px;padding:9px 24px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--muted);font:inherit;font-size:14px;font-weight:650;box-shadow:none;cursor:pointer;transition:background .15s,color .15s}
.reading-workspace .tabs-h .tab:hover{color:var(--ink);background:var(--paper)}
.reading-workspace .tabs-h .tab.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink);font-weight:850}
.reading-workspace .tab-p{display:none}.reading-workspace .tab-p.on{display:block}
.horizon-help{font-size:13px!important;color:var(--muted);margin:12px 0 6px!important}
@media(max-width:760px){.reading-workspace .tabs-h{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%}.reading-workspace .tabs-h .tab{padding:9px 4px;font-size:13px}#congress .mobile-card-table :is(th,td){position:static;box-shadow:none} }
.login-dialog{box-sizing:border-box;width:min(480px,calc(100vw - 32px));max-height:90dvh;overflow:auto;padding:24px;border:1px solid var(--line-strong);border-radius:24px;background:var(--card);color:var(--ink);box-shadow:0 24px 80px #0005;scrollbar-width:thin;scrollbar-color:var(--line-strong) var(--card)}
.login-dialog::backdrop{background:#0008;backdrop-filter:blur(5px)}
.login-modal-close{display:block;margin-inline-start:auto;min-height:40px;padding:8px 14px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--muted);font:inherit;font-size:13px;cursor:pointer}
.login-dialog .login-wrap{display:block;margin:0;padding:8px 0 0;min-height:0}
.login-dialog .login-card{width:100%;max-width:none;box-sizing:border-box;margin:0;padding:12px 4px;border:0;background:transparent;box-shadow:none}
.login-dialog h1{font-size:27px;margin:12px 0}.login-dialog .login-sub{font-size:14px;line-height:1.9}.login-dialog .login-note{font-size:12px;line-height:1.9}
.login-dialog .login-opts{display:grid;gap:12px;margin:24px 0}.login-dialog .login-btn{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;min-height:52px;box-sizing:border-box;border:1px solid var(--line-strong);border-radius:12px;background:var(--paper);color:var(--ink);font:inherit;text-decoration:none;cursor:pointer}.login-dialog .login-btn svg{width:24px;height:24px}
@media(max-width:760px){.login-dialog{width:calc(100vw - 20px);padding:18px;border-radius:22px;max-height:90dvh}.login-dialog h1{font-size:24px}}
.login-dialog .login-card{text-align:center}.login-dialog .login-sym{width:56px;height:56px;object-fit:contain;margin:8px auto}.login-dialog .login-sub,.login-dialog .login-note{color:var(--muted)}.login-dialog .login-err{padding:12px;margin-top:14px;border:1px solid var(--down);border-radius:10px;color:var(--down);font-size:13px;line-height:1.8}
.mobile-theme-row{display:none}
@media(max-width:760px){#hdr-nav .mobile-theme-row{display:flex;width:100%;grid-column:1/-1;align-items:center;justify-content:space-between;gap:16px;box-sizing:border-box;border-top:1px solid var(--line);padding:12px 4px 4px;margin-top:6px;color:var(--ink-2);font-size:14px}#hdr-nav .mobile-theme-row .theme-btn{flex-shrink:0;display:inline-flex}}
/* Compact visual close icon, with a comfortable touch target. */
:is(.login-dialog,.section-dialog,.source-dialog,.market-dialog) button.icon-close{display:inline-grid;place-items:center;flex-shrink:0;width:40px;height:40px;min-height:40px;padding:8px!important;border:0!important;border-radius:8px;background:transparent!important;box-shadow:none!important;color:var(--muted);cursor:pointer}
:is(.login-dialog,.section-dialog,.source-dialog,.market-dialog) button.icon-close svg{display:block;width:20px;height:20px}
:is(.login-dialog,.section-dialog,.source-dialog,.market-dialog) button.icon-close:hover{color:var(--ink)}
@media(max-width:760px){:is(.login-dialog,.section-dialog,.source-dialog,.market-dialog) button.icon-close{width:44px;height:44px;min-height:44px}}
.mobile-login-row{display:none}
@media(max-width:760px){#hdr-nav .mobile-login-row{display:block;grid-column:1/-1;width:100%;padding-top:12px;border-top:1px solid var(--line);margin-top:6px;box-sizing:border-box}#hdr-nav .mobile-login-row .hdr-login{display:flex;width:100%;justify-content:center;box-sizing:border-box;min-height:46px}}
/* Login dialog buttons match the login page: centred label + icon, Telegram in brand blue. */
.login-dialog .login-btn{justify-content:center;gap:12px;font-weight:800;font-size:16px}
.login-dialog .login-btn.telegram{background:#2AABEE;border-color:#2AABEE;color:#fff}
.login-dialog .login-btn.google svg{background:#fff;border-radius:50%;padding:3px;box-sizing:content-box;border:1px solid var(--line);width:20px;height:20px}

/* Section picker lives in the tabs row (no extra line): a pill at the far end of the row. */
.reading-tabs .section-picker{margin:0;margin-inline-start:auto;display:inline-flex;align-items:center;gap:7px;padding:8px 14px;min-height:40px;width:auto;border:1px solid var(--line-strong);border-radius:999px;background:var(--card);color:var(--ink-2);font-size:13.5px;font-weight:750;line-height:1.5;white-space:nowrap;flex-shrink:0}
.reading-tabs .section-picker:hover{border-color:var(--accent);color:var(--accent-ink)}
.reading-tabs .section-picker .picker-icon{display:inline-grid;place-items:center}.reading-tabs .section-picker svg{width:17px;height:17px}
@media(max-width:760px){.reading-tabs .section-picker{margin-inline-start:4px;padding:8px 12px;font-size:13px}}
/* Telegram Mini App: respect Telegram's viewport and safe areas for the fixed bottom navigation and floating buttons. */
.tg-miniapp body{min-height:var(--tg-vh,100dvh)}
.tg-miniapp .bottom-nav{bottom:calc(10px + var(--tg-safe-area-inset-bottom,env(safe-area-inset-bottom,0px)) + var(--tg-content-safe-area-inset-bottom,0px))}
.tg-miniapp body.has-bottom-nav{--mobile-nav-clearance:calc(112px + var(--tg-safe-area-inset-bottom,env(safe-area-inset-bottom,0px)) + var(--tg-content-safe-area-inset-bottom,0px))}
.tg-miniapp .topbar{top:var(--tg-content-safe-area-inset-top,0px)}
.tg-miniapp .sup-fab,.tg-miniapp .toc-fab{bottom:var(--mobile-nav-clearance,90px)}
.tg-miniapp .login-dialog,.tg-miniapp .section-dialog{max-height:calc(var(--tg-vh,100dvh) - 24px)}

/* Horizon strips synthesised per asset (name row) */
.hz-strip .hz-asset{grid-column:1/-1;font-size:13.5px;color:var(--ink);display:flex;gap:6px;align-items:baseline}.hz-strip .hz-asset .tk{font-family:var(--font-latin),var(--font-fa);font-size:11.5px;color:var(--muted)}.hz-fill{margin-top:14px}.hz-fill>p{margin:0 0 6px}
/* Mobile: the section picker stays visible at the start of the scrolling tabs row instead of being pushed off-screen. */
/* Mobile: tabs wrap into short pill rows (no horizontal scrolling), the section picker is its own full-width line above them. */
@media(max-width:760px){
.reading-tabs{flex-wrap:wrap!important;overflow:visible!important;gap:6px!important;padding:0 0 6px!important}
.reading-tabs a{flex:0 0 auto;padding:8px 12px!important;min-height:40px;font-size:13px;border:1px solid var(--line);border-radius:999px}
.reading-tabs .section-picker{order:-1;flex:1 1 100%;width:100%;box-sizing:border-box;margin:0 0 4px;position:static;display:block;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--card);line-height:1.6}
.reading-tabs .section-picker .picker-icon{display:inline-grid;vertical-align:middle;margin-inline-end:6px}
}

/* Market reading, v14: source-backed charts and editorial layers. */
.reading-workspace .reading-tools{border-bottom:0;margin-bottom:14px}
.reading-workspace .reading-tools h1{letter-spacing:-.025em;font-weight:850}
.reading-progress{display:block;width:100%;height:3px;border:0;border-radius:3px;appearance:none;background:var(--line);color:var(--accent);margin-top:20px}
.reading-progress::-webkit-progress-bar{background:var(--line)}.reading-progress::-webkit-progress-value{background:var(--accent)}.reading-progress::-moz-progress-bar{background:var(--accent)}
.market-board{margin:24px 0 40px;min-width:0}.market-board-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.market-board h2{font-size:23px;margin:0}.market-state{font-size:12px;color:var(--muted);margin:8px 0 20px;line-height:1.9}
.market-quote-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.market-quote{display:flex;flex-direction:column;align-items:stretch;text-align:right;min-width:0;padding:18px 16px 12px;border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--ink);cursor:pointer;transition:border-color .15s,transform .15s}
.market-quote:hover{border-color:var(--accent);transform:translateY(-2px)}.quote-name{font-size:15px;font-weight:750}.quote-symbol{font:11px var(--font-latin);color:var(--muted);margin:3px 0 16px}.quote-price{font-size:25px;line-height:1.3;font-variant-numeric:tabular-nums;letter-spacing:-.03em}.market-unit{font-size:11px;color:var(--muted);margin:5px 0 12px}.quote-change{font-size:10px;line-height:1.8;min-height:34px}.quote-change.up{color:var(--up)}.quote-change.down{color:var(--down)}
.market-spark{display:block;width:100%;height:60px;margin:10px 0;overflow:visible;direction:ltr}.quote-asof{font-size:9px;color:var(--muted);overflow-wrap:anywhere;line-height:1.8}.quote-open{font-size:11px;color:var(--accent-ink);border-top:1px solid var(--line);padding-top:9px;margin-top:10px}
.market-chart{display:block;width:100%;height:auto;direction:ltr;overflow:visible}.chart-line{fill:none;stroke:var(--accent);stroke-width:2.4;stroke-linejoin:round;stroke-linecap:round}.chart-grid{stroke:var(--line);stroke-width:1}.chart-axis{font:12px var(--font-fa);fill:var(--muted);direction:ltr;unicode-bidi:plaintext}.chart-point{fill:var(--accent);stroke:var(--card);stroke-width:1.5}.chart-point[tabindex]{cursor:pointer;outline:none}.chart-point[tabindex]:focus{stroke:var(--ink);stroke-width:3}.chart-event{fill:var(--card);stroke:var(--accent);stroke-width:2}
.asset-chart-group{border:1px solid var(--line);border-radius:14px;padding:14px 18px;margin:18px 0;background:var(--paper)}.asset-chart-group>summary{cursor:pointer;color:var(--accent-ink);font-weight:650;font-size:13px;min-height:30px}.asset-chart-panel{min-width:0;padding:12px 0}.asset-chart-panel+.asset-chart-panel{border-top:1px solid var(--line);margin-top:16px}.chart-heading{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.chart-heading h3{font-size:18px;margin:0}.chart-ranges{display:inline-flex;gap:4px;border:1px solid var(--line);padding:4px;border-radius:10px;margin:10px 0}.chart-ranges button{min-height:40px;padding:7px 18px;background:transparent;border:0;border-radius:7px;color:var(--muted);cursor:pointer;font-size:12px}.chart-ranges button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-ink);font-weight:750}
.chart-coverage,.chart-observation,.chart-unavailable,.chart-empty{font-size:12px;line-height:1.9;color:var(--muted)}.chart-observation{overflow-wrap:anywhere;min-height:46px;border-top:1px solid var(--line);padding-top:12px}.chart-data summary,.market-news summary{cursor:pointer;color:var(--accent-ink);font-size:12px;min-height:36px}.chart-data-scroll{max-height:300px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--accent) transparent}.chart-data-table{width:100%;font-size:11px!important}.chart-data-table th,.chart-data-table td{padding:8px!important;overflow-wrap:anywhere;direction:ltr;text-align:right;min-width:0!important}.chart-data-table th{position:sticky;top:0;background:var(--card)}.chart-events p{font-size:12px;line-height:1.9;overflow-wrap:anywhere}.market-event-date{color:var(--muted)}
.market-dialog{width:min(820px,calc(100vw - 36px));max-height:88dvh;box-sizing:border-box;background:var(--card);color:var(--ink);border:1px solid var(--line-strong);border-radius:22px;padding:26px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--accent) transparent;box-shadow:0 24px 90px #0006}.market-dialog::backdrop{background:#0009;backdrop-filter:blur(7px)}.market-dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.market-dialog h2{font-size:22px;margin:0 0 16px}.market-dialog>p{line-height:2;font-size:15px}.market-dialog-head button{flex-shrink:0}.market-sources a{display:block;font-size:13px;margin:10px 0;overflow-wrap:anywhere}.market-retry{background:var(--accent-soft);color:var(--accent-ink);border:1px solid var(--line);border-radius:9px;min-height:44px;padding:8px 16px;cursor:pointer}
.reading-workspace .asset-reading:not(.asset-expanded)>.asset-chart-group,.reading-workspace .asset-reading:not(.asset-expanded)>.chart-unavailable{display:none}.reading-workspace .asset-expanded[data-asset-view=sources]>.asset-chart-group{display:none}
.heatmap-legend{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0;font-size:12px}.heatmap-legend p{flex-basis:100%;margin:0 0 4px;color:var(--muted)}.direction-key{padding:5px 10px;border-radius:6px}.direction-key.up,.heatmap-cell.up,.consensus-opinion.up{background:var(--up-soft);color:var(--up)}.direction-key.down,.heatmap-cell.down,.consensus-opinion.down{background:var(--down-soft);color:var(--down)}.direction-key.flat,.heatmap-cell.flat,.consensus-opinion.flat{background:var(--flat-soft);color:var(--flat)}.direction-key.unknown,.heatmap-cell.unknown,.consensus-opinion.unknown{background:var(--paper);color:var(--muted)}
.reading-workspace .horizon-heatmap td:has(.heatmap-cell){padding:5px!important}.heatmap-cell{display:flex;align-items:center;justify-content:center;width:100%;min-height:64px;border:1px solid transparent;border-radius:9px;padding:10px 6px;cursor:pointer;transition:border-color .15s}.heatmap-cell:hover{border-color:currentColor}.heatmap-cell .chip{background:transparent!important;color:inherit!important;white-space:normal;border:0;padding:0;font-size:12px}.heatmap-cell .c{display:block;font-size:15px;font-weight:750}.heatmap-cell .chg{display:block;margin-top:4px}.heatmap-selected{padding:14px;border-inline-start:3px solid var(--accent);background:var(--accent-soft);border-radius:8px}
.consensus-heading{margin:18px 0}.consensus-heading h3{font-size:21px;margin:0 0 6px}.consensus-heading p{font-size:12px}.consensus-filters{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:18px 0}.consensus-filters input[type=search]{background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:9px;padding:10px 14px;min-height:44px;min-width:0}.consensus-filters label{display:flex;align-items:center;gap:8px;min-height:44px;font-size:13px;cursor:pointer}.consensus-filters input[type=checkbox]{accent-color:var(--accent);width:18px;height:18px}.consensus-filters>span{font-size:12px;margin-inline-start:auto}.consensus-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.consensus-card{min-width:0;border:1px solid var(--line);border-radius:14px;background:var(--card);padding:18px}.consensus-card-head{display:flex;gap:8px;justify-content:space-between;align-items:baseline}.consensus-card h4{margin:0;font-size:15px}.consensus-status{font-size:10px;color:var(--muted);white-space:nowrap}.consensus-card[data-disputed=true] .consensus-status{color:var(--warn)}.consensus-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:16px 0 12px}.consensus-opinion{border:1px solid transparent;min-height:48px;padding:7px 5px;border-radius:7px;font-size:11px;cursor:pointer}.consensus-opinion:hover{border-color:currentColor}.consensus-summary{font-size:12px;line-height:1.9;color:var(--ink-2);margin:0}.consensus-original{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}.consensus-original>summary{color:var(--accent-ink);cursor:pointer;padding:8px 0;font-size:13px}.target-comparison{margin:15px 0}.target-comparison figcaption{font-size:12px}.target-comparison svg{width:100%;direction:ltr}
.reading-workspace .today-overview{margin:0 0 40px!important}.reading-workspace .daily-highlights{gap:18px}.reading-workspace .daily-highlights article{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px}.reading-workspace .daily-highlights h3{font-size:16px;line-height:1.9}.reading-workspace .daily-highlights .excerpt{font-size:13px;line-height:2}.reading-workspace section>h2{letter-spacing:-.02em;line-height:1.8}.reading-workspace .acard .body{line-height:2.05}.reading-workspace .acard .kv{margin-block:15px}.reading-workspace .report-intro{background:transparent;border-style:dashed;font-size:12px}.reading-workspace .report-intro .masthead h1{font-size:24px}
@media(max-width:1000px){.market-quote-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.quote-price{font-size:23px}}
@media(max-width:760px){.market-board{margin:20px 0 28px}.market-board-head{align-items:baseline}.market-board-head>.reading-label{display:none}.market-board h2{font-size:21px}.market-quote-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.market-quote{padding:14px 12px;border-radius:13px}.market-quote:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;column-gap:18px}.market-quote:last-child .market-spark{grid-column:2;grid-row:1/6;height:100%;align-self:center}.market-quote:last-child .quote-open{grid-column:1/-1}.quote-name{font-size:14px}.quote-price{font-size:23px}.quote-symbol{margin-bottom:10px}.quote-change{font-size:10px}.market-dialog{padding:18px;width:calc(100vw - 20px);border-radius:18px;max-height:90dvh}.market-dialog h2{font-size:18px}.chart-heading h3{font-size:16px}.chart-ranges button{padding:8px 15px}.chart-coverage,.chart-observation{font-size:11px}.market-chart{min-height:170px}.asset-chart-group{padding:12px;margin:12px 0}.consensus-grid{grid-template-columns:1fr;gap:12px}.consensus-card{padding:15px}.consensus-filters{gap:8px}.consensus-filters input[type=search]{width:100%;flex-basis:100%;box-sizing:border-box}.consensus-card h4{font-size:14px}.consensus-strip{gap:5px}.consensus-opinion{font-size:11px}.reading-workspace .daily-highlights{grid-template-columns:1fr;gap:12px}.reading-workspace .daily-highlights article{padding:16px}.heatmap-cell{min-height:68px}.reading-workspace .horizon-heatmap td:has(.heatmap-cell){padding:8px!important}.heatmap-cell .chip{font-size:12px!important}.chart-data-table thead{display:none}.chart-data-table tr{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);padding:5px 0}.chart-data-table td{display:block;border:0;line-height:1.8}.chart-data-table td:nth-child(3),.chart-data-table td:nth-child(4){font-size:10px;color:var(--muted);grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){.market-quote,.heatmap-cell{transition:none}}
@media print{.market-board,.consensus-grid,.reading-progress,.chart-ranges{display:none}.consensus-original>div,.asset-chart-group>*{display:block!important}.consensus-original>summary{display:none}.asset-chart-group{break-inside:avoid}}
.original-market-tiles{margin:20px 0;border-top:1px solid var(--line);padding-top:14px}.original-market-tiles>summary{font-size:13px;color:var(--muted);cursor:pointer;padding:8px 0}.original-market-tiles .stats{margin-top:14px}.reading-workspace .original-market-tiles:has(.stats[hidden]){display:none}
.congress-method{border:1px solid var(--line);border-radius:10px;padding:10px 15px;margin:15px 0}.congress-method>summary{font-size:13px;color:var(--muted);cursor:pointer;min-height:28px}.congress-method p{font-size:13px;line-height:2}
.consensus-filters input[type=checkbox]{appearance:none;border:1px solid var(--line-strong);border-radius:5px;background:var(--card);display:grid;place-content:center;margin:0}.consensus-filters input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}.consensus-filters input[type=checkbox]:checked::after{content:'✓';color:var(--paper);font-size:13px;font-weight:900;line-height:1}
.heatmap-cell .chip{display:block!important;white-space:nowrap!important;overflow-wrap:normal;word-break:normal;text-align:center;line-height:1.7}.heatmap-cell .chip .c{margin:4px 0 0;padding:0;background:transparent;white-space:nowrap}.heatmap-cell .chip .chg{white-space:normal;font-size:9px}
.market-explorer{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px;padding:14px 0;border-bottom:1px solid var(--line)}.market-explorer>span{font-size:12px;color:var(--muted)}.market-explorer select{max-width:100%;flex:1;min-width:160px;min-height:44px;padding:8px 12px;background:var(--card);border:1px solid var(--line);border-radius:9px;color:var(--ink);font:inherit;font-size:13px}.market-explorer button{font-size:12px}@media(max-width:760px){.market-explorer{gap:8px}.market-explorer>span{width:100%}.market-explorer select{min-width:0}.market-explorer button{padding-inline:10px}}
.market-spark .chart-point{display:none}

.chart-ranges button:disabled{opacity:.4;cursor:not-allowed}.chart-history-note{font-size:12px;line-height:1.9;color:var(--muted);margin:0 0 10px}
/* v15: «راهنمای این صفحه» (design-system glossary block) */
.pg-guide{margin:10px 0 18px;border:1px dashed var(--line-strong);border-radius:12px;background:var(--card)}
.pg-guide summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;padding:10px 14px;font-weight:700;flex-wrap:wrap}
.pg-guide summary::-webkit-details-marker{display:none} .pg-guide summary::marker{content:""}
.pg-guide .q{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--accent);color:var(--chip-ink);font-weight:900;flex:none}
.pg-guide[open] summary{border-bottom:1px solid var(--line)}
.pg-guide .body{padding:4px 14px 12px} .pg-guide .body>p{margin:8px 0 0;line-height:1.8}
.pg-guide dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 14px;margin:10px 0 0;font-size:13.5px;line-height:1.8}
.pg-guide dt{font-weight:800;color:var(--accent-ink);max-width:180px} .pg-guide dd{margin:0}
@media(max-width:600px){.pg-guide dl{grid-template-columns:1fr} .pg-guide dt{margin-top:6px;max-width:none}}
/* v16: «میز ژئوپلیتیک امروز» card inside the daily report */
.geo-card{margin:18px 0 6px;padding:14px 16px;border:1px solid var(--line);border-inline-start:5px solid var(--accent);border-radius:14px;background:var(--card)}
.geo-card .gc-h{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px} .geo-card .gc-t{font-weight:800;font-size:15px} .geo-card .gc-link{margin-inline-start:auto;font-weight:700;color:var(--accent-ink)}
.geo-card .gc-lede{margin:0 0 10px;line-height:1.9;font-weight:600}
.geo-card .gc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px 18px;font-size:13.5px;line-height:1.8} .geo-card .gc-grid>div>b{display:block;margin-bottom:4px;color:var(--accent-ink)}
.geo-card ol,.geo-card ul{margin:0;padding-inline-start:18px} .geo-card .gc-sc{list-style:none;padding:0} .geo-card .gc-sc li{display:flex;align-items:center;gap:6px;margin:2px 0}
.geo-card .gc-chg{color:var(--accent-ink);font-weight:700;margin:8px 0 0}
/* v17: design-system icons (Lucide sprite /brand/icons.v2.svg) — always vertically centred, never emoji */
.pw-ic{width:1.05em;height:1.05em;display:inline-block;vertical-align:-.18em;flex:none;stroke-width:2;color:inherit}
.theme-btn .pw-ic,.hamb .pw-ic{width:18px;height:18px;vertical-align:0} .theme-btn .logo-day,.theme-btn .logo-dark{display:inline-flex;align-items:center;justify-content:center}
/* display stays with styles.css: hidden on desktop, shown ≤760px (the desktop nav is always visible, so the button did nothing there) */
.hamb{align-items:center;justify-content:center} .hamb .i-close{display:none} .hamb.open .i-open{display:none} .hamb.open .i-close{display:inline-block}
.adm-nav .ic{display:inline-grid;place-items:center;width:24px;height:24px;flex:none} .adm-nav .ic .pw-ic{width:18px;height:18px;vertical-align:0}
.sup-fab .ic{display:inline-grid;place-items:center} .sup-fab .pw-ic{width:20px;height:20px;vertical-align:0} .toc-fab .pw-ic{vertical-align:-.2em}
.tg-chip,.chip,.hz-chg,.geo-chg{display:inline-flex;align-items:center;gap:.35em} .callout .t,.gc-t{display:flex;align-items:center;gap:.4em} .callout .t .pw-ic,.gc-t .pw-ic{color:var(--accent-ink)} .chip .pw-ic{width:.95em;height:.95em;vertical-align:0}

/* v18: reading habit — streak chip in the header, «سه پرسش امروز» block at the end of the report, account «عادت خواندن» stats */
.streak-chip{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:3px 10px;font-size:12.5px;font-weight:800;border:1px solid var(--accent);color:var(--accent-ink);background:var(--accent-soft);white-space:nowrap;line-height:1;text-decoration:none}
.streak-chip .pw-ic{width:15px;height:15px;vertical-align:0;color:var(--brand-red)} .streak-chip .num{font-size:13px;line-height:1} .streak-chip:hover{filter:brightness(1.05)}
.streak-chip.pop{animation:streak-pop .5s ease} @keyframes streak-pop{0%{transform:scale(1)}40%{transform:scale(1.18)}100%{transform:scale(1)}}
@media (max-width:560px){.streak-chip{padding:2px 7px;font-size:11.5px} .streak-chip .l{display:none}}
.quiz-sec{border:1px solid var(--line);border-radius:16px;background:var(--card);padding:18px 20px;margin:28px 0 20px}
.quiz-sec>h2{margin:0 0 6px;display:flex;align-items:center;gap:.4em;font-size:22px} .quiz-sec>h2 .pw-ic{color:var(--accent-ink)}
.quiz-sec .quiz-intro{margin:0 0 14px;color:var(--muted);font-size:14px;line-height:1.9}
.quiz-q{border-top:1px solid var(--line);padding:16px 0 6px} .quiz-q:first-child{border-top:0;padding-top:4px}
.quiz-q .qn{display:inline-grid;place-items:center;min-width:26px;height:26px;border-radius:50%;background:var(--accent);color:var(--chip-ink);font-weight:900;font-size:13px;margin-inline-end:8px;vertical-align:middle}
.quiz-q .qt{font-weight:800;font-size:16px;line-height:1.9;margin:0 0 10px}
.quiz-opts{display:grid;gap:8px;grid-template-columns:1fr} @media (min-width:700px){.quiz-opts{grid-template-columns:1fr 1fr}}
.quiz-opt{appearance:none;font:inherit;text-align:right;cursor:pointer;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);border-radius:12px;padding:10px 14px;line-height:1.8;display:flex;align-items:center;gap:10px;transition:border-color .15s,background .15s}
.quiz-opt .pw-ic{width:18px;height:18px;flex:none;opacity:0} .quiz-opt:hover{border-color:var(--accent)} .quiz-opt:disabled{cursor:default}
.quiz-opt.ok{border-color:var(--up);background:var(--up-soft);color:var(--up);font-weight:800} .quiz-opt.ok .pw-ic{opacity:1}
.quiz-opt.bad{border-color:var(--down);background:var(--down-soft);color:var(--down)} .quiz-opt.bad .pw-ic{opacity:1}
.quiz-opt.dim{opacity:.55}
.quiz-exp{margin:10px 0 4px;padding:10px 14px;border-radius:10px;background:var(--accent-soft);color:var(--ink-2);font-size:13.5px;line-height:1.9;display:flex;gap:.5em;align-items:flex-start} .quiz-exp .pw-ic{flex:none;margin-top:.35em;color:var(--accent-ink)}
.quiz-exp.ok b{color:var(--up)} .quiz-exp.bad b{color:var(--down)}
.quiz-result{margin-top:16px;padding:16px 18px;border-radius:14px;border:1px solid var(--accent);background:linear-gradient(135deg,var(--accent-soft),var(--card));display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
.quiz-result .score{font-size:30px;font-weight:900;line-height:1.1} .quiz-result .score .u{font-size:14px;font-weight:600;color:var(--muted)}
.quiz-result .rt{display:grid;gap:4px;flex:1 1 200px} .quiz-result .rt b{font-size:16px} .quiz-result .rt .muted{font-size:13px}
.quiz-result .ra{display:flex;gap:8px;flex-wrap:wrap} .quiz-result .btn .pw-ic{margin-inline-end:.3em} .quiz-result .btn.ghost{border-color:var(--accent)}
.quiz-sec .quiz-login{margin:0;color:var(--muted);font-size:14px}
.quiz-sec .quiz-wait{margin:0;color:var(--muted);font-size:14px;display:flex;align-items:center;gap:.5em}
.quiz-share-dialog{border:0;border-radius:16px;padding:0;max-width:min(92vw,420px);background:var(--card);color:var(--ink)} .quiz-share-dialog::backdrop{background:#0008}
.quiz-share-dialog .qsd{padding:16px} .quiz-share-dialog img{display:block;width:100%;height:auto;border-radius:10px;border:1px solid var(--line)} .quiz-share-dialog .row{display:flex;gap:8px;justify-content:flex-start;margin-top:12px;flex-wrap:wrap}
.today-overview .quiz-jump{margin-inline-start:12px}
.habit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:12px 0}
.habit-grid .stat .k{display:flex;align-items:center;gap:.4em;font-size:13px;color:var(--muted);font-weight:700} .habit-grid .stat .k .pw-ic{color:var(--accent-ink)}
.habit-grid .stat .v{font-size:26px;font-weight:900;line-height:1.3;margin-top:4px} .habit-grid .stat .v .u{font-size:13px;font-weight:600;color:var(--muted)}
.habit-grid .habit-main{border-color:var(--accent);background:var(--accent-soft)} .habit-grid .habit-main .k .pw-ic{color:var(--brand-red)}
.habit-cta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:8px 0}
/* v19: inline source links — geo card refs and the editor's [منبع] links next to event facts */
.geo-card .gc-refs{font-size:11.5px;color:var(--muted);margin-inline-start:4px} .geo-card .gc-refs a,a.ref{font-size:.82em;font-weight:600;color:var(--accent-ink);border-bottom:1px dotted var(--line-strong);white-space:nowrap}
a.ref{margin-inline-start:3px;vertical-align:.08em}

/* ---------- report banner, 3D (workspace.js owlBanner) — Pashiz DS 1.1 ----------
   Reading-desk heading beside a 3D stage: the glass-owl render on its own soft-edged disc — /brand/pashiz-owl-orb* (light plinth)
   in light mode, /brand/pashiz-owl-orb-dark* (shaded indigo moon) in dark mode via .logo-day/.logo-dark, market chips orbiting in real 3D (they pass behind the owl), pointer tilt via --tx/--ty. */
.pz3d-hero{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,330px);align-items:center;gap:6px 20px;margin:4px 0 18px;padding:26px 30px;border:1px solid var(--line);border-radius:24px;box-shadow:0 16px 48px rgba(20,43,64,.10);
  background:radial-gradient(60% 95% at 100% 0%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 70%),radial-gradient(42% 80% at 15% 55%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 72%),linear-gradient(270deg,var(--card) 0%,var(--paper) 100%)}
.pz3d-txt{position:relative;z-index:1;min-width:0}
.pz3d-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 6px;padding:4px 12px;border-radius:999px;font-size:12.5px;font-weight:700;line-height:1.7;color:var(--gold-ink);background:color-mix(in srgb,var(--gold) 12%,transparent);border:1px solid color-mix(in srgb,var(--gold) 45%,transparent)}
.pz3d-eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 22%,transparent)}
.pz3d-hero .reading-label{display:none}
.pz3d-hero h1{margin:8px 0 6px}
.pz3d-hero .pz3d-txt>p{margin:0 0 18px;font-size:14px;max-width:60ch}
.pz3d-cta{display:flex;flex-wrap:wrap;gap:10px}
.pz3d-cta a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 20px;border-radius:8px;font-weight:700;font-size:14.5px;text-decoration:none;border-bottom:0}
.pz3d-cta .pz3d-go{background:var(--action);color:var(--on-action);border:1px solid var(--action);box-shadow:0 6px 18px color-mix(in srgb,var(--action) 30%,transparent)}
.pz3d-cta .pz3d-go:hover{background:var(--action-hover);border-color:var(--action-hover)}
.pz3d-cta .pz3d-alt{background:var(--card);color:var(--accent-ink);border:1px solid var(--input-border)}
.pz3d-cta .pz3d-alt:hover{background:var(--accent-faint)}
.pz3d{position:relative;height:300px;perspective:900px;perspective-origin:50% 42%}
.pz3d-scene,.pz3d-float,.pz3d-ring,.pz3d-chip{transform-style:preserve-3d}
.pz3d-scene{position:absolute;inset:0;transform:rotateX(var(--ty,0deg)) rotateY(var(--tx,0deg));transition:transform .6s cubic-bezier(.2,0,0,1)}
.pz3d-float{position:absolute;inset:0;animation:pz3d-bob 7s ease-in-out infinite}
.pz3d-owl{position:absolute;left:50%;top:50%;width:280px;height:280px;margin:-140px 0 0 -140px;transform:translateZ(24px);pointer-events:none;user-select:none}
.pz3d-glow{position:absolute;left:50%;top:50%;width:330px;height:330px;margin:-165px 0 0 -165px;border-radius:50%;transform:translateZ(-70px);background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 32%,transparent),transparent)}
.pz3d-floor{position:absolute;left:50%;top:50%;width:190px;height:30px;margin:118px 0 0 -95px;border-radius:50%;transform:translateZ(-10px);background:radial-gradient(closest-side,rgba(12,28,43,.30),transparent)}
.pz3d-ring{position:absolute;left:50%;top:50%;width:0;height:0;animation:pz3d-orbit 24s linear infinite}
.pz3d-chip{position:absolute;left:0;top:0;transform:rotateY(var(--a)) translateZ(150px)}
.pz3d-chip.c1{--a:0deg}.pz3d-chip.c2{--a:60deg}.pz3d-chip.c3{--a:120deg}.pz3d-chip.c4{--a:180deg}.pz3d-chip.c5{--a:240deg}.pz3d-chip.c6{--a:300deg}
.pz3d-chip b{display:block;white-space:nowrap;padding:5px 12px;border-radius:999px;font-size:12px;font-weight:700;line-height:1.5;color:var(--ink);background:color-mix(in srgb,var(--card) 90%,transparent);border:1px solid var(--line);box-shadow:0 6px 16px rgba(20,43,64,.12);animation:pz3d-face 24s linear infinite}
.pz3d-chip b::before{content:"";display:inline-block;width:6px;height:6px;margin-inline-end:6px;border-radius:50%;background:var(--accent);vertical-align:.1em}
@keyframes pz3d-orbit{from{transform:rotateX(-12deg) rotateY(0deg)}to{transform:rotateX(-12deg) rotateY(360deg)}}
@keyframes pz3d-face{from{transform:translate(-50%,-50%) rotateY(calc(-1 * var(--a))) rotateX(12deg)}to{transform:translate(-50%,-50%) rotateY(calc(-1 * var(--a) - 360deg)) rotateX(12deg)}}
@keyframes pz3d-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
/* Phone (2026-11-02): an app's article header, not a landing banner — title, date and the start button beside a small owl
   (the orbiting chips need room, so they rest on phones). */
@media (max-width:760px){.pz3d-hero{grid-template-columns:minmax(0,1fr) 112px;align-items:center;padding:16px;gap:4px 10px;border-radius:20px;margin:0 0 14px} .pz3d{order:0;height:124px;margin:0} .pz3d-owl{width:100px;height:100px;margin:-50px 0 0 -50px} .pz3d-glow{width:124px;height:124px;margin:-62px 0 0 -62px} .pz3d-floor{width:64px;height:10px;margin:44px 0 0 -32px} .pz3d-ring{display:none} .pz3d-hero h1{font-size:20px;line-height:1.6;margin:4px 0} .pz3d-hero .pz3d-txt>p{font-size:13px;margin:0 0 10px} .pz3d-eyebrow{font-size:11.5px} .pz3d-cta{display:flex;gap:8px} .pz3d-cta a{flex:1 1 auto;justify-content:center;min-height:44px}}
@media (prefers-reduced-motion:reduce){.pz3d-float,.pz3d-ring,.pz3d-chip b{animation:none} .pz3d-ring{transform:rotateX(-12deg)} .pz3d-chip b{transform:translate(-50%,-50%) rotateY(calc(-1 * var(--a))) rotateX(12deg)} .pz3d-scene{transition:none}}
/* v23: «بازار لحظه‌ای» — /market (.lm-page; NOT .lm, which ui.css uses for the login-method card) + live strips (landing page, today's report). Pashiz DS 1.1 tokens; up/down carry direction only. */
.lm-page{min-width:0;--lm-num:"Inter","Vazirmatn",system-ui,sans-serif}
.lm-strip{--lm-num:"Inter","Vazirmatn",system-ui,sans-serif}
.lm-page .num,.lm-strip .num{font-family:var(--lm-num);font-variant-numeric:tabular-nums;letter-spacing:0}
.lm-hero{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px;margin:8px 0 18px;padding:26px 28px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,var(--card) 0%,var(--card) 55%,var(--accent-faint) 100%);box-shadow:0 14px 40px rgba(20,43,64,.07)}
.lm-hero-txt{min-width:0;flex:1 1 420px}
.lm-eyebrow{font-size:12.5px;font-weight:700;color:var(--accent-ink);letter-spacing:.02em;margin-bottom:6px}
.lm-hero h1{margin:0 0 8px;font-size:clamp(26px,3.4vw,36px);line-height:1.35;letter-spacing:-.01em}
.lm-hl{color:var(--accent)}
.lm-hero .lede{margin:0;font-size:15.5px}
.lm-live{display:inline-flex;align-items:center;gap:8px;padding:5px 12px;border-radius:999px;background:var(--mint-soft);color:var(--mint-ink);font-size:12.5px;font-weight:700;white-space:nowrap}
.lm-live.stale{background:var(--flat-soft);color:var(--muted)}
.lm-live-lg{padding:8px 14px;font-size:13px}
.lm-live .lm-asof{font-weight:500;color:var(--ink-2);font-size:13px}
.lm-pulse{position:relative;width:8px;height:8px;border-radius:50%;background:currentColor;flex:0 0 auto}
.lm-pulse::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid currentColor;opacity:0;animation:lm-ping 2s ease-out infinite}
.lm-live.stale .lm-pulse::after{animation:none}
@keyframes lm-ping{0%{transform:scale(.4);opacity:.7}80%,100%{transform:scale(1.4);opacity:0}}

/* tape */
.lm-tape{position:relative;overflow:hidden;margin:0 0 18px;border:1px solid var(--line);border-radius:14px;background:var(--card);-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.lm-tape-track{display:flex;width:max-content;direction:ltr}
.lm-tape:not(.moving){overflow-x:auto;scrollbar-width:none}
.lm-tape.moving{direction:ltr}   /* the track starts at the left edge: in an RTL box it hung off the right one and the tape ran empty */
.lm-tape.moving .lm-tape-track{animation:lm-tape 70s linear infinite}
.lm-tape.moving:hover .lm-tape-track,.lm-tape.moving:focus-within .lm-tape-track{animation-play-state:paused}
@keyframes lm-tape{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.lm-tick{display:inline-flex;align-items:baseline;gap:8px;padding:11px 18px;border:0;border-inline-end:1px solid var(--line);color:var(--ink);white-space:nowrap;direction:rtl;font-size:14px}
.lm-tick:hover{background:var(--accent-faint)}
.lm-tick .n{font-weight:700}
.lm-tick .p{font-weight:700;font-size:14.5px}
.lm-tick .c{font-size:13px;font-weight:700}

/* direction colours */
.lm-page .up,.lm-strip .up{color:var(--up)} .lm-page .down,.lm-strip .down{color:var(--down)} .lm-page .flat,.lm-strip .flat{color:var(--muted)}

/* focus panel */
.lm-focus{margin:0 0 22px;padding:22px 24px 18px;border:1px solid var(--line);border-radius:20px;background:var(--card);box-shadow:0 10px 32px rgba(20,43,64,.06);scroll-margin-top:84px}
.lm-f-head{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title quote" "meta quote";gap:4px 18px;align-items:center}
.lm-f-title{grid-area:title;display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}
.lm-f-h{margin:0;font-size:24px;line-height:1.4}
.lm-f-sub{font-size:13px;color:var(--muted)}
.lm-f-quote{grid-area:quote;display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:left}
.lm-f-p{font-size:clamp(28px,4vw,40px);font-weight:800;line-height:1.15;letter-spacing:-.02em;border-radius:8px;padding:0 4px}
.lm-f-unit{font-size:13px;color:var(--muted)}
.lm-f-c{font-size:16px;font-weight:700}
.lm-f-meta{grid-area:meta;display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:13px;color:var(--muted)}
.lm-f-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:16px 0 6px}
.lm-seg{display:inline-flex;gap:3px;padding:3px;border:1px solid var(--line);border-radius:11px;background:var(--paper)}
.lm-seg button{min-height:34px;padding:5px 12px;border:0;border-radius:8px;background:transparent;color:var(--muted);font:inherit;font-size:13.5px;cursor:pointer}
.lm-seg button:hover:not(:disabled){color:var(--ink)}
.lm-seg button[aria-pressed=true]{background:var(--card);color:var(--accent-ink);font-weight:750;box-shadow:0 1px 3px rgba(20,43,64,.12)}
.lm-seg button:disabled{opacity:.4;cursor:not-allowed}
.lm-f-rchg{margin-inline-start:auto;font-size:14px;font-weight:700}
.lm-chart{position:relative;min-height:240px;direction:ltr;touch-action:pan-y}
.lm-chart.loading{opacity:.55;transition:opacity .2s}
.lm-chart-svg{display:block;width:100%;height:auto;overflow:visible;outline:none}
.lm-chart-svg:focus-visible{outline:2px solid var(--focus);outline-offset:4px;border-radius:6px}
.lm-chart-svg .g{stroke:var(--line);stroke-width:1}
.lm-chart-svg .ax{font:12.5px var(--font-fa);fill:var(--muted)} .lm-chart-svg .ax.n{font-family:var(--lm-num);font-size:12.5px;font-variant-numeric:tabular-nums}
.lm-chart-svg .ln{fill:none;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}
.lm-chart-svg .ln.up{stroke:var(--up)} .lm-chart-svg .ln.down{stroke:var(--down)}
.lm-chart-svg .ar{stroke:none;opacity:.14} .lm-chart-svg .ar.up{fill:var(--up)} .lm-chart-svg .ar.down{fill:var(--down)}
.lm-chart-svg .prev{stroke:var(--muted);stroke-width:1;stroke-dasharray:4 4;opacity:.7}
.lm-chart-svg .prev-t{font:12px var(--lm-num);fill:var(--muted)}
.lm-chart-svg .lastl{stroke:var(--line-strong);stroke-width:1;stroke-dasharray:2 3}
.lm-chart-svg .tag rect{stroke:none} .lm-chart-svg .tag.up rect{fill:var(--up)} .lm-chart-svg .tag.down rect{fill:var(--down)}
.lm-chart-svg .tag text{font:700 12.5px var(--lm-num);fill:#fff;font-variant-numeric:tabular-nums}
.lm-chart-svg .hl circle{fill:var(--card);stroke:var(--ink-2);stroke-width:1.5} .lm-chart-svg .hl text{font:12px var(--lm-num);fill:var(--ink-2)}
.lm-chart-svg .cu .w,.lm-chart-svg .cu .b{stroke:var(--up);fill:var(--up)} .lm-chart-svg .cd .w,.lm-chart-svg .cd .b{stroke:var(--down);fill:var(--down)}
.lm-chart-svg .cu .b{fill-opacity:.85}
.lm-chart-svg .xh line{stroke:var(--ink-2);stroke-width:1;stroke-dasharray:3 3}
.lm-chart-svg .xh circle{fill:var(--accent);stroke:var(--card);stroke-width:2}
.lm-chart-svg .live-dot{animation:lm-blink 1.6s ease-in-out infinite} .lm-chart-svg .live-dot.up{fill:var(--up)} .lm-chart-svg .live-dot.down{fill:var(--down)}
@keyframes lm-blink{50%{opacity:.25}}
.lm-tip{position:absolute;top:6px;left:var(--x,50%);transform:translateX(8px);z-index:2;display:flex;flex-direction:column;gap:2px;min-width:160px;padding:9px 12px;border:1px solid var(--line-strong);border-radius:10px;background:var(--card);box-shadow:0 8px 24px rgba(20,43,64,.16);font-size:13px;direction:rtl;pointer-events:none}
.lm-tip.flip{transform:translateX(calc(-100% - 8px))}
.lm-tip b{font-size:17px}
.lm-tip .lm-tip-t{color:var(--muted)}
.lm-tip .lm-tip-o{color:var(--ink-2);font-size:12.5px}
.lm-chart-empty{margin:0;padding:80px 12px;text-align:center;color:var(--muted);font-size:13px;direction:rtl}
.lm-f-cap{margin:8px 0 0;font-size:13px;color:var(--muted);line-height:1.9}
.lm-f-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:16px 0 0}
.lm-stat{padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--paper);min-width:0}
.lm-stat dt{font-size:12.5px;color:var(--muted);margin:0 0 3px}
.lm-stat dd{margin:0;font-size:17px;font-weight:750;text-align:right}
.lm-stat.wide{grid-column:span 2} .lm-stat .lm-rng{font-size:13px;font-weight:650;max-width:none;margin-top:4px}
.lm-f-note{margin:12px 0 0;font-size:13.5px;color:var(--ink-2);background:var(--peach-soft);border-radius:10px;padding:8px 12px}
.lm-star{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;flex:0 0 auto;vertical-align:middle}
.lm-star svg{width:17px;height:17px}
.lm-star:hover{color:var(--gold-ink);background:var(--accent-faint)}
.lm-star[aria-pressed=true]{color:var(--gold)} .lm-star[aria-pressed=true] svg{fill:currentColor}

/* tabs + board */
.lm-tabs{display:flex;gap:6px;margin:0 0 14px;overflow-x:auto;scrollbar-width:none;padding:2px}
.lm-tab{flex:0 0 auto;min-height:36px;padding:6px 14px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--ink-2);font:inherit;font-size:13px;cursor:pointer}
.lm-tab:hover{border-color:var(--accent)}
.lm-tab[aria-pressed=true]{background:var(--action);border-color:var(--action);color:var(--on-action);font-weight:700}
.lm-watch-empty{padding:16px;border:1px dashed var(--line-strong);border-radius:14px;color:var(--muted);text-align:center;font-size:13.5px}
.lm-group{margin:0 0 20px}
.lm-group h2{font-size:19px;margin:0 0 8px}
.lm-table-wrap{border:1px solid var(--line);border-radius:16px;background:var(--card);overflow:hidden}
.lm-table{width:100%;border-collapse:collapse;font-size:14px;table-layout:fixed}
.lm-table thead th{position:static;background:var(--flat-soft);color:var(--muted);font-size:13px;font-weight:600;padding:9px 12px;text-align:right;border-bottom:1px solid var(--line)}
.lm-table td,.lm-table th[scope=row]{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:middle;text-align:right}
.lm-table tr:last-child td,.lm-table tr:last-child th{border-bottom:0}
.lm-table thead th:nth-child(1){width:26%} .lm-table thead th:nth-child(2){width:15%} .lm-table thead th:nth-child(3){width:17%} .lm-table thead th:nth-child(4){width:12%} .lm-table thead th:nth-child(5){width:19%} .lm-table thead th:nth-child(6){width:11%}
.lm-row{cursor:pointer;transition:background .25s}
.lm-row:hover{background:var(--accent-faint)}
.lm-row.sel{background:var(--accent-soft)}
.lm-row.sel .lm-name{color:var(--accent-ink)}
.lm-c-name{font-weight:400}
.lm-name{font-weight:750;color:var(--ink);border:0}
.lm-sub{display:block;font-size:12.5px;color:var(--muted);font-weight:400;margin-inline-start:32px;line-height:1.6}
.lm-c-name .lm-star{margin-inline-end:4px}
.lm-c-price .lm-p{display:inline-block;font-weight:750;font-size:16.5px}
.lm-unit{display:block;font-size:12px;color:var(--muted)}
.lm-c-chg .lm-pct{display:block;font-weight:750;font-size:15px}
.lm-c-chg .lm-abs{display:block;font-size:13px;opacity:.85}
.lm-spark{display:block;width:100%;max-width:150px;height:36px;overflow:visible}
.lm-spark .l{fill:none;stroke-width:1.6;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.lm-spark .a{stroke:none;opacity:.12}
.lm-spark .b{stroke:var(--muted);stroke-width:1;stroke-dasharray:3 3;vector-effect:non-scaling-stroke;opacity:.6}
.lm-spark.up .l{stroke:var(--up)} .lm-spark.up .a{fill:var(--up)} .lm-spark.down .l{stroke:var(--down)} .lm-spark.down .a{fill:var(--down)} .lm-spark.flat .l{stroke:var(--muted)} .lm-spark.flat .a{fill:var(--muted)}
.lm-rng{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"bar bar" "lo hi";align-items:center;gap:2px 6px;direction:ltr;font-size:12.5px;color:var(--muted);max-width:180px}
.lm-rng .bar{grid-area:bar;width:100%;height:8px} .lm-rng .lo{grid-area:lo;text-align:left;white-space:nowrap} .lm-rng .hi{grid-area:hi;text-align:right;white-space:nowrap} .lm-c-range .lm-rng{max-width:none}
.lm-rng .t{fill:var(--line-strong)} .lm-rng .m{fill:var(--accent)}
.lm-rng-empty{color:var(--muted)}
.lm-state{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--muted)}
.lm-state::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--line-strong)}
.lm-state.open{color:var(--up)} .lm-state.open::before{background:var(--up)}
.lm-delay{display:inline-block;margin-inline-start:6px;padding:1px 7px;border-radius:6px;background:var(--flat-soft);color:var(--muted);font-size:12px;white-space:nowrap}
.lm-c-state .lm-delay{display:block;margin:3px 0 0;width:max-content}
/* v26: live ticks — the figure that just moved flashes in the move's colour; the small arrow beside it (.lm-tk, a fixed slot so
   numbers never shift) shows the direction for a moment. The day's change carries a fixed triangle (up/down). CSS shapes only. */
.lm-c-price .lm-p,.lm-card-p .v,.lm-tick .p,.lm-f-p{border-radius:6px;padding:0 3px}
.lm-fu{animation:lm-fu 1.6s ease-out} .lm-fd{animation:lm-fd 1.6s ease-out}
@keyframes lm-fu{0%,22%{color:var(--up);background-color:var(--up-soft);background-color:color-mix(in srgb,var(--up) 20%,transparent)}}
@keyframes lm-fd{0%,22%{color:var(--down);background-color:var(--down-soft);background-color:color-mix(in srgb,var(--down) 20%,transparent)}}
.lm-tk{display:inline-block;width:0;height:0;border-left:.36em solid transparent;border-right:.36em solid transparent;border-bottom:.5em solid transparent;margin:0 .22em;vertical-align:.12em;opacity:0}
.lm-tk.up{border-bottom-color:var(--up)} .lm-tk.down{border-bottom:0;border-top:.5em solid var(--down)}
.lm-tk.go{animation:lm-tk 2.8s ease-out forwards} .lm-tk.on{opacity:1}
.lm-tk.up.go{--lm-tk-y:4px} .lm-tk.down.go{--lm-tk-y:-4px}
@keyframes lm-tk{0%{opacity:0;transform:translateY(var(--lm-tk-y,0))}10%{opacity:1;transform:none}72%{opacity:1}100%{opacity:0}}
.lm-f-pw{display:inline-flex;align-items:center;gap:2px}
.lm-f-pw .lm-tk{font-size:22px}
.lm-card-c.up::before,.lm-card-c.down::before,.lm-tick .c.up::before,.lm-tick .c.down::before,.lm-c-chg.up .lm-pct::before,.lm-c-chg.down .lm-pct::before,.lm-f-c.up::before,.lm-f-c.down::before,.lm-mover .c.up::before,.lm-mover .c.down::before,.lm-f-rchg.up .num::before,.lm-f-rchg.down .num::before,.lm-stat dd.up::before,.lm-stat dd.down::before{content:"";display:inline-block;width:0;height:0;border-left:.3em solid transparent;border-right:.3em solid transparent;margin-right:.3em;vertical-align:.1em}
.lm-card-c.up::before,.lm-tick .c.up::before,.lm-c-chg.up .lm-pct::before,.lm-f-c.up::before,.lm-mover .c.up::before,.lm-f-rchg.up .num::before,.lm-stat dd.up::before{border-bottom:.44em solid currentColor}
.lm-card-c.down::before,.lm-tick .c.down::before,.lm-c-chg.down .lm-pct::before,.lm-f-c.down::before,.lm-mover .c.down::before,.lm-f-rchg.down .num::before,.lm-stat dd.down::before{border-top:.44em solid currentColor}

/* insights */
.lm-insights{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:16px;margin:8px 0 22px}
.lm-card-box{padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:var(--card);min-width:0}
.lm-card-box h3{margin:0;font-size:16.5px}
.lm-box-sub{margin:2px 0 12px;font-size:13px;color:var(--muted)}
.lm-heat{grid-row:span 2}
.lm-hm{display:flex;flex-direction:column;gap:10px;margin-top:12px}
.lm-hm-row{display:grid;grid-template-columns:72px minmax(0,1fr);gap:8px;align-items:start}
.lm-hm-g{font-size:13px;color:var(--muted);padding-top:9px}
.lm-hm-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:6px}
.lm-hm-tile{display:flex;flex-direction:column;gap:1px;padding:8px 10px;border:0;border-radius:10px;color:var(--ink);font-size:13px;line-height:1.5;min-width:0;transition:transform .15s}
.lm-hm-tile:hover{transform:translateY(-1px);outline:2px solid var(--accent);outline-offset:1px}
.lm-hm-tile .n{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lm-hm-tile .v{font-weight:750;font-size:14px}
.lm-hm-tile.z0{background:var(--flat-soft)}
.lm-hm-tile.u1{background:color-mix(in srgb,var(--up) 14%,var(--card))} .lm-hm-tile.u2{background:color-mix(in srgb,var(--up) 30%,var(--card))}
.lm-hm-tile.u3{background:color-mix(in srgb,var(--up) 52%,var(--card));color:#fff} .lm-hm-tile.u4{background:color-mix(in srgb,var(--up) 78%,var(--card));color:#fff}
.lm-hm-tile.d1{background:color-mix(in srgb,var(--down) 14%,var(--card))} .lm-hm-tile.d2{background:color-mix(in srgb,var(--down) 30%,var(--card))}
.lm-hm-tile.d3{background:color-mix(in srgb,var(--down) 52%,var(--card));color:#fff} .lm-hm-tile.d4{background:color-mix(in srgb,var(--down) 78%,var(--card));color:#fff}
.lm-mv{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:10px}
.lm-mv-col h4{margin:0 0 6px;font-size:13.5px;color:var(--muted);font-weight:600}
.lm-mover{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"n c" "p c";gap:0 8px;padding:8px 0;border:0;border-bottom:1px solid var(--line);color:var(--ink);font-size:14px}
.lm-mover:last-child{border-bottom:0}
.lm-mover .n{grid-area:n;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis} .lm-mover .p{grid-area:p;font-size:13px;color:var(--muted);text-align:right} .lm-mover .c{grid-area:c;align-self:center;font-weight:800;font-size:15px}
.lm-mover:hover .n{color:var(--accent-ink)}
.lm-rt{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:10px;margin-top:12px}
.lm-ratio{padding:10px 12px;border-radius:12px;background:var(--paper);border:1px solid var(--line)}
.lm-ratio .t{display:block;font-size:13px;color:var(--muted)}
.lm-ratio b{display:block;font-size:22px;line-height:1.4;text-align:right}
.lm-ratio .u{display:block;font-size:12.5px;color:var(--ink-2)}
.lm-ratio p{margin:6px 0 0;font-size:12.5px;color:var(--muted);line-height:1.7;text-align:right}
.lm-hours{grid-column:1/-1}
.lm-hours-body{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:4px 22px}
.lm-hour{display:grid;grid-template-columns:72px 56px minmax(0,1fr);grid-template-areas:"n s t" "tl tl tl";gap:2px 8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line);font-size:13.5px}
.lm-hour .n{grid-area:n;font-weight:700} .lm-hour .lm-state{grid-area:s} .lm-hour .t{grid-area:t;color:var(--muted);text-align:left}
.lm-hour .tl{grid-area:tl;width:100%;height:10px;direction:ltr}
.lm-hour .tl .bg{fill:var(--flat-soft)} .lm-hour .tl .band{fill:color-mix(in srgb,var(--accent) 35%,var(--card))} .lm-hour.on .tl .band{fill:var(--accent)} .lm-hour .tl .now{fill:var(--brand-red)}

/* call to action + sources */
.lm-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;margin:6px 0 22px;padding:22px 24px;border-radius:20px;border:1px solid var(--accent-soft);background:linear-gradient(120deg,var(--accent-faint),var(--card))}
.lm-cta h2{margin:0 0 4px;font-size:19px}
.lm-cta p{margin:0;color:var(--ink-2);font-size:14px}
.lm-cta-btns{display:flex;flex-wrap:wrap;gap:8px}
.lm-sources{margin:0 0 18px;font-size:13px;color:var(--ink-2)}
.lm-sources h2{font-size:16px;margin:0 0 6px}
.lm-sources ul{margin:0;padding-inline-start:18px;line-height:2}

/* live strip (landing + today's report) */
.lm-strip{margin:4px 0 22px;padding:16px 18px 18px;border:1px solid var(--line);border-radius:20px;background:var(--card)}
.lm-strip-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:12px}
.lm-strip-head h2{margin:0;font-size:17px;display:inline-flex;align-items:center;gap:6px}
.lm-strip-head h2 .pw-ic{color:var(--accent)}
.lm-strip-more{margin-inline-start:auto;font-size:13px;font-weight:700;border:0}
.lm-strip-more::after{content:" ←"}
.lm-strip-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.lm-card{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"n" "sub" "p" "c" "s";gap:0;padding:11px 11px 8px;container-type:inline-size;border:1px solid var(--line);border-radius:14px;background:var(--paper);color:var(--ink);min-width:0;transition:border-color .15s,transform .15s}
.lm-card:hover{border-color:var(--accent);transform:translateY(-1px)}
.lm-card-n{grid-area:n;font-weight:750;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lm-card-sub{grid-area:sub;font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lm-card-p{grid-area:p;font-size:19px;font-size:clamp(15px,15cqi,19px);font-weight:800;margin-top:5px;text-align:right;white-space:nowrap}   /* six narrow cards: a six-digit bitcoin still fits */
.lm-card-c{grid-area:c;justify-self:start;font-size:13px;font-weight:800}
.lm-card-p .v{padding:0 2px} .lm-card-p .lm-tk{font-size:13px;margin:0 .2em 0 0}
.lm-card .lm-spark{grid-area:s;max-width:none;height:30px;margin-top:4px}
.lm-strip .lm-live{padding:3px 10px;font-size:12.5px}
.reading-tools .lm-strip{margin:0 0 18px}

@media (max-width:1100px){.lm-strip-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){.lm-insights{grid-template-columns:1fr}.lm-heat{grid-row:auto}}
@media (max-width:760px){
  .lm-hero{padding:18px 18px;border-radius:18px;margin-top:4px}
  .lm-hero .lede{font-size:14.5px}
  .lm-focus{padding:16px 14px 14px;border-radius:18px}
  .lm-f-head{grid-template-columns:1fr;grid-template-areas:"title" "quote" "meta"}
  .lm-f-quote{align-items:flex-start;text-align:right}
  .lm-f-h{font-size:20px}
  .lm-f-bar{gap:8px}
  .lm-seg{max-width:100%;overflow-x:auto;scrollbar-width:none}
  .lm-seg button{padding:5px 10px}
  .lm-f-rchg{margin-inline-start:0;width:100%}
  .lm-f-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lm-tip{min-width:130px}
  /* .lm-page prefix: ui.css forces real table layout on every «.wrap table» (0,1,2) */
  .lm-page .lm-table thead{display:none}
  .lm-page .lm-table,.lm-page .lm-table tbody{display:block;min-width:0;width:100%}   /* styles.css gives every mobile table min-width:640px */
  .lm-page .lm-row{display:grid;grid-template-columns:minmax(0,1fr) 78px minmax(92px,auto);grid-template-areas:"name spark price" "name spark chg";align-items:center;gap:0 10px;padding:9px 12px;border-bottom:1px solid var(--line)}
  .lm-page .lm-row:last-child{border-bottom:0}
  .lm-page .lm-table td,.lm-page .lm-table th[scope=row]{display:block;padding:0;border:0}
  .lm-c-name{grid-area:name;min-width:0} .lm-c-spark{grid-area:spark} .lm-c-price{grid-area:price;text-align:left!important} .lm-c-chg{grid-area:chg;text-align:left!important}
  .lm-c-range,.lm-c-state,.lm-unit,.lm-c-chg .lm-abs{display:none!important}
  .lm-sub{margin-inline-start:32px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .lm-spark{height:30px}
  .lm-hm-row{grid-template-columns:1fr}.lm-hm-g{padding-top:0}
  .lm-hm-tiles{grid-template-columns:repeat(auto-fill,minmax(84px,1fr))}
  .lm-mv{grid-template-columns:1fr}
  .lm-strip{padding:14px 12px 14px;border-radius:18px}
  .lm-strip-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .lm-strip-more{width:100%;margin:0}
  .lm-card-p{font-size:18px;font-size:clamp(15px,13cqi,18px)}
}
@media (prefers-reduced-motion:reduce){.lm-pulse::after,.lm-chart-svg .live-dot{animation:none}.lm-row,.lm-card,.lm-hm-tile{transition:none}.lm-card:hover,.lm-hm-tile:hover{transform:none}.lm-fu,.lm-fd,.lm-tk.go{animation:none}}
@media print{.lm-tape,.lm-tabs,.lm-insights,.lm-cta,.lm-star,.lm-seg{display:none}}

/* «پیش‌بینی بانک‌های بزرگ جهان» promo card (2026-10-25): end of the report's summary section, links to the public /forecasts page.
   The banks' targets live there, apart from the report's own views. Static markup from postprocess.forecast_card. */
.fpc{position:relative;overflow:hidden;margin:22px 0 6px;padding:20px 22px 16px;border-radius:20px;color:#fff;isolation:isolate;
  background:radial-gradient(110% 130% at 0% 0%,#4355DB 0%,rgba(67,85,219,0) 55%),linear-gradient(135deg,#0F1F33 0%,#142B40 50%,#1D2A6B 100%);box-shadow:0 14px 36px rgba(20,43,64,.22)}
.fpc::after{content:"";position:absolute;z-index:-1;width:300px;height:300px;left:-90px;top:-130px;border-radius:50%;background:radial-gradient(circle,rgba(185,151,80,.32),transparent 65%)}
.fpc-h{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:10px 18px;margin-bottom:14px}
.fpc-k{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:#C9D1FF} .fpc-k .pw-ic{color:#E8C77A}
.fpc-title{display:block;margin-top:4px;font-size:clamp(19px,2.6vw,24px);font-weight:800;line-height:1.4;color:#fff}
.fpc-cta{display:inline-flex;align-items:center;min-height:42px;padding:8px 18px;border-radius:12px;background:#fff;color:#142B40!important;font-weight:800;font-size:14px;text-decoration:none!important;border:0}
.fpc-cta:hover{background:#E9EDFF}
.fpc-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.fpc-t{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);color:#fff!important;text-decoration:none!important;transition:transform .18s,background .18s}
.fpc-t:hover{transform:translateY(-2px);background:rgba(255,255,255,.13)}
.fpc-t .n{font-size:13.5px;font-weight:700;color:rgba(255,255,255,.9)} .fpc-t b{font-size:23px;font-weight:800;line-height:1.3}
.fpc-t .s{font-size:12px;color:rgba(255,255,255,.7)}
.fpc .num{font-family:var(--lm-num,Inter,Vazirmatn,sans-serif);font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate}
.fpc-p{align-self:flex-start;margin-top:3px;padding:2px 9px;border-radius:999px;font-size:12.5px;font-weight:700;background:rgba(255,255,255,.12)}
.fpc-p.up .num{color:#7EE2B8} .fpc-p.down .num{color:#FF9C9C}
.fpc-rev{margin:14px 0 0;font-size:13.5px;line-height:1.85;color:rgba(255,255,255,.88)} .fpc-rev b{color:#fff;unicode-bidi:isolate}
.fpc-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-inline-end:8px;vertical-align:middle} .fpc-dot.up{background:#7EE2B8} .fpc-dot.down{background:#FF9C9C}
.fpc-note{margin:8px 0 0;font-size:12.5px;line-height:1.8;color:rgba(255,255,255,.66)}
@media(max-width:760px){.fpc{padding:16px 14px 14px}.fpc-grid{grid-template-columns:1fr 1fr}.fpc-t b{font-size:20px}.fpc-cta{width:100%;justify-content:center}}
@media(prefers-reduced-motion:reduce){.fpc-t{transition:none}.fpc-t:hover{transform:none}}
/* v29: «پشیز ۳۶۰» card on today's report, under the live strip (workspace.js p360Card; data from /api/p360/today) */
.p360-rc{display:flex;align-items:center;gap:14px;margin:12px 0 4px;padding:12px 16px;border-radius:16px;border:1px solid var(--line);background:linear-gradient(135deg,var(--accent-soft),var(--card) 70%);color:var(--ink)!important;text-decoration:none!important;transition:border-color .15s,transform .15s}
.p360-rc[hidden]{display:none}
.p360-rc:hover{border-color:var(--accent);transform:translateY(-1px)}
.p360-rc-day{display:grid;place-content:center;justify-items:center;flex:none;width:58px;height:58px;box-sizing:border-box;border-radius:50%;border:3px solid var(--accent);background:var(--card)}
.p360-rc-day b{font-size:17px;line-height:1.15;font-weight:800} .p360-rc-day span{font-size:12px;line-height:1.2;color:var(--muted)}
.p360-rc-txt{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1;text-align:start}
.p360-rc-k{font-size:12.5px;font-weight:700;color:var(--accent-ink)} .p360-rc-t{font-size:16px;line-height:1.6} .p360-rc-s{font-size:12.5px;color:var(--muted)}
.p360-rc-go{flex:none;padding:6px 14px;border-radius:999px;background:var(--action);color:var(--on-action);font-size:13px;font-weight:700}
@media(max-width:760px){.p360-rc{padding:10px 12px;gap:10px}.p360-rc-day{width:50px;height:50px}.p360-rc-go{display:none}}
@media(prefers-reduced-motion:reduce){.p360-rc{transition:none}.p360-rc:hover{transform:none}}

/* Phone application shell shared by every reader page. */
.phone-appbar{display:none}
.phone-explanation{display:contents}.phone-explanation>summary{display:none}
@media(max-width:760px){
  .sup-fab{display:none!important}
  .phone-workspace .topbar{display:none!important}
  .phone-workspace .wrap,.phone-workspace .wrap.wide{width:100%;max-width:760px!important;box-sizing:border-box;margin:0 auto!important;padding:16px!important}
  .phone-appbar{display:flex;position:sticky;top:0;z-index:60;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;background:var(--paper);border-bottom:1px solid var(--line);min-height:54px;box-sizing:border-box}
  .phone-appbar-home{display:none}
  .phone-appbar strong{font-size:16px;font-weight:750}
  .phone-appbar :is(a,button){display:grid;place-items:center;width:40px;height:40px;border:0;text-decoration:none;border-radius:14px;color:var(--ink)}
  .phone-appbar .phone-profile{background:var(--accent-soft);color:var(--accent-ink)}
  .phone-appbar svg{width:22px;height:22px}
  .phone-appbar .phone-actions{display:flex;align-items:center;gap:4px}
  .phone-appbar .phone-info{background:transparent;color:var(--muted)}
  .phone-workspace .masthead .eyebrow{display:none}
  .phone-appbar .phone-info{color:var(--accent-ink)}
  body.pg-sheet-open{overflow:hidden}
  .pg-dialog{position:fixed;inset:auto 0 0;margin:0;box-sizing:border-box;width:100%;max-width:none;max-height:80vh;max-height:80dvh;overflow:auto;overscroll-behavior:contain;border:0;border-radius:22px 22px 0 0;background:var(--card);color:var(--ink);padding:0 18px max(18px,env(safe-area-inset-bottom));box-shadow:0 -12px 40px rgb(0 0 0/.25)}
  .pg-dialog::backdrop{background:rgb(8 12 26/.5)}
  .pg-dialog .pg-dialog-content{border:0;background:none;margin:0}
  .pg-dialog-content>summary{display:none}
  .pg-dialog .pg-sheet-head{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:1;background:var(--card);padding:10px 0;border-bottom:1px solid var(--line)}
  .pg-sheet-head strong{font-size:16px;font-weight:800}
  .pg-sheet-x{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:12px;background:var(--flat-soft,transparent);color:var(--ink)}
  .pg-dialog .body{padding:12px 0 0;border:0}
  .pg-intro{margin:0 0 12px;padding:0 0 12px;border-bottom:1px solid var(--line)}
  .pg-intro :is(p,.lede,.subtitle){margin:0;font-size:14.5px;line-height:1.95;color:var(--ink-2);text-align:start}
  .pg-intro details.pg-sub{margin:12px 0 0;padding:0;border:0;background:none}
  .pg-intro details.pg-sub>summary{pointer-events:none;list-style:none;font-weight:800;font-size:15px;padding:0 0 6px;border:0}
  .pg-intro details.pg-sub>summary::before,.pg-intro details.pg-sub>summary::-webkit-details-marker{display:none;content:none}
  @keyframes pz-sheet-up{from{transform:translateY(48px);opacity:.5}to{transform:none;opacity:1}}
  @keyframes pz-fade{from{opacity:0}to{opacity:1}}
  .phone-workspace .masthead,.phone-workspace .masthead.slim{padding:12px 0 18px;margin:0;text-align:start}
  .phone-workspace .masthead h1{font-size:22px;line-height:1.65;text-align:start;margin:8px 0}
  .phone-workspace .masthead .eyebrow{font-size:12px}
  .phone-workspace .masthead .subtitle{font-size:14px;line-height:1.9;margin:8px 0}
  .phone-explanation{display:block;margin:8px 0 16px;border:1px solid var(--line);border-radius:16px;padding:0 14px;background:var(--card)}
  .phone-explanation>summary{display:list-item;cursor:pointer;min-height:44px;padding:10px 0;box-sizing:border-box;font-size:13px;color:var(--muted)}
  .phone-explanation:not([open])>:not(summary){display:none}
  .phone-workspace .wrap>section{border-radius:20px}
  .phone-workspace :is(.band,.acc-cols,.acc-main,.acc-side){min-width:0}
  .phone-workspace .acc-cols,.phone-workspace .acc-side{display:flex;flex-direction:column;gap:16px}
  .phone-workspace .acc-main,.phone-workspace .acc-side{width:100%}
  .phone-workspace .acc-top{padding:12px 0;gap:12px;align-items:flex-start}
  .phone-workspace .acc-name{font-size:17px;overflow-wrap:anywhere}
  .phone-workspace .acc-act{flex-wrap:wrap;gap:8px}
  .phone-workspace .acc-act .btn{min-height:44px;font-size:12px;padding:8px 12px}
  .mobile-account-hub{margin:8px 0 20px}.mobile-account-hub>a{min-height:70px}
  .account-service-copy small{font-size:12px}
  .phone-workspace :is(.inp,input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){max-width:100%;box-sizing:border-box;font-size:16px}
  .phone-workspace :is(button,.btn){min-height:44px}
  .phone-workspace :is(.reading-tabs,.xp-chips,.lm-tabs){flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;max-width:100%;padding-bottom:8px}
  .phone-workspace :is(.reading-tabs,.xp-chips,.lm-tabs)>*{flex-shrink:0}
  .phone-workspace .tbl-scroll:has(.mobile-card-table){overflow:visible;border:0;background:transparent}
  .phone-workspace .mobile-card-table .mobile-table-record{margin:12px 0}
  .phone-workspace .mobile-card-table td::before{font-size:12px!important}
  .phone-workspace .xp-board .xp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .phone-workspace .xp-steps{grid-template-columns:1fr;gap:10px}
  .phone-workspace .xp-post{padding:16px;border-radius:18px}
  .phone-workspace .geo-index{padding:16px;border-radius:20px}
  .phone-workspace .geo-risk-m{grid-template-columns:1fr}
  .phone-workspace .fp-hero{margin:0 0 20px}
  .phone-workspace .fp-row{gap:8px}
  .phone-workspace .pg-guide{margin:20px 0;font-size:13px}
  .phone-workspace .pg-guide>summary{min-height:44px;box-sizing:border-box}
  .reader-bottom-nav a{font-size:12px}
  .reader-bottom-nav a.central{justify-content:center}
  .reader-bottom-nav a.central .nav-icon{width:58px;height:58px;border-radius:21px;margin:0;transform:translateY(-6px)}
  .reader-bottom-nav a.central svg{width:32px;height:32px}
  .mobile-home a:not(.mh-market):not(.mh-tip){border-bottom:0;text-decoration:none;box-shadow:none;background-image:none}
  .mobile-home .mh-shortcuts a{padding:4px 0;gap:9px;border:0}
  .mobile-home .mh-shortcuts a::after,.mobile-home .mh-shortcuts a::before{display:none}
  .mobile-home .mh-shortcuts a span{width:56px;height:56px;border-radius:19px}
  .mobile-home .mh-shortcuts a svg{width:26px;height:26px}
  .mobile-home .mh-market{padding:17px 8px}
  .mobile-home .mh-greeting{margin-bottom:22px}
  .mobile-home .mh-report{box-shadow:0 10px 24px #4355db24!important}
  .phone-workspace #support{scroll-margin-top:80px}
}

@media(max-width:760px){
  .phone-workspace .seo-breadcrumb{display:none}
  .phone-workspace .lm-hero{margin:0 0 14px;padding:16px;background:var(--card)}
  .phone-workspace .lm-hero h1{font-size:23px;line-height:1.6}
  .phone-workspace .lm-eyebrow{display:none}
  .phone-workspace .lm-hero .phone-explanation{border:0;background:transparent;padding:0;margin:0}
  .phone-workspace .lm-hero .phone-explanation>summary{padding:4px 0;min-height:36px}
  .phone-workspace .lm-hero .lm-live{font-size:12px}
  .phone-workspace .fp-hero{padding:18px 16px}
  .phone-workspace .fp-hero h1{font-size:22px;line-height:1.6}
  .phone-workspace .fp-hero .phone-explanation{background:#ffffff0a;border-color:#ffffff30;color:#fff;margin:8px 0}
  .phone-workspace .fp-hero .phone-explanation>summary{color:#fff}
  .phone-workspace .fp-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
  .phone-workspace .fp-stat{padding:9px 5px;border-radius:12px;text-align:center}
  .phone-workspace .fp-stat b{font-size:16px}.phone-workspace .fp-stat span{font-size:12px}
  .phone-workspace .fp-spot{padding:14px}.phone-workspace .fp-spot-v{font-size:30px}
  .phone-workspace .fp-banks{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:6px}
  .phone-workspace .fp-bank{flex-shrink:0}
  .phone-workspace .pg-guide>summary>.muted{display:none}
  .phone-workspace .pg-guide>summary{font-size:13px}
  .phone-workspace .masthead{padding:4px 0 12px}
  .phone-workspace .masthead .eyebrow{margin:4px 0}
  .phone-workspace .masthead .phone-explanation{margin:8px 0}
  .phone-workspace .xp-board h2{font-size:19px;margin:12px 0}
  .phone-workspace .phone-explanation+.phone-explanation{margin-top:0}
  body.phone-workspace:has(.acc-top) .mobile-account-hub{display:grid!important;grid-template-columns:1fr 1fr}
  .mobile-account-hub>a:first-child{grid-column:1/-1;background:var(--accent-soft)}
  .mobile-account-hub>a:not(:first-child){padding:12px;gap:8px;border-top:1px solid var(--line);align-items:flex-start;flex-direction:column;position:relative}
  .mobile-account-hub>a:nth-child(2){border-inline-end:1px solid var(--line)}
  .mobile-account-hub>a:not(:first-child) .account-service-arrow{position:absolute;left:14px;top:18px}
  .phone-workspace .acc-cards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:none}
  .phone-workspace .acc-card{flex:0 0 80%;scroll-snap-align:start;box-sizing:border-box;padding:16px}
  .phone-workspace .acc-card .v.v-text{font-size:19px}
  .phone-workspace .acc-top{margin:0 0 8px}
}

@media(max-width:760px){.phone-workspace .wrap .mobile-card-table>tbody,.phone-workspace .wrap .mobile-card-table>thead,.phone-workspace .wrap .mobile-card-table>tfoot{display:block;width:100%!important}.phone-appbar button{padding:0;cursor:pointer}}

/* Small installed-build label at the bottom of Account; never guess the channel on the web. */
.app-build-identity{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;margin:24px 0 8px;padding:16px 8px;color:var(--muted);font-size:12px;line-height:1.8}
.app-build-icon{display:inline-grid;place-items:center;margin-inline-end:2px;width:20px;height:20px}
.app-build-icon img,.app-build-icon svg{display:block;width:20px;height:20px;object-fit:contain}
.app-build-dot{padding:0 3px;opacity:.65}.app-build-version{font-variant-numeric:tabular-nums}

/* Page change loader (workspace.js pageLoader, 2026-11-02): the Pashiz owl, still, inside a thin ring that turns; a soft haze around it
   only (the page stays sharp and tappable). Reduced motion: the ring stops (global rule). */
.pz-loader{--owl-ink:#142B40;position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;background:none;pointer-events:none;opacity:0;transition:opacity .12s ease-out}
:root[data-theme="dark"] .pz-loader{--owl-ink:#EFE6D2}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .pz-loader{--owl-ink:#EFE6D2}}
.pz-loader.on{opacity:1}
.pz-loader[hidden]{display:none}
.pz-spin{position:relative;width:76px;height:76px;display:grid;place-items:center;isolation:isolate}
.pz-spin::before{content:"";position:absolute;inset:-34px;z-index:-1;border-radius:50%;pointer-events:none;
  background:radial-gradient(closest-side,color-mix(in srgb,var(--paper) 85%,transparent) 0%,color-mix(in srgb,var(--paper) 55%,transparent) 60%,transparent 100%);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  -webkit-mask-image:radial-gradient(closest-side,#000 50%,transparent 100%);mask-image:radial-gradient(closest-side,#000 50%,transparent 100%)}
.pz-ring{position:absolute;inset:0;width:100%;height:100%;animation:pz-turn .8s linear infinite}
.pz-ring circle{fill:none;stroke-width:3.5;stroke-linecap:round}
.pz-ring .trk{stroke:color-mix(in srgb,var(--accent) 16%,transparent)}
.pz-ring .arc{stroke:var(--accent);stroke-dasharray:46 200}
.pz-owl{width:42px}
.pz-owl-svg{display:block;width:100%;height:auto}
.pz-owl-svg .ow-b{fill:var(--owl-ink)}
.pz-owl-svg .ow-eye{fill:#B99750}
@keyframes pz-turn{to{transform:rotate(360deg)}}

/* Phone app polish (2026-11-02, owner: «موبایل اپلیکیشنی نیست خیلی جاها»): a frosted app bar whose name appears only once the page's
   large title has scrolled under it, section chips (report) and segmented panes (pulse) instead of endless pages, card carousels,
   cross-page transitions that keep both bars still, and a press response on every tappable card. */
@media(max-width:760px){
  .phone-appbar{background:var(--paper);border-bottom-color:transparent;transition:border-color .2s ease}   /* opaque (NN/g: translucent sticky headers hurt legibility) */
  .phone-appbar.phone-appbar-scrolled{border-bottom-color:var(--line)}
  .phone-appbar{padding-block:6px}
  .phone-appbar :is(a,button){min-height:44px!important;width:44px;height:44px}
  .phone-appbar strong{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity .18s ease,transform .18s ease}
  .phone-appbar-large:not(.phone-appbar-titled) strong{opacity:0;transform:translateY(5px)}
  body.phone-screen-open .phone-appbar strong{opacity:1;transform:none}
  .phone-workspace :is(.masthead,.lm-hero,.fp-hero) h1{font-size:25px;font-weight:850;line-height:1.55}

  /* report: sticky section chips; the overview's three keys swipe sideways; the live strip is one swipeable row */
  .reading-phone-toolbar{position:sticky;top:56px;z-index:55;display:flex;align-items:center;gap:8px;margin:-16px -16px 14px;padding:8px 12px;background:var(--paper);border-bottom:1px solid var(--line)}
  .reading-workspace .reading-phone-toolbar .section-picker{display:inline-flex;align-items:center;gap:5px;flex:none;width:auto;margin:0;padding:0 10px;min-height:44px;border-radius:12px;font-size:13px;background:var(--accent-soft);color:var(--accent-ink);white-space:nowrap}
  .reading-phone-toolbar .picker-icon svg{display:block;width:16px;height:16px}
  .reading-tabs.reading-chips{min-width:0;flex:1;flex-wrap:nowrap!important;overflow-x:auto!important;gap:6px!important;margin:0!important;padding:0 0 2px!important;border:0}
  .reading-chips a{flex:0 0 auto;white-space:nowrap;padding:8px 12px!important;min-height:44px!important;border:1px solid var(--line)!important;border-radius:999px;background:var(--card);color:var(--ink-2);font-size:13.5px}
  .reading-chips a[aria-current]{background:var(--action)!important;border-color:var(--action)!important;color:var(--on-action)!important;font-weight:800}   /* two cues: fill and weight */
  .reading-workspace .reading-mode,.reading-workspace .reading-mode-help,.reading-workspace .today-overview>:is(.btn,.text-link){display:none!important}
  .reading-workspace .today-overview h2{font-size:20px;margin:4px 0 12px}
  .reading-workspace .daily-highlights{display:grid!important;grid-template-columns:minmax(0,1fr);gap:8px!important;margin:0}
  .reading-workspace .daily-highlights article{box-sizing:border-box;display:flex;flex-direction:column;padding:12px 14px!important;border-radius:14px!important}
  .reading-workspace .daily-highlights article>a{margin-top:auto;align-self:flex-start;min-height:36px;padding:7px 14px;border-radius:999px;background:var(--accent-soft);color:var(--accent-ink);font-size:13px;font-weight:750;text-decoration:none}
  .reading-workspace .lm-strip:not(.mh-live) .lm-strip-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:8px;padding-bottom:4px;scrollbar-width:none}
  .reading-workspace .lm-strip:not(.mh-live) .lm-strip-grid::-webkit-scrollbar{display:none}
  .reading-workspace .lm-strip:not(.mh-live) .lm-strip-grid>.lm-card{flex:0 0 44%;scroll-snap-align:start}

  /* segmented panes (pulse) */
  .phone-seg{position:sticky;top:64px;z-index:55;display:flex;gap:4px;margin:0 0 14px;padding:4px;border:1px solid var(--line);border-radius:15px;background:var(--card)}
  .phone-seg::before{content:"";position:absolute;inset:-8px -17px auto;height:7px;background:var(--paper)}   /* covers the strip between the bar and the stuck control */
  .phone-seg-b{flex:1;min-height:44px!important;padding:0 6px;border:0;border-radius:11px;background:transparent;color:var(--muted);font:inherit;font-size:14px;font-weight:750;cursor:pointer;white-space:nowrap}
  .phone-seg-b[aria-selected=true]{background:var(--action);color:var(--on-action);font-weight:850}
  .phone-seg-pane>h2{display:none}
  .phone-seg-pane{scroll-margin-top:122px}
  .phone-workspace .wrap>section.phone-seg-pane:is(#posts,.xp-board),.phone-workspace .wrap>section:has(>.geo-brief){background:none;border:0;padding:0;box-shadow:none}
  .xp-filters:has(.phone-filter-more):not(.phone-filters-open) .xp-row{display:none}
  .xp-chips .phone-filter-more{display:inline-flex;align-items:center;gap:6px}
  .xp-chips .phone-filter-more .pw-ic{width:16px;height:16px}
  .xp-chips .phone-filter-more[aria-expanded=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink)}

  /* a tappable card answers the finger */
  .phone-workspace .wrap a[class]:not(.btn,.reading-chips a){transition:transform .14s ease}
  .phone-workspace .wrap a[class]:not(.btn):active{transform:scale(.98)}
}
@media(max-width:760px) and (prefers-reduced-motion:no-preference){
  @view-transition{navigation:auto}
  .phone-appbar{view-transition-name:pz-appbar}
  .reader-bottom-nav{view-transition-name:pz-tabbar}
  ::view-transition-old(root){animation:pz-vt-out .14s ease-in both}
  ::view-transition-new(root){animation:pz-vt-in .22s cubic-bezier(.2,.8,.2,1) both}
}
@keyframes pz-vt-out{to{opacity:0}}
@keyframes pz-vt-in{from{opacity:0;transform:translateY(12px)}}
@media(max-width:760px) and (prefers-reduced-motion:reduce){.phone-workspace .wrap a[class]:active{transform:none}}

/* Phone, NN/g pass (2026-11-02 c, owner: «با الگوهای nngroup بهبود بده»): gist first, progressive disclosure, lists for like items,
   whole cards as one target, labelled tabs, ≥1 cm targets. */
.mh-forecast{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin:12px 0 0;padding:10px 12px;min-height:58px;border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--ink);text-decoration:none}
.mh-forecast strong,.mh-forecast small{display:block}
.mh-forecast small{color:var(--muted);font-size:12px}
.mh-section-title{font-size:17px;margin:22px 0 8px}
.mh-section-title+.mh-grid{margin-top:0}
@media(max-width:760px){
  .phone-workspace .mobile-home{padding-top:4px}
  .phone-workspace .mobile-home .mh-greeting{margin-bottom:12px}
  .phone-workspace .mobile-home .mh-report{padding:14px 16px}
  .phone-workspace .mobile-home .mh-forecast{border:1px solid var(--line);text-decoration:none}
  .mobile-home .mh-avatar,.mobile-home .lm-strip-more{min-height:44px;display:inline-flex;align-items:center}
  .mh-actions{display:flex;align-items:center;gap:4px}
  .mh-actions .mh-avatar{justify-content:center}
  .mh-actions .phone-info{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:14px;background:transparent;color:var(--accent-ink)}
  .mh-actions .phone-info svg{width:22px;height:22px}
  :is(.phone-workspace,body[data-page=login]) :is(a,button,input,summary):focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}
  .reading-workspace [id]{scroll-margin-block-start:124px}
  /* report: a compact title instead of the 3D banner (the chips already lead into the report) */
  .reading-tools .pz3d-hero{display:block;padding:4px 0 0;margin:0 0 6px;border:0;background:none;box-shadow:none;min-height:0}
  .reading-tools .pz3d-hero::before,.reading-tools .pz3d-hero::after,.reading-tools .pz3d,.reading-tools .pz3d-eyebrow,.reading-tools .pz3d-cta{display:none!important}
  .reading-tools .pz3d-hero h1{font-size:25px;font-weight:850;line-height:1.5;margin:0 0 2px}
  .reading-tools .pz3d-txt>p{margin:0 0 6px;font-size:13px}
  .reading-workspace .today-overview .lm-strip,.reading-workspace .today-overview .p360-rc{margin:18px 0 0}
  .pz-resume{display:flex;flex-direction:column;gap:2px;margin:0 0 16px;padding:12px 16px;border-radius:16px;background:var(--accent-soft);color:var(--accent-ink);text-decoration:none}
  .pz-resume-k{font-size:12.5px;font-weight:700;opacity:.85} .pz-resume b{font-size:15px;line-height:1.7;color:var(--ink)}
  .pz-tap{position:relative}
  .pz-tap>a::after{content:"";position:absolute;inset:0;border-radius:inherit}
  .pz-tap:active{transform:scale(.985);transition:transform .12s ease}
  .lm-strip-more{display:inline-block;padding:10px 0}

  /* progressive disclosure */
  .pz-clamp:not(.pz-open){display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .pz-more{display:block;min-height:40px!important;padding:6px 0;border:0;background:none;color:var(--accent-ink);font:inherit;font-size:13.5px;font-weight:750;text-align:start;cursor:pointer}

  /* pulse posts: the Persian gist first, then the folded original, then numbers and tags */
  .xp.tw{display:flex;flex-direction:column}
  .xp.tw>.tw-h{order:0}.xp.tw>.tw-fa{order:1}.xp.tw>.tw-text,.xp.tw>.pz-more{order:2}.xp.tw>.tw-f{order:3}.xp.tw>.tw-an{order:4}
  .xp.tw>.tw-fa{margin:12px 0 4px;padding:0;border:0;background:none;font-size:15.5px;line-height:1.95;color:var(--ink)}
  .xp.tw>.tw-fa b{display:block;font-size:12px;font-weight:750;color:var(--accent-ink);margin-bottom:2px}
  .xp.tw>.tw-text{margin:6px 0 0;padding:0;border:solid var(--paper);border-width:10px 12px;border-radius:12px;background:var(--paper);font-size:14px;color:var(--ink-2)}
  .xp.tw>.pz-more{align-self:flex-start}
  .tw-x{display:grid;place-items:center;width:40px;height:40px;margin:-8px}
  .tw-name{padding-block:10px}

  /* pulse assets: one list (NN/g: like items scan better as a list than as cards) */
  .phone-workspace .xp-board .xp-grid{display:block;padding:0 14px;border:1px solid var(--line);border-radius:18px;background:var(--card)}
  .phone-workspace .xp-board .xp-tk{display:grid;grid-template-columns:minmax(0,1fr) 92px;grid-template-areas:"h bar" "f bar";align-items:center;gap:2px 14px;min-height:58px;padding:10px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none}
  .phone-workspace .xp-board .xp-tk:last-child{border-bottom:0}
  .phone-workspace .xp-board .xp-tk-h{grid-area:h;justify-content:flex-start;gap:8px;font-size:15px}
  .phone-workspace .xp-board .xp-tk-f{grid-area:f}
  .phone-workspace .xp-board .xp-bar{grid-area:bar;margin:0}

  /* geo: index parts explain themselves on tap; source links get a finger-sized hit area */
  .geo-comp-tap{cursor:pointer;-webkit-tap-highlight-color:transparent}
  .geo-comp-tap .pw-ic{width:14px;height:14px;color:var(--muted)} .geo-comp-tap>span:first-child{white-space:nowrap}
  .geo-comp-tap[aria-expanded=false] .geo-comp-h{display:none}
  .geo-refs a{padding-block:10px}

  /* every tab is labelled, the owl too */
  .reader-bottom-nav a.central{justify-content:flex-end}
  .reader-bottom-nav a.central .nav-icon{width:52px;height:52px;margin-top:-20px;transform:none;border-radius:19px}
  .reader-bottom-nav a.central svg{width:28px;height:28px}
}
