/* Inter é servido junto com a aplicação para manter leitura e carregamento consistentes. */
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("/static/fonts/inter-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("/static/fonts/inter-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2C60-2C7F, U+A720-A7FF;
}

:root {
  --ink: #142033;
  --muted: #34445a;
  --subtle: #40516a;
  --line: #b8c4d2;
  --line-soft: color-mix(in srgb, var(--line) 76%, white);
  --surface-soft: color-mix(in srgb, var(--line) 22%, white);
  --font-family: "Inter", "Segoe UI", Arial, sans-serif;
  font-family: var(--font-family);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  touch-action: manipulation;
}
html body {
  color: var(--ink);
  font-family: var(--font-family);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
}
html body :is(.dashboard.dashboard *, .account-page.account-page *, .admin-page.admin-page *, .public-feed-page.public-feed-page *, .public-chat-body.public-chat-body *, .publish-ad-body.publish-ad-body *, .auth-body.auth-body *, .public-chat-preview-page.public-chat-preview-page *) :is(p, li, label, legend, dt, dd) {
  font-size: max(14px, 1.02em);
  font-weight: 400;
  line-height: 1.55;
}
html body :is(.dashboard.dashboard *, .account-page.account-page *, .admin-page.admin-page *, .public-feed-page.public-feed-page *, .public-chat-body.public-chat-body *, .publish-ad-body.publish-ad-body *, .auth-body.auth-body *, .public-chat-preview-page.public-chat-preview-page *) :is(a, button, small, th, td) {
  font-size: max(13px, 1.02em);
}
html body :is(.dashboard, .account-page, .admin-page, .public-feed-page, .public-chat-body, .publish-ad-body, .auth-body, .public-chat-preview-page) :is(h1, h2, h3, h4) {
  font-family: var(--font-family);
  font-weight: 550;
  letter-spacing: -0.015em;
}
html body :is(.dashboard, .account-page, .admin-page, .public-feed-page, .public-chat-body, .publish-ad-body, .auth-body, .public-chat-preview-page) h1 {
  font-size: clamp(24px, 2.4vw, 32px);
  font-weight: 600;
  line-height: 1.25;
}
html body :is(.dashboard, .account-page, .admin-page, .public-feed-page, .public-chat-body, .publish-ad-body, .auth-body, .public-chat-preview-page) h2 {
  font-size: clamp(18px, 1.6vw, 20px);
  font-weight: 550;
  line-height: 1.35;
}
html body :is(.dashboard, .account-page, .admin-page, .public-feed-page, .public-chat-body, .publish-ad-body, .auth-body, .public-chat-preview-page) :is(h3, h4) {
  font-size: 16px;
  font-weight: 550;
  line-height: 1.4;
}
html body :is(.feed-sidebar, .ad-detail-sidebar, .account-sidebar, .sidebar, .public-chat-plus-menu) :is(h2, h3, h4) {
  font-size: 15px;
  font-weight: 550;
  line-height: 1.4;
}
html body :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]), select) {
  min-height: 42px;
  font-family: var(--font-family);
  font-size: 16px;
  font-weight: 400;
  touch-action: manipulation;
}
html body :is(.dashboard.dashboard *, .account-page.account-page *, .admin-page.admin-page *, .public-feed-page.public-feed-page *, .public-chat-body.public-chat-body *, .publish-ad-body.publish-ad-body *, .auth-body.auth-body *, .public-chat-preview-page.public-chat-preview-page *) textarea {
  font-family: var(--font-family);
  font-size: 16px;
  font-weight: 400;
}
html body .public-chat-body.public-chat-body textarea { min-height: 34px; }
button, a, summary, input[type="submit"], input[type="button"] { touch-action: manipulation; }

