/* Extraído de design/app.html — layout/componentes da página, sem tokens. */
/* Página-específico do app. Componentes e tokens vêm de ../css/. */
  *{ -webkit-tap-highlight-color:transparent; }
  html{ scroll-behavior:smooth; }
  body{
    background:var(--bg); color:var(--text);
    font-family:var(--font-sans); font-size:16px; line-height:1.5;
    overflow-x:hidden; -webkit-font-smoothing:antialiased;
  }
  .topbar{ height:64px; background:var(--surface); border-bottom:1px solid var(--line); }
  .app-header-badge{ display:none; }
  @media(min-width:640px){ .app-header-badge{ display:block; } }
  .only-mobile{ display:block; }
  @media(min-width:640px){ .only-mobile{ display:none; } }
  .items-head{ display:none; }
  @media(min-width:640px){
    .items-head{ display:grid; gap:8px; padding:0 16px; grid-template-columns:1fr 76px 112px 100px 44px;
      font-size:13px; font-weight:600; color:var(--text-2); }
  }
  .stack-2{ display:grid; gap:16px; }
  .skel{ background:linear-gradient(90deg, var(--bg-elev) 25%, #ECECEC 50%, var(--bg-elev) 75%); background-size:200% 100%; animation:shimmer 1.4s infinite linear; border-radius:8px; }
  @keyframes shimmer{ 0%{ background-position:200% 0; } 100%{ background-position:-200% 0; } }
  .print-watermark{ display:none; }
  .panel-title{ display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
  .muted{ color:var(--text-2); }
  x-sep{ display:block; }
  @media (prefers-reduced-motion: reduce){ *{ animation:none !important; transition:none !important; } }
