:root{
  --bg:#040607;
  --bg-soft:#07110c;
  --surface:#0a0f10;
  --surface-2:#0f1517;
  --surface-3:#121a1c;
  --text:#f4f7f5;
  --muted:#9da8a3;
  --muted-2:#7f8a85;
  --line:rgba(255,255,255,.08);
  --green:#58dd86;
  --green-2:#74f3a1;
  --green-soft:rgba(88,221,134,.12);
  --shadow:0 22px 56px rgba(0,0,0,.34);
  --radius-xl:28px;
  --radius-lg:22px;
  --radius-md:18px;
}
body{background:radial-gradient(circle at top left,rgba(88,221,134,.08),transparent 24%),var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;position:relative;letter-spacing:.01em}
a{text-decoration:none}
.layout-glow{position:fixed;pointer-events:none;z-index:0;filter:blur(70px);opacity:.45}
.layout-glow-left{top:48px;left:-60px;width:220px;height:220px;background:rgba(88,221,134,.22)}
.layout-glow-right{right:-70px;top:12%;width:200px;height:260px;background:rgba(88,221,134,.14)}
.app-shell{position:relative;z-index:1;display:grid;grid-template-columns:300px 1fr;min-height:100vh}
.content-area{padding:28px 32px 32px;background:linear-gradient(180deg,rgba(8,10,11,.86) 0%,rgba(5,7,8,.96) 100%);min-width:0}
.sidebar{position:relative;padding:24px;border-right:1px solid var(--line);background:linear-gradient(180deg,rgba(5,8,9,.96) 0%,rgba(7,12,10,.96) 100%);display:flex;flex-direction:column;gap:22px;min-height:100vh;box-shadow:var(--shadow);backdrop-filter:blur(8px)}
.sidebar::before{content:"";position:absolute;inset:18px 18px auto 18px;height:180px;border-radius:24px;background:radial-gradient(circle at top left,rgba(88,221,134,.18),transparent 58%);pointer-events:none}
.sidebar-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.brand-block{display:flex;gap:14px;align-items:center;padding:10px 12px;border-radius:22px;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.04)}
.brand-mark{width:62px;height:62px;border-radius:18px;object-fit:cover;box-shadow:0 12px 30px rgba(88,221,134,.18)}
.brand-block strong{font-size:28px;line-height:1.05;display:block}
.brand-block p{margin:6px 0 0;color:var(--muted);font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.sidebar-close,.toolbar-menu-btn{display:none}
.nav-group-label{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-2);padding:0 10px}
.nav-links{display:flex;flex-direction:column;gap:8px}
.nav-links a{position:relative;padding:14px 16px;border-radius:18px;color:#d9e5de;background:transparent;border:1px solid transparent;transition:.22s ease}
.nav-links a.active,.nav-links a:hover{background:linear-gradient(135deg,rgba(88,221,134,.18),rgba(88,221,134,.08));border-color:rgba(88,221,134,.18);color:#fff;transform:translateX(2px)}
.nav-links a.active::before{content:"";position:absolute;left:8px;top:50%;width:6px;height:6px;border-radius:50%;background:var(--green);transform:translateY(-50%);box-shadow:0 0 12px rgba(88,221,134,.66)}
.sidebar-footer{margin-top:auto;padding:18px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.06)}
.sidebar-footer p{margin:0 0 4px;font-weight:700}.sidebar-footer span{display:block;color:var(--muted);font-size:13px;margin-bottom:14px}
.sidebar-footer a{display:inline-flex;padding:11px 16px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:var(--text)}
.footer-note{margin-top:24px;color:var(--muted);font-size:13px}
.flash{padding:14px 16px;border-radius:16px;margin-bottom:18px;border:1px solid var(--line)}
.flash-error{background:rgba(239,68,68,.14);border-color:rgba(239,68,68,.28)}
.flash-success{background:rgba(88,221,134,.12);border-color:rgba(88,221,134,.26)}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 18px;border-radius:16px;border:none;cursor:pointer;font-weight:700;transition:.18s ease}
.btn-primary{background:linear-gradient(135deg,var(--green-2),var(--green));color:#04110a;box-shadow:0 16px 34px rgba(88,221,134,.18)}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 20px 38px rgba(88,221,134,.22)}
.btn-block{width:100%}
.section-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:18px}.section-heading h3{margin:0;font-size:24px}.section-heading span{color:var(--muted);font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.panel-card{background:linear-gradient(180deg,rgba(13,18,19,.92) 0%,rgba(7,11,10,.92) 100%);border:1px solid rgba(255,255,255,.07);backdrop-filter:blur(10px);padding:26px;border-radius:30px;box-shadow:var(--shadow)}
.panel-card-highlight{position:relative;overflow:hidden;background:linear-gradient(145deg,rgba(12,17,16,.95),rgba(9,13,12,.95))}
.panel-card-highlight::after{content:"";position:absolute;inset:auto -40px -40px auto;width:220px;height:220px;background:radial-gradient(circle,rgba(88,221,134,.18),transparent 68%);pointer-events:none}
.stack-list{display:grid;gap:16px}.list-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);padding:18px;border-radius:20px}
.status-chip{display:inline-flex;padding:7px 11px;border-radius:999px;font-size:12px;font-weight:700;text-transform:capitalize;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.06)}
.status-active,.status-published,.status-approved{background:rgba(88,221,134,.16);border-color:rgba(88,221,134,.28);color:#b5f4c9}
.status-draft,.status-pending{background:rgba(250,204,21,.12);border-color:rgba(250,204,21,.22);color:#f8e38d}
.status-archived,.status-inactive,.status-paused{background:rgba(148,163,184,.12);border-color:rgba(148,163,184,.22);color:#c6d1dc}
.status-role{background:rgba(255,255,255,.06)}
.empty-card{text-align:center;padding:54px 24px}
.sidebar-backdrop{display:none}
@media(max-width:1080px){
  .app-shell{grid-template-columns:1fr}
  .sidebar{position:fixed;top:0;left:0;bottom:0;width:min(320px,86vw);transform:translateX(-105%);transition:.22s ease;z-index:20}
  body.sidebar-open .sidebar{transform:translateX(0)}
  .sidebar-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.48);opacity:0;pointer-events:none;transition:.2s ease;z-index:15}
  body.sidebar-open .sidebar-backdrop{opacity:1;pointer-events:auto}
  .content-area{padding:22px 20px 28px}
  .sidebar-close,.toolbar-menu-btn{display:inline-flex;align-items:center;justify-content:center}
  .sidebar-close{width:40px;height:40px;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:var(--text);font-size:22px}
}
