/* Common application chrome. Report definitions cannot change these rules. */
body.app-page{margin:0;min-height:100vh;display:flex;flex-direction:column}
.app-brand-header{background:#fff;border-top:4px solid #005b4d;padding:18px 20px 14px;text-align:center;flex:none}
.app-logo-window{display:block;position:relative;width:min(720px,100%);aspect-ratio:9/1;margin:0 auto;overflow:hidden}
.app-logo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 50%;max-width:none}
.app-brand-caption{font:600 10px/1.5 system-ui,sans-serif;letter-spacing:2.5px;color:#697774;margin:6px 0 0}
.app-navigation-area{position:sticky;top:0;z-index:50;background:#103c3c;border-bottom:1px solid #28514c;box-shadow:0 2px 6px #17333614;flex:none}
.app-navigation-inner{max-width:1480px;margin:0 auto;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:58px}
.app-navigation{display:flex;align-items:stretch;gap:0;min-width:0;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#70948c #103c3c}
.app-navigation a{display:flex;align-items:center;flex:none;min-height:58px;padding:0 13px;border-bottom:3px solid transparent;color:#e8f2ee;text-decoration:none;font:500 14px/1.3 system-ui,sans-serif;white-space:nowrap}
.app-navigation a:hover{background:#1c4d47;color:#fff}
.app-navigation a[aria-current=page]{color:#fff;border-bottom-color:#ef97b8;background:#1c4d47}
.app-user-controls{display:flex;align-items:center;justify-content:flex-end;gap:17px;flex:none;font:500 13px/1.4 system-ui,sans-serif}
.app-user-controls .app-user-name{max-width:200px;overflow-wrap:anywhere;color:#e8f2ee;text-decoration:none}
.app-user-name:hover{text-decoration:underline}
.app-user-controls form{margin:0;display:flex}
.app-user-controls .app-sign-out{appearance:none;font:600 13px/1.4 system-ui,sans-serif;color:#fff;background:transparent;border:1px solid #789c93;border-radius:5px;padding:8px 12px;min-height:36px;white-space:nowrap;cursor:pointer;text-decoration:none}
.app-user-controls .app-sign-out:hover{background:#27564d;color:white}
.app-private-label{color:#e2ede8;font:400 13px/1.5 system-ui,sans-serif;margin:14px auto;text-align:center}
main.app-content{width:100%;flex:1;min-height:0;margin:0 auto;padding-top:32px;padding-bottom:40px}
.app-footer{flex:none;margin-top:auto;padding:20px 4vw;border-top:1px solid #d7e2dc;background:#fff;color:#586d63;text-align:center;font:400 12px/1.9 system-ui,sans-serif}
.app-footer span[aria-hidden]{margin:0 7px;color:#879c91}.app-version{white-space:nowrap}
.app-skip{position:absolute;left:-9999px}.app-skip:focus{position:fixed;left:10px;top:10px;padding:12px;background:#fff;color:#103c3c;z-index:100}
.app-navigation-area :focus-visible,.app-brand-header :focus-visible{outline:3px solid #efb6cc;outline-offset:-4px}
html{scroll-padding-top:115px}
/* Administration retains its native form/content styles inside the same shell. */
.app-admin .app-admin-container{width:100%;flex:1;min-height:0}
.app-admin #main{max-width:none;margin:0;padding:0;min-height:0}
.app-admin #content-start{min-width:0;padding:24px 4vw;box-sizing:border-box}
.app-admin #nav-sidebar{position:static;max-height:none}
.app-admin #toggle-nav-sidebar{position:static}
.app-admin.login{background:var(--body-bg,#f3f6f7)}
.app-admin.login #container{width:min(100% - 32px,480px);min-width:0;margin:32px auto;border:1px solid var(--hairline-color,#cbd8d8);border-radius:8px;flex:none}
.app-admin.login #content-start{padding:24px}
.app-admin .app-footer{box-sizing:border-box}
@media(max-width:1180px){.app-navigation-inner{padding:0 20px;gap:8px;flex-wrap:wrap}.app-navigation{width:100%;order:2}.app-user-controls{width:100%;padding:10px 0 4px;order:1}.app-navigation a{min-height:46px;padding:0 12px}.app-user-controls .app-user-name{max-width:70vw}.app-brand-header{padding:14px 18px 10px}}
@media(max-width:600px){.app-brand-header{padding:12px 16px 10px}.app-brand-caption{font-size:9px;letter-spacing:1.7px;margin-top:5px}.app-navigation-inner{padding:0 12px}.app-navigation a{font-size:13px;padding:0 11px}.app-footer{padding:18px 20px;font-size:11px}.app-footer span[aria-hidden]{margin:0 3px}.app-admin #content-start{padding:20px 12px}.app-user-controls{gap:14px}}
@media print{body.app-page{display:block;background:white}.app-brand-header{display:none!important}.app-navigation-area,.app-skip{display:none!important}.app-footer{display:block!important;margin-top:16px;border-top:1px solid #aaa;padding:8px 0;background:white;color:#555;font-size:7pt;break-inside:avoid}main.app-content{padding:0;max-width:none}.app-admin #nav-sidebar,.app-admin #toggle-nav-sidebar{display:none!important}}