.public-feed-search input { font-weight: 400; }
.public-feed-nav-publish { font-weight: 600; }
.public-feed-header-icon, .public-feed-notifications > summary, .feed-sidebar-toggle { color: #1768d2; }
.public-feed-header-icon svg { stroke-width: 1.9; transform-origin: center; transition: transform .18s ease-out; }
.public-feed-header-icon:first-child:hover svg { transform: rotate(-5deg) scale(1.05); }
.public-chat-online > span, .public-chat-aside-label > span {
  background: #22c55e;
  box-shadow: 0 0 0 3px rgb(34 197 94 / 18%);
}
.feed-sidebar-nav a, .feed-sidebar-nav button { font-weight: 500; }
.feed-sidebar-nav a[aria-current="page"] { font-weight: 600; }
.feed-sidebar-section-heading h2, .feed-sidebar-ad-section > h2 { font-size: 15px; font-weight: 600; }
.feed-sidebar-ad-copy > a { font-size: 14px; font-weight: 600; }
.feed-sidebar-ad-copy > span { font-size: 13px; font-weight: 400; }
.feed-sidebar-ad-copy > small { font-size: 12px; font-weight: 400; }
.feed-sidebar-profile-copy > strong { font-weight: 600; }
.feed-sidebar-profile-copy > span, .feed-sidebar-profile-copy > a { font-size: 13px; }
.feed-sidebar-empty { font-size: 14px; font-weight: 400; line-height: 1.5; }
.public-feed-card-copy h2 { font-weight: 600; }
.public-feed-card-copy p { font-size: 14px; font-weight: 400; }
.public-feed-empty-state h2 { font-size: 20px; font-weight: 600; line-height: 1.3; }
.public-feed-empty-state p { font-size: 15px; font-weight: 400; line-height: 1.55; }
.public-feed-empty-state a { font-size: 15px; font-weight: 600; }
.public-feed-footer { font-size: 10px; font-weight: 500; }

@media (max-width: 900px) {
  .public-feed-header-icon,
  .public-feed-notifications > summary,
  .public-feed-header-profile,
  .feed-sidebar-toggle { width: 44px; height: 44px; min-height: 44px; flex-basis: 44px; }
  .feed-sidebar-toggle svg { width: 20px; height: 20px; }
  .public-feed-header-icon svg,
  .public-feed-notifications > summary svg { width: 23px; height: 23px; }
  .public-feed-header-profile img { width: 32px; height: 32px; }
  .public-feed-nav-publish { min-height: 44px; }
  .feed-sidebar-drawer-header { min-height: 68px; }
  .feed-sidebar-drawer-brand img { width: 120px; max-height: 34px; }
}
@media (max-width: 650px) {
  .public-feed-header { grid-template-rows: 44px 44px; gap: 8px 8px; padding-top: 8px; padding-bottom: 8px; }
  .public-feed-brand-wordmark { width: clamp(104px, 29vw, 120px); max-height: 34px; }
  .public-feed-header-actions { gap: 4px; }
  .public-feed-header-icon,
  .public-feed-notifications > summary,
  .public-feed-header-profile,
  .feed-sidebar-toggle { width: 40px; height: 40px; min-height: 40px; flex-basis: 40px; }
  .feed-sidebar-toggle svg { width: 19px; height: 19px; }
  .public-feed-header-icon svg,
  .public-feed-notifications > summary svg { width: 21px; height: 21px; }
  .public-feed-header-profile img { width: 30px; height: 30px; }
  .public-feed-nav-publish { width: 40px; min-width: 40px; min-height: 40px; }
  .public-feed-nav-publish svg { width: 20px; height: 20px; }
  .public-feed-search { height: 44px; }
  .public-feed-search input { min-height: 42px; font-size: 16px; }
  .feed-sidebar-drawer-brand img { width: 120px; max-height: 34px; }
  .feed-sidebar-nav a, .feed-sidebar-nav button { min-height: 46px; }
  .public-feed-card-copy h2 { font-size: 18px; }
  .public-feed-card-copy p { font-size: 15px; }
  html body :is(.dashboard, .account-page, .admin-page, .public-feed-page, .public-chat-body, .publish-ad-body, .auth-body, .public-chat-preview-page) h1 { font-size: 25px; }
  html body :is(.dashboard, .account-page, .admin-page, .public-feed-page, .public-chat-body, .publish-ad-body, .auth-body, .public-chat-preview-page) h2 { font-size: 18px; }
}
@media (max-width: 390px) {
  .public-feed-brand-wordmark { width: 104px; }
  .public-feed-header { gap: 7px 6px; padding-right: 10px; padding-left: 10px; }
  .public-feed-header-actions { gap: 2px; }
  .public-feed-header-icon,
  .public-feed-notifications > summary,
  .public-feed-header-profile,
  .feed-sidebar-toggle { width: 38px; height: 38px; min-height: 38px; flex-basis: 38px; }
  .public-feed-nav-publish { width: 38px; min-width: 38px; min-height: 38px; }
}
@media (prefers-reduced-motion: no-preference) {
  html body :is(button, [role="button"], summary, input[type="submit"], input[type="button"]):not(:disabled) {
    transition-property: transform;
    transition-duration: .16s;
    transition-timing-function: ease-out;
  }
}
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  html body :is(button, [role="button"], summary, input[type="submit"], input[type="button"]):not(:disabled):hover {
    transform: translateY(-1px);
  }
}
