@keyframes spin{to{transform:rotate(360deg)}}@keyframes logoPulse{0%,to{filter:drop-shadow(0 4px 16px #701a2847);transform:scale(1)}50%{filter:drop-shadow(0 8px 30px #9f12398c);transform:scale(1.05)}}@keyframes orbitSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes orbitSpinReverse{0%{transform:rotate(360deg)}to{transform:rotate(0)}}@keyframes shimmerProgress{0%{transform:translate(-100%)}50%{transform:translate(100%)}to{transform:translate(250%)}}@keyframes ambientBreathe{0%,to{opacity:.35;transform:scale(.92)}50%{opacity:.75;transform:scale(1.12)}}.spinner{border:3px solid var(--border-color,#ffffff26);border-top-color:var(--brand-primary,#701a28);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin;display:inline-block}.spinner-sm{border-width:2px;width:18px;height:18px}:root,[data-theme=light]{--font-sans:"Plus Jakarta Sans", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display:"Outfit", "Plus Jakarta Sans", sans-serif;--brand-primary:#701a28;--brand-primary-hover:#54131e;--brand-primary-light:#fdf2f4;--brand-primary-border:#fecdd3;--brand-gradient:linear-gradient(135deg, #701a28 0%, #9f1239 100%);--bg-app:#f4f6f8;--bg-surface:#fff;--bg-card:#fff;--bg-sidebar:#fff;--bg-header:#fffffff0;--bg-input:#f1f5f9;--bg-hover:#f8fafc;--bg-active:#fdf2f4;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--text-heading:#0f172a;--border-color:#e2e8f0;--border-subtle:#f1f5f9;--border-accent:#fecdd3;--color-success:#059669;--color-success-bg:#ecfdf5;--color-warning:#d97706;--color-warning-bg:#fffbeb;--color-danger:#dc2626;--color-danger-bg:#fef2f2;--color-info:#2563eb;--color-info-bg:#eff6ff;--shadow-sm:0 1px 2px #0000000a;--shadow-card:0 1px 3px #0000000d, 0 1px 2px -1px #00000008;--shadow-hover:0 4px 12px #0000000f;--shadow-dropdown:0 10px 25px -5px #0000001a, 0 8px 10px -6px #0000000d;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:9999px;--sidebar-width:240px;--header-height:60px}[data-theme=dark]{--brand-primary:#e11d48;--brand-primary-hover:#be123c;--brand-primary-light:#e11d4826;--brand-primary-border:#e11d484d;--brand-gradient:linear-gradient(135deg, #9f1239 0%, #e11d48 100%);--bg-app:#0b0f19;--bg-surface:#111827;--bg-card:#111827;--bg-sidebar:#0f172a;--bg-header:#0f172aeb;--bg-input:#1e293b;--bg-hover:#ffffff0a;--bg-active:#e11d4826;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--text-heading:#fff;--border-color:#ffffff14;--border-subtle:#ffffff0a;--border-accent:#e11d484d;--color-success:#34d399;--color-success-bg:#34d3991f;--color-warning:#fbbf24;--color-warning-bg:#fbbf241f;--color-danger:#f87171;--color-danger-bg:#f871711f;--color-info:#60a5fa;--color-info-bg:#60a5fa1f;--shadow-sm:0 1px 3px #0000004d;--shadow-card:0 4px 20px #00000040;--shadow-hover:0 8px 30px #00000059;--shadow-dropdown:0 16px 40px #00000073}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{background-color:var(--bg-app);max-width:100vw;min-height:100dvh;color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;touch-action:manipulation;transition:background-color .2s,color .2s;overflow-x:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,select,textarea{font-family:inherit}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#94a3b840;border-radius:4px}html.portal-shell-active,body.portal-shell-active{overscroll-behavior:none;-webkit-overflow-scrolling:auto;height:100dvh;overflow:hidden}html:has(.app-layout){overscroll-behavior:none;-webkit-overflow-scrolling:auto;height:100dvh;overflow:hidden}body:has(.app-layout){overscroll-behavior:none;-webkit-overflow-scrolling:auto;height:100dvh;overflow:hidden}.app-layout{background-color:var(--bg-app);flex-direction:column;width:100vw;height:100dvh;display:flex;position:fixed;inset:0;overflow:hidden}.portal-header{z-index:100;flex-shrink:0;width:100%;position:relative}.app-container{flex:1;width:100%;min-height:0;display:flex;position:relative;overflow:hidden}.main-content{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;min-width:0;height:100%;min-height:0;padding:24px 28px;padding-bottom:calc(30px + env(safe-area-inset-bottom,0px));flex:1;overflow:hidden auto}@media (min-width:1025px){.portal-sidebar{width:var(--sidebar-width);flex-shrink:0;overflow:hidden auto;height:100%!important;min-height:0!important;max-height:100%!important}}@media (max-width:1024px){.portal-sidebar{display:none!important}.main-content{padding:16px 14px;padding-bottom:calc(88px + max(18px, calc(env(safe-area-inset-bottom,0px) + 10px)))}}.dashboard-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);justifyContent:space-between;flex-direction:column;padding:18px;transition:all .15s;display:flex;position:relative}.dashboard-card:active{transform:scale(.99)}.section-panel{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:20px}@media (max-width:768px){.section-panel,.dashboard-card{border-radius:var(--radius-md);padding:16px}}.btn-primary{background:var(--brand-gradient);color:#fff;border-radius:var(--radius-md);align-items:center;gap:8px;padding:10px 18px;font-size:.88rem;font-weight:600;transition:all .15s;display:inline-flex;box-shadow:0 2px 6px #701a2833}.btn-primary:active{transform:scale(.97)}.btn-outline{background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);align-items:center;gap:6px;padding:7px 12px;font-size:.82rem;font-weight:500;transition:all .15s;display:inline-flex}.btn-outline:active{transform:scale(.97)}.btn-logout{color:var(--color-danger);border-radius:var(--radius-md);align-items:center;gap:6px;padding:6px 10px;font-size:.82rem;font-weight:600;transition:background .15s;display:inline-flex}.search-input-pill{background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-full);width:100%;color:var(--text-primary);outline:none;padding:8px 14px 8px 36px;font-size:.86rem;transition:all .2s}.form-control{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;color:var(--text-primary);outline:none;padding:10px 12px;font-size:.88rem;transition:border-color .15s,box-shadow .15s}.form-control:focus{border-color:var(--brand-primary);box-shadow:0 0 0 2px #701a281f}.table-container{border-radius:var(--radius-md);-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.portal-table{border-collapse:separate;border-spacing:0;text-align:left;width:100%;font-size:.86rem}.portal-table th{background-color:var(--bg-input);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color);white-space:nowrap;padding:11px 16px;font-size:.72rem;font-weight:600}.portal-table td{border-bottom:1px solid var(--border-subtle);color:var(--text-primary);vertical-align:middle;padding:13px 16px}.badge{align-items:center;font-size:.78rem;font-weight:700;line-height:1.2;display:inline-flex;background:0 0!important;border:none!important;border-radius:0!important;padding:0!important}.badge-success{color:var(--color-success)!important;background:0 0!important;border:none!important}.badge-warning{color:var(--color-warning)!important;background:0 0!important;border:none!important}.badge-danger{color:var(--color-danger)!important;background:0 0!important;border:none!important}.badge-info{color:var(--color-info)!important;background:0 0!important;border:none!important}.badge-gold,.badge-primary{color:var(--brand-primary)!important;background:0 0!important;border:none!important}.badge-neutral{color:var(--text-muted)!important;background:0 0!important;border:none!important}.executive-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}@media (max-width:1024px){.executive-grid{grid-template-columns:repeat(2,1fr);gap:12px}}@media (max-width:540px){.executive-grid{grid-template-columns:repeat(2,1fr);gap:10px}}@media (max-width:768px){.hide-mobile{display:none!important}}@media (min-width:769px){.show-mobile-only{display:none!important}}.dashboard-exec-header{grid-template-columns:1fr auto;grid-template-areas:"title sync""slider slider";align-items:center;gap:12px;margin-bottom:20px;display:grid}.dashboard-exec-title{grid-area:title;min-width:0}.dashboard-exec-sync{grid-area:sync;justify-self:end}.dashboard-exec-slider{grid-area:slider;width:100%}@media (min-width:769px){.dashboard-exec-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.dashboard-exec-title{flex-shrink:0}.dashboard-exec-slider{margin-left:auto;width:auto!important}.dashboard-exec-sync{justify-self:auto}}.glass-segmented-control{-webkit-backdrop-filter:blur(30px)saturate(180%);border:1px solid var(--border-color);-webkit-user-select:none;user-select:none;box-sizing:border-box;background:#f0f2f6d9;border-radius:9999px;grid-template-columns:1fr 1fr;width:100%;max-width:440px;height:52px;padding:5px;display:grid;position:relative;box-shadow:0 4px 20px #0000000d}[data-theme=dark] .glass-segmented-control{box-shadow:0 8px 30px #00000059;background:#1e293bbf!important;border-color:#ffffff14!important}.glass-slider-pill{will-change:transform;pointer-events:none;z-index:0;background:#fff;border:.5px solid #0000000a;border-radius:9999px;width:calc(50% - 5px);transition:transform .42s cubic-bezier(.34,1.35,.64,1);position:absolute;top:5px;bottom:5px;left:5px;box-shadow:0 2px 12px #00000014,0 1px 3px #0000000a}[data-theme=dark] .glass-slider-pill{background:#ffffff1f!important;border:1px solid #ffffff24!important;box-shadow:0 4px 16px #0006!important}.glass-segment-btn{z-index:1;height:100%;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:9999px;justify-content:center;align-items:center;gap:8px;font-size:.88rem;font-weight:600;text-decoration:none;transition:color .25s,transform .15s;display:inline-flex;position:relative}.glass-segment-btn:active{transform:scale(.96)}.glass-segment-btn.active{color:var(--brand-primary);font-weight:700}[data-theme=dark] .glass-segment-btn.active{color:#fff!important}.glass-segment-btn .tab-icon{transition:transform .25s}.glass-segment-btn.active .tab-icon{animation:.4s cubic-bezier(.175,.885,.32,1.275) appleTabBounce;transform:scale(1.08)}.portal-sidebar{width:var(--sidebar-width);background-color:var(--bg-sidebar);border-right:1px solid var(--border-color);box-sizing:border-box;flex-direction:column;flex-shrink:0;justify-content:space-between;height:100%;padding:20px 12px;transition:background-color .2s,border-color .2s;display:flex;overflow-y:auto}@media (max-width:1024px){.portal-sidebar{display:none!important}}.sidebar-section-title{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;padding:0 10px 10px;font-size:.68rem;font-weight:700}.vertical-glass-control{-webkit-backdrop-filter:blur(24px)saturate(180%);box-sizing:border-box;background:#f0eeebc7;border:1px solid #0000000f;border-radius:18px;flex-direction:column;gap:4px;padding:4px;display:flex;position:relative;box-shadow:0 2px 10px #00000005}[data-theme=dark] .vertical-glass-control{box-shadow:0 4px 20px #00000040;background:#ffffff0d!important;border-color:#ffffff14!important}.vertical-glass-pill{will-change:transform;pointer-events:none;z-index:0;background:#fff;border-radius:14px;height:44px;transition:transform .35s cubic-bezier(.32,.72,0,1);position:absolute;top:4px;left:4px;right:4px;box-shadow:0 2px 8px #00000014,0 1px 2px #0000000a}[data-theme=dark] .vertical-glass-pill{background:#ffffff1f!important;border:.5px solid #ffffff1a!important;box-shadow:0 2px 10px #00000059!important}.vertical-glass-item{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;font-weight:500;transition:color .2s,transform .15s cubic-bezier(.16,1,.3,1);position:relative;z-index:1!important;color:#64748b!important;box-sizing:border-box!important;border-radius:14px!important;justify-content:space-between!important;align-items:center!important;height:44px!important;padding:0 14px!important;font-size:.86rem!important;text-decoration:none!important;display:flex!important}.vertical-glass-item:active{transform:scale(.97)}.vertical-glass-item:hover:not(.active){color:var(--text-primary)!important}.vertical-glass-item.active{color:var(--brand-primary)!important;font-weight:700!important}[data-theme=dark] .vertical-glass-item{color:#94a3b8!important}[data-theme=dark] .vertical-glass-item:hover:not(.active){color:#f1f5f9!important}[data-theme=dark] .vertical-glass-item.active{color:#fff!important;font-weight:700!important}.vertical-glass-item .item-label-group{align-items:center;gap:11px;min-width:0;display:flex}.vertical-glass-item .item-label-group span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.vertical-glass-item .item-icon{color:#94a3b8;flex-shrink:0;transition:color .2s,transform .25s cubic-bezier(.32,.72,0,1)}.vertical-glass-item:hover .item-icon{color:var(--text-primary)}.vertical-glass-item.active .item-icon{animation:.4s cubic-bezier(.175,.885,.32,1.275) appleTabBounce;transform:scale(1.08);color:var(--brand-primary)!important}[data-theme=dark] .vertical-glass-item.active .item-icon{animation:.4s cubic-bezier(.175,.885,.32,1.275) appleTabBounce;transform:scale(1.08);color:#fff!important}.vertical-glass-item .item-badge{color:var(--text-muted);font-variant-numeric:tabular-nums;background:#0000000f;border-radius:999px;flex-shrink:0;padding:2px 7px;font-size:.7rem;font-weight:700;line-height:1.2;transition:all .2s}.vertical-glass-item.active .item-badge{background:var(--brand-primary);color:#fff}[data-theme=dark] .vertical-glass-item .item-badge{color:#94a3b8;background:#ffffff14}[data-theme=dark] .vertical-glass-item.active .item-badge{background:var(--brand-primary-light,#e11d48);color:#fff}.sidebar-footer{-webkit-backdrop-filter:blur(20px);background:#f0eeeba6;border:1px solid #0000000f;border-radius:16px;margin-top:16px;padding:12px 14px}[data-theme=dark] .sidebar-footer{background:#ffffff0a!important;border-color:#ffffff14!important}.sidebar-footer-status{align-items:center;gap:8px;display:flex}.live-status-dot{background-color:var(--color-success);border-radius:50%;flex-shrink:0;width:7px;height:7px;box-shadow:0 0 0 2px #05966940}.status-label{color:var(--color-success);letter-spacing:.02em;font-size:.72rem;font-weight:700}.branch-label{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:.72rem;font-weight:500;overflow:hidden}.animate-spin{animation:1s linear infinite spin}.modal-content{overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important}.modal-backdrop,.modal-overlay{will-change:opacity;animation:.25s cubic-bezier(.16,1,.3,1) forwards modalBackdropFadeIn;z-index:9999!important;position:fixed!important;inset:0!important}body.modal-open .portal-header,body.modal-open .portal-sidebar,body.modal-open .ios-bar-wrapper{opacity:.2!important;filter:blur(2px)!important;pointer-events:none!important;transition:opacity .25s cubic-bezier(.16,1,.3,1),filter .25s!important}body:has(.modal-backdrop) .portal-header{opacity:.2!important;filter:blur(2px)!important;pointer-events:none!important;transition:opacity .25s cubic-bezier(.16,1,.3,1),filter .25s!important}body:has(.modal-backdrop) .portal-sidebar{opacity:.2!important;filter:blur(2px)!important;pointer-events:none!important;transition:opacity .25s cubic-bezier(.16,1,.3,1),filter .25s!important}body:has(.modal-backdrop) .ios-bar-wrapper{opacity:.2!important;filter:blur(2px)!important;pointer-events:none!important;transition:opacity .25s cubic-bezier(.16,1,.3,1),filter .25s!important}.portal-header,.portal-sidebar,.ios-bar-wrapper{transition:opacity .25s cubic-bezier(.16,1,.3,1),filter .25s}@keyframes modalBackdropFadeIn{0%{opacity:0}to{opacity:1}}.animate-slide-up,.modal-content.animate-slide-up{will-change:transform, opacity;animation:.36s cubic-bezier(.16,1,.3,1) forwards modalSlideUpMobile}@keyframes modalSlideUpMobile{0%{opacity:.5;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@media (min-width:769px){.animate-slide-up,.modal-content.animate-slide-up{animation:.28s cubic-bezier(.16,1,.3,1) forwards modalScaleUpDesktop}@keyframes modalScaleUpDesktop{0%{opacity:0;transform:scale(.94)translateY(16px)}to{opacity:1;transform:scale(1)translateY(0)}}}.animate-fade-in{will-change:transform, opacity;animation:.26s cubic-bezier(.16,1,.3,1) forwards dialogFadeScale}@keyframes dialogFadeScale{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.tab-content-fade{width:100%;animation:.18s cubic-bezier(.16,1,.3,1) forwards tabFadeIn}@keyframes tabFadeIn{0%{opacity:.92}to{opacity:1}}.dashboard-card-clickable{-webkit-user-select:none;user-select:none;transition:transform .22s cubic-bezier(.32,.72,0,1),box-shadow .22s,border-color .2s}.dashboard-card-clickable:hover{box-shadow:var(--shadow-md);border-color:var(--brand-primary);transform:translateY(-3px)}.dashboard-card-clickable:active{transform:scale(.975)translateY(0)!important}.apple-popover{will-change:transform, opacity;transform-origin:0 0;animation:.22s cubic-bezier(.16,1,.3,1) forwards applePopoverIn}.apple-popover-right{will-change:transform, opacity;transform-origin:100% 0;animation:.22s cubic-bezier(.16,1,.3,1) forwards applePopoverIn}@keyframes applePopoverIn{0%{opacity:0;transform:scale(.93)translateY(-8px)}to{opacity:1;transform:scale(1)translateY(0)}}.apple-press{transition:transform .15s cubic-bezier(.32,.72,0,1),box-shadow .15s!important}.apple-press:active{transform:scale(.965)!important}body.modal-open .app-layout{border-radius:18px;overflow:hidden;transform:scale(.975)translateY(4px);transition:transform .28s cubic-bezier(.16,1,.3,1),border-radius .28s!important}body:has(.modal-backdrop) .app-layout{border-radius:18px;overflow:hidden;transform:scale(.975)translateY(4px);transition:transform .28s cubic-bezier(.16,1,.3,1),border-radius .28s!important}.app-layout{transition:transform .28s cubic-bezier(.16,1,.3,1),border-radius .28s,background-color .2s}@keyframes appleRowCascade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.apple-cascade-item{animation:.3s cubic-bezier(.16,1,.3,1) both appleRowCascade}.live-status-dot{position:relative}.live-status-dot:after{content:"";background-color:var(--color-success);opacity:.4;pointer-events:none;border-radius:50%;animation:2.2s cubic-bezier(.25,1,.5,1) infinite appleRadarPulse;position:absolute;inset:-3px}@keyframes appleRadarPulse{0%{opacity:.6;transform:scale(.8)}50%{opacity:0;transform:scale(2.2)}to{opacity:0;transform:scale(2.2)}}.form-control{transition:border-color .2s cubic-bezier(.32,.72,0,1),box-shadow .2s cubic-bezier(.32,.72,0,1),background-color .2s!important}.form-control:focus{border-color:var(--brand-primary)!important;outline:none!important;box-shadow:0 0 0 3px #701a281f,0 2px 8px #0000000a!important}[data-theme=dark] .form-control:focus{box-shadow:0 0 0 3px #e11d4833,0 2px 10px #0003!important}.theme-toggle-btn{transition:transform .4s cubic-bezier(.34,1.56,.64,1),background-color .2s,border-color .2s!important}.theme-toggle-btn:hover{transform:rotate(18deg)scale(1.08)!important}.theme-toggle-btn:active{transform:rotate(-24deg)scale(.92)!important}@keyframes appleTabBounce{0%{transform:scale(.85)}50%{transform:scale(1.18)}to{transform:scale(1.08)}}.dynamic-island-container{top:max(14px, env(safe-area-inset-top,14px));pointer-events:none;z-index:9999;justify-content:center;display:flex;position:fixed;left:0;right:0}.dynamic-island-pill{pointer-events:auto;color:#fff;-webkit-backdrop-filter:blur(28px)saturate(180%);will-change:transform, opacity;background:#16161ae6;border:.5px solid #ffffff29;border-radius:999px;align-items:center;gap:10px;max-width:90vw;padding:8px 18px;font-size:.84rem;font-weight:500;animation:.45s cubic-bezier(.16,1,.3,1) forwards dynamicIslandDrop;display:inline-flex;box-shadow:0 10px 36px #00000061,0 2px 8px #0003}[data-theme=light] .dynamic-island-pill{color:#fff;background:#1c1c20eb;border:.5px solid #ffffff38}.dynamic-island-pill.leaving{animation:.32s cubic-bezier(.32,.72,0,1) forwards dynamicIslandRetract}@keyframes dynamicIslandDrop{0%{opacity:0;transform:translateY(-24px)scale(.78)}60%{opacity:1;transform:translateY(2px)scale(1.02)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes dynamicIslandRetract{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-20px)scale(.82)}}
