/* Private Case Fault Family Law System branding - v5.21.1 */
:root {
  --pcf-navy-950: #04172f;
  --pcf-navy-900: #062448;
  --pcf-navy-800: #0a3566;
  --pcf-gold-700: #9a6817;
  --pcf-gold-600: #b77d1f;
  --pcf-gold-500: #d2a44a;
  --pcf-gold-300: #ead39c;
  --pcf-cream: #fbf8f1;
}

body.app-shell {
  background:
    radial-gradient(circle at 87% 4%, rgba(210,164,74,.09), transparent 24rem),
    #f4f7fb;
}

.topbar {
  border-bottom: 2px solid rgba(183,125,31,.26);
  box-shadow: 0 5px 20px rgba(4,23,47,.06);
}

.pcv-topbar-brand {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  color: var(--pcf-navy-950);
  white-space: nowrap;
}
.pcv-topbar-brand img {
  width: 34px;
  height: 38px;
  object-fit: contain;
}
.pcv-topbar-brand span {
  display: flex;
  flex-direction: column;
  line-height: 1.08;
}
.pcv-topbar-brand strong {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 13px;
  letter-spacing: .025em;
}
.pcv-topbar-brand small {
  color: var(--pcf-gold-700);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.sidebar {
  background:
    radial-gradient(circle at 50% 0, rgba(210,164,74,.16), transparent 18rem),
    linear-gradient(180deg, #061f40 0%, #052a52 48%, #03162d 100%);
  border-right: 1px solid rgba(210,164,74,.32);
}
.sidebar-brand.pcf-sidebar-brand {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 166px;
  padding: 15px 12px 12px;
  border-bottom: 1px solid rgba(234,211,156,.26);
}
.pcf-sidebar-logo {
  display: block;
  width: min(218px, 100%);
  max-height: 142px;
  object-fit: contain;
  filter: drop-shadow(0 8px 16px rgba(0,0,0,.24));
}
.case-switcher {
  border-color: rgba(234,211,156,.2) !important;
  background: rgba(255,255,255,.045) !important;
}
.case-switcher small { color: var(--pcf-gold-300) !important; }
#primary-nav .nav-group-title { color: rgba(255,255,255,.72); }
#primary-nav .nav-group-title:hover { color: #fff; background: rgba(255,255,255,.04); }
#primary-nav a.active {
  color: #fff !important;
  background: linear-gradient(90deg, rgba(183,125,31,.34), rgba(255,255,255,.08)) !important;
  border-left-color: var(--pcf-gold-500) !important;
  box-shadow: inset 0 0 0 1px rgba(234,211,156,.12);
}
#primary-nav a.active .nav-icon { color: #f5cc72; }
.sidebar-footer { border-top-color: rgba(234,211,156,.24) !important; }
.sidebar-footer > span { color: var(--pcf-gold-500); }

button:not(.icon-button):not(.nav-group-title),
.button:not(.secondary):not(.danger),
a.button:not(.secondary):not(.danger) {
  background: linear-gradient(135deg, var(--pcf-navy-800), var(--pcf-navy-950));
  border-color: var(--pcf-navy-900);
  box-shadow: 0 7px 18px rgba(6,36,72,.16);
}
button:not(.icon-button):not(.nav-group-title):hover,
.button:not(.secondary):not(.danger):hover,
a.button:not(.secondary):not(.danger):hover {
  background: linear-gradient(135deg, var(--pcf-gold-600), var(--pcf-gold-700));
  border-color: var(--pcf-gold-700);
}

.page-head h1,
.dashboard-welcome h1,
.panel > h2:first-child,
.auth-card h1 {
  color: var(--pcf-navy-950);
  font-family: Georgia, 'Times New Roman', serif;
}
.dashboard-welcome {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 25px 28px;
  border: 1px solid rgba(183,125,31,.18);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(251,248,241,.95));
  box-shadow: 0 10px 30px rgba(4,23,47,.07);
}
.dashboard-welcome::after {
  content: '';
  position: absolute;
  z-index: -1;
  top: -42px;
  right: 38px;
  width: 285px;
  height: 285px;
  background: url('pcf-crest.png') center/contain no-repeat;
  opacity: .105;
  pointer-events: none;
}
.dashboard-welcome p { color: #657387; }
.metric-card { border-top: 3px solid rgba(183,125,31,.62) !important; }
.metric-card .metric-icon {
  color: #fff !important;
  background: linear-gradient(145deg, var(--pcf-gold-500), var(--pcf-gold-700)) !important;
}
.metric-card strong { color: var(--pcf-navy-950) !important; }
.panel { border-color: rgba(7,44,84,.11); }

.auth-shell {
  background:
    radial-gradient(circle at 15% 20%, rgba(210,164,74,.18), transparent 30rem),
    radial-gradient(circle at 88% 82%, rgba(10,53,102,.16), transparent 32rem),
    linear-gradient(145deg, #f8fafc 0%, #f3f6fa 58%, #fbf7ef 100%);
}
.auth-main { padding: 34px 18px; }
.auth-card {
  width: min(540px, calc(100vw - 32px));
  max-width: 540px;
  padding: 30px 38px 36px;
  text-align: center;
  border: 1px solid rgba(183,125,31,.24);
  border-top: 4px solid var(--pcf-gold-600);
  box-shadow: 0 24px 60px rgba(4,23,47,.15);
}
.auth-card form { text-align: left; }
.auth-card button { width: 100%; }
.pcf-auth-logo {
  display: block;
  width: min(400px, 96%);
  max-height: 300px;
  margin: 0 auto 4px;
  object-fit: contain;
}
.pcf-auth-crest {
  display: block;
  width: 145px;
  height: 170px;
  margin: 0 auto 8px;
  object-fit: contain;
}
.pcf-brand-tagline {
  margin: -3px 0 20px;
  color: var(--pcf-gold-700);
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.pcv-print-brand { display: none; }

@media (max-width: 1320px) {
  .pcv-topbar-brand span { display: none; }
}
@media (max-width: 900px) {
  .pcv-topbar-brand { display: none; }
  .pcf-sidebar-brand { min-height: 148px !important; }
  .pcf-sidebar-logo { max-height: 125px; }
  .dashboard-welcome::after { right: -35px; width: 230px; height: 230px; }
}
@media (max-width: 640px) {
  .auth-card { padding: 24px 20px 28px; }
  .pcf-auth-logo { max-height: 235px; }
  .dashboard-welcome { padding: 21px 20px; }
  .dashboard-welcome::after { opacity: .07; right: -70px; }
}

@media print {
  .topbar, .sidebar, .mobile-tabbar, .mobile-scrim, .command-palette { display: none !important; }
  .main { margin: 0 !important; padding: 0 !important; }
  .pcv-print-brand {
    display: flex !important;
    align-items: center;
    gap: 16px;
    margin: 0 0 20px;
    padding: 0 0 13px;
    border-bottom: 2px solid #b77d1f;
  }
  .pcv-print-brand img { width: 76px; height: 88px; object-fit: contain; }
  .pcv-print-brand strong {
    color: #04172f;
    font: 700 19px Georgia, 'Times New Roman', serif;
  }
  .pcv-print-brand small {
    display: block;
    margin-top: 4px;
    color: #9a6817;
    font: 700 10px Arial, sans-serif;
    letter-spacing: .12em;
    text-transform: uppercase;
  }
}

/* v5.22.1 Website & Visual Site Builder */
.website-subnav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.website-subnav a{padding:9px 13px;border-radius:9px;border:1px solid var(--line,#d7e0ea);background:#fff;font-size:12px;font-weight:800;color:#536276}.website-subnav a.active{background:#061f40;color:#fff;border-color:#061f40}.website-quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.website-quick-actions a{border:1px solid #dce4ed;border-radius:12px;padding:15px;display:flex;flex-direction:column;background:#f9fbfd}.website-quick-actions strong{color:#061f40}.website-quick-actions span{font-size:12px;color:#6b7889;margin-top:4px}.stack-list{display:grid;gap:8px}.stack-list a{border-bottom:1px solid #e2e7ed;padding:10px 0;display:flex;flex-direction:column}.stack-list span,.table-note{display:block;font-size:11px;color:#758193;margin-top:3px}.website-builder-toolbar{display:flex;gap:10px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.inline-form{display:inline-flex;margin:0}.website-builder-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:18px}.website-builder-canvas{display:grid;gap:15px}.builder-section-card{background:#fff;border:1px solid #dbe3ec;border-radius:15px;padding:18px;box-shadow:0 7px 22px rgba(6,31,64,.05)}.builder-section-card>header{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.builder-section-card h2{margin:3px 0;color:#061f40}.builder-section-card small{color:#748193}.builder-type{display:inline-flex;background:#f4e7c6;color:#8d631d;border-radius:999px;padding:3px 8px;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.builder-section-card .actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.builder-section-card .actions form{display:flex;gap:4px}.builder-section-card .actions button,.builder-section-card .actions a{border:1px solid #d7e0e9;background:#fff;border-radius:7px;padding:6px 9px;font-size:11px;color:#31465d}.builder-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:15px}.builder-card-grid a{border:1px solid #e0e6ed;border-radius:10px;padding:12px;display:grid;grid-template-columns:30px 1fr;column-gap:8px;align-items:center}.builder-card-grid a>span{grid-row:1/3;width:30px;height:30px;border-radius:8px;background:#061f40;color:#d4af55;display:grid;place-items:center}.builder-card-grid svg{width:17px}.builder-card-grid strong{font-size:12px;color:#122943}.builder-card-grid small{font-size:9px}.website-builder-help{position:sticky;top:90px;height:max-content}.website-builder-help h3{margin-top:0;color:#061f40}.website-builder-help p{font-size:12px;color:#667488}.website-media-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:18px}.website-media-grid img{width:100%;height:150px;object-fit:contain;background:#f5f7fa;border-radius:8px}.website-media-grid h3{margin:10px 0 0}.filter-pills{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}.filter-pills a{padding:7px 12px;border:1px solid #d8e0e9;border-radius:999px;font-size:11px;font-weight:800}.filter-pills a.active{background:#061f40;color:#fff}.status-badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#edf2f7;color:#4a5c70;font-size:10px;font-weight:800}.form-grid fieldset{border:1px solid #dbe3ec;border-radius:12px;padding:15px}.form-grid legend{font-weight:800;color:#061f40;padding:0 6px}
@media(max-width:1000px){.website-builder-layout{grid-template-columns:1fr}.website-builder-help{position:static}.builder-card-grid,.website-media-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.website-quick-actions,.builder-card-grid,.website-media-grid{grid-template-columns:1fr}.builder-section-card>header{display:block}.builder-section-card .actions{margin-top:12px}}
