:root{
  --ai-bg: #0b0f1a;
  --ai-panel: rgba(255,255,255,0.06);
  --ai-panel2: rgba(255,255,255,0.08);
  --ai-border: rgba(255,255,255,0.10);
  --ai-text: rgba(255,255,255,0.92);
  --ai-muted: rgba(255,255,255,0.78);
  --ai-accent: #7c3aed;
  --ai-accent2: #06b6d4;
}

/* Smooth page transitions (soft fade on navigation)
   Enabled only when JS is running (html.js), so pages never stay invisible if JS fails. */
html.js body{
  opacity: 0;
  transition: opacity .22s ease;
}
html.js body.page-ready{ opacity: 1; }
html.js body.page-leave{ opacity: 0; }

/* Global AI font */
html, body{
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  letter-spacing: .005em;
  line-height: 1.55;
  font-size: 15.5px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ai-brand, .ai-side-group, .ai-chip, .ai-topbar .badge, h1, h2, h3, h4, h5, h6{
  font-family: "Orbitron", Inter, system-ui, sans-serif;
}

button, input, select, textarea{
  font-family: inherit;
}

.ai-bg{
  background:
    radial-gradient(1200px 600px at 20% 0%, rgba(124,58,237,0.25), transparent 60%),
    radial-gradient(900px 500px at 80% 20%, rgba(6,182,212,0.18), transparent 60%),
    linear-gradient(180deg, #070a12, var(--ai-bg));
  color: var(--ai-text);
}

.ai-topbar{
  position: sticky;
  top: 0;
  z-index: 1030;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: .75rem 1rem;
  background: rgba(10,14,24,0.82);
  border-bottom: 1px solid var(--ai-border);
  backdrop-filter: blur(12px);
}

/* Mobile/tablet usability */
@media (max-width: 575.98px){
  .ai-topbar{ flex-wrap: wrap; gap: .5rem; padding: .65rem .75rem; }
  .ai-sub{ display:none; }
  .ai-brand-logo{ height:24px; }
  .ai-topbar form{ width:auto; }
}

/* Make long tables/forms usable on small screens */
.table-responsive{ border-radius: 16px; }

/* Respect iOS safe areas */
.ai-offcanvas .offcanvas-body{ padding-bottom: calc(1rem + env(safe-area-inset-bottom)); }
.toast-container{ padding-bottom: calc(1rem + env(safe-area-inset-bottom)); }

.ai-brand{ line-height: 1.2; display:flex; align-items:center; gap:.6rem; }
.ai-brand-logo{ height:28px; width:auto; display:block; filter: drop-shadow(0 2px 10px rgba(0,0,0,.35)); }
.ai-sub{
  display: inline-block;
  margin-left: .5rem;
  font-size: .75rem;
  color: var(--ai-muted);
  vertical-align: middle;
}

.ai-dot{
  width: 10px; height: 10px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--ai-accent), var(--ai-accent2));
  box-shadow: 0 0 18px rgba(124,58,237,0.6);
  display: inline-block;
}

.ai-sidebar{
  position: fixed;
  top: 54px;
  right: 0;
  width: 280px;
  bottom: 0;
  border-left: 1px solid var(--ai-border);
  background: rgba(10,14,24,0.62);
  backdrop-filter: blur(12px);
}

.ai-side-inner{
  height: 100%;
  display: flex;
  flex-direction: column;
  padding: 1rem;
  gap: .25rem;
}

/* Keep the footer always visible and allow the menu to scroll on smaller screens */
.ai-side-scroll{
  flex: 1 1 auto;
  overflow-y: auto;
  overflow-x: hidden;
  padding-right: .25rem;
}

/* Tighter sidebar spacing for laptop-height viewports */
@media (max-height: 900px){
  .ai-side-inner{ padding: .75rem; }
  .ai-side-group{ margin: .55rem 0 .25rem; }
  .ai-side-link{ padding: .52rem .65rem; border-radius: 12px; }
}

.ai-side-group{
  font-size: .75rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--ai-muted);
  margin: .75rem 0 .35rem;
}

.ai-side-link{
  display: flex;
  align-items: center;
  gap: .6rem;
  padding: .65rem .75rem;
  border-radius: 14px;
  text-decoration: none;
  color: var(--ai-text);
  border: 1px solid transparent;
  background: transparent;
}
.ai-side-link i { opacity: .9; }
.ai-side-link:hover{
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.08);
}
.ai-side-link.active{
  background: rgba(124,58,237,0.14);
  border-color: rgba(124,58,237,0.35);
}

.ai-side-footer{
  padding-top: 1rem;
  border-top: 1px solid rgba(255,255,255,0.08);
}

.ai-main{
  padding-right: 280px;
}

@media (max-width: 991.98px){
  .ai-main{ padding-right: 0; }
}

.ai-panel, .ai-card{
  background: var(--ai-panel);
  border: 1px solid var(--ai-border);
  border-radius: 20px;
  box-shadow: 0 18px 40px rgba(0,0,0,0.25);
}

.ai-item{
  background: var(--ai-panel2);
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 16px;
}

.ai-input{
  background: rgba(0,0,0,0.25) !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  color: var(--ai-text) !important;
}

/* Better readability for <select> controls on dark UI */
select.ai-input{
  background-color: rgba(0,0,0,0.35) !important;
  color: rgba(255,255,255,0.92) !important;
}
select.ai-input option,
select.ai-input optgroup{
  background: rgba(10,10,18,0.98) !important;
  color: rgba(255,255,255,0.92) !important;
}
select.ai-input:disabled{
  opacity: 0.7;
}
.ai-input:focus{
  border-color: rgba(124,58,237,0.55) !important;
  box-shadow: 0 0 0 .2rem rgba(124,58,237,0.20) !important;
}

.ai-btn{
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.10);
  background: linear-gradient(135deg, var(--ai-accent), var(--ai-accent2));
}
.ai-btn:hover{
  filter: brightness(1.05);
}
.ai-btn-soft{
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.14);
  background: rgba(255,255,255,0.06);
}

.ai-chip{
  padding: .4rem .75rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.14);
  background: rgba(255,255,255,0.06);
  color: rgba(255,255,255,0.86);
  font-size: .85rem;
}

.ai-hr{
  border-color: rgba(255,255,255,0.12);
  opacity: 1;
}

.table-dark{
  --bs-table-bg: transparent;
  --bs-table-striped-bg: rgba(255,255,255,0.04);
  --bs-table-hover-bg: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.10);
}

.ai-modal{
  background: rgba(12,16,28,0.92);
  border: 1px solid rgba(255,255,255,0.12);
  backdrop-filter: blur(12px);
  color: var(--ai-text);
}

.ai-offcanvas{
  background: rgba(12,16,28,0.92);
  color: var(--ai-text);
  border-left: 1px solid rgba(255,255,255,0.12);
}
.ai-toast{
  background: rgba(12,16,28,0.92);
  color: var(--ai-text);
  border: 1px solid rgba(255,255,255,0.12);
  backdrop-filter: blur(12px);
}
.ai-toast .toast-header{
  background: rgba(255,255,255,0.06);
  color: var(--ai-text);
  border-bottom: 1px solid rgba(255,255,255,0.10);
}

/* --- Readability & contrast improvements --- */
.text-muted{ color: var(--ai-muted) !important; }
.form-label{ color: rgba(255,255,255,0.88) !important; font-weight: 500; }
.small.text-muted{ color: rgba(255,255,255,0.78) !important; }
.ai-input::placeholder{ color: rgba(255,255,255,0.55) !important; }

/* Links on dark background */
a{ color: rgba(6,182,212,0.95); }
a:hover{ color: rgba(255,255,255,0.95); }

/* Make auth cards more legible */
.ai-auth-card{
  background: rgba(12,16,28,0.88) !important;
  border-color: rgba(255,255,255,0.14) !important;
}
.ai-auth-card .h4, .ai-auth-card h1, .ai-auth-card h2{ color: rgba(255,255,255,0.96); }

  .ai-login-copyright{ font-size: 11px; }
}

/* AI feeling: subtle glow + animated grid */
.ai-glow{ position: relative; overflow: hidden; }
.ai-glow::before{
  content:"";
  position:absolute;
  inset:-2px;
  background: radial-gradient(circle at 20% 10%, rgba(255,255,255,0.08), transparent 40%),
              radial-gradient(circle at 80% 30%, rgba(255,255,255,0.06), transparent 45%),
              radial-gradient(circle at 50% 90%, rgba(255,255,255,0.05), transparent 55%);
  filter: blur(10px);
  opacity: 0.8;
  pointer-events:none;
}
.ai-glow::after{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.06) 1px, transparent 1px);
  background-size: 40px 40px;
  opacity: 0.12;
  animation: aiGridMove 12s linear infinite;
  pointer-events:none;
  mix-blend-mode: screen;
}
@keyframes aiGridMove{
  from{ background-position: 0 0, 0 0; }
  to{ background-position: 160px 160px, 160px 160px; }
}

