/* MP brand: warm orange-red, gold highlights, readable glass surfaces. */
:root{--ground:#f5f0eb;--surface:#fff;--surface-2:#faf5f0;--ink:#302923;--ink-2:#62534a;--muted:#81736a;--line:#e6d9ce;--line-soft:#eee5dd;--accent:#b93e16;--accent-2:#a4330f;--accent-soft:#ffeadf;--radius:14px;color-scheme:light}
body{background:radial-gradient(ellipse at 88% 0%,#ffd9b899,transparent 42%),radial-gradient(ellipse at 8% 65%,#f4cb8780,transparent 42%),linear-gradient(135deg,#faf7f3,#f0e8df);background-attachment:fixed;font-weight:400}
.app-shell{min-height:100vh}
.sidebar{position:fixed;inset:0 auto 0 0;width:264px;z-index:60;display:flex;flex-direction:column;background:linear-gradient(150deg,rgba(255,255,255,.9),rgba(255,245,233,.83));backdrop-filter:blur(24px);border-right:1px solid #fff;box-shadow:12px 0 42px #784c2110;transition:transform .22s ease}
.sidebar-brand{display:flex;gap:12px;align-items:center;padding:24px 18px 20px;border-bottom:1px solid #d8bba733;color:var(--ink)}
.sidebar-brand:hover{text-decoration:none}.sidebar-brand img{flex:none;object-fit:contain}.sidebar-brand b{display:block;font-size:14px;line-height:1.5}.sidebar-brand small{color:var(--muted);font-size:11px}
.side-nav{flex:1;overflow:auto;padding:16px 12px;scrollbar-width:thin;scrollbar-color:#dbb69f transparent}
.nav-group{margin-bottom:9px}.nav-group summary{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none;font-size:12px;font-weight:600;padding:10px 8px;color:#77675c;border-radius:8px}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary:hover{background:#ffffff80}
.group-number{font-size:10px;letter-spacing:.03em;color:#bc8863}.chevron{margin-left:auto;transition:transform .2s}.nav-group:not([open]) .chevron{transform:rotate(-90deg)}
.nav-links{display:grid;gap:3px}.nav-links a{display:block;padding:9px 12px 9px 33px;border:1px solid transparent;border-radius:10px;font-size:13px;color:#63564e;line-height:1.5;position:relative}.nav-links a:hover{background:#fff9;text-decoration:none;color:var(--accent)}
.nav-links a.on{background:linear-gradient(125deg,#cf4b1c,#ad3512);color:white;border-color:#ef8d5b;box-shadow:0 5px 12px #bd4d1d26,inset 0 1px 0 #ffffff55}.nav-links a.on:before{content:'';position:absolute;left:15px;top:16px;width:5px;height:5px;border-radius:50%;background:#ffd5a2}
.sidebar-footer{font-size:11px;color:#8a7464;padding:15px 20px;border-top:1px solid #d8bba733;display:flex;gap:8px;align-items:center}.status-dot{width:6px;height:6px;background:#b48248;border-radius:50%}
.workspace{margin-left:264px;min-width:0;transition:margin-left .22s ease}.workspace-header{position:sticky;top:0;z-index:30;min-height:82px;padding:14px 28px;display:flex;align-items:center;gap:18px;background:#fffaf2b8;backdrop-filter:blur(22px);border-bottom:1px solid #ffffff;box-shadow:0 5px 22px #54311106}
.page-context{display:grid;gap:1px}.page-context small{font-size:9px;letter-spacing:.19em;color:#ab8063}.page-context b{font-size:16px;font-weight:500}.menu-toggle{display:flex;align-items:center;gap:8px;padding:8px 11px!important}.menu-toggle span:first-child{font-size:19px}.menu-toggle span:last-child{font-size:12px}
.workspace main{max-width:1600px;padding:28px 32px 64px}.workspace .envbar{padding:7px 30px;background:#fff5df99;border-bottom:1px solid #e7c89155;color:#87652d;font-size:11px;display:flex;gap:14px}.whoami b{font-weight:500}.whoami span{font-size:10px}
h1{font-weight:500;letter-spacing:-.02em;font-size:25px;margin-bottom:22px}.card{background:linear-gradient(125deg,#fffffff5,#ffffffc4);border:1px solid #ffffff;border-radius:16px;box-shadow:0 10px 28px #7951310b,0 2px 4px #79513106,inset 0 1px 0 #fff;backdrop-filter:blur(16px);overflow:hidden}.card>h2{background:transparent;border-color:#eadac966;font-size:14px;padding:15px 18px;font-weight:500}.card>.body{padding:18px}
.report-kpis{gap:16px!important;margin:22px 0}.report-kpis .card{position:relative;min-height:140px;border-top:3px solid #d47742}.report-kpis .card:nth-child(2){border-top-color:#d9a338}.report-kpis .card:nth-child(3){border-top-color:#bca082}.report-kpis .card:nth-child(4){border-top-color:#b95939}.report-kpis .card:after{content:'';position:absolute;width:100px;height:100px;right:-35px;bottom:-55px;border:15px solid #e6b38d1c;border-radius:50%;pointer-events:none}.report-kpis strong{font-size:clamp(21px,2vw,30px)!important;font-weight:500;letter-spacing:-.04em;color:#4f3323}.report-kpis h2{font-size:12px;color:#827063;border:0;padding-bottom:0}
button,.btn{border-radius:9px;font-weight:400;transition:background .15s,box-shadow .15s;box-shadow:0 3px 6px #8a3a1510}button:not(.ghost):not(.danger):not(.sidebar-backdrop),.btn:not(.ghost){background:linear-gradient(145deg,#cc4b1e,#ad3715);color:#fff;border-color:#b8411c;box-shadow:0 4px 9px #aa421822,inset 0 1px 0 #ffffff40}button:hover,.btn:hover{box-shadow:0 5px 12px #aa42182c}.btn.ghost,button.ghost{background:#ffffff65;border-color:#dbc4b2;color:#85472c}
input,select,textarea{background:#fffdfb;border-color:#dfcec1;border-radius:8px;color:var(--ink);font-weight:400}input:focus,select:focus,textarea:focus{border-color:#cf7445;box-shadow:0 0 0 3px #e9864820}
thead th{background:#f6efe6;color:#715441;font-weight:500}tbody td{border-color:#eee5dd}tbody tr:hover{background:#fff4e970}.report-columns{gap:18px!important}main>p{font-size:12px;color:#7b6a5e;line-height:1.8}main>form.row{padding:18px 20px;background:#ffffff9c;border:1px solid white;border-radius:14px;align-items:end;box-shadow:0 4px 18px #6a452008}main>form.row label{font-size:12px}
.sidebar-collapsed .sidebar{transform:translateX(-100%)}.sidebar-collapsed .workspace{margin-left:0}.sidebar-backdrop{display:none}.skip-link{position:fixed;left:16px;top:-70px;z-index:100;background:white;padding:12px}.skip-link:focus{top:12px}
.loginbox{max-width:440px;border-radius:24px;background:linear-gradient(140deg,#ffffffec,#ffffffb8);border:1px solid #fff;box-shadow:0 24px 70px #87572822,inset 0 1px 0 white;backdrop-filter:blur(20px);padding:34px}.login-logo{width:90px;height:90px;object-fit:contain;display:block;margin:0 auto 18px}.loginbox h1,.loginbox>.sub{text-align:center}
@media(min-width:1001px) and (max-width:1250px){.report-kpis{grid-template-columns:repeat(2,1fr)!important}.workspace main{padding:24px}.workspace-header{padding:14px 24px}}
@media(max-width:1000px){.sidebar{transform:translateX(-100%);width:min(280px,85vw)}.workspace{margin-left:0}.sidebar-open .sidebar{transform:translateX(0)}.sidebar-open .sidebar-backdrop{display:block;position:fixed;inset:0;z-index:50;background:#32201455;border:0;border-radius:0;box-shadow:none;backdrop-filter:blur(4px)}.workspace-header{padding:12px 18px;gap:12px;min-height:70px}.workspace main{padding:22px 18px}.sidebar-open{overflow:hidden}}
@media(max-width:600px){.page-context small,.whoami span{display:none}.page-context b{font-size:13px}.whoami{display:none}.workspace-header>.btn{font-size:11px;padding:7px}.workspace .envbar{padding:7px 18px;flex-wrap:wrap;gap:0 8px}.report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.report-kpis .card{min-height:120px}.report-kpis .card>.body{padding:12px}.report-kpis h2{padding:12px 12px 0;font-size:11px}.report-kpis strong{font-size:21px!important}.report-columns{grid-template-columns:1fr!important}.card>.body{overflow-x:auto}main>form.row{padding:14px}main>form.row label{min-width:0;flex:1 1 120px}.menu-toggle span:last-child{display:none}}
@media print{.sidebar,.sidebar-backdrop,.workspace-header,.envbar,.skip-link{display:none!important}.workspace{margin:0}.workspace main{max-width:none;padding:0}.card{background:white;box-shadow:none;backdrop-filter:none;border:1px solid #ddd;break-inside:avoid}body{background:white;color:black}}
.report-heading{display:flex;align-items:center;gap:14px;margin-bottom:24px}.report-heading .document-logo{float:none!important;margin:0!important;width:54px;height:54px}.report-heading h1{margin:0}.report-heading span{font-size:11px;color:var(--muted)}
a.dashboard-link{display:block;color:var(--ink);text-decoration:none}a.dashboard-link:hover{transform:translateY(-2px);box-shadow:0 12px 30px #a84b2020;outline:1px solid #db966a}a.dashboard-link small{display:block;margin-top:9px;color:var(--accent);font-size:11px}.dashboard-link:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
[id="trip-stops"],[id="trip-expenses"],[id="receipt-list"],[id="debtor-list"],[id="yield-runs"]{scroll-margin-top:100px}:target{outline:2px solid var(--accent);outline-offset:4px}
/* Compact navigation with semantic category icons. */
.side-nav{padding:10px 10px}.nav-group{margin-bottom:3px}.nav-group summary{padding:7px 9px;gap:9px}.nav-icon{width:18px;height:18px;flex:none;color:#ad653d}.nav-links{gap:1px}.nav-links a{padding:6px 10px 6px 36px;font-size:12.5px;line-height:1.45;border-radius:8px}.nav-links a.on:before{left:18px;top:13px}.sidebar-brand{padding:18px 16px}.sidebar-footer{padding:11px 18px}
/* Fixed header region: page header, environment and announcement stay together. */
.workspace-top{position:sticky;top:0;z-index:40;isolation:isolate}.workspace-top .workspace-header{position:relative}.announcement-strip{height:30px;display:flex;align-items:center;gap:10px;padding:0 28px;background:#fffaf3ef;border-bottom:1px solid #e9d3bd;backdrop-filter:blur(20px);font-size:11px;color:#b97240}.announcement-strip a{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#82543b}.glass-drop,.nav-icon{border:1px solid #ffffff;background:radial-gradient(ellipse at 28% 18%,#fff 0%,#ffffffc9 16%,#ffdebb8c 48%,#e5a66b66 88%);box-shadow:inset 2px 3px 4px #fff,inset -2px -3px 5px #bd693837,0 3px 7px #854d2026;border-radius:50% 50% 48% 18%;color:#a7491f}.nav-icon{padding:4px;width:27px;height:27px}.nav-group summary{padding:4px 8px}.glass-drop{position:relative;display:grid;place-items:center;width:43px;height:43px;padding:9px;flex:none}.glass-drop svg{width:23px;height:23px}button.glass-drop:not(.ghost){background:radial-gradient(ellipse at 28% 18%,#fff,#ffe5c7 65%,#eab582)!important;color:#a7491f!important;border-color:#fff!important;box-shadow:inset 2px 3px 4px #fff,inset -2px -3px 5px #bd693837,0 3px 7px #854d2026!important}#notice-count{position:absolute;top:-4px;right:-7px;min-width:18px;height:18px;border-radius:9px;padding:0 4px;background:#bc3816;color:#fff;font-size:10px;line-height:18px}#notice-count[hidden]{display:none}
#notification-panel{position:absolute;right:22px;top:72px;width:min(370px,calc(100vw - 28px));max-height:65vh;overflow:auto;background:#fffaf5f5;backdrop-filter:blur(24px);border:1px solid white;border-radius:18px;box-shadow:0 18px 60px #57302033;padding:16px;z-index:70}#notification-panel[hidden]{display:none}.notice-panel-title{display:flex;justify-content:space-between;font-size:13px}.notice-item{display:grid;gap:3px;padding:10px;border-radius:9px;border-bottom:1px solid #eadccd;color:var(--ink)}.notice-item small{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notice-item.unread{background:#ffeddc;border-left:3px solid #cd5425}#notice-status{font-size:11px;color:var(--muted)}.notice-article{scroll-margin-top:160px}.bell-ring svg{animation:bell-swing .55s ease-in-out 4;transform-origin:50% 10%}@keyframes bell-swing{0%,100%{transform:rotate(0)}20%{transform:rotate(19deg)}40%{transform:rotate(-17deg)}60%{transform:rotate(12deg)}80%{transform:rotate(-8deg)}}
@media(max-width:600px){.announcement-strip{padding:0 18px}.glass-drop{width:35px;height:35px;padding:6px}.workspace-header{gap:9px}#notification-panel{right:12px;top:62px}.nav-icon{width:26px;height:26px}}
@media print{.workspace-top{display:none!important}}
#chat-launcher{position:fixed;right:22px;bottom:22px;z-index:45;border:1px solid #fff;border-radius:50% 50% 18% 50%;width:76px;height:84px;padding:4px;background:#fff8!important;backdrop-filter:blur(16px);box-shadow:0 8px 26px #ae481d40,inset 0 2px 3px #fff!important;display:grid;place-items:center}#chat-launcher img{width:60px;height:60px;object-fit:contain}#chat-launcher>span{font-size:10px;color:#a84117;margin-top:-5px}#chat-window{position:fixed;right:22px;bottom:116px;width:min(390px,calc(100vw - 28px));height:min(540px,calc(100dvh - 210px));min-height:260px;z-index:46;background:#fffaf4f2;backdrop-filter:blur(26px);border:1px solid white;border-radius:20px;box-shadow:0 20px 70px #63311840;display:flex;flex-direction:column;overflow:hidden}#chat-window[hidden]{display:none}#chat-window>header{display:flex;align-items:center;gap:8px;padding:12px 16px;background:linear-gradient(130deg,#fff5e8,#ffddc1);border-bottom:1px solid #edcbb0}#chat-window>header>div{flex:1}#chat-window header small{display:block;font-size:10px;color:#97674c}#chat-window header button{font-size:11px;padding:4px 8px}#chat-messages{flex:1;min-height:0;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:10px}.chat-bubble{margin:0;padding:10px 12px;border-radius:14px;background:white;border:1px solid #ecdccd;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.65;max-width:93%;align-self:flex-start}.chat-bubble.user{align-self:flex-end;background:#ffeadb;border-color:#e9c0a4}.chat-bubble.error{color:#99371e;background:#fff1e9}#chat-links{display:flex;gap:5px;flex-wrap:nowrap;overflow:auto;padding:6px 12px;flex:none}#chat-links a{font-size:10px;white-space:nowrap;border:1px solid #e9c9b1;border-radius:14px;padding:4px 9px;background:white}#chat-status{font-size:10px;padding:0 14px;margin:4px 0;color:#8b7564}#chat-form{display:flex;gap:7px;padding:10px 12px;align-items:center}#chat-input{flex:1;min-width:0;resize:none;font-size:13px}#chat-send{padding:9px 12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:600px){#chat-launcher{right:14px;bottom:14px;width:64px;height:72px}#chat-launcher img{width:50px;height:50px}#chat-window{right:14px;bottom:96px}}
@media print{#chat-launcher,#chat-window{display:none!important}}
.workspace-top{background:#fff8ef;backdrop-filter:blur(24px)}.workspace-top .envbar{background:#fff2dc}.notice-article,[id="trip-stops"],[id="trip-expenses"],[id="receipt-list"],[id="debtor-list"],[id="yield-runs"]{scroll-margin-top:165px}
