/* Shared Utilities — extracted from app inline styles */
/* Auto-generated by css-dedup-fixer.js — do not edit manually */

@media(max-width:900px){.metrics-grid{grid-template-columns:1fr}}

@media(max-width:800px){.cross-grid{grid-template-columns:1fr}}

@media(max-width:500px){.sparklines-row{grid-template-columns:repeat(2,1fr)}}

/* Removed: duplicate universal reset + html font-size (design-system.css handles these) */

@media (max-width: 480px) {
    .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 8px; }
    .stat-value { font-size: 18px; }
    .top-bar-title { font-size: 13px; }
}

@media (max-width: 700px) { .pulse-row { grid-template-columns: 1fr; } }

@media (max-width: 600px) {
  .header h1 { font-size: 1.4rem; }
  .btn-scan { padding: 16px 32px; font-size: 13px; }
  .signal-title { font-size: 17px; }
  .narrative-section { padding: 20px; }
  .pulse-row { grid-template-columns: 1fr; }
  .scan-meta { gap: 12px; }
}

/* Removed: duplicate universal reset */

@media(max-width:600px){
  .input-row{flex-direction:column}
  #ticker-search-container{width:100%}
  .mode-btn{width:100%;justify-content:center}
  .data-grid{grid-template-columns:1fr}
  .gauge-container{width:160px;height:90px}
  .gauge-label{font-size:22px}
}

/* Removed: overflow:hidden broke scrolling in 130 apps */

@media(max-width:768px){
  .g2,.g3,.g4,.g5{grid-template-columns:1fr}
  .row{flex-direction:column}
  .top-bar h1{font-size:11px;letter-spacing:1px}
  table{font-size:11px}
  td,th{padding:6px 4px}
  .wrap{padding:10px}
  .stat-box{padding:8px}
  .legend-card{padding:10px}
}

@media (max-width: 900px) {
    .grid-2, .grid-3, .grid-4, .grid-main { grid-template-columns: 1fr; }
    .logo { font-size: 28px; }
    .header-stats { gap: 16px; }
    .hstat-value { font-size: 16px; }
    .mover-grid { grid-template-columns: 1fr; }
    .metric-val { font-size: 28px; }
  }

/* Removed: duplicate html,body rule (design-system.css handles these) */

@media(max-width:1100px){.chart-grid{grid-template-columns:repeat(2,1fr)}}

@media (max-width: 640px) {
  .stats-bar { gap: 8px; }
  .stat-box { min-width: 100px; flex: 1 1 40%; padding: 10px 12px; }
  .stat-box .value { font-size: 22px; }
  .card-main { gap: 8px; padding: 10px 12px; }
  .card-right { min-width: 60px; }
  .firm-circle { width: 34px; height: 34px; min-width: 34px; font-size: 11px; }
  .filter-pill { font-size: 12px; padding: 5px 12px; }
}

@media(max-width:640px){
  .header-top{padding-left:80px}
  .header-title{font-size:16px}
  .feed-container{padding:14px 12px 80px}
  .card-headline{font-size:15px}
  .news-card{padding:12px 14px}
}

@media(max-width:700px){
  .tab-btn{font-size:7px;padding:8px 3px}
  .tab-icon{font-size:13px}
  .summary-grid{grid-template-columns:1fr 1fr}
  .summary-value{font-size:14px}
  .form-row{flex-direction:column}
  .form-group{min-width:auto}
  .title{font-size:13px}
  .annual-grid{grid-template-columns:1fr}
  .item-row{flex-wrap:wrap}
}

@media(max-width:480px){.summary-grid{grid-template-columns:1fr}}

@media(max-width:560px){.convince-setup{grid-template-columns:1fr}}

@media(max-width:860px){
  .arena-body{padding:12px 12px 80px}
  .legend-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}
}
