/* Chardins v4.15.8.2.3 — full-height navigation shell.
   Desktop sidebar owns the full viewport height; masthead starts beside it.
   Tablet/mobile use a full-height overlay drawer above the masthead. */

:root{--cv-masthead-h:76px;--cv-sidebar-w:268px;--cv-side-head-h:76px}
.cv-app-shell{min-height:100vh;background:var(--cream);display:block}
.cv-workspace{min-width:0;width:100%;padding-left:0;transition:padding-left .22s cubic-bezier(.22,.8,.27,1)}
.cv-workspace>.view-host{max-width:1600px!important;margin:0 auto!important;padding:24px 30px 46px!important}
body.cv-sidebar-open .cv-workspace{padding-left:var(--cv-sidebar-w)}
@media(min-width:1200px){
  body.cv-sidebar-open .cv-masthead{padding-left:var(--cv-sidebar-w)}
  body.cv-sidebar-open .cv-masthead .cv-menu-trigger,body.cv-sidebar-open .cv-masthead .cv-brand{display:none}
  body.cv-sidebar-open .cv-masthead-inner{grid-template-columns:auto minmax(240px,1fr) auto}
  body.cv-sidebar-open .cv-page-context{padding-left:0;border-left:0}
}

/* ---------- Masthead ---------- */
.cv-masthead{position:sticky;top:0;z-index:100;transition:padding-left .22s cubic-bezier(.22,.8,.27,1);background:rgba(252,251,248,.978);backdrop-filter:blur(18px);border-bottom:1px solid rgba(215,204,186,.78);box-shadow:0 8px 28px rgba(11,31,51,.035)}
.cv-masthead:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent 0,rgba(198,161,91,.42) 17%,rgba(198,161,91,.11) 61%,transparent 100%);pointer-events:none}
.cv-masthead-inner{height:var(--cv-masthead-h);max-width:1880px;margin:0 auto;padding:0 28px;display:grid;grid-template-columns:42px auto auto minmax(240px,1fr) auto;align-items:center;gap:18px}

