/* PRTDS discovery homepage: isolated visual layer, not published to apex.
   Mobile-first review candidate | 19 Oct 2026 */
:root{--prtds-ink:#25272d;--prtds-muted:#6b7280;--prtds-line:#e9eaed;--prtds-surface:#f7f8f9}
html{scroll-padding-top:12px}body{overflow-x:clip}
button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #355bc7;outline-offset:3px}
.top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px 18px;align-items:center;padding:12px clamp(16px,3vw,40px);min-height:72px;border-bottom:1px solid #f2f2f3}
.siteBrand{background:none;border:0;padding:10px 0;color:#25272d;font-size:22px;font-weight:850;letter-spacing:-1.15px;white-space:nowrap}
.siteBrand span{color:#5367a5}
.top .topGroup{min-width:0;overflow-x:auto;scrollbar-width:none;gap:7px;justify-content:center}
.top .topGroup::-webkit-scrollbar{display:none}
.top .navTop{gap:7px;margin-left:0}
.top .chip,.top .navBtn,.top .topLink{min-height:44px;white-space:nowrap}
.top .topLink{border:0;background:transparent;border-radius:13px;padding:11px 13px;color:#39404c;font-size:14px}
.top .topLink:hover,.top .topLink:focus-visible{background:#f4f5f6}
.top .topLink--agenda{background:#f0f2f6;font-weight:700;color:#262e3b}
.top .navBtn{padding:10px 14px}
.top .navBtn.square{letter-spacing:0}
.top .navBtnText{font-size:13px;margin-left:3px}.loginGlyph{display:none}
.home{max-width:1150px;padding:0 24px;min-height:calc(100svh - 72px);min-height:calc(100dvh - 72px);display:flex;flex-direction:column}
.discovery{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(290px,.85fr);gap:18px;align-items:stretch;padding-top:17px}
.discoveryTabs{display:none}
.discovery .news,.discovery .agenda{background:white;border:1px solid var(--prtds-line);border-radius:20px;padding:18px 20px;margin:0;min-width:0;transform:none;box-shadow:none}
.sectionHeading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px}
.sectionHeading h2{font-size:19px;font-weight:740;letter-spacing:-.45px;margin:0}
.sectionHeading .sectionAction{border:0;background:none;padding:8px 0;color:#565f6d;font-size:12px;white-space:nowrap}
.sectionHeading .sectionAction:hover{text-decoration:underline}
.previewTag{font-size:11px;color:#8b919b;font-weight:450}
.discovery .newsHead{align-items:center}
.discovery .newsHead .tabs{padding:0 0 6px}
.discovery .headline{font-size:13px;line-height:1.37;padding:8px 3px;min-height:38px;gap:9px}
.discovery .sourceLogo{width:22px;height:22px;min-width:22px}
.discovery .newsLinks{margin:8px 3px 0}
.discovery .newsLinks .textBtn{font-size:13px;min-height:44px}
.agenda{display:flex;flex-direction:column}
.agendaIntro{font-size:13px;color:var(--prtds-muted);margin:0 0 13px;line-height:1.4}
.agendaFilters{display:flex;align-items:center;gap:6px;overflow-x:auto;scrollbar-width:none;padding:2px 0 9px}
.agendaFilters::-webkit-scrollbar{display:none}
.agendaFilter{min-height:39px;flex-shrink:0;padding:7px 13px;border:1px solid #eceef0;border-radius:999px;background:#fff;color:#566071;font-size:12px}
.agendaFilter[aria-pressed="true"]{background:#edf0f5;border-color:#edf0f5;color:#222a38;font-weight:700}
.agendaEmpty{flex:1;display:flex;flex-direction:column;justify-content:center;gap:7px;min-height:164px;padding:22px 16px;border:1px dashed #e1e5eb;border-radius:15px;background:#fafbfc}
.agendaEmptyIcon{font-size:22px;line-height:1}
.agendaEmpty strong{font-size:14px;font-weight:700;color:#323640}
.agendaEmpty p{margin:0;font-size:12px;line-height:1.55;color:#727b88}
.agendaSeeAll{align-self:flex-start;border:0;background:transparent;color:#4c5665;text-align:left;padding:14px 0 3px;font-weight:700;font-size:13px;min-height:44px}
.agendaSeeAll:hover{text-decoration:underline}
.searchZone{min-height:195px;padding:34px 0 34px;margin-top:auto;gap:12px;position:relative}
.searchZone .hero{font-size:clamp(24px,3.15vw,35px);letter-spacing:-1.1px;font-weight:600;text-align:center;line-height:1.15}
.searchZone .search{width:min(100%,850px);background:#f5f6f7}
.searchZone .search input{font-size:16px;min-height:44px}
.searchZone .miniNote{font-size:11px;color:#838b98;margin:0}
.searchZone .send{min-height:44px;min-width:44px}
.chat .bottomSearch{margin-bottom:max(16px,env(safe-area-inset-bottom))}
.agendaGuide{max-width:720px;margin:16px 0;padding:22px;border:1px solid var(--prtds-line);border-radius:18px;background:#fbfbfc}
.agendaGuide h2{font-size:19px}.agendaGuide p{font-size:14px;line-height:1.65;color:#69717d}
.agendaGuide button{min-height:44px;border:0;border-radius:12px;padding:10px 16px;background:#eef0f4;color:#303844}
@media (min-width:1450px){.news{transform:none}}
@media (max-width:1050px){
 .top{grid-template-columns:auto 1fr;grid-template-rows:auto auto}
 .top .siteBrand{grid-row:1;grid-column:1}
 .top .navTop{grid-row:1;grid-column:2;justify-self:end}
 .top .topGroup{grid-row:2;grid-column:1/-1;justify-content:flex-start}
 .home{min-height:calc(100svh - 120px);min-height:calc(100dvh - 120px)}
}
@media (max-width:699px){
 .top{padding:8px 14px 7px;column-gap:10px;row-gap:3px}
 .top .siteBrand{font-size:20px;padding:8px 1px}
 .top .navTop{gap:4px}
 .top .topLink{min-height:44px;padding:9px 10px;font-size:13px}
 .top .topLink--news{display:none}
 .top .navBtn{min-height:44px;padding:8px 10px;font-size:13px}
 .top .navBtnText{display:none}
 .top .topGroup{justify-content:flex-start;gap:6px}
 .top .chip{min-height:39px;padding:7px 10px;font-size:12px}
 .home{padding:0 13px;min-height:calc(100svh - 104px);min-height:calc(100dvh - 104px)}
 .discovery{display:block;padding-top:10px}
 .discoveryTabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:#f2f3f5;border-radius:13px;padding:4px;margin-bottom:9px}
 .discoveryTab{border:0;background:transparent;border-radius:10px;padding:10px;color:#66707c;font-size:14px;font-weight:600;min-height:44px}
 .discoveryTab[aria-selected="true"]{background:#fff;color:#242a33;box-shadow:0 1px 4px #0000000d}
 .discovery[data-active="news"] #agendaBlock,.discovery[data-active="agenda"] #newsBlock{display:none}
 .discovery .news,.discovery .agenda{padding:14px 14px 12px;border-radius:17px}
 .sectionHeading{margin-bottom:6px}
 .sectionHeading h2{font-size:17px}
 .discovery #topics{padding-bottom:3px;min-width:0}
 .discovery .tab{font-size:12px;padding:8px 10px;min-height:44px}
  .discovery .headline{font-size:13px;line-height:1.35;min-height:44px;padding:8px 3px}
 .discovery .news:not(.is-expanded) .headline:nth-child(n+4){display:none}
 .discovery .newsLinks{margin-top:7px}
 .agendaEmpty{min-height:140px;padding:16px;gap:6px}
 .agendaFilters{padding-bottom:8px}
 .searchZone{position:sticky;z-index:5;bottom:0;min-height:0;gap:11px;padding:18px 0 calc(12px + env(safe-area-inset-bottom));background:linear-gradient(to bottom,rgba(255,255,255,.94),#fff 20%,#fff)}
 .searchZone .hero{font-size:clamp(24px,6.1vw,29px);font-weight:610}
 .searchZone .search{border-radius:18px;padding:5px 5px 5px 15px;box-shadow:0 1px 10px #1c25300b}
 .searchZone .search input{padding:11px 2px;min-height:46px}
 .searchZone .miniNote{font-size:10px}
 .sidebar{position:fixed;left:0;top:0;bottom:0;z-index:35;max-width:min(280px,84vw);box-shadow:8px 0 26px #0000001a}
 .chat .messages{min-height:52svh}
 .chat .bottomSearch{position:sticky;bottom:0;background:#fff;padding:10px;width:min(820px,calc(100% - 20px));margin-bottom:0}
 .overlay{top:60px;max-height:calc(100dvh - 75px)}
}
@media(max-width:360px){
 .top .topLink--agenda{padding:9px 8px}
 .top .navBtn{padding:8px} .top{padding-left:10px;padding-right:10px;column-gap:6px}
 .top .siteBrand{font-size:19px}
 .discovery .news,.discovery .agenda{padding:12px}
 .searchZone{padding-top:14px}
}
@media(prefers-reduced-motion:reduce){#topics,.topGroup{scroll-behavior:auto!important}}

/* 20 Oct 2026 · Adaptive tablet and foldable postures.
   Width is measured in CSS pixels, never assumed from user-agent model. */

/* Folded (outer display): very narrow address/weather chips scroll in their
   own lane; primary app links remain on screen. */
@media (max-width:359px){
 .top{grid-template-columns:auto minmax(0,1fr)}
 .top .navTop{gap:3px;min-width:0}
 .top .topLink--agenda{padding-inline:7px}
 .top .navBtn{padding-inline:7px;min-width:40px}
 .top .loginLabel{display:none}
 .top .loginGlyph{display:inline}
 .searchZone .hero{font-size:23px}
 .searchZone .search{min-width:0}
}

/* Opened foldables (~700–950 CSS px) and portrait tablets:
   two legible cards with a full-width chat, rather than phone tabs.
   This works even when browsers do not expose a real fold/hinge. */
@media (min-width:700px) and (max-width:949px){
 .home{padding-inline:clamp(14px,2.4vw,22px)}
 .discovery{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:12px;padding-top:12px}
 .discovery .news,.discovery .agenda{padding:14px;border-radius:16px}
 .sectionHeading h2{font-size:17px}
 .discovery .headline{font-size:12px;line-height:1.33;min-height:44px}
 .discovery .tab{font-size:12px;padding:9px 8px;min-height:42px}
 .discovery .newsHead{gap:2px}
 .discovery .sourcesButton{padding:7px}
 .agendaIntro{font-size:12px;margin-bottom:8px}
 .agendaEmpty{min-height:122px;padding:13px}
 .agendaFilters{gap:4px}
 .agendaFilter{min-height:44px;padding-inline:10px}
 .searchZone{padding:24px 0 28px}
 .searchZone .hero{font-size:28px}
 .chat .sidebar{position:relative;top:auto;bottom:auto;box-shadow:none}
 .chatMain{min-width:0}
}
@media (min-width:950px) and (max-width:1199px){
 .home{padding-inline:26px}
 .discovery{gap:16px}
 .discovery .news,.discovery .agenda{padding:17px}
}

/* Short landscape tablet/Fold: keep chat accessible with scroll confined to
   discovery instead of forcing its composer below the physical screen. */
@media (min-width:700px) and (max-height:660px){
 .home{height:calc(100dvh - 120px);min-height:0;overflow:hidden}
 .discovery{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:6px}
 .discovery .agenda,.discovery .news{align-self:start}
 .searchZone{position:relative;flex:0 0 auto;margin:0;min-height:0;padding:10px 0 14px;gap:7px}
 .searchZone .hero{font-size:23px}
 .searchZone .search{padding-block:5px}
 .searchZone .miniNote{font-size:10px}
}
@media (min-width:1051px) and (max-height:660px){
 .home{height:calc(100dvh - 72px)}
}
/* Very short narrow screens: never shrink the input below a comfortable
   44px target; let content scroll instead of clipping the page. */
@media (max-width:699px) and (max-height:540px){
 .home{min-height:calc(100dvh - 104px)}
 .searchZone{padding-top:8px;gap:6px}
 .searchZone .hero{font-size:21px}
 .discovery .news:not(.is-expanded) .headline:nth-child(n+3){display:none}
}
/* Hinged devices with TWO side-by-side viewport segments.
   Browser support is still experimental; the width-based design above is
   always the fallback on unsupported browsers and continuous fold screens. */
@media (horizontal-viewport-segments:2){
 .top{
   padding-inline:0;
   grid-template-columns:env(viewport-segment-width 0 0) env(viewport-segment-width 1 0);
   column-gap:calc(env(viewport-segment-left 1 0) - env(viewport-segment-right 0 0));
 }
 .top .siteBrand{margin-left:14px;justify-self:start}
 .top .navTop{grid-column:2;grid-row:1;min-width:0;overflow-x:auto;justify-self:stretch;justify-content:flex-end;padding-right:12px}
 .top .topGroup{grid-column:1;grid-row:2;justify-self:stretch;max-width:env(viewport-segment-width 0 0);padding-left:12px}
 .home{
   max-width:none;width:100%;min-height:calc(100dvh - 120px);
   height:calc(100dvh - 120px);margin:0;padding:0;overflow:hidden;
   display:grid;
   grid-template-columns:env(viewport-segment-width 0 0) env(viewport-segment-width 1 0);
   column-gap:calc(env(viewport-segment-left 1 0) - env(viewport-segment-right 0 0));
   grid-template-rows:minmax(0,1fr);
 }
 .discovery{grid-column:1;grid-row:1;display:block;overflow-y:auto;min-width:0;min-height:0;padding:8px 12px}
 .discoveryTabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;background:#f2f3f5;border-radius:13px;margin-bottom:9px}
 .discoveryTab{min-height:44px;border:0;background:transparent;border-radius:10px;font-weight:650}
 .discoveryTab[aria-selected="true"]{background:#fff;box-shadow:0 1px 4px #0000000d}
 .discovery[data-active="news"] #agendaBlock,.discovery[data-active="agenda"] #newsBlock{display:none}
 .discovery .news,.discovery .agenda{padding:12px;border-radius:15px}
 .searchZone{grid-column:2;grid-row:1;align-self:end;justify-self:stretch;min-height:0;margin:0;padding:16px 12px max(18px,env(safe-area-inset-bottom));position:relative}
 .searchZone .hero{font-size:clamp(20px,3vw,29px)}
 .searchZone .search{min-width:0}
 .chat .sidebar{position:relative;top:auto;bottom:auto;box-shadow:none;flex:0 0 env(viewport-segment-width 0 0);width:env(viewport-segment-width 0 0);max-width:none}
 .chat .chatMain{flex:0 0 env(viewport-segment-width 1 0);width:env(viewport-segment-width 1 0);margin-left:calc(env(viewport-segment-left 1 0) - env(viewport-segment-right 0 0))}
 .chat .bottomSearch{width:calc(100% - 20px)}
}
/* Top/bottom hinged posture: allow each half to contain content instead of
   placing the composer over a horizontal hinge. */
@media (vertical-viewport-segments:2){
 .home{
   height:calc(100dvh - 120px);min-height:0;max-width:none;overflow:hidden;
   display:grid;grid-template-rows:minmax(0,calc(env(viewport-segment-height 0 0) - 120px)) minmax(0,env(viewport-segment-height 0 1));
   row-gap:calc(env(viewport-segment-top 0 1) - env(viewport-segment-bottom 0 0));
 }
 .discovery{grid-row:1;overflow-y:auto;min-height:0;padding-bottom:10px}
 .searchZone{grid-row:2;align-self:end;position:relative;margin:0;padding:10px 0 max(14px,env(safe-area-inset-bottom));min-height:0}
 .searchZone .hero{font-size:clamp(20px,3.5vw,28px)}
}


/* Persistent, accessible entry points to legally required review information. */
.previewFooter{width:min(100%,1150px);margin:0 auto;padding:14px 22px max(16px,env(safe-area-inset-bottom));border-top:1px solid #f0f1f3;display:flex;align-items:center;justify-content:space-between;gap:8px 16px;flex-wrap:wrap;color:#747b85;font-size:12px}
.previewFooterLinks{display:flex;align-items:center;flex-wrap:wrap;gap:0 8px}
.previewFooterLinks a{display:inline-flex;align-items:center;min-height:44px;padding:8px 7px;color:#515866;text-decoration:none;border-radius:8px}
.previewFooterLinks a:hover{text-decoration:underline;background:#f5f6f7}
.previewFooter p{margin:0;line-height:1.5}
@media (max-width:699px){.previewFooter{padding-inline:13px;justify-content:center;text-align:center}.previewFooterLinks{justify-content:center}.previewFooter p{width:100%}}


/* 20 October 2026: unbranded, single-line utility/navigation header.
   City, weather, exchange, services, login are the ONLY top-row controls.
   The news/agenda "see all" links stay inside their respective content. */
.top{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:auto;
  align-items:center;
  min-height:65px;
}
.top .topGroup{
  grid-row:1;
  grid-column:1;
  min-width:0;
  max-width:100%;
  justify-content:flex-start;
  flex-wrap:nowrap;
  overflow-x:auto;
  overflow-y:hidden;
}
.top .navTop{
  grid-row:1;
  grid-column:2;
  justify-self:end;
  flex-wrap:nowrap;
  margin-left:0;
  min-width:max-content;
}
@media(max-width:699px){
 .top{padding:8px 9px;gap:0 5px}
 .top .topGroup{gap:4px}
 .top .navTop{gap:3px}
 .top .navBtnText{display:inline;font-size:12px;margin-left:3px}
 .top .loginLabel{display:inline}
 .top .loginGlyph{display:none}
 .top .chip{min-height:42px;padding:7px 8px;font-size:12px}
 .top .navBtn{min-height:42px;padding:8px 8px;font-size:12px}
 .home{min-height:calc(100svh - 65px);min-height:calc(100dvh - 65px)}
}
@media(max-width:440px){
 .top{padding-inline:7px;gap:0 3px}
 .top .topGroup{gap:3px}
 .top .navTop{gap:2px}
 .top .chip{font-size:11px;padding-inline:5px}
 .top .navBtn{font-size:11px;padding-inline:6px}
 .top .navBtnText{font-size:11px;margin-left:2px}
}
/* On very narrow displays keep the five controls on one line by letting
   ONLY the three utility chips scroll; Services and Entrar remain visible. */
@media(max-width:360px){
 .top .topGroup{overscroll-behavior-x:contain}
 .top .navBtnText{display:none}
 .top .navBtn{min-width:36px;padding-inline:5px}
}
@media(horizontal-viewport-segments:2){
 .top .topGroup{grid-column:1;grid-row:1;max-width:none;padding-left:12px}
 .top .navTop{grid-column:2;grid-row:1;justify-self:stretch;padding-right:12px}
}

/* Public source-validated home Agenda beta: text-only items, no placeholders. */
.discovery .agendaEmpty.agendaLive{display:flex;flex-direction:column;justify-content:flex-start;gap:0;min-height:125px;border:0;background:#fff;border-radius:0;padding:0;flex:1}
.agendaHomeItem{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 2px;border-bottom:1px solid #eff0f2;color:#282d36;text-decoration:none;min-height:60px}
.agendaHomeItem:last-child{border-bottom:0}
.agendaHomeItem:hover strong{text-decoration:underline}
.agendaHomeItem strong{font-size:13px;font-weight:550;line-height:1.4}
.agendaHomeItem span{font-size:11px;color:#818791;line-height:1.45}
.agendaLive .agendaIntro{margin:10px 0;line-height:1.65;color:#767e89}

/* Homepage Agenda compact event metadata: verified price, start time, venue.
   The same bottom action first expands the chosen day's list, then opens /agenda/. */
.agendaHomeFacts{display:flex;flex-wrap:wrap;column-gap:8px;row-gap:4px;max-width:100%}
.agendaHomeFacts>span{display:inline;min-width:0;font-size:11px;color:#737b86;line-height:1.5;overflow-wrap:anywhere}
.agendaHomeFacts>span+span::before{content:"·";padding-right:8px;color:#a0a4aa}
.agendaHomeItem{width:100%}
#agendaMoreOrAll{min-height:44px}
#agendaMoreOrAll[hidden]{display:none!important}
@media(max-width:699px){
 .agendaHomeItem{padding-block:12px}
 .agendaHomeFacts{gap:3px 7px}
 .agendaHomeFacts>span{font-size:11px}
 .agendaHomeFacts>span+span::before{padding-right:7px}
}

/* Indicative daily USD/PYG quote, real same-origin source and short converter. */
.fxIntro{margin:2px 0 14px;color:#7a818d;font-size:12px}
.fxQuote{display:flex;flex-direction:column;gap:12px;padding-bottom:3px}
.fxLine{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid #e9ebef;color:#4c5563;font-size:14px}
.fxLine strong{font-size:19px;color:#252b35;white-space:nowrap}
.fxUpdated{margin:0;font-size:12px;color:#777e89}
.fxDisclaimer{margin:0;font-size:12px;line-height:1.55;color:#7a828e}
.fxCalculator{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:3px}
.fxInputGroup{display:flex;flex-direction:column;gap:5px;min-width:0}
.fxInputGroup span{font-size:12px;color:#606975}
.fxInputGroup input{width:100%;min-width:0;border:1px solid #dfe3e9;border-radius:11px;padding:10px 9px;background:#f8f9fa;color:#303745;font-size:15px}
.fxInputGroup input:read-only{background:#edf1f6;color:#384150}
.fxCurrencyPicker{position:relative;display:flex;flex-direction:column;gap:5px}
.fxCurrencyLabel{color:#606975;font-size:12px}
.fxCurrencyChoice{width:100%;min-height:42px;text-align:left;border:1px solid #dfe3e9;border-radius:11px;padding:9px 11px;background:#f8f9fa;color:#303745;font-size:14px;cursor:pointer}
.fxCurrencyPopover{position:absolute;z-index:100;top:100%;left:0;right:0;max-width:100%;overflow:hidden;background:#fff;border:1px solid #dfe3e9;border-radius:11px;box-shadow:0 10px 22px #1c27351f}
.fxCurrencyPopover[hidden]{display:none}
.fxCurrencySearch{display:block;width:calc(100% - 12px);min-height:42px;margin:6px;padding:9px 11px;background:#f8f9fa;border:1px solid #dfe3e9;border-radius:8px;color:#202937;font-size:16px}
.fxCurrencySearch:focus-visible{outline:2px solid #7d9fcb;outline-offset:1px}
.fxCurrencyMenu{max-height:184px;overflow-y:auto;overscroll-behavior:contain;border-top:1px solid #eef0f3;padding:3px;scrollbar-width:thin}
.fxCurrencyEmpty{padding:12px;font-size:13px;color:#737b86;margin:0}
.fxCurrencyEmpty[hidden]{display:none}
.fxCurrencyOption{display:block;width:100%;min-height:44px;text-align:left;white-space:normal;padding:9px 11px;border:0;border-radius:7px;background:#fff;color:#303745;font-size:13px;cursor:pointer}
.fxCurrencyOption[hidden]{display:none}
.fxCurrencyOption:hover,.fxCurrencyOption:focus-visible{background:#f1f4f9;outline:2px solid #c6d1e0}
.fxInputGroup input:focus-visible,.fxCurrencyChoice:focus-visible{outline:2px solid #7d9fcb;outline-offset:1px}
.fxAttribution{display:inline-block;width:fit-content;color:#5c687c;font-size:11px;text-decoration:underline;text-underline-offset:2px;padding:4px 0}
.fxUnavailable{font-size:13px;line-height:1.5;color:#59626d}
.fxRetry{border:1px solid #dce0e7;border-radius:12px;background:#f4f5f7;min-height:42px;padding:9px 15px;color:#303642}
@media(max-width:430px){.fxCalculator{gap:7px}.fxInputGroup input{font-size:14px;padding:10px 7px}}


/* Worldwide city autocomplete: compact accessible scrollable popover. */
#cityPicker{display:flex;flex-direction:column;gap:9px;max-width:100%}
.citySelected{margin:2px 0;color:#68717f;font-size:12px}
.cityAutoButton{display:block;text-align:left;width:100%;border:1px solid #dfe4ec;background:#f6f7f9;color:#374257;border-radius:12px;min-height:43px;padding:9px 12px;font-size:13px}
.cityAutoButton:disabled{opacity:.65}
.citySearchInput{width:100%;min-height:46px;border:1px solid #d8dee6;border-radius:12px;background:#fff;color:#202937;padding:10px 12px;font-size:16px}
.citySuggestions{display:flex;flex-direction:column;gap:2px;max-height:260px;overflow-y:auto;overscroll-behavior:contain}
.citySuggestion{width:100%;display:flex;flex-direction:column;gap:3px;text-align:left;border:0;border-bottom:1px solid #eef0f3;background:#fff;color:#252e3b;border-radius:7px;min-height:45px;padding:8px}
.citySuggestion:focus-visible,.citySuggestion:hover{background:#f1f4f8}
.citySuggestion strong{font-size:13px;font-weight:650}
.citySuggestion span,.cityHint,.cityAttribution{color:#77808d;font-size:11px;line-height:1.45}
.cityHint{margin:4px 0}
.cityAttribution{width:fit-content;text-decoration:underline;text-underline-offset:2px}

/* MET Norway city-centre forecast; no graphic illustrations or site logo. */
.weatherCard{display:flex;flex-direction:column;gap:10px}
.weatherCity{font-size:13px;font-weight:650;color:#313b48}
.weatherCurrent{display:flex;align-items:center;gap:13px}
.weatherIcon{font-size:24px;line-height:1}
.weatherTemperature{font-size:35px;letter-spacing:-1px;color:#232b38}
.weatherCondition{font-size:13px;color:#636d7a}
.weatherDetails{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.weatherDetail{display:flex;flex-direction:column;gap:3px;background:#f6f7f9;border-radius:11px;padding:10px}
.weatherDetail span{font-size:11px;color:#747d89}
.weatherDetail strong{font-size:14px;font-weight:650;color:#293340}
.weatherDisclaimer{font-size:11px;line-height:1.55;color:#757f8b}
.weatherSource{font-size:11px;color:#5b687b;text-decoration:underline;text-underline-offset:2px;width:fit-content}
.weatherLoading,.weatherUnavailable{font-size:13px;line-height:1.5;color:#65717e}
@media(max-width:425px){
 .weatherDetails{gap:6px}
 .weatherDetail{padding:8px}
 .citySuggestions{max-height:220px}
}


/* Weather + USD/PYG live compact facts in unbranded one-line header. */
.top .weatherHeaderChip,.top .fxHeaderChip{
 display:inline-flex;align-items:center;justify-content:center;
 gap:6px;font-variant-numeric:tabular-nums;flex-shrink:0;
}
.weatherHeaderIcon{font-size:18px;line-height:1;min-width:19px;text-align:center}
.weatherHeaderTemp,.fxHeaderValue{font-size:14px;font-weight:650;line-height:1.2;letter-spacing:-.3px}
.fxHeaderSymbol{font-size:16px;font-weight:650;line-height:1.1}
@media(max-width:699px){
 .top .weatherHeaderChip,.top .fxHeaderChip{gap:4px}
 .weatherHeaderIcon{font-size:17px;min-width:17px}
 .weatherHeaderTemp,.fxHeaderValue{font-size:12px;white-space:nowrap}
 .fxHeaderSymbol{font-size:14px}
}
@media(max-width:440px){
 .top .weatherHeaderChip,.top .fxHeaderChip{padding-inline:6px}
 .top .weatherHeaderChip,.top .fxHeaderChip{gap:3px}
 .weatherHeaderTemp,.fxHeaderValue{font-size:12px}
}

/* News: compact section counts and horizontally browsable full archive taxonomy. */
#portalTabs{display:flex;gap:5px;align-items:center;max-width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;overscroll-behavior-x:contain;padding-bottom:9px;white-space:nowrap}
#portalTabs .tab{flex:none;min-height:42px}
.newsTopicCount{font-size:10px;font-weight:600;color:#7b8490;margin-left:3px;font-variant-numeric:tabular-nums}
#portalTabs .tab.sel .newsTopicCount{color:#454f60}

/* Weather API credit must be visible beside the Google-backed sky reading. */
.weatherGoogleAttribution{font-family:Roboto,Arial,sans-serif;font-size:12px;font-weight:400;line-height:1.2;white-space:nowrap;color:#5e5e5e}
.weatherGoogleAttribution[hidden]{display:none!important}
.weatherGoogleBrand,.weatherGoogleCredit{font-family:Roboto,Arial,sans-serif;font-size:12px;font-weight:400;line-height:1.4;color:#5e5e5e}
.weatherGoogleBrand{margin-top:7px;white-space:nowrap}
.weatherGoogleCredit{margin:4px 0 0}