/* ElevenLabs quota badge */
.ai-badge-soft{backdrop-filter:blur(6px);box-shadow:0 0 14px rgba(0,255,255,.18);} 
.ai-badge-overdraw{color:#fff !important;font-weight:700;animation:aiBadgeOverdrawPulse 2.2s ease-in-out infinite;box-shadow:0 0 0 1px rgba(255,255,255,.18),0 0 12px rgba(220,53,69,.30),0 0 24px rgba(220,53,69,.18) !important;}
@keyframes aiBadgeOverdrawPulse{0%,100%{box-shadow:0 0 0 1px rgba(255,255,255,.18),0 0 12px rgba(220,53,69,.30),0 0 24px rgba(220,53,69,.18) !important;}50%{box-shadow:0 0 0 1px rgba(255,255,255,.22),0 0 18px rgba(220,53,69,.42),0 0 34px rgba(220,53,69,.24) !important;}}


/* Changelog modal enhancements */
.ai-changelog-item.ai-changelog-new{
  background: rgba(13,110,253,.08);
  border: 1px solid rgba(13,110,253,.18);
  border-radius: 12px;
  padding: 8px 10px;
}
.ai-changelog-item .ai-new-badge{
  vertical-align: middle;
}


/* Wish Studio API guide readability */
.wish-api-guide, .wish-api-guide * {
  text-shadow: 0 1px 1px rgba(0,0,0,.35);
}
.wish-api-guide .text-muted,
.wish-api-guide .small.text-muted,
.wish-api-guide .text-muted.small {
  color: rgba(255,255,255,.78) !important;
}
.wish-api-guide code {
  color: rgba(255,255,255,.92);
}
.wish-api-guide a {
  color: rgba(207,226,255,.95);
}

/* --- Modal readability (fix "glass" background) --- */
.modal-backdrop.show{
  opacity: .70;
}

.modal-content{
  background: rgba(10, 14, 30, 0.96) !important;
  border: 1px solid var(--ai-border) !important;
  box-shadow: 0 18px 60px rgba(0,0,0,.55);
  backdrop-filter: none !important;
}

.modal-header, .modal-footer{
  border-color: rgba(255,255,255,0.10) !important;
}

.modal-title{
  color: rgba(255,255,255,0.95);
}

.modal-body{
  color: rgba(255,255,255,0.90);
}

.modal .form-control, .modal select, .modal textarea{
  background: rgba(255,255,255,0.06) !important;
  color: rgba(255,255,255,0.92) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
}
.modal .form-control::placeholder, .modal textarea::placeholder{
  color: rgba(255,255,255,0.55);
}


/* Docs Markdown */
.md-body .md-h1,.md-body .md-h2,.md-body .md-h3,.md-body .md-h4,.md-body .md-h5,.md-body .md-h6{margin-top:1rem;margin-bottom:.5rem}
.md-body .md-p{margin-bottom:.75rem}
.md-body .md-code{background:rgba(0,0,0,.05);padding:.75rem;border-radius:.75rem;overflow:auto}
.md-body .md-inline-code{background:rgba(0,0,0,.08);padding:.1rem .35rem;border-radius:.35rem}
.md-body .md-ul,.md-body .md-ol{margin-bottom:.75rem;padding-left:1.25rem}



/* Docs: make documentation readable on dark theme */
.ai-docs .ai-card,
.ai-docs .card{
  background: #ffffff;
  color: #111111;
  border-color: rgba(0,0,0,0.10);
  box-shadow: 0 12px 28px rgba(0,0,0,0.10);
}
.ai-docs .text-muted{ color: #5b616a !important; }
.ai-docs a{ color: #0b5ed7; }
.ai-docs .list-group-item{
  background: #ffffff;
  color: #111111;
  border-color: rgba(0,0,0,0.10);
}
.ai-docs .list-group-item.active{
  background: #0b5ed7;
  border-color: #0b5ed7;
  color: #ffffff;
}
.ai-docs .ai-markdown h1,
.ai-docs .ai-markdown h2,
.ai-docs .ai-markdown h3{ color: #0f172a; }
.ai-docs .ai-markdown p,
.ai-docs .ai-markdown li{ color: #111111; }
.ai-docs .ai-markdown code{
  background: rgba(0,0,0,0.06);
  padding: 0.1rem 0.25rem;
  border-radius: 6px;
}
.ai-docs .ai-markdown pre{
  background: #0b1220;
  color: #e5e7eb;
  border-radius: 14px;
  padding: 12px 14px;
  overflow: auto;
}
.ai-docs .ai-markdown pre code{
  background: transparent;
  padding: 0;
}



body, p, li, td, th, label, .form-text, .text-muted, .small, .btn, .form-control, .form-select, .input-group-text {
  font-weight: 450;
}

.text-muted,
.small,
.form-text,
.ai-readable-subtitle{
  color: rgba(255,255,255,0.84) !important;
}

.ai-panel p,
.ai-panel li,
.ai-panel .table,
.ai-panel .form-label,
.ai-panel .form-text,
.ai-panel .text-muted,
.ai-card p,
.ai-card li{
  line-height: 1.6;
}

.ai-panel .form-label,
.ai-card .form-label,
label{
  font-weight: 600;
  margin-bottom: .45rem;
}

.ai-input,
.form-control,
.form-select,
textarea{
  font-size: .98rem;
  line-height: 1.5;
}

.table > :not(caption) > * > *{
  padding: .8rem .85rem;
  vertical-align: middle;
}

.ai-health-stack > * + *{ margin-top: .85rem; }
.ai-health-card{
  background: rgba(255,255,255,0.055);
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 18px;
  padding: 1rem;
}
.ai-health-card.ok{ border-color: rgba(34,197,94,0.35); box-shadow: inset 0 0 0 1px rgba(34,197,94,0.12); }
.ai-health-card.bad{ border-color: rgba(239,68,68,0.35); box-shadow: inset 0 0 0 1px rgba(239,68,68,0.10); }
.ai-health-card.warn{ border-color: rgba(245,158,11,0.35); box-shadow: inset 0 0 0 1px rgba(245,158,11,0.10); }
.ai-health-title{ font-size: 1rem; font-weight: 700; margin-bottom: .25rem; }
.ai-health-meta{ font-size: .88rem; color: rgba(255,255,255,0.8); }
.ai-health-kv{ display: grid; grid-template-columns: 150px 1fr; gap: .35rem .85rem; }
.ai-health-kv .k{ color: rgba(255,255,255,0.72); }
.ai-health-kv .v{ color: rgba(255,255,255,0.96); word-break: break-word; }
.ai-status-dot{ width: 10px; height: 10px; border-radius: 999px; display: inline-block; }
.ai-status-dot.ok{ background: #22c55e; box-shadow: 0 0 12px rgba(34,197,94,.6); }
.ai-status-dot.bad{ background: #ef4444; box-shadow: 0 0 12px rgba(239,68,68,.6); }
.ai-status-dot.warn{ background: #f59e0b; box-shadow: 0 0 12px rgba(245,158,11,.6); }
.ai-pretty-code{
  white-space: pre-wrap;
  background: rgba(0,0,0,.28);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 14px;
  padding: .9rem 1rem;
  font-size: .92rem;
  line-height: 1.55;
}
@media (max-width: 767.98px){
  html, body{ font-size: 15px; }
  .ai-health-kv{ grid-template-columns: 1fr; }
}

/* Dashboard redesign v1.35 */
.ai-dashboard-page{ color:#1f2a37; }
.ai-dashboard-page .text-muted{ color:#6b7280 !important; }
.ai-dash-hero{
  position:relative;
  overflow:hidden;
  border-radius:28px;
  padding:2rem 2rem;
  color:#fff;
  background:linear-gradient(90deg,#0d1b3d 0%,#10244c 55%,#172c4f 100%);
  box-shadow:0 20px 48px rgba(13,27,61,.18);
}
.ai-dash-hero:after{
  content:"";
  position:absolute; inset:auto -80px -60px auto;
  width:320px; height:320px; pointer-events:none;
  background:radial-gradient(circle,rgba(255,180,0,.30) 0%,rgba(255,180,0,.08) 35%,rgba(255,180,0,0) 72%);
}
.ai-dash-kicker{ font-size:.82rem; letter-spacing:.08em; text-transform:uppercase; color:rgba(255,255,255,.72); margin-bottom:.35rem; }
.ai-dash-title{ font-size:2rem; font-weight:800; letter-spacing:-.02em; }
.ai-dash-lead{ max-width:760px; color:rgba(255,255,255,.84); font-size:1rem; line-height:1.65; }
.ai-dash-hero-aside{ display:flex; flex-wrap:wrap; gap:.75rem; justify-content:flex-end; align-items:flex-start; position:relative; z-index:1; }
.ai-dash-hero-badge{
  padding:.7rem 1rem; border-radius:999px; font-size:.92rem; font-weight:600;
  background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); color:#fff;
  backdrop-filter: blur(6px);
}
.ai-dash-cta{ border-radius:14px; font-weight:700; padding:.8rem 1.15rem; }
.ai-dash-cta-secondary{ border-radius:14px; padding:.8rem 1.15rem; }
.ai-dash-card, .ai-dash-stat-card{
  background:#fff; border:1px solid #e5e7eb; border-radius:22px; padding:1.35rem 1.4rem;
  box-shadow:0 12px 32px rgba(15,23,42,.06);
}
.ai-dash-stat-card{ height:100%; }
.ai-dash-card-head{ display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; margin-bottom:1rem; }
.ai-dash-section-title{ font-size:1.15rem; font-weight:800; color:#1f2a37; margin:0; }
.ai-dash-section-subtitle{ color:#7b8794; font-size:.92rem; margin-top:.2rem; }
.ai-dash-stat-top{ display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1rem; }
.ai-dash-stat-label{ font-size:.92rem; color:#7b8794; margin-bottom:.7rem; }
.ai-dash-stat-value{ font-size:2.1rem; line-height:1; font-weight:800; color:#14213d; letter-spacing:-.03em; }
.ai-dash-stat-note{ margin-top:.55rem; font-size:.9rem; font-weight:600; }
.ai-dash-stat-note.ok{ color:#059669; }
.ai-dash-stat-note.warn{ color:#d97706; }
.ai-dash-stat-note.bad{ color:#dc2626; }
.ai-dash-stat-icon{ width:44px; height:44px; display:flex; align-items:center; justify-content:center; border-radius:14px; background:#fff7e8; color:#f59e0b; font-size:1.1rem; }
.ai-dash-activity-list > * + *{ margin-top:.75rem; }
.ai-dash-activity-item{ display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; padding:.9rem 0; border-bottom:1px solid #eef2f7; }
.ai-dash-activity-item:last-child{ border-bottom:none; }
.ai-dash-activity-main{ display:flex; gap:.9rem; min-width:0; }
.ai-dash-activity-icon{ width:42px; height:42px; border-radius:14px; background:#f3f4f6; display:flex; align-items:center; justify-content:center; color:#64748b; flex:0 0 auto; }
.ai-dash-activity-title{ font-weight:700; color:#1f2937; }
.ai-dash-activity-meta{ color:#64748b; font-size:.92rem; }
.ai-dash-activity-time{ color:#94a3b8; font-size:.9rem; white-space:nowrap; }
.ai-dash-week-wrap{ display:grid; gap:1rem; }
.ai-dash-week-chart{ display:grid; grid-template-columns:repeat(5,1fr); gap:.85rem; align-items:end; min-height:180px; }
.ai-dash-week-col{ text-align:center; }
.ai-dash-week-bar-wrap{ height:120px; display:flex; align-items:flex-end; justify-content:center; }
.ai-dash-week-bar{
  width:24px; border-radius:999px; background:linear-gradient(180deg,#fcd34d 0%, #f59e0b 100%);
  box-shadow: inset 0 8px 12px rgba(255,255,255,.35), 0 6px 16px rgba(245,158,11,.28);
  min-height:18px;
}
.ai-dash-week-label{ font-weight:700; color:#64748b; margin-top:.55rem; }
.ai-dash-week-value{ font-size:.82rem; color:#94a3b8; }
.ai-dash-legend{ display:grid; gap:.5rem; }
.ai-dash-legend-item{ display:flex; align-items:center; gap:.55rem; color:#475569; font-size:.92rem; }
.ai-dash-legend-dot{ width:8px; height:8px; border-radius:999px; display:inline-block; }
.ai-dash-legend-dot.ok{ background:#10b981; }
.ai-dash-legend-dot.warn{ background:#f59e0b; }
.ai-dash-legend-dot.bad{ background:#ef4444; }
.ai-dash-quicklink{
  display:flex; flex-direction:column; gap:.8rem; align-items:flex-start; justify-content:center;
  background:#fff; border:1px solid #e5e7eb; border-radius:20px; padding:1.1rem 1rem; text-decoration:none; color:#111827;
  box-shadow:0 10px 28px rgba(15,23,42,.05); height:100%; transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.ai-dash-quicklink:hover{ transform:translateY(-2px); box-shadow:0 16px 34px rgba(15,23,42,.08); border-color:#d1d5db; color:#111827; }
.ai-dash-quickicon{ width:52px; height:52px; display:flex; align-items:center; justify-content:center; border-radius:16px; font-size:1.2rem; }
.ai-dash-quicktext{ font-weight:700; }
.ai-dashboard-page .ai-health-card{
  background:#fff; color:#1f2937; border:1px solid #e5e7eb; border-radius:18px; box-shadow:none;
}
.ai-dashboard-page .ai-health-card.ok{ border-color:rgba(16,185,129,.22); box-shadow:inset 0 0 0 1px rgba(16,185,129,.05); }
.ai-dashboard-page .ai-health-card.bad{ border-color:rgba(239,68,68,.22); box-shadow:inset 0 0 0 1px rgba(239,68,68,.05); }
.ai-dashboard-page .ai-health-card.warn{ border-color:rgba(245,158,11,.22); box-shadow:inset 0 0 0 1px rgba(245,158,11,.05); }
.ai-dashboard-page .ai-health-title{ color:#111827; }
.ai-dashboard-page .ai-health-meta{ color:#64748b; }
.ai-dashboard-page .ai-health-kv .k{ color:#6b7280; }
.ai-dashboard-page .ai-health-kv .v{ color:#111827; }
.ai-dashboard-page .ai-pretty-code{ background:#f8fafc; border-color:#e5e7eb; color:#334155; }
.ai-dashboard-page .badge.bg-danger{ background:#fee2e2 !important; color:#b91c1c !important; border:1px solid #fecaca; }
.ai-dashboard-page .badge.bg-success{ background:#dcfce7 !important; color:#166534 !important; border:1px solid #bbf7d0; }
.ai-dashboard-page .badge.bg-warning{ background:#fef3c7 !important; color:#92400e !important; border:1px solid #fde68a; }
@media (max-width: 991.98px){
  .ai-dash-hero{ padding:1.5rem; }
  .ai-dash-title{ font-size:1.6rem; }
  .ai-dash-hero-aside{ justify-content:flex-start; }
}
@media (max-width: 767.98px){
  .ai-dash-week-chart{ grid-template-columns:repeat(5, minmax(0,1fr)); gap:.55rem; }
  .ai-dash-stat-value{ font-size:1.75rem; }
  .ai-dash-card,.ai-dash-stat-card{ border-radius:18px; padding:1rem; }
  .ai-dash-activity-item{ flex-direction:column; }
}


/* =========================
   SDNS Desk login screen
   ========================= */
body.sdns-login-bg{
  min-height:100vh;
  background:
    linear-gradient(135deg, #0f4d88 0%, #0a67a8 28%, #1180bf 52%, #0b5c9d 74%, #083e73 100%);
  color:#ffffff;
  overflow:hidden;
}

body.sdns-login-bg::before,
body.sdns-login-bg::after{
  content:"";
  position:fixed;
  inset:-12%;
  pointer-events:none;
}

body.sdns-login-bg::before{
  background:
    linear-gradient(128deg, transparent 0 44%, rgba(255,255,255,0.07) 44% 46%, transparent 46% 100%),
    linear-gradient(128deg, transparent 0 56%, rgba(255,255,255,0.08) 56% 58%, transparent 58% 100%),
    linear-gradient(128deg, transparent 0 68%, rgba(255,255,255,0.05) 68% 70%, transparent 70% 100%);
  transform:translateX(10%) skewX(-12deg);
  opacity:.95;
}

body.sdns-login-bg::after{
  background:
    radial-gradient(circle at 78% 24%, rgba(255,255,255,0.12), transparent 26%),
    radial-gradient(circle at 22% 82%, rgba(255,255,255,0.10), transparent 24%);
  mix-blend-mode:screen;
  opacity:.8;
}

body.sdns-login-bg main{
  position:relative;
  z-index:1;
}

.sdns-login-screen{
  position:relative;
  width:min(100%, 520px);
  min-height:560px;
}

.sdns-login-brand{
  position:fixed;
  top:1.25rem;
  left:1.5rem;
  display:flex;
  align-items:center;
  gap:.6rem;
  font-size:.95rem;
  letter-spacing:.04em;
  color:rgba(255,255,255,.88);
  text-shadow:0 1px 1px rgba(0,0,0,.28);
}

.sdns-login-brand-dot{
  width:10px;
  height:10px;
  border-radius:999px;
  background:rgba(255,255,255,.9);
  box-shadow:0 0 14px rgba(255,255,255,.45);
}

.sdns-login-center{
  width:min(100%, 360px);
  margin:0 auto;
}

.sdns-login-userpic{
  width:112px;
  height:112px;
  margin:0 auto 1.35rem;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:radial-gradient(circle at 50% 38%, rgba(255,255,255,0.26), rgba(255,255,255,0.08) 64%, rgba(3,22,52,0.34) 100%);
  border:1px solid rgba(255,255,255,0.28);
  box-shadow:0 10px 26px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.16);
  overflow:hidden;
}

.sdns-login-avatar{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  display:none;
  padding:10px;
  filter:drop-shadow(0 4px 12px rgba(0,0,0,.24));
}

.sdns-login-userpic.has-avatar .sdns-login-avatar{ display:block; }
.sdns-login-userpic.has-avatar .sdns-login-avatar-fallback{ display:none; }

.sdns-login-avatar-fallback{
  font-size:3rem;
  color:rgba(255,255,255,0.96);
  text-shadow:0 1px 1px rgba(0,0,0,.28);
}

.sdns-login-heading h1{
  margin:0;
  font-size:2rem;
  font-weight:400;
  letter-spacing:.01em;
  text-shadow:0 1px 1px rgba(0,0,0,.22);
}

.sdns-login-heading p{
  margin:.4rem 0 1.6rem;
  color:rgba(255,255,255,.86);
  font-size:.98rem;
}

.sdns-login-form{
  display:flex;
  flex-direction:column;
  gap:.95rem;
}

.sdns-field .form-label{
  font-size:.86rem;
  color:rgba(255,255,255,.86);
  margin-bottom:.35rem;
}

.sdns-input{
  min-height:44px;
  border-radius:2px;
  border:1px solid rgba(0,0,0,.34);
  background:rgba(245,249,255,.97);
  color:#0f172a;
  box-shadow:inset 0 1px 1px rgba(255,255,255,.85), inset 0 -1px 0 rgba(0,0,0,.06);
}

.sdns-input:focus{
  background:#ffffff;
  border-color:#003f75;
  box-shadow:0 0 0 1px rgba(255,255,255,.46), 0 0 0 2px rgba(0,72,135,.55);
}

.sdns-input-static{
  background:rgba(223,235,247,.95);
  color:#163657;
  font-weight:600;
}

.sdns-login-button{
  margin-top:.35rem;
  min-height:42px;
  border-radius:3px;
  color:#ffffff;
  border:1px solid rgba(0,0,0,.42);
  background:linear-gradient(180deg, #2a8bdb 0%, #1d74bf 48%, #0f5f9f 52%, #0a578f 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.32),
    inset 0 -1px 0 rgba(0,0,0,.18),
    0 2px 4px rgba(0,0,0,.18);
  text-shadow:0 -1px 0 rgba(0,0,0,.24);
}

.sdns-login-button:hover,
.sdns-login-button:focus{
  color:#fff;
  background:linear-gradient(180deg, #3597ea 0%, #2280cf 48%, #126aaf 52%, #0d5d98 100%);
}

.sdns-login-button:active{
  transform:translateY(1px);
  box-shadow:inset 0 2px 4px rgba(0,0,0,.24), 0 1px 1px rgba(0,0,0,.16);
  background:linear-gradient(180deg, #0f5f9f 0%, #1d74bf 100%);
}

.sdns-login-alert{
  border-radius:4px;
}

.sdns-login-bottom-left{
  position:fixed;
  left:1.5rem;
  bottom:1.4rem;
  color:rgba(255,255,255,.96);
  text-shadow:0 1px 1px rgba(0,0,0,.28);
}

.sdns-login-clock{
  font-size:2.5rem;
  line-height:1;
  font-weight:300;
}

.sdns-login-date{
  margin-top:.35rem;
  font-size:.95rem;
  color:rgba(255,255,255,.88);
}

.sdns-login-bottom-right{
  position:fixed;
  right:1.35rem;
  bottom:1.25rem;
  display:flex;
  gap:.9rem;
  font-size:1.1rem;
  color:rgba(255,255,255,.92);
  text-shadow:0 1px 1px rgba(0,0,0,.28);
}

.sdns-status-icon{
  opacity:.96;
}

.ai-login-clock,
.ai-login-copyright,
.ai-login-copyright-mobile,
.win10-login-screen,
.win10-login-shell,
.win10-login-panel{
  display:none !important;
}

@media (max-width: 575.98px){
  body.sdns-login-bg main{ padding:1.25rem !important; }
  .sdns-login-center{ width:100%; }
  .sdns-login-userpic{ width:92px; height:92px; font-size:2.5rem; }
  .sdns-login-heading h1{ font-size:1.75rem; }
  .sdns-login-bottom-left{ left:1.1rem; bottom:1.1rem; }
  .sdns-login-clock{ font-size:2.2rem; }
  .sdns-login-date{ font-size:.9rem; }
  .sdns-login-bottom-right{ right:1rem; bottom:1rem; gap:.75rem; font-size:1rem; }
}


/* ===== SDNS DESKTOP SHELL ===== */
body.sdns-desktop-bg{
  min-height:100vh;
  background:
    radial-gradient(circle at 22% 20%, rgba(91,180,255,.24), transparent 22%),
    radial-gradient(circle at 78% 16%, rgba(255,255,255,.13), transparent 18%),
    linear-gradient(135deg, #0b3f79 0%, #0d4d94 28%, #1467b3 52%, #0c5a9d 100%);
  overflow-x:hidden;
}
body.sdns-desktop-bg::before,
body.sdns-desktop-bg::after{
  content:'';
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
}
body.sdns-desktop-bg::before{
  background:
    linear-gradient(115deg, rgba(255,255,255,.16) 0, rgba(255,255,255,.03) 18%, transparent 18%) 0 0 / 50% 100% no-repeat,
    linear-gradient(205deg, rgba(255,255,255,.16) 0, rgba(255,255,255,.02) 22%, transparent 22%) 100% 0 / 50% 100% no-repeat;
  mix-blend-mode:screen;
  opacity:.5;
}
body.sdns-desktop-bg::after{
  background: linear-gradient(to top, rgba(0,0,0,.30), transparent 38%);
}
.sdns-desktop-shell{ position:relative; min-height:100vh; padding:1rem 1rem 4.75rem; z-index:1; }
.sdns-desktop-wallpaper{ position:fixed; inset:0; pointer-events:none; }
.sdns-desktop-icons{
  position:fixed; left:1.1rem; top:1.1rem; z-index:3; width:112px; display:flex; flex-direction:column; gap:.55rem;
}
.sdns-desktop-icon{
  display:flex; flex-direction:column; align-items:center; gap:.35rem; padding:.55rem .35rem; color:#fff; text-decoration:none; border-radius:10px;
  text-align:center; font-size:.78rem; text-shadow:0 1px 2px rgba(0,0,0,.45); border:1px solid transparent;
}
.sdns-desktop-icon i{ font-size:1.55rem; line-height:1; }
.sdns-desktop-icon:hover, .sdns-desktop-icon.active{ background:rgba(255,255,255,.14); border-color:rgba(255,255,255,.22); color:#fff; }
.sdns-desktop-main{ position:relative; z-index:2; padding-left:132px; padding-top:.2rem; padding-right:0; }
.sdns-app-window{
  min-height:calc(100vh - 6.4rem); border-radius:8px; overflow:hidden;
  background:rgba(239,244,251,.92); color:#0e2338;
  box-shadow:0 24px 60px rgba(0,0,0,.24), 0 4px 18px rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.35);
}
.sdns-window-titlebar{
  height:48px; display:flex; align-items:center; justify-content:space-between; padding:0 .8rem 0 1rem;
  background:linear-gradient(to bottom, rgba(249,252,255,.95), rgba(226,235,247,.88)); border-bottom:1px solid rgba(0,0,0,.09);
}
.sdns-window-title-left{ display:flex; align-items:center; gap:.75rem; min-width:0; }
.sdns-window-appicon{ width:30px; height:30px; border-radius:6px; display:inline-flex; align-items:center; justify-content:center; background:#1a73bf; color:#fff; box-shadow: inset 0 1px 0 rgba(255,255,255,.28); }
.sdns-window-kicker{ font-size:.66rem; letter-spacing:.08em; text-transform:uppercase; color:#516579; }
.sdns-window-title{ font-size:1rem; font-weight:600; color:#10273c; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.sdns-window-controls{ display:flex; align-items:center; gap:.45rem; }
.sdns-window-controls span{ width:12px; height:12px; border-radius:50%; background:#dce4ee; box-shadow:inset 0 1px 0 rgba(255,255,255,.7), 0 0 0 1px rgba(0,0,0,.06); }
.sdns-window-controls span.close{ background:#e88f8f; }
.sdns-window-content{ min-height:calc(100vh - 9.4rem); background:linear-gradient(to bottom, rgba(255,255,255,.82), rgba(235,241,248,.96)); }

.sdns-taskbar{
  position:fixed; left:0; right:0; bottom:0; height:48px; z-index:30; display:flex; align-items:center; justify-content:space-between; gap:1rem;
  padding:0 .65rem; background:linear-gradient(to bottom, rgba(25,35,49,.94), rgba(12,19,30,.97));
  border-top:1px solid rgba(255,255,255,.12); box-shadow:0 -6px 18px rgba(0,0,0,.22);
}
.sdns-taskbar-left, .sdns-taskbar-right{ display:flex; align-items:center; gap:.4rem; min-width:0; }
.sdns-start-button, .sdns-taskbar-icon, .sdns-taskbar-app, .sdns-taskbar-power{
  height:36px; min-width:36px; padding:0 .8rem; border:none; border-radius:4px; text-decoration:none;
  display:inline-flex; align-items:center; justify-content:center; gap:.45rem; color:#f3f7fb;
  background:linear-gradient(to bottom, rgba(255,255,255,.12), rgba(255,255,255,.04));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18), inset 0 -1px 0 rgba(0,0,0,.34), 0 1px 0 rgba(0,0,0,.24);
}
.sdns-start-button:hover, .sdns-taskbar-icon:hover, .sdns-taskbar-app:hover, .sdns-taskbar-power:hover{ background:linear-gradient(to bottom, rgba(255,255,255,.2), rgba(255,255,255,.07)); color:#fff; }
.sdns-start-button:active, .sdns-taskbar-icon:active, .sdns-taskbar-app:active, .sdns-taskbar-power:active{ transform:translateY(1px); box-shadow: inset 0 2px 4px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.08); }
.sdns-start-logo{ font-size:1rem; }
.sdns-taskbar-search{
  height:36px; min-width:220px; max-width:320px; padding:0 .9rem; border-radius:4px; text-decoration:none; color:#dbe8f5;
  background:linear-gradient(to bottom, rgba(255,255,255,.16), rgba(255,255,255,.07)); border:1px solid rgba(255,255,255,.11);
  display:none; align-items:center; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.sdns-taskbar-pill{ height:32px; padding:0 .7rem; border-radius:4px; display:inline-flex; align-items:center; color:#e7f0fb; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.1); }
.sdns-taskbar-user{ height:36px; padding:0 .55rem; border-radius:4px; text-decoration:none; color:#fff; display:inline-flex; align-items:center; gap:.5rem; }
.sdns-taskbar-user:hover{ background:rgba(255,255,255,.08); color:#fff; }
.sdns-taskbar-avatar{ width:26px; height:26px; border-radius:50%; overflow:hidden; display:inline-flex; align-items:center; justify-content:center; background:rgba(255,255,255,.14); }
.sdns-taskbar-avatar img{ width:100%; height:100%; object-fit:cover; }
.sdns-taskbar-status{ gap:.55rem; color:#e6eef8; }
.sdns-taskbar-clock{ min-width:92px; text-align:right; color:#fff; line-height:1.05; font-size:.73rem; }
.sdns-taskbar-clock #sdnsDesktopClock{ font-size:.9rem; font-weight:600; }

.sdns-start-menu{
  position:fixed; left:.8rem; bottom:3.35rem; width:min(560px, calc(100vw - 1.6rem)); max-height:72vh; overflow:auto; z-index:28;
  border-radius:6px; padding:1rem; background:linear-gradient(to bottom, rgba(26,36,53,.96), rgba(14,22,34,.98));
  border:1px solid rgba(255,255,255,.12); box-shadow:0 20px 46px rgba(0,0,0,.35); opacity:0; transform:translateY(12px) scale(.985);
  pointer-events:none; transition:opacity .18s ease, transform .18s ease;
}
body.sdns-start-open .sdns-start-menu{ opacity:1; transform:translateY(0) scale(1); pointer-events:auto; }
.sdns-start-menu-head{ display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; margin-bottom:1rem; color:#fff; }
.sdns-start-kicker{ font-size:.74rem; letter-spacing:.09em; text-transform:uppercase; color:#a5bfda; }
.sdns-start-title{ font-size:1.15rem; font-weight:600; }
.sdns-start-build{ padding:.35rem .55rem; border-radius:4px; background:rgba(255,255,255,.1); color:#e7f1fb; font-size:.82rem; }
.sdns-start-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(150px, 1fr)); gap:.75rem; }
.sdns-start-tile{
  min-height:104px; border-radius:4px; padding:.9rem; text-decoration:none; color:#fff;
  display:flex; flex-direction:column; justify-content:space-between; gap:.55rem;
  background:linear-gradient(135deg, rgba(24,120,210,.9), rgba(16,82,149,.95));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18), inset 0 -1px 0 rgba(0,0,0,.18);
}
.sdns-start-tile i{ font-size:1.45rem; }
.sdns-start-tile:hover, .sdns-start-tile.active{ color:#fff; filter:brightness(1.08); }
.sdns-start-tile:nth-child(3n){ background:linear-gradient(135deg, rgba(40,147,112,.92), rgba(22,108,81,.95)); }
.sdns-start-tile:nth-child(4n){ background:linear-gradient(135deg, rgba(187,88,34,.94), rgba(157,62,14,.97)); }
.sdns-start-tile:nth-child(5n){ background:linear-gradient(135deg, rgba(121,72,180,.94), rgba(88,47,139,.97)); }

body[data-boot-desktop="1"] .sdns-app-window,
body[data-boot-desktop="1"] .sdns-desktop-icons,
body[data-boot-desktop="1"] .sdns-taskbar{ opacity:0; transform:scale(.992); animation:sdnsDesktopReveal .65s ease .95s forwards; }
@keyframes sdnsDesktopReveal{ to{ opacity:1; transform:none; } }
.sdns-boot-overlay{
  position:fixed; inset:0; z-index:50; display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg, #0f4280 0%, #1164b1 100%);
  animation:sdnsBootFade 1.3s ease .8s forwards;
}
@keyframes sdnsBootFade{ to{ opacity:0; visibility:hidden; } }
.sdns-boot-core{ text-align:center; color:#fff; }
.sdns-boot-logo{ font-size:3rem; margin-bottom:.85rem; }
.sdns-boot-title{ font-size:1.6rem; font-weight:600; letter-spacing:.04em; }
.sdns-boot-sub{ opacity:.82; margin-top:.35rem; }
.sdns-boot-loader{ display:flex; justify-content:center; gap:.45rem; margin-top:1rem; }
.sdns-boot-loader span{ width:8px; height:8px; border-radius:50%; background:#fff; animation:sdnsBootDot 1s ease-in-out infinite; }
.sdns-boot-loader span:nth-child(2){ animation-delay:.15s; }
.sdns-boot-loader span:nth-child(3){ animation-delay:.3s; }
@keyframes sdnsBootDot{ 0%,80%,100%{ transform:scale(.7); opacity:.45; } 40%{ transform:scale(1); opacity:1; } }
body.sdns-login-submitting .sdns-login-screen{ opacity:.45; transform:scale(.99); transition:opacity .18s ease, transform .18s ease; }

body.sdns-desktop-bg .ai-card,
body.sdns-desktop-bg .ai-dash-card,
body.sdns-desktop-bg .ai-dash-hero,
body.sdns-desktop-bg .ai-modal,
body.sdns-desktop-bg .ai-toast,
body.sdns-desktop-bg .offcanvas{
  background:rgba(255,255,255,.72);
  color:#10273c;
  border:1px solid rgba(0,0,0,.08);
  box-shadow:0 8px 26px rgba(0,0,0,.08);
}
body.sdns-desktop-bg .text-muted, body.sdns-desktop-bg .ai-dash-section-subtitle, body.sdns-desktop-bg .ai-dash-kicker{ color:#60758a !important; }
body.sdns-desktop-bg .ai-dash-title,
body.sdns-desktop-bg .ai-dash-section-title,
body.sdns-desktop-bg h1, body.sdns-desktop-bg h2, body.sdns-desktop-bg h3, body.sdns-desktop-bg h4{ color:#10273c; }
body.sdns-desktop-bg .form-control, body.sdns-desktop-bg .form-select{ background:#fff; color:#10273c; border-color:#bdd0e1; }
body.sdns-desktop-bg .btn-primary{
  background:linear-gradient(to bottom, #48a3ff, #1a73bf); border-color:#125995; box-shadow: inset 0 1px 0 rgba(255,255,255,.35), inset 0 -1px 0 rgba(0,0,0,.15), 0 1px 0 rgba(255,255,255,.35);
}
body.sdns-desktop-bg .table-dark{ --bs-table-bg: rgba(255,255,255,.78); --bs-table-color:#10273c; --bs-table-striped-bg: rgba(17,99,171,.05); --bs-table-hover-bg: rgba(17,99,171,.08); border-color:rgba(0,0,0,.08); }
body.sdns-desktop-bg .ai-offcanvas{ background:linear-gradient(to bottom, rgba(25,35,49,.98), rgba(15,22,34,.99)); color:#fff; }

@media (min-width: 992px){ .sdns-taskbar-search{ display:inline-flex; } }
@media (max-width: 991.98px){
  .sdns-desktop-shell{ padding:.7rem .7rem 4.2rem; }
  .sdns-desktop-main{ padding-left:0; }
  .sdns-app-window{ min-height:calc(100vh - 5.5rem); }
  .sdns-window-content{ min-height:calc(100vh - 8rem); }
  .sdns-taskbar-pill{ display:none; }
  .sdns-taskbar-search{ display:none; }
}
@media (max-width: 575.98px){
  .sdns-window-titlebar{ padding:0 .65rem 0 .75rem; }
  .sdns-window-title{ font-size:.92rem; }
  .sdns-taskbar{ padding:0 .35rem; }
  .sdns-taskbar-clock{ min-width:74px; font-size:.66rem; }
}


/* --- SDNS Desktop shell --- */
.sdns-desktop-shell{position:relative;min-height:100vh;overflow:hidden;background:linear-gradient(180deg,#0f4c81 0%,#0d3c67 36%,#0b2e52 100%);} 
.sdns-desktop-wallpaper{position:absolute;inset:0;background:radial-gradient(1200px 500px at 50% 10%,rgba(117,206,255,.24),transparent 60%),linear-gradient(135deg,rgba(255,255,255,.11),transparent 36%),linear-gradient(225deg,rgba(255,255,255,.05),transparent 28%),linear-gradient(180deg,rgba(6,26,49,.14),rgba(6,26,49,.42));pointer-events:none;}
.sdns-desktop-wallpaper::before{content:"";position:absolute;inset:0;background:linear-gradient(130deg,transparent 0 42%,rgba(163,225,255,.12) 42% 50%,transparent 50% 100%),linear-gradient(310deg,transparent 0 47%,rgba(255,255,255,.08) 47% 53%,transparent 53% 100%);mix-blend-mode:screen;opacity:.7;}
.sdns-desktop-main{padding:28px 26px 90px 150px;position:relative;z-index:2;overflow:visible;}
.sdns-app-window{position:relative;min-height:calc(100vh - 145px);border:1px solid rgba(255,255,255,.35);background:rgba(233,240,248,.86);box-shadow:0 26px 60px rgba(0,0,0,.28),0 3px 0 rgba(255,255,255,.45) inset;border-radius:6px;overflow:hidden;backdrop-filter:blur(14px);}
.sdns-app-window.is-maximized{position:fixed!important;left:8px!important;top:8px!important;right:8px;bottom:58px;min-height:auto;width:auto;z-index:15;}
.sdns-app-window.is-minimized,.sdns-app-window.is-closed{display:none;}
.sdns-window-titlebar{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:linear-gradient(180deg,#f5f9fe,#d9e6f3);border-bottom:1px solid rgba(11,48,82,.18);cursor:move;user-select:none;}
.sdns-window-title-left{display:flex;gap:10px;align-items:center;color:#12395c;}
.sdns-window-appicon{width:34px;height:34px;border-radius:8px;background:linear-gradient(180deg,#0c75d8,#095bb2);display:grid;place-items:center;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 8px 18px rgba(9,91,178,.28);} 
.sdns-window-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#4f7292;}
.sdns-window-title{font-size:18px;font-weight:700;color:#133a5d;}
.sdns-window-controls{display:flex;align-items:center;gap:4px;}
.sdns-window-control{width:44px;height:32px;border:0;background:transparent;position:relative;border-radius:2px;}
.sdns-window-control:hover{background:rgba(9,91,178,.12);} 
.sdns-window-control.close:hover{background:#e81123;}
.sdns-window-control::before,.sdns-window-control::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#274863;}
.sdns-window-control.close:hover::before,.sdns-window-control.close:hover::after{background:#fff;}
.sdns-window-control.is-minimize::before{width:12px;height:2px;top:58%;}
.sdns-window-control.is-maximize::before{width:12px;height:10px;border:2px solid #274863;background:transparent;}
.sdns-window-control.close::before{width:14px;height:2px;transform:translate(-50%,-50%) rotate(45deg);} 
.sdns-window-control.close::after{width:14px;height:2px;transform:translate(-50%,-50%) rotate(-45deg);} 
.sdns-window-content{color:#14212f;min-height:calc(100vh - 220px);overflow:auto;background:linear-gradient(180deg,rgba(255,255,255,.75),rgba(243,247,251,.94));}
.sdns-desktop-icons{position:absolute;left:18px;top:18px;bottom:76px;width:110px;z-index:4;display:block!important;}
.sdns-desktop-icon{position:absolute;width:82px;padding:10px 8px;border-radius:6px;display:flex;flex-direction:column;align-items:center;gap:8px;color:#fff;text-decoration:none;text-shadow:0 1px 2px rgba(0,0,0,.5);user-select:none;cursor:default;}
.sdns-desktop-icon i{font-size:30px;line-height:1;width:52px;height:52px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.04));box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 10px 22px rgba(0,0,0,.18);} 
.sdns-desktop-icon span{font-size:12px;line-height:1.2;text-align:center;word-break:break-word;}
.sdns-desktop-icon:hover,.sdns-desktop-icon.is-selected{background:rgba(255,255,255,.18);outline:1px solid rgba(255,255,255,.35);} 
.sdns-desktop-widget{position:absolute;right:22px;top:18px;width:320px;z-index:6;background:rgba(16,42,74,.56);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(14px);border-radius:14px;padding:16px 18px;box-shadow:0 22px 50px rgba(0,0,0,.22);color:#fff;}
.sdns-widget-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px;}
.sdns-widget-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.72);} 
.sdns-widget-title{font-size:20px;font-weight:700;line-height:1.1;}
.sdns-widget-pulse{width:12px;height:12px;border-radius:50%;background:#40d97b;box-shadow:0 0 0 0 rgba(64,217,123,.45);animation:sdnsPulse 2s infinite;}
.sdns-widget-pulse.is-error{background:#ff6b7c;box-shadow:0 0 0 0 rgba(255,107,124,.4);} 
@keyframes sdnsPulse{0%{box-shadow:0 0 0 0 rgba(64,217,123,.42)}70%{box-shadow:0 0 0 10px rgba(64,217,123,0)}100%{box-shadow:0 0 0 0 rgba(64,217,123,0)}}
.sdns-widget-status{font-size:14px;color:rgba(255,255,255,.84);margin-bottom:14px;}
.sdns-widget-credits{font-size:32px;font-weight:800;line-height:1;display:flex;flex-direction:column;gap:6px;margin-bottom:12px;}
.sdns-widget-credits small{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.62);} 
.sdns-widget-meta{font-size:13px;color:rgba(255,255,255,.72);} 
.sdns-taskbar{position:fixed;left:0;right:0;bottom:0;height:54px;display:flex;justify-content:space-between;align-items:center;padding:0 10px;background:linear-gradient(180deg,rgba(31,54,82,.94),rgba(18,34,54,.96));border-top:1px solid rgba(255,255,255,.16);backdrop-filter:blur(10px);z-index:40;}
.sdns-taskbar-left,.sdns-taskbar-right{display:flex;align-items:center;gap:8px;min-width:0;}
.sdns-start-button,.sdns-taskbar-app,.sdns-taskbar-power{height:40px;padding:0 14px;border:1px solid rgba(255,255,255,.12);border-radius:3px;background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.03));color:#fff;display:inline-flex;align-items:center;gap:8px;box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 1px 0 rgba(0,0,0,.28);text-decoration:none;}
.sdns-start-button:hover,.sdns-taskbar-app:hover,.sdns-taskbar-power:hover,.sdns-taskbar-app.is-active{background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.06));color:#fff;}
.sdns-taskbar-app{width:42px;justify-content:center;padding:0;}
.sdns-taskbar-search{height:40px;display:flex;align-items:center;padding:0 14px;border-radius:3px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.86);text-decoration:none;min-width:220px;}
.sdns-taskbar-pill{height:34px;display:inline-flex;align-items:center;padding:0 12px;border-radius:16px;background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.12);} 
.sdns-taskbar-user{display:flex;align-items:center;gap:8px;color:#fff;text-decoration:none;padding:4px 10px;border-radius:20px;}
.sdns-taskbar-avatar{width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.16);display:grid;place-items:center;overflow:hidden;}
.sdns-taskbar-avatar img{width:100%;height:100%;object-fit:cover;}
.sdns-taskbar-status,.sdns-taskbar-clock{color:#fff;font-size:13px;}
.sdns-taskbar-clock{text-align:right;line-height:1.1;min-width:88px;}
.sdns-start-menu{position:fixed;left:10px;bottom:60px;width:610px;max-width:calc(100vw - 20px);padding:16px;border-radius:8px;background:rgba(24,39,59,.94);border:1px solid rgba(255,255,255,.18);box-shadow:0 28px 56px rgba(0,0,0,.28);display:none;z-index:25;}
.sdns-start-menu.is-open{display:block;}
.sdns-start-menu-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px;color:#fff;}
.sdns-start-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
.sdns-start-tile{min-height:94px;padding:12px;border-radius:4px;background:linear-gradient(180deg,rgba(0,120,215,.72),rgba(0,96,172,.82));color:#fff;text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;box-shadow:inset 0 1px 0 rgba(255,255,255,.18);} 
.sdns-start-tile i{font-size:24px;}
@media (max-width: 1199.98px){.sdns-desktop-widget{width:280px}.sdns-desktop-main{padding-left:138px}}
@media (max-width: 991.98px){.sdns-desktop-main{padding:18px 14px 86px 14px}.sdns-desktop-widget,.sdns-desktop-icons{display:none!important}.sdns-taskbar-search{min-width:0;width:150px}}

/* SDNS Desk multi-window desktop */
.sdns-desktop-main.is-desktop-home{padding-right:0;}
.sdns-window-layer{position:relative;min-height:calc(100vh - 118px);z-index:8;overflow:visible;}
.sdns-desktop-main.is-desktop-home .sdns-window-layer{min-height:calc(100vh - 118px);}
.sdns-desktop-welcome{position:absolute;left:160px;bottom:102px;max-width:540px;color:rgba(255,255,255,.9);text-shadow:0 2px 16px rgba(0,0,0,.28);pointer-events:none;user-select:none;}
.sdns-desktop-welcome-title{font-size:2.2rem;font-weight:300;letter-spacing:.02em;}
.sdns-desktop-welcome-sub{font-size:1.05rem;opacity:.96;margin-top:.25rem;}
.sdns-desktop-welcome-hint{font-size:.95rem;opacity:.8;margin-top:.6rem;}
.sdns-app-window{position:absolute;left:100px;top:66px;min-width:760px;max-width:min(1240px,calc(100vw - 16px));width:min(1040px,calc(100vw - 16px));min-height:620px;height:calc(100vh - 170px);z-index:9;}
.sdns-app-window .sdns-window-content.is-frame{padding:0;height:calc(100% - 54px);background:#dfe8f2;}
.sdns-window-frame{display:block;width:100%;height:100%;border:0;background:#eef3f8;}
.sdns-app-window.is-active .sdns-window-titlebar{background:linear-gradient(180deg,rgba(255,255,255,.85),rgba(220,232,243,.82));}
.sdns-app-window:not(.is-active) .sdns-window-titlebar{filter:saturate(.86) brightness(.96);}
.sdns-app-window.is-maximized{left:8px!important;top:8px!important;right:8px;bottom:58px;height:auto!important;max-width:none;width:auto!important;}
.sdns-taskbar-windows{display:flex;align-items:center;gap:6px;}
.sdns-taskbar-app{width:auto;min-width:42px;max-width:220px;justify-content:flex-start;padding:0 12px;overflow:hidden;}
.sdns-taskbar-app span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:none;}
.sdns-taskbar-app[data-taskbar-app] span{display:inline;max-width:132px;}
.sdns-taskbar-app.is-empty span{display:none;}
.sdns-taskbar-app.is-empty{width:42px;padding:0;justify-content:center;}
.sdns-taskbar-app.is-active{box-shadow:inset 0 2px 0 rgba(120,190,255,.9), inset 0 1px 0 rgba(255,255,255,.14), 0 1px 0 rgba(0,0,0,.28);}
.sdns-desktop-embed-body{background:#e8eff6!important;min-height:100vh;}
.sdns-desktop-embed{padding:16px 18px 18px;}
@media (max-width: 1199.98px){.sdns-desktop-main.is-desktop-home{padding-right:0}.sdns-app-window{max-width:calc(100vw - 16px);width:calc(100vw - 16px)}}
@media (max-width: 991.98px){.sdns-desktop-main.is-desktop-home{padding-right:14px}.sdns-desktop-welcome{left:22px;bottom:88px;max-width:calc(100vw - 44px)}.sdns-app-window{left:12px;top:14px;width:calc(100vw - 24px)!important;max-width:none;min-width:0;min-height:calc(100vh - 118px);height:calc(100vh - 118px)}}

/* v2.1.14 desktop shell refinements */
.sdns-desktop-widgets{position:absolute;right:22px;top:18px;display:flex;flex-direction:column;gap:14px;z-index:6;pointer-events:none}
.sdns-desktop-widget{position:relative;right:auto;top:auto;width:320px}
.sdns-desktop-widget.is-uploads .sdns-widget-title{color:#dff1ff}
.sdns-widget-meta{line-height:1.35}

.sdns-taskbar{height:48px;padding:0 6px;background:linear-gradient(180deg,rgba(29,50,74,.98),rgba(13,25,39,.98));border-top:1px solid rgba(255,255,255,.12);box-shadow:0 -8px 28px rgba(0,0,0,.28)}
.sdns-taskbar-left,.sdns-taskbar-right{gap:4px}
.sdns-start-button,.sdns-taskbar-app,.sdns-taskbar-power{height:40px;border-radius:0;border:1px solid rgba(255,255,255,.10);background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.03));box-shadow:inset 0 1px 0 rgba(255,255,255,.15), inset 0 -1px 0 rgba(0,0,0,.24), 0 1px 0 rgba(0,0,0,.34)}
.sdns-start-button:hover,.sdns-taskbar-app:hover,.sdns-taskbar-power:hover,.sdns-taskbar-app.is-active{background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.06))}
.sdns-taskbar-app.is-active{box-shadow:inset 0 -3px 0 #66b8ff, inset 0 1px 0 rgba(255,255,255,.16), 0 1px 0 rgba(0,0,0,.34)}
.sdns-start-button:active,.sdns-taskbar-app:active,.sdns-taskbar-power:active{transform:none;background:linear-gradient(180deg,rgba(0,0,0,.15),rgba(255,255,255,.06));box-shadow:inset 0 2px 5px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.08)}
.sdns-taskbar-search{height:38px;border-radius:0;background:rgba(255,255,255,.08)}
.sdns-taskbar-user{padding:4px 8px;border-radius:0}
.sdns-taskbar-status,.sdns-taskbar-clock{font-size:12px}
.sdns-taskbar-power{width:40px;justify-content:center;padding:0}

.sdns-window-layer{position:fixed;left:0;top:0;right:0;bottom:48px;min-height:auto;z-index:30;pointer-events:none;}
.sdns-app-window{min-width:560px;min-height:380px;border-radius:2px;box-shadow:0 20px 46px rgba(0,0,0,.34),0 1px 0 rgba(255,255,255,.48) inset;overflow:visible;pointer-events:auto;}
.sdns-app-window .sdns-window-content,.sdns-app-window .sdns-window-content.is-frame{overflow:hidden;border-radius:0 0 2px 2px}
.sdns-window-titlebar{border-radius:2px 2px 0 0}
.sdns-window-resize-handle{position:absolute;z-index:8}
.sdns-window-resize-handle.is-e,.sdns-window-resize-handle.is-w{top:8px;bottom:8px;width:8px}
.sdns-window-resize-handle.is-e{right:-4px;cursor:e-resize}
.sdns-window-resize-handle.is-w{left:-4px;cursor:w-resize}
.sdns-window-resize-handle.is-n,.sdns-window-resize-handle.is-s{left:8px;right:8px;height:8px}
.sdns-window-resize-handle.is-n{top:-4px;cursor:n-resize}
.sdns-window-resize-handle.is-s{bottom:-4px;cursor:s-resize}
.sdns-window-resize-handle.is-ne,.sdns-window-resize-handle.is-nw,.sdns-window-resize-handle.is-se,.sdns-window-resize-handle.is-sw{width:12px;height:12px}
.sdns-window-resize-handle.is-ne{top:-4px;right:-4px;cursor:ne-resize}
.sdns-window-resize-handle.is-nw{top:-4px;left:-4px;cursor:nw-resize}
.sdns-window-resize-handle.is-se{right:-4px;bottom:-4px;cursor:se-resize}
.sdns-window-resize-handle.is-sw{left:-4px;bottom:-4px;cursor:sw-resize}
.sdns-app-window.is-maximized .sdns-window-resize-handle{display:none}

.sdns-desktop-icon{touch-action:none}
.sdns-desktop-icon:hover,.sdns-desktop-icon.is-selected{background:rgba(255,255,255,.14);outline:1px solid rgba(255,255,255,.28)}
.sdns-desktop-icon.is-selected::after{content:'';position:absolute;inset:3px;border:1px dotted rgba(255,255,255,.78);border-radius:4px;pointer-events:none}

.sdns-desktop-icons,.sdns-desktop-widgets,.sdns-desktop-welcome{pointer-events:auto;}
.sdns-desktop-icons,.sdns-desktop-widgets,.sdns-desktop-welcome{z-index:6;}
.sdns-window-layer,.sdns-window-layer *{box-sizing:border-box;}
.sdns-window-layer .sdns-app-window{position:absolute;}

@media (max-width: 1199.98px){
  .sdns-desktop-widgets{right:16px;top:16px}
  .sdns-desktop-widget{width:280px}
  .sdns-desktop-main.is-desktop-home{padding-right:312px}
}
@media (max-width: 991.98px){
  .sdns-desktop-main.is-desktop-home{padding-right:14px}
  .sdns-desktop-widgets,.sdns-desktop-icons{display:none!important}
}


/* v2.1.15 desktop viewport + behavior */
html,body{height:100%;overflow:hidden;}
body.sdns-desktop-bg{overflow:hidden;}
body.sdns-desktop-bg .ai-main{overflow:hidden;}
.sdns-desktop-shell{height:100vh;min-height:100vh;max-height:100vh;overflow:hidden;}
.sdns-desktop-main{height:calc(100vh - 48px);overflow:hidden;}
.sdns-window-layer,.sdns-desktop-main.is-desktop-home .sdns-window-layer{height:calc(100vh - 108px);min-height:calc(100vh - 108px);overflow:hidden;}
.sdns-app-window{max-height:calc(100vh - 86px);}
.sdns-window-content{min-height:0;height:calc(100% - 44px);overflow:auto;}
.sdns-app-window .sdns-window-content,.sdns-app-window .sdns-window-content.is-frame{height:calc(100% - 44px);}
.sdns-window-frame{height:100%;min-height:100%;}
.sdns-taskbar{padding:0 4px;background:linear-gradient(180deg,rgba(38,55,76,.98),rgba(16,28,42,.99));}
.sdns-taskbar-left,.sdns-taskbar-right{gap:2px;}
.sdns-start-button,.sdns-taskbar-app,.sdns-taskbar-power{height:40px;border-color:rgba(255,255,255,.09);background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.02));box-shadow:inset 0 1px 0 rgba(255,255,255,.16),inset 0 -1px 0 rgba(0,0,0,.34),0 1px 0 rgba(0,0,0,.4);}
.sdns-start-button:hover,.sdns-taskbar-app:hover,.sdns-taskbar-power:hover,.sdns-taskbar-app.is-active{background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.05));}
.sdns-taskbar-search{height:36px;background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.10);}
.sdns-taskbar-app{max-width:180px;}
.sdns-taskbar-clock{min-width:78px;padding:0 6px;}
.sdns-window-titlebar{height:44px;}
.sdns-window-control{height:30px;}
.sdns-window-content.container-fluid{height:calc(100% - 44px);overflow:auto;}
@media (max-width: 991.98px){
  html,body,body.sdns-desktop-bg{overflow:auto;}
  .sdns-desktop-shell{height:auto;min-height:100vh;max-height:none;overflow:visible;}
  .sdns-desktop-main,.sdns-window-layer,.sdns-desktop-main.is-desktop-home .sdns-window-layer{height:auto;min-height:calc(100vh - 108px);overflow:visible;}
  .sdns-app-window{max-height:none;}
}

.sdns-taskbar-search{display:none!important;}


.sdns-context-menu{position:fixed;min-width:220px;padding:6px;background:linear-gradient(180deg,rgba(246,250,255,.98),rgba(227,236,247,.98));border:1px solid rgba(64,94,128,.35);box-shadow:0 18px 36px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.8);z-index:9999;border-radius:2px;color:#1d2a39;}
.sdns-context-menu[hidden]{display:none!important;}
.sdns-context-menu-list{display:flex;flex-direction:column;gap:2px;}
.sdns-context-item{height:34px;padding:0 10px;border:0;background:transparent;display:flex;align-items:center;gap:10px;text-align:left;color:#1d2a39;border-radius:2px;font-size:13px;}
.sdns-context-item i{width:16px;text-align:center;color:#335b84;}
.sdns-context-item:hover:not(:disabled), .sdns-context-item:focus-visible:not(:disabled){background:linear-gradient(180deg,rgba(30,132,230,.18),rgba(30,132,230,.10));outline:none;}
.sdns-context-item:disabled{opacity:.45;cursor:not-allowed;}
.sdns-context-divider{height:1px;margin:4px 0;background:rgba(63,84,108,.18);}

.sdns-snap-preview{position:fixed;z-index:13;border:1px solid rgba(255,255,255,.75);background:rgba(160,203,255,.18);box-shadow:0 0 0 1px rgba(62,129,216,.28) inset,0 12px 40px rgba(0,0,0,.18);backdrop-filter:blur(3px);border-radius:4px;pointer-events:none;opacity:0;transition:opacity .12s ease;}
.sdns-snap-preview.is-visible{opacity:1;}

.sdns-desktop-widget{pointer-events:auto;}

/* SDNS Desk 12 – classic window chrome refinement */
.sdns-app-window{
  border:1px solid rgba(8,25,40,.58);
  border-radius:0;
  box-shadow:0 26px 50px rgba(0,0,0,.34), 0 1px 0 rgba(255,255,255,.58) inset;
  background:#e9eef4;
}
.sdns-app-window.is-active{
  box-shadow:0 30px 58px rgba(0,0,0,.38), 0 1px 0 rgba(255,255,255,.62) inset;
}
.sdns-window-titlebar{
  height:36px;
  padding:0 0 0 12px;
  background:linear-gradient(180deg,#d9ecfd 0%, #c7ddf3 52%, #bdd4ea 100%);
  border-bottom:1px solid rgba(9,34,56,.28);
}
.sdns-app-window.is-active .sdns-window-titlebar{
  background:linear-gradient(180deg,#eff7ff 0%, #d5e7f7 35%, #bed7ee 100%);
}
.sdns-app-window:not(.is-active) .sdns-window-titlebar{
  background:linear-gradient(180deg,#ebeff3 0%, #d9dfe6 100%);
  filter:none;
}
.sdns-window-appicon{
  width:18px;
  height:18px;
  border-radius:3px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.26);
}
.sdns-window-kicker{display:none;}
.sdns-window-title{
  font-size:14px;
  font-weight:600;
  letter-spacing:0;
  color:#113350;
}
.sdns-app-window:not(.is-active) .sdns-window-title{
  color:#55697b;
}
.sdns-window-controls{
  gap:0;
  margin-left:auto;
  height:100%;
}
.sdns-window-control{
  width:46px;
  height:100%;
  border-radius:0;
  border-left:1px solid rgba(255,255,255,.18);
  border-right:1px solid rgba(0,0,0,.04);
}
.sdns-window-control:hover{
  background:rgba(255,255,255,.35);
}
.sdns-window-control:active{
  background:rgba(10,71,120,.15);
  box-shadow:inset 0 2px 4px rgba(0,0,0,.12);
}
.sdns-window-control::before,
.sdns-window-control::after{
  background:#24445e;
}
.sdns-app-window:not(.is-active) .sdns-window-control::before,
.sdns-app-window:not(.is-active) .sdns-window-control::after{
  background:#5d6d7c;
}
.sdns-window-control.is-minimize::before{
  width:10px;
  height:2px;
  top:60%;
}
.sdns-window-control.is-maximize::before{
  width:10px;
  height:8px;
  border:2px solid #24445e;
}
.sdns-app-window:not(.is-active) .sdns-window-control.is-maximize::before{
  border-color:#5d6d7c;
}
.sdns-window-control.close:hover{
  background:#c42b1c;
}
.sdns-window-control.close:active{
  background:#a91f13;
}
.sdns-window-content,
.sdns-app-window .sdns-window-content.is-frame{
  background:linear-gradient(180deg,#f8fbfe 0%, #eef3f8 100%);
}
.sdns-taskbar-app{
  border-radius:0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.2);
}
.sdns-taskbar-app.is-active{
  box-shadow:inset 0 2px 0 #7fc3ff, inset 0 1px 0 rgba(255,255,255,.26);
}


/* v2.1.29 layer + start menu refinements */
.sdns-desktop-main{z-index:12;}
.sdns-desktop-widgets{z-index:7;}
.sdns-window-layer{z-index:20;}
.sdns-app-window{z-index:21;}

.sdns-start-menu{left:0;bottom:48px;width:760px;max-width:min(760px,calc(100vw - 12px));padding:0;border-radius:0 8px 0 0;background:rgba(16,26,39,.97);border:1px solid rgba(255,255,255,.12);border-left:0;border-bottom:0;box-shadow:0 30px 60px rgba(0,0,0,.42);backdrop-filter:blur(12px);overflow:hidden;z-index:32;}
.sdns-start-shell{display:grid;grid-template-columns:76px 1fr;min-height:580px;}
.sdns-start-rail{display:flex;flex-direction:column;justify-content:flex-start;gap:10px;padding:14px 10px 12px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));border-right:1px solid rgba(255,255,255,.08);color:#fff;}
.sdns-start-rail-brand{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:6px 4px 12px;}
.sdns-start-rail-logo{width:36px;height:36px;border-radius:8px;display:grid;place-items:center;background:linear-gradient(180deg,#1b7ddd,#0d5caf);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 8px 22px rgba(13,92,175,.28);font-size:1rem;}
.sdns-start-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:rgba(255,255,255,.62);}
.sdns-start-title{font-size:18px;font-weight:700;color:#fff;}
.sdns-start-rail-link{display:flex;align-items:center;justify-content:center;width:54px;height:46px;border:0;border-radius:4px;background:transparent;color:#fff;text-decoration:none;transition:background .15s ease;}
.sdns-start-rail-link span{display:none;}
.sdns-start-rail-link:hover,.sdns-start-rail-link:focus{background:rgba(255,255,255,.12);color:#fff;}
.sdns-start-rail-link.is-power:hover{background:#e81123;}
.sdns-start-rail-form{margin-top:auto;}
.sdns-start-build{margin-top:6px;padding-top:8px;font-size:11px;color:rgba(255,255,255,.52);writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:.08em;}
.sdns-start-pane{display:flex;flex-direction:column;padding:18px 20px 16px;color:#fff;min-width:0;}
.sdns-start-pane-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:16px;}
.sdns-start-pane-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.18em;color:rgba(255,255,255,.58);margin-bottom:4px;}
.sdns-start-pane-title{font-size:28px;font-weight:300;line-height:1;}
.sdns-start-layout{display:grid;grid-template-columns:260px 1fr;gap:18px;min-height:0;flex:1;}
.sdns-start-apps{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);padding:8px;border-radius:4px;overflow:auto;max-height:500px;}
.sdns-start-app{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:3px;color:#fff;text-decoration:none;font-size:14px;line-height:1.2;}
.sdns-start-app i{font-size:1rem;opacity:.95;}
.sdns-start-app:hover,.sdns-start-app:focus{background:rgba(255,255,255,.12);color:#fff;}
.sdns-start-pinned{display:flex;flex-direction:column;min-width:0;}
.sdns-start-pinned-head{font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:rgba(255,255,255,.62);margin:4px 0 10px;}
.sdns-start-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-content:start;}
.sdns-start-tile{min-height:104px;padding:12px 12px 10px;border-radius:2px;background:linear-gradient(180deg,rgba(0,120,215,.88),rgba(0,89,168,.96));border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 10px 24px rgba(0,0,0,.18);}
.sdns-start-tile:hover,.sdns-start-tile:focus{background:linear-gradient(180deg,rgba(34,140,228,.94),rgba(0,104,192,.98));color:#fff;}
.sdns-start-tile i{font-size:22px;}
.sdns-start-tile span{font-size:13px;line-height:1.2;}
@media (max-width: 991.98px){
  .sdns-start-menu{width:calc(100vw - 12px);left:6px;bottom:54px;max-width:none;border-left:1px solid rgba(255,255,255,.12);border-radius:8px;}
  .sdns-start-shell{grid-template-columns:1fr;}
  .sdns-start-rail{flex-direction:row;align-items:center;gap:8px;padding:10px 12px;}
  .sdns-start-rail-brand{flex-direction:row;align-items:center;padding:0;margin-right:auto;}
  .sdns-start-build{writing-mode:horizontal-tb;transform:none;margin-top:0;padding-top:0;}
  .sdns-start-rail-form{margin-top:0;}
  .sdns-start-layout{grid-template-columns:1fr;}
  .sdns-start-apps{max-height:220px;}
  .sdns-start-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}


/* v2.1.30 desktop layer hardening */
.sdns-desktop-shell{isolation:isolate;}
.sdns-desktop-icons{z-index:18 !important;}
.sdns-desktop-widgets{z-index:16 !important; pointer-events:auto;}
.sdns-desktop-main{position:relative; z-index:40 !important;}
.sdns-window-layer{position:fixed; left:0; top:0; right:0; bottom:0; z-index:90 !important; pointer-events:none;}
.sdns-window-layer .sdns-app-window{z-index:91 !important; pointer-events:auto;}
.sdns-taskbar{z-index:80 !important;}
.sdns-start-menu{z-index:82 !important;}
.sdns-context-menu{z-index:9999 !important;}


/* 2.1.31 desktop interaction fixes */
body.sdns-start-open .sdns-start-menu{display:block !important;opacity:1 !important;transform:translateY(0) scale(1) !important;pointer-events:auto !important;}
.sdns-desktop-main{pointer-events:none !important;}
.sdns-window-layer{pointer-events:none !important;}
.sdns-window-layer .sdns-app-window{pointer-events:auto !important;}
.sdns-desktop-icons,.sdns-desktop-icons *{pointer-events:auto !important;}
.sdns-desktop-widgets,.sdns-desktop-widget{pointer-events:auto !important;}
.sdns-desktop-wallpaper{pointer-events:none !important;}
.sdns-start-menu,.sdns-start-menu *{pointer-events:auto !important;}


/* SDNS Dashboard app */
.sdns-dashboard-app{display:flex;flex-direction:column;gap:18px;color:#1f2937}
.sdns-dash-hero,.sdns-dash-panel{position:relative;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(244,247,251,.95));border:1px solid rgba(148,163,184,.28);border-radius:18px;box-shadow:0 10px 24px rgba(15,23,42,.08)}
.sdns-dash-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.8fr);gap:20px;padding:22px 24px;overflow:hidden}
.sdns-dash-hero:before{content:"";position:absolute;inset:auto -120px -120px auto;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(0,120,215,.18),rgba(0,120,215,0));pointer-events:none}
.sdns-dash-hero-main,.sdns-dash-hero-side,.sdns-dash-panel>*{position:relative;z-index:1}
.sdns-dash-hero-kicker,.sdns-dash-panel-kicker{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#53708b}
.sdns-dash-hero-title{margin:.25rem 0 .5rem;font-size:2rem;font-weight:700;color:#0f172a}
.sdns-dash-hero-text{max-width:64ch;margin:0;color:#475569;line-height:1.6}
.sdns-dash-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.sdns-dash-primary,.sdns-dash-secondary{display:inline-flex;align-items:center;gap:10px;border-radius:12px;padding:10px 14px;text-decoration:none;font-weight:600;transition:.18s ease}
.sdns-dash-primary{background:linear-gradient(180deg,#1783e7,#0b69bd);color:#fff;border:1px solid rgba(5,79,144,.65);box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 4px 14px rgba(11,105,189,.24)}
.sdns-dash-primary:hover{transform:translateY(-1px);color:#fff}
.sdns-dash-secondary{background:linear-gradient(180deg,#fff,#e9eff5);color:#243447;border:1px solid rgba(148,163,184,.4);box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}
.sdns-dash-secondary:hover{color:#0f172a;background:linear-gradient(180deg,#fff,#e5edf6)}
.sdns-dash-secondary.is-small{padding:8px 12px;font-size:.92rem}
.sdns-dash-usercard{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:16px;background:rgba(255,255,255,.72);border:1px solid rgba(148,163,184,.24);backdrop-filter:blur(6px)}
.sdns-dash-usericon{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(180deg,#0f6cbd,#0a4f8a);color:#fff;font-size:1.35rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}
.sdns-dash-userlabel{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:#64748b;font-weight:700}
.sdns-dash-username{font-size:1.05rem;font-weight:700;color:#0f172a}
.sdns-dash-chiprow{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.sdns-dash-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#eef5fb;border:1px solid rgba(125,166,201,.42);color:#24425d;font-weight:600;font-size:.88rem}
.sdns-dash-grid-top{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.8fr);gap:18px}
.sdns-dash-grid-main{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr);gap:18px}
.sdns-dash-servicegrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);gap:18px}
.sdns-dash-servicegrid.is-secondary{grid-template-columns:repeat(2,minmax(0,1fr))}
.sdns-dash-panel{padding:18px 20px}
.sdns-dash-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.sdns-dash-panel-title{margin:.2rem 0 0;font-size:1.18rem;font-weight:700;color:#0f172a}
.sdns-dash-launchgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.sdns-dash-launch{display:flex;align-items:center;gap:12px;padding:14px;border-radius:14px;text-decoration:none;color:#1f2937;background:linear-gradient(180deg,#fff,#eef3f8);border:1px solid rgba(148,163,184,.32);box-shadow:inset 0 1px 0 rgba(255,255,255,.82);transition:.18s ease}
.sdns-dash-launch:hover{transform:translateY(-1px);color:#0f172a;border-color:rgba(0,120,215,.34)}
.sdns-dash-launch-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(180deg,#0f6cbd,#0a4f8a);color:#fff;font-size:1.15rem;flex:0 0 auto}
.sdns-dash-launch-copy{display:flex;flex-direction:column;gap:2px}
.sdns-dash-launch-copy strong{font-size:.98rem}
.sdns-dash-launch-copy small{color:#64748b;font-size:.8rem}
.sdns-dashboard-app .ai-dash-stat-card,.sdns-dashboard-app .ai-dash-card,.sdns-dashboard-app .ai-health-card{background:linear-gradient(180deg,#fff,#f8fbfe);border:1px solid rgba(148,163,184,.25);box-shadow:0 6px 18px rgba(15,23,42,.05)}
.sdns-dashboard-app .ai-dash-stat-card{border-radius:16px;padding:14px 15px}
.sdns-dashboard-app .ai-dash-week-wrap{min-height:240px}
.sdns-dashboard-app .ai-dash-activity-list{display:flex;flex-direction:column;gap:12px;min-height:360px}
.sdns-dashboard-app .ai-dash-activity-item{border-radius:14px;background:linear-gradient(180deg,#fff,#f4f8fc);border:1px solid rgba(148,163,184,.24);padding:12px 14px}
.sdns-dashboard-app .ai-health-stack{display:flex;flex-direction:column;gap:12px}
@media (max-width: 1199.98px){
  .sdns-dash-grid-top,.sdns-dash-grid-main,.sdns-dash-servicegrid,.sdns-dash-servicegrid.is-secondary,.sdns-dash-hero{grid-template-columns:1fr}
}
@media (max-width: 767.98px){
  .sdns-dash-hero{padding:18px}
  .sdns-dash-panel{padding:16px}
  .sdns-dash-launchgrid{grid-template-columns:1fr}
  .sdns-dash-hero-title{font-size:1.6rem}
}


/* SDNS Explorer Dashboard */

.sdns-explorer-window{height:100%;display:flex;flex-direction:column;background:#fff;border:1px solid #c7c7c7;color:#1b1b1b;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}
.sdns-explorer-menubar{display:flex;align-items:center;gap:4px;height:28px;padding:0 8px;background:linear-gradient(180deg,#fdfdfd 0%,#f4f4f4 100%);border-bottom:1px solid #d4d4d4}
.sdns-exp-menu-btn{height:22px;padding:0 10px;border:1px solid transparent;background:transparent;border-radius:2px;color:#2f2f2f;font-size:12px}.sdns-exp-menu-btn:hover{border-color:#c6d8ee;background:linear-gradient(180deg,#f9fcff 0%,#e5f0fb 100%)}
.sdns-explorer-toolbar{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;padding:6px 8px;background:linear-gradient(180deg,#fbfbfb 0%,#ececec 100%);border-bottom:1px solid #d0d0d0}
.sdns-explorer-toolbar-left{display:flex;gap:4px}.sdns-exp-btn{width:28px;height:28px;border:1px solid #c8c8c8;background:linear-gradient(180deg,#ffffff 0%,#ebebeb 100%);border-radius:2px;color:#4b4b4b}.sdns-exp-btn:disabled{opacity:.75}.sdns-exp-btn:hover:not(:disabled){border-color:#9bbbe0;background:linear-gradient(180deg,#fff 0%,#dfeffd 100%)}
.sdns-explorer-breadcrumbs{display:flex;align-items:center;gap:6px;min-width:0;height:30px;padding:0 10px;border:1px solid #c6c6c6;background:#fff;border-radius:2px;overflow:hidden}.sdns-exp-crumb{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#2b2b2b;white-space:nowrap}.sdns-exp-crumb.is-current{font-weight:600}.sdns-explorer-breadcrumbs .bi-chevron-right{font-size:10px;color:#808080}
.sdns-explorer-searchfake{display:flex;align-items:center;gap:8px;height:30px;padding:0 10px;border:1px solid #c8c8c8;background:#fff;border-radius:2px;color:#7c7c7c;font-size:12px;min-width:190px}
.sdns-dashboard-shell{display:grid;grid-template-columns:220px 1fr;min-height:0;flex:1;background:#fff}
.sdns-dashboard-navpane{border-right:1px solid #d7d7d7;background:linear-gradient(180deg,#f7f7f7 0%,#efefef 100%);min-height:0}.sdns-dashboard-navscroll{padding:8px 0;overflow:auto;height:100%}.sdns-dashboard-navgroup{padding:0 8px 12px}.sdns-dashboard-navtitle{padding:6px 10px 4px;font-size:11px;font-weight:700;color:#6a6a6a;text-transform:uppercase;letter-spacing:.04em}
.sdns-dashboard-tree{display:flex;align-items:center;gap:8px;height:30px;padding:0 10px;border:1px solid transparent;border-radius:2px;color:#1f1f1f;text-decoration:none;font-size:13px}.sdns-dashboard-tree:hover{border-color:#b7d0ea;background:linear-gradient(180deg,#f9fcff 0%,#e6f0fb 100%)}.sdns-dashboard-tree.is-active{border-color:#9ab8db;background:linear-gradient(180deg,#dcecff 0%,#c7def7 100%)}
.sdns-dashboard-mainpane{min-width:0;display:flex;flex-direction:column;background:#fff}.sdns-dashboard-headerline{display:flex;justify-content:space-between;align-items:center;padding:10px 16px 8px;border-bottom:1px solid #e1e1e1;font-size:12px;color:#5a5a5a}.sdns-dashboard-maincontent{display:grid;grid-template-columns:minmax(0,1fr) 260px;min-height:0;flex:1}
.sdns-dashboard-centerpane{padding:12px 16px 18px;overflow:auto;background:#fff}.sdns-dashboard-previewpane{border-left:1px solid #e0e0e0;background:linear-gradient(180deg,#fbfbfb 0%,#f2f2f2 100%);padding:14px 12px;overflow:auto}
.sdns-dashboard-groupbox{border:1px solid #d8d8d8;background:#fff;margin-bottom:14px}.sdns-dashboard-grouphead{padding:7px 10px;border-bottom:1px solid #e4e4e4;background:linear-gradient(180deg,#fbfbfb 0%,#f1f1f1 100%);font-size:13px;font-weight:600;color:#2a2a2a}
.sdns-dashboard-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;padding:10px}.sdns-dashboard-tile{display:flex;align-items:center;gap:12px;min-height:64px;padding:10px;border:1px solid #d8d8d8;background:linear-gradient(180deg,#fff 0%,#f7f7f7 100%);text-decoration:none;color:#1d1d1d}.sdns-dashboard-tile:hover{border-color:#98b8da;background:linear-gradient(180deg,#fafdff 0%,#e8f2fc 100%)}.sdns-dashboard-tileicon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #c7d5e3;background:linear-gradient(180deg,#fff 0%,#edf3fa 100%);font-size:20px;color:#3f6f9a}.sdns-dashboard-tiletext{display:flex;flex-direction:column;gap:2px}.sdns-dashboard-tiletext strong{font-size:13px}.sdns-dashboard-tiletext small{font-size:11px;color:#6f6f6f}
.sdns-dashboard-stats-grid{padding:10px;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px}.sdns-dashboard-stats-grid .ai-dash-stat-card{height:100%;margin:0;border:1px solid #d8d8d8;background:linear-gradient(180deg,#fff 0%,#f7f7f7 100%);box-shadow:none}.sdns-dashboard-stats-grid .ai-dash-stat-card:hover{border-color:#a5bfde}
.sdns-dashboard-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px}.sdns-dashboard-columnbox{border:1px solid #dedede;background:#fafafa}.sdns-dashboard-columnhead{padding:7px 9px;border-bottom:1px solid #e3e3e3;background:linear-gradient(180deg,#fcfcfc 0%,#f1f1f1 100%);font-size:12px;font-weight:600;color:#3d3d3d}.sdns-dashboard-week,.sdns-dashboard-list,.sdns-dashboard-service-list{padding:10px;min-height:120px}
.sdns-dashboard-previewbox{border:1px solid #d6d6d6;background:#fff;padding:14px 12px;text-align:center;margin-bottom:12px}.sdns-dashboard-previewmonitor{display:flex;align-items:center;justify-content:center;width:72px;height:72px;margin:0 auto 10px;border:1px solid #d7e3ef;background:linear-gradient(180deg,#fafdff 0%,#eaf2fb 100%);font-size:34px;color:#5a87b0}.sdns-dashboard-previewtitle{font-size:20px;font-weight:700;color:#2a2a2a}.sdns-dashboard-previewsub,.sdns-dashboard-previewmeta{font-size:11px;color:#6f6f6f;text-transform:uppercase;letter-spacing:.04em}.sdns-dashboard-previewname{margin:6px 0;font-size:13px;color:#2d2d2d}
.sdns-dashboard-detailbox{border:1px solid #d9d9d9;background:#fff;margin-bottom:12px}.sdns-dashboard-detailtitle{padding:7px 9px;border-bottom:1px solid #e6e6e6;background:linear-gradient(180deg,#fbfbfb 0%,#f1f1f1 100%);font-size:12px;font-weight:700;color:#3a3a3a}.sdns-dashboard-detailstack{padding:10px;font-size:12px;color:#4e4e4e}.sdns-dashboard-detailstack .ai-health-stack-item,.sdns-dashboard-detailstack .ai-dash-activity-item{margin-bottom:8px}
.sdns-dashboard-placeholder{padding:14px;font-size:13px;color:#6f6f6f}
@media (max-width: 1199.98px){.sdns-dashboard-maincontent{grid-template-columns:1fr}.sdns-dashboard-previewpane{border-left:0;border-top:1px solid #e0e0e0}.sdns-dashboard-columns{grid-template-columns:1fr}}
@media (max-width: 991.98px){.sdns-dashboard-shell{grid-template-columns:1fr}.sdns-dashboard-navpane{display:none}.sdns-explorer-toolbar{grid-template-columns:1fr}.sdns-explorer-searchfake{display:none}}



/* SDNS Modern dashboard */
.sdns-modern-hub{display:flex;flex-direction:column;gap:14px;height:100%;padding:14px;background:linear-gradient(180deg,rgba(248,250,255,.92),rgba(238,243,252,.94));}
.sdns-modern-hub-topbar{display:grid;grid-template-columns:auto 1fr minmax(220px,280px);gap:12px;align-items:center;padding:10px 12px;border:1px solid rgba(255,255,255,.7);background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(246,249,255,.72));backdrop-filter:blur(18px);border-radius:18px;box-shadow:0 14px 34px rgba(46,78,126,.10);}
.sdns-modern-hub-nav{display:flex;gap:8px}.sdns-modern-iconbtn{width:34px;height:34px;border:none;border-radius:10px;background:rgba(255,255,255,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 1px 2px rgba(0,0,0,.06);color:#294160}.sdns-modern-iconbtn:disabled{opacity:.55}.sdns-modern-hub-address,.sdns-modern-hub-search{display:flex;align-items:center;gap:10px;min-height:40px;border-radius:12px;padding:0 14px;background:rgba(255,255,255,.72);border:1px solid rgba(210,221,241,.9);color:#314769}.sdns-modern-hub-address .is-current{font-weight:600;color:#1f2e47}.sdns-modern-hub-search{justify-self:end;color:#7084a6;min-width:240px}
.sdns-modern-hub-frame{display:grid;grid-template-columns:280px 1fr;gap:16px;min-height:0;flex:1}
.sdns-modern-hub-sidebar{padding:16px;background:linear-gradient(180deg,rgba(252,253,255,.92),rgba(243,247,255,.88));border:1px solid rgba(255,255,255,.72);backdrop-filter:blur(18px);border-radius:24px;box-shadow:0 16px 38px rgba(56,84,125,.12);display:flex;flex-direction:column;gap:18px}
.sdns-modern-hub-profile{display:flex;align-items:center;gap:12px;padding:12px;border-radius:18px;background:rgba(255,255,255,.76);border:1px solid rgba(221,230,244,.9)}.sdns-modern-hub-avatar{width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f6f9ff,#dbe8ff);color:#3062c8;font-size:1.65rem}.sdns-modern-hub-kicker{font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;color:#7283a0}.sdns-modern-hub-user{font-weight:700;color:#1e2e45}
.sdns-modern-hub-sidegroup{display:flex;flex-direction:column;gap:6px}.sdns-modern-hub-sidetitle{padding:0 8px;font-size:.73rem;text-transform:uppercase;letter-spacing:.16em;color:#7f8da7}.sdns-modern-hub-sideitem{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:14px;color:#22324b;text-decoration:none;border:1px solid transparent;transition:.18s ease}.sdns-modern-hub-sideitem:hover{background:rgba(255,255,255,.8);border-color:rgba(212,223,244,.95);box-shadow:0 6px 14px rgba(55,82,125,.08)}.sdns-modern-hub-sideitem i{font-size:1.1rem;color:#4975d8}
.sdns-modern-hub-main{display:flex;flex-direction:column;gap:16px;min-height:0}.sdns-modern-hub-headercard{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:22px 24px;border-radius:26px;border:1px solid rgba(255,255,255,.74);background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(241,246,255,.86));backdrop-filter:blur(18px);box-shadow:0 18px 48px rgba(52,79,120,.12)}.sdns-modern-hub-strapline{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:#71829f}.sdns-modern-hub-headercard h1{margin:6px 0 8px;font-size:2rem;line-height:1.1;color:#14233a}.sdns-modern-hub-headercard p{margin:0;color:#60708c;max-width:640px}.sdns-modern-hub-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.sdns-modern-quickaction{display:flex;align-items:center;gap:10px;min-height:48px;padding:0 16px;border-radius:16px;background:rgba(247,250,255,.9);border:1px solid rgba(206,220,246,.95);color:#20314a;text-decoration:none;font-weight:600;box-shadow:0 8px 18px rgba(70,95,139,.08)}.sdns-modern-quickaction i{color:#4d75da}
.sdns-modern-hub-contentgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;min-height:0}.sdns-modern-card{padding:18px;border-radius:24px;border:1px solid rgba(255,255,255,.74);background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(244,248,255,.84));backdrop-filter:blur(16px);box-shadow:0 14px 34px rgba(54,79,119,.10);min-height:170px}.sdns-modern-card-span2{grid-column:span 2}.sdns-modern-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.sdns-modern-card-head h2{margin:0;font-size:1rem;font-weight:700;color:#1d2d45}.sdns-modern-card-head span{font-size:.76rem;padding:6px 10px;border-radius:999px;background:rgba(235,241,252,.95);color:#637694}
.sdns-modern-appgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sdns-modern-apptile{display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:20px;text-decoration:none;color:#21314b;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(243,247,255,.92));border:1px solid rgba(214,224,242,.95);min-height:124px;box-shadow:0 12px 24px rgba(57,82,123,.08);transition:.18s ease}.sdns-modern-apptile:hover{transform:translateY(-1px);box-shadow:0 18px 34px rgba(57,82,123,.12)}.sdns-modern-apptile i{font-size:1.55rem;color:#4d75da}.sdns-modern-apptile strong{font-size:1rem}.sdns-modern-apptile small{color:#677a98;line-height:1.45}
.sdns-modern-stack,.sdns-modern-stats{display:flex;flex-direction:column;gap:10px}.sdns-modern-card .sdns-health-item,.sdns-modern-card .sdns-health-log,.sdns-modern-card .sdns-upload-item,.sdns-modern-card .sdns-run-item,.sdns-modern-card .sdns-system-item,.sdns-modern-card .sdns-stat{border-radius:16px!important;background:rgba(255,255,255,.82)!important;border:1px solid rgba(218,227,243,.95)!important;box-shadow:none!important}.sdns-modern-card .sdns-health-item,.sdns-modern-card .sdns-health-log,.sdns-modern-card .sdns-upload-item,.sdns-modern-card .sdns-run-item,.sdns-modern-card .sdns-system-item{padding:12px!important}.sdns-modern-card .sdns-stat{padding:14px!important}.sdns-modern-card .sdns-stat strong,.sdns-modern-card .sdns-system-item strong{color:#1b2b42}
@media (max-width: 1400px){.sdns-modern-hub-contentgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.sdns-modern-card-span2{grid-column:span 2}.sdns-modern-appgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 1100px){.sdns-modern-hub-frame{grid-template-columns:1fr}.sdns-modern-hub-sidebar{order:2}.sdns-modern-hub-main{order:1}.sdns-modern-hub-topbar{grid-template-columns:auto 1fr}.sdns-modern-hub-search{grid-column:1 / -1;justify-self:stretch}.sdns-modern-hub-contentgrid{grid-template-columns:1fr}.sdns-modern-card-span2{grid-column:span 1}.sdns-modern-appgrid{grid-template-columns:1fr}}


/* --- SDNS Desk 2.1.36 dark content / widgets / start overrides --- */
.sdns-desktop-embed-body{background:#10161f!important;color:#e9eef6!important;}
.sdns-desktop-embed{padding:12px 14px 14px;background:linear-gradient(180deg,#111821,#0d141c);min-height:100vh;}
.sdns-window-content,
.sdns-window-content.container-fluid,
.sdns-app-window .sdns-window-content,
.sdns-app-window .sdns-window-content.is-frame{background:linear-gradient(180deg,#121922 0%,#0e141c 100%) !important;color:#e9eef6 !important;}
.sdns-window-content .ai-card,
.sdns-window-content .ai-panel,
.sdns-window-content .ai-item,
.sdns-window-content .card,
.sdns-window-content .list-group-item,
.sdns-window-content .table-responsive,
.sdns-window-content .modal-content{background:rgba(20,28,39,.92)!important;color:#e9eef6!important;border-color:rgba(255,255,255,.08)!important;}
.sdns-window-content h1,.sdns-window-content h2,.sdns-window-content h3,.sdns-window-content h4,.sdns-window-content h5,.sdns-window-content h6,.sdns-window-content .text-dark{color:#f4f8fc!important;}
.sdns-window-content .text-muted,.sdns-window-content .small.text-muted{color:rgba(230,238,248,.68)!important;}
.sdns-window-content .table,.sdns-window-content .table td,.sdns-window-content .table th,.sdns-window-content .form-label,.sdns-window-content .nav-link,.sdns-window-content .btn-link{color:#e9eef6!important;}
.sdns-window-content input,.sdns-window-content select,.sdns-window-content textarea{background:#0f1620!important;color:#eef4fb!important;border-color:rgba(255,255,255,.1)!important;}
.sdns-window-content .badge{box-shadow:none;}

.sdns-desktop-widgets{gap:12px;}
.sdns-desktop-widget{width:330px;background:linear-gradient(180deg,rgba(15,22,31,.9),rgba(17,26,37,.88))!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:18px!important;box-shadow:0 18px 40px rgba(0,0,0,.3)!important;backdrop-filter:blur(18px)!important;}
.sdns-desktop-widget.is-network{background:linear-gradient(180deg,rgba(17,36,55,.92),rgba(12,26,40,.9))!important;}
.sdns-desktop-widget.is-network .sdns-widget-title{color:#bfe2ff;}
.sdns-desktop-widget.is-network .sdns-widget-kicker{letter-spacing:.08em;text-transform:uppercase;}
.sdns-desktop-widget.is-network::after{content:'';position:absolute;right:18px;top:18px;width:64px;height:64px;border-radius:50%;background:radial-gradient(circle at center,rgba(70,157,255,.34),transparent 65%);pointer-events:none;}

.sdns-start-menu{left:50%!important;bottom:58px!important;transform:translateX(-50%) translateY(12px) scale(.98)!important;width:min(680px,calc(100vw - 26px))!important;max-width:min(680px,calc(100vw - 26px))!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:18px!important;background:rgba(20,24,31,.88)!important;box-shadow:0 24px 70px rgba(0,0,0,.45)!important;backdrop-filter:blur(24px)!important;overflow:hidden!important;}
body.sdns-start-open .sdns-start-menu,.sdns-start-menu.is-open{transform:translateX(-50%) translateY(0) scale(1)!important;display:block!important;opacity:1!important;}
.sdns-start-shell{display:block!important;}
.sdns-start-rail{display:none!important;}
.sdns-start-pane{padding:18px 18px 14px!important;}
.sdns-start-pane-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.sdns-start-pane-kicker{font-size:12px;color:rgba(255,255,255,.6);text-transform:none;letter-spacing:0;}
.sdns-start-pane-title{font-size:28px;font-weight:700;color:#f7faff;}
.sdns-start-layout{display:block!important;}
.sdns-start-apps{display:none!important;}
.sdns-start-pinned{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:14px;}
.sdns-start-pinned-head{display:flex;align-items:center;justify-content:space-between;color:#f7faff;font-weight:600;margin-bottom:12px;}
.sdns-start-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
.sdns-start-tile{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:10px;min-height:96px;padding:14px 12px;border-radius:14px;background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.08)!important;color:#f2f7fd!important;text-decoration:none;transition:.18s ease;}
.sdns-start-tile i{font-size:20px;color:#bfe2ff;}
.sdns-start-tile span{font-size:13px;line-height:1.35;font-weight:600;}
.sdns-start-tile:hover{background:rgba(255,255,255,.1)!important;border-color:rgba(255,255,255,.12)!important;transform:translateY(-1px);}
.sdns-start-menu::after{content:'Version ' attr(data-version);display:block;padding:10px 18px 14px;color:rgba(255,255,255,.52);font-size:12px;}

@media (max-width: 767.98px){
  .sdns-start-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .sdns-desktop-widget{width:280px;}
}


/* --- SDNS Desk 2.1.37 wallpaper / readable dark windows / widget sizing --- */
.sdns-desktop-wallpaper{
  position:absolute !important;
  inset:0 !important;
  background:
    linear-gradient(180deg, rgba(7,12,20,.18), rgba(7,12,20,.34)),
    url('/assets/img/sdns-wallpaper.png') center center / cover no-repeat !important;
  pointer-events:none !important;
}
.sdns-desktop-wallpaper::before,
.sdns-desktop-wallpaper::after{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
}
.sdns-desktop-wallpaper::before{
  background:radial-gradient(circle at 20% 16%, rgba(255,255,255,.16), transparent 18%),
             linear-gradient(135deg, rgba(255,255,255,.05), transparent 28%);
  mix-blend-mode:screen;
}
.sdns-desktop-wallpaper::after{
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0));
}

.sdns-desktop-widget{
  width:300px !important;
  padding:14px 16px !important;
  border-radius:16px !important;
}
.sdns-widget-head{margin-bottom:10px !important;}
.sdns-widget-kicker{font-size:10px !important; letter-spacing:.1em !important;}
.sdns-widget-title{font-size:17px !important;}
.sdns-widget-status{font-size:12.5px !important; margin-bottom:10px !important; line-height:1.35 !important;}
.sdns-widget-credits{font-size:24px !important; gap:4px !important; margin-bottom:8px !important;}
.sdns-widget-credits small{font-size:10px !important;}
.sdns-widget-meta{font-size:11.5px !important; line-height:1.35 !important;}

.sdns-window-content,
.sdns-window-content.container-fluid,
.sdns-app-window .sdns-window-content,
.sdns-app-window .sdns-window-content.is-frame{
  background:linear-gradient(180deg,#10161f 0%,#0b1118 100%) !important;
  color:#f4f7fb !important;
}
.sdns-app-window .sdns-window-content{
  overflow:auto !important;
  overscroll-behavior:contain;
}
.sdns-app-window .sdns-window-content.is-frame{
  overflow:hidden !important;
}
.sdns-window-content,
.sdns-window-content *{
  scrollbar-width:thin;
  scrollbar-color: rgba(255,255,255,.26) rgba(255,255,255,.06);
}
.sdns-window-content::-webkit-scrollbar,
.sdns-window-content *::-webkit-scrollbar{width:12px;height:12px;}
.sdns-window-content::-webkit-scrollbar-track,
.sdns-window-content *::-webkit-scrollbar-track{background:rgba(255,255,255,.05);}
.sdns-window-content::-webkit-scrollbar-thumb,
.sdns-window-content *::-webkit-scrollbar-thumb{background:rgba(255,255,255,.20);border-radius:999px;border:2px solid rgba(0,0,0,.18);}
.sdns-window-content a,
.sdns-window-content .text-body,
.sdns-window-content .text-body-secondary,
.sdns-window-content .text-muted,
.sdns-window-content .small,
.sdns-window-content label,
.sdns-window-content p,
.sdns-window-content li,
.sdns-window-content td,
.sdns-window-content th,
.sdns-window-content span,
.sdns-window-content div{
  color:inherit;
}
.sdns-window-content .text-muted,
.sdns-window-content .small.text-muted,
.sdns-window-content .text-secondary{
  color:rgba(244,247,251,.72) !important;
}
.sdns-window-content .card,
.sdns-window-content .ai-card,
.sdns-window-content .ai-panel,
.sdns-window-content .ai-item,
.sdns-window-content .list-group-item,
.sdns-window-content .table-responsive,
.sdns-window-content .modal-content,
.sdns-window-content .form-control,
.sdns-window-content .form-select,
.sdns-window-content textarea,
.sdns-window-content input,
.sdns-window-content select{
  color:#f4f7fb !important;
}
.sdns-window-content .table{--bs-table-color:#f4f7fb;--bs-table-bg:transparent;--bs-table-border-color:rgba(255,255,255,.08);} 
.sdns-window-content .form-control::placeholder,
.sdns-window-content textarea::placeholder{color:rgba(244,247,251,.5) !important;}
@media (max-width: 1400px){
  .sdns-desktop-widget{width:280px !important;}
}


/* --- SDNS Desk 2.1.38 embed scrolling + modern dark studio surfaces --- */
body.sdns-desktop-embed-body{overflow:auto !important;height:auto !important;max-height:none !important;background:#0f141b !important;color:#eef4ff !important;}
body.sdns-desktop-embed-body .ai-main,
body.sdns-desktop-embed-body .sdns-desktop-embed{overflow:visible !important;height:auto !important;min-height:100vh;}
body.sdns-desktop-embed-body .container,
body.sdns-desktop-embed-body .container-fluid{max-width:none;}
.sdns-window-frame{display:block;width:100%;height:100%;border:0;background:#0f141b;}
.sdns-app-window .sdns-window-content.is-frame{overflow:hidden !important;background:#0f141b !important;}
.sdns-desktop-embed{padding:18px 20px 22px;background:linear-gradient(180deg,#10161f 0%,#0c1219 100%);}
.sdns-desktop-embed .row{--bs-gutter-x:1rem;--bs-gutter-y:1rem;}
.sdns-desktop-embed h1,.sdns-desktop-embed h2,.sdns-desktop-embed h3,.sdns-desktop-embed h4,.sdns-desktop-embed h5,.sdns-desktop-embed h6{color:#f6f9ff !important;letter-spacing:.01em;}
.sdns-desktop-embed .text-muted,.sdns-desktop-embed .form-text,.sdns-desktop-embed .small,.sdns-desktop-embed .text-body-secondary{color:#9eb0c7 !important;}
.sdns-desktop-embed .ai-panel,.sdns-desktop-embed .ai-item,.sdns-desktop-embed .card{background:linear-gradient(180deg,rgba(20,27,37,.96),rgba(14,20,28,.96)) !important;border:1px solid rgba(255,255,255,.08) !important;box-shadow:0 18px 42px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.03);border-radius:16px !important;color:#edf4ff !important;}
.sdns-desktop-embed .ai-panel h2,.sdns-desktop-embed .ai-item .fw-semibold,.sdns-desktop-embed .card-title{color:#f7fbff !important;}
.sdns-desktop-embed .ai-chip{background:rgba(84,136,255,.16) !important;border:1px solid rgba(113,160,255,.24) !important;color:#d6e6ff !important;}
.sdns-desktop-embed .ai-tabs{border-bottom:1px solid rgba(255,255,255,.08);}
.sdns-desktop-embed .ai-tabs .nav-link{border:1px solid transparent;border-bottom:none;color:#b7c7da;background:transparent;border-radius:12px 12px 0 0;}
.sdns-desktop-embed .ai-tabs .nav-link.active{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.08);color:#fff;}
.sdns-desktop-embed .form-label{font-weight:600;color:#dbe7f6 !important;}
.sdns-desktop-embed .form-control,.sdns-desktop-embed .form-select,.sdns-desktop-embed textarea,.sdns-desktop-embed input{background:#0f1620 !important;border:1px solid rgba(255,255,255,.10) !important;color:#f4f8ff !important;border-radius:12px !important;box-shadow:none !important;}
.sdns-desktop-embed .form-control::placeholder,.sdns-desktop-embed textarea::placeholder,.sdns-desktop-embed input::placeholder{color:#7f93ac !important;}
.sdns-desktop-embed .form-control:focus,.sdns-desktop-embed .form-select:focus,.sdns-desktop-embed textarea:focus,.sdns-desktop-embed input:focus{border-color:rgba(91,158,255,.75)!important;box-shadow:0 0 0 3px rgba(91,158,255,.18)!important;}
.sdns-desktop-embed .btn-primary,.sdns-desktop-embed .ai-btn{background:linear-gradient(180deg,#4b8cff,#2f6fe6) !important;border-color:#2f6fe6 !important;color:#fff !important;border-radius:12px !important;}
.sdns-desktop-embed .btn-outline-light,.sdns-desktop-embed .ai-btn-soft{background:rgba(255,255,255,.05) !important;border:1px solid rgba(255,255,255,.12) !important;color:#eef4ff !important;border-radius:12px !important;}
.sdns-desktop-embed table{--bs-table-bg:transparent;--bs-table-color:#eef4ff;--bs-table-border-color:rgba(255,255,255,.08);}
.sdns-desktop-embed .table> :not(caption)>*>*{background:transparent !important;color:#edf4ff !important;border-color:rgba(255,255,255,.08) !important;}
.sdns-desktop-embed .table-striped>tbody>tr:nth-of-type(odd)>*{background:rgba(255,255,255,.02) !important;}
.sdns-desktop-embed code{background:rgba(255,255,255,.08);padding:.15rem .4rem;border-radius:8px;color:#dceaff;}
.sdns-desktop-embed audio{filter:brightness(.95) contrast(1.05);}
.sdns-desktop-embed .studio-shell,.sdns-desktop-embed .studio-header{margin-bottom:14px;}
.sdns-desktop-embed .studio-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#85a3c7 !important;margin-bottom:6px;font-weight:700;}
.sdns-desktop-embed .studio-subtitle{font-size:14px;color:#9eb0c7 !important;max-width:920px;line-height:1.55;}


/* v2.1.39 embed scroll fix */
html.sdns-desktop-embed-html,
html.sdns-desktop-embed-html body{
  height:auto !important;
  min-height:100% !important;
  max-height:none !important;
  overflow:auto !important;
}
html.sdns-desktop-embed-html body.sdns-desktop-embed-body,
html.sdns-desktop-embed-html body.sdns-desktop-embed-body .sdns-desktop-embed{
  height:auto !important;
  min-height:100% !important;
  max-height:none !important;
  overflow:visible !important;
}
html.sdns-desktop-embed-html .sdns-desktop-embed{
  display:block;
}
.sdns-app-window .sdns-window-content.is-frame{
  display:flex;
  flex-direction:column;
}
.sdns-window-frame{
  flex:1 1 auto;
  min-height:0;
  height:100%;
  overflow:auto;
  background:#0f141b;
}

.ai-status-box{font-size:.92rem;line-height:1.45;border-radius:14px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.04);color:#eef3ff}.sdns-desktop-embed .toast-container{z-index:99999}.sdns-desktop-embed .toast{backdrop-filter:blur(12px)}


.sdns-mobile-blocker{display:none;position:fixed;inset:0;z-index:999999;background:linear-gradient(180deg,#0b1220,#0f172a 48%,#111827);padding:24px;align-items:center;justify-content:center;color:#fff;text-align:center}
.sdns-mobile-blocker-card{max-width:560px;background:rgba(17,24,39,.86);border:1px solid rgba(255,255,255,.12);border-radius:24px;padding:28px 24px;box-shadow:0 24px 60px rgba(0,0,0,.45)}
.sdns-mobile-blocker-logo{width:72px;height:72px;border-radius:20px;margin:0 auto 18px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);font-size:34px}
.sdns-mobile-blocker h1{font-size:1.35rem;line-height:1.25;margin:0 0 12px;font-weight:700}
.sdns-mobile-blocker p{margin:0;color:rgba(255,255,255,.82);font-size:.98rem;line-height:1.55}
@media (max-width: 1024px), (hover:none) and (pointer:coarse){body.sdns-mobile-guard{overflow:hidden!important}body.sdns-mobile-guard>.sdns-mobile-blocker{display:flex}body.sdns-mobile-guard>*:not(.sdns-mobile-blocker){display:none!important}}

/* Profile app */
.sdns-profile-app{color:#eef3ff}
.sdns-profile-hero{margin-bottom:1rem}
.sdns-profile-hero-main{display:grid;grid-template-columns:minmax(320px,420px) minmax(0,1fr);gap:18px}
.sdns-profile-avatar-card,.sdns-profile-panel,.sdns-profile-summary-card{background:rgba(16,20,31,.86);border:1px solid rgba(255,255,255,.09);box-shadow:0 18px 40px rgba(0,0,0,.24);backdrop-filter:blur(10px);border-radius:24px}
.sdns-profile-avatar-card{display:flex;gap:18px;align-items:center;padding:22px}
.sdns-profile-avatar-wrap{width:112px;height:112px;border-radius:28px;overflow:hidden;background:linear-gradient(135deg,rgba(95,155,255,.22),rgba(40,90,190,.22));border:1px solid rgba(255,255,255,.14);flex:0 0 auto}
.sdns-profile-avatar-img{width:100%;height:100%;object-fit:cover;display:block}
.sdns-profile-overline{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:#8da3c9}
.sdns-profile-name{font-size:1.5rem;color:#fff;font-weight:700}
.sdns-profile-email{color:#d4ddf1;word-break:break-word}
.sdns-profile-role-badge{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;background:rgba(92,135,255,.16);color:#dce7ff;border:1px solid rgba(110,154,255,.22);font-size:.86rem}
.sdns-profile-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.sdns-profile-summary-card{padding:18px 20px}
.sdns-profile-summary-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;color:#89a0c5;margin-bottom:8px}
.sdns-profile-summary-value{font-size:1.1rem;font-weight:700;color:#fff}
.sdns-profile-panel{padding:22px}
.sdns-profile-panel-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}
.sdns-profile-panel-title{font-size:1.15rem;margin:0;color:#fff;font-weight:700}
.sdns-profile-upload-zone{padding:16px;border-radius:18px;background:rgba(255,255,255,.04);border:1px dashed rgba(255,255,255,.12)}
.sdns-profile-upload-hint{margin-top:8px;font-size:.88rem;color:#a8b8d7}
.sdns-profile-divider{height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.14),transparent)}
.sdns-profile-security-title{font-weight:700;color:#fff;margin-bottom:4px}
.sdns-profile-security-sub{color:#a9b6cf;font-size:.92rem}
.sdns-profile-panel .form-label{color:#dfe8fb;font-weight:600}
.sdns-profile-panel .form-control{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);color:#fff;border-radius:14px;padding:.8rem .95rem}
.sdns-profile-panel .form-control::placeholder{color:#8ea2c5}
.sdns-profile-panel .form-control:focus{background:rgba(255,255,255,.08);border-color:rgba(122,160,255,.5);box-shadow:0 0 0 .2rem rgba(77,127,255,.18);color:#fff}
@media (max-width: 1199px){.sdns-profile-hero-main{grid-template-columns:1fr}.sdns-profile-summary-grid{grid-template-columns:1fr}}


.settings-brand-panel{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:180px}.settings-brand-link{display:inline-flex;max-width:min(100%,780px);text-decoration:none}.settings-brand-logo{display:block;max-width:100%;height:auto;filter:drop-shadow(0 10px 24px rgba(0,0,0,.35))}

.sdns-shutdown-overlay{position:fixed;inset:0;z-index:999998;display:none;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(circle at 20% 18%,rgba(96,165,250,.22),transparent 24%),radial-gradient(circle at 80% 20%,rgba(168,85,247,.16),transparent 28%),linear-gradient(180deg,#04070d,#09111c 42%,#060c14 100%);opacity:0;transition:opacity .34s ease}
body.sdns-shutdown-active .sdns-shutdown-overlay{display:flex;opacity:1}
body.sdns-shutdown-active .sdns-desktop-shell > :not(.sdns-shutdown-overlay){filter:blur(4px) saturate(.9);transform:scale(.989);transition:filter .28s ease,transform .28s ease}
body.sdns-shutdown-active .sdns-shutdown-overlay{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.sdns-shutdown-ambient{position:absolute;inset:-12%;background:radial-gradient(circle at center,rgba(96,165,250,.16),transparent 28%),radial-gradient(circle at 50% 60%,rgba(255,255,255,.06),transparent 20%);filter:blur(18px);animation:sdnsShutdownAmbient 6s ease-in-out infinite alternate}
.sdns-shutdown-core{position:relative;width:min(680px,calc(100vw - 32px));padding:34px 34px 28px;border-radius:30px;color:#fff;background:linear-gradient(180deg,rgba(10,18,31,.88),rgba(7,13,24,.92));border:1px solid rgba(255,255,255,.12);box-shadow:0 40px 120px rgba(0,0,0,.58),0 10px 30px rgba(22,31,58,.34),inset 0 1px 0 rgba(255,255,255,.09);overflow:hidden}
.sdns-shutdown-frame{position:absolute;inset:1px;border-radius:29px;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.06),transparent 22%,transparent 70%,rgba(255,255,255,.03));mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);padding:1px;-webkit-mask-composite:xor;mask-composite:exclude;opacity:.85}
.sdns-shutdown-head{position:relative;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}
.sdns-shutdown-logo{width:84px;height:84px;border-radius:26px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 30% 30%,rgba(147,197,253,.34),rgba(59,130,246,.14) 55%,rgba(30,64,175,.2));border:1px solid rgba(255,255,255,.14);font-size:38px;box-shadow:0 18px 44px rgba(23,37,84,.34),inset 0 1px 0 rgba(255,255,255,.18);color:#f7fbff}
.sdns-shutdown-badge{display:inline-flex;align-items:center;gap:9px;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#d8e6ff;font-size:.86rem;letter-spacing:.03em;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.sdns-shutdown-kicker{position:relative;font-size:.76rem;letter-spacing:.22em;text-transform:uppercase;color:#8fb4ff;font-weight:700;margin-bottom:8px}
.sdns-shutdown-title{position:relative;font-size:clamp(1.55rem,2vw,2.1rem);font-weight:800;letter-spacing:.01em;line-height:1.12;max-width:560px}
.sdns-shutdown-sub{position:relative;margin-top:10px;color:rgba(232,240,255,.8);font-size:1rem;line-height:1.6;max-width:590px}
.sdns-shutdown-progress{position:relative;height:12px;margin-top:22px;border-radius:999px;padding:2px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);overflow:hidden}
.sdns-shutdown-progress span{display:block;height:100%;width:42%;border-radius:999px;background:linear-gradient(90deg,rgba(96,165,250,.42),rgba(129,140,248,.86),rgba(56,189,248,.58));box-shadow:0 0 20px rgba(96,165,250,.4);animation:sdnsShutdownBar 4.8s ease-in-out infinite}
.sdns-shutdown-meta{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}
.sdns-shutdown-meta span{display:flex;align-items:center;gap:10px;min-height:52px;padding:12px 14px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:#dbe7fb;font-size:.92rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.sdns-shutdown-meta i{color:#9fc1ff;font-size:1rem}
.sdns-shutdown-loader{position:relative;display:flex;justify-content:center;gap:10px;margin-top:20px}
.sdns-shutdown-loader span{width:11px;height:11px;border-radius:999px;background:linear-gradient(180deg,#eef5ff,#8fb4ff);box-shadow:0 0 18px rgba(143,180,255,.42);animation:sdnsShutdownPulse 1.8s infinite ease-in-out}
.sdns-shutdown-loader span:nth-child(2){animation-delay:.16s}
.sdns-shutdown-loader span:nth-child(3){animation-delay:.32s}
@keyframes sdnsShutdownAmbient{0%{transform:scale(1) translateY(0)}100%{transform:scale(1.08) translateY(10px)}}
@keyframes sdnsShutdownBar{0%{transform:translateX(-20%);width:34%}50%{transform:translateX(72%);width:24%}100%{transform:translateX(-20%);width:34%}}
@keyframes sdnsShutdownPulse{0%,80%,100%{transform:scale(.55);opacity:.35}40%{transform:scale(1);opacity:1}}
@media (max-width:720px){.sdns-shutdown-core{padding:28px 22px 24px;border-radius:24px}.sdns-shutdown-head{flex-direction:column;align-items:flex-start}.sdns-shutdown-logo{width:74px;height:74px;border-radius:22px;font-size:34px}.sdns-shutdown-meta{grid-template-columns:1fr}.sdns-shutdown-title{font-size:1.45rem}}


/* --- SDNS Desk 2.1.67 professional profile/settings surfaces --- */
.sdns-page-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px 24px;border-radius:24px;background:linear-gradient(180deg,rgba(17,23,34,.92),rgba(11,17,27,.94));border:1px solid rgba(255,255,255,.08);box-shadow:0 18px 42px rgba(0,0,0,.24);color:#eef4ff}
.sdns-page-kicker{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#8ba1c7;font-weight:700}
.sdns-page-title{font-size:1.7rem;font-weight:700;color:#fff}
.sdns-page-subtitle{max-width:860px;color:#bfcee4;line-height:1.6}
.sdns-page-stats{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:12px;min-width:min(420px,100%)}
.sdns-page-stat{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);display:flex;flex-direction:column;gap:6px}
.sdns-page-stat span{font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:#8ba1c7}
.sdns-page-stat strong{font-size:1.08rem;color:#fff;font-weight:700}
.sdns-toolbar-row{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.sdns-toolbar-meta{display:flex;gap:10px;flex-wrap:wrap}
.sdns-toolbar-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(82,128,255,.16);border:1px solid rgba(120,160,255,.22);color:#dbe6ff;font-size:.86rem}
.sdns-toolbar-pill.is-soft{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.1);color:#d6e1f1}
.sdns-checklist{display:grid;gap:12px}
.sdns-checklist-item{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:#dbe5f5}
.sdns-checklist-item i{color:#79a8ff;margin-top:2px}
.sdns-info-card{padding:16px 18px;border-radius:18px;background:rgba(82,128,255,.1);border:1px solid rgba(120,160,255,.18)}
.sdns-info-card-title{font-weight:700;color:#f2f7ff;margin-bottom:8px}
.sdns-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:44px 24px;border-radius:22px;border:1px dashed rgba(255,255,255,.12);background:rgba(255,255,255,.03);min-height:280px}
.sdns-empty-state-icon{width:74px;height:74px;border-radius:22px;display:flex;align-items:center;justify-content:center;background:rgba(82,128,255,.14);color:#9bbcff;font-size:1.8rem;margin-bottom:16px}
.sdns-empty-state h3{font-size:1.15rem;color:#fff;margin-bottom:8px}
.sdns-media-list{display:grid;gap:14px}
.sdns-media-card{padding:18px;border-radius:20px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);box-shadow:0 14px 30px rgba(0,0,0,.16)}
.sdns-media-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.sdns-media-card-kicker{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#88a2c8;font-weight:700}
.sdns-media-card-title{font-size:1.05rem;color:#fff;margin:4px 0 0}
.sdns-media-card-meta{display:flex;gap:14px;flex-wrap:wrap;color:#b9c9de;font-size:.88rem;margin-top:10px}
.sdns-media-card-meta span{display:inline-flex;align-items:center;gap:6px}
.sdns-upload-dropzone{min-height:230px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}
.sdns-upload-dropzone-icon{width:58px;height:58px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:rgba(82,128,255,.14);color:#9bbcff;font-size:1.45rem}
.sdns-profile-role-badge i{font-size:.78rem}
.sdns-profile-role-badge.is-soft{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.1);color:#d8e3f7}
.sdns-profile-hero-text{color:#cad8ea;line-height:1.6;max-width:680px}
.sdns-profile-avatar-wrap--lg{width:124px;height:124px;border-radius:32px}
.sdns-profile-panel-copy{color:#aabbd3;line-height:1.6;max-width:680px}
.sdns-profile-panel--sticky{position:sticky;top:20px}
.sdns-profile-upload-top{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.sdns-profile-upload-icon{width:44px;height:44px;border-radius:14px;background:rgba(82,128,255,.16);border:1px solid rgba(120,160,255,.2);display:inline-flex;align-items:center;justify-content:center;color:#d7e4ff}
.sdns-profile-file-meta{margin-top:10px;font-size:.9rem;color:#b7c8df}
.sdns-profile-note-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.sdns-profile-note-card{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.sdns-profile-note-title{font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:#8da3c9;margin-bottom:6px}
.sdns-profile-note-value{color:#fff;font-weight:700;word-break:break-word}
.sdns-profile-data-strip{display:flex;gap:12px;flex-wrap:wrap}
.sdns-profile-data-chip{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);min-width:180px}
.sdns-profile-data-chip span{font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:#8ba1c7}
.sdns-profile-data-chip strong{color:#fff;font-size:.98rem}
@media (max-width: 1199.98px){.sdns-page-hero{flex-direction:column}.sdns-page-stats{min-width:0;width:100%}.sdns-profile-panel--sticky{position:static}}
@media (max-width: 991.98px){.sdns-page-stats{grid-template-columns:1fr}.sdns-profile-note-grid{grid-template-columns:1fr}.sdns-profile-data-chip{min-width:0;flex:1 1 100%}}

/* --- SDNS Desk 2.1.68 protocol center refinement --- */
.sdns-protocols-hero{align-items:center}
.sdns-protocol-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.sdns-protocol-toolbar-item{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.08);box-shadow:0 18px 38px rgba(0,0,0,.18)}
.sdns-protocol-toolbar-item i{font-size:1.35rem;color:#8db5ff;line-height:1}
.sdns-protocol-toolbar-item strong{display:block;color:#f4f8ff;margin-bottom:4px}
.sdns-protocol-toolbar-item span{display:block;color:#9eb0c7;line-height:1.5}
.sdns-protocol-empty{display:flex;align-items:center;gap:18px;border-radius:22px}
.sdns-protocol-empty-icon{width:58px;height:58px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:rgba(71,153,113,.16);color:#8df0af;font-size:1.6rem;flex:0 0 auto}
.sdns-protocol-card{padding:20px 22px;border-radius:24px;display:flex;flex-direction:column;gap:18px;box-shadow:0 20px 42px rgba(0,0,0,.22)}
.sdns-protocol-card-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.sdns-protocol-titlewrap{display:flex;gap:14px;align-items:flex-start;min-width:0}
.sdns-protocol-icon{width:50px;height:50px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);font-size:1.2rem;flex:0 0 auto}
.sdns-protocol-icon.is-danger,.sdns-protocol-badge.is-danger{background:rgba(212,74,74,.16);border-color:rgba(255,107,107,.18);color:#ffb1b1}
.sdns-protocol-icon.is-warning,.sdns-protocol-badge.is-warning{background:rgba(209,155,66,.16);border-color:rgba(255,207,117,.2);color:#ffd98a}
.sdns-protocol-icon.is-neutral,.sdns-protocol-badge.is-neutral{background:rgba(90,122,173,.16);border-color:rgba(126,163,223,.18);color:#b9d1ff}
.sdns-protocol-title{font-size:1.08rem;color:#f7fbff;line-height:1.25}
.sdns-protocol-path{color:#90a4c2;word-break:break-all;line-height:1.5}
.sdns-protocol-badge{display:inline-flex;align-items:center;justify-content:center;height:30px;padding:0 12px;border-radius:999px;border:1px solid rgba(255,255,255,.08);font-size:.8rem;font-weight:700;letter-spacing:.01em}
.sdns-protocol-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.sdns-protocol-filesize{display:inline-flex;align-items:center;height:40px;padding:0 12px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:#b9c8dc;font-size:.92rem}
.sdns-protocol-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.sdns-protocol-panel{padding:14px 16px;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.08);min-width:0}
.sdns-protocol-panel-span2{grid-column:span 2}
.sdns-protocol-panel-label{font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;color:#86a0c4;margin-bottom:8px}
.sdns-protocol-panel-value{color:#f4f8ff;line-height:1.6;word-break:break-word}
.sdns-protocol-panel-emphasis{background:linear-gradient(180deg,rgba(71,109,176,.16),rgba(45,72,120,.10));border-color:rgba(117,157,226,.22)}
.sdns-protocol-details{border-radius:20px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);overflow:hidden}
.sdns-protocol-details summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 18px;cursor:pointer;color:#dde8f8;font-weight:600}
.sdns-protocol-details summary::-webkit-details-marker{display:none}
.sdns-protocol-details summary span{display:inline-flex;align-items:center;gap:10px}
.sdns-protocol-details summary i{transition:transform .18s ease}
.sdns-protocol-details[open] summary i{transform:rotate(90deg)}
.sdns-protocol-details summary small{color:#8ea3bf;font-weight:500}
.sdns-protocol-details-body{padding:0 18px 18px}
.sdns-protocol-subcard{height:100%;padding:16px;border-radius:18px;background:rgba(10,16,25,.46);border:1px solid rgba(255,255,255,.08)}
.sdns-protocol-subtitle{font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;color:#86a0c4;margin-bottom:10px}
.sdns-protocol-textarea{min-height:220px;resize:vertical}
.sdns-protocol-pre{min-height:220px;max-height:420px;overflow:auto;padding:14px 15px;border-radius:14px;background:#0b1017;border:1px solid rgba(255,255,255,.07);color:#d9e7ff;font-size:.88rem;line-height:1.55;white-space:pre-wrap;word-break:break-word}
@media (max-width: 991px){.sdns-protocol-card-top{flex-direction:column}.sdns-protocol-actions{justify-content:flex-start}.sdns-protocol-grid{grid-template-columns:1fr}.sdns-protocol-panel-span2{grid-column:span 1}}
@media (max-width: 767px){.sdns-protocol-toolbar{grid-template-columns:1fr}.sdns-protocol-titlewrap{align-items:flex-start}.sdns-protocol-card{padding:18px}.sdns-protocol-details summary{flex-direction:column;align-items:flex-start}}


/* --- SDNS Desk 2.1.72 desktop widget 3D depth upgrade --- */
.sdns-desktop-widget{
  overflow:hidden;
  border-radius:22px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.12) 0%, rgba(255,255,255,.02) 16%, rgba(8,14,22,.94) 100%),
    linear-gradient(145deg, rgba(29,42,60,.96), rgba(10,16,24,.96)) !important;
  box-shadow:
    0 30px 70px rgba(0,0,0,.42),
    0 16px 28px rgba(0,0,0,.30),
    inset 0 1px 0 rgba(255,255,255,.18),
    inset 0 -18px 30px rgba(0,0,0,.20) !important;
  transform:perspective(1200px) rotateX(0deg) translateZ(0);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, filter .22s ease;
}
.sdns-desktop-widget::before,
.sdns-desktop-widget::after{
  content:'';
  position:absolute;
  pointer-events:none;
}
.sdns-desktop-widget::before{
  inset:0;
  border-radius:inherit;
  background:
    linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,0) 28%),
    radial-gradient(circle at 18% 14%, rgba(120,190,255,.18), transparent 34%),
    radial-gradient(circle at 86% 115%, rgba(255,170,56,.10), transparent 30%);
  opacity:.95;
}
.sdns-desktop-widget::after{
  left:16px;
  right:16px;
  bottom:-18px;
  height:28px;
  border-radius:50%;
  background:radial-gradient(ellipse at center, rgba(0,0,0,.36) 0%, rgba(0,0,0,0) 72%);
  filter:blur(8px);
  opacity:.95;
}
.sdns-desktop-widget:hover{
  transform:perspective(1200px) rotateX(1.3deg) translateY(-2px);
  box-shadow:
    0 36px 80px rgba(0,0,0,.48),
    0 18px 32px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -18px 30px rgba(0,0,0,.22) !important;
  border-color:rgba(255,255,255,.20) !important;
  filter:saturate(1.03);
}
.sdns-widget-head,
.sdns-widget-status,
.sdns-widget-credits,
.sdns-widget-meta{
  position:relative;
  z-index:1;
}
.sdns-widget-head{
  padding-bottom:10px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.sdns-widget-title{
  text-shadow:0 2px 10px rgba(0,0,0,.34);
}
.sdns-widget-status{
  padding:10px 12px;
  margin-top:2px;
  border-radius:14px;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.sdns-widget-credits{
  padding:14px 14px 12px;
  border-radius:16px;
  background:linear-gradient(180deg, rgba(7,14,22,.44), rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 8px 18px rgba(0,0,0,.18);
}
.sdns-widget-meta{
  padding-top:2px;
  text-shadow:0 1px 4px rgba(0,0,0,.25);
}
.sdns-desktop-widget.is-eleven{
  background:
    linear-gradient(180deg, rgba(113,78,255,.16) 0%, rgba(255,255,255,.02) 18%, rgba(9,13,23,.95) 100%),
    linear-gradient(145deg, rgba(31,22,61,.96), rgba(9,13,23,.96)) !important;
}
.sdns-desktop-widget.is-network{
  background:
    linear-gradient(180deg, rgba(68,170,255,.16) 0%, rgba(255,255,255,.02) 18%, rgba(8,17,28,.95) 100%),
    linear-gradient(145deg, rgba(13,40,67,.96), rgba(8,17,28,.96)) !important;
}
.sdns-desktop-widget.is-uploads{
  background:
    linear-gradient(180deg, rgba(255,170,67,.14) 0%, rgba(255,255,255,.02) 18%, rgba(18,14,11,.95) 100%),
    linear-gradient(145deg, rgba(49,31,18,.96), rgba(18,14,11,.96)) !important;
}

/* --- SDNS Desk 2.1.76 Heimnetz design upgrade --- */
.home-network-hero{
  background:
    linear-gradient(180deg, rgba(76,168,255,.12) 0%, rgba(255,255,255,.02) 30%, rgba(9,14,22,.88) 100%),
    linear-gradient(145deg, rgba(11,24,38,.96), rgba(8,12,19,.96));
  border:1px solid rgba(138,202,255,.16);
  box-shadow:0 28px 70px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.10);
}
.home-network-stat-card{
  position:relative;
  overflow:hidden;
  min-height:136px;
  padding:18px 18px 16px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.10);
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03)),
    linear-gradient(145deg, rgba(15,26,40,.94), rgba(9,14,22,.98));
  box-shadow:0 22px 50px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.10), inset 0 -18px 26px rgba(0,0,0,.18);
}
.home-network-stat-card::before{
  content:'';
  position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,0) 36%);
}
.home-network-stat-card.accent-amber{
  background:
    linear-gradient(180deg, rgba(255,176,70,.12), rgba(255,255,255,.03)),
    linear-gradient(145deg, rgba(44,29,14,.94), rgba(18,14,11,.98));
}
.home-network-stat-label{font-size:.78rem; text-transform:uppercase; letter-spacing:.12em; color:rgba(199,217,236,.72); margin-bottom:10px;}
.home-network-stat-value{font-size:1.25rem; font-weight:700; color:#f7fbff; text-shadow:0 2px 10px rgba(0,0,0,.22);}
.home-network-stat-meta{margin-top:8px; color:rgba(199,217,236,.70); font-size:.9rem;}
.home-network-shell{
  border-radius:28px;
  border:1px solid rgba(255,255,255,.10);
  background:
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02)),
    linear-gradient(145deg, rgba(10,17,27,.98), rgba(8,12,18,.98));
  box-shadow:0 34px 80px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.08);
}
.home-network-toolbar{display:flex; justify-content:space-between; gap:18px; align-items:center; padding:18px 22px; border-bottom:1px solid rgba(255,255,255,.08); background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,0));}
.home-network-toolbar-main,.home-network-toolbar-actions{display:flex; flex-wrap:wrap; gap:12px; align-items:center;}
.home-network-context-chip{padding:10px 14px; border-radius:16px; border:1px solid rgba(255,255,255,.08); background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02)); box-shadow:inset 0 1px 0 rgba(255,255,255,.06);}
.home-network-context-label{display:block; font-size:.72rem; text-transform:uppercase; letter-spacing:.12em; color:rgba(194,211,227,.66); margin-bottom:4px;}
.home-network-grid{display:grid; grid-template-columns:340px 1fr; gap:0;}
.home-network-sidepanel{padding:22px; border-right:1px solid rgba(255,255,255,.08); background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));}
.home-network-mainpanel{padding:22px;}
.home-network-panel-title{font-size:.82rem; text-transform:uppercase; letter-spacing:.12em; color:rgba(194,211,227,.68); margin-bottom:14px;}
.home-network-panel-head{display:flex; justify-content:space-between; gap:16px; align-items:flex-start; margin-bottom:16px;}
.home-network-panel-copy{color:rgba(210,224,238,.72);}
.home-network-form-grid{display:grid; gap:14px;}
.home-network-note{margin-top:16px; padding:14px 16px; border-radius:18px; border:1px solid rgba(130,196,255,.12); background:linear-gradient(180deg, rgba(75,142,255,.09), rgba(255,255,255,.03)); color:rgba(224,236,247,.82); box-shadow:inset 0 1px 0 rgba(255,255,255,.06);}
.home-network-legend{display:flex; flex-wrap:wrap; gap:12px; color:rgba(206,221,237,.78); font-size:.92rem;}
.home-network-legend span{display:inline-flex; align-items:center; gap:7px; padding:8px 12px; border-radius:14px; border:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.03);}
.home-network-table-wrap{border-radius:22px; overflow:hidden; border:1px solid rgba(255,255,255,.08); background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015)); box-shadow:inset 0 1px 0 rgba(255,255,255,.04);}
.home-network-table thead th{border-bottom-color:rgba(255,255,255,.08); color:rgba(204,220,236,.78); text-transform:uppercase; letter-spacing:.10em; font-size:.74rem; background:rgba(255,255,255,.02);}
.home-network-table tbody td{border-top-color:rgba(255,255,255,.06);}
.home-network-row{transition:background .18s ease, transform .18s ease;}
.home-network-row:hover{background:rgba(255,255,255,.035);}
.home-network-entry-link{display:inline-flex; align-items:center; gap:10px; color:#f6fbff; text-decoration:none; font-weight:600;}
.home-network-entry-link:hover{color:#ffffff; text-shadow:0 2px 10px rgba(75,160,255,.28);}
.home-network-row-share td:first-child{background:linear-gradient(90deg, rgba(69,159,255,.08), rgba(69,159,255,0));}
.home-network-row-dir td:first-child{background:linear-gradient(90deg, rgba(136,177,255,.05), rgba(136,177,255,0));}
.home-network-row-file td:first-child{background:linear-gradient(90deg, rgba(255,186,87,.04), rgba(255,186,87,0));}
.home-network-empty{padding:22px 18px !important;}
.home-network-empty-box{display:flex; align-items:center; gap:14px; padding:18px 20px; border-radius:18px; border:1px dashed rgba(255,255,255,.10); background:rgba(255,255,255,.025); color:rgba(210,224,238,.76);}
.home-network-empty-box i{font-size:1.4rem;}
.home-network-modal .modal-body{background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0));}
.home-network-modal-table tbody tr td{border-top-color:rgba(255,255,255,.06);}
@media (max-width: 991.98px){
  .home-network-grid{grid-template-columns:1fr;}
  .home-network-sidepanel{border-right:0; border-bottom:1px solid rgba(255,255,255,.08);}
  .home-network-toolbar,.home-network-panel-head{flex-direction:column; align-items:flex-start;}
}


/* SDNS taskbar pro polish */
.sdns-taskbar{
  height:56px;
  padding:0 10px;
  background:
    linear-gradient(180deg, rgba(77,101,131,.96) 0%, rgba(34,51,72,.97) 14%, rgba(17,27,40,.98) 100%);
  border-top:1px solid rgba(255,255,255,.18);
  box-shadow:0 -14px 34px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.12);
  backdrop-filter: blur(16px) saturate(135%);
}
.sdns-taskbar::before{
  content:"";
  position:absolute;
  left:0; right:0; top:0;
  height:1px;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.38), rgba(255,255,255,0));
  pointer-events:none;
}
.sdns-taskbar-left,.sdns-taskbar-right{ gap:6px; }
.sdns-start-button,.sdns-taskbar-app,.sdns-taskbar-power,.sdns-taskbar-icon{
  position:relative;
  height:42px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.13);
  background:linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,.05));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16), inset 0 -1px 0 rgba(0,0,0,.28), 0 10px 18px rgba(0,0,0,.22);
}
.sdns-start-button:hover,.sdns-taskbar-app:hover,.sdns-taskbar-power:hover,.sdns-taskbar-icon:hover,.sdns-taskbar-app.is-active{
  background:linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,.08));
}
.sdns-start-button:active,.sdns-taskbar-app:active,.sdns-taskbar-power:active,.sdns-taskbar-icon:active{
  transform:translateY(1px);
}
.sdns-start-logo{
  width:24px; height:24px; border-radius:8px; display:inline-flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg, rgba(118,181,255,.36), rgba(70,115,255,.18));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18);
}
.sdns-taskbar-windows{
  padding:3px;
  border-radius:14px;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09);
}
.sdns-taskbar-app{ min-width:46px; max-width:210px; }
.sdns-taskbar-app i{ font-size:1rem; }
.sdns-taskbar-app.is-active{
  border-color:rgba(131,196,255,.46);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18), inset 0 -3px 0 rgba(105,184,255,.95), 0 10px 18px rgba(0,0,0,.24);
}
.sdns-taskbar-user{
  min-width:0;
  padding:5px 12px 5px 8px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.13), rgba(255,255,255,.04));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14), 0 10px 18px rgba(0,0,0,.18);
}
.sdns-taskbar-user:hover{
  background:linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.07));
}
.sdns-taskbar-user span:last-child{
  max-width:180px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-weight:600; letter-spacing:.01em;
}
.sdns-taskbar-avatar{
  width:32px; height:32px; border-radius:11px;
  background:linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,.09));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.15), 0 6px 14px rgba(0,0,0,.2);
}
.sdns-taskbar-status{
  padding:0 10px; height:38px; border-radius:12px; align-items:center;
  background:linear-gradient(180deg, rgba(255,255,255,.1), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.sdns-taskbar-clock{
  min-width:98px; padding:0 8px;
  border-radius:12px;
  background:linear-gradient(180deg, rgba(255,255,255,.1), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.sdns-taskbar-clock #sdnsDesktopClock{ font-size:.92rem; font-weight:700; letter-spacing:.02em; }
.sdns-taskbar-power{ width:42px; justify-content:center; padding:0; }
@media (max-width: 991.98px){
  .sdns-taskbar{ height:52px; padding:0 6px; }
  .sdns-start-button,.sdns-taskbar-app,.sdns-taskbar-power,.sdns-taskbar-icon{ height:38px; border-radius:10px; }
  .sdns-taskbar-user{ padding:4px 8px 4px 6px; border-radius:10px; }
  .sdns-taskbar-avatar{ width:28px; height:28px; border-radius:9px; }
}


/* --- SDNS Desk 2.2.0 final taskbar premium finish --- */
.sdns-taskbar{
  min-height:58px;
  padding:0 12px;
  background:
    radial-gradient(circle at top center, rgba(121,170,255,.16), transparent 34%),
    linear-gradient(180deg, rgba(89,112,143,.97) 0%, rgba(37,54,75,.975) 15%, rgba(15,24,37,.985) 100%);
  border-top:1px solid rgba(255,255,255,.20);
  box-shadow:0 -18px 44px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.14), inset 0 -1px 0 rgba(0,0,0,.28);
}
.sdns-taskbar-left,.sdns-taskbar-right{gap:8px; align-items:center;}
.sdns-taskbar-windows{
  padding:4px;
  border-radius:16px;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.025));
  border:1px solid rgba(255,255,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10), inset 0 -10px 20px rgba(0,0,0,.12);
}
.sdns-start-button,.sdns-taskbar-app,.sdns-taskbar-power,.sdns-taskbar-icon{
  border-radius:14px;
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.05));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16), inset 0 -1px 0 rgba(0,0,0,.28), 0 10px 22px rgba(0,0,0,.22);
  transition:background .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.sdns-start-button:hover,.sdns-taskbar-app:hover,.sdns-taskbar-power:hover,.sdns-taskbar-icon:hover{
  border-color:rgba(173,214,255,.24);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.20), inset 0 -1px 0 rgba(0,0,0,.22), 0 14px 24px rgba(0,0,0,.24);
  transform:translateY(-1px);
}
.sdns-start-button .d-none.d-xl-inline{font-weight:700; letter-spacing:.01em;}
.sdns-taskbar-app{max-width:228px; gap:8px;}
.sdns-taskbar-app i{opacity:.96;}
.sdns-taskbar-app span{font-weight:600;}
.sdns-taskbar-app.is-active{
  border-color:rgba(135,200,255,.48);
  background:linear-gradient(180deg, rgba(255,255,255,.24), rgba(255,255,255,.08));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.20), inset 0 -3px 0 rgba(102,184,255,.96), 0 14px 28px rgba(0,0,0,.26);
}
.sdns-taskbar-user{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:5px 12px 5px 8px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,.05));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.15), 0 12px 24px rgba(0,0,0,.20);
}
.sdns-taskbar-usercopy{display:flex; flex-direction:column; min-width:0; line-height:1.08;}
.sdns-taskbar-usercopy small{font-size:10px; text-transform:uppercase; letter-spacing:.12em; color:rgba(214,228,242,.72);}
.sdns-taskbar-usercopy strong{max-width:170px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; color:#fff;}
.sdns-taskbar-userpulse{width:8px; height:8px; border-radius:999px; background:#6ee7b7; box-shadow:0 0 0 4px rgba(110,231,183,.12), 0 0 12px rgba(110,231,183,.38); flex:0 0 auto;}
.sdns-taskbar-avatar{flex:0 0 auto;}
.sdns-taskbar-status,.sdns-taskbar-clock{
  height:40px;
  display:flex;
  align-items:center;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.11), rgba(255,255,255,.03));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.sdns-taskbar-status{padding:0 12px; gap:10px;}
.sdns-taskbar-clock{min-width:104px; padding:0 10px; justify-content:center; flex-direction:column;}
.sdns-taskbar-clock #sdnsDesktopDate{font-size:11px; color:rgba(221,232,243,.74);}
@media (max-width: 991.98px){
  .sdns-taskbar{min-height:52px; padding:0 6px;}
  .sdns-taskbar-left,.sdns-taskbar-right{gap:4px;}
  .sdns-start-button,.sdns-taskbar-app,.sdns-taskbar-power,.sdns-taskbar-icon{border-radius:11px;}
  .sdns-taskbar-user{padding:4px 8px 4px 6px; border-radius:11px;}
}


/* --- SDNS Desk 2.2.3 uploads widget refinement --- */
.sdns-desktop-widget.is-uploads .sdns-widget-status{
  margin-bottom:12px;
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.03));
}
.sdns-desktop-widget.is-uploads .sdns-widget-credits{
  padding:12px;
  border-radius:20px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.02)),
    linear-gradient(145deg, rgba(17,12,9,.92), rgba(29,19,12,.92));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    0 12px 24px rgba(0,0,0,.18);
}
.sdns-desktop-widget.is-uploads .sdns-widget-meta{
  padding-top:10px;
}
.sdns-activity-stack{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.sdns-activity-item{
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  gap:12px;
  align-items:flex-start;
  padding:12px 12px 11px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 10px 18px rgba(0,0,0,.12);
}
.sdns-activity-item.is-primary{
  border-color:rgba(255,196,124,.24);
  background:
    linear-gradient(180deg, rgba(255,180,88,.10), rgba(255,255,255,.03)),
    linear-gradient(145deg, rgba(44,30,17,.90), rgba(21,15,11,.92));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    0 12px 24px rgba(0,0,0,.16);
}
.sdns-activity-icon{
  width:44px;
  height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  color:#ffe0b0;
  background:linear-gradient(180deg, rgba(255,185,103,.20), rgba(255,255,255,.05));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
  font-size:1.08rem;
}
.sdns-activity-copy{
  min-width:0;
}
.sdns-activity-topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:6px;
}
.sdns-activity-studio{
  min-width:0;
  font-size:.76rem;
  letter-spacing:.11em;
  text-transform:uppercase;
  font-weight:700;
  color:rgba(255,224,181,.88);
}
.sdns-activity-time{
  flex-shrink:0;
  font-size:.76rem;
  color:rgba(226,233,240,.62);
}
.sdns-activity-title{
  min-width:0;
  font-size:.98rem;
  line-height:1.28;
  font-weight:700;
  color:#f7fbff;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  text-shadow:0 2px 8px rgba(0,0,0,.22);
}
.sdns-activity-subline{
  margin-top:4px;
  font-size:.83rem;
  line-height:1.4;
  color:rgba(214,224,234,.76);
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.sdns-activity-empty{
  padding:14px 16px;
  border-radius:16px;
  border:1px dashed rgba(255,255,255,.12);
  color:rgba(219,228,237,.72);
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.015));
}

/* ===== SDNS Desk cleanup v1.1.0 ===== */
body.sdns-desktop-bg{background:#08111b !important;}
.sdns-desktop-shell{
  background:linear-gradient(180deg,#071019 0%,#091320 55%,#071019 100%) !important;
}
.sdns-desktop-wallpaper{
  position:fixed !important;
  inset:0 !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(77,134,255,.18), transparent 28%),
    linear-gradient(180deg, rgba(4,10,18,.18), rgba(4,10,18,.66)),
    url('/assets/img/sdns-wallpaper.png') center center / cover no-repeat !important;
  opacity:.92;
}
.sdns-desktop-wallpaper::before,
.sdns-desktop-wallpaper::after{display:none !important;}
.sdns-desktop-main{
  padding:24px 380px 90px 150px !important;
  z-index:40 !important;
  pointer-events:auto !important;
}
.sdns-desktop-main.is-desktop-home{padding-right:380px !important;}
.sdns-window-layer{
  position:relative !important;
  left:auto !important; top:auto !important; right:auto !important; bottom:auto !important;
  min-height:calc(100vh - 150px) !important;
  height:auto !important;
  overflow:visible !important;
}
.sdns-app-window{
  position:relative !important;
  left:auto !important; top:auto !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  height:auto !important;
  min-height:calc(100vh - 170px) !important;
  max-height:none !important;
  border-radius:22px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:linear-gradient(180deg,rgba(10,17,26,.95),rgba(10,16,24,.94)) !important;
  box-shadow:0 30px 80px rgba(0,0,0,.38) !important;
  overflow:hidden !important;
}
.sdns-app-window .sdns-window-content,
.sdns-app-window .sdns-window-content.is-frame{
  background:transparent !important;
  color:#eef4ff !important;
  overflow:auto !important;
}
.sdns-window-titlebar{
  background:linear-gradient(180deg,rgba(15,25,39,.95),rgba(12,20,30,.92)) !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
}
.sdns-desktop-icons{left:24px !important; top:24px !important; gap:14px !important; z-index:18 !important;}
.sdns-desktop-icon{
  width:84px !important; min-height:84px !important; padding:10px 8px !important;
  border-radius:18px !important; background:rgba(8,15,24,.38) !important; border:1px solid rgba(255,255,255,.08) !important;
  box-shadow:0 10px 24px rgba(0,0,0,.22) !important; backdrop-filter:blur(12px) !important;
}
.sdns-desktop-icon span{font-size:12px !important; line-height:1.2 !important; text-shadow:0 1px 4px rgba(0,0,0,.45);}
.sdns-desktop-widget{
  width:340px !important; position:relative !important;
  background:linear-gradient(180deg,rgba(9,18,28,.9),rgba(13,20,30,.88)) !important;
  border:1px solid rgba(255,255,255,.1) !important;
  box-shadow:0 20px 40px rgba(0,0,0,.28) !important;
}
.sdns-desktop-widgets{right:24px !important; top:24px !important; gap:14px !important; z-index:16 !important;}
.sdns-card,.sdns-panel{
  background:linear-gradient(180deg,rgba(14,21,31,.9),rgba(10,16,24,.9)) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  border-radius:20px !important;
  box-shadow:0 18px 40px rgba(0,0,0,.22) !important;
  color:#eef4ff;
}
.sdns-home-hero{
  border-radius:24px;
  padding:28px 30px;
  background:linear-gradient(135deg,rgba(9,24,40,.94),rgba(10,16,24,.92));
  border:1px solid rgba(255,255,255,.1);
  box-shadow:0 22px 54px rgba(0,0,0,.28);
}
.sdns-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#9ac7ff;margin-bottom:8px;font-weight:700;}
.sdns-hero-title{font-size:clamp(1.8rem,2vw,2.6rem);font-weight:800;color:#fff;margin-bottom:10px;}
.sdns-hero-text,.sdns-subtext{color:rgba(230,238,251,.78) !important;line-height:1.65;}
.sdns-hero-badge-wrap{display:flex;flex-direction:column;gap:10px;align-items:flex-end;}
.sdns-hero-badge,.sdns-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);color:#eaf3ff;font-size:13px;font-weight:600;}
.sdns-hero-badge.is-soft{background:rgba(86,132,255,.11);}
.sdns-stat-card{height:100%;}
.sdns-stat-label{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#9ac7ff;margin-bottom:8px;font-weight:700;}
.sdns-stat-value{font-size:2.2rem;font-weight:800;color:#fff;line-height:1.1;margin-bottom:8px;}
.sdns-list{padding-left:1.1rem;color:rgba(238,244,255,.82);}
.sdns-list li+li{margin-top:.55rem;}
.sdns-quicklink{
  display:flex;flex-direction:column;gap:8px;padding:22px;border-radius:18px;text-decoration:none;
  background:linear-gradient(180deg,rgba(13,20,30,.92),rgba(10,16,24,.9));border:1px solid rgba(255,255,255,.08);color:#fff;
  box-shadow:0 14px 30px rgba(0,0,0,.22);
}
.sdns-quicklink i{font-size:1.4rem;color:#8bc7ff;}
.sdns-quicklink span{font-weight:700;color:#fff;}
.sdns-quicklink small{color:rgba(230,238,251,.7);}
.sdns-code{background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.08);padding:14px;border-radius:14px;color:#eaf3ff;white-space:pre-wrap;}
.table-dark{--bs-table-color:#eef4ff;--bs-table-bg:transparent;--bs-table-border-color:rgba(255,255,255,.08);--bs-table-striped-bg:rgba(255,255,255,.02);--bs-table-hover-bg:rgba(255,255,255,.04);}
.text-secondary-emphasis{color:rgba(230,238,251,.7) !important;}
@media (max-width: 1399.98px){.sdns-desktop-main,.sdns-desktop-main.is-desktop-home{padding-right:330px !important;}.sdns-desktop-widget{width:290px !important;}}
@media (max-width: 1199.98px){.sdns-desktop-main,.sdns-desktop-main.is-desktop-home{padding-right:24px !important;}.sdns-desktop-widgets{display:none !important;}}
@media (max-width: 991.98px){.sdns-desktop-main{padding:16px 16px 86px 16px !important;}.sdns-app-window{min-height:calc(100vh - 118px) !important;}.sdns-desktop-icons{display:none !important;}.sdns-home-hero{padding:22px;}.sdns-hero-badge-wrap{align-items:flex-start;}}


/* --- SDNS 1.1.1 desktop home cleanup --- */
.sdns-desktop-main.is-desktop-home{padding-right:380px !important;min-height:calc(100vh - 104px);}
.sdns-desktop-home #sdnsWindowLayer{min-height:calc(100vh - 124px);}
.sdns-desktop-empty{position:relative;min-height:calc(100vh - 124px);pointer-events:none;}
.sdns-desktop-empty-hint{position:absolute;left:50%;bottom:34px;transform:translateX(-50%);display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border-radius:14px;background:rgba(7,12,20,.42);border:1px solid rgba(255,255,255,.10);backdrop-filter:blur(10px);color:rgba(234,242,255,.88);font-size:13px;letter-spacing:.01em;box-shadow:0 14px 30px rgba(0,0,0,.22);}
.sdns-desktop-empty-hint i{font-size:1rem;opacity:.95;}
@media (max-width: 1199.98px){.sdns-desktop-main.is-desktop-home{padding-right:24px !important;}.sdns-desktop-empty-hint{left:24px;right:24px;bottom:92px;transform:none;justify-content:center;text-align:center;}}


/* ===== SDNS Desk fix v1.1.2 desktop icon interaction ===== */
.sdns-desktop-icons{
  z-index:80 !important;
  pointer-events:auto !important;
}
.sdns-desktop-icon{
  pointer-events:auto !important;
  cursor:default !important;
  touch-action:none !important;
}
.sdns-desktop-icon:active{
  cursor:grabbing !important;
}
.sdns-desktop-main{
  z-index:20 !important;
}
.sdns-window-layer,
.sdns-app-window{
  z-index:21 !important;
}
.sdns-desktop-widgets{
  z-index:30 !important;
}

/* v1.1.4 window launch fix */
.sdns-window-layer{position:fixed;left:0;top:0;right:0;bottom:48px;height:auto!important;min-height:auto!important;pointer-events:none;}
.sdns-window-layer .sdns-app-window{position:absolute;top:16px;left:16px;max-height:calc(100vh - 72px)!important;}
.sdns-app-window.is-maximized{top:8px!important;bottom:48px!important;max-height:none!important;}


/* --- SDNS 1.1.8 hard window centering fix --- */
.sdns-window-layer{
  position:fixed !important;
  inset:0 0 52px 0 !important;
  height:auto !important;
  min-height:auto !important;
  overflow:hidden !important;
  pointer-events:none !important;
  z-index:95 !important;
}
.sdns-window-layer .sdns-app-window{
  position:absolute !important;
  right:auto !important;
  bottom:auto !important;
  margin:0 !important;
  transform:none !important;
  max-width:min(1240px, calc(100vw - 24px)) !important;
  max-height:calc(100vh - 84px) !important;
  pointer-events:auto !important;
}
.sdns-app-window{
  width:min(1040px, calc(100vw - 24px)) !important;
  height:min(760px, calc(100vh - 96px)) !important;
  min-width:760px !important;
  min-height:520px !important;
}
.sdns-app-window.is-maximized{
  left:8px !important;
  top:8px !important;
  right:8px !important;
  bottom:60px !important;
  width:auto !important;
  height:auto !important;
  max-width:none !important;
  max-height:none !important;
}
@media (max-width: 991.98px){
  .sdns-window-layer{ inset:0 0 52px 0 !important; }
  .sdns-app-window{
    width:calc(100vw - 16px) !important;
    min-width:0 !important;
    height:calc(100vh - 76px) !important;
    min-height:0 !important;
    max-height:calc(100vh - 76px) !important;
  }
}


/* v1.1.9 transparent desktop icons */
.sdns-desktop-icon{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  outline:none !important;
}
.sdns-desktop-icon i{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
}
.sdns-desktop-icon:hover,
.sdns-desktop-icon.is-selected,
.sdns-desktop-icon.active{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  outline:none !important;
}
.sdns-desktop-icon.is-selected::after{
  display:none !important;
  content:none !important;
}
.sdns-desktop-icon span{
  text-shadow:0 2px 8px rgba(0,0,0,.58) !important;
}