.cv-menu-trigger{display:flex;width:40px;height:40px;border:1px solid #D9CFBF;border-radius:12px;background:#fff;color:var(--navy);align-items:center;justify-content:center;padding:0;box-shadow:0 3px 10px rgba(11,31,51,.025);transition:.16s ease}
.cv-menu-trigger:hover,.cv-menu-trigger[aria-expanded="true"]{border-color:#C8A55F;background:#F8F3E9;color:#7B5D26}
.cv-menu-trigger svg,.cv-icon-action svg,.cv-signout svg,.cv-side-icon svg,.cv-mobile-icon svg{fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.cv-menu-trigger svg{width:19px;height:19px}

.cv-brand{border:0;background:transparent;padding:0;display:flex;align-items:center;gap:11px;text-align:left;color:var(--navy);min-width:156px}
.cv-brand img{width:38px;height:38px;object-fit:contain;filter:drop-shadow(0 3px 6px rgba(111,77,17,.12))}
.cv-brand span{display:block;line-height:1}
.cv-brand strong{display:block;font:600 13px/1 Georgia,serif;letter-spacing:.16em;color:var(--navy)}
.cv-brand small{display:block;margin-top:5px;font:700 7px/1 Arial,sans-serif;letter-spacing:.34em;color:#A57D38}

.cv-page-context{min-width:126px;padding-left:18px;border-left:1px solid #E4DDD2;line-height:1}
.cv-page-context span{display:block;font:800 7px/1 Arial,sans-serif;letter-spacing:.20em;color:#9B793B;text-transform:uppercase}
.cv-page-context strong{display:block;margin-top:7px;font:400 18px/1 Georgia,serif;color:var(--navy);white-space:nowrap}

/* ---------- Search ---------- */
.cv-search-wrap{display:flex;justify-content:flex-end;min-width:0}
.cv-global-search{width:min(410px,100%)!important;position:relative}
.cv-global-search input{height:40px!important;padding:0 42px 0 39px!important;border:1px solid #E0D7CA!important;border-radius:12px!important;background:#fff!important;font-size:11px!important;color:var(--navy)!important;box-shadow:0 4px 14px rgba(11,31,51,.025)}
.cv-global-search input::placeholder{color:#89949D}
.cv-global-search input:focus{border-color:#C7A25C!important;box-shadow:0 0 0 3px rgba(198,161,91,.10)!important}
.cv-search-icon{position:absolute;left:13px;top:11px;width:17px;height:17px;fill:none;stroke:#94784A;stroke-width:1.6;z-index:2}
.cv-global-search kbd{top:10px!important;right:10px!important;background:#F8F5EE!important;border-color:#E3DACD!important;color:#9A8662!important}
.cv-global-search .search-results{top:calc(100% + 10px)!important;border-radius:14px!important;box-shadow:0 24px 60px rgba(11,31,51,.17)!important}

/* ---------- Utilities ---------- */
.cv-mobile-search-toggle{display:none!important}
.cv-utility-bar{display:flex;align-items:center;justify-content:flex-end;gap:7px;min-width:max-content}
.cv-icon-action{position:relative;width:40px;height:40px;display:grid;place-items:center;border:1px solid #E2D9CC;background:#fff;color:#53616D;border-radius:12px;padding:0;transition:background .15s,border-color .15s,color .15s,transform .15s}
.cv-icon-action:hover{background:#F7F2E8;border-color:#D8C7A8;color:var(--navy);transform:translateY(-1px)}
.cv-icon-action svg{width:18px;height:18px}
.cv-icon-action .nav-badge{position:absolute;right:-5px;top:-5px;margin:0;min-width:18px;height:18px;background:#A74848;color:#fff;border:2px solid #FCFBF8;font-size:8px;padding:0 4px}
.cv-icon-action #mobileNotificationBadge{display:none!important}
.cv-create-wrap{position:relative}
.cv-create-button{height:40px;border:1px solid #B99148;border-radius:12px;background:linear-gradient(180deg,#D9B667,#C69C4E);color:#14283A;padding:0 16px;display:flex;align-items:center;gap:7px;font:800 10px/1 Arial,sans-serif;letter-spacing:.025em;box-shadow:0 7px 17px rgba(121,89,33,.12)}
.cv-create-button:hover{filter:brightness(1.025);transform:translateY(-1px)}
.cv-create-button span{font-size:16px;font-weight:400;line-height:1}
.cv-create-wrap .global-create-menu{right:0!important;top:calc(100% + 10px)!important}
.cv-recent-wrap .recent-objects-menu{top:calc(100% + 10px)!important;right:0!important}
.cv-user-chip{height:40px;display:grid;grid-template-columns:30px minmax(76px,auto) 28px;align-items:center;gap:8px;margin-left:3px;padding:0 6px 0 5px;border:1px solid #E2D9CC;border-radius:12px;background:#fff}
.cv-user-chip .avatar{width:28px;height:28px;border-radius:9px;font-size:10px;background:#102B43;color:#E5C57D}
.cv-user-chip .user-meta{min-width:0}
.cv-user-chip .user-meta strong{font-size:9.5px;color:var(--navy);max-width:96px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cv-user-chip .user-meta span{font-size:7.5px;color:#87929C;margin-top:2px;letter-spacing:.04em}
.cv-signout{width:28px;height:28px;border:0;border-left:1px solid #EEE7DD;background:transparent;color:#87939D;display:grid;place-items:center;padding-left:6px}
.cv-signout:hover{color:#A44848}
.cv-signout svg{width:15px;height:15px}
.cv-masthead .global-create-menu,.cv-masthead .recent-objects-menu{z-index:145}

/* ---------- Navigation sidebar ---------- */
.cv-sidebar-panel{position:fixed;top:0;left:0;bottom:0;width:var(--cv-sidebar-w);z-index:140;display:flex;flex-direction:column;overflow:hidden;background:
  radial-gradient(circle at 12% -8%,rgba(198,161,91,.13),transparent 28%),
  linear-gradient(180deg,#0B2236 0%,#091E31 100%);color:#ECF1F4;border-right:1px solid rgba(255,255,255,.055);box-shadow:18px 0 46px rgba(8,25,40,.08);transform:translateX(-100%);transition:transform .22s cubic-bezier(.22,.8,.27,1)}
.cv-sidebar-panel.open{transform:translateX(0)}
.cv-side-head{height:var(--cv-side-head-h);flex:0 0 var(--cv-side-head-h);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 14px 0 17px;border-bottom:1px solid rgba(255,255,255,.075);background:linear-gradient(180deg,rgba(5,20,32,.24),rgba(5,20,32,.08));box-shadow:0 1px 0 rgba(198,161,91,.05)}
.cv-side-brand{min-width:0;border:0;background:transparent;color:#F4E6C4;display:flex;align-items:center;gap:11px;padding:0;text-align:left}
.cv-side-brand img{width:37px;height:37px;object-fit:contain;filter:drop-shadow(0 3px 8px rgba(0,0,0,.16))}
.cv-side-brand span,.cv-side-brand strong,.cv-side-brand small{display:block}
.cv-side-brand strong{font:600 12px/1 Georgia,serif;letter-spacing:.17em;color:#F5E8C7}
.cv-side-brand small{margin-top:5px;font:800 6.5px/1 Arial,sans-serif;letter-spacing:.31em;color:#A98B50}
.cv-side-close{width:34px;height:34px;flex:0 0 34px;border:1px solid rgba(226,195,128,.18);border-radius:10px;background:rgba(255,255,255,.025);color:#B99A5A;display:grid;place-items:center;padding:0;transition:.15s ease}
.cv-side-close:hover{background:rgba(198,161,91,.11);border-color:rgba(226,195,128,.32);color:#E6C77E}
.cv-side-close svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.cv-side-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:18px 14px 22px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.13) transparent}
.cv-side-scroll::-webkit-scrollbar{width:5px}.cv-side-scroll::-webkit-scrollbar-thumb{background:rgba(255,255,255,.13);border-radius:99px}
.cv-side-home,.cv-side-item{width:100%;border:0;background:transparent;color:#CAD5DC;display:flex;align-items:center;text-align:left;box-shadow:none;transition:background .14s,color .14s,border-color .14s}
.cv-side-home{min-height:58px;padding:8px 11px;border:1px solid rgba(255,255,255,.06);border-radius:14px;margin-bottom:17px;gap:12px;background:rgba(255,255,255,.025)}
.cv-side-home:hover{background:rgba(255,255,255,.055);border-color:rgba(198,161,91,.20);color:#fff}
.cv-side-home.active{background:linear-gradient(90deg,rgba(198,161,91,.16),rgba(198,161,91,.055));border-color:rgba(198,161,91,.28);color:#F3DBA1;box-shadow:inset 2px 0 #D5B062}
.cv-side-copy{display:block;min-width:0}.cv-side-copy strong{display:block;font:600 13px/1 Georgia,serif;letter-spacing:.01em}.cv-side-copy small{display:block;margin-top:5px;font:600 8px/1 Arial,sans-serif;color:#7F95A4;letter-spacing:.035em}
.cv-side-home.active .cv-side-copy small{color:#AEB9B9}
.cv-side-icon{width:31px;height:31px;flex:0 0 31px;border:1px solid rgba(198,161,91,.18);border-radius:9px;display:grid;place-items:center;color:#C5A35E;background:rgba(255,255,255,.018)}
.cv-side-icon svg{width:16px;height:16px}
.cv-nav-group{display:block;margin:0 0 15px!important}
.cv-nav-group.hidden{display:none!important}
.cv-side-section{display:flex;align-items:center;gap:9px;padding:5px 10px 6px;color:#748B9A;font:800 7px/1 Arial,sans-serif;letter-spacing:.21em;text-transform:uppercase}
.cv-side-section:after{content:"";height:1px;flex:1;background:rgba(255,255,255,.07)}
.cv-side-item{position:relative;min-height:41px;padding:5px 9px;border-radius:10px;gap:10px;font:700 10.5px/1 Arial,sans-serif;letter-spacing:.005em}
.cv-side-item .cv-side-icon{width:27px;height:27px;flex-basis:27px;border-color:transparent;background:transparent;color:#A8894C}
.cv-side-item .cv-side-icon svg{width:15px;height:15px}
.cv-side-item:hover{background:rgba(255,255,255,.05);color:#fff}
.cv-side-item.active{background:rgba(198,161,91,.115);color:#F6E3B4;box-shadow:inset 2px 0 #CDA85C}
.cv-side-item.active .cv-side-icon{color:#E1C274}
.cv-sidebar-panel .nav-badge{position:static;margin-left:auto;min-width:20px;height:18px;padding:0 6px;border:1px solid rgba(226,195,128,.24);border-radius:6px;background:rgba(198,161,91,.12);color:#E6C476;font:700 9px/16px Arial,sans-serif;letter-spacing:.01em;text-align:center;box-shadow:none}
.cv-sidebar-panel .cv-side-item.active .nav-badge{background:#D1AA5D;border-color:#D1AA5D;color:#10283B}
.cv-sidebar-panel .nav-badge.gold{background:rgba(198,161,91,.18);border-color:rgba(226,195,128,.32);color:#E9CA80}
.cv-sidebar-panel .cv-side-item.active .nav-badge.gold{background:#D1AA5D;border-color:#D1AA5D;color:#10283B}
.cv-side-foot{height:54px;flex:0 0 54px;padding:0 17px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(255,255,255,.075);background:rgba(5,20,32,.24)}
.cv-side-foot span{font:800 6.8px/1 Arial,sans-serif;letter-spacing:.17em;color:#6F8796}
.cv-side-foot button{border:0;background:transparent;color:#BC9C57;font:800 8px/1 Arial,sans-serif;letter-spacing:.035em;padding:7px 0}
.cv-side-foot button:hover{color:#E3C77F}

body.cv-nav-open{overflow:hidden}
.mobile-shade{z-index:125!important;background:rgba(7,20,32,.42)!important;backdrop-filter:blur(3px)}

/* ---------- Mobile dock ---------- */
.cv-mobile-dock{display:none!important}

/* ---------- Responsive ---------- */
@media(max-width:1199px){
  :root{--cv-masthead-h:68px;--cv-side-head-h:68px}
  body.cv-sidebar-open .cv-workspace{padding-left:0}
  .cv-masthead-inner{height:var(--cv-masthead-h);grid-template-columns:40px auto auto minmax(180px,1fr) auto;gap:13px;padding-inline:16px}
  .cv-brand{min-width:144px}.cv-brand img{width:34px;height:34px}
  .cv-page-context{min-width:108px;padding-left:14px}
  .cv-page-context strong{font-size:16px}
  .cv-sidebar-panel{top:0;width:min(310px,88vw);z-index:140;box-shadow:24px 0 60px rgba(4,18,30,.24)}
}

@media(max-width:1000px){
  .cv-masthead-inner{grid-template-columns:40px auto auto minmax(160px,1fr) auto;gap:10px;padding-inline:13px}
  .cv-page-context{display:none}
  .cv-search-wrap{min-width:0}.cv-global-search{width:100%!important}
  .cv-user-chip .user-meta,.cv-signout,.cv-refresh,.cv-recent-wrap{display:none!important}
  .cv-user-chip{grid-template-columns:28px;height:40px;padding:0 5px;margin-left:0}
  .cv-utility-bar{gap:6px}
}

@media(max-width:700px){
  :root{--cv-masthead-h:60px;--cv-side-head-h:60px}
  .cv-masthead-inner{height:var(--cv-masthead-h);grid-template-columns:38px auto 1fr auto;gap:8px;padding-inline:10px}
  .cv-menu-trigger{width:38px;height:38px;border-radius:11px}
  .cv-brand{min-width:0;gap:0}.cv-brand img{width:34px;height:34px}.cv-brand span{display:none}
  .cv-search-wrap{display:none}
  .cv-utility-bar{grid-column:4;gap:5px}
  .cv-mobile-search-toggle{display:grid!important}
  .cv-masthead.search-open .cv-brand{display:none}
  .cv-masthead.search-open .cv-search-wrap{display:flex;grid-column:2/4;min-width:0}
  .cv-masthead.search-open .cv-global-search{width:100%!important}
  .cv-masthead.search-open .cv-global-search input{height:36px!important}
  .cv-masthead.search-open .cv-search-icon{top:9px}
  .cv-masthead.search-open .cv-global-search kbd{display:none!important}
  .cv-masthead.search-open .cv-utility-bar>:not(.cv-mobile-search-toggle){display:none!important}
  .cv-icon-action{width:36px;height:36px;border-radius:11px}
  .cv-create-button{width:36px;height:36px;padding:0;justify-content:center;border-radius:11px;font-size:0}
  .cv-create-button span{font-size:18px}
  .cv-user-chip,.cv-recent-wrap,.cv-refresh{display:none!important}
  .cv-workspace>.view-host{padding:12px 11px 88px!important}
  .cv-sidebar-panel{width:min(326px,92vw);top:0}
  .cv-side-scroll{padding:14px 12px 20px}

  .cv-mobile-dock{position:fixed!important;left:10px!important;right:10px!important;bottom:8px!important;height:62px!important;z-index:92!important;background:rgba(252,251,248,.97)!important;border:1px solid #DDD4C6!important;border-radius:18px!important;box-shadow:0 18px 45px rgba(11,31,51,.18)!important;display:grid!important;grid-template-columns:repeat(5,1fr)!important;padding:5px!important;gap:2px!important;overflow:visible!important}
  .cv-mobile-dock .cv-mobile-nav-item{position:relative;min-width:0!important;border:0!important;background:transparent!important;color:#77838E!important;border-radius:13px!important;padding:5px 2px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;font-size:8px!important;font-weight:800!important}
  .cv-mobile-dock .cv-mobile-nav-item.active{background:#F2ECE1!important;color:var(--navy)!important}
  .cv-mobile-icon{display:grid;place-items:center;color:#9E8046}.cv-mobile-icon svg{width:18px;height:18px}
  .cv-mobile-dock .mbn-badge{position:absolute;top:2px;right:calc(50% - 21px);min-width:16px;height:16px;font-size:7px;border:2px solid #FCFBF8}
  .cv-mobile-more{color:#6A7782!important}
  .cv-masthead .global-create-menu{position:fixed!important;left:10px!important;right:10px!important;top:66px!important;width:auto!important;max-height:calc(100dvh - 150px)!important}
}

@media(max-width:420px){.cv-masthead-inner{padding-inline:8px;gap:6px}.cv-sidebar-panel{width:92vw}.cv-side-head{padding-inline:13px}.cv-side-brand img{width:34px;height:34px}}

/* Legacy Calculation focus mode may still toggle body.nav-collapsed. It must never mutate this shell. */
body.nav-collapsed .cv-sidebar-panel,body.nav-collapsed .cv-masthead{font-size:inherit}
body.nav-collapsed .cv-sidebar-panel .nav-badge{position:static!important;top:auto!important;right:auto!important;margin-left:auto!important;min-width:20px!important;height:18px!important;padding:0 6px!important;font-size:9px!important;line-height:16px!important}
body.nav-collapsed .cv-user-chip .user-meta{display:block!important}
body.nav-collapsed .cv-user-chip .cv-signout{display:grid!important}
