:root{--violet:#5d3188;--deep:#30194b;--gold:#edbd45;--ink:#2c2738;--muted:#7b7488;--line:#e8e4ed;--canvas:#f7f6fa;--green:#197055}*{box-sizing:border-box}body{color:var(--ink);background:var(--canvas);margin:0;font-family:Arial,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a{color:var(--violet)}.login{grid-template-columns:48% 52%;min-height:100svh;display:grid}.loginbrand{background:var(--deep);color:#fff;background-image:radial-gradient(at 100% 100%,#64378a99,#0000 70%);flex-direction:column;justify-content:space-between;padding:45px 55px;display:flex;position:relative;overflow:hidden}.brandtop{text-transform:uppercase;letter-spacing:1.8px;align-items:center;gap:14px;font-size:10px;line-height:1.6;display:flex}.seal{object-fit:contain;width:64px;height:64px}.loginpitch{padding:65px 0 35px}.wordmark{letter-spacing:-4px;color:var(--gold);font-size:70px;font-weight:800;line-height:1.1;display:block}.loginpitch h1{margin:20px 0;font-size:32px;font-weight:500;line-height:1.25}.brandline{background:var(--gold);width:44px;height:4px;margin-bottom:20px}.loginbrand p{font-size:20px;line-height:1.7}.loginbrand small{opacity:.65;font-size:11px}.weave{opacity:.35;background:repeating-linear-gradient(45deg,transparent 0 8px,var(--gold) 8px 10px,transparent 10px 16px),repeating-linear-gradient(-45deg,transparent 0 8px,var(--gold) 8px 10px,transparent 10px 16px);height:34px;position:absolute;bottom:0;left:0;right:0}.loginpanel{justify-content:center;align-items:center;padding:40px;display:flex}.logincard{width:100%;max-width:400px}.loginicon{width:52px;height:52px;color:var(--violet);background:#eee7f6;border-radius:15px;place-items:center;margin-bottom:24px;display:grid}.logincard h2{letter-spacing:-1px;margin:0 0 13px;font-size:36px}.muted,.hint{color:var(--muted);line-height:1.6}.hint{font-size:12px}.logincard .subtitle{color:var(--muted);margin-bottom:32px;line-height:1.6}.field{flex-direction:column;gap:8px;min-width:0;margin-bottom:17px;display:flex}.field>span{color:#575060;font-size:12px;font-weight:600}.field input,.field select,.field textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #ddd6e5;border-radius:8px;min-height:43px;padding:12px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--violet);outline:2px solid #e7dcf3}.field textarea{min-height:80px}.btn{background:var(--violet);color:#fff;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:11px 17px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.btn.secondary{color:var(--violet);background:#fff;border-color:#ddd2e8}.btn.danger{background:#a23946}.btn.small{padding:7px 10px;font-size:12px}.btn.gold{background:var(--gold);color:var(--deep)}.full{width:100%}.textbtn{color:var(--violet);background:0 0;border:0;padding:10px 0;font-size:12px}.loginlinks{justify-content:space-between;gap:15px;margin-top:18px;display:flex}.loginfine{border-top:1px solid var(--line);color:var(--muted);margin-top:30px;padding-top:20px;font-size:11px;line-height:1.7}.app{grid-template-columns:246px 1fr;min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);z-index:20;background:#fff;width:246px;padding:27px 17px;position:fixed;inset:0 auto 0 0;overflow-y:auto}.sidebarbrand{border-bottom:1px solid var(--line);align-items:center;gap:11px;padding:0 10px 27px;display:flex}.sidebarbrand .seal{width:44px;height:44px}.sidebarbrand b{letter-spacing:-1px;color:var(--violet);font-size:24px}.sidebarbrand small{text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin-top:3px;font-size:9px;display:block}.menulabel{letter-spacing:1.7px;text-transform:uppercase;color:#aaa3b3;margin:30px 13px 12px;font-size:10px}.navitem{color:#776e83;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;width:100%;margin:3px 0;padding:12px 13px;font-size:12px;font-weight:600;display:flex}.navitem.active{color:var(--violet);background:#f0e9f7}.navitem:hover{background:#f7f3fa}.navitem.logout{color:#a05261}.officechip{border:1px solid var(--line);background:#faf8fc;border-radius:9px;margin:25px 4px 0;padding:13px;font-size:11px;line-height:1.6}.officechip small{color:var(--muted);font-size:10px;display:block}.main{grid-column:2;min-width:0}.topbar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;height:84px;padding:0 38px;display:flex}.crumb{color:var(--muted);font-size:11px}.crumb b{color:var(--ink);margin-top:5px;font-size:14px;display:block}.topright{color:var(--muted);align-items:center;gap:17px;font-size:11px;display:flex}.avatar{width:34px;height:34px;color:var(--violet);background:#eee7f6;border-radius:50%;place-items:center;font-weight:700;display:grid}.content{max-width:1600px;margin:auto;padding:33px 38px}.heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:25px;display:flex}.eyebrow{color:var(--violet);text-transform:uppercase;letter-spacing:1.7px;margin:0 0 8px;font-size:10px;font-weight:700}.heading h1{letter-spacing:-.8px;margin:0 0 9px;font-size:28px;line-height:1.2}.heading p{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.banner{color:#826622;background:#fffaeb;border:1px solid #efdfb1;border-radius:8px;align-items:center;gap:10px;margin-bottom:24px;padding:12px 15px;font-size:11px;line-height:1.6;display:flex}.cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:26px;display:grid}.metric{text-align:left;border:1px solid var(--line);background:#fff;border-radius:10px;padding:21px;transition:transform .15s;box-shadow:0 2px 3px #30194b02}.metric:hover{border-color:#c8b6db;transform:translateY(-2px)}.metrichead{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;font-size:11px;display:flex}.metricicon{width:32px;height:32px;color:var(--violet);background:#f1ebf8;border-radius:9px;place-items:center;display:grid}.metric strong{letter-spacing:-.8px;margin:15px 0 9px;font-size:29px;font-weight:600;display:block}.metric small{color:#93899d;font-size:10px}.metric.highlight{border-top:3px solid var(--gold)}.panel{border:1px solid var(--line);background:#fff;border-radius:10px;margin-bottom:23px;overflow:hidden}.panelhead{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;padding:20px 23px;display:flex}.panelhead h2{margin:0;font-size:15px}.panelhead p{color:var(--muted);margin:6px 0 0;font-size:11px}.padded{padding:23px}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.split{grid-template-columns:1.65fr 1fr;gap:23px;display:grid}.grid2{grid-template-columns:1fr 1fr;gap:0 20px;display:grid}.wide{grid-column:1/-1}.toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:end;gap:13px;padding:18px 22px;display:flex}.toolbar .field{flex:1;min-width:130px;margin:0}.search{flex:2;min-width:220px}.tablewrap{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:12px}th{color:#91869d;text-transform:uppercase;letter-spacing:.8px;white-space:nowrap;background:#fcfbfd;padding:14px 21px;font-size:9px;font-weight:600}td{vertical-align:top;border-top:1px solid #f0edf4;padding:16px 21px;line-height:1.5}td b{font-size:12px}td small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.badge{color:var(--violet);letter-spacing:.3px;white-space:nowrap;background:#f1ecf8;border-radius:5px;padding:5px 8px;font-size:9px;font-weight:700;display:inline-block}.badge.green{color:#267556;background:#e8f5ef}.badge.amber{color:#a37b26;background:#fff4dd}.badge.red{color:#a74052;background:#fbe9ec}.badge.neutral{color:#7c7487;background:#f1eff3}.empty{text-align:center;color:#a398af;padding:55px 20px}.empty svg{color:#c1b5cc;margin:auto}.empty h3{color:#60546d;margin:15px 0 8px;font-size:15px}.empty p{margin:0;font-size:12px;line-height:1.6}.actionrow{flex-wrap:wrap;gap:7px;display:flex}.sectiontitle{color:var(--violet);letter-spacing:.8px;text-transform:uppercase;border-bottom:1px solid var(--line);margin:5px 0 18px;padding-bottom:12px;font-size:11px;font-weight:700}.check{align-items:center;gap:9px;padding:10px 0;font-size:12px;line-height:1.5;display:flex}.check input{accent-color:var(--violet);width:16px;height:16px}.assessment{background:#f7f3fb;border:1px solid #e7dcef;border-radius:10px;margin-bottom:22px;padding:20px}.assessment .kv{justify-content:space-between;gap:20px;margin-bottom:12px;font-size:12px;display:flex}.assessment .kv:last-child{color:var(--violet);border-top:1px solid #e0d6e9;margin-bottom:0;padding-top:15px;font-size:18px;font-weight:600}.tvrnumber{letter-spacing:1px;color:var(--violet);background:#f7f3fb;border-radius:8px;padding:12px;font:700 28px monospace}.alert{border-radius:8px;margin-bottom:20px;padding:14px 18px;font-size:12px;line-height:1.5}.alert.error{color:#a3324e;background:#fcecf0;border:1px solid #edc4d1}.alert.success{color:#24654c;background:#e8f6ef;border:1px solid #c9e9d8}.quickrow{border-bottom:1px solid var(--line);align-items:center;gap:13px;padding:17px 0;display:flex}.quickrow:last-child{border:0}.quickrow>div{flex:1}.quickrow b{font-size:12px}.quickrow p{color:var(--muted);margin:6px 0 0;font-size:11px;line-height:1.5}.dot{background:var(--gold);border-radius:50%;width:8px;height:8px}.suggestions{border:1px solid var(--line);background:#faf8fc;border-radius:8px;margin-bottom:16px}.suggestions button{text-align:left;border:0;border-bottom:1px solid var(--line);width:100%;color:var(--violet);background:0 0;padding:13px;font-size:12px;display:block}.suggestions button:last-child{border:0}.modalback{z-index:50;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#20112c80;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:14px;width:100%;max-width:650px;max-height:90vh;overflow:auto;box-shadow:0 20px 100px #21112c40}.modal.large{max-width:1000px}.modalhead{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:22px;display:flex}.modalhead h2{letter-spacing:-.3px;margin:0;font-size:19px}.iconbtn{color:var(--muted);background:0 0;border:0;padding:5px}.secret{overflow-wrap:anywhere;color:var(--violet);background:#f5f0fa;border-radius:9px;margin:20px 0;padding:20px;font-family:monospace;font-size:18px}.mobilemenu{display:none}.reportbar{background:#eee9f4;border-radius:8px;height:7px;margin:8px 0 15px;overflow:hidden}.reportbar i{background:var(--violet);border-radius:8px;height:100%;display:block}.footer{text-align:center;color:#a29aab;margin:35px 0 6px;font-size:10px}.kpirow{flex-wrap:wrap;gap:35px;margin-bottom:22px;display:flex}.kpirow strong{margin-top:8px;font-size:23px;display:block}.kpirow small{color:var(--muted);font-size:10px}.menuoverlay{display:none}.dangertext{color:#a2394c}.currency{white-space:nowrap}.reporttitle{display:none}.subtle{background:#fbf9fd}.divider{border:0;border-top:1px solid var(--line);margin:24px 0}@media (width>=1450px){.content{padding:38px 48px}.cards{gap:21px}.metric{padding:25px}.topbar{padding:0 48px}}@media (width<=1100px){.app{grid-template-columns:215px 1fr}.sidebar{width:215px}.content{padding:25px}.topbar{padding:0 25px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.split{grid-template-columns:1fr}.navitem{font-size:11px}}@media (width<=760px){.login{grid-template-columns:1fr}.loginbrand{min-height:245px;padding:24px}.loginpitch{padding:25px 0 10px}.wordmark{letter-spacing:-2px;font-size:45px}.loginpitch h1{margin:10px 0;font-size:20px}.loginbrand p,.loginbrand small,.brandline{display:none}.brandtop .seal{width:40px;height:40px}.loginpanel{padding:35px 24px}.logincard h2{font-size:30px}.app{display:block}.sidebar{transition:transform .2s;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.menuoverlay.open{z-index:19;background:#27133280;display:block;position:fixed;inset:0}.main{width:100%}.topbar{gap:12px;height:69px;padding:0 17px}.mobilemenu{display:block}.topright .time{display:none}.crumb{flex:1}.content{padding:24px 17px}.heading{align-items:flex-start}.heading h1{font-size:23px}.heading .btn{padding:10px;font-size:11px}.cards{gap:10px}.metric{padding:15px}.metric strong{font-size:24px}.metrichead{font-size:10px}.metricicon{width:27px;height:27px}.panelhead,.padded{padding:17px}.grid2{grid-template-columns:1fr}.heading p{font-size:11px}.toolbar{padding:14px}.tablewrap td,.tablewrap th{padding:13px}.modalback{padding:12px}.badge{font-size:8px}.sectiontitle{margin-top:8px}.loginlinks{flex-wrap:wrap}}@media print{body{color:#000;background:#fff;font-size:10px}.sidebar,.topbar,.banner,.heading .btn,.toolbar button,.actionrow,.footer,.no-print,.modalback{display:none!important}.app{display:block}.main{width:100%}.content{max-width:none;padding:0}.panel{break-inside:auto;border:0}.panelhead{padding:12px 0}.tablewrap{overflow:visible}table{font-size:9px}td,th{padding:7px!important}.badge{border:1px solid #aaa;color:#000!important;background:0 0!important}.reporttitle{display:block}.cards{grid-template-columns:repeat(3,1fr)}.metric{box-shadow:none;break-inside:avoid;padding:10px}.metric strong{font-size:21px}.heading{margin-bottom:14px}@page{size:A4 landscape;margin:15mm}:is(.app:has(.modalback)>.main,.app:has(.modalback)>.sidebar){display:none!important}.app>.modalback{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#fff!important;padding:0!important;display:block!important;position:static!important}.modal{border-radius:0;width:100%!important;max-width:none!important;max-height:none!important;box-shadow:none!important;overflow:visible!important}.modalhead .iconbtn,.modalback form,.modalback .secret{display:none!important}}.accessbar{background:#f2edf8;border:1px solid #d9cbe8;border-radius:9px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:22px;padding:13px 15px;font-size:11px;line-height:1.6;display:flex}.accessbar>div,.authorization-note{align-items:center;gap:9px;display:flex}.accessbar.authorized{color:#29684f;background:#edf7f1;border-color:#cde7db}.authorization-note{color:#665173;background:#f5f1fa;border-radius:8px;margin-bottom:18px;padding:13px;font-size:12px;line-height:1.6}.accessbar svg,.authorization-note svg{flex-shrink:0}@media (width<=760px){.accessbar{flex-direction:column;align-items:flex-start}}@media print{.accessbar,.authorization-note{display:none!important}}
