/* Laravel-style navigation with explicit ASP.NET delivery status. */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.app-shell{grid-template-columns:280px minmax(0,1fr)}
.sidebar{position:sticky;top:0;height:100dvh;box-sizing:border-box;padding:12px 12px 8px;gap:10px;overflow:hidden}
.sidebar .brand{flex-shrink:0;font-size:15px;gap:9px;min-height:46px;padding-bottom:10px;border-bottom:1px solid #ffffff18}.sidebar .brand small{font-size:8px;letter-spacing:1px;margin-top:3px}
.sidebar .brand>span:last-child{min-width:0;overflow-wrap:anywhere}.sidebar .brand-mark{flex-shrink:0;width:34px;height:36px;border-radius:10px;font-size:14px;box-shadow:0 3px 0 #0b1024}.sidebar .brand-mark img{width:100%;height:100%;object-fit:contain}
.sidebar .nav-caption{margin:0 8px;font-size:10px}.sidebar nav{overflow-y:auto;min-height:0;flex:1;display:flex;flex-direction:column;gap:4px;scrollbar-width:thin;scrollbar-color:#687498 transparent;padding:0 3px 4px;overscroll-behavior:contain;scroll-padding-block:4px}
.sidebar nav>a{min-height:40px;flex-shrink:0;font-size:12px;padding:7px 10px;gap:9px;border:1px solid #384568;background:linear-gradient(180deg,#2b3859,#1c2847);box-shadow:0 2px 0 #0b1228}
.sidebar nav>a.active{background:linear-gradient(180deg,#8875fa,#5841ce);border-color:#a294fc;box-shadow:0 3px 0 #36267e}
.sidebar nav .app-icon{width:18px;height:18px;flex-shrink:0}.sidebar nav .module-nav-label{font-size:12px;line-height:1.3;flex:1}
.sidebar nav .nav-stage,.nav-stage{font-size:9px;line-height:1.2;padding:3px 5px;border-radius:5px;font-weight:700;white-space:nowrap}
.sidebar nav .nav-stage.ready{color:#b1f1d8;background:#245449}.sidebar nav .nav-stage.partial{color:#ffe1a8;background:#644b2c}.sidebar nav .nav-stage.soon{color:#dbe2f5;background:#424e6b}
.nav-stage.soon{background:#e6eaf3;color:#4f5f7f}.sidebar-bottom{margin-top:0;font-size:11px;flex-shrink:0;border-top:1px solid #ffffff18;padding-top:8px}.sidebar-bottom small{font-size:9px;line-height:1.3;margin-top:6px;text-align:center}
.topbar{padding:14px 24px;gap:16px}.sidebar-toggle{padding:10px;min-width:40px;flex-shrink:0}.header-title{min-width:0}.page-content{padding:22px 26px}
.app-shell.nav-collapsed{grid-template-columns:minmax(0,1fr)}.nav-collapsed .sidebar{display:none}
.module-header-actions:empty{display:none}.module-header-actions{min-width:0;flex:1}
.topbar:has(.invoice-view-toolbar){flex-wrap:nowrap;justify-content:flex-start;gap:14px;padding:12px 20px}
.topbar:has(.invoice-view-toolbar) .header-actions{display:none}
.topbar:has(.invoice-view-toolbar) .header-title{flex:0 0 auto}
.topbar:has(.invoice-view-toolbar) .module-title{gap:10px}
.topbar:has(.invoice-view-toolbar) .module-title small{display:none}
.topbar:has(.invoice-view-toolbar) .module-title h1{font-size:20px;margin:0;white-space:nowrap}
.sidebar-session-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:stretch}
.sidebar-account{display:flex;align-items:center;justify-content:center;gap:7px;color:#e4e9f6;font-size:11px;margin:0;min-width:0;min-height:36px;border:1px solid #566382;border-radius:9px;background:#ffffff08;font-weight:650}
.sidebar-account span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sidebar-logout{margin:0}
.sidebar-logout button{width:100%;justify-content:center;gap:7px;min-height:36px;padding:6px 8px;font-size:11px;border:1px solid #566382;border-radius:9px;background:linear-gradient(#303d61,#1b2544);color:#fff;box-shadow:0 2px 0 #080e21}
.sidebar-session-actions .app-icon{width:16px;height:16px}
.sidebar-account:hover{background:#43396c;border-color:#a99bf2;color:#fff;text-decoration:none}
.sidebar nav>a:focus-visible,.sidebar .brand:focus-visible{outline:2px solid #baafff;outline-offset:-2px}
.sidebar-logout button:hover{background:#43396c;border-color:#a99bf2}
.sidebar-logout button:focus-visible,.sidebar-account:focus-visible{outline:3px solid #baafff;outline-offset:3px}
@media(max-width:720px){.topbar:has(.invoice-view-toolbar){flex-wrap:wrap;gap:10px;padding:10px 12px}.topbar:has(.invoice-view-toolbar) .module-header-actions{flex-basis:100%}.topbar:has(.invoice-view-toolbar) .header-title{flex:1}.app-shell.nav-open .sidebar{z-index:47}}
.module-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.module-progress-link{font-size:13px;font-weight:700;color:#5846bd}
.module-state{display:inline-flex;align-items:center;gap:6px;border-radius:7px;padding:6px 9px;font-size:11px;font-weight:750;white-space:nowrap}.module-state .app-icon{width:14px;height:14px}
.module-state.ready{background:#def5eb;color:#17664f}.module-state.partial{background:#fff0d2;color:#805113}.module-state.soon{background:#e9edf6;color:#4a5977}
.module-preview-banner{display:flex;align-items:center;gap:18px;padding:21px 24px;margin-bottom:22px;border:1px solid #344568;border-radius:16px;background:linear-gradient(110deg,#192540,#303e66);color:#fff;box-shadow:0 5px 0 #d0d6e4}
.module-preview-banner p{color:#d6deef;font-size:13px;line-height:1.6;margin:6px 0 0}.module-preview-banner strong{font-size:16px}.module-preview-banner>.app-icon{flex-shrink:0}.module-preview-banner .btn{flex-shrink:0}.module-banner-icon{display:grid;place-items:center;width:48px;height:48px;background:#ffffff13;border:1px solid #7080aa;border-radius:12px;flex-shrink:0}
.module-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;margin-bottom:22px}.module-metrics .panel{padding:20px 22px;border-color:#b8c3d9;box-shadow:0 3px 0 #d6dce8}.module-metrics span{font-weight:700;font-size:12px;color:#465777}.module-metrics strong{display:block;font-size:30px;margin:8px 0 3px}.module-metrics small{font-size:11px;color:#64728c}
.module-panel-heading{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;gap:14px;border-bottom:1px solid #c3cde0;background:linear-gradient(90deg,#edf0f8,#f9faff);border-radius:17px 17px 0 0}
.module-panel-heading h2,.module-delivery h2{display:flex;align-items:center;gap:10px;font-size:18px;margin:0}.module-panel-heading h2 .app-icon,.module-delivery h2 .app-icon{color:#6951db}
.module-filters{border:0;margin:0;display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding:18px 22px}.module-filters .search-field{flex:1;min-width:190px}.module-filters .search-field input{padding-left:43px}.module-filters select{width:150px}.module-filters input[type=date]{width:155px}.module-filters input,.module-filters select{height:43px}.module-filters:disabled{opacity:.72}.module-preview-panel button:disabled{opacity:.65;cursor:not-allowed}
.module-empty{text-align:center;padding:38px 18px!important}.module-empty>.app-icon{width:38px;height:38px;color:#8a79c9}.module-empty h3{font-size:18px;margin:14px 0 8px}.module-empty p{font-size:13px;white-space:normal;color:#60708d;margin:0 0 16px}
.module-delivery{padding:22px;margin-top:22px}.module-delivery ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:22px 0 0;padding-left:22px;font-size:13px;color:#53627d;line-height:1.6}.module-delivery p{font-size:14px;line-height:1.7;color:#53627d}
.module-status-list>a{display:flex;align-items:center;gap:16px;padding:20px 22px;border-bottom:1px solid #d8dfed;color:#1a2844;text-decoration:none}.module-status-list>a:last-child{border-bottom:0}.module-status-list>a:hover{background:#f3f1fd}.module-status-list>a>div{flex:1}.module-status-list p{margin:5px 0 0;font-size:12px;line-height:1.6;color:#5b6b86}.module-status-icon{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;background:#eeebff;border-radius:10px;color:#6a50d9}
@media(max-width:1000px){.app-shell{grid-template-columns:250px minmax(0,1fr)}.topbar{padding:12px 18px}.page-content{padding:20px}.module-preview-banner{flex-wrap:wrap}.module-delivery ol{grid-template-columns:1fr}}
@media(max-width:720px){.app-shell,.app-shell.nav-collapsed{display:block}.sidebar,.nav-collapsed .sidebar{display:none}.nav-open .sidebar{display:flex;position:fixed;top:74px;left:0;bottom:0;width:min(290px,90vw);height:calc(100dvh - 74px);z-index:45;box-shadow:12px 0 35px #10193250}.sidebar nav{display:flex;flex-direction:column}.sidebar .nav-caption,.sidebar-bottom{display:block}.topbar{position:sticky;top:0;z-index:46;min-height:74px;padding:10px 12px;gap:10px}.topbar .preview{display:none}.topbar .header-actions .btn{font-size:11px;padding:8px}.page-content{padding:16px 12px}.module-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.module-metrics .panel{padding:15px}.module-toolbar{align-items:flex-start}.module-progress-link{font-size:11px}.module-preview-banner{padding:18px;gap:12px}.module-panel-heading{padding:16px;flex-wrap:wrap}.module-filters{padding:16px}.module-filters .search-field{flex-basis:100%}.module-filters input[type=date],.module-filters select{width:100%;flex:1;min-width:125px}.module-status-list>a{padding:16px 12px;gap:10px;flex-wrap:wrap}.module-status-list>a>div{min-width:150px}.module-status-list .module-state{margin-left:50px}.module-status-list>a>span:last-child{display:none}}
@media(max-width:720px){.sidebar nav>a{min-height:44px}.sidebar-session-actions .sidebar-account,.sidebar-logout button{min-height:44px}}
@media print{.sidebar-toggle,.module-progress-link{display:none!important}}
