/* FuntikCloud Admin — Stage 1 / unified graphite shell
   Scope: admin only. Fixed desktop navigation, stronger typography, layered graphite surfaces. */

.fca-shell{
  --fca-sidebar-w:286px;
  --fca-canvas:#0f1518;
  --fca-chrome:#12191c;
  --fca-surface-1:#151d21;
  --fca-surface-2:#192227;
  --fca-surface-3:#1d282e;
  --fca-surface-4:#222e35;
  --fca-line:#2a363d;
  --fca-line-strong:#36454e;
  --fca-text:#f2f5f4;
  --fca-text-2:#bdc7c4;
  --fca-text-3:#8d9a95;
  --fca-text-4:#697670;
  min-height:100dvh!important;
  background:var(--fca-canvas)!important;
  color:var(--fca-text)!important;
  font-size:13px;
  line-height:1.45;
}

/* Chrome */
.fca-shell .fca-sidebar{
  background:var(--fca-chrome)!important;
  border-right:1px solid var(--fca-line)!important;
  box-shadow:8px 0 30px rgba(0,0,0,.12);
}
.fca-shell .fca-brand{height:78px;padding:15px 18px;border-bottom-color:var(--fca-line)!important}
.fca-shell .fca-brand>a{gap:12px}
.fca-shell .fca-brand>a>span{
  width:38px;height:38px;border-radius:10px;
  background:var(--fca-surface-2)!important;border-color:var(--fca-line-strong)!important;
  font-size:16px
}
.fca-shell .fca-brand strong{font-size:15px;font-weight:760;letter-spacing:-.015em}
.fca-shell .fca-brand small{margin-top:3px;color:var(--fca-text-4)!important;font-size:9px;letter-spacing:.14em;font-weight:800}

/* Sidebar navigation */
.fca-shell .fca-nav{
  padding:14px 11px 20px;
  overflow-y:auto;overflow-x:hidden;
  scrollbar-gutter:stable;
  overscroll-behavior:contain;
  min-height:0;
}
.fca-shell .fca-nav-group{margin-bottom:15px}
.fca-shell .fca-nav-label{
  height:30px;padding:0 9px;color:var(--fca-text-4)!important;
  font-size:9.5px;font-weight:800;letter-spacing:.11em
}
.fca-shell .fca-nav-label svg{width:13px;height:13px}
.fca-shell .fca-nav-items{gap:4px}
.fca-shell .fca-nav-items>a{
  min-height:48px;padding:0 12px;border:1px solid transparent;border-radius:9px;
  color:var(--fca-text-3)!important;gap:12px;font-size:13px;font-weight:650;line-height:1.2
}
.fca-shell .fca-nav-items>a svg{width:18px;height:18px;color:#7f8d88!important;flex:0 0 18px}
.fca-shell .fca-nav-items>a:hover{background:var(--fca-surface-2)!important;color:var(--fca-text)!important}
.fca-shell .fca-nav-items>a.is-active{
  background:var(--fca-surface-3)!important;
  border-color:var(--fca-line-strong)!important;
  color:var(--fca-text)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.018)
}
.fca-shell .fca-nav-items>a.is-active:before{
  left:-12px;top:10px;bottom:10px;width:3px;background:var(--fc-green)!important
}
.fca-shell .fca-nav-items>a.is-active svg{color:var(--fc-green)!important}

.fca-shell .fca-sidebar-foot{
  padding:13px 11px 15px;border-top-color:var(--fca-line)!important;
  background:var(--fca-chrome)!important;gap:5px
}
.fca-shell .fca-sidebar-foot>a,.fca-shell .fca-sidebar-foot>button{
  min-height:42px;padding:0 11px;border-radius:9px;color:var(--fca-text-3)!important;
  gap:10px;font-size:11.5px;font-weight:620
}
.fca-shell .fca-sidebar-foot>a:hover,.fca-shell .fca-sidebar-foot>button:hover{
  background:var(--fca-surface-2)!important;color:var(--fca-text)!important
}
.fca-shell .fca-sidebar-user{padding:8px 8px 12px;gap:10px}
.fca-shell .fca-sidebar-user>span{
  width:34px;height:34px;border-radius:9px;background:var(--fca-surface-2)!important;
  border-color:var(--fca-line-strong)!important
}
.fca-shell .fca-sidebar-user strong{font-size:11.5px;font-weight:700}
.fca-shell .fca-sidebar-user small{font-size:9.5px;color:var(--fca-text-4)!important}

