/* ui/css/admin-panel.css — injected admin panel shell (admin-only)
   Uses existing theme tokens from ui/css/theme.css.
*/

.ic-admin-root{position:fixed;inset:0;pointer-events:none;z-index:1100}

/* Floating toggle (bottom-left) */
#admin-menu-toggle.ic-admin-toggle{
  position:fixed;
  left:20px;
  bottom:20px;
  width:52px;
  height:52px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(180deg, rgba(255,255,255,.08) 0%, rgba(255,255,255,.04) 100%);
  color:var(--text-bright);
  box-shadow:var(--shadow-btn-hover);
  cursor:pointer;
  display:grid;
  place-items:center;
  pointer-events:auto;
  transition:var(--transition);
}
#admin-menu-toggle.ic-admin-toggle:hover{
  border-color:rgba(56,189,248,.45);
  transform:translateY(-1px);
}
#admin-menu-toggle.ic-admin-toggle:active{transform:translateY(0)}
#admin-menu-toggle.ic-admin-toggle:focus-visible{outline:none;box-shadow:var(--shadow-btn-hover),var(--focus)}

/* Overlay */
#admin-overlay.ic-admin-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.55);
  opacity:0;
  pointer-events:none;
  transition:opacity .18s cubic-bezier(.4,0,.2,1);
}

/* Sidebar dock */
#admin-sidebar.ic-admin-sidebar{
  position:fixed;
  left:0;
  top:0;
  height:100vh;
  width:320px;
  max-width:calc(100vw - 32px);
  background:linear-gradient(180deg, rgba(26,35,50,.98) 0%, rgba(11,18,34,.96) 100%);
  border-right:1px solid var(--border);
  box-shadow:var(--shadow-lg);
  transform:translateX(-104%);
  transition:transform .22s cubic-bezier(.4,0,.2,1);
  pointer-events:auto;
  display:flex;
  flex-direction:column;
}

.ic-admin-open #admin-overlay.ic-admin-overlay{opacity:1;pointer-events:auto}
.ic-admin-open #admin-sidebar.ic-admin-sidebar{transform:translateX(0)}

.ic-admin-header{
  padding:14px 14px 10px;
  border-bottom:1px solid var(--border);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.ic-admin-title{display:flex;flex-direction:column;gap:2px;min-width:0}
.ic-admin-title .t1{font-size:13px;font-weight:800;letter-spacing:.3px;color:var(--text-bright)}
.ic-admin-title .t2{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.ic-admin-close{
  width:34px;
  height:34px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);
  color:var(--text-bright);
  cursor:pointer;
  display:grid;
  place-items:center;
  transition:var(--transition);
  box-shadow:none;
}
.ic-admin-close:hover{border-color:rgba(56,189,248,.35);background:rgba(56,189,248,.08)}
.ic-admin-close:focus-visible{outline:none;box-shadow:var(--focus)}

.ic-admin-body{padding:12px 12px 16px;overflow:auto}

.ic-admin-section{
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.03);
  border-radius:var(--radius);
  padding:12px;
  margin-bottom:10px;
}

.ic-admin-section h3{
  margin:0 0 8px 0;
  font-size:12px;
  font-weight:800;
  letter-spacing:.35px;
  color:var(--muted);
  text-transform:uppercase;
}

.ic-admin-nav{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.ic-admin-nav button{
  width:100%;
  text-align:left;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.03);
  color:var(--text-bright);
  cursor:pointer;
  transition:var(--transition);
  display:flex;
  align-items:center;
  gap:10px;
  box-shadow:none;
}
.ic-admin-nav button:hover{
  border-color:rgba(56,189,248,.35);
  background:rgba(56,189,248,.08);
  transform:translateY(-1px);
}
.ic-admin-nav button:active{transform:translateY(0)}
.ic-admin-nav button:focus-visible{outline:none;box-shadow:var(--focus)}

@media (prefers-reduced-motion: reduce){
  #admin-menu-toggle.ic-admin-toggle,
  #admin-overlay.ic-admin-overlay,
  #admin-sidebar.ic-admin-sidebar{
    transition:none;
  }
}
