/* Shared layout owns shell geometry and type roles. Load after surface styles
   so each screen uses the same header, gutters and composer. Specific content
   (players, commercial modules, conversation states) keeps its own layout. */
.stage {
  min-height: var(--io-viewport-height, 100dvh);
  padding: 0;
  background: var(--io-stage-canvas);
}
.phone {
  width: min(100%, var(--io-phone-max));
  height: var(--io-viewport-height, 100dvh);
  min-height: 0;
  border-radius: 0;
  box-shadow: none;
}

.product-ready .head,
.product-ready .area-view .product-head,
.phone .head.screen-header {
  min-height: var(--io-header-height);
  padding: max(6px, env(safe-area-inset-top)) var(--io-page-gutter) 6px;
}
.product-ready .head .wordmark { width: var(--io-wordmark-width); height: auto; }
.product-ready .head .brand { gap: 10px; }
.product-ready .head .brand h1 {
  font-size: var(--io-type-page);
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: -.02em;
  padding-left: 10px;
  margin-left: 0;
}
/* The smaller visible profile ring sits inside a full 44 px target. */
.product-ready .product-head .account-icon {
  position: relative;
  display: grid;
  place-items: center;
  width: var(--io-tap);
  height: var(--io-tap);
  border: 0;
  background: transparent;
  color: var(--io-nav-active);
}
.product-ready .product-head .account-icon::before {
  content: '';
  position: absolute;
  width: 28px;
  height: 28px;
  border: 1px solid currentColor;
  border-radius: 50%;
}
.product-ready .product-head .account-icon .design-icon,
.product-ready .product-head .account-icon svg { width: 18px; height: 18px; }

/* Approved navigation: brand and Profile above a quiet contextual back link. */
.phone .head.screen-header { --io-type-page: var(--io-type-md); border: 0; box-shadow: none; }
.phone .head.screen-header .wordmark { width: var(--io-wordmark-width); height: auto; }
.phone .head.screen-header .brand { min-height: var(--io-tap); }
.phone .head.screen-header:has(+ .screen-back-row) {
  min-height: var(--io-tap);
  padding-bottom: 0;
}
.product-ready .screen-header .brand { flex: 1; min-width: 0; }
.product-ready .screen-header .brand :is(h1, .screen-title) {
  min-width: 0;
  margin: 0;
  padding-left: 10px;
  border-left: 1px solid var(--io-border-control);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--io-text);
  font-size: var(--io-type-page);
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: -.02em;
}
.product-ready .head .screen-profile {
  display: grid;
  place-items: center;
  flex: none;
  width: var(--io-tap);
  min-width: 44px;
  height: var(--io-tap);
  min-height: 44px;
  padding: 0;
  border: 0;
  border-radius: var(--io-radius-sm);
  background: transparent;
  color: var(--io-text-secondary);
  cursor: pointer;
  touch-action: manipulation;
}
.product-ready .head .screen-profile .design-icon { width: 22px; height: 22px; }
.screen-back-row { display: flex; flex: none; padding: 0 var(--io-page-gutter); }
.screen-back-row .screen-back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 100%;
  min-width: 44px;
  min-height: 44px;
  padding: 0;
  border: 0;
  border-radius: var(--io-radius-sm);
  background: transparent;
  color: var(--io-text-secondary);
  font: inherit;
  font-size: 11px;
  font-weight: 400;
  line-height: 1.4;
  text-align: left;
  cursor: pointer;
  touch-action: manipulation;
}
.screen-back-row .screen-back svg { flex: none; width: 14px; height: 14px; transform: rotate(180deg); }
.screen-back-row .screen-back:hover, .product-ready .head .screen-profile:hover { color: var(--io-text); }

