html,body{
  scroll-behavior:smooth;
}
html,body{
  overflow-x:hidden;
}
body{
  background:
    radial-gradient(1200px 640px at 14% 12%,rgba(68,148,255,.14),transparent 56%),
    radial-gradient(960px 580px at 88% 18%,rgba(91,237,214,.1),transparent 54%),
    linear-gradient(180deg,#040814 0%,#091224 48%,#091424 100%);
  color:var(--atlas-text);
  font-size:16px;
}
img,video,canvas{
  max-width:100%;
}
body::selection{
  background:rgba(118,195,255,.34);
  color:#fff;
}
.site-main{
  min-height:calc(100vh - 72px);
}
.container,
.public-inner{
  max-width:1240px;
}
.header{
  backdrop-filter:blur(var(--atlas-blur));
  background:rgba(3,8,19,.78);
  border-bottom:1px solid var(--atlas-border-subtle);
  box-shadow:0 10px 30px rgba(0,0,0,.18);
}
.nav{
  height:76px;
}
.brand{
  padding:12px 18px;
  background:linear-gradient(135deg,rgba(118,195,255,.18),rgba(139,124,255,.16));
  box-shadow:0 12px 24px rgba(0,0,0,.14);
}
.nav-left,.nav-right{
  gap:10px;
}
.nav-actions{
  display:flex;
  align-items:center;
  gap:10px;
}
.nav-trigger{
  background:rgba(255,255,255,.05);
  padding-inline:14px;
}
.nav-hotkey{
  padding:3px 7px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  font-size:11px;
  color:var(--atlas-text-soft);
}
.pill,
.primary-btn,
.secondary-btn,
.ghost-btn,
button.primary-btn,
button.secondary-btn,
button.ghost-btn{
  min-height:var(--atlas-button-height);
  padding:var(--atlas-button-pad-y) var(--atlas-button-pad-x);
  font-family:inherit;
  font-size:var(--atlas-button-font-size);
  font-weight:var(--atlas-button-font-weight);
  letter-spacing:.01em;
  line-height:1.05;
  border:1px solid var(--atlas-button-border);
  box-shadow:var(--atlas-shadow-sm);
}
.pill{
  border-radius:999px;
  background:var(--atlas-button-ghost-bg);
}
.primary-btn,
button.primary-btn{
  border-radius:var(--atlas-button-radius);
  background:var(--atlas-button-primary-bg);
  border-color:rgba(255,255,255,.2);
  color:#fff;
}
.secondary-btn,
button.secondary-btn{
  border-radius:var(--atlas-button-radius);
  background:var(--atlas-button-secondary-bg);
  color:var(--atlas-text);
}
.ghost-btn,
button.ghost-btn{
  border-radius:var(--atlas-button-radius);
  background:var(--atlas-button-ghost-bg);
  color:var(--atlas-text);
}
.primary-btn:hover,
button.primary-btn:hover{
  box-shadow:0 16px 34px rgba(73,139,255,.24);
}
.secondary-btn:hover,
.ghost-btn:hover,
button.secondary-btn:hover,
button.ghost-btn:hover,
.pill:hover{
  border-color:var(--atlas-border-strong);
  background:rgba(255,255,255,.09);
}
button,
a.primary-btn,
a.secondary-btn,
a.ghost-btn,
.pill,
input,
select,
textarea{
  min-height:44px;
}
.nav-bell{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 42px;
  min-width:42px;
  min-height:42px;
  width:42px;
  height:42px;
  border-radius:999px;
  border:1px solid var(--atlas-border-default);
  background:rgba(255,255,255,.05);
  text-decoration:none;
  color:var(--atlas-text);
  transition:transform var(--atlas-duration-fast) var(--atlas-ease),background var(--atlas-duration-fast) ease,border-color var(--atlas-duration-fast) ease;
}
.nav-bell:hover{
  background:rgba(255,255,255,.1);
  border-color:var(--atlas-border-strong);
  transform:translateY(-1px);
}
.nav-bell svg{
  width:18px;
  height:18px;
}
.nav-bell-count{
  position:absolute;
  top:-4px;
  right:-4px;
  min-width:20px;
  height:20px;
  padding:0 6px;
  border-radius:999px;
  background:linear-gradient(135deg,#ff728b,#ff476f);
  color:#fff;
  border:1px solid rgba(255,255,255,.22);
  font-size:11px;
  font-weight:900;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.profile-btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:44px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid var(--atlas-border-default);
  background:rgba(255,255,255,.05);
  color:inherit;
  cursor:pointer;
}
.avatar{
  width:30px;
  height:30px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,rgba(118,195,255,.3),rgba(139,124,255,.3));
  border:1px solid rgba(255,255,255,.12);
  font-weight:900;
}
.profile-panel,
.menu-panel,
.dd-menu{
  background:rgba(6,12,24,.96);
  border:1px solid var(--atlas-border-default);
  box-shadow:var(--atlas-shadow-xl);
}
.hamburger{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:999px;
  border:1px solid var(--atlas-border-default);
  background:rgba(255,255,255,.05);
}
.hamburger .bar{
  transition:transform var(--atlas-duration-base) var(--atlas-ease),opacity var(--atlas-duration-base) ease;
}
.hamburger.is-open .bar:nth-child(1){
  transform:translateY(6px) rotate(45deg);
}
.hamburger.is-open .bar:nth-child(2){
  opacity:0;
}
.hamburger.is-open .bar:nth-child(3){
  transform:translateY(-6px) rotate(-45deg);
}
.menu-panel.open,
.profile-panel.open,
.dd-menu.open{
  animation:atlasMenuIn var(--atlas-duration-base) var(--atlas-ease);
}
.pill,
.primary-btn,
.secondary-btn,
.ghost-btn,
button.primary-btn,
button.secondary-btn,
button.ghost-btn,
.badge{
  transition:transform var(--atlas-duration-fast) var(--atlas-ease),background var(--atlas-duration-fast) ease,border-color var(--atlas-duration-fast) ease,box-shadow var(--atlas-duration-fast) ease,opacity var(--atlas-duration-fast) ease;
}
.pill:hover,
.primary-btn:hover,
.secondary-btn:hover,
.ghost-btn:hover,
.badge:hover{
  transform:translateY(-1px);
}
.card{
  background:var(--atlas-surface-elevated);
  border:1px solid var(--atlas-border-default);
  box-shadow:var(--atlas-shadow-lg);
}
.public,.dash,.alerts-page{
  padding-block:32px 78px;
}
.public-header,
.dash-header,
.dash-top{
  margin-bottom:18px;
}
.public-header h2,
.dash-header h2,
.dash-top h2,
.page-copy h1,
.page-title h1{
  font-size:clamp(30px,4.2vw,48px);
  line-height:1.02;
  letter-spacing:-.03em;
}
.public-header p,
.dash-header p,
.dash-top p,
.page-copy p,
.page-title p{
  margin-top:8px;
  color:var(--atlas-text-muted);
  max-width:760px;
}
.page-shell{
  display:grid;
  gap:18px;
}
.page-hero,
.dashboard-hero,
.section-hero{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:18px;
  flex-wrap:wrap;
}
.page-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:10px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid var(--atlas-border-default);
  background:rgba(255,255,255,.05);
  font-size:11px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--atlas-text-soft);
}
.page-actions,
.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.section-stack{
  display:grid;
  gap:16px;
}
.stat-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:12px;
}
.stat,
.stat-card{
  position:relative;
  padding:18px;
  border-radius:var(--atlas-radius-md);
  border:1px solid var(--atlas-border-default);
  background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.03));
  overflow:hidden;
}
.stat::before,
.stat-card::before{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:3px;
  background:linear-gradient(90deg,var(--atlas-accent),var(--atlas-accent-2),var(--atlas-accent-3));
  opacity:.9;
}
.stat-num,
.stat-card-value{
  font-size:clamp(28px,3vw,42px);
  font-weight:1000;
  line-height:1;
  margin-top:10px;
}
.stat-card-label,
.stat-label{
  color:var(--atlas-text-soft);
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:800;
}
.kpi-trend{
  margin-top:8px;
  font-size:12px;
  color:var(--atlas-text-soft);
}
.kpi-trend.up{color:var(--atlas-success)}
.kpi-trend.down{color:var(--atlas-danger)}
.priority-strip{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  padding:18px 20px;
  border-radius:var(--atlas-radius-md);
  border:1px solid rgba(118,195,255,.24);
  background:linear-gradient(135deg,rgba(118,195,255,.15),rgba(127,240,208,.08));
  box-shadow:var(--atlas-shadow-md);
}
.priority-strip strong{font-size:17px}
.priority-strip .muted{color:rgba(229,238,255,.72)}
.tile-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:12px;
}
.action-tile{
  display:grid;
  gap:8px;
  align-content:start;
  min-height:140px;
  padding:18px;
  border-radius:var(--atlas-radius-md);
  border:1px solid var(--atlas-border-default);
  background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.03));
  text-decoration:none;
}
.action-tile:hover{
  border-color:var(--atlas-border-strong);
  background:linear-gradient(180deg,rgba(118,195,255,.12),rgba(255,255,255,.04));
}
.action-tile-title{font-size:15px;font-weight:900}
.action-tile-copy{font-size:13px;color:var(--atlas-text-muted);line-height:1.45}
.activity-list{
  display:grid;
  gap:10px;
}
.activity-item{
  display:grid;
  gap:5px;
  padding:14px 16px;
  border-radius:var(--atlas-radius-md);
  border:1px solid var(--atlas-border-default);
  background:rgba(255,255,255,.04);
}
.activity-item-time{font-size:12px;color:var(--atlas-text-soft)}
.dashboard-grid{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(320px,.85fr);
  gap:18px;
  align-items:start;
}
.dashboard-main,
.dashboard-aside{
  display:grid;
  gap:16px;
}
.dashboard-side-stack > * + *{
  margin-top:0;
}
.breadcrumb-shell{
  border-bottom:1px solid rgba(255,255,255,.04);
}
.breadcrumb-shell[hidden]{display:none !important}
.breadcrumbs{
  max-width:1240px;
  margin:0 auto;
  padding:12px 18px 0;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  font-size:12px;
  color:var(--atlas-text-soft);
}
.breadcrumbs a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid var(--atlas-border-default);
  background:rgba(255,255,255,.05);
  text-decoration:none;
  color:var(--atlas-text);
  line-height:1;
}
.breadcrumbs a:hover{
  border-color:var(--atlas-border-strong);
  background:rgba(255,255,255,.1);
}
.breadcrumbs .sep{
  opacity:.4;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
}
.toast-stack{
  position:fixed;
  right:16px;
  bottom:16px;
  z-index:120;
  display:grid;
  gap:10px;
  width:min(360px,calc(100vw - 24px));
}
.toast{
  padding:14px 16px;
  border-radius:18px;
  border:1px solid var(--atlas-border-default);
  background:rgba(4,10,20,.94);
  box-shadow:var(--atlas-shadow-xl);
  display:flex;
  align-items:flex-start;
  gap:12px;
  animation:atlasToastIn var(--atlas-duration-base) var(--atlas-ease);
}
.toast--success{border-color:rgba(57,217,138,.34)}
.toast--error{border-color:rgba(255,107,129,.34)}
.toast--info{border-color:rgba(118,195,255,.34)}
.toast-dismiss{
  margin-left:auto;
  background:none;
  border:0;
  color:var(--atlas-text-soft);
  cursor:pointer;
}
.command-palette{
  position:fixed;
  inset:0;
  z-index:110;
  display:none;
  place-items:start center;
  padding:10vh 18px 18px;
  background:rgba(1,4,12,.72);
  backdrop-filter:blur(14px);
}
.command-palette.is-open{display:grid}
.command-palette-panel{
  width:min(760px,100%);
  border-radius:28px;
  border:1px solid var(--atlas-border-default);
  background:rgba(5,10,20,.96);
  box-shadow:var(--atlas-shadow-xl);
  padding:20px;
}
.command-palette-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:14px;
}
.command-palette-form{
  display:grid;
  gap:12px;
}
.command-palette-input{
  min-height:52px;
  font-size:17px;
  border-radius:18px;
}
.command-palette-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.table tbody tr{
  transition:background var(--atlas-duration-fast) ease;
}
.table tbody tr:hover{
  background:rgba(255,255,255,.05);
}
.table th{
  color:var(--atlas-text-soft);
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:900;
}
.empty-state{
  display:grid;
  gap:10px;
  place-items:start;
  padding:28px;
  border-radius:var(--atlas-radius-lg);
  border:1px dashed rgba(255,255,255,.18);
  background:rgba(255,255,255,.04);
}
.empty-state h3{font-size:22px}
.empty-state p{color:var(--atlas-text-muted);max-width:520px;line-height:1.55}
.skeleton{
  position:relative;
  overflow:hidden;
  background:rgba(255,255,255,.06);
}
.skeleton::after{
  content:"";
  position:absolute;
  inset:0;
  transform:translateX(-100%);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);
  animation:atlasSkeleton 1.15s linear infinite;
}
@keyframes atlasMenuIn{
  from{opacity:0;transform:translateY(6px) scale(.98)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes atlasToastIn{
  from{opacity:0;transform:translateY(12px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes atlasSkeleton{
  to{transform:translateX(100%)}
}
@media (max-width: 980px){
  .dashboard-grid{grid-template-columns:1fr}
  .nav-hotkey{display:none}
}
@media (max-width: 760px){
  .public,.dash,.alerts-page{padding-block:24px 72px}
  .public-header,.dash-header,.dash-top,.dashboard-hero,.page-hero{align-items:flex-start}
  .table{display:block;overflow-x:auto;white-space:nowrap}
  .toast-stack{left:12px;right:12px;width:auto}
  .command-palette{padding-top:14vh}
}
@media (prefers-reduced-motion: reduce){
  html,body{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
  }
}
