.app{--side:256px;--side-mini:72px;--top:60px;--app-bg:#F3F5F9;--side-bg:#0D1F3C;--side-fg:#B9C6DC;--side-hi:#FFFFFF;--side-act:#1E4C9A;display:grid;grid-template-columns:var(--side) minmax(0,1fr);min-height:100vh;background:var(--app-bg)}@media (min-width:1025px){.app.mini{grid-template-columns:var(--side-mini) minmax(0,1fr)}}.app-side{position:-webkit-sticky;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;background:var(--side-bg);color:var(--side-fg);z-index:40}.app-brand{justify-content:space-between;gap:6px;padding:14px 12px 10px 16px}.app-brand,.app-logo{display:flex;align-items:center}.app-logo{gap:10px;color:#fff;min-width:0}.app-logo:hover{text-decoration:none}.app-logo-mark{width:36px;height:36px;flex:none;border-radius:10px;display:grid;place-items:center;font:800 20px/1 var(--font-heading,inherit);color:#fff;background:linear-gradient(135deg,#2F7BEA,#0B4EA2 60%,#C99A35 140%);box-shadow:0 4px 12px rgba(0,0,0,.25)}.app-logo-t{display:grid;line-height:1.15;min-width:0}.app-logo-t b{font-size:16px;letter-spacing:.04em}.app-logo-t small{font-size:11.5px;color:var(--side-fg);white-space:nowrap}.app-collapse{background:none;border:0;color:var(--side-fg);width:30px;height:30px;border-radius:8px;display:grid;place-items:center;cursor:pointer;flex:none}.app-collapse:hover{background:rgba(255,255,255,.08);color:#fff}.app.mini .app-collapse svg{transform:rotate(180deg)}.app-org{margin:2px 12px 8px;display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.06);color:#E4EBF7;font-size:13px;font-weight:600;min-width:0}.app-org span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-org select{width:100%;background:transparent;color:#E4EBF7;border:0;font:inherit;font-weight:600;cursor:pointer;outline:none}.app-org select option{color:#172B4D}.app-nav{flex:1 1;overflow-y:auto;padding:4px 10px 8px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent}.app-ng{margin-top:10px}.app-ngh{gap:6px;margin:0 0 4px;padding:0 8px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7D8DA8}.app-ngh,.app-nl{display:flex;align-items:center}.app-nl{position:relative;gap:11px;padding:8px 10px;border-radius:9px;color:var(--side-fg);font-size:14px;font-weight:500;white-space:nowrap}.app-nl:hover{background:rgba(255,255,255,.07);color:#fff;text-decoration:none}.app-nl.on{background:var(--side-act);color:#fff;font-weight:600;box-shadow:inset 3px 0 0 #6FA8FF}.app-nl svg{flex:none}.app-nl span{overflow:hidden;text-overflow:ellipsis}.app-side-foot{padding:8px 10px 12px;border-top:1px solid rgba(255,255,255,.08)}.app-badge{margin-left:auto;font-style:normal;font-size:11px;font-weight:700;background:#E5484D;color:#fff;border-radius:999px;padding:1px 7px}@media (min-width:1025px){.app.mini .app-badge,.app.mini .app-logo-t,.app.mini .app-ngh span,.app.mini .app-nl span,.app.mini .app-org select,.app.mini .app-org span{display:none}.app.mini .app-brand{flex-direction:column;padding:14px 8px 6px}.app.mini .app-nl{justify-content:center;padding:10px}.app.mini .app-ngh{justify-content:center;padding:0}.app.mini .app-ngh svg{opacity:.5}.app.mini .app-org{justify-content:center;padding:8px;margin:2px 10px 6px}}.app-main{min-width:0;display:flex;flex-direction:column}.app-top{position:-webkit-sticky;position:sticky;top:0;z-index:30;height:var(--top);display:flex;align-items:center;gap:14px;padding:0 20px;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid #e3e8f0}.app-burger{display:none!important}.app-crumb{display:grid;line-height:1.2;min-width:0;flex:0 1 auto}.app-crumb span{font-size:11.5px;color:var(--c-muted);font-weight:600}.app-crumb b{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-search{position:relative;flex:1 1;max-width:520px;margin:0 auto;display:flex;align-items:center;gap:8px;height:40px;padding:0 12px;background:#F1F4F9;border:1px solid transparent;border-radius:10px;color:var(--c-muted)}.app-search.open,.app-search:focus-within{background:#fff;border-color:#BFD3F2;box-shadow:0 0 0 3px rgba(23,105,210,.12)}.app-search input{flex:1 1;border:0;background:transparent;font:inherit;font-size:14px;color:var(--c-text);outline:none;min-width:0}.app-search-list{position:absolute;left:0;right:0;top:calc(100% + 6px);list-style:none;margin:0;padding:6px;background:#fff;border:1px solid #e3e8f0;border-radius:12px;box-shadow:0 16px 40px rgba(13,31,60,.16);max-height:420px;overflow-y:auto}.app-search-list a{display:grid;grid-template-columns:auto 1fr;grid-column-gap:10px;column-gap:10px;align-items:center;padding:8px 10px;border-radius:8px;color:var(--c-text)}.app-search-list a small{grid-column:2;color:var(--c-muted);font-size:12px}.app-search-list a.on,.app-search-list a:hover{background:#EEF4FF;text-decoration:none}.app-search-list .app-tile-i{grid-row:span 2}.app-top-r{display:flex;align-items:center;gap:8px;margin-left:auto}.app-ib{position:relative;width:40px;height:40px;display:grid;place-items:center;border-radius:10px;color:var(--c-text);background:none;border:0;cursor:pointer}.app-ib:hover{background:#F1F4F9}.app-dot{position:absolute;top:4px;right:3px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:#E5484D;color:#fff;font-size:10.5px;font-weight:700;line-height:14px;font-style:normal;text-align:center;border:2px solid #fff}.app-new{display:flex;align-items:center;gap:6px;height:38px;padding:0 14px;border-radius:10px;border:0;background:var(--c-brand);color:#fff;font:inherit;font-size:14px;font-weight:600;cursor:pointer}.app-new:hover{background:var(--c-brand-dark)}.app-user{width:38px;height:38px;border-radius:50%;border:2px solid #e3e8f0;padding:0;overflow:hidden;background:var(--c-brand-light);color:var(--c-brand);font-weight:700;cursor:pointer;display:grid;place-items:center}.app-user img{width:100%;height:100%;object-fit:cover}.app-pop{position:relative}.app-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;padding:6px;background:#fff;border:1px solid #e3e8f0;border-radius:12px;box-shadow:0 16px 40px rgba(13,31,60,.16);z-index:50}.app-menu a,.app-menu button{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border-radius:8px;color:var(--c-text);background:none;border:0;font:inherit;font-size:14px;cursor:pointer;text-align:left}.app-menu a:hover,.app-menu button:hover{background:#F1F4F9;text-decoration:none}.app-menu svg{color:var(--c-muted)}.app-menu-h{display:grid;padding:8px 10px 10px;border-bottom:1px solid #eef1f6;margin-bottom:4px}.app-menu-h small{color:var(--c-muted)}.app-content{padding:22px 26px 40px;flex:1 1;min-width:0}.app-content>.container{max-width:none;padding:0}.app-scrim,.app-tabs{display:none}.app-page .account-main{min-width:0}.app .breadcrumb{display:none}.app .ofc-nav{background:transparent}@media (max-width:1024px){.app,.app.mini{grid-template-columns:minmax(0,1fr)}.app-side{position:fixed;inset:0 auto 0 0;width:280px;transform:translateX(-100%);transition:transform .2s ease;box-shadow:0 0 40px rgba(0,0,0,.3)}.app.drawer .app-side{transform:none}.app.drawer .app-scrim{display:block;position:fixed;inset:0;background:rgba(13,31,60,.45);z-index:35}.app-collapse{display:none}.app-burger{display:grid!important}.app-top{padding:0 12px;gap:8px}.app-crumb span,.app-new span,.app-search{display:none}.app-new{padding:0 10px}.app-content{padding:16px 14px 90px}.app-tabs{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fff;border-top:1px solid #e3e8f0;padding:6px 4px calc(6px + env(safe-area-inset-bottom))}.app-tabs a,.app-tabs button{display:grid;justify-items:center;grid-gap:2px;gap:2px;color:#6B778C;font:inherit;font-size:11px;font-weight:600;background:none;border:0;padding:4px 0;cursor:pointer}.app-tabs a.on{color:var(--c-brand)}.app-tabs a:hover{text-decoration:none}}@media print{.app-side,.app-tabs,.app-top{display:none!important}.app{display:block;background:#fff}.app-content{padding:0}}.ah-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:18px;gap:18px;align-items:center;padding:22px 24px;border-radius:16px;color:#fff;background:radial-gradient(120% 140% at 100% 0,#2F7BEA 0,#0B4EA2 45%,#0D1F3C 100%);box-shadow:0 10px 30px rgba(11,78,162,.25)}.ah-hero h1{color:#fff;font-size:26px;margin:0 0 4px}.ah-hero p{margin:0;color:#D3E1F8}.ah-hero-r{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.ah-pill{display:grid;grid-gap:2px;gap:2px;min-width:120px;padding:10px 14px;border-radius:12px;background:rgba(255,255,255,.12);color:#fff}.ah-pill:hover{background:rgba(255,255,255,.2);text-decoration:none}.ah-pill small{color:#C6D6F2;font-size:12px}.ah-pill b{font-size:20px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ah-row{display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-gap:18px;gap:18px;margin-top:18px;align-items:start}.ah-card{background:#fff;border:1px solid #e3e8f0;border-radius:14px;padding:18px}.ah-card+.ah-card{margin-top:18px}.ah-h{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:0 0 12px}.ah-h h2{font-size:16px;margin:0}.ah-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));grid-gap:6px;gap:6px}.app-tile{display:grid;justify-items:center;grid-gap:8px;gap:8px;padding:14px 6px 12px;border-radius:12px;color:var(--c-text);text-align:center;font-size:13px;font-weight:600;line-height:1.3}.app-tile:hover{background:#F3F6FB;text-decoration:none}.app-tile:hover .app-tile-i{transform:translateY(-2px);box-shadow:0 8px 18px rgba(13,31,60,.18)}.app-tile-i{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;color:#fff;transition:transform .15s,box-shadow .15s;box-shadow:0 4px 10px rgba(13,31,60,.12)}.app-tile-i.sm{width:30px;height:30px;border-radius:8px;box-shadow:none}.ah-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:0 0 12px}.ah-tabs button{flex:none;border:1px solid #e3e8f0;background:#fff;color:var(--c-text);border-radius:999px;padding:6px 13px;font:inherit;font-size:13px;font-weight:600;cursor:pointer}.ah-tabs button.on{background:var(--c-brand);color:#fff;border-color:var(--c-brand)}.ah-list{list-style:none;margin:0;padding:0}.ah-list li{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px solid #eef1f6}.ah-list li:last-child{border-bottom:0}.ah-list .ah-li-t{flex:1 1;min-width:0;display:grid}.ah-list .ah-li-t a{color:var(--c-text);font-weight:600;overflow-wrap:anywhere}.ah-list .ah-li-t small{color:var(--c-muted);font-size:12.5px}.ah-tag{flex:none;font-size:11.5px;font-weight:700;padding:2px 8px;border-radius:999px;background:#EEF2F7;color:#4A5568}.ah-tag.red{background:#FDECEC;color:#C62828}.ah-tag.amber{background:#FFF3DC;color:#9A5B00}.ah-tag.green{background:#E6F5EC;color:#18864B}.ah-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.ah-kpi{display:grid;grid-gap:2px;gap:2px;padding:12px;border-radius:12px;background:#F6F8FC;color:var(--c-text)}.ah-kpi:hover{background:#EEF4FF;text-decoration:none}.ah-kpi small{color:var(--c-muted);font-size:12px;font-weight:600}.ah-kpi b{font-size:18px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ah-kpi.red b{color:#C62828}.ah-punch .ofc-clock{font-size:34px}@media (max-width:1100px){.ah-row{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.ah-hero{grid-template-columns:minmax(0,1fr);padding:18px}.ah-hero h1{font-size:21px}.ah-hero-r{justify-content:flex-start}.ah-pill{min-width:0;flex:1 1 40%}.ah-tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:2px}.app-tile{font-size:11.5px;padding:10px 2px;gap:6px}.app-tile-i{width:46px;height:46px;border-radius:13px}}.appbare{min-height:100vh;grid-template-rows:auto 1fr auto;padding:28px 16px;background:radial-gradient(100% 80% at 50% 0,#1E4C9A 0,#0D1F3C 70%)}.appbare,.appbare-brand{display:grid;justify-items:center}.appbare-brand{grid-gap:6px;gap:6px;color:#fff;margin-bottom:18px}.appbare-brand b{font-size:22px;letter-spacing:.05em}.appbare-brand>span:last-child{color:#B9C6DC;font-size:14px}.appbare-brand .app-logo-mark{width:56px;height:56px;font-size:30px;border-radius:16px}.appbare-body{width:100%;max-width:480px}.appbare-body .container{padding:0;max-width:none}.appbare-body .auth-card,.appbare-body>*>.card{box-shadow:0 20px 50px rgba(0,0,0,.35)}.appbare-foot{margin:18px 0 0}.appbare-foot a{color:#B9C6DC;font-size:13px}@media (max-width:640px){.ah-h .meta:only-child,.ah-h>span.meta{display:none}}