.product-ready .area-view .area-scroll {
  padding: 4px var(--io-page-gutter) 16px;
  scroll-padding-bottom: 16px;
}
.product-ready .area-view .screen-back-row + .area-scroll { padding-top: 0; }
.product-ready .screen-back-row + #scroll { padding: 0 var(--io-page-gutter) 18px; }
.product-ready .screen-back-row + #scroll .conversation > :first-child { margin-top: 0; }
.phone:not(.product-ready) .screen-back-row + #scroll { padding: 0 var(--io-page-gutter) 18px; }
.phone:not(.product-ready) .screen-back-row + #scroll .conversation > :first-child { margin-top: 0; }
.product-ready .main-home { padding-inline: var(--io-page-gutter); gap: 10px; }
.product-ready .area-view .area-dock {
  padding: 4px var(--io-page-gutter) 6px;
}
.product-ready .main-composer {
  min-height: var(--io-composer-height);
  padding: 3px 3px 3px 14px;
  gap: 6px;
}
.product-ready .main-composer input { font-size: max(16px, var(--io-type-md)); }
.product-ready .main-composer .mic-button {
  min-height: var(--io-tap);
  height: var(--io-tap);
  font-size: var(--io-type-control);
  font-weight: var(--io-weight-control);
  padding-inline: 10px;
}
.product-ready .main-composer .send {
  width: var(--io-tap);
  height: var(--io-tap);
  flex: none;
}
.product-ready .main-composer .send .design-icon { width: 22px; height: 22px; }
.product-ready .area-view .area-legal {
  margin-top: 4px !important;
  font-size: var(--io-type-xs);
  line-height: 1.3;
  text-wrap: balance;
}
.area-nav {
  min-height: var(--io-tabbar-height);
  padding: 4px 6px max(4px, env(safe-area-inset-bottom));
}
.area-nav a { min-height: var(--io-tap); gap: 3px; font-size: var(--io-type-xs); line-height: 1.2; }
.area-nav .design-icon { width: 20px; height: 20px; }
.nav-live-dot, .nav-activity { top: 2px; left: calc(50% + 12px); }

.product-ready .product-section:not([data-editorial-root]) { margin-top: var(--io-section-gap); gap: var(--io-content-gap); }
.product-ready .product-section > h2,
.product-ready .product-section-head > h2,
.product-ready .home-discovery h2 {
  font-size: var(--io-type-section);
  font-weight: var(--io-weight-heading);
  letter-spacing: -.02em;
  line-height: 1.3;
}
.product-ready .product-intro p { font-size: var(--io-type-intro); line-height: 1.45; }
.product-ready .para-ti-surface .product-character {
  /* This reused asset includes transparent padding. Keep the greeting row
     compact while giving the visible character the reference's prominence. */
  width: 104px;
  height: 88px;
  margin: -8px;
}
.product-ready .product-button { font-weight: var(--io-weight-control); }
/* Home density: the 802 px mockup is compared at 430 CSS px, not treated
   as an 802 CSS px screen. Keep the welcome prominent; editorial text and
   pills use their smaller reference roles. No page zoom or transform. */
#app:has(> .main-home) {
  --io-home-gutter: clamp(22px, 6.8vw, 30px);
  --io-home-body: 10px;
  --io-home-section: 11px;
  --io-home-title: 14px;
  --io-home-pill: 28px;
}
.product-ready #app:has(> .main-home) .head .account-pill {
  min-height: 26px;
  padding: 4px 11px;
  font-size: var(--io-home-body);
  font-weight: 400;
}
.product-ready .main-home { padding: 0 var(--io-home-gutter) 12px; gap: 7px; }
.product-ready .home-welcome { gap: 3px; }
.product-ready .main-greeting { font-size: 19px; line-height: 1.2; font-weight: 600; letter-spacing: -.01em; }
.product-ready .main-question { font-size: 14px; line-height: 1.4; font-weight: 400; }
.product-ready .main-mascot { height: 100px; background-size: 120px; margin-bottom: 0; }
.product-ready #app:has(> .main-home) .main-composer {
  min-height: 42px;
  padding: 3px 3px 3px 14px;
  gap: 5px;
}
/* Keep entered text at 16 px to avoid automatic input zoom on iOS; the
   empty prompt has the smaller type of the reference. Pinch zoom is intact. */
