/* All new layout rules are mobile/tablet-only. Desktop stays unchanged. */
.mobile-toolbar,.mobile-home{display:none}.mobile-table-scroll{display:contents}
.mobile-navigation{border:0;border-radius:20px;padding:20px;width:min(520px,calc(100% - 24px));max-height:calc(100dvh - 32px);overflow:auto;background:#f4f7f6;color:#16222b;box-shadow:0 20px 70px #102b2a55;overscroll-behavior:contain}
.mobile-navigation::backdrop{background:#102b2aaa}.mobile-navigation header{display:flex;align-items:center;justify-content:space-between;gap:16px;position:sticky;top:-20px;background:#f4f7f6;padding:16px 0;z-index:1}.mobile-navigation header small{font-size:11px;letter-spacing:1.5px;color:#087f73;font-weight:800}.mobile-navigation h2{margin:2px 0;font-size:24px}.mobile-navigation header button{font-size:24px;min-width:44px;min-height:44px}.mobile-home-link{display:block;color:#087f73;padding:12px 0;font-weight:700}.mobile-menu-groups{display:grid;gap:10px}.mobile-menu-groups details{border:1px solid #dfe7e9;background:white;border-radius:12px;overflow:hidden}.mobile-menu-groups summary{padding:16px;cursor:pointer;font-weight:750;color:#102b2a}.mobile-menu-links{display:grid;padding:0 8px 8px;gap:4px}.mobile-menu-links a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:48px;padding:10px 12px;color:#16222b;text-decoration:none;border-radius:8px;overflow-wrap:anywhere}.mobile-menu-links a:hover,.mobile-menu-links .nav-active{background:#e1f0ec;color:#05675e}.mobile-menu-links small{font-size:10px}.mobile-menu-groups [hidden]{display:none}
@media screen and (max-width:1024px){
 body.mobile-ready>aside{display:none}
 .mobile-ready .mobile-toolbar{display:flex;position:sticky;top:0;z-index:50;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;padding-top:max(10px,env(safe-area-inset-top));background:#102b2a;color:white;box-shadow:0 2px 10px #102b2a22}
 .mobile-toolbar a{color:white;text-decoration:none}.mobile-toolbar .mobile-brand{font-size:19px;font-weight:850;letter-spacing:-.5px}.mobile-brand span{color:#eab464}.mobile-toolbar button,.mobile-toolbar .mobile-back{background:#254744;color:white;border:1px solid #44645f;min-height:44px;padding:9px 12px;border-radius:10px;font-size:14px;white-space:nowrap}
 .mobile-ready main{margin-left:0;padding:20px 16px 40px;max-width:100%;min-width:0}
 .mobile-ready .ledgerly-global-back-wrap{display:none}
 .mobile-ready .mobile-home{display:block;margin:0 0 24px}.mobile-home .eyebrow{margin-bottom:6px}.mobile-home h1{font-size:27px;letter-spacing:-.8px}.mobile-home p{margin:8px 0 18px;color:#52636a;overflow-wrap:anywhere}
 .mobile-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mobile-tile{display:flex;flex-direction:column;align-items:flex-start;text-align:left;min-height:148px;padding:16px;border:1px solid #d8e5e1;border-radius:16px;background:white;color:#102b2a;box-shadow:0 4px 14px #102b2a06}.mobile-tile-icon{display:grid;place-items:center;width:34px;height:34px;background:#e5f2ed;color:#087f73;border-radius:10px;font-size:22px;margin-bottom:12px}.mobile-tile strong{font-size:17px}.mobile-tile small{color:#536b68;font-size:12px;font-weight:450;line-height:1.4;margin-top:4px}.mobile-tile:focus-visible{outline:3px solid #eab464;outline-offset:2px}
 .mobile-ready .dashboard-overview-header>div{display:none}.mobile-ready .dashboard-overview-header{margin-bottom:18px}.mobile-ready .dashboard-period{margin:12px 0 18px}.mobile-ready .mobile-home~.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-ready .metric strong{font-size:clamp(20px,5vw,28px);overflow-wrap:anywhere}.mobile-ready main h1{overflow-wrap:anywhere}.mobile-ready main .grid.two,.mobile-ready main .grid.three,.mobile-ready main .grid.four{grid-template-columns:minmax(0,1fr)}
 .mobile-ready main .card,.mobile-ready main .paper{padding:18px;min-width:0;max-width:100%}
 .mobile-ready main form,.mobile-ready main label,.mobile-ready main fieldset,.mobile-ready main .grid>*{min-width:0;max-width:100%}.mobile-ready main fieldset{margin:0;padding:12px;border:1px solid #ccd9da;border-radius:8px}
 .mobile-ready main input,.mobile-ready main select,.mobile-ready main textarea{font-size:16px;max-width:100%;min-width:0}.mobile-ready main input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.mobile-ready main select{min-height:44px}
 .mobile-ready main .top,.mobile-ready main .section-head,.mobile-ready main .row,.mobile-ready main .filter{flex-wrap:wrap;gap:12px}.mobile-ready main .top{align-items:flex-start}.mobile-ready main .filter label{flex:1 1 140px;min-width:0}.mobile-ready main button,.mobile-ready main .button{min-height:44px;white-space:normal;overflow-wrap:anywhere}.mobile-ready main img{max-width:100%}.mobile-ready main .row>div{min-width:0;overflow-wrap:anywhere}
 .mobile-ready .mobile-table-scroll{display:block;overflow-x:auto;max-width:100%;overscroll-behavior-x:contain;margin:12px 0}.mobile-table-scroll table{min-width:520px;margin-top:0}.mobile-ready .totals{max-width:100%}.mobile-ready .calendar-week{min-width:0;grid-template-columns:repeat(7,minmax(0,1fr))}.mobile-ready .calendar-day{padding:4px;font-size:12px;overflow-wrap:anywhere}
 .mobile-ready .advertising-strip{max-width:100%}
}
@media screen and (min-width:600px) and (max-width:1024px){.mobile-ready main{padding:24px 28px}.mobile-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.mobile-ready main .grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-ready main .grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{.mobile-toolbar,.mobile-home,.mobile-navigation{display:none!important}.mobile-table-scroll{display:contents}}
@media screen and (max-width:1024px){.mobile-ready main input[type=checkbox],.mobile-ready main input[type=radio]{flex:0 0 18px;width:18px;height:18px}.mobile-ready main .check{min-height:44px;align-items:center}}
@media screen and (max-width:380px){.mobile-toolbar .mobile-brand{font-size:16px;white-space:nowrap}.mobile-toolbar button,.mobile-toolbar .mobile-back{font-size:12px;padding:8px}.mobile-ready .mobile-toolbar{padding-inline:10px;gap:6px}}
