:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17202b;background:#f5f7fa;line-height:1.5}*{box-sizing:border-box}body{margin:0}.alpha-banner{padding:.55rem 1rem;text-align:center;background:#3b2500;color:#fff;font-size:.9rem;letter-spacing:.015em}.topbar{min-height:72px;background:#fff;border-bottom:1px solid #d9e0e8;display:flex;align-items:center;justify-content:space-between;padding:.7rem clamp(1rem,4vw,3rem);gap:1rem}.brand{display:flex;align-items:center;gap:1rem;font-weight:700}.brand img{width:150px;height:46px;object-fit:contain;object-position:left center}.identity{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;justify-content:flex-end}.role{font-size:.85rem;color:#56616f}.page-shell{width:min(1120px,calc(100% - 2rem));margin:2rem auto 4rem}.hero{padding:2rem;border-radius:18px;background:#fff;border:1px solid #d9e0e8;margin-bottom:1.25rem}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-weight:700;font-size:.8rem;color:#586575}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.card,.login-card{background:#fff;border:1px solid #d9e0e8;border-radius:16px;padding:1.4rem;box-shadow:0 8px 26px rgba(30,45,60,.05)}.big{font-weight:800;font-size:1.15rem}.login-card{max-width:620px;margin:4rem auto}.login-card form{display:grid;gap:.55rem}.login-card input{width:100%;padding:.75rem;border:1px solid #aeb8c4;border-radius:9px;font:inherit}.login-card button,.link-button{font:inherit}.login-card button{margin-top:.4rem;border:0;border-radius:9px;padding:.8rem 1rem;background:#1d4664;color:#fff;font-weight:700}.link-button{border:0;background:transparent;text-decoration:underline;cursor:pointer;color:#1d4664}.notice,.error{margin-top:1rem;padding:1rem;border-radius:10px;background:#f5f0e5}.error{background:#fff0f0;color:#7b1515}.roadmap{margin-top:1rem}footer{text-align:center;color:#697584;padding:2rem;font-size:.85rem}a{color:#174d73}a:focus,button:focus,input:focus{outline:3px solid #1a73b8;outline-offset:2px}@media(max-width:800px){.grid{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}.identity{justify-content:flex-start}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media(forced-colors:active){.card,.hero,.login-card{border:1px solid CanvasText}}

