:root{
  --ds-bg:#f7f7f8;
  --ds-surface:#ffffff;
  --ds-surface-2:#fbfbfc;
  --ds-border:rgba(15,23,42,.12);
  --ds-text:#0f172a;
  --ds-text-muted:#475569;
  --ds-text-subtle:#64748b;
  --ds-accent:#2563eb;
  --ds-accent-contrast:#ffffff;
  --ds-accent-tint:#eff6ff;
  --ds-success:#16a34a;
  --ds-warning:#f59e0b;
  --ds-danger:#dc2626;
  --ds-radius:12px;
  --ds-ring:rgba(37,99,235,.18);
  --ds-shadow:0 1px 2px rgba(15,23,42,.06),0 1px 1px rgba(15,23,42,.04);
}

html,body{height:100%}
body{
  background:var(--ds-bg);
  color:var(--ds-text);
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

body>nav.bg-white.border-b{display:none!important}

::selection{background:rgba(37,99,235,.18)}

a{color:inherit;text-decoration:none}
a:hover{text-decoration:none}

main{overflow-x:auto}
table th,table td,table th *,table td *{white-space:nowrap!important}
.whitespace-pre-wrap{white-space:pre-wrap!important}

.bg-gray-50{background-color:var(--ds-bg)!important}
.bg-white{background-color:var(--ds-surface)!important}
.border-gray-200{border-color:var(--ds-border)!important}
.border-gray-300{border-color:var(--ds-border)!important}
.border-blue-200{border-color:rgba(37,99,235,.22)!important}
.border-blue-300{border-color:rgba(37,99,235,.28)!important}
.border-orange-300{border-color:rgba(245,158,11,.38)!important}
.divide-gray-200>:not([hidden])~:not([hidden]){border-color:var(--ds-border)!important}
.text-gray-800{color:var(--ds-text)!important}
.text-gray-900{color:var(--ds-text)!important}
.text-gray-700{color:var(--ds-text-muted)!important}
.text-gray-600{color:var(--ds-text-muted)!important}
.text-gray-500{color:var(--ds-text-subtle)!important}
.text-primary{color:var(--ds-accent)!important}
.text-blue-800{color:var(--ds-accent)!important}
.text-blue-700{color:var(--ds-accent)!important}
.text-blue-900{color:#1d4ed8!important}
.text-orange-800{color:#b45309!important}
.bg-blue-50{background-color:var(--ds-accent-tint)!important}
.bg-blue-800{background-color:var(--ds-accent)!important}
.hover\:bg-blue-700:hover{background-color:#1d4ed8!important}
.hover\:bg-blue-50:hover{background-color:var(--ds-accent-tint)!important}
.hover\:bg-orange-50:hover{background-color:rgba(245,158,11,.08)!important}
.bg-gray-100{background-color:var(--ds-surface-2)!important}
.bg-primary{background-color:var(--ds-accent)!important}
.bg-blue-600{background-color:var(--ds-accent)!important}
.bg-primary\/10{background-color:rgba(37,99,235,.10)!important}
.hover\:bg-primary\/90:hover{background-color:#1d4ed8!important}
.hover\:bg-gray-50:hover{background-color:var(--ds-surface-2)!important}
.hover\:bg-gray-100:hover{background-color:var(--ds-surface-2)!important}
.hover\:text-blue-800:hover{color:var(--ds-accent)!important}
.hover\:text-blue-900:hover{color:var(--ds-accent)!important}
.hover\:text-primary:hover{color:var(--ds-accent)!important}
.rounded-md{border-radius:10px!important}
.rounded-lg{border-radius:var(--ds-radius)!important}
.rounded-xl{border-radius:calc(var(--ds-radius) + 4px)!important}

input,select,textarea{
  background:var(--ds-surface);
  color:var(--ds-text);
  border-color:var(--ds-border)!important;
  border-radius:10px;
  outline:none;
  box-shadow:none;
}
input:focus,select:focus,textarea:focus{
  border-color:rgba(37,99,235,.35)!important;
  box-shadow:0 0 0 4px var(--ds-ring)!important;
}
button{
  border-radius:10px;
}
button:focus,button:focus-visible,a:focus,a:focus-visible{
  outline:none;
  box-shadow:0 0 0 4px var(--ds-ring);
  border-radius:10px;
}

.shadow-soft{box-shadow:var(--ds-shadow)!important}
.shadow-xl{box-shadow:0 10px 18px rgba(15,23,42,.10),0 2px 6px rgba(15,23,42,.06)!important}
.shadow-2xl{box-shadow:0 14px 28px rgba(15,23,42,.14),0 4px 10px rgba(15,23,42,.08)!important}
.rounded-2xl{border-radius:calc(var(--ds-radius) + 8px)!important}

.card-hover{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease!important}
.card-hover:hover{transform:translateY(-2px)!important;box-shadow:var(--ds-shadow)!important;border-color:rgba(15,23,42,.18)!important}
.table-row-hover{transition:background-color .12s ease!important}
.table-row-hover:hover{background-color:var(--ds-surface-2)!important}

.wd-selected{
  border-color:rgba(22,163,74,.45)!important;
  background-color:rgba(34,197,94,.06)!important;
  box-shadow:0 0 0 1px rgba(22,163,74,.35)!important;
}
.wd-selected:hover{
  background-color:rgba(34,197,94,.06)!important;
  border-color:rgba(22,163,74,.45)!important;
}

.wd-filter-btn{
  display:inline-flex!important;
  align-items:center!important;
  height:20px!important;
  padding:0 8px!important;
  border-radius:999px!important;
  font-size:11px!important;
  line-height:1!important;
  border:1px solid var(--ds-border)!important;
  color:var(--ds-text-muted)!important;
  background-color:var(--ds-surface-2)!important;
}
.wd-filter-btn:hover{
  background-color:var(--ds-surface)!important;
}
.wd-filter-btn-active{
  border-color:rgba(22,163,74,.45)!important;
  color:#166534!important;
  background-color:rgba(34,197,94,.10)!important;
}
.wd-filter-btn-disabled{
  opacity:.45!important;
  cursor:not-allowed!important;
  background-color:var(--ds-surface-2)!important;
}

.wd-highlight{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  border:1px solid rgba(37,99,235,.45)!important;
  background-color:rgba(37,99,235,.14)!important;
  color:var(--ds-text)!important;
}

.step-active{border-color:var(--ds-accent);background-color:var(--ds-accent);color:var(--ds-accent-contrast)}
.step-completed{border-color:var(--ds-success);background-color:var(--ds-success);color:#fff}
.step-pending{border-color:var(--ds-text-subtle);background-color:var(--ds-surface);color:var(--ds-text-subtle)}

.toast{
  position:fixed;
  right:16px;
  bottom:16px;
  background:var(--ds-text);
  color:#fff;
  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;
  padding:10px 14px;
  font-size:12px;
  opacity:.96;
  box-shadow:0 8px 24px rgba(15,23,42,.18);
}

@media (prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important}
  .card-hover,.table-row-hover{transition:none!important}
}

.ds-user-menu{background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:calc(var(--ds-radius) + 4px);box-shadow:0 14px 28px rgba(15,23,42,.14),0 4px 10px rgba(15,23,42,.08)}
.ds-user-menu .ds-menu-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;color:var(--ds-text-muted);font-size:14px}
.ds-user-menu .ds-menu-item:hover{background:var(--ds-surface-2);color:var(--ds-text)}
.ds-user-menu .ds-divider{height:1px;background:var(--ds-border);margin:8px 0}
.ds-user-menu .ds-profile{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:12px}
.ds-user-menu .ds-profile:hover{background:var(--ds-surface-2)}
.ds-user-menu .ds-avatar{position:relative;width:40px;height:40px;border-radius:999px;overflow:hidden;background:var(--ds-surface-2);border:1px solid var(--ds-border);display:flex;align-items:center;justify-content:center;color:var(--ds-text-muted);font-weight:700}
.ds-user-menu .ds-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;background:transparent;border:0;box-shadow:0 1px 2px rgba(15,23,42,.14);flex:0 0 auto}
.ds-user-menu .ds-badge svg{display:block}
.ds-user-menu .ds-right{color:var(--ds-text-subtle)}

.ds-aside{display:flex;flex-direction:column;height:100%}
aside.w-64, aside[class*="w-64"]{display:flex!important;flex-direction:column!important;width:256px!important;min-width:256px!important;flex-shrink:0!important;visibility:visible!important;opacity:1!important}
.ds-aside-scroll{flex:1;min-height:0;overflow:auto}
.ds-aside-bottom{padding:8px;position:sticky;bottom:0;background:var(--ds-surface)}
.ds-divider{height:1px;background:var(--ds-border);margin:8px 0}
.ds-brand{display:flex;align-items:center;gap:10px;padding:6px 2px;margin-bottom:10px}
.ds-brand-mark{width:36px;height:36px;border-radius:12px;background:var(--ds-accent-tint);border:1px solid rgba(37,99,235,.18);display:flex;align-items:center;justify-content:center;color:var(--ds-accent)}
.ds-brand-name{font-weight:800;color:var(--ds-text);line-height:1.1}
.ds-brand-sub{font-size:12px;color:var(--ds-text-subtle);margin-top:2px}
.ds-search{position:relative}
.ds-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--ds-text-subtle);font-size:14px}
.ds-search input{padding-left:34px}
.ds-section{padding:12px 12px 8px}
.ds-section+.ds-section{border-top:1px solid var(--ds-border)}
.ds-section-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:700;color:var(--ds-text-subtle);letter-spacing:.02em;margin-bottom:8px}
.ds-section-toggle:hover{color:var(--ds-text)}
.ds-nav{display:flex;flex-direction:column;gap:4px}
.ds-nav-link{display:flex;align-items:center;gap:10px;padding:10px 10px;border-radius:12px;color:var(--ds-text-muted);font-size:14px;font-weight:600}
.ds-nav-link:hover{background:var(--ds-surface-2);color:var(--ds-text)}
.ds-nav-link.ds-active{background:var(--ds-accent-tint);color:var(--ds-accent)}
.ds-nav-icon{width:18px;text-align:center;color:var(--ds-text-subtle);flex:0 0 auto}
.ds-nav-link.ds-active .ds-nav-icon{color:var(--ds-accent)}
.ds-sidebar-profile{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:12px;cursor:pointer}
.ds-sidebar-profile:hover{background:var(--ds-surface-2)}
.ds-sidebar-profile:focus,.ds-sidebar-profile:focus-visible{outline:none;box-shadow:0 0 0 4px var(--ds-ring)}
.ds-sidebar-profile .ds-avatar{position:relative;width:40px;height:40px;border-radius:999px;overflow:hidden;background:var(--ds-surface-2);border:1px solid var(--ds-border);display:flex;align-items:center;justify-content:center;color:var(--ds-text-muted);font-weight:700;flex:0 0 auto}
.ds-sidebar-profile .ds-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;background:transparent;border:0;box-shadow:0 1px 2px rgba(15,23,42,.14);flex:0 0 auto}
.ds-sidebar-profile .ds-badge svg{display:block}
.ds-sidebar-meta{min-width:0;flex:1}
.ds-sidebar-name-row{display:flex;align-items:center;gap:8px;min-width:0}
.ds-sidebar-name{font-weight:700;color:var(--ds-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ds-sidebar-email{font-size:12px;color:var(--ds-text-subtle);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ds-right{color:var(--ds-text-subtle)}
.ds-notify{position:relative;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:10px;border:1px solid transparent;background:transparent;color:var(--ds-text-subtle)}
.ds-notify:hover{background:var(--ds-surface-2);color:var(--ds-text)}
.ds-notify-dot{position:absolute;right:6px;top:6px;width:8px;height:8px;border-radius:999px;background:#ef4444;border:2px solid var(--ds-surface)}
