/* Sprint A shell-only enhancements. No changes to operational forms or data APIs. */
:root{--shell-elevation:0 3px 12px rgba(24,28,35,.055),0 1px 3px rgba(24,28,35,.035);--shell-radius:14px;--shell-focus:#c9a227}
#sidebar{overflow-y:auto;scrollbar-width:thin}
#sidebar #nav{min-height:0;overflow-y:auto;flex:1;padding:12px 0 16px;scrollbar-width:thin}
#sidebar .logout{margin-top:8px;flex-shrink:0}
#sidebar .sidebar-support{flex-shrink:0}
#nav .shell-nav-group{margin:2px 0 9px}
#nav .shell-nav-heading{width:100%;display:flex;align-items:center;justify-content:space-between;background:transparent;color:#b9bbc0;border:0;border-radius:9px;font-size:11px;font-weight:750;letter-spacing:.07em;text-transform:uppercase;padding:10px 12px;cursor:pointer}
#nav .shell-nav-heading::after{content:"⌄";font-size:15px;transition:transform .16s ease}
#nav .shell-nav-heading[aria-expanded="false"]::after{transform:rotate(-90deg)}
#nav .shell-nav-heading:hover{background:#292929;color:white}
#nav .shell-nav-items[hidden]{display:none}
#nav .shell-nav-items{display:grid;gap:3px;padding-left:6px}
#nav .shell-nav-link{width:100%;text-align:left}
#nav .shell-nav-link.active{background:#39352a;color:#fff;box-shadow:inset 3px 0 var(--gold)}
.topbar{box-shadow:0 1px 5px rgba(20,20,20,.035)}
.content>.card,.content .card,.content .kpi,.content .section-card{border-radius:var(--shell-radius);box-shadow:var(--shell-elevation)}
#nav button:focus-visible,.topbar button:focus-visible,.content button:focus-visible,.content a:focus-visible{outline:3px solid var(--shell-focus);outline-offset:2px}
#nav button,.content button{transition:background-color .16s ease,color .16s ease,box-shadow .16s ease}
@media(hover:hover){.content .card:hover,.content .section-card:hover{box-shadow:0 7px 22px rgba(20,24,30,.075),0 2px 5px rgba(20,24,30,.04)}}
@media(max-width:700px){#sidebar{max-height:100dvh}.content{min-width:0}.content .grid,.content .section-grid{min-width:0}}
@media(prefers-reduced-motion:reduce){#nav button,.content button,#nav .shell-nav-heading::after{transition:none!important}}
