/* EBS00002 — visually distinct, responsive and accessible layer.
   Applies only when authenticated; no overrides for independent accounting document or print output. */
body.ebs4{
 --ebs4-navy:#102c4e;--ebs4-navy2:#173d65;--ebs4-red:#c51e39;--ebs4-text:#152b48;
 --ebs4-muted:#697c94;--ebs4-line:#e6edf5;--ebs4-bg:#f4f7fb;
 background:var(--ebs4-bg)!important;color:var(--ebs4-text);
 font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
body.ebs4 .shell241,body.ebs4 .shell242{min-height:100vh;background:var(--ebs4-bg)}
body.ebs4 :is(button,input,select,textarea){font-family:inherit}
body.ebs4 :is(button,a,input,select,textarea):focus-visible{outline:3px solid #5289ca!important;outline-offset:2px!important}
body.ebs4 .top241.ebs4-header{height:76px;min-height:76px;background:#fff!important;color:var(--ebs4-text)!important;box-shadow:0 1px 0 #dde7f2!important;border-bottom:1px solid #e5ebf3;position:sticky;top:0;z-index:90;padding:10px 26px}
body.ebs4 .top241.ebs4-header .brand241 img{width:45px;height:45px;object-fit:contain;border-radius:11px}
body.ebs4 .top241.ebs4-header .brand241 b{color:var(--ebs4-navy)!important;font-size:18px!important;font-weight:850;letter-spacing:-.04em}
body.ebs4 .top241.ebs4-header .brand241 span{color:#78889b!important;font-size:11px;letter-spacing:.015em}
body.ebs4 .top241.ebs4-header .user-chip240{background:#f3f6fa!important;border:1px solid #e7edf3;border-radius:13px;padding:7px 12px}
body.ebs4 .top241.ebs4-header .user-chip240 b{color:#233e5f!important}
body.ebs4 .top241.ebs4-header .user-chip240 small{color:#7d8da0!important}
body.ebs4 .top241.ebs4-header .icon-btn240,body.ebs4 .top241.ebs4-header .ebs3-top-search{color:#20466d!important;background:#f3f6fa!important;border:1px solid #e5ebf2!important;border-radius:12px!important;min-height:40px;min-width:40px}
body.ebs4 .top241.ebs4-header .icon-btn240:hover,body.ebs4 .top241.ebs4-header .ebs3-top-search:hover{background:#e6eef8!important}
body.ebs4 .top241.ebs4-header .btn.small{border-radius:11px}
body.ebs4 .layout240{grid-template-columns:246px minmax(0,1fr)!important;gap:0!important;align-items:stretch}
body.ebs4 .nav240.ebs4-side{position:sticky!important;top:76px!important;left:0;align-self:start;height:calc(100vh - 76px);overflow-y:auto;display:block!important;padding:13px 12px 30px!important;border-right:1px solid var(--ebs4-line);background:#fff!important;box-shadow:none!important;scrollbar-width:thin}
body.ebs4 .ebs4-nav-intro{display:flex;align-items:center;gap:8px;padding:15px 13px 19px;font-size:10px;font-weight:800;letter-spacing:.11em;color:#526985;white-space:nowrap}
body.ebs4 .ebs4-nav-intro small{margin-left:auto;color:#afbdce;font-size:9px;letter-spacing:0}
body.ebs4 .ebs4-nav-dot{display:block;width:8px;height:8px;border-radius:50%;background:#c62039;box-shadow:0 0 0 4px #c6203912}
body.ebs4 .nav240.ebs4-side .ebs3-nav-group{padding:21px 13px 8px!important;font-size:10px!important;font-weight:750;color:#8898ab!important;letter-spacing:.1em}
body.ebs4 .nav240.ebs4-side button[data-view]{display:flex!important;align-items:center!important;gap:11px!important;width:100%;text-align:left;border:0!important;padding:11px 13px!important;margin:1px 0;min-height:46px!important;color:#526980!important;background:transparent!important;border-radius:12px!important;font-size:13px;font-weight:650}
body.ebs4 .nav240.ebs4-side button[data-view] i{display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 23px;width:23px!important;min-width:23px!important;color:#7289a4;font-style:normal!important;font-size:18px;line-height:1}
body.ebs4 .nav240.ebs4-side button[data-view] b{font-size:13px;font-weight:690;white-space:normal}
body.ebs4 .nav240.ebs4-side button[data-view].active{background:#eaf1fb!important;color:#13416d!important;box-shadow:inset 3px 0 0 #c62039}
body.ebs4 .nav240.ebs4-side button[data-view].active i{color:#c62039}
body.ebs4 .nav240.ebs4-side button[data-view]:hover{background:#f2f6fb!important}
body.ebs4 .main241{max-width:1430px!important;padding:30px clamp(18px,3vw,46px) 70px!important;min-width:0}
body.ebs4 :is(.panel,.card,.report,.mt251-tile){border-radius:17px!important;box-shadow:0 3px 18px #1638560a}
body.ebs4 .page-head{margin-bottom:21px!important;gap:14px}
body.ebs4 .page-head h1{color:#183452!important;font-size:clamp(24px,2.4vw,32px)!important;letter-spacing:-.04em}
body.ebs4 .btn{min-height:40px;border-radius:11px!important}
body.ebs4 .btn.primary{background:#153d65!important;border-color:#153d65!important}
body.ebs4 .ebs4-context{display:flex;align-items:center;gap:8px;font-size:12px;color:#8898ac;margin:-2px 0 17px;font-weight:700}
body.ebs4 .ebs4-back{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:#55708d;padding:5px 3px;border-radius:7px;cursor:pointer;font-weight:700;font-size:12px}
body.ebs4 .ebs4-back:hover{color:#c21c38}
body.ebs4 .ebs4-context>span{color:#254563}
/* dashboard: replace generic flat menu with premium visual hierarchy */
body.ebs4 .ebs4-home{max-width:1190px;margin:0 auto;animation:ebs4-enter .24s ease-out}
@keyframes ebs4-enter{from{opacity:.6;transform:translateY(5px)}to{opacity:1;transform:none}}
body.ebs4 .ebs4-hero{position:relative;display:flex;align-items:stretch;min-height:223px;border-radius:24px;overflow:hidden;color:white;background:linear-gradient(120deg,#0d2b4c 0%,#153e67 63%,#22527d 100%);box-shadow:0 17px 45px #0e315227;margin-bottom:29px}
body.ebs4 .ebs4-hero-main{position:relative;z-index:1;flex:1 1 auto;padding:35px clamp(22px,3vw,43px)}
body.ebs4 .ebs4-overline{font-size:10px;letter-spacing:.14em;font-weight:800;color:#b5cee8;margin-bottom:13px}
body.ebs4 .ebs4-hero h1{color:#fff;font-size:clamp(25px,3vw,37px);font-weight:850;letter-spacing:-.04em;margin:0 0 8px;line-height:1.15}
body.ebs4 .ebs4-hero p{color:#b9cee5;margin:0;font-size:14px;line-height:1.6}
body.ebs4 .ebs4-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
body.ebs4 .ebs4-hero-actions button{display:inline-flex;align-items:center;gap:9px;justify-content:center;padding:11px 17px;min-height:46px;border-radius:12px;border:1px solid #ffffff50;font-size:13px;font-weight:760;cursor:pointer;transition:transform .12s}
body.ebs4 .ebs4-hero-actions button:hover{transform:translateY(-1px)}
body.ebs4 .ebs4-hero-primary{background:#d01e39;color:white;border-color:#d01e39!important;box-shadow:0 5px 17px #4b102545}
body.ebs4 .ebs4-hero-search{background:#ffffff14;color:#fff}
body.ebs4 .ebs4-hero-graphic{position:relative;width:245px;flex:0 0 245px;overflow:hidden;opacity:.95}
body.ebs4 .ebs4-hero-graphic span{position:absolute;border:2px solid #ffffff1b;border-radius:50%;width:290px;height:290px;top:-38px;right:-45px}
body.ebs4 .ebs4-hero-graphic span:nth-child(2){width:230px;height:230px;top:-5px;right:-20px}
body.ebs4 .ebs4-hero-graphic span:nth-child(3){width:165px;height:165px;top:28px;right:12px}
body.ebs4 .ebs4-hero-graphic i{position:absolute;width:98px;height:98px;top:68px;right:51px;color:#fff;border-radius:24px;background:#ffffff21;display:flex;align-items:center;justify-content:center;font-style:normal;transform:rotate(-9deg)}
body.ebs4 .ebs4-section{margin-bottom:28px}
body.ebs4 .ebs4-heading{margin:0 0 14px;display:flex;align-items:center;justify-content:space-between}
body.ebs4 .ebs4-heading small{font-size:10px;letter-spacing:.13em;color:#8192a8;font-weight:800}
body.ebs4 .ebs4-heading h2{font-size:20px;line-height:1.3;letter-spacing:-.03em;color:#183550;margin:5px 0 0;font-weight:820}
body.ebs4 .ebs4-heading p{color:#708299;margin:6px 0 0;font-size:13px}
body.ebs4 .ebs4-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
body.ebs4 .ebs4-tile{min-width:0;min-height:112px;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:10px;position:relative;background:white;border:1px solid #e4ecf4;color:#234564;border-radius:17px;padding:17px 18px;font-size:13px;font-weight:760;box-shadow:0 4px 17px #13345207;cursor:pointer;transition:transform .14s,box-shadow .14s}
body.ebs4 .ebs4-tile:hover{transform:translateY(-2px);box-shadow:0 11px 23px #1635521c}
body.ebs4 .ebs4-tile-icon{width:40px;height:40px;border-radius:12px;background:#edf3fa;color:#315e8c;display:flex;align-items:center;justify-content:center}
body.ebs4 .ebs4-tile>svg:last-child{position:absolute;right:17px;bottom:20px;color:#9cb0c3}
body.ebs4 .ebs4-tile-primary{background:#c91f39;color:#fff;border-color:#c91f39}
body.ebs4 .ebs4-tile-primary .ebs4-tile-icon{background:#ffffff2a;color:white}
body.ebs4 .ebs4-tile-primary>svg:last-child{color:#ffdce2}
body.ebs4 .ebs4-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
body.ebs4 .ebs4-metric{min-width:0;min-height:130px;background:#fff;border:1px solid #e5ecf4;box-shadow:0 4px 17px #12345208;border-radius:17px;padding:17px;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto auto;align-items:center;text-align:left;color:#183753;cursor:pointer}
body.ebs4 .ebs4-metric-icon{grid-column:2;grid-row:1 / 3;width:42px;height:42px;border-radius:13px;display:flex;align-items:center;justify-content:center;background:#eaf1fb;color:#376a9c}
body.ebs4 .ebs4-metric-number{grid-column:1;grid-row:2;font-size:clamp(23px,2.7vw,32px);font-weight:830;letter-spacing:-.04em;line-height:1.2}
body.ebs4 .ebs4-metric-label{grid-column:1 / -1;grid-row:3;color:#74869c;font-size:12px;font-weight:650;margin-top:8px}
body.ebs4 .ebs4-boards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
body.ebs4 .ebs4-board{min-width:0;padding:19px 21px;background:#fff;border:1px solid #e4ebf4;border-radius:18px;box-shadow:0 4px 17px #13345207}
body.ebs4 .ebs4-board-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
body.ebs4 .ebs4-board-head h2{display:flex;align-items:center;gap:9px;font-size:16px;color:#193854;margin:0;font-weight:800}
body.ebs4 .ebs4-board-head h2 svg{color:#c61d37}
body.ebs4 .ebs4-board-head button{background:transparent;color:#315e8c;display:flex;align-items:center;gap:4px;border:0;padding:9px;font-size:12px;font-weight:760;cursor:pointer}
body.ebs4 .ebs4-list-row{display:flex;align-items:center;width:100%;gap:11px;min-height:69px;padding:11px 0;border:0;border-bottom:1px solid #edf1f5;background:transparent;text-align:left;color:#213f5e;cursor:pointer}
body.ebs4 .ebs4-list-row:last-child{border-bottom:0}
body.ebs4 .ebs4-list-row:hover{background:#fbfdff}
body.ebs4 .ebs4-list-icon{width:41px;height:43px;flex:0 0 41px;border-radius:11px;background:#edf3fa;color:#416d99;display:flex;align-items:center;justify-content:center}
body.ebs4 .ebs4-row-info{flex:1;min-width:0}
body.ebs4 .ebs4-row-info strong{display:block;font-size:13px;font-weight:730;line-height:1.4;overflow-wrap:anywhere}
body.ebs4 .ebs4-row-info small{display:block;color:#75899e;margin-top:4px;font-size:11px}
body.ebs4 .ebs4-list-row>svg:last-child{flex:none;color:#a9b7c6}
body.ebs4 .ebs4-empty{color:#8092a6;padding:19px 4px;font-size:13px;line-height:1.5}
body.ebs4 .ebs4-footerline{text-align:center;padding:22px;color:#a6b4c4;font-size:10px}
body.ebs4 .ebs4-legacy{border:1px dashed #dce5ef!important;background:transparent!important;box-shadow:none!important;max-width:1190px;margin:0 auto 30px;opacity:.85}
body.ebs4 .ebs4-legacy>summary{font-size:12px!important;color:#8a9db0!important}
/* Common report category selector above existing, fully functioning reporting modules */
body.ebs4 .ebs4-report-hub{padding:21px 22px;background:#fff;border:1px solid #e5ecf3;border-radius:19px;margin-bottom:21px;box-shadow:0 4px 18px #183e5810}
body.ebs4 .ebs4-report-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
body.ebs4 .ebs4-report-card{border:1px solid #e4ecf4;border-radius:13px;padding:14px 13px;min-height:90px;display:flex;flex-direction:column;gap:9px;align-items:flex-start;position:relative;background:#f7fafe;text-align:left;color:#213f5d;cursor:pointer;font-size:13px}
body.ebs4 .ebs4-report-card>span{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:#e5effb;color:#3971a4}
body.ebs4 .ebs4-report-card>b{font-weight:750}
body.ebs4 .ebs4-report-card>svg:last-child{position:absolute;right:10px;bottom:12px;color:#9fb2c6}
body.ebs4 .ebs4-report-card.selected{border-color:#d32b45;background:#fff5f7}
body.ebs4 .ebs4-report-card.selected>span{background:#ffe2e7;color:#c41c37}
/* Mobile: one-column flow, more prominent top-level screens, thumb-friendly controls */
@media(max-width:1020px){
 body.ebs4 .layout240{grid-template-columns:200px minmax(0,1fr)!important}
 body.ebs4 .nav240.ebs4-side{width:200px}
 body.ebs4 .ebs4-actions,body.ebs4 .ebs4-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.ebs4 .ebs4-hero-graphic{width:170px;flex-basis:170px}
 body.ebs4 .ebs4-hero-graphic i{right:20px}
}
@media(max-width:760px){
 body.ebs4 .layout240{display:block!important;grid-template-columns:1fr!important}
 body.ebs4 .nav240.ebs4-side{display:none!important}
 body.ebs4 .top241.ebs4-header{height:65px;min-height:65px;padding:8px 13px;box-shadow:none!important;z-index:80}
 body.ebs4 .top241.ebs4-header .brand241{min-width:0}
 body.ebs4 .top241.ebs4-header .brand241 img{width:39px;height:39px}
 body.ebs4 .top241.ebs4-header .brand241 b{font-size:16px!important}
 body.ebs4 .top241.ebs4-header .brand241 span{font-size:10px}
 body.ebs4 .top241.ebs4-header .user-chip240{display:none!important}
 body.ebs4 .top241.ebs4-header .top-actions240{gap:7px}
 body.ebs4 .top241.ebs4-header .top-actions240 .icon-btn240,body.ebs4 .top241.ebs4-header #ebs3TopSearch{width:38px;min-width:38px;height:38px;min-height:38px;padding:6px}
 body.ebs4 .main241{padding:16px 13px calc(110px + env(safe-area-inset-bottom,0px))!important;max-width:none!important}
 body.ebs4 .ebs4-home{width:100%}
 body.ebs4 .ebs4-hero{min-height:0;border-radius:19px;margin-bottom:23px}
 body.ebs4 .ebs4-hero-main{padding:27px 23px 25px}
 body.ebs4 .ebs4-overline{font-size:9px;line-height:1.5}
 body.ebs4 .ebs4-hero h1{font-size:clamp(24px,6vw,32px)}
 body.ebs4 .ebs4-hero p{font-size:12px;max-width:280px}
 body.ebs4 .ebs4-hero-graphic{position:absolute;right:-75px;top:12px;bottom:0;width:160px;opacity:.25}
 body.ebs4 .ebs4-hero-actions{margin-top:20px;position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:8px}
 body.ebs4 .ebs4-hero-actions button{font-size:11px;min-height:45px;padding:10px 8px;gap:5px;white-space:nowrap}
 body.ebs4 .ebs4-hero-actions button svg:last-child{display:none}
 body.ebs4 .ebs4-heading h2{font-size:18px}
 body.ebs4 .ebs4-actions{gap:9px}
 body.ebs4 .ebs4-tile{min-height:98px;padding:12px 13px;gap:9px;font-size:12px;border-radius:14px}
 body.ebs4 .ebs4-tile-icon{width:36px;height:36px;border-radius:10px}
 body.ebs4 .ebs4-tile>svg:last-child{right:10px;bottom:14px}
 body.ebs4 .ebs4-metrics{gap:9px}
 body.ebs4 .ebs4-metric{min-height:111px;padding:13px;border-radius:14px}
 body.ebs4 .ebs4-metric-icon{width:35px;height:35px}
 body.ebs4 .ebs4-metric-icon svg{width:19px}
 body.ebs4 .ebs4-metric-number{font-size:27px}
 body.ebs4 .ebs4-metric-label{font-size:11px}
 body.ebs4 .ebs4-boards{grid-template-columns:1fr;gap:11px}
 body.ebs4 .ebs4-board{padding:15px}
 body.ebs4 .ebs4-board-head h2{font-size:15px}
 body.ebs4 .ebs4-section{margin-bottom:22px}
 body.ebs4 .ebs4-context{font-size:11px;margin:0 0 12px}
 body.ebs4 .ebs4-report-hub{padding:15px;border-radius:15px}
 body.ebs4 .ebs4-report-cards{grid-template-columns:1fr;gap:8px}
 body.ebs4 .ebs4-report-card{min-height:67px;padding:11px;display:flex;flex-direction:row;align-items:center;gap:12px}
 body.ebs4 .ebs4-report-card>svg:last-child{position:static;margin-left:auto}
 body.ebs4 .mobile-bottom241.ebs4-bottom{background:#fff!important;box-shadow:0 -3px 20px #1029470d!important;border-top:1px solid #e5ecf4!important}
 body.ebs4 .mobile-bottom241.ebs4-bottom button.active{background:transparent!important;color:#c51e39!important}
 body.ebs4 .mobile-bottom241.ebs4-bottom button.active::before{content:'';position:absolute;top:1px;width:24px;height:3px;border-radius:0 0 5px 5px;background:#c51e39}
 body.ebs4 .mobile-bottom241.ebs4-bottom button{position:relative;min-height:54px!important;border-radius:8px!important}
}
@media(max-width:380px){body.ebs4 .ebs4-hero-actions{grid-template-columns:1fr}body.ebs4 .ebs4-hero-main{padding:23px 18px}body.ebs4 .ebs4-tile{font-size:11px}}
@media(prefers-reduced-motion:reduce){body.ebs4 .ebs4-home{animation:none!important}body.ebs4 .ebs4-tile:hover,body.ebs4 .ebs4-hero-actions button:hover{transform:none!important}}
@media print{body.ebs4 .ebs4-context,body.ebs4 .ebs4-home,body.ebs4 .ebs4-report-hub,body.ebs4 .ebs4-legacy,body.ebs4 .ebs4-bottom{display:none!important}body.ebs4 .layout240{display:block!important}body.ebs4 .main241{max-width:none!important;padding:0!important}}