.profiles{margin-top:1.25rem}.profile-list{display:grid;gap:.45rem}.profile-row{display:grid;grid-template-columns:1.1fr 1.5fr .7fr;gap:.75rem;align-items:center;padding:.65rem .75rem;border:1px solid #e0e5eb;border-radius:9px}.profile-row span{color:#586575}.profile-row code{font-size:.85rem}@media(max-width:650px){.profile-row{grid-template-columns:1fr}.profile-row code{justify-self:start}}
.global-nav{display:flex;gap:.4rem;align-items:center;padding:.55rem clamp(1rem,4vw,3rem);background:#eef3f7;border-bottom:1px solid #d9e0e8;overflow:auto}.global-nav a,.nav-future{white-space:nowrap;padding:.48rem .7rem;border-radius:8px;text-decoration:none}.global-nav a:hover{background:#fff}.nav-future{color:#7a8591}.nav-future small{font-size:.68rem}.page-heading,.record-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem}.page-heading h1,.record-header h1{margin:.15rem 0}.actions,.form-actions,.section-heading{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.section-heading{justify-content:space-between}.button-link,.search-bar button,.form-actions button{display:inline-block;border:0;border-radius:9px;padding:.72rem 1rem;background:#1d4664;color:#fff;text-decoration:none;font:inherit;font-weight:700;cursor:pointer}.button-link.secondary{background:#e5edf3;color:#173f5a}.search-bar{background:#fff;border:1px solid #d9e0e8;border-radius:14px;padding:1rem;margin-bottom:1rem}.search-bar label{font-weight:700;display:block;margin-bottom:.45rem}.search-bar div{display:flex;gap:.5rem}.search-bar input{flex:1;min-width:0;padding:.72rem;border:1px solid #aeb8c4;border-radius:9px;font:inherit}.table-card{overflow-x:auto;padding:0}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.85rem 1rem;border-bottom:1px solid #e2e7ec;vertical-align:top}th{font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:#586575;background:#f8fafc}.badge{display:inline-block;margin-left:.4rem;padding:.14rem .42rem;border-radius:999px;background:#e7edf2;color:#3b4b59;font-size:.67rem;font-weight:800;letter-spacing:.04em}.empty-state{padding:1.2rem;color:#586575}.help-text{font-size:.86rem;color:#667382}.form-grid p{display:grid;gap:.28rem}.form-grid label{font-weight:700}.form-grid input,.form-grid select,.form-grid textarea{width:100%;max-width:760px;padding:.68rem;border:1px solid #aeb8c4;border-radius:8px;font:inherit}.form-grid textarea{min-height:90px}.form-grid .errorlist{color:#842029;margin:.2rem 0}.form-actions{margin-top:1rem}.warning-panel{background:#fff8e1;border:1px solid #d5b653;border-radius:14px;padding:1rem 1.2rem;margin-bottom:1rem}.warning-panel h2{margin-top:0}.breadcrumbs{margin-bottom:.8rem;color:#667382}.reference{font-weight:800;letter-spacing:.05em;color:#455564;margin-bottom:.1rem}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.detail-grid h2{margin-top:0}.detail-grid h3{font-size:1rem;margin:1.1rem 0 .35rem}.plain-list{list-style:none;padding:0;margin:.2rem 0 .5rem}.plain-list li{padding:.28rem 0}.relationship-list li{border-bottom:1px solid #edf0f3;padding:.5rem 0}.sensitive-panel{border-left:4px solid #8a6d1e}dl{display:grid;grid-template-columns:minmax(120px,.6fr) 1.4fr;gap:.4rem .9rem}dt{font-weight:700;color:#586575}dd{margin:0}@media(max-width:800px){.page-heading,.record-header{flex-direction:column}.detail-grid{grid-template-columns:1fr}.search-bar div{flex-direction:column}dl{grid-template-columns:1fr}.global-nav{padding-inline:1rem}}
.status-pill{display:inline-block;padding:.28rem .58rem;border-radius:999px;background:#e5edf3;color:#173f5a;font-size:.78rem;font-weight:800}.conflict-panel{margin-top:1rem}.restricted-note{display:inline-block;padding:.6rem .75rem;border-radius:9px;background:#f1f3f5;color:#4f5b66;border:1px solid #d9e0e8}.restricted-note.compact{padding:.28rem .45rem;font-size:.82rem}.padded-heading{padding:1rem 1rem 0}.danger-action{background:#6c2b2b}.card+.card{margin-top:1rem}.detail-grid>.card+.card{margin-top:0}
.matter-flags{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.security-label{display:inline-block;padding:.28rem .58rem;border-radius:999px;background:#edf0f3;color:#36424d;font-size:.78rem;font-weight:800}.security-restricted,.security-screened,.security-highly_restricted{border:1px solid #8a6d1e;background:#fff8e1}.matter-tabs{display:flex;gap:.35rem;overflow:auto;margin:0 0 1rem;padding:.45rem;background:#eef3f7;border:1px solid #d9e0e8;border-radius:12px}.matter-tabs span{white-space:nowrap;padding:.5rem .7rem;border-radius:8px;color:#687584}.matter-tabs .active{background:#fff;color:#17202b;font-weight:800}.matter-tabs small{font-size:.67rem}
.matter-tabs a{white-space:nowrap;padding:.5rem .7rem;border-radius:8px;text-decoration:none}.matter-drawer{position:fixed;right:1rem;bottom:1rem;width:min(390px,calc(100% - 2rem));max-height:55vh;overflow:auto;background:#fff;border:1px solid #b9c6d2;border-radius:14px;padding:.8rem 1rem;box-shadow:0 12px 36px rgba(30,45,60,.18);z-index:20}.matter-drawer summary{cursor:pointer;font-weight:800}.compact{padding:.55rem .7rem;margin:.4rem 0}
.message{margin:0 0 1rem;padding:.85rem 1rem;border:1px solid #b9cbd7;border-radius:10px;background:#eef6fa}.guide-copy{max-width:850px}.danger-action{background:#6c2b2b!important;color:#fff!important}

/* CL_BUILD18_FICTIONAL_ROLE_ACCESS_FIX3
   Compact, participant-gated one-click fictional role access. */
.cl-private-signin-note {
  margin: .75rem 0 0;
  color: #526273;
  font-size: .9rem;
}

.cl-participant-access-panel,
.cl-role-access-panel {
  margin-top: 1.5rem;
  padding-top: 1.25rem;
  border-top: 1px solid #d7e0e8;
}

.cl-participant-access-panel h2,
.cl-role-access-panel h2 {
  margin: 0 0 .5rem;
}

.cl-role-access-intro,
.cl-participant-access-panel p {
  margin: 0 0 1rem;
  color: #34495e;
}

.cl-role-list {
  display: grid;
  gap: .55rem;
}

.cl-role-row {
  display: grid;
  grid-template-columns: minmax(11rem, 1.15fr) minmax(7rem, .65fr) auto;
  align-items: center;
  gap: .8rem;
  padding: .7rem .8rem;
  border: 1px solid #d7e0e8;
  border-radius: .65rem;
  background: #fff;
}

.cl-role-identity {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: .1rem;
}

.cl-role-identity strong {
  line-height: 1.25;
}

.cl-role-identity span {
  color: #526273;
  font-size: .93rem;
  line-height: 1.3;
}

.cl-role-username {
  justify-self: start;
  white-space: nowrap;
  font-size: .86rem;
}

.cl-role-access-form {
  margin: 0;
  justify-self: end;
}

.cl-role-access-form .cl-role-access-button {
  width: auto;
  min-width: 7.75rem;
  margin: 0;
  padding: .58rem .85rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}

.cl-role-access-note {
  margin: .8rem 0 0;
  color: #526273;
  font-size: .86rem;
}

@media (max-width: 700px) {
  .cl-role-row {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .cl-role-identity {
    grid-column: 1 / -1;
  }

  .cl-role-username {
    align-self: center;
  }
}

/* CL_BUILD18_ROLE_DASHBOARD_REFINEMENT_REV2
   Role-specific workload dashboard for the accepted Build 18 Alpha. */
.cl-dashboard-heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 1.5rem;
  margin-bottom: 1.25rem;
}
.cl-dashboard-heading h1 { margin: .15rem 0 .2rem; }
.cl-dashboard-subtitle,
.cl-dashboard-asof { margin: 0; color: #526273; }
.cl-dashboard-asof { font-size: .9rem; white-space: nowrap; }
.cl-dashboard-metrics {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(11.5rem, 1fr));
  gap: .85rem;
  margin-bottom: 1.1rem;
}
.cl-dashboard-metric {
  display: flex;
  flex-direction: column;
  min-height: 9.2rem;
  padding: 1rem;
  border: 1px solid #d7e0e8;
  border-radius: .8rem;
  background: #fff;
}
.cl-dashboard-metric p { margin: 0; color: #526273; font-size: .9rem; }
.cl-dashboard-metric strong { margin: .25rem 0; font-size: 2rem; line-height: 1; color: #081d36; }
.cl-dashboard-metric span { color: #526273; font-size: .86rem; line-height: 1.35; }
.cl-dashboard-metric a { margin-top: auto; padding-top: .7rem; font-weight: 700; }
.cl-dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(15rem, .8fr);
  gap: 1rem;
  align-items: start;
}
.cl-dashboard-grid .card { margin: 0; }
.cl-dashboard-section-heading { display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.cl-dashboard-section-heading h2,
.cl-dashboard-actions h2 { margin: .15rem 0 .8rem; }
.cl-priority-list { display: grid; gap: .55rem; }
.cl-priority-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  padding: .8rem 0;
  border-top: 1px solid #e1e7ed;
}
.cl-priority-item:first-child { border-top: 0; padding-top: 0; }
.cl-priority-item > div:first-child { display: grid; gap: .12rem; min-width: 0; }
.cl-priority-item strong { overflow-wrap: anywhere; }
.cl-priority-item span { color: #526273; font-size: .88rem; }
.cl-priority-kind { text-transform: uppercase; letter-spacing: .045em; font-size: .72rem !important; font-weight: 700; }
.cl-priority-action { display: flex; align-items: center; gap: .65rem; white-space: nowrap; }
.cl-priority-action a { font-weight: 700; }
.cl-priority-badge { padding: .28rem .5rem; border-radius: 999px; font-weight: 700; }
.cl-priority-badge.overdue { background: #fde9e7; color: #8b1f17; }
.cl-priority-badge.today { background: #fff0c7; color: #714b00; }
.cl-priority-badge.upcoming { background: #e8f1f7; color: #174763; }
.cl-dashboard-action-list { display: grid; gap: .45rem; }
.cl-dashboard-action-list a {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: .72rem .8rem;
  border: 1px solid #d7e0e8;
  border-radius: .55rem;
  background: #f8fafc;
  font-weight: 700;
  text-decoration: none;
}
.cl-dashboard-action-list a:hover { background: #eef4f8; }
.cl-dashboard-empty { color: #526273; }
.cl-dashboard-admin-workspace {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.25rem;
  margin-bottom: 1rem;
  border-left: .3rem solid #0b5d79;
}
.cl-dashboard-admin-workspace h2 { margin: .15rem 0 .35rem; }
.cl-dashboard-admin-workspace p { margin-bottom: 0; }
.cl-dashboard-admin-workspace .button-link { flex: 0 0 auto; white-space: nowrap; }
.cl-dashboard-alpha-note {
  margin-top: 1rem;
  padding: .85rem 1rem;
  border-left: .25rem solid #b8810b;
  border-radius: .4rem;
  background: #fff7e4;
}
@media (max-width: 820px) {
  .cl-dashboard-heading,
  .cl-dashboard-admin-workspace { align-items: flex-start; flex-direction: column; gap: .4rem; }
  .cl-dashboard-asof { white-space: normal; }
  .cl-dashboard-grid { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .cl-dashboard-metrics { grid-template-columns: 1fr 1fr; }
  .cl-priority-item { align-items: flex-start; flex-direction: column; }
  .cl-priority-action { width: 100%; justify-content: space-between; }
}
@media (max-width: 390px) {
  .cl-dashboard-metrics { grid-template-columns: 1fr; }
}

/* CL_BUILD19_TOOLS_WORKSPACE_WP02
   Role-filtered Integration Tools workspace, private package catalogue and responsive shells. */
.cl-tools-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:1rem; margin-bottom:1rem; }
.cl-tools-heading h1 { margin:.15rem 0 .2rem; }
.cl-tools-subnav { display:flex; flex-wrap:wrap; gap:.45rem; margin:0 0 1rem; padding:.55rem; border:1px solid #d7e0e8; border-radius:.7rem; background:#f8fafc; }
.cl-tools-subnav a { padding:.52rem .72rem; border-radius:.45rem; font-weight:700; text-decoration:none; }
.cl-tools-subnav a[aria-current="page"] { background:#0b5d79; color:#fff; }
.cl-tools-alpha { margin:0 0 1.1rem; padding:.85rem 1rem; border-left:.28rem solid #b8810b; border-radius:.45rem; background:#fff7e4; }
.cl-tools-section { margin:1.25rem 0; }
.cl-tools-section-heading { display:flex; justify-content:space-between; align-items:end; gap:1rem; margin-bottom:.75rem; }
.cl-tools-section-heading h2 { margin:.15rem 0 0; }
.cl-tools-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(17rem,1fr)); gap:1rem; }
.cl-tools-card { display:flex; flex-direction:column; min-height:19rem; padding:1rem; border:1px solid #d7e0e8; border-radius:.8rem; background:#fff; }
.cl-tools-card-heading { display:flex; justify-content:space-between; align-items:start; gap:1rem; }
.cl-tools-card-heading h3 { margin:.15rem 0 .4rem; }
.cl-tools-status { flex:0 0 auto; padding:.28rem .52rem; border-radius:999px; background:#e8f1f7; color:#174763; font-size:.78rem; font-weight:700; }
.cl-tools-facts, .cl-tools-detail-list { display:grid; gap:.45rem; margin:.8rem 0; }
.cl-tools-facts div, .cl-tools-detail-list div { display:grid; grid-template-columns:7rem minmax(0,1fr); gap:.65rem; }
.cl-tools-facts dt, .cl-tools-detail-list dt { color:#526273; font-weight:700; }
.cl-tools-facts dd, .cl-tools-detail-list dd { margin:0; overflow-wrap:anywhere; }
.cl-tools-actions { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:auto; padding-top:.8rem; }
.cl-tools-two-column { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(16rem,.8fr); gap:1rem; align-items:start; margin:1rem 0; }
.cl-tools-two-column .card { margin:0; }
.cl-tools-activity-list { display:grid; gap:.55rem; }
.cl-tools-activity-list > div { display:grid; gap:.12rem; padding:.55rem 0; border-top:1px solid #e1e7ed; }
.cl-tools-activity-list > div:first-child { border-top:0; }
.cl-tools-activity-list span, .cl-tools-empty { color:#526273; }
.cl-tools-table { overflow:hidden; border:1px solid #d7e0e8; border-radius:.7rem; background:#fff; }
.cl-tools-table-row { display:grid; grid-template-columns:11rem minmax(12rem,1.4fr) 10rem 11rem; gap:.75rem; padding:.72rem .85rem; border-top:1px solid #e1e7ed; }
.cl-tools-table-row:first-child { border-top:0; }
.cl-tools-table-head { background:#eef4f8; font-weight:700; }
.cl-tools-package-list { display:grid; gap:.6rem; }
.cl-tools-package-list > div { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:.72rem 0; border-top:1px solid #e1e7ed; }
.cl-tools-package-list > div:first-child { border-top:0; }
.cl-tools-package-list > div > div { display:grid; gap:.15rem; min-width:0; }
.cl-tools-package-list span { color:#526273; overflow-wrap:anywhere; }
.cl-tools-next-step { margin-top:1rem; }
@media (max-width:820px) {
  .cl-tools-two-column { grid-template-columns:1fr; }
  .cl-tools-table-row { grid-template-columns:1fr 1fr; }
  .cl-tools-table-head { display:none; }
  .cl-tools-table-row span::before { content:attr(data-label) ": "; font-weight:700; color:#34495e; }
}
@media (max-width:560px) {
  .cl-tools-heading, .cl-tools-section-heading, .cl-tools-card-heading, .cl-tools-package-list > div { align-items:flex-start; flex-direction:column; }
  .cl-tools-grid { grid-template-columns:1fr; }
  .cl-tools-facts div, .cl-tools-detail-list div { grid-template-columns:1fr; gap:.1rem; }
  .cl-tools-actions { width:100%; }
  .cl-tools-actions .button-link { width:100%; text-align:center; }
  .cl-tools-table-row { grid-template-columns:1fr; }
}
/* CL_BUILD19_EMAIL_FILING_CORE_WP03
   Provider-neutral selected-message filing status and attachment scan presentation. */
.cl-email-result-list { display:grid; gap:.55rem; margin:.75rem 0; padding-left:1.25rem; }
.cl-email-result-list li { padding:.45rem .2rem; }
.cl-tools-detail-list code { overflow-wrap:anywhere; }
@media (max-width: 720px) {
  .cl-tools-detail-list div { grid-template-columns:1fr; gap:.15rem; }
}

/* CL_BUILD19_EMAIL_CLIENT_EXTENSIONS_V1 */
.nav-tools-dropdown{position:relative;display:inline-block}
.nav-tools-dropdown>summary{cursor:pointer;list-style:none}
.nav-tools-dropdown>summary::-webkit-details-marker{display:none}
.nav-tools-menu{position:absolute;z-index:200;min-width:250px;padding:.45rem;background:#fff;border:1px solid #cbd5df;border-radius:.45rem;box-shadow:0 .5rem 1.4rem rgba(0,0,0,.16)}
.nav-tools-menu a{display:block;padding:.65rem .75rem;color:#17212b;text-decoration:none;border-radius:.3rem;white-space:nowrap}
.nav-tools-menu a:hover,.nav-tools-menu a:focus{background:#eef4f9}

/* CL_EMAIL_EXTENSION_TOOLS_DROPDOWN_PORTAL_V2 */
.nav-tools-dropdown>summary::after{content:" \25BE";font-size:.8em}
.nav-tools-dropdown[open]>summary::after{content:" \25B4"}
html.js-cariblex-tools-menu .nav-tools-dropdown>.nav-tools-menu{display:none!important}
.cariblex-tools-menu-portal{position:fixed!important;z-index:10000!important;display:block;min-width:250px;max-width:calc(100vw - 16px);padding:.45rem;background:#fff;border:1px solid #cbd5df;border-radius:.45rem;box-shadow:0 .5rem 1.4rem rgba(0,0,0,.20)}
.cariblex-tools-menu-portal[hidden]{display:none!important}
.cariblex-tools-menu-portal a{display:block;padding:.65rem .75rem;color:#17212b!important;background:#fff;text-decoration:none;border-radius:.3rem;white-space:nowrap}
.cariblex-tools-menu-portal a:hover,.cariblex-tools-menu-portal a:focus{background:#eef4f9;outline:2px solid transparent}

/* CL_NAVIGATION_WRAP_TOOLS_CORRECTIVE_ALPHA1
   Persona-aware primary navigation: wrap into rows; never require horizontal nav scrolling.
   Existing CaribLex colours, typography and role filtering remain unchanged. */
.global-nav{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  align-content:flex-start;
  column-gap:.35rem;
  row-gap:.35rem;
  width:100%;
  max-width:100%;
  overflow-x:visible;
  overflow-y:visible;
  white-space:normal;
  box-sizing:border-box;
}
.global-nav > a,
.global-nav > .nav-tools-dropdown{
  flex:0 0 auto;
  max-width:100%;
}
.global-nav > a,
.nav-tools-dropdown > summary{
  white-space:nowrap;
}
.nav-tools-dropdown{
  position:relative;
}
.nav-tools-dropdown > .nav-tools-menu{
  left:0;
  right:auto;
  top:calc(100% + .35rem);
  max-width:min(30rem, calc(100vw - 2rem));
  min-width:min(16rem, calc(100vw - 2rem));
  overflow-wrap:anywhere;
}
.nav-tools-dropdown > .nav-tools-menu a{
  white-space:normal;
}
html.js-cariblex-tools-menu .nav-tools-dropdown > .nav-tools-menu{
  display:block!important;
}
@media (max-width:760px){
  .global-nav{
    column-gap:.2rem;
    row-gap:.25rem;
  }
  .global-nav > a,
  .nav-tools-dropdown > summary{
    white-space:normal;
  }
}
