@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";
:root{--bg-dark:#0f172a;--bg-darker:#020617;--text-main:#f1f5f9;--text-muted:#94a3b8;--accent:#3b82f6;--accent-hover:#2563eb;--accent-subtle:#3b82f614;--danger:#ef4444;--success:#10b981;--warning:#f59e0b;--glass-bg:#1e293ba6;--glass-bg-elevated:#1e293bd1;--glass-border:#ffffff14;--glass-border-hover:#ffffff26;--glass-shadow:0 8px 32px #00000073;--glass-shadow-lg:0 16px 48px #0009;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:20px;--radius-full:9999px}*{box-sizing:border-box;margin:0;padding:0;font-family:Outfit,sans-serif}body{background-color:var(--bg-darker);color:var(--text-main);min-height:100vh;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;background-image:radial-gradient(80% 50% at 15%,#3b82f61f,#0000),radial-gradient(60% 40% at 85% 20%,#10b98112,#0000),radial-gradient(70% 60% at 50% 100%,#8b5cf60d,#0000);min-height:-webkit-fill-available;margin:0;padding:0;overflow-x:hidden}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px)saturate(1.2);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:var(--radius-lg);transition:border-color .2s,box-shadow .2s}.glass-panel:hover{border-color:var(--glass-border-hover)}.glass-panel-elevated{background:var(--glass-bg-elevated);-webkit-backdrop-filter:blur(20px)saturate(1.3);border:1px solid var(--glass-border-hover);box-shadow:var(--glass-shadow-lg);border-radius:var(--radius-lg)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.4s ease-out forwards fadeIn}::-webkit-scrollbar{width:8px}.org-tree-node{text-align:center;color:#fff;cursor:pointer;background:linear-gradient(145deg,#1e293bf2,#0f172afa);border:1px solid #ffffff1a;border-radius:14px;min-width:170px;max-width:200px;padding:2.2rem 1.2rem 1rem;font-family:Outfit,system-ui,sans-serif;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s,border-color .25s;position:relative;box-shadow:0 4px 20px #0006,inset 0 1px #ffffff0f}.org-tree-node:hover{box-shadow:0 12px 40px #00000080, 0 0 0 1px var(--dept-color,#3b82f666);border-color:var(--dept-color,#3b82f666);transform:translateY(-4px)scale(1.03)}.org-tree-avatar-wrapper{position:absolute;top:-28px;left:50%;transform:translate(-50%)}.org-node-gear-btn{color:#94a3b8;cursor:pointer;z-index:10;background:#0f172abf;border:1px solid #ffffff26;border-radius:7px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:8px;right:8px;box-shadow:0 2px 6px #0000004d}.org-node-gear-btn:hover{color:#fff;background:#3b82f64d;border-color:#60a5fa99;transform:rotate(45deg)scale(1.12);box-shadow:0 0 10px #3b82f680}.org-node-gear-btn:active{transform:rotate(90deg)scale(.95)}.org-tree-avatar-img,.org-tree-avatar-placeholder{border:3px solid var(--dept-color,#3b82f6);border-radius:50%;width:56px;height:56px;box-shadow:0 4px 16px #00000080}.org-tree-avatar-img{object-fit:cover}.org-tree-avatar-placeholder{background:linear-gradient(135deg, var(--dept-color,#3b82f6), #3b82f699);color:#fff;text-shadow:0 1px 3px #0000004d;justify-content:center;align-items:center;font-size:1.3rem;font-weight:700;display:flex}.org-tree-level-badge{border:2px solid var(--dept-color,#3b82f6);width:22px;height:22px;color:var(--dept-color,#3b82f6);background:#0f172a;border-radius:50%;justify-content:center;align-items:center;font-size:.7rem;font-weight:700;display:flex;position:absolute;bottom:-4px;right:-4px}.org-tree-body{margin-top:.6rem}.org-tree-name{white-space:nowrap;text-overflow:ellipsis;margin-bottom:.25rem;font-size:.95rem;font-weight:600;line-height:1.2;overflow:hidden}.org-tree-dept{opacity:.85;letter-spacing:.02em;font-size:.75rem;font-weight:500}.org-tree-color-bar{opacity:.7;border-radius:0 0 14px 14px;height:3px;transition:opacity .2s;position:absolute;bottom:0;left:12px;right:12px}.org-tree-node:hover .org-tree-color-bar{opacity:1}.org-tree-handle{background:#334155!important;border:2px solid #ffffff40!important;border-radius:50%!important;width:10px!important;height:10px!important;transition:all .2s!important}.org-tree-handle:hover{background:var(--accent,#3b82f6)!important;border-color:#fff!important;transform:scale(1.4)!important;box-shadow:0 0 12px #3b82f699!important}.org-tree-handle-top{top:-5px!important}.org-tree-handle-bottom{bottom:-5px!important}.react-flow__edge-path{stroke:#94a3b859!important;stroke-width:2px!important}.react-flow__edge.animated .react-flow__edge-path{stroke-dasharray:5!important;animation:.5s linear infinite dashdraw!important}@keyframes dashdraw{to{stroke-dashoffset:-10px}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.react-flow{min-height:420px;width:100%!important;height:100%!important}.react-flow__pane{-webkit-user-select:none;user-select:none;touch-action:none!important}.react-flow__viewport{touch-action:none}@media (max-width:768px){.mobile-hide-text{display:none!important}}.sidebar-mobile-toggle,.mobile-app-header,.mobile-bottom-nav,.sidebar-mobile-overlay,.sidebar-mobile-open{display:none}@media (max-width:768px){html,body{touch-action:manipulation;overflow-x:hidden}input,select,textarea{font-size:16px!important}.sidebar-desktop{display:none!important}.mobile-app-header{z-index:850;-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--glass-border);padding:max(.95rem, calc(.75rem + env(safe-area-inset-top,0px))) 1rem .65rem 1rem;background:#0f172af2;justify-content:space-between;align-items:center;gap:.6rem;min-height:54px;display:flex;position:sticky;top:0;left:0;right:0}.mobile-header-left{align-items:center;gap:.5rem;min-width:0;display:flex}.mobile-header-brand{color:var(--accent);flex-shrink:0;align-items:center;gap:.35rem;font-size:1.05rem;font-weight:700;display:flex}.mobile-header-company-pill{color:#93c5fd;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:#3b82f61f;border:1px solid #3b82f647;border-radius:6px;align-items:center;gap:.3rem;max-width:135px;padding:.25rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex;overflow:hidden}.mobile-header-menu-btn{border:1px solid var(--glass-border);width:34px;height:34px;color:var(--text-main);cursor:pointer;background:#ffffff0f;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.mobile-header-menu-btn:active{background:#3b82f633;transform:scale(.94)}.mobile-bottom-nav{z-index:950;-webkit-backdrop-filter:blur(20px);padding:.35rem .25rem calc(.35rem + env(safe-area-inset-bottom,8px)) .25rem;background:#0f172af5;border-top:1px solid #ffffff1a;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #00000080}.mobile-bottom-nav-item{color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:.18rem;min-width:58px;padding:.3rem 0;font-size:.68rem;font-weight:500;text-decoration:none;transition:all .15s;display:flex;position:relative}.mobile-bottom-nav-item:active{transform:scale(.92)}.mobile-bottom-nav-item.active{color:#60a5fa;font-weight:700}.mobile-bottom-nav-item.active svg{color:#3b82f6;filter:drop-shadow(0 0 6px #3b82f699)}.mobile-bottom-nav-badge{color:#fff;background:#ef4444;border-radius:8px;padding:.05rem .3rem;font-size:.62rem;font-weight:700;line-height:1;position:absolute;top:0;right:12px}.sidebar-mobile-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:998;background:#000000a6;width:100vw;height:100vh;animation:.2s fadeIn;display:block;position:fixed;top:0;left:0}.sidebar-mobile-open{z-index:999;width:min(320px,85vw);height:100vh;animation:.28s cubic-bezier(.16,1,.3,1) slideInLeft;top:0;left:0;padding-top:max(1.5rem, env(safe-area-inset-top,0px))!important;padding-bottom:max(1.5rem, env(safe-area-inset-bottom,0px))!important;display:flex!important;position:fixed!important}.sidebar-mobile-open #btn-close-sidebar{display:flex!important}}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:.6rem;display:flex;position:fixed;bottom:1.5rem;right:1.5rem}.toast-item{pointer-events:auto;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--glass-border);color:var(--text-main);background:#0f172af2;border-radius:10px;align-items:center;gap:.75rem;min-width:280px;max-width:420px;padding:.85rem 1.1rem;font-size:.88rem;font-weight:500;display:flex;box-shadow:0 10px 25px -5px #00000080,0 8px 10px -6px #00000080}.toast-item.toast-success{border-left:4px solid var(--success)}.toast-item.toast-error{border-left:4px solid var(--danger)}.toast-item.toast-warning{border-left:4px solid #f59e0b}.toast-item.toast-info{border-left:4px solid var(--accent)}.toast-message{flex:1;line-height:1.35}.toast-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:.2rem;transition:color .15s;display:flex}.toast-close:hover{color:var(--text-main)}.modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:9990;background:#020617bf;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.modal-content{background:#0f172af2;border:1px solid #ffffff1f;border-radius:16px;flex-direction:column;width:100%;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #000000b3}.modal-header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.modal-title{color:var(--text-main);font-size:1.15rem;font-weight:600}.modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.4rem;transition:all .15s;display:flex}.modal-close:hover{color:var(--text-main);background:#ffffff14}.modal-body{color:var(--text-main);-webkit-overflow-scrolling:touch;padding:1.5rem;overflow-y:auto}.modal-footer{background:#0206174d;border-top:1px solid #ffffff14;justify-content:flex-end;align-items:center;gap:.75rem;padding:1rem 1.5rem;display:flex}@media (max-width:768px){.modal-overlay{padding:.5rem .4rem env(safe-area-inset-bottom,8px) .4rem;align-items:flex-end}.modal-content{border-radius:20px 20px 14px 14px;max-height:90vh;animation:.28s cubic-bezier(.16,1,.3,1) slideUpModal;box-shadow:0 -10px 40px #000c}.modal-header{padding:1rem 1.15rem}.modal-body{max-height:calc(90vh - 140px);padding:1rem 1.15rem}.modal-footer{flex-direction:column-reverse;gap:.5rem;padding:.85rem 1.15rem}.modal-footer .modal-btn{justify-content:center;align-items:center;width:100%;min-height:44px;font-size:.95rem;display:flex}}@keyframes slideUpModal{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}.modal-btn{cursor:pointer;border:none;border-radius:8px;padding:.6rem 1.2rem;font-size:.9rem;font-weight:500;transition:all .15s}.modal-btn-cancel{color:var(--text-main);border:1px solid var(--glass-border);background:#ffffff14}.modal-btn-cancel:hover:not(:disabled){background:#ffffff24}.modal-btn-primary{background:var(--accent);color:#fff}.modal-btn-primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:0 0 16px #3b82f666}.modal-btn-danger{background:var(--danger);color:#fff}.modal-btn-danger:hover:not(:disabled){background:#dc2626;box-shadow:0 0 16px #ef444466}.modal-btn:disabled{opacity:.5;cursor:not-allowed}.org-node-vacant{background:linear-gradient(145deg,#1e293b99,#0f172acc)!important;border-style:dashed!important;border-color:#f59e0b!important}.org-node-vacant-badge{color:#fbbf24;text-transform:uppercase;letter-spacing:.04em;background:#f59e0b33;border:1px solid #f59e0b80;border-radius:4px;margin-top:.2rem;padding:.15rem .4rem;font-size:.68rem;font-weight:600;display:inline-block}.org-node-job-title{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-bottom:.2rem;font-size:.78rem;font-weight:400;overflow:hidden}.org-node-tasks-badge{color:var(--text-muted);background:#ffffff14;border:1px solid #ffffff0d;border-radius:12px;align-items:center;gap:.25rem;margin-top:.35rem;padding:.15rem .45rem;font-size:.7rem;display:inline-flex}.org-node-tasks-badge.has-pending{color:#93c5fd;background:#3b82f626;border-color:#3b82f64d}.org-node-tasks-badge.all-completed{color:#6ee7b7;background:#10b98126;border-color:#10b9814d}.demo-cta-hover{transition:all .2s cubic-bezier(.16,1,.3,1)!important}.demo-cta-hover:hover{transform:translateY(-2px)scale(1.02);box-shadow:0 12px 28px -4px #3b82f699!important}@keyframes criticalPulse{0%{box-shadow:0 4px 20px #00000080,0 0 10px #ef444466}50%{box-shadow:0 4px 25px #0009,0 0 24px #ef4444d9}to{box-shadow:0 4px 20px #00000080,0 0 10px #ef444466}}.org-node-critical-pulse{animation:2s ease-in-out infinite criticalPulse!important}.desktop-only-table{display:block}.mobile-only-cards{display:none}@media (max-width:768px){.desktop-only-table{display:none!important}.mobile-only-cards{flex-direction:column;gap:.75rem;display:flex!important}.desktop-only-minimap{display:none!important}.toast-container{bottom:calc(4.5rem + env(safe-area-inset-bottom,8px))!important;left:.75rem!important;right:.75rem!important}.toast-item{min-width:auto;max-width:100%}}@media print{body{color:#000!important;background:#fff!important;margin:0!important;padding:0!important}nav,aside,header,footer,.no-print,button,.org-tree-node,.react-flow,.sidePanel{display:none!important}.modal-overlay:not(:has(#printable-executive-report)){display:none!important}#printable-executive-report{width:100%!important;max-height:none!important;box-shadow:none!important;color:#000!important;background:#fff!important;border-radius:0!important;margin:0!important;padding:1cm!important;display:block!important;position:absolute!important;top:0!important;left:0!important;overflow:visible!important}table{page-break-inside:auto;width:100%!important}tr{page-break-inside:avoid;page-break-after:auto}thead{display:table-header-group}}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-primary{border-radius:var(--radius-md);color:#fff;cursor:pointer;background:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%);border:none;justify-content:center;align-items:center;gap:.5rem;min-height:44px;padding:.7rem 1.4rem;font-size:.92rem;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex;box-shadow:0 4px 14px #3b82f64d}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#60a5fa 0%,#3b82f6 100%);transform:translateY(-1px);box-shadow:0 8px 24px #3b82f666}.btn-primary:active:not(:disabled){transform:translateY(0)scale(.98)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{border-radius:var(--radius-md);color:var(--text-main);border:1px solid var(--glass-border);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:.5rem;min-height:44px;padding:.6rem 1.2rem;font-size:.9rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-ghost:hover:not(:disabled){border-color:var(--glass-border-hover);background:#ffffff0f}.btn-danger{border-radius:var(--radius-md);color:#fff;cursor:pointer;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;justify-content:center;align-items:center;gap:.5rem;min-height:44px;padding:.7rem 1.4rem;font-size:.92rem;font-weight:600;transition:all .25s;display:inline-flex;box-shadow:0 4px 14px #ef444440}.btn-danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 24px #ef444459}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,#ffffff0a 25%,#ffffff14 50%,#ffffff0a 75%) 0 0/200% 100%;animation:1.8s ease-in-out infinite shimmer}.skeleton-text{border-radius:4px;height:.85rem;margin-bottom:.5rem}.skeleton-avatar{border-radius:50%;width:48px;height:48px}.skeleton-card{border-radius:var(--radius-lg);height:120px}@keyframes pageEnter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:.35s cubic-bezier(.16,1,.3,1) forwards pageEnter}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#94a3b833;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#94a3b866}*{scrollbar-width:thin;scrollbar-color:#94a3b833 transparent}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}::selection{color:#fff;background:#3b82f64d}
