:root{--gjyl-surface:#0e1726;--gjyl-surface-elev:#121d30;--gjyl-card:#0f1b2d;--gjyl-primary:#1ea4ff;--gjyl-accent:#7c5cff;--gjyl-ok:#22c55e;--gjyl-danger:#ef4444;--gjyl-text:#e6eef8;--gjyl-muted:#9bb0c3;--gjyl-elevation-1:0 1px 0 rgba(255,255,255,0.02) inset;--gjyl-elevation-2:0 8px 24px rgba(0,0,0,0.35);--gjyl-elevation-3:0 18px 40px rgba(0,0,0,0.45);--gjyl-gradient-surface:linear-gradient(to bottom right,#0f1b2d,#0b1220);--gjyl-gradient-primary:linear-gradient(135deg,#1ea4ff,#7c5cff);--gjyl-gradient-header:linear-gradient(135deg,#1ea4ff,#7c5cff);--gjyl-font-display:1.75rem;--gjyl-font-title:1.25rem;--gjyl-font-body:0.875rem;--gjyl-font-ui:0.75rem;--gjyl-line-display:2.25rem;--gjyl-line-title:1.75rem;--gjyl-line-body:1.375rem;--gjyl-line-ui:1.125rem;--gjyl-radius:1rem;--gjyl-radius-sm:0.5rem;--gjyl-radius-lg:1.5rem;--gjyl-radius-full:9999px;--gjyl-ease-enter:cubic-bezier(0.16,1,0.3,1);--gjyl-ease-exit:cubic-bezier(0.2,0.8,0.2,1);--gjyl-duration-fast:120ms;--gjyl-duration-normal:180ms;--gjyl-duration-slow:240ms}.gjyl-surface{background:var(--gjyl-surface)}.gjyl-surface-elevated{background:var(--gjyl-surface-elev);box-shadow:var(--gjyl-elevation-2)}.gjyl-card-new{background:var(--gjyl-gradient-surface);border-radius:var(--gjyl-radius);box-shadow:var(--gjyl-elevation-1);transition:all var(--gjyl-duration-normal) var(--gjyl-ease-enter)}.gjyl-card-new:hover{transform:translateY(-2px);box-shadow:var(--gjyl-elevation-3)}.gjyl-btn-primary{background:var(--gjyl-gradient-primary);color:white;padding:.625rem 1.25rem;border-radius:var(--gjyl-radius-sm);font-size:var(--gjyl-font-body);font-weight:600;box-shadow:var(--gjyl-elevation-1);transition:all var(--gjyl-duration-fast) var(--gjyl-ease-enter);border:none;cursor:pointer}.gjyl-btn-primary:hover{transform:translateY(-2px);box-shadow:var(--gjyl-elevation-2);filter:brightness(1.1)}.gjyl-btn-muted{background:transparent;color:var(--gjyl-muted);padding:.5rem 1rem;border-radius:var(--gjyl-radius-sm);font-size:var(--gjyl-font-body);border:1px solid rgba(155,176,195,.3);transition:all var(--gjyl-duration-fast) var(--gjyl-ease-enter);cursor:pointer}.gjyl-btn-muted:hover{border-color:rgba(155,176,195,.5);background:rgba(155,176,195,.1)}.gjyl-text-display{font-size:var(--gjyl-font-display);line-height:var(--gjyl-line-display);font-weight:700}.gjyl-text-title{font-size:var(--gjyl-font-title);line-height:var(--gjyl-line-title);font-weight:600}.gjyl-text-body{font-size:var(--gjyl-font-body);line-height:var(--gjyl-line-body)}.gjyl-text-ui{line-height:var(--gjyl-line-ui)}.gjyl-badge,.gjyl-text-ui{font-size:var(--gjyl-font-ui);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.gjyl-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:var(--gjyl-radius-full)}.gjyl-badge-live{background:var(--gjyl-danger);color:white;box-shadow:0 0 12px rgba(239,68,68,.4),var(--gjyl-elevation-1);animation:pulse-live 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse-live{0%,to{opacity:1}50%{opacity:.8;transform:scale(1.05)}}@keyframes notification-pulse{0%{transform:scale(1);opacity:1}25%{transform:scale(1.2);opacity:.8}50%{transform:scale(1);opacity:1}75%{transform:scale(1.15);opacity:.9}to{transform:scale(1);opacity:1}}.gjyl-notification-dot{animation:notification-pulse 6s var(--gjyl-ease-enter) infinite}.gjyl-presence-ring{position:relative;border:2px solid transparent;transition:border-color var(--gjyl-duration-fast) var(--gjyl-ease-enter)}.gjyl-presence-online{border-color:var(--gjyl-ok);box-shadow:0 0 8px rgba(34,197,94,.3)}.gjyl-presence-idle{border-color:#fbbf24;box-shadow:0 0 8px rgba(251,191,36,.3)}.gjyl-presence-dnd{border-color:var(--gjyl-danger);box-shadow:0 0 8px rgba(239,68,68,.3)}.gjyl-presence-offline{border-color:var(--gjyl-muted);opacity:.6}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.gjyl-skeleton{background:linear-gradient(90deg,var(--gjyl-surface) 0,var(--gjyl-surface-elev) 50%,var(--gjyl-surface) 100%);background-size:1000px 100%;animation:shimmer 2s infinite;border-radius:var(--gjyl-radius-sm)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.gjyl-btn-primary:hover,.gjyl-card-new:hover{transform:none}}