/* RC Greenlight — shared site navigation (hamburger + slide-in drawer at all widths,
   plus a pinned desktop sidebar on the portal + dashboard). Injected by mobile-nav.js;
   loaded on every site page. */

.mnav-btn{
  display:none;
  align-items:center;justify-content:center;
  width:42px;height:42px;flex:0 0 auto;
  border:1px solid var(--border, rgba(16,25,20,.14));
  border-radius:11px;background:transparent;cursor:pointer;color:inherit;
  padding:0;transition:background .15s ease,border-color .15s ease;
}
.mnav-btn:active{transform:scale(.96);}
.mnav-btn .mnav-bars{display:block;width:18px;height:13px;position:relative;}
.mnav-btn .mnav-bars span{position:absolute;left:0;right:0;height:2px;border-radius:2px;background:currentColor;transition:transform .2s ease,opacity .15s ease;}
.mnav-btn .mnav-bars span:nth-child(1){top:0;}
.mnav-btn .mnav-bars span:nth-child(2){top:5.5px;}
.mnav-btn .mnav-bars span:nth-child(3){top:11px;}

/* Dark bars (app pages with a pine top bar) read as on-ink */
.bar .mnav-btn{border-color:rgba(255,255,255,.18);color:#fff;}

/* Drawer + backdrop */
.mnav-scrim{
  position:fixed;inset:0;z-index:200;background:rgba(8,16,11,.5);
  opacity:0;pointer-events:none;transition:opacity .22s ease;
  -webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);
}
.mnav-scrim.open{opacity:1;pointer-events:auto;}
.mnav-panel{
  position:fixed;top:0;left:0;bottom:0;z-index:201;
  width:min(84vw,344px);
  background:var(--pine-950,#0E2018);color:#fff;
  transform:translateX(-102%);transition:transform .26s cubic-bezier(.22,.61,.36,1);
  display:flex;flex-direction:column;
  box-shadow:0 0 0 100vmax transparent;
  font-family:var(--sans,'Hanken Grotesk',sans-serif);
  overflow-y:auto;
}
.mnav-panel.open{transform:none;}

.mnav-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 22px 16px;border-bottom:1px solid rgba(255,255,255,.12);}
.mnav-brand{display:flex;flex-direction:column;gap:2px;}
.mnav-brand .wm{font-family:var(--head,'Archivo',sans-serif);font-weight:800;font-size:19px;letter-spacing:-.02em;line-height:.95;color:#fff;}
.mnav-brand .wm .lt{color:var(--bright-400,#5BD891);}
.mnav-brand .tag{font-family:var(--mono,'JetBrains Mono',monospace);font-size:7.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--mint-300,#97E9BB);}
.mnav-close{border:none;background:none;color:var(--mint-300,#97E9BB);font-size:26px;line-height:1;cursor:pointer;padding:0 4px;}
.mnav-close:hover{color:#fff;}

.mnav-links{display:flex;flex-direction:column;padding:10px 12px;gap:1px;}
.mnav-links a{
  display:flex;align-items:center;justify-content:space-between;
  font-family:var(--head,'Archivo',sans-serif);font-weight:600;font-size:17px;letter-spacing:-.01em;
  color:var(--wash-200,#C5F2D7);padding:13px 12px;border-radius:10px;transition:background .14s ease,color .14s ease;
}
.mnav-links a:hover{background:rgba(255,255,255,.06);color:#fff;}
.mnav-links a.active{color:var(--lime-400,#CDF36A);}
.mnav-links a.active::after{content:"";width:6px;height:6px;border-radius:50%;background:var(--lime-500,#B4EA32);}

.mnav-cta{margin-top:auto;display:flex;flex-direction:column;gap:10px;padding:16px 18px 22px;border-top:1px solid rgba(255,255,255,.12);}
.mnav-cta a{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--mono,'JetBrains Mono',monospace);font-size:13px;font-weight:600;letter-spacing:.02em;
  border-radius:999px;padding:14px 18px;border:1px solid transparent;
}
.mnav-cta a.prim{background:var(--lime-500,#B4EA32);color:var(--pine-950,#0E2018);}
.mnav-cta a.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.2);}
.mnav-foot{padding:0 20px 22px;font-family:var(--mono,'JetBrains Mono',monospace);font-size:10px;letter-spacing:.06em;color:var(--mint-300,#97E9BB);opacity:.7;}

body.mnav-lock{overflow:hidden;}

/* #1 — the menu button + drawer are available at ALL widths now (full canonical menu).
   btn + brand hug the left; the page's own nav-links / CTAs sit to the right. */
.has-mnav .mnav-btn{display:inline-flex;order:-2;}
.has-mnav .brand{order:-1;margin-right:auto;}
@media(max-width:880px){
  /* On phones the drawer holds the CTAs, so the top-bar CTAs are redundant — hiding them
     stops the button from overflowing / getting clipped on the right. */
  .has-mnav .nav-cta{display:none;}
}

/* ===== #2 — desktop app-shell sidebar (portal + dashboard) ===== */
.dnav-rail{display:none;}
@media(min-width:881px){
  body.dnav-page{padding-left:252px;}
  .dnav-page .dnav-rail{
    display:flex;flex-direction:column;
    position:fixed;top:0;left:0;bottom:0;width:252px;z-index:120;
    background:var(--pine-950,#0E2018);color:#fff;
    border-right:1px solid rgba(255,255,255,.1);
    font-family:var(--sans,'Hanken Grotesk',sans-serif);
    overflow-y:auto;
  }
  /* the rail carries the brand + menu, so drop the duplicates from the top bar on desktop */
  .dnav-page .mnav-btn{display:none;}
  .dnav-page .bar .brand{display:none;}
}
.dnav-brand{display:block;padding:22px 22px 18px;border-bottom:1px solid rgba(255,255,255,.12);}
.dnav-brand .wm{font-family:var(--head,'Archivo',sans-serif);font-weight:800;font-size:20px;letter-spacing:-.02em;line-height:.95;color:#fff;}
.dnav-brand .wm .lt{color:var(--bright-400,#5BD891);}
.dnav-brand .tag{font-family:var(--mono,'JetBrains Mono',monospace);font-size:7.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--mint-300,#97E9BB);margin-top:4px;}
.dnav-links{display:flex;flex-direction:column;padding:14px 12px;gap:1px;}
.dnav-links a{display:flex;align-items:center;justify-content:space-between;font-family:var(--head,'Archivo',sans-serif);font-weight:600;font-size:15px;letter-spacing:-.01em;color:var(--wash-200,#C5F2D7);padding:11px 12px;border-radius:10px;transition:background .14s ease,color .14s ease;}
.dnav-links a:hover{background:rgba(255,255,255,.06);color:#fff;}
.dnav-links a.active{color:var(--lime-400,#CDF36A);background:rgba(255,255,255,.05);}
.dnav-links a.active::after{content:"";width:6px;height:6px;border-radius:50%;background:var(--lime-500,#B4EA32);}
.dnav-cta{margin-top:auto;display:flex;flex-direction:column;gap:10px;padding:16px 18px 18px;border-top:1px solid rgba(255,255,255,.12);}
.dnav-cta a{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--mono,'JetBrains Mono',monospace);font-size:12.5px;font-weight:600;letter-spacing:.02em;border-radius:999px;padding:12px 16px;border:1px solid transparent;}
.dnav-cta a.prim{background:var(--lime-500,#B4EA32);color:var(--pine-950,#0E2018);}
.dnav-cta a.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.2);}
.dnav-foot{padding:0 20px 20px;font-family:var(--mono,'JetBrains Mono',monospace);font-size:10px;letter-spacing:.06em;color:var(--mint-300,#97E9BB);opacity:.7;}

/* App top-bars (sign-up / portal / dashboard) wrap instead of overflowing on phones */
@media(max-width:600px){
  .bar .bar-in{flex-wrap:wrap;height:auto;min-height:58px;padding-top:9px;padding-bottom:9px;row-gap:9px;}
}