.product-ready #app:has(> .main-home) .main-composer input { font-size: 16px; }
.product-ready #app:has(> .main-home) .main-composer input::placeholder { font-size: 12px; }
.product-ready #app:has(> .main-home) .main-composer .mic-button {
  min-height: 28px;
  height: 28px;
  padding-inline: 9px;
  font-size: 10.5px;
  font-weight: 500;
}
.product-ready #app:has(> .main-home) .mic-button .design-icon { width: 14px; height: 14px; }
.product-ready #app:has(> .main-home) .main-composer .send { width: 34px; height: 34px; }
.product-ready #app:has(> .main-home) .main-composer .send .design-icon { width: 19px; height: 19px; }
.product-ready .home-quick-replies { gap: 6px; }
.product-ready .home-quick-replies .product-button {
  min-height: var(--io-home-pill);
  padding: 4px 12px;
  font-size: var(--io-home-body);
  font-weight: 400;
}
.product-ready .main-home .product-section > h2 {
  font-size: var(--io-home-section);
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.35;
}
.product-ready .home-update { gap: 10px; padding-bottom: 7px; }
.product-ready [data-home-updates] { gap: 7px; }
.product-ready .home-update-context { gap: 3px; }
.product-ready .home-update-context .product-character { width: 64px; height: 64px; margin-block: -7px -5px; }
.product-ready .home-update[data-home-area="fazer"] .product-character { width: 72px; height: 72px; margin-block: -8px; }
.product-ready .home-update-context p { font-size: var(--io-home-body); line-height: 1.45; }
.product-ready .home-live-card { min-height: 104px; border-radius: 10px; }
.product-ready .home-live-card .editorial-copy { gap: 4px; padding: 9px; }
.product-ready .home-live-card h3 { font-size: var(--io-home-title); font-weight: 600; line-height: 1.2; letter-spacing: -.01em; -webkit-line-clamp: 2; }
.product-ready .home-live-card .product-label { font-size: 8px; padding: 2px 5px; line-height: 1.25; letter-spacing: 0; }
.product-ready .home-live-card .product-meta { font-size: var(--io-home-body); line-height: 1.35; }
.product-ready .home-card-actions { gap: 6px; margin-top: 3px; flex-wrap: nowrap; }
.product-ready .home-update .product-button {
  min-height: 24px;
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 500;
  line-height: 1.2;
}
.product-ready .home-card-actions .design-icon { width: 13px; height: 13px; }
.product-ready .home-card-actions .product-button:only-child { padding-inline: 12px; }
.product-ready .home-plan-progress { height: 4px; }
.product-ready .home-dock { padding: 4px var(--io-home-gutter) 5px; }
.product-ready .home-dock .composer-avatar { display: none; }
.product-ready .home-dock .mic-button span:not(.design-icon) { display: inline; }
.product-ready .home-dock .main-composer .mic-button { width: auto; }
.product-ready .home-dock .main-composer .send { color: var(--io-white); }
.product-ready .home-discovery.product-section { margin-top: 6px; gap: 6px; }
.product-ready #home-resume .product-section { margin-top: 0; padding-top: 10px; gap: 6px; }
.product-ready #home-resume h2 { margin: 0; }
.product-ready #home-resume .product-resume { padding: 5px; gap: 10px; border-radius: 10px; }
.product-ready #home-resume .product-resume .character-art { width: 44px; height: 42px; }
.product-ready #home-resume .product-resume h3 { font-size: 11px; font-weight: 500; }
.product-ready #home-resume .product-resume p { margin-top: 3px; font-size: 10px; line-height: 1.35; }
.product-ready #home-resume .product-button { min-height: 24px; padding: 4px 14px; font-size: 10px; font-weight: 400; }
.product-ready .home-skip { min-height: 24px; margin: -3px 0 0; font-size: var(--io-home-body); }
.product-ready .home-meta { padding-top: 8px; }
.product-ready .home-meta .usage-chip,
.product-ready .home-meta .area-legal,
.product-ready .main-home .guest-note,
.product-ready .main-home .link-button { font-size: var(--io-home-body); line-height: 1.45; }
.product-ready .main-home .link-button { min-height: 28px; }
.product-ready .area-nav { min-height: 52px; padding-block: 4px max(4px, env(safe-area-inset-bottom)); }
.product-ready .area-nav a { min-height: 40px; font-size: 9px; gap: 3px; }
.product-ready .area-nav .design-icon { width: 16px; height: 16px; }

/* Page-specific headings consume the common hierarchy rather than inventing
   another size for the same role. Hero and conversational headings stay large. */
