/* Sample 2: Signature tiles. Navigation only; never changes service permissions.
   Keep ordinary tools neutral and retain the portal's typography and 260px rail. */
.portal-nav .pnav-section-label {
  margin: 16px 12px 6px;
  color: #a9c1cc;
  font: 600 10px/1.5 var(--font-body);
  letter-spacing: .1em;
  text-transform: uppercase;
}
.pnav-dani { --identity: #b7cafd; --identity-rgb: 183,202,253; }
.pnav-kala { --identity: #e2bfed; --identity-rgb: 226,191,237; }
.pnav-finn { --identity: #a3decb; --identity-rgb: 163,222,203; }
.pnav-arya { --identity: #70d6d0; --identity-rgb: 112,214,208; }
.pnav-nova { --identity: #abc4ff; --identity-rgb: 171,196,255; }
.pnav-orla { --identity: #f5d488; --identity-rgb: 245,212,136; }
.pnav-mira { --identity: #f4b59d; --identity-rgb: 244,181,157; }
.pnav-tara { --identity: #9ff6ea; --identity-rgb: 159,246,234; }
.pnav-cara { --identity: #ffaac4; --identity-rgb: 255,170,196; }
.pnav-luma { --identity: #9fe2b3; --identity-rgb: 159,226,179; }
.pnav-sensei { --identity: #eabd94; --identity-rgb: 234,189,148; }
.pnav-connect { --identity: #9dd8f5; --identity-rgb: 157,216,245; }
.pnav-mail { --identity: #72dfd2; --identity-rgb: 114,223,210; }
.portal-nav .pnav-identity {
  width: 100%; min-width: 0; min-height: 50px; gap: 10px;
  padding: 7px 10px; margin: 4px 0;
  border: 1px solid rgba(var(--identity-rgb), .13);
  border-radius: 9px; background: rgba(var(--identity-rgb), .075);
  color: var(--identity); text-align: left;
  font: inherit; text-decoration: none; cursor: pointer;
  display: flex; align-items: center;
  transition: background .16s ease, border-color .16s ease;
}
.portal-nav .pnav-identity:hover {
  background: rgba(var(--identity-rgb), .14);
  color: var(--identity);
  border-color: rgba(var(--identity-rgb), .28);
}
.portal-nav .pnav-identity[aria-current="page"] {
  background: rgba(var(--identity-rgb), .19);
  border-color: rgba(var(--identity-rgb), .55);
  color: var(--identity); box-shadow: inset 3px 0 0 var(--identity);
}
.portal-nav .pnav-identity .pnav-gadget {
  width: 30px; height: 30px; flex: 0 0 30px;
  display: grid; place-items: center; border-radius: 8px;
  background: rgba(var(--identity-rgb), .12);
  border: 1px solid rgba(var(--identity-rgb), .16);
}
.portal-nav .pnav-gadget svg, .portal-nav .pnav-gadget img {
  display: block; width: 20px; height: 20px; opacity: 1; object-fit: contain;
}
.portal-nav .pnav-assistant { min-width: 0; flex: 1; gap: 3px; }
.portal-nav .pnav-assistant strong { color: var(--identity); font-size: 14px; font-weight: 800; line-height: 1.2; }
.portal-nav .pnav-assistant small { color: #b8cdd5; font-size: 11px; opacity: 1; line-height: 1.35; }
.portal-nav .pnav-mail-title { display: flex; align-items: center; gap: 7px; }
.portal-nav .pnav-mail-title .pnav-joined-gtb { width: 42px; height: 19px; opacity: 1; }
.portal-nav .pnav-studio { margin-top: 14px; font-weight: 700; color: #edf6f8; }
.pnav-studio-count { margin-left: auto; font-size: 10px; border: 1px solid #ffffff29; border-radius: 4px; padding: 2px 6px; color: #c3d5dc; }
.pnav-studio-family { margin: 0 0 8px 8px; padding-left: 8px; border-left: 1px solid #ffffff25; }
.portal-nav .pnav-gadget-settings {
  width: 100%; min-height: 44px; margin: 0 0 8px; padding: 8px 12px;
  border: 0; border-radius: 8px; background: transparent;
  text-align: left; color: #b8cdd5; font: 500 11px/1.4 var(--font-body); cursor: pointer;
}
.portal-nav .pnav-gadget-settings:hover { background: #ffffff0a; color: #fff; }
.portal-nav button:focus-visible { outline: 2px solid #70d6d0; outline-offset: 2px; }
.portal-side { scrollbar-width: thin; scrollbar-color: #46616b #102a35; }
@media (prefers-reduced-motion: reduce) { .portal-nav .pnav-identity { transition: none; } }
