/* DWELLIVRA icon-first workspace navigation.
   The rail is collapsed by default on desktop, for live accounts and the isolated demo.
   Expanding shows a temporary panel OVER the workspace without reducing its usable width. */
.workspace .dw-rail-top {display:block}
.workspace .dw-rail-toggle,.workspace .dw-rail-divider {display:none}
@media(min-width:901px){
  .workspace .sidebar.dw-rail {
    position:sticky;
    top:0;
    box-sizing:border-box;
    display:flex;
    flex:0 0 82px!important;
    width:82px!important;
    min-width:82px!important;
    max-width:none;
    height:100vh;
    margin-right:0;
    padding:0 11px 20px;
    z-index:75;
    overflow-x:hidden;
    overflow-y:auto;
    border-right:1px solid rgba(173,211,208,.12);
    box-shadow:none;
    scrollbar-width:none;
    scrollbar-gutter:auto;
    transition:width .20s ease,flex-basis .20s ease,margin-right .20s ease,box-shadow .20s ease;
  }
  .workspace .sidebar.dw-rail::-webkit-scrollbar {width:0;height:0}
  .workspace .sidebar.dw-rail.dw-rail-expanded {
    flex-basis:264px!important;
    width:264px!important;
    min-width:264px!important;
    margin-right:-182px;
    padding:0 15px 24px;
    box-shadow:12px 0 28px rgba(4,21,39,.16);
  }
  .workspace .workspace-body {
    flex:1 1 0%;
    width:auto!important;
    min-width:0;
    margin-left:0!important;
  }
  .workspace .sidebar.dw-rail .dw-rail-top {
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:5px;
    box-sizing:border-box;
    flex:0 0 auto;
    width:100%;
    min-height:116px;
    padding:18px 0 12px;
    margin-bottom:12px;
    border-bottom:1px solid rgba(189,221,221,.12);
  }
  .workspace .sidebar.dw-rail.dw-rail-expanded .dw-rail-top {
    flex-direction:row;
    justify-content:space-between;
    min-height:106px;
    padding:14px 2px 12px;
    gap:12px;
  }
  .workspace .sidebar.dw-rail .dw-rail-top .sidebar-brand {
    box-sizing:border-box;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    width:45px;
    min-width:0;
    min-height:0;
    height:43px;
    border:0;
    margin:0;
    padding:0;
    overflow:hidden;
  }
  .workspace .sidebar.dw-rail.dw-rail-expanded .dw-rail-top .sidebar-brand {
    flex:1 1 auto;
    width:auto;
    justify-content:flex-start;
    height:47px;
    overflow:visible;
  }
  .workspace .sidebar.dw-rail .dw-rail-top .dw-brand {
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    width:44px;
    min-width:0;
    gap:0;
    overflow:hidden;
  }
  .workspace .sidebar.dw-rail .dw-rail-top .dw-brand img {
    display:block;
    box-sizing:border-box;
    width:38px!important;
    height:38px!important;
    max-width:38px!important;
    flex:0 0 38px;
    object-fit:contain;
  }
  .workspace .sidebar.dw-rail .dw-rail-top .dw-brand-type {display:none!important}
  .workspace .sidebar.dw-rail.dw-rail-expanded .dw-rail-top .dw-brand {
    width:auto;
    max-width:100%;
    justify-content:flex-start;
    gap:8px;
    overflow:visible;
  }
  .workspace .sidebar.dw-rail.dw-rail-expanded .dw-rail-top .dw-brand-type {
    display:inline-flex!important;
    overflow:visible;
    white-space:nowrap;
  }
  .workspace .sidebar.dw-rail .dw-rail-toggle {
    display:grid;
    flex:0 0 37px;
    place-items:center;
    box-sizing:border-box;
    height:36px;
    width:38px;
    margin:0;
    padding:0;
    border-radius:9px;
    border:1px solid rgba(164,201,206,.16);
    background:rgba(215,236,237,.07);
    color:#b9d5d3;
    cursor:pointer;
    transition:background .2s ease,color .2s ease;
  }
  .workspace .sidebar.dw-rail .dw-rail-toggle:hover,
  .workspace .sidebar.dw-rail .dw-rail-toggle:focus-visible {
    border-color:rgba(150,215,200,.5);
    background:rgba(74,153,143,.17);
    color:#e1f9f3;
  }
  .workspace .sidebar.dw-rail .ws-switch {
    display:flex;
    justify-content:center;
    align-items:center;
    box-sizing:border-box;
    flex:0 0 auto;
    width:52px;
    min-width:0;
    max-width:100%;
    min-height:55px;
    height:55px;
    padding:7px;
    margin:3px auto 17px;
    gap:0;
    border-radius:11px;
    overflow:hidden;
  }
  .workspace .sidebar.dw-rail.dw-rail-expanded .ws-switch {
    width:100%;
    min-height:75px;
    height:auto;
    margin:10px 0 20px;
    padding:13px 12px;
    gap:10px;
    justify-content:flex-start;
  }
  .workspace .sidebar.dw-rail .ws-switch .avatar {flex:0 0 35px;width:35px;height:35px}
  .workspace .sidebar.dw-rail .dw-rail-copy {display:none!important}
  .workspace .sidebar.dw-rail.dw-rail-expanded .dw-rail-copy {display:initial!important}
  .workspace .sidebar.dw-rail.dw-rail-expanded .ws-switch .dw-rail-copy {
    display:block!important;
    overflow:hidden;
    white-space:normal;
    min-width:0;
  }
  .workspace .sidebar.dw-rail .nav-group-label {
    display:flex;
    justify-content:center;
    align-items:center;
    box-sizing:border-box;
    width:100%;
    min-height:25px;
    padding:6px 6px 1px;
    margin:11px 0 4px;
  }
  .workspace .sidebar.dw-rail .dw-rail-divider {
    display:block;
    flex:0 0 26px;
    height:1px;
    background:rgba(156,194,200,.24);
    border-radius:2px;
  }
  .workspace .sidebar.dw-rail.dw-rail-expanded .dw-rail-divider {display:none}
  .workspace .sidebar.dw-rail.dw-rail-expanded .nav-group-label {
    min-height:33px;
    margin:10px 0 4px;
    padding:10px 14px 5px;
    justify-content:flex-start;
  }
  .workspace .sidebar.dw-rail .sidebar-link,
  .workspace .sidebar.dw-rail .sidebar-bottom .sidebar-link {
    box-sizing:border-box;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    width:52px;
    min-width:0;
    min-height:48px;
    margin:3px auto;
    padding:11px 0;
    border-radius:11px;
    gap:0;
  }
  .workspace .sidebar.dw-rail .sidebar-link svg {
    display:block;
    flex:0 0 20px;
    width:20px;
    height:20px;
    margin:0;
  }
  .workspace .sidebar.dw-rail.dw-rail-expanded .sidebar-link,
  .workspace .sidebar.dw-rail.dw-rail-expanded .sidebar-bottom .sidebar-link {
    justify-content:flex-start;
    width:100%;
    padding:12px 14px;
    gap:13px;
    margin:3px 0;
    text-align:left;
    white-space:normal;
  }
  .workspace .sidebar.dw-rail.dw-rail-expanded .sidebar-link>span {
    overflow-wrap:break-word;
    white-space:normal;
    min-width:0;
  }
  .workspace .sidebar.dw-rail .sidebar-bottom {
    box-sizing:border-box;
    width:100%;
    margin-top:auto;
    padding:15px 0 5px;
    border-top:1px solid rgba(189,221,221,.12);
  }
  .workspace .sidebar.dw-rail .sidebar-bottom .sidebar-link>span {display:none}
  .workspace .sidebar.dw-rail.dw-rail-expanded .sidebar-bottom .sidebar-link>span {
    display:inline!important;
  }
  .workspace .sidebar.dw-rail .sidebar-link:focus-visible,
  .workspace .sidebar.dw-rail .ws-switch:focus-visible,
  .workspace .sidebar.dw-rail .sidebar-brand:focus-visible {
    outline:2px solid #7cd0b9;
    outline-offset:2px;
  }
  /* Let workspaces use the reclaimed width instead of reserving the old 264px column. */
  .workspace .workspace-content {max-width:1840px}
}
@media(max-width:900px){
  /* The existing hamburger opens the full-width touch-friendly menu on small screens. */
  .workspace .sidebar.dw-rail {
    width:264px!important;
    min-width:0;
    max-width:min(88vw,300px);
    margin-right:0!important;
    transform:translateX(-105%);
    z-index:80;
  }
  .workspace .sidebar.dw-rail.open {transform:translateX(0)}
  .workspace .sidebar.dw-rail .dw-rail-top .sidebar-brand {display:flex}
  .workspace .sidebar.dw-rail .dw-rail-copy {display:initial}
  .workspace .sidebar.dw-rail .dw-rail-divider,
  .workspace .sidebar.dw-rail .dw-rail-toggle {display:none}
  .workspace .workspace-body {margin-left:0!important;width:100%}
}
@media(prefers-reduced-motion:reduce){
  .workspace .sidebar.dw-rail,
  .workspace .sidebar.dw-rail .dw-rail-toggle {transition:none}
}

