/*
|--------------------------------------------------------------------------
| SPA Shell Modes
|--------------------------------------------------------------------------
|
| The Angular SPA sets data-spa-shell on <body> based on its current
| hash route. Laravel never inspects the hash; it only reacts via CSS.
|
| Modes: adminlte (default, no overrides) | angular | fullscreen
*/

/*
|--------------------------------------------------------------------------
| No slide animation when the shell switches between Blade and Angular
|--------------------------------------------------------------------------
*/

body[data-spa-shell] .content-wrapper,
body[data-spa-shell] .main-footer,
body[data-spa-shell] .main-header,
body[data-spa-shell] .main-sidebar {
 transition: none !important;
}

/*
|--------------------------------------------------------------------------
| Angular Mode — SPA renders its own sidebar
|--------------------------------------------------------------------------
*/

body[data-spa-shell='angular'] .spa-shell-sidebar,
body[data-spa-shell='angular'] .main-sidebar {
 display: none !important;
}

body[data-spa-shell='angular'] .content-wrapper,
body[data-spa-shell='angular'] .main-footer {
 margin-left: 0 !important;
}

/*
|--------------------------------------------------------------------------
| Angular boot — hold the SPA layout until the shell is ready
|--------------------------------------------------------------------------
| Angular briefly resets data-spa-shell to the default before the first route
| resolves, which would flash the Blade sidebar and shift the content.
*/

body.speckit-embedded:not(.angular-ready) .spa-shell-sidebar,
body.speckit-embedded:not(.angular-ready) .main-sidebar {
 display: none !important;
}

body.speckit-embedded:not(.angular-ready) .content-wrapper,
body.speckit-embedded:not(.angular-ready) .main-footer {
 margin-left: 0 !important;
}

/*
|--------------------------------------------------------------------------
| Fullscreen Mode — SPA owns the whole viewport
|--------------------------------------------------------------------------
*/

body[data-spa-shell='fullscreen'] .spa-shell-navbar,
body[data-spa-shell='fullscreen'] .spa-shell-sidebar,
body[data-spa-shell='fullscreen'] .main-header,
body[data-spa-shell='fullscreen'] .main-sidebar,
body[data-spa-shell='fullscreen'] .main-footer {
 display: none !important;
}

body[data-spa-shell='fullscreen'] .content-wrapper {
 margin-left: 0 !important;
 margin-top: 0 !important;
 min-height: 100vh !important;
 padding: 0 !important;
}
