/* Shared visual foundation. Blue identity, compact surfaces and clear controls. */
.site-refresh {
  --primary-color: #0bb6fe;
  --primary-dark: #0369a1;
  --surface: #fff;
  --ink: #1c252e;
  --ink-muted: #637381;
  --app-max: min(1440px, 96vw);
  background: #f5f7fa;
  color: var(--ink);
  font-size: .9375rem;
}
.site-refresh .site-header { background: rgba(255,255,255,.97); border-bottom: 1px solid #e3e8ee; box-shadow: none; }
.site-refresh .page-card,
.site-refresh .profile-main,
.site-refresh .item-card { border: 1px solid #e3e8ee; border-radius: 12px; background: #fff; box-shadow: 0 2px 4px rgba(28,37,46,.025); }
.site-refresh .page-card { padding: 1.2rem; }
.site-refresh .section-title { color: #1c252e; letter-spacing: -.025em; }
.site-refresh .section-header { gap: 1rem; flex-wrap: wrap; }
.site-refresh .text-muted { color: #637381; }
.site-refresh .btn { border-radius: 8px; font-size: .875rem; font-weight: 600; box-shadow: none; }
.site-refresh .btn-primary { background: #0bb6fe; border-color: #0bb6fe; color: #072b40; }
.site-refresh .btn-primary:hover { background: #0369a1; border-color: #0369a1; color: #fff; }
.site-refresh .btn-outline { color: #0369a1; border-color: #b9d4e5; background: #fff; }
.site-refresh .btn-outline:hover { background: #e8f7ff; border-color: #0bb6fe; }
.site-refresh .form-control { border: 1px solid #c4cdd5; border-radius: 8px; background: #fff; color: #1c252e; font-size: .9rem; }
.site-refresh .form-control:focus { border-color: #0284c7; box-shadow: 0 0 0 3px #0bb6fe22; }
.site-refresh input::placeholder,.site-refresh textarea::placeholder { color: #637381; opacity: 1; }
.site-refresh .card-line { gap: .8rem; border-bottom-color: #e3e8ee; }
.site-refresh .status-pill { padding: .2rem .55rem; font-size: .75rem; line-height: 1.4; }
.site-refresh .site-footer { background: #1c252e; color: #dbe4eb; }
.site-refresh .site-footer .footer-title { color: #fff; }
.site-refresh .site-footer .footer-links a,.site-refresh .site-footer .footer-bottom { color: #c4cdd5; }
.site-refresh :where(a,button,input,select,textarea,summary):focus-visible { outline: 3px solid #0284c7; outline-offset: 3px; }
@media (max-width: 600px) {
  .site-refresh { --app-max: 100%; }
  .site-refresh .page-card { padding: .95rem; }
  .site-refresh .section-title { font-size: 1.25rem; }
}
@media (prefers-reduced-motion: reduce) {
  .site-refresh *, .site-refresh *::before, .site-refresh *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
