/* assets/style.css - visual polish for Lentes Estoque */
:root{
  --bg: #f4f7fb;
  --card: #ffffff;
  --muted: #6c757d;
  --brand: #0b5ed7;
  --accent: #ff7a59;
  --success: #198754;
  --danger: #dc3545;
  --glass: rgba(255,255,255,0.6);
  --radius: 12px;
}
body {
  background: linear-gradient(180deg, #f7fbff 0%, var(--bg) 100%);
  color: #243142;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  padding-bottom: 40px;
}
.app-container{
  max-width:1100px;
  margin: 0 auto;
}
.app-card{
  background: var(--card);
  border-radius: var(--radius);
  box-shadow: 0 8px 24px rgba(35,47,63,0.06);
  padding: 18px;
  margin-bottom: 18px;
}
.navbar-brand { font-weight:700; color:var(--brand); font-size:1.15rem; display:flex; gap:10px; align-items:center;}
.logo-circle{ width:34px;height:34px;border-radius:8px;background:linear-gradient(135deg,var(--brand),#5ec2ff); display:inline-flex; align-items:center; justify-content:center; color:white; font-weight:700; }
.btn-primary{ background: linear-gradient(180deg,var(--brand),#0a58ca); border: none; box-shadow: 0 6px 16px rgba(11,94,215,0.12); }
.btn-outline-secondary{ border-radius:10px; }
.small-muted{ color:var(--muted); font-size:0.9rem; }
.hero-title{ font-size:1.25rem; font-weight:700; margin-bottom:0.25rem; }
.hero-sub{ color:var(--muted); margin-bottom:0; }
.filters .btn{ border-radius:10px; padding:8px 12px; }
table.table{ border-radius:10px; overflow:hidden; }
table.table th, table.table td { vertical-align: middle; }
.low-badge{ display:inline-block; padding:6px 10px; border-radius:999px; background:linear-gradient(90deg,#fff4e6,#fff8f1); border:1px solid #ffe8d6; font-weight:600; }
.table-danger td{ background: linear-gradient(90deg, rgba(255,230,230,0.4), rgba(255,245,245,0.2)); }
.table-warning td{ background: linear-gradient(90deg, rgba(255,243,205,0.35), rgba(255,249,230,0.15)); }
.search-input{ border-radius:10px; padding:12px 14px; }
.footer-note{ color:var(--muted); font-size:0.85rem; margin-top:18px; text-align:center; }
@media(max-width:767px){
  .app-container{ padding: 12px; }
}



/* Dark theme */
:root.dark {
  --bg: #0b1220;
  --card: #0f1724;
  --muted: #9aa6b2;
  --brand: #66a8ff;
  --accent: #ff8a6b;
  --success: #28a745;
  --danger: #ff6b6b;
  color-scheme: dark;
}
body.dark { background: linear-gradient(180deg,#071124,var(--bg) 100%); color: #cfe7ff; }


/* === Professional Enhanced Theme === */
:root{
  --brand:#0b5ed7;
  --muted:#6c757d;
  --card:#ffffff;
  --bg:#f4f7fb;
  --radius:12px;
}
body { background: linear-gradient(180deg,#f7fbff,#f1f6fb); color:#172033; font-family:'Inter',sans-serif; }
.app-card { background:var(--card); border-radius:var(--radius); padding:18px; box-shadow:0 10px 30px rgba(30,40,60,0.06); }
.navbar-brand { font-weight:700; color:var(--brand); }
.logo-circle{ width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--brand),#5ec2ff); color:#fff; display:inline-flex;align-items:center;justify-content:center;font-weight:700; margin-right:8px;}
.table thead th { background:transparent; font-weight:600; color:#334155; }
.btn-primary{ background: linear-gradient(180deg,var(--brand),#0a58ca); border:none; }
.search-input{ border-radius:10px; padding:12px 14px; box-shadow:inset 0 1px 0 rgba(0,0,0,0.02); }
.footer-note{ text-align:center; color:var(--muted); margin-top:20px; font-size:0.9rem; }
@media(max-width:767px){ .app-container{ padding:12px; } .logo-circle{ display:none; } }