/* Workspace and topbar */
.fca-shell .fca-workspace{min-height:100dvh;background:var(--fca-canvas)!important}
.fca-shell .fca-topbar{
  height:70px;padding:0 26px;background:rgba(18,25,28,.96)!important;
  border-bottom:1px solid var(--fca-line)!important;backdrop-filter:blur(16px)
}
.fca-shell .fca-topbar-context{gap:12px}
.fca-shell .fca-topbar-context span{color:var(--fca-text-4)!important;font-size:9px;letter-spacing:.12em}
.fca-shell .fca-topbar-context strong{font-size:13px;font-weight:700;color:var(--fca-text)!important}
.fca-shell .fca-system-live{font-size:10.5px;color:var(--fca-text-3)!important}
.fca-shell .fca-top-icon{
  width:38px;height:38px;background:var(--fca-surface-2)!important;
  border-color:var(--fca-line)!important;color:var(--fca-text-3)!important
}
.fca-shell .fca-top-icon:hover{
  background:var(--fca-surface-3)!important;border-color:var(--fca-line-strong)!important;
  color:var(--fca-text)!important
}
.fca-shell .fca-top-profile{padding-left:12px;border-left-color:var(--fca-line)!important;gap:9px}
.fca-shell .fca-top-profile>span{
  width:35px;height:35px;background:var(--fca-surface-2)!important;border-color:var(--fca-line-strong)!important
}
.fca-shell .fca-top-profile strong{font-size:11px;font-weight:700}
.fca-shell .fca-top-profile small{font-size:9.5px;color:var(--fca-text-4)!important}

/* Page hierarchy */
.fca-shell .fca-main{width:min(100%,1640px);padding:32px 32px 60px}
.fca-shell .fca-page-head{margin-bottom:24px;gap:24px}
.fca-shell .fca-eyebrow{font-size:9.5px;letter-spacing:.14em;margin-bottom:8px}
.fca-shell .fca-page-head h1{font-size:32px;line-height:1.08;font-weight:760;letter-spacing:-.035em}
.fca-shell .fca-page-head p{margin-top:8px;color:var(--fca-text-3)!important;font-size:12.5px;line-height:1.6}
.fca-shell .fca-back{font-size:11px;color:var(--fca-text-3)!important}