.para-ti-surface h2,
.live-surface h2,
.sports-surface .sports-section-head h2,
.library-surface .history-group h2 {
  font-size: var(--io-type-section);
  font-weight: var(--io-weight-heading);
}
.library-surface .library-title { font-size: var(--io-type-2xl); font-weight: 600; }
.sports-dashboard-intro p { font-size: var(--io-type-intro); line-height: 1.45; }
.product-ready .mockup-surface .product-section:not([data-editorial-root]) { margin-top: var(--io-section-gap); gap: var(--io-content-gap); }
.product-ready .mockup-surface .task-card { min-height: 112px; }
.product-ready .mockup-surface .task-card strong { font-weight: 600; }
.product-ready .mockup-surface .profile-row strong { font-size: var(--io-type-sm); }

/* A narrow phone remains full width, including the 431–600 px range that
   previously fell back to a framed desktop preview. No global zoom/scaling. */
@media (max-width: 600px) { .phone { width: 100%; } }
@media (max-width: 390px) {
  .product-ready .main-composer .mic-button { padding-inline: 8px; }
}
@media (max-height: 560px) {
  .product-ready .head,
  .product-ready .area-view .product-head { padding-block: 2px; min-height: 48px; }
  .product-ready .area-view .area-dock { padding-block: 3px; }
}

