/* Bosigo WorkOS v5 — futuristic, human-centred interface language */
:root{
  --future-yellow:#ffd400;
  --future-black:#050505;
  --future-graphite:#11110f;
  --future-panel:#ffffff;
  --future-line:rgba(17,17,15,.12);
  --future-glow:0 0 0 1px rgba(255,212,0,.08),0 22px 70px rgba(0,0,0,.08);
}

/* Sidebar navigation: icon + label only. */
.nav-item{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:11px!important;
  min-height:48px!important;
  padding:7px 10px!important;
}
.nav-icon{
  width:36px!important;
  height:36px!important;
  border-radius:12px!important;
  display:grid!important;
  place-items:center!important;
  color:#d7d7d1!important;
  background:rgba(255,255,255,.055)!important;
  border:1px solid rgba(255,255,255,.06)!important;
  transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease!important;
}
.nav-icon svg{width:19px!important;height:19px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.75!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.nav-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.91rem;letter-spacing:-.01em}
.nav-item:hover .nav-icon{transform:translateY(-1px) scale(1.03);background:rgba(255,212,0,.12)!important;color:#fff!important;border-color:rgba(255,212,0,.24)!important}
.nav-item.active{background:linear-gradient(100deg,var(--future-yellow),#ffe455)!important;color:#050505!important;box-shadow:0 12px 28px rgba(255,212,0,.12)!important}
.nav-item.active .nav-icon{background:#080808!important;color:var(--future-yellow)!important;border-color:#080808!important;box-shadow:0 8px 20px rgba(0,0,0,.14)!important}
.nav-item.active .nav-label{font-weight:820!important}
.nav-unread{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#080808;color:#ffd400;display:grid;place-items:center;font-size:.62rem;font-style:normal;font-weight:900;border:1px solid rgba(255,212,0,.35)}

/* Collapsed sidebar shows only recognised icons. */
body.sidebar-collapsed .workspace-card,body.sidebar-collapsed .workos-module-key,body.sidebar-collapsed .sidebar-bottom{display:none!important}
body.sidebar-collapsed .nav-list{margin-top:18px;gap:8px}
body.sidebar-collapsed .nav-item{display:grid!important;grid-template-columns:1fr!important;justify-items:center!important;min-height:50px!important;padding:6px!important;border-radius:14px!important}
body.sidebar-collapsed .nav-label{display:none!important}
body.sidebar-collapsed .nav-icon{width:38px!important;height:38px!important}
body.sidebar-collapsed .nav-unread{position:absolute;right:3px;top:2px;min-width:17px;height:17px;font-size:.52rem;padding:0 4px}
body.sidebar-collapsed .nav-item.active{background:transparent!important;box-shadow:none!important}
body.sidebar-collapsed .nav-item.active .nav-icon{background:var(--future-yellow)!important;color:#050505!important;border-color:var(--future-yellow)!important;box-shadow:0 0 0 4px rgba(255,212,0,.09),0 10px 24px rgba(0,0,0,.24)!important}
body.sidebar-collapsed .brand-block{min-height:54px}

/* Clear, legible topbar counters. */
.topbar-actions{gap:8px!important}
.topbar-icon-action{width:44px!important;height:44px!important;border-radius:13px!important;overflow:visible!important}
.topbar-icon-action .count-badge{
  position:absolute!important;
  right:-5px!important;
  top:-7px!important;
  min-width:22px!important;
  height:22px!important;
  padding:0 6px!important;
  border-radius:999px!important;
  display:grid!important;
  place-items:center!important;
  background:var(--future-yellow)!important;
  color:#050505!important;
  border:2px solid #f8f8f4!important;
  box-shadow:0 3px 12px rgba(0,0,0,.24)!important;
  font-size:.66rem!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
  z-index:3!important;
}
.topbar-icon-action .count-badge:empty{display:none!important}
.topbar-icon-action:hover{box-shadow:0 10px 30px rgba(0,0,0,.08),0 0 0 3px rgba(255,212,0,.09)!important}
.topbar-command{background:rgba(255,255,255,.9)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.55)!important}

/* Main canvas: technology texture without reducing legibility. */
.main-area{background:
  radial-gradient(circle at 74% 0%,rgba(255,212,0,.08),transparent 28%),
  linear-gradient(rgba(17,17,15,.025) 1px,transparent 1px),
  linear-gradient(90deg,rgba(17,17,15,.025) 1px,transparent 1px),
  #f7f7f2;background-size:auto,48px 48px,48px 48px,auto}
.content-wrap{position:relative}
.content-wrap:before{content:"";position:absolute;inset:0 0 auto;height:160px;pointer-events:none;background:linear-gradient(180deg,rgba(255,212,0,.04),transparent);mask-image:linear-gradient(#000,transparent)}
.screen{position:relative}
.screen.active{animation:futureScreenIn .38s cubic-bezier(.2,.8,.2,1) both}
@keyframes futureScreenIn{from{opacity:0;transform:translateY(10px);filter:blur(2px)}to{opacity:1;transform:none;filter:none}}

/* Page headers become product surfaces, not plain document headings. */
.section-header{
  position:relative;
  align-items:center!important;
  padding:18px 20px!important;
  margin-bottom:18px!important;
  border:1px solid rgba(17,17,15,.1)!important;
  border-radius:20px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(248,248,242,.88))!important;
  box-shadow:0 15px 45px rgba(0,0,0,.045)!important;
  overflow:hidden;
}
.section-header:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--future-yellow),rgba(255,212,0,.12))}
.section-header:after{content:"";position:absolute;right:-40px;top:-70px;width:180px;height:180px;border-radius:50%;border:1px solid rgba(255,212,0,.18);box-shadow:0 0 0 28px rgba(255,212,0,.025),0 0 0 58px rgba(255,212,0,.018);pointer-events:none}
.section-header>div:first-child{position:relative;z-index:1}
.section-header h2{font-size:clamp(1.45rem,2vw,2.2rem)!important;line-height:1.05!important;margin:5px 0 7px!important}
.section-header p{max-width:780px!important;margin:0!important;color:#676862!important}
.section-header .signal-label{color:#756100!important}

/* Consistent future panels across every module. */
.panel,.metric-card,.innovation-panel,.journey-panel,.learning-panel,.exchange-panel,.mailbox-workspace{
  border-color:rgba(17,17,15,.1)!important;
  box-shadow:0 14px 46px rgba(0,0,0,.045)!important;
}
.panel,.metric-card{position:relative;overflow:hidden}
.panel:before,.metric-card:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,rgba(255,212,0,.65),transparent);opacity:.42;pointer-events:none}
.metric-card{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.metric-card:hover{transform:translateY(-3px);border-color:rgba(255,212,0,.3)!important;box-shadow:0 20px 58px rgba(0,0,0,.075)!important}
.metric-card>strong{font-variant-numeric:tabular-nums}
.panel-heading h2{letter-spacing:-.035em}

/* Role-aware entry surface. */
.role-aware-focus{border:1px solid rgba(255,212,0,.16)!important;background:
  radial-gradient(circle at 80% 20%,rgba(255,212,0,.12),transparent 26%),
  linear-gradient(115deg,#050505,#14130e 63%,#080808)!important}
.role-aware-focus .entry-copy>span{display:inline-flex;align-items:center;gap:8px}
.role-aware-focus .entry-copy>span:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--future-yellow);box-shadow:0 0 0 7px rgba(255,212,0,.08)}
.role-aware-focus[data-role="intern"] .entry-journey article:nth-child(-n+3),
.role-aware-focus[data-role="supervisor"] .entry-journey article:nth-child(-n+4),
.role-aware-focus[data-role="partner"] .entry-journey article:nth-child(-n+4),
.role-aware-focus[data-role="institution"] .entry-journey article:nth-child(-n+7){border-color:rgba(255,212,0,.18)}
.role-aware-focus .entry-actions .primary-button{background:var(--future-yellow)!important;color:#050505!important}

/* Forms, data tables and status language. */
.field input,.field select,.field textarea,.search-field input,.filter-row select{
  border-radius:12px!important;border-color:#d8d8d0!important;background:rgba(255,255,255,.94)!important;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important
}
.field input:focus,.field select:focus,.field textarea:focus,.search-field input:focus,.filter-row select:focus{border-color:#b89b00!important;box-shadow:0 0 0 4px rgba(255,212,0,.12)!important;background:#fff!important}
.data-table{font-variant-numeric:tabular-nums}
.data-table thead th{background:linear-gradient(180deg,#f7f7f3,#efefe9)!important;color:#55564f!important;border-bottom:1px solid #dcdcd5!important}
.data-table tbody tr{transition:background .16s ease,transform .16s ease}
.data-table tbody tr:hover{background:#fffbea!important}
.status-pill{gap:5px!important;border:1px solid currentColor!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}

/* Mailbox and collaboration need dedicated task space. */
.mailbox-route .content-wrap,.chat-route .content-wrap{max-width:none!important;padding-left:18px!important;padding-right:18px!important}
.mailbox-workspace,.collaboration-shell{border-radius:22px!important;overflow:hidden!important;box-shadow:0 26px 80px rgba(0,0,0,.12)!important}
.mailbox-folders,.collab-rail,.conversation-side{background:linear-gradient(180deg,#090909,#11110f)!important}
.mailbox-message-row:hover,.conversation-item:hover{background:rgba(255,212,0,.065)!important}
.mailbox-message-row.active,.conversation-item.active{background:linear-gradient(90deg,rgba(255,212,0,.15),rgba(255,212,0,.035))!important;box-shadow:inset 3px 0 0 var(--future-yellow)!important}
.message-composer,.mailbox-reader-actions{box-shadow:0 -12px 32px rgba(0,0,0,.04)}

/* Innovation assistant feels integrated, not like an advert. */
.innovation-assistant{border-color:rgba(255,212,0,.22)!important;background:rgba(8,8,8,.94)!important;backdrop-filter:blur(16px)!important;box-shadow:0 18px 60px rgba(0,0,0,.24),0 0 0 1px rgba(255,212,0,.08)!important}
.assistant-radar{opacity:.75}

/* Prototype message should be informative but visually subordinate. */
.prototype-banner{border-radius:16px!important;background:linear-gradient(90deg,#fff8c8,#fffdf1)!important;border-color:rgba(169,139,0,.35)!important;box-shadow:none!important}
.prototype-banner>span{white-space:nowrap}
.prototype-banner p{font-size:.78rem;color:#484940}

/* Empty states and action clarity. */
.empty-state{min-height:280px;display:grid;place-items:center;text-align:center;background:radial-gradient(circle at 50% 30%,rgba(255,212,0,.08),transparent 28%),#fff}
.empty-symbol{background:#0a0a09!important;color:var(--future-yellow)!important;box-shadow:0 0 0 8px rgba(255,212,0,.08),0 14px 36px rgba(0,0,0,.12)}
.primary-button{background:#080808!important;color:#fff!important}
.primary-button:hover{box-shadow:0 12px 32px rgba(0,0,0,.18),0 0 0 3px rgba(255,212,0,.1)!important}
.yellow-button,.entry-actions .primary-button{background:var(--future-yellow)!important;color:#050505!important}

/* Search results use the same semantic icons as navigation. */
.search-result-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Futuristic breadcrumb signal generated by JS. */
.future-context-line{display:flex;align-items:center;gap:8px;margin-top:6px;color:#7a7b74;font-size:.67rem}
.future-context-line i{width:5px;height:5px;border-radius:50%;background:var(--future-yellow);box-shadow:0 0 0 5px rgba(255,212,0,.08)}
.future-context-line b{font-weight:800;color:#333}

@media(max-width:1180px){
  .nav-item{grid-template-columns:36px minmax(0,1fr) auto!important;gap:9px!important}.nav-label{font-size:.86rem}
  .topbar-icon-action{width:42px!important;height:42px!important}
}
@media(max-width:960px){
  .sidebar .workspace-card{display:block!important}
  .section-header{padding:16px!important}
}
@media(max-width:720px){
  .topbar-icon-action .count-badge{right:-3px!important;top:-5px!important;min-width:20px!important;height:20px!important;font-size:.6rem!important}
  .section-header{align-items:flex-start!important;flex-direction:column!important}
  .section-header .header-actions{width:100%;display:grid!important;grid-template-columns:1fr!important}
  .section-header .header-actions button,.section-header>button{width:100%}
  .role-aware-focus .entry-journey{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .innovation-assistant .assistant-label{display:none}
}
@media(prefers-reduced-motion:reduce){
  .screen.active,.metric-card,.nav-icon{animation:none!important;transition:none!important}
}
/* Compact brand lock-up: Bosigo remains dominant while WorkOS stays readable. */
.brand-logo{width:122px!important}
.brand-product{max-width:68px!important;flex:0 0 68px!important}
.brand-product strong{font-size:.78rem!important}
.brand-product small{display:none!important}