/* Controls */
.fca-shell .fca-btn{
  height:40px;padding:0 13px;border-radius:8px;background:var(--fca-surface-2)!important;
  border-color:var(--fca-line)!important;color:var(--fca-text-2)!important;
  font-size:11.5px;font-weight:700
}
.fca-shell .fca-btn:hover{
  background:var(--fca-surface-3)!important;border-color:var(--fca-line-strong)!important;color:var(--fca-text)!important
}
.fca-shell .fca-btn-primary{background:var(--fc-green)!important;border-color:var(--fc-green)!important;color:#031008!important}
.fca-shell .fca-btn-primary:hover{background:var(--fc-green-strong)!important;border-color:var(--fc-green-strong)!important;color:#031008!important}
.fca-shell .fca-btn-ghost{background:transparent!important;border-color:transparent!important}
.fca-shell .fca-icon-btn{
  width:38px;height:38px;border-radius:8px;background:var(--fca-surface-2)!important;
  border-color:var(--fca-line)!important;color:var(--fca-text-3)!important
}

/* Surface hierarchy */
.fca-shell .fca-panel,.fca-shell .fca-table-card{
  background:var(--fca-surface-1)!important;border-color:var(--fca-line)!important;
  border-radius:11px!important;
  box-shadow:0 1px 0 rgba(255,255,255,.018) inset,0 10px 26px rgba(0,0,0,.08)!important
}
.fca-shell .fca-panel .fca-panel,.fca-shell .fca-panel .fca-table-card{
  background:var(--fca-surface-2)!important;border-color:rgba(54,69,78,.62)!important;box-shadow:none!important
}
.fca-shell .fca-panel-head{padding:16px 18px;border-bottom-color:var(--fca-line)!important}
.fca-shell .fca-panel-head h2{font-size:14px;font-weight:720;letter-spacing:-.012em}
.fca-shell .fca-panel-head p{margin-top:5px;color:var(--fca-text-3)!important;font-size:11px;line-height:1.55}
.fca-shell .fca-panel-body{padding:18px}
.fca-shell .fca-stack{gap:14px}
.fca-shell .fca-two-col,.fca-shell .fca-admin-overview-grid{gap:16px}

/* Metrics */
.fca-shell .fca-stat-grid{gap:12px;margin-bottom:16px}
.fca-shell .fca-stat{
  min-height:94px;padding:15px;background:var(--fca-surface-1)!important;
  border-color:var(--fca-line)!important;border-radius:11px
}
.fca-shell .fca-stat[href]:hover{background:var(--fca-surface-2)!important;border-color:var(--fca-line-strong)!important}
.fca-shell .fca-stat-icon{width:38px;height:38px;background:var(--fca-surface-3)!important;border-color:var(--fca-line)!important}
.fca-shell .fca-stat strong{font-size:21px;font-weight:760}
.fca-shell .fca-stat span:not(.fca-stat-icon){font-size:11px;color:var(--fca-text-2)!important}
.fca-shell .fca-stat small{font-size:9.5px;color:var(--fca-text-4)!important}

/* Toolbars and fields */
.fca-shell .fca-toolbar{
  min-height:56px;padding:8px 9px;margin-bottom:13px;background:var(--fca-surface-1)!important;
  border-color:var(--fca-line)!important;border-radius:10px;gap:8px
}
.fca-shell .fca-toolbar select,.fca-shell .fca-toolbar input,.fca-shell .fca-selection-bar select{
  height:40px;background:var(--fca-surface-2)!important;border-color:var(--fca-line)!important;
  color:var(--fca-text)!important;font-size:11.5px
}
.fca-shell .fca-search{
  height:40px;background:var(--fca-surface-2)!important;border-color:var(--fca-line)!important;
  color:var(--fca-text-3)!important;font-size:11.5px
}
.fca-shell .fca-toolbar-meta{font-size:10.5px;color:var(--fca-text-4)!important}
.fca-shell .fca-selection-bar{
  min-height:50px;background:var(--fca-surface-2)!important;border-color:var(--fca-line-strong)!important
}
.fca-shell .fca-selection-bar>strong{font-size:11px}

.fca-shell .fca-field>span,.fca-shell .fca-audit-filters label>span{
  font-size:10.5px!important;color:var(--fca-text-3)!important;font-weight:700!important;letter-spacing:.03em!important
}
.fca-shell .fca-field input,.fca-shell .fca-field select,.fca-shell .fca-field textarea,
.fca-shell .fca-action-form input,.fca-shell .fca-audit-filters select{
  background:var(--fca-surface-2)!important;border-color:var(--fca-line)!important;
  color:var(--fca-text)!important;font-size:12px!important
}
.fca-shell .fca-field input,.fca-shell .fca-field select,.fca-shell .fca-action-form input,.fca-shell .fca-audit-filters select{
  min-height:40px!important
}
.fca-shell .fca-field input:focus,.fca-shell .fca-field select:focus,.fca-shell .fca-field textarea:focus,
.fca-shell .fca-action-form input:focus{
  background:var(--fca-surface-3)!important;border-color:#49605a!important;outline:none
}
.fca-shell .fca-hint,.fca-shell .fca-field small{font-size:10px!important;color:var(--fca-text-4)!important;line-height:1.5}

/* Tables */
.fca-shell .fca-table th,.fca-shell .fca-table td{padding:12px 13px;border-bottom-color:var(--fca-line)!important}
.fca-shell .fca-table th{
  height:40px;background:var(--fca-surface-2)!important;color:var(--fca-text-4)!important;
  font-size:9.5px;font-weight:800;letter-spacing:.065em
}
.fca-shell .fca-table td{font-size:11.5px;color:var(--fca-text-2)!important;line-height:1.45}
.fca-shell .fca-table tbody tr:hover{background:var(--fca-surface-2)!important}
.fca-shell .fca-primary-link strong,.fca-shell .fca-user-cell strong,.fca-shell .fca-cell-main strong{
  font-size:11.5px!important;color:var(--fca-text)!important;font-weight:700
}
.fca-shell .fca-primary-link small,.fca-shell .fca-user-cell small,.fca-shell .fca-cell-main small,
.fca-shell .fca-table-sub,.fca-shell .fca-muted{
  font-size:9.5px!important;color:var(--fca-text-4)!important
}
.fca-shell .fca-avatar-sm,.fca-shell .fca-server-dot{background:var(--fca-surface-3)!important;border-color:var(--fca-line)!important}

/* Lists and secondary content */
.fca-shell .fca-list-row{min-height:62px;padding:11px 14px;border-bottom-color:var(--fca-line)!important}
.fca-shell .fca-list-row:hover{background:var(--fca-surface-2)!important}
.fca-shell .fca-list-main strong{font-size:11.5px}
.fca-shell .fca-list-main small{font-size:9.5px;color:var(--fca-text-4)!important}
.fca-shell .fca-status{min-height:24px;padding:0 8px;background:var(--fca-surface-3)!important;border-color:var(--fca-line)!important;font-size:9.5px}

.fca-shell .fca-dashboard-links{gap:7px}
.fca-shell .fca-dashboard-links>a{
  min-height:56px;padding:10px 12px;background:var(--fca-surface-2)!important;
  border-color:transparent!important;border-radius:9px
}
.fca-shell .fca-dashboard-links>a:hover{background:var(--fca-surface-3)!important;border-color:var(--fca-line)!important}
.fca-shell .fca-dashboard-links span strong{font-size:11px}
.fca-shell .fca-dashboard-links span small{font-size:9.5px;color:var(--fca-text-4)!important}

.fca-shell .fca-maintenance,.fca-shell .fca-flash{
  background:var(--fca-surface-2)!important;border-color:var(--fca-line)!important;
  color:var(--fca-text-2)!important;font-size:11px;padding:10px 13px
}
.fca-shell .fca-pagination a,.fca-shell .fca-pagination span{
  height:32px;min-width:32px;font-size:9.5px;background:var(--fca-surface-2)!important;border-color:var(--fca-line)!important
}

/* Desktop: sidebar is viewport-fixed, workspace scrolls independently. */
@media(min-width:981px){
  .fca-shell{display:block!important}
  .fca-shell .fca-sidebar{
    position:fixed!important;left:0!important;top:0!important;bottom:0!important;
    width:var(--fca-sidebar-w)!important;height:100dvh!important;z-index:60!important
  }
  .fca-shell .fca-workspace{
    margin-left:var(--fca-sidebar-w)!important;
    width:calc(100% - var(--fca-sidebar-w))!important;
    min-width:0!important
  }
  .fca-shell .fca-topbar{position:sticky!important;top:0!important;z-index:50!important}
}

@media(max-width:980px){
  .fca-shell{--fca-sidebar-w:min(310px,88vw)}
  .fca-shell .fca-sidebar{width:var(--fca-sidebar-w)!important;background:var(--fca-chrome)!important}
  .fca-shell .fca-main{padding:24px 16px 44px}
  .fca-shell .fca-topbar{height:64px;padding:0 15px}
  .fca-shell .fca-menu{
    width:40px;height:40px;background:var(--fca-surface-2)!important;border-color:var(--fca-line)!important
  }
}

@media(max-width:640px){
  .fca-shell .fca-page-head h1{font-size:27px}
  .fca-shell .fca-page-head p{font-size:12px}
  .fca-shell .fca-main{padding-left:12px;padding-right:12px}
  .fca-shell .fca-nav-items>a{min-height:50px;font-size:13.5px}
  .fca-shell .fca-panel-head,.fca-shell .fca-panel-body{padding-left:14px;padding-right:14px}
}