/* Keep the brand and organisation selector visible while the navigation itself scrolls.
   Previous design hid the scrollbar on the entire rail, making Finance and Settings hard to discover. */
.workspace .sidebar.dw-rail {
  overflow:hidden!important;
  overscroll-behavior:contain;
}
.workspace .sidebar.dw-rail .dw-rail-menu {
  box-sizing:border-box;
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  min-height:0;
  width:100%;
  max-width:100%;
  padding:2px 1px 8px;
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior-y:contain;
  scrollbar-width:thin;
  scrollbar-color:#5b878c #172f43;
}
.workspace .sidebar.dw-rail .dw-rail-menu:focus-visible {
  outline:2px solid #7bd1be;
  outline-offset:-2px;
  border-radius:8px;
}
.workspace .sidebar.dw-rail .dw-rail-menu::-webkit-scrollbar {
  width:6px;
}
.workspace .sidebar.dw-rail .dw-rail-menu::-webkit-scrollbar-track {
  background:#172f43;
  border-radius:6px;
}
.workspace .sidebar.dw-rail .dw-rail-menu::-webkit-scrollbar-thumb {
  background:#5b878c;
  border-radius:6px;
  border:1px solid #172f43;
}
.workspace .sidebar.dw-rail .dw-rail-menu::-webkit-scrollbar-thumb:hover {
  background:#85c4b4;
}
.workspace .sidebar.dw-rail .dw-rail-menu .sidebar-link {
  flex-shrink:0;
}
.workspace .sidebar.dw-rail .dw-rail-menu .nav-group-label {
  flex-shrink:0;
}
.workspace .sidebar.dw-rail .dw-rail-menu .sidebar-bottom {
  flex-shrink:0;
  margin-top:12px;
}
.workspace .sidebar.dw-rail .dw-rail-scroll-tools {
  display:flex;
  flex:0 0 43px;
  align-items:center;
  justify-content:space-evenly;
  gap:4px;
  min-width:0;
  min-height:43px;
  width:100%;
  padding:6px 0 4px;
  border-top:1px solid rgba(170,213,206,.19);
  background:rgba(12,38,56,.66);
}
.workspace .sidebar.dw-rail .dw-rail-scroll-button {
  box-sizing:border-box;
  display:grid;
  place-items:center;
  flex:0 0 32px;
  width:32px;
  height:31px;
  padding:0;
  border:1px solid rgba(142,197,184,.2);
  border-radius:9px;
  background:rgba(139,193,182,.08);
  color:#9dcabd;
  cursor:pointer;
}
.workspace .sidebar.dw-rail .dw-rail-scroll-button svg {
  width:16px;
  height:16px;
}
.workspace .sidebar.dw-rail .dw-rail-scroll-up svg {transform:rotate(-90deg)}
.workspace .sidebar.dw-rail .dw-rail-scroll-down svg {transform:rotate(90deg)}
.workspace .sidebar.dw-rail .dw-rail-scroll-button:not(:disabled):hover,
.workspace .sidebar.dw-rail .dw-rail-scroll-button:not(:disabled):focus-visible {
  background:rgba(126,201,179,.21);
  color:#e9fff4;
  border-color:#67b8a2;
}
.workspace .sidebar.dw-rail .dw-rail-scroll-button:disabled {
  opacity:.23;
  cursor:default;
  background:transparent;
}
.workspace .sidebar.dw-rail .dw-rail-scroll-button:focus-visible {
  outline:2px solid #80d6c3;
  outline-offset:2px;
}
.workspace .sidebar.dw-rail .dw-rail-scroll-label {
  color:#8eb7b5;
  font-size:9px;
  font-weight:750;
  letter-spacing:1px;
  white-space:nowrap;
}
@media(min-width:901px) {
  .workspace .sidebar.dw-rail .dw-rail-menu {
    scrollbar-width:thin;
    scrollbar-color:#396c73 #172c3f;
  }
  .workspace .sidebar.dw-rail .dw-rail-scroll-tools {
    justify-content:center;
  }
  .workspace .sidebar.dw-rail .dw-rail-scroll-button {
    flex-basis:23px;
    width:23px;
    height:29px;
  }
  .workspace .sidebar.dw-rail.dw-rail-expanded .dw-rail-scroll-tools {
    justify-content:space-between;
    gap:10px;
    padding:6px 10px 4px;
  }
  .workspace .sidebar.dw-rail.dw-rail-expanded .dw-rail-scroll-button {
    flex-basis:35px;
    width:35px;
    height:31px;
  }
  .workspace .sidebar.dw-rail.dw-rail-expanded .dw-rail-menu {
    scrollbar-color:#7db0a6 #183449;
  }
  .workspace .sidebar.dw-rail.dw-rail-expanded .dw-rail-copy {
    animation:dw-rail-label-enter .18s ease both;
  }
  @keyframes dw-rail-label-enter {
    from {opacity:0;transform:translateX(-5px)}
    to {opacity:1;transform:translateX(0)}
  }
}
@media(max-width:900px) {
  .workspace .sidebar.dw-rail .dw-rail-scroll-tools {
    padding:6px 11px;
    justify-content:space-between;
  }
  .workspace .sidebar.dw-rail .dw-rail-scroll-label {
    display:inline!important;
  }
  .workspace .sidebar.dw-rail .dw-rail-menu {
    scrollbar-width:thin;
  }
}
@media(prefers-reduced-motion:reduce) {
  .workspace .sidebar.dw-rail.dw-rail-expanded .dw-rail-copy {
    animation:none;
  }
  .workspace .sidebar.dw-rail .dw-rail-menu {
    scroll-behavior:auto;
  }
}