/* Fazer: proportions from 04-FAZER/01-fazer-conversa-e-acoes. */
.product-ready #area-fazer .fazer-highlight{gap:10px;padding:10px 8px;border-radius:16px}
.product-ready #area-fazer .fazer-cover{height:135px;min-height:0;max-height:135px;align-self:start}
.product-ready #area-fazer .fazer-plan-copy h2{font-size:17px;letter-spacing:-.025em}
.product-ready #area-fazer .fazer-plan-copy .product-label{font-size:10px}
.product-ready #area-fazer .fazer-progress-label{font-size:11px}
.product-ready #area-fazer .plan-checklist label{min-height:24px;font-size:11px;gap:8px}
.product-ready #area-fazer .plan-checklist input{width:13px;height:13px;min-width:13px}
.product-ready #area-fazer .fazer-plan-actions .product-button{min-height:30px;padding:5px 8px;font-size:11px;border-radius:11px}
.product-ready #area-fazer .fazer-more{min-height:24px;font-size:10px}
.product-ready #area-fazer .task-card{min-height:83px;grid-template-columns:40px minmax(0,1fr);gap:8px;padding:8px 7px 18px;border-radius:14px}
.product-ready #area-fazer .task-card strong{font-size:12px;line-height:1.2;letter-spacing:-.025em}
.product-ready #area-fazer .task-copy{gap:6px}
.product-ready #area-fazer .task-copy>span{font-size:10px;line-height:1.4}
.product-ready #area-fazer .task-arrow{width:23px;height:18px;right:8px;bottom:6px}
.product-ready #area-fazer .task-arrow svg{width:13px;height:13px}
.product-ready #area-fazer .fazer-suggestion{min-height:38px;font-size:11px;padding:4px 8px}
.product-ready #area-fazer .fazer-suggestion .product-button{min-height:24px;font-size:10px;padding:3px 9px}
.product-ready #area-fazer .fazer-recent-row{min-height:34px;font-size:11px}
.product-ready #area-fazer .fazer-recent>.product-text-button{min-height:24px;font-size:10px}
.product-ready :is(#area-fazer,#area-televisoes,#area-tenis-corrida,#area-restaurantes,#area-receita-cesto) .main-composer{min-height:46px;padding:4px 6px 4px 16px}
.product-ready :is(#area-fazer,#area-televisoes,#area-tenis-corrida,#area-restaurantes,#area-receita-cesto) .main-composer input{font-size:16px}
.product-ready :is(#area-fazer,#area-televisoes,#area-tenis-corrida,#area-restaurantes,#area-receita-cesto) .main-composer input::placeholder{font-size:12px}
.product-ready :is(#area-fazer,#area-televisoes,#area-tenis-corrida,#area-restaurantes,#area-receita-cesto) .main-composer .mic-button{min-height:32px;height:32px;font-size:12px;padding-inline:12px}
.product-ready :is(#area-fazer,#area-televisoes,#area-tenis-corrida,#area-restaurantes,#area-receita-cesto) .main-composer .send{width:32px;height:32px;min-height:32px}
.product-ready :is(#area-fazer,#area-televisoes,#area-tenis-corrida,#area-restaurantes,#area-receita-cesto) .area-legal{font-size:9px}
@media(max-width:390px){
 .product-ready #area-fazer .task-card{grid-template-columns:30px minmax(0,1fr);gap:6px;min-height:88px}
 .product-ready #area-fazer .task-card strong{font-size:11px}
 .product-ready #area-fazer .fazer-plan-actions{margin-left:0}
}

/* Secondary screens: profile v2 and compact conversation/saved libraries. */
.product-ready .library-surface .library-title { margin-top: 4px; }
.product-ready #area-planos .plans-workspace { margin-top: 0; }
.product-ready #area-perfil .profile-continuation{min-height:122px}
.product-ready #area-perfil .profile-continuation>div{padding:10px 7px;gap:6px}
.product-ready #area-perfil .profile-continuation .product-button{min-height:28px;font-size:11px}
.product-ready #area-perfil .profile-row{min-height:53px;padding:7px 8px;gap:10px}
.product-ready #area-perfil .profile-row strong{font-size:14px}
.product-ready #area-perfil .profile-row small{font-size:11px}
.product-ready #area-perfil .profile-symbol{width:36px;height:36px}
.product-ready #area-perfil .profile-knowledge{gap:10px;padding:11px 10px}
.product-ready #area-perfil .profile-fact{font-size:10px;padding:8px 6px}
.product-ready #area-perfil .profile-knowledge>p{font-size:11px}
.product-ready #area-perfil .profile-knowledge>.product-button{min-height:28px;font-size:11px}
.product-ready #area-perfil .profile-knowledge>.product-text-button{min-height:28px;font-size:10px}
.product-ready #area-conversas .history-open{min-height:66px;padding:10px 0;gap:8px}
.product-ready #area-conversas .history-open strong{font-size:13px;white-space:normal}
.product-ready #area-conversas .history-open small{font-size:11px;white-space:normal}
.product-ready #area-conversas .history-open time{font-size:10px;width:36px}
.product-ready #area-conversas .history-row>.library-more{width:30px;padding:5px}
.product-ready #area-conversas .history-group{margin-top:18px}
.product-ready #area-conversas .history-group h2{font-size:14px;margin-bottom:8px}
.product-ready #area-conversas .history-search input{min-height:40px;padding:8px 0;font-size:16px}
.product-ready #area-conversas .history-search input::placeholder{font-size:12px}
.product-ready #area-conversas .history-new{min-height:40px;font-size:11px}
.product-ready #area-guardados .saved-filters button{min-height:28px;min-width:60px;padding:5px 10px;font-size:11px}
.product-ready #area-guardados .saved-visual-card{min-height:188px}
.product-ready #area-guardados .saved-card-action{min-height:28px;font-size:11px;padding:4px 6px}
.product-ready #area-guardados .saved-card-copy{gap:8px;padding:10px 9px}
.product-ready #area-guardados .saved-collection{min-height:52px}
.product-ready #area-guardados .collection-covers{min-height:52px}
.product-ready #area-guardados .collection-open strong{font-size:12px}
.product-ready #area-guardados .collection-open small{font-size:10px}
.product-ready :is(#area-perfil,#area-conversas,#area-guardados) .main-composer{min-height:46px;padding:4px 6px 4px 16px}
.product-ready :is(#area-perfil,#area-conversas,#area-guardados) .main-composer input{font-size:16px}
.product-ready :is(#area-perfil,#area-conversas,#area-guardados) .main-composer input::placeholder{font-size:12px}
.product-ready :is(#area-perfil,#area-conversas,#area-guardados) .main-composer .mic-button{min-height:32px;height:32px;font-size:12px;padding-inline:12px}
.product-ready :is(#area-perfil,#area-conversas,#area-guardados) .main-composer .send{width:32px;height:32px;min-height:32px}
.product-ready :is(#area-perfil,#area-conversas,#area-guardados) .area-legal{font-size:9px}

/* Internal forms and dialogs use the same compact scale as the areas. */
.product-ready :is(#area-preferencias,#area-planos) .profile-page-intro h2{font-size:20px}
.product-ready :is(#area-preferencias,#area-planos) .profile-preferences{gap:16px}
.product-ready :is(#area-preferencias,#area-planos) .profile-preferences fieldset{padding:12px;gap:10px}
.product-ready :is(#area-preferencias,#area-planos) .profile-preferences legend{font-size:15px}
.product-ready :is(#area-preferencias,#area-planos) .profile-choice{min-height:34px;font-size:12px}
.product-ready :is(#area-preferencias,#area-planos) .profile-choice input{width:16px;height:16px}
.product-ready :is(#area-preferencias,#area-planos) .profile-field{font-size:12px;gap:6px}
.product-ready :is(#area-preferencias,#area-planos) .profile-field :is(input,select){min-height:40px;padding:8px 10px;font-size:16px}
.product-ready :is(#area-preferencias,#area-planos) .product-button{min-height:34px;font-size:12px;padding:7px 10px}
.product-ready #area-planos .user-plan{padding:12px;margin-block:12px}
.product-ready #area-planos .user-plan h3{font-size:18px}
.product-ready #area-planos .plan-copy{gap:6px}
.product-ready #area-planos .plan-checklist{gap:0}
.product-ready #area-planos .plan-checklist label{min-height:32px;font-size:12px}
.product-ready #area-planos .plan-checklist input{width:16px;height:16px;min-width:16px}
.product-ready #area-planos .user-plan .product-actions{margin-top:10px;gap:6px}
.product-ready :is(#area-preferencias,#area-planos) .main-composer{min-height:46px;padding:4px 6px 4px 16px}
.product-ready :is(#area-preferencias,#area-planos) .main-composer input{font-size:16px}
.product-ready :is(#area-preferencias,#area-planos) .main-composer input::placeholder{font-size:12px}
.product-ready :is(#area-preferencias,#area-planos) .main-composer .mic-button{min-height:32px;height:32px;font-size:12px;padding-inline:12px}
.product-ready :is(#area-preferencias,#area-planos) .main-composer .send{width:32px;height:32px;min-height:32px}
.product-ready :is(#area-preferencias,#area-planos) .area-legal{font-size:9px}
.product-ready :is(.chat-plan-dialog,.library-dialog){box-sizing:border-box;max-height:calc(100dvh - 32px);overflow:auto;padding:18px;border-radius:18px}
.product-ready :is(.chat-plan-dialog,.library-dialog) h2{font-size:20px;line-height:1.25}
.product-ready :is(.chat-plan-dialog,.library-dialog) p{font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.product-ready :is(.chat-plan-dialog,.library-dialog) .product-button{min-height:36px;font-size:12px;padding:8px 12px}
.product-ready .chat-plan-dialog .profile-field{font-size:12px;gap:6px}
.product-ready .chat-plan-dialog .profile-preferences{gap:12px}
.product-ready .chat-plan-dialog .product-actions{position:static;padding-block:8px 0;gap:8px}
.product-ready :is(.chat-plan-dialog,.library-dialog) input:not([type=checkbox]){font-size:16px;min-height:40px}
@media(max-width:390px){.product-ready #area-planos .user-plan .product-actions{display:grid;grid-template-columns:1fr 1fr}.product-ready #area-planos .user-plan .product-actions>.primary{grid-column:1/-1}}
.product-ready .account-data-view{font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.product-ready .account-data-view :is(p,.line,.message,.facts-empty){font-size:14px;line-height:1.5}
.product-ready .account-data-view .fact-reason{font-size:11px}
.product-ready .account-data-actions button{min-height:36px;font-size:12px}
.product-ready #area-perfil .profile-install{width:100%;margin-top:12px;border:1px solid var(--io-border);border-radius:14px;background:var(--io-surface-soft);text-align:left;color:var(--io-text)}
.product-ready #area-perfil .profile-install .profile-symbol{color:var(--io-turq-700)}
@media(display-mode:standalone){.profile-install{display:none!important}}
.library-close{position:absolute;right:10px;top:10px;display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:var(--io-text-secondary)}
.library-dialog h2{padding-right:28px}

.product-ready :is(#area-fazer,#area-televisoes,#area-tenis-corrida,#area-restaurantes,#area-receita-cesto) .area-status{font-size:11px;line-height:1.4;margin-block:4px}
.product-ready :is(#area-fazer,#area-televisoes,#area-tenis-corrida,#area-restaurantes,#area-receita-cesto) .main-composer .send .design-icon{width:19px;height:19px}

/* Laptop presentation: readable content and companion sources/programming. */
@media (min-width: 1024px) {
  .phone.product-ready{--io-phone-max:1280px;--io-page-gutter:32px;width:min(100%,1280px);height:100dvh}
  .product-ready .area-nav{justify-content:center;gap:24px}
  .product-ready .area-nav a{flex:0 1 160px;font-size:14px}
  .product-ready .area-view .area-dock{width:min(100%,900px);align-self:center}
  .product-ready .main-home{width:100%;max-width:1100px;margin-inline:auto;--io-home-title:18px;--io-home-body:15px;--io-home-section:18px;gap:18px;padding-top:20px}
  .product-ready .main-greeting{font-size:32px}.product-ready .main-question{font-size:20px}
  .product-ready .main-home .main-composer{max-width:800px;width:100%;align-self:center}
  .product-ready .main-home .home-quick-replies{font-size:15px}
  .product-ready #scroll .conversation{max-width:1120px;margin-inline:auto;font-size:17px;line-height:1.65}
  .product-ready #scroll .turn{grid-template-columns:44px minmax(0,1fr);gap:16px}
  .product-ready #scroll .assistant-copy{position:relative;min-width:0;font-size:17px;line-height:1.65}
  .product-ready #scroll .assistant-copy:has(>.sources){display:grid;grid-template-columns:minmax(0,1fr) 260px;column-gap:28px;align-items:start}
  .product-ready #scroll .assistant-copy>.answer-main{grid-column:1;grid-row:1}
  .product-ready #scroll .assistant-copy>button{grid-column:1;justify-self:start}
  .product-ready #scroll .sources{grid-column:2;grid-row:1 / span 4;min-width:0;margin:0;padding:16px;border-left:1px solid var(--io-border);font-size:14px;line-height:1.65;overflow-wrap:anywhere}
  .product-ready #followup-form{max-width:780px;margin-inline:auto;width:100%}
  .product-ready #area-fazer .fazer-discovery{max-width:1120px;margin-inline:auto}
  .product-ready #area-fazer .fazer-action-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
  .product-ready #area-fazer .fazer-action-copy strong{font-size:18px}
  .product-ready #area-fazer .fazer-disclosure{font-size:13px}
  .product-ready #area-fazer .fazer-welcome h2{font-size:32px}.product-ready #area-fazer .fazer-welcome p{font-size:17px}
  .product-ready #area-fazer .fazer-inspiration-card{max-width:700px}
  .product-ready #area-fazer .fazer-inspiration-copy h3{font-size:22px}
  .product-ready #area-fazer .fazer-utility-list button{font-size:16px;min-height:48px}
  .product-ready [data-live-root]:has(.live-schedule){display:grid;grid-template-columns:minmax(0,1.6fr) minmax(320px,1fr);column-gap:28px;align-items:start}
  .product-ready [data-live-root]>.live-intro{grid-column:1/-1}
  .product-ready [data-live-root]>.live-schedule{grid-column:2;grid-row:2/8;margin-top:0}
  .product-ready [data-live-root]>:not(.live-intro):not(.live-schedule){grid-column:1}
  .product-ready .live-schedule h2{font-size:22px}.product-ready .live-schedule li strong{font-size:15px}
  .product-ready .live-youtube-player h2{font-size:23px}
  .product-ready .live-channel-copy strong{font-size:16px}
  .product-ready [data-sports-dashboard]{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,1fr);gap:24px}
  .product-ready [data-sports-dashboard][hidden]{display:none}
  .product-ready [data-sports-feed]{grid-column:1;grid-row:1/3}
  .product-ready [data-sports-dashboard-main]{grid-column:2;grid-row:1}
  .product-ready [data-sports-lower]{grid-column:2;grid-row:2}
  .product-ready .sports-news-copy h3{font-size:18px;line-height:1.5}
  .product-ready .sports-section-head h2{font-size:22px}
  .product-ready #area-planos .plan-checklist label{min-height:44px;font-size:16px}
  .product-ready .profile-saved-grid,.product-ready .editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
}
