@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_Fallback_f367f3;src:local("Arial");ascent-override:90.49%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:107.06%}.__className_f367f3{font-family:__Inter_f367f3,__Inter_Fallback_f367f3;font-style:normal}.__variable_f367f3{--font-body:"__Inter_f367f3","__Inter_Fallback_f367f3"}@font-face{font-family:__Playfair_Display_0a80b4;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/47f136985ef5b5cb-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Playfair_Display_0a80b4;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/4ead58c4dcc3f285-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Playfair_Display_0a80b4;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/28a2004cf8372660-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Playfair_Display_0a80b4;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/eaead17c7dbfcd5d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Playfair_Display_Fallback_0a80b4;src:local("Times New Roman");ascent-override:97.25%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:111.26%}.__className_0a80b4{font-family:__Playfair_Display_0a80b4,__Playfair_Display_Fallback_0a80b4;font-style:normal}.__variable_0a80b4{--font-heading:"__Playfair_Display_0a80b4","__Playfair_Display_Fallback_0a80b4"}:root{--primary:#c7050f;--primary-dark:#a50410;--primary-light:#e0161f;--secondary:#1d1d1b;--secondary-light:#333331;--dark:#111110;--text:#1d1d1b;--text-light:#575756;--text-muted:#ab917a;--gold:#c9a84c;--white:#fff;--light:#f8f9fa;--light-gray:#e9ecef;--border:#dee2e6;--success:#28a745;--shadow-sm:0 2px 8px rgba(0,0,0,.08);--shadow-md:0 4px 20px rgba(0,0,0,.12);--font-heading:"Playfair Display",Georgia,serif;--font-body:"Inter",-apple-system,BlinkMacSystemFont,Arial,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:var(--font-body);background:var(--light);color:var(--text)}.brand,.pagetitle,h1,h2{font-family:var(--font-heading)}.wrap{max-width:520px;margin:0 auto;padding:16px}.card{background:var(--white);border-radius:12px;padding:18px;margin-bottom:14px;box-shadow:var(--shadow-sm);border:1px solid var(--border)}h1{font-size:22px;margin:4px 0 2px}h1,h2{color:var(--secondary)}h2{font-size:16px;margin:0 0 10px;font-family:var(--font-body);font-weight:700}.muted{color:var(--text-light);font-size:13px}.tabs{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.tab{flex:1 1;padding:10px;text-align:center;background:var(--light-gray);border-radius:8px;cursor:pointer;font-size:14px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tab.active,button{background:var(--primary);color:#fff}button{border:0;padding:12px 16px;border-radius:8px;font-size:15px;cursor:pointer;width:100%;font-family:inherit;transition:background .2s}button:hover{background:var(--primary-dark)}button.ghost{background:var(--light-gray);color:var(--text)}button.ghost:hover{background:var(--border)}button.green{background:var(--success)}button.green:hover{background:#1f8838}button.red{background:var(--primary)}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{width:100%;padding:10px;border:1px solid var(--border);border-radius:8px;font-size:14px;margin-bottom:10px;font-family:inherit;background:#fff}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary)}.pill{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700}.pill.green{background:#e6f6ec;color:#1f7a37}.pill.red{background:#fde7e8;color:var(--primary-dark)}.pill.gray{background:var(--light-gray);color:var(--text-light)}.row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--light-gray);gap:10px}.row:last-child{border-bottom:0}.big{font-size:18px;font-weight:700}.note{font-size:12px;color:var(--text-light);margin-top:6px}.err{color:var(--primary-dark)}.center{text-align:center}a{color:var(--primary)}.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}table.att{width:100%;border-collapse:collapse;font-size:13px;min-width:460px}table.att td,table.att th{padding:8px 10px;text-align:left;border-bottom:1px solid var(--light-gray);white-space:nowrap}table.att th{background:var(--light);color:var(--text);font-weight:700;position:-webkit-sticky;position:sticky;top:0}table.att tr:nth-child(2n) td{background:#fcfcfd}.late-row td{background:#fde7e8!important}.btnrow{display:flex;gap:8px}.btnrow button{width:auto;flex:1 1}.app{display:flex;min-height:100vh}.sidebar{width:234px;background:var(--secondary);color:#e7e5e4;flex-shrink:0;position:-webkit-sticky;position:sticky;top:0;height:100vh;padding:14px 10px;overflow-y:auto}.brand{font-size:18px;color:#fff;padding:10px 12px 14px;border-bottom:1px solid var(--secondary-light);margin-bottom:10px}.brand b{color:var(--gold)}.brandlogo{height:42px;width:auto;display:block}.topbar img{height:26px;width:auto}.splashlogo{height:60px;width:auto;margin:0 auto 10px;display:block}.login-page{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 16px;background:radial-gradient(1100px 520px at 50% -8%,rgba(201,168,76,.2),transparent 62%),radial-gradient(800px 500px at 110% 110%,rgba(199,5,15,.3),transparent 60%),linear-gradient(160deg,#1d1d1b,#271012 52%,#5c0509 130%)}.login-card{width:100%;max-width:384px;background:#fff;border-radius:20px;padding:32px 24px 26px;text-align:center;border-top:4px solid var(--gold);box-shadow:0 24px 64px rgba(0,0,0,.45);animation:loginUp .5s cubic-bezier(.2,.7,.2,1)}@keyframes loginUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.login-logo{margin-bottom:16px}.login-logo img{height:56px;width:auto}.login-title{font-family:var(--font-heading);font-size:25px;color:var(--secondary);margin:0 0 3px;line-height:1.15}.login-tag{color:var(--gold);font-size:11.5px;letter-spacing:1.5px;text-transform:uppercase;font-weight:700;margin:0 0 24px}.login-form{text-align:left}.login-form label{display:block;font-size:12.5px;font-weight:600;color:var(--text-light);margin:0 0 6px 2px}.login-form input{width:100%;padding:13px 15px;font-size:16px;border:1.5px solid var(--border);border-radius:12px;margin-bottom:16px;background:var(--light);color:var(--text);transition:border-color .15s,box-shadow .15s,background .15s}.login-form input:focus{outline:none;border-color:var(--primary);background:#fff;box-shadow:0 0 0 3px rgba(199,5,15,.12)}.login-form button{width:100%;padding:14px;font-size:16px;font-weight:700;border-radius:12px;margin-top:4px;background:linear-gradient(180deg,var(--primary-light),var(--primary));box-shadow:0 10px 22px rgba(199,5,15,.3)}.login-form button:hover{background:linear-gradient(180deg,var(--primary),var(--primary-dark))}.login-form button:active{transform:translateY(1px)}.login-form button:disabled{box-shadow:none;opacity:.7}.login-err{margin-top:14px;background:#fde7e8;color:var(--primary-dark);font-size:13px;padding:11px 13px;border-radius:11px;text-align:left}.login-foot{margin-top:20px;font-size:12px;color:var(--text-light)}.login-copyright{margin-top:22px;color:hsla(0,0%,100%,.55);font-size:11.5px;letter-spacing:.4px}@media (max-width:380px){.login-card{padding:28px 18px 22px}.login-title{font-size:23px}}.navitem{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;cursor:pointer;color:#cfccc9;font-size:14px;margin-bottom:2px}.navitem:hover{background:var(--secondary-light);color:#fff}.navitem.active{background:var(--primary);color:#fff}.navicon{width:20px;text-align:center}.sideuser{margin-top:14px;padding:10px 12px;border-top:1px solid var(--secondary-light);font-size:12px;color:#9b9794}.badge{margin-left:auto;background:var(--primary);color:#fff;border-radius:999px;font-size:11px;font-weight:700;min-width:20px;height:20px;display:inline-flex;padding:0 6px}.badge,.modal-overlay{align-items:center;justify-content:center}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:60;display:flex;padding:16px}.modal{background:#fff;border-radius:14px;padding:22px;width:100%;max-width:420px;position:relative;box-shadow:var(--shadow-md)}.modal-x{position:absolute;top:12px;right:14px;cursor:pointer;font-size:16px;color:var(--text-light)}.bar-row{margin-bottom:10px}.bar-top{display:flex;justify-content:space-between;font-size:13px;margin-bottom:3px}.bar-track{background:#efeceb;overflow:hidden}.bar-fill,.bar-track{height:10px;border-radius:5px}.main{flex:1 1;min-width:0}.content{max-width:1000px;margin:0 auto;padding:18px}.appbar{justify-content:space-between;gap:12px;background:#fff;border-bottom:1px solid var(--border);padding:10px 16px;position:-webkit-sticky;position:sticky;top:0;z-index:40}.appbar,.appbar-left{display:flex;align-items:center}.appbar-left{gap:10px}.appbar-logo{display:none;height:26px;width:auto}.appbar-user{display:flex;align-items:center;gap:10px}.appbar-name{line-height:1.2}.appbar-name,.appbar-who{font-size:13px;font-weight:700}.appbar-who{display:flex;align-items:center;gap:6px}.rolebadge{background:var(--primary);color:#fff;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:2px 8px;border-radius:999px}.hamburger{display:none;font-size:22px;cursor:pointer;line-height:1}.pagetitle{font-size:24px;font-weight:700;margin:4px 0 16px;color:var(--secondary)}.grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.statline{display:flex;gap:10px;flex-wrap:wrap}.stat{flex:1 1;min-width:120px;background:#fff;border-radius:12px;padding:14px;box-shadow:var(--shadow-sm);border:1px solid var(--border);border-top:3px solid var(--gold)}.stat .n{font-size:26px;font-weight:700;color:var(--primary);font-family:var(--font-heading)}.stat .l{font-size:12px;color:var(--text-light)}.stat .si{font-size:20px;margin-bottom:2px}.avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;background:var(--light-gray);display:inline-flex;align-items:center;justify-content:center;font-weight:700;color:var(--secondary);flex-shrink:0}.avatar.lg{width:84px;height:84px;font-size:28px}.clickrow{cursor:pointer}.clickrow:hover{background:var(--light)}.tree{padding-left:0;margin:0}.tree,.tree ul{list-style:none}.tree ul{margin:6px 0 0;padding-left:22px;border-left:2px solid var(--light-gray)}.tree li{padding:5px 0;position:relative}.tree ul li:before{content:"";position:absolute;left:-22px;top:22px;width:16px;height:2px;background:var(--light-gray)}.tree .node{display:inline-flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--border);border-radius:10px;padding:7px 12px;font-size:13px;font-weight:600;box-shadow:var(--shadow-sm);transition:.15s}.tree .node:hover{border-color:var(--primary);box-shadow:var(--shadow-md)}.tree .node .avatar{width:30px;height:30px;font-size:12px}.orgchart{display:inline-block;padding:10px 4px}.orgchart ul{display:flex;justify-content:center;padding-top:24px;margin:0}.orgchart li,.orgchart ul{position:relative;list-style:none}.orgchart li{text-align:center;padding:24px 10px 0}.orgchart li:after,.orgchart li:before{content:"";position:absolute;top:0;right:50%;border-top:2px solid var(--border);width:50%;height:24px}.orgchart li:after{right:auto;left:50%;border-left:2px solid var(--border)}.orgchart li:only-child:after,.orgchart li:only-child:before{display:none}.orgchart li:only-child{padding-top:0}.orgchart li:first-child:before,.orgchart li:last-child:after{border:0}.orgchart li:last-child:before{border-right:2px solid var(--border);border-radius:0 6px 0 0}.orgchart li:first-child:after{border-radius:6px 0 0 0}.orgchart ul ul:before{content:"";position:absolute;top:0;left:50%;border-left:2px solid var(--border);width:0;height:24px}.orgchart .node{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--border);border-radius:10px;padding:8px 12px;box-shadow:var(--shadow-sm);cursor:pointer;transition:.15s;text-align:left;white-space:nowrap}.orgchart .node:hover{border-color:var(--primary);box-shadow:var(--shadow-md)}.orgchart .node.lvl0{border-color:var(--primary);border-width:2px}.orgchart .node .avatar{width:30px;height:30px;font-size:12px}.indtree{font-size:13px}.indtree ul{list-style:none;margin:0;padding-left:28px;border-left:2px solid var(--gold)}.indtree>ul{padding-left:0;border-left:0}.indtree li{position:relative;padding:5px 0}.indtree ul li:before{content:"";position:absolute;left:-28px;top:19px;width:22px;height:2px;background:var(--gold);border-bottom-left-radius:6px}.indtree>ul>li:before{display:none}.indtree .node{display:inline-flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--border);border-radius:10px;padding:7px 12px;box-shadow:var(--shadow-sm);cursor:pointer;transition:.15s;max-width:100%}.indtree .node:hover{border-color:var(--primary);box-shadow:var(--shadow-md);transform:translateX(2px)}.indtree .node.lvl0{border-color:var(--primary);border-width:2px;background:#fff7f7}.indtree .node.lvl1{border-left:3px solid var(--gold)}.indtree .node .avatar{width:30px;height:30px;font-size:12px}.dir-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-gap:12px;gap:12px}.dir-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px;cursor:pointer;transition:.15s;display:flex;gap:12px;align-items:center}.dir-card:hover{border-color:var(--primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.dir-card .nm{font-weight:700;font-size:14px}.dept-pill{display:inline-block;background:var(--light-gray);color:var(--text-light);font-size:11px;padding:2px 8px;border-radius:999px;margin-top:4px}@media (max-width:820px){.sidebar{position:fixed;left:-244px;transition:left .2s ease;z-index:50}.sidebar.open{left:0}.hamburger{display:inline}.appbar-logo{display:block}.appbar-who{font-size:12px}.backdrop{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:45}.grid{grid-template-columns:1fr}}