/* DMS 1.10: scroll restoration and consistent navigation. No changes to stored records. */
html{height:auto!important;min-height:100%;overflow-x:clip!important;overflow-y:auto!important;scrollbar-width:auto!important;overscroll-behavior-y:auto!important;scroll-behavior:auto!important}
body{height:auto!important;min-height:100%;overflow-x:clip!important;overflow-y:visible!important;touch-action:auto!important;overscroll-behavior-y:auto!important;scrollbar-width:auto!important}
.app-shell{height:auto!important;min-height:100dvh!important;overflow:visible!important;overflow-x:visible!important;overflow-y:visible!important;max-width:860px!important;touch-action:auto!important;contain:none!important}
#main{overflow:visible!important;overflow-x:visible!important;overflow-y:visible!important;min-width:0!important;max-width:100%!important;touch-action:auto!important;min-height:50vh}
#main>section,#main>.page,#main>.v17-page,#main>.v19-page,#main>.v18-page{max-width:100%!important;min-width:0!important}
.v17-track-scroll,.v16-table-scroll,.v14-table-wrap,.v18-mini-scroll,.v19-rule-tabs,.v15-filters,.ux-filter-row{overflow-x:auto!important;overscroll-behavior-x:contain;max-width:100%;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}
@media(max-width:700px){html,body{scrollbar-width:none!important}html::-webkit-scrollbar,body::-webkit-scrollbar{display:none!important}}
/* A single back arrow shape for every content page, without the legacy icon boxes. */
:is(.v17-homeback,.v19-back,.v18-back,.v15-back,.v14-back,.ux-back,.v20-back){width:40px!important;height:42px!important;min-width:40px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;padding:5px!important;color:#d3e9f4!important;font-size:0!important;line-height:0!important}
:is(.v17-homeback,.v19-back,.v18-back,.v15-back,.v14-back,.ux-back,.v20-back) svg{width:27px!important;height:27px!important;display:block;stroke:#d3e9f4;fill:none}
.bottom-nav{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;z-index:90!important}
.bottom-nav button{display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;gap:5px!important;min-width:0!important;min-height:49px!important;padding:3px 2px!important}
.bottom-nav button span{display:grid!important;place-items:center!important;width:30px!important;height:26px!important;font-size:0!important;line-height:0!important}
.bottom-nav button span svg{display:block;width:25px;height:25px;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none}
.bottom-nav button small{font-size:11px!important;font-weight:650!important;letter-spacing:0!important}
.bottom-nav button.active{color:#62deec!important}
/* Home has useful status instead of an empty decorative box. */
.hero{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:10px!important;min-height:128px!important;overflow:visible!important}
.hero>div:first-child{min-width:130px;flex:1 1 150px}
.hero>img{width:65px!important;height:auto!important;min-height:60px;flex:none;object-fit:contain!important}
.hero h1{font-size:24px!important;margin:0!important}
.v20-home-metrics{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap;width:100%;margin-top:6px}
.v20-metric{flex:1 1 115px;min-width:110px;border:1px solid #2f5263;border-radius:12px;padding:11px 12px;background:#102635;display:flex;flex-direction:column;gap:4px}
.v20-metric strong{font-size:22px;line-height:1;color:#e9f9fc;font-variant-numeric:tabular-nums}
.v20-metric small{font-size:11px;color:#9fbed0}
.v20-data-hint{border:1px solid #39637a;color:#dcf7ff;background:#142c3b;border-radius:12px;margin:14px 0;padding:13px;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.v20-data-hint>span{font-size:13px;line-height:1.45;flex:1;min-width:120px}
.v20-data-hint button{border:1px solid #3e91a9;background:#15536b;color:#fff;border-radius:9px;padding:10px 13px;font-weight:700;white-space:nowrap}
.v20-section-state{font-size:12px;color:#9dc8d8;margin:5px 0 10px}
.v20-spy-empty{border:1px solid #345c74;border-radius:15px;background:#132839;padding:16px;margin:12px 0;color:#d5f5ff}
.v20-spy-empty h3{font-size:16px;margin:0 0 7px}.v20-spy-empty p{font-size:13px;line-height:1.5;margin:0 0 14px;color:#bfd1db}
.v20-spy-empty button{border:1px solid #447f94;border-radius:11px;color:#fff;background:#185b70;padding:11px 14px;font-weight:750}
.v17-spy,.v17-spy-directory,.v17-spy-groups,.v17-spy-memberlist,.v17-tracker,.v19-directory{min-width:0;max-width:100%}
/* An app can be blank while a modal or stale loading overlay remains over it: avoid transparent blockers. */
#dmsLoading.finished{visibility:hidden!important;pointer-events:none!important}
/* Keep the Home information banner compact at narrow widths. */
.hero{display:grid!important;grid-template-columns:minmax(0,1fr) 82px!important;grid-template-rows:auto auto!important;align-items:center!important;justify-content:initial!important;gap:12px!important;min-height:0!important;padding:19px!important}
.hero>div:first-child{grid-column:1;grid-row:1;min-width:0!important;align-self:center!important}
.hero>img{grid-column:2;grid-row:1;width:76px!important;min-height:0!important;height:auto!important;max-height:80px!important;align-self:center!important;justify-self:center!important}
.hero>.v20-home-metrics{grid-column:1/-1;grid-row:2;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%;gap:9px;margin-top:0}
.v20-home-metrics .v20-metric,.v20-home-metrics .v19-default-count{margin:0!important;min-width:0!important;min-height:69px!important;padding:11px!important}
.v20-home-metrics .v20-metric strong,.v20-home-metrics .v19-default-count strong{font-size:22px!important}
@media(min-width:650px){.hero>.v20-home-metrics{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
