
/* Webby v38 unified design system */
:root{
  --wb-blue:#2563eb;
  --wb-blue-dark:#1d4ed8;
  --wb-blue-soft:#dbeafe;
  --wb-blue-wash:#eff6ff;
  --wb-paper:#f7f8f5;
  --wb-white:#ffffff;
  --wb-ink:#18211b;
  --wb-muted:#64748b;
  --wb-border:#e2e8f0;
  --wb-border-strong:#cbd5e1;
  --wb-radius-sm:10px;
  --wb-radius:14px;
  --wb-radius-lg:20px;
  --wb-shadow:0 8px 24px rgba(15,23,42,.07);
  --wb-shadow-lg:0 20px 50px rgba(15,23,42,.10);
}
html{scroll-behavior:smooth}
body{
  background:var(--wb-paper);
  color:var(--wb-ink);
  font-family:Lato,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
a{transition:color .18s ease,background-color .18s ease,border-color .18s ease,transform .18s ease}
button,input,select,textarea{font:inherit}
input,select,textarea{
  background:#fff;
  color:var(--wb-ink);
  border:1px solid var(--wb-border-strong);
  border-radius:var(--wb-radius-sm);
  min-height:44px;
  padding:10px 12px;
}
textarea{min-height:120px;resize:vertical}
input:focus,select:focus,textarea:focus{
  outline:0;
  border-color:var(--wb-blue);
  box-shadow:0 0 0 4px rgba(37,99,235,.10);
}
.wb-panel,
.card,
.panel,
.ticket-card,
.stat-card,
.timeline-item{
  background:#fff;
  border:1px solid var(--wb-border);
  border-radius:var(--wb-radius-lg);
  box-shadow:var(--wb-shadow);
}
.btn,.button,button.primary,.wb-button{
  border:1px solid var(--wb-blue);
  border-radius:var(--wb-radius-sm);
  background:var(--wb-blue);
  color:#fff;
  min-height:42px;
  padding:10px 15px;
  font-weight:700;
  line-height:1.2;
  box-shadow:none;
  cursor:pointer;
}
.btn:hover,.button:hover,button.primary:hover,.wb-button:hover{
  background:var(--wb-blue-dark);
  border-color:var(--wb-blue-dark);
}
.btn.light,.btn.secondary,.button.secondary,.wb-button.secondary{
  background:#fff;
  color:var(--wb-ink);
  border-color:var(--wb-border-strong);
}
.btn.light:hover,.btn.secondary:hover,.button.secondary:hover,.wb-button.secondary:hover{
  background:var(--wb-blue-wash);
  border-color:#93c5fd;
  color:var(--wb-blue-dark);
}
.btn.danger{background:#fff;color:#b91c1c;border-color:#fecaca}
.btn.danger:hover{background:#fef2f2;border-color:#fca5a5}
.badge,.pill,.status-badge,.nav-count{
  border-radius:999px;
  font-weight:700;
}
.alert{
  border-radius:var(--wb-radius);
  border:1px solid var(--wb-border);
  box-shadow:none;
}
.alert.success{background:#eff6ff;border-color:#bfdbfe;color:#1e40af}
.alert.error{background:#fef2f2;border-color:#fecaca;color:#991b1b}
.alert.warning{background:#fffbeb;border-color:#fde68a;color:#92400e}
.webby-logo-mark{filter:none}
.webby-wordmark strong{letter-spacing:-.045em}
::selection{background:var(--wb-blue);color:#fff}
