:root{--ppms-primary: #9a0036;--ppms-primary-hover: #7c002c;--ppms-primary-soft: rgba(154, 0, 54, .08);--ppms-primary-muted: rgba(154, 0, 54, .15);--pbi-blue: #118dff;--pbi-yellow: #f2c811;--pbi-nav-bg: #252830;--pbi-nav-border: #1a1d26;--pbi-nav-hover: rgba(255, 255, 255, .06);--pbi-nav-active: rgba(255, 255, 255, .1);--ppms-bg: #ffffff;--ppms-bg-subtle: #f3f2f1;--ppms-surface: #ffffff;--ppms-surface-elevated: #ffffff;--ppms-border: #edebe9;--ppms-text: #323130;--ppms-muted: #605e5c;--ppms-accent: var(--ppms-primary);--ppms-accent-dim: var(--ppms-primary-hover);--ppms-accent-glow: var(--ppms-primary-soft);--ppms-success: #0d9488;--ppms-danger: #dc2626;--ppms-warning: #d97706;--ppms-radius: 6px;--ppms-radius-sm: 4px;--ppms-font: "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", sans-serif;--ppms-sidebar-w: 16.75rem;--ppms-sidebar-collapsed-w: 4.25rem;--ppms-header-h: 3.5rem;--ppms-mobile-tabbar-h: 3.55rem;--ppms-footer-h: auto;--ppms-topbar-h: var(--ppms-header-h);--ppms-shadow: 0 1px 2px rgba(0, 0, 0, .06);--ppms-shadow-lg: 0 4px 24px rgba(0, 0, 0, .1);--ppms-focus: 0 0 0 2px #fff, 0 0 0 4px var(--pbi-blue);--ppms-tap-min: 2.75rem;--va-site-chrome-max-width: 1200px;--ppms-chrome-header-bg: rgba(255, 255, 255, .92);--ppms-chrome-header-blur: 14px;--ppms-chrome-header-shadow: 0 1px 0 rgba(255, 255, 255, .9) inset, 0 4px 24px rgba(26, 29, 38, .07);--ppms-chrome-accent-w: 3px}.va-site-shell{width:100%;max-width:var(--va-site-chrome-max-width);margin-left:auto;margin-right:auto;padding-left:max(1rem,env(safe-area-inset-left,0px));padding-right:max(1rem,env(safe-area-inset-right,0px));box-sizing:border-box}.va-site-header{position:sticky;top:0;z-index:200;flex-shrink:0;border-bottom:var(--ppms-chrome-accent-w) solid var(--ppms-primary);background:var(--ppms-chrome-header-bg);backdrop-filter:blur(var(--ppms-chrome-header-blur));-webkit-backdrop-filter:blur(var(--ppms-chrome-header-blur));box-shadow:var(--ppms-chrome-header-shadow)}.va-site-header-inner{display:flex;flex-wrap:wrap;align-items:center;min-height:3.35rem;padding-top:max(.5rem,env(safe-area-inset-top,0px));padding-bottom:.5rem}.va-site-header-brand{display:flex;align-items:center;gap:.85rem;min-width:0;text-decoration:none;color:inherit}.va-site-header-brand:focus-visible{outline:none;border-radius:12px;box-shadow:0 0 0 2px #fff,0 0 0 4px var(--ppms-primary)}.va-site-header-brand-text{display:flex;flex-direction:column;gap:.12rem;min-width:0}.va-site-header-school{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ppms-muted);line-height:1.2}.va-site-header-product{font-size:1.05rem;font-weight:800;letter-spacing:.04em;color:var(--ppms-primary);line-height:1.15}.va-site-header-tagline{font-size:.78rem;font-weight:500;color:var(--ppms-muted);line-height:1.35}.ppms-brand-mark--header{padding:.28rem .4rem;border-radius:10px;background:linear-gradient(160deg,#0a0c10,#1a1f2a);border-color:#ffffff1f}.ppms-brand-mark--header .ppms-brand-mark-img{width:2.4rem;height:2.4rem}.ppms-app{position:relative;display:flex;flex-direction:column;min-height:calc(100vh / var(--ppms-layout-zoom, 1));min-height:calc(100dvh / var(--ppms-layout-zoom, 1));background:var(--ppms-bg-subtle)}.ppms-app-middle{display:flex;flex:1;min-height:0;position:relative;align-items:stretch}.ppms-app-header{position:sticky;top:0;flex-shrink:0;z-index:120;color:var(--ppms-text);border-bottom:var(--ppms-chrome-accent-w) solid var(--ppms-primary);background:var(--ppms-chrome-header-bg);backdrop-filter:blur(var(--ppms-chrome-header-blur));-webkit-backdrop-filter:blur(var(--ppms-chrome-header-blur));box-shadow:var(--ppms-chrome-header-shadow)}.ppms-app-header-inner{display:flex;align-items:center;gap:.65rem;min-height:var(--ppms-header-h);padding:0 1rem;padding-left:max(1rem,env(safe-area-inset-left,0px));padding-right:max(1rem,env(safe-area-inset-right,0px));padding-top:env(safe-area-inset-top,0px)}.ppms-app-brand-link{display:flex;align-items:center;gap:.5rem;min-width:0;text-decoration:none;color:inherit}.ppms-app-brand-link:focus-visible{outline:none;border-radius:var(--ppms-radius-sm);box-shadow:var(--ppms-focus)}.ppms-app-header-mascot-wrap{flex-shrink:0;display:flex;align-items:center;padding:.12rem .35rem;background:#fffffffa;border-radius:8px;box-shadow:0 1px 3px #0000001f}.ppms-app-header-logo{display:block;height:2rem;width:auto;max-width:5.25rem;object-fit:contain}.ppms-app-header-mascot{display:block;height:2.45rem;width:auto;max-width:3.1rem;object-fit:contain;object-position:bottom center}.ppms-brand-mark{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(155deg,#0f1218,#252b38);border:1px solid rgba(255,255,255,.14);border-radius:10px;box-shadow:0 2px 10px #00000047,inset 0 1px #ffffff0f}.ppms-brand-mark-img{display:block;object-fit:contain}.ppms-brand-mark--footer{padding:.38rem .48rem;border-radius:12px;background:linear-gradient(160deg,#0a0c10,#1a1f2a);border-color:#ffffff1a}.ppms-brand-mark--footer .ppms-brand-mark-img{width:3.1rem;height:3.1rem;object-fit:contain}.ppms-app-brand{display:flex;flex-direction:column;gap:0;line-height:1.15;min-width:0}.ppms-app-brand strong{font-size:1.15rem;font-weight:800;letter-spacing:.04em;color:var(--ppms-primary)}.ppms-app-brand span{font-size:.7rem;font-weight:700;opacity:1;letter-spacing:.1em;text-transform:uppercase;color:var(--ppms-muted)}.ppms-app-header-spacer{flex:1}.ppms-header-notify{position:relative;display:flex;align-items:center;justify-content:center;width:var(--ppms-tap-min);height:var(--ppms-tap-min);border-radius:var(--ppms-radius-sm);color:var(--ppms-text);opacity:1}.ppms-header-notify:hover{background:#0000000d}.ppms-header-notify .ppms-icon-bell:before{border-color:currentColor;box-shadow:0 4px 0 -1px currentColor}.ppms-header-badge{position:absolute;top:6px;right:6px;min-width:1.1rem;height:1.1rem;padding:0 .25rem;border-radius:999px;background:var(--ppms-primary);color:#fff;font-size:.65rem;font-weight:800;line-height:1.1rem;text-align:center}.ppms-icon-btn-header{display:inline-flex;align-items:center;justify-content:center;width:var(--ppms-tap-min);height:var(--ppms-tap-min);padding:0;border:none;border-radius:var(--ppms-radius-sm);background:transparent;color:var(--ppms-text);cursor:pointer}.ppms-icon-btn-header:hover{background:#0000000d}.ppms-icon-btn-header .ppms-icon-menu:before{background:currentColor;box-shadow:0 6px 0 currentColor,0 12px 0 currentColor}.ppms-icon-btn-header .ppms-icon-close:before,.ppms-icon-btn-header .ppms-icon-close:after{background:currentColor}.ppms-stage{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--ppms-bg-subtle)}.ppms-content-header{flex-shrink:0;background:var(--ppms-surface);border-bottom:1px solid var(--ppms-border);padding:1rem 1.5rem;padding-left:max(1.5rem,env(safe-area-inset-left,0px));padding-right:max(1.5rem,env(safe-area-inset-right,0px));box-shadow:var(--ppms-shadow)}.ppms-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.8rem;color:var(--ppms-muted);margin-bottom:.5rem}.ppms-breadcrumb a{color:var(--ppms-primary);text-decoration:none;font-weight:500}.ppms-breadcrumb a:hover{text-decoration:underline}.ppms-bc-sep{color:var(--ppms-border);-webkit-user-select:none;user-select:none}.ppms-bc-current{color:var(--ppms-muted);font-weight:500}.ppms-content-title{margin:0;font-size:1.5rem;font-weight:700;color:var(--ppms-text);letter-spacing:-.02em}.ppms-content-desc{margin:.35rem 0 0;font-size:.95rem;color:var(--ppms-muted);line-height:1.45;max-width:52rem}.va-site-footer{margin-top:auto;flex-shrink:0;align-self:stretch;width:100%;box-sizing:border-box;background:linear-gradient(180deg,#252830,#1a1d26);color:#ffffffe0;border-top:var(--ppms-chrome-accent-w) solid var(--ppms-primary);box-shadow:0 -4px 24px #0000001f;padding-top:1.25rem;padding-bottom:max(1.15rem,env(safe-area-inset-bottom,0px))}.va-site-footer-top{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1.25rem 2rem}.va-site-footer-brand{display:flex;align-items:center;gap:1rem;min-width:0}.va-site-footer-brand-icons{display:flex;align-items:center;gap:.65rem;flex-shrink:0}.va-site-footer-mascot-wrap{display:flex;align-items:center;justify-content:center;padding:.2rem .35rem;background:#ffffff1a;border-radius:10px;border:1px solid rgba(255,255,255,.12)}.va-site-footer-mascot{display:block;height:2.65rem;width:auto;max-width:2.4rem;object-fit:contain;object-position:bottom center}.va-site-footer-brand-text{display:flex;flex-direction:column;gap:.2rem;min-width:0}.va-site-footer-school{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#ffffff8c;line-height:1.25}.va-site-footer-product{font-size:1.02rem;font-weight:800;letter-spacing:.04em;color:#fff;line-height:1.2}.va-site-footer-tagline{font-size:.78rem;font-weight:500;color:#ffffffa6;line-height:1.35}.va-site-footer-nav{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem 1.1rem;font-size:.82rem;font-weight:500}.va-site-footer-nav--compact{align-self:center}.va-site-footer-nav a,.va-site-footer-nav a.router-link-active{color:#ffffffe0;text-decoration:none;border-bottom:1px solid transparent;padding:.2rem 0}.va-site-footer-nav a:hover{color:#fff;border-bottom-color:#ffffff73}.va-site-footer-nav a:focus-visible{outline:none;border-radius:4px;box-shadow:0 0 0 2px #1a1d26,0 0 0 4px #ffffffa6}.va-site-footer-modules{display:grid;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:1rem 1.5rem;flex:1;min-width:0}.va-site-footer-module-title{font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#ffffff73;margin:0 0 .45rem;line-height:1.25}.va-site-footer-module-links{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}.va-site-footer-module-links a{font-size:.8rem;font-weight:500;color:#ffffffe0;text-decoration:none;padding:.15rem 0;border-bottom:1px solid transparent;line-height:1.35}.va-site-footer-module-links a:hover{color:#fff;border-bottom-color:#fff6}.va-site-footer-module-links a.router-link-active{color:#fff;font-weight:700}.va-site-footer-module-links a:focus-visible{outline:none;border-radius:4px;box-shadow:0 0 0 2px #1a1d26,0 0 0 4px #ffffffa6}.va-site-footer-external{width:100%;margin-top:.35rem}.va-site-footer-external a{font-size:.75rem;font-weight:500;color:#ffffff8c;text-decoration:none;border-bottom:1px solid transparent}.va-site-footer-external a:hover{color:#ffffffe0;border-bottom-color:#ffffff59}.va-site-footer-external a:focus-visible{outline:none;border-radius:4px;box-shadow:0 0 0 2px #1a1d26,0 0 0 4px #ffffffa6}.va-site-footer-rule{height:1px;margin:1.1rem 0 .85rem;background:#ffffff1a}.va-site-footer-bottom{display:flex;flex-direction:column;gap:.2rem;font-size:.75rem;color:#ffffff8c;line-height:1.45}.va-site-footer-copy{margin:0}.va-site-footer-meta{margin:0;font-size:.72rem;color:#ffffff73}.ppms-sidebar{position:relative;width:var(--ppms-sidebar-w);flex-shrink:0;min-height:0;background:var(--pbi-nav-bg);border-right:1px solid var(--pbi-nav-border);display:flex;flex-direction:column;padding:1rem .85rem;padding-bottom:max(1rem,env(safe-area-inset-bottom,0px));box-shadow:none;transition:width .22s ease,padding .22s ease}.ppms-sidebar-collapse-zone{flex-shrink:0;display:flex;flex-direction:column;align-items:stretch;gap:.55rem;margin:.35rem 0 .2rem}.ppms-sidebar-divider{height:1px;margin:0 .25rem;border:none;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.14) 22%,rgba(255,255,255,.22) 50%,rgba(255,255,255,.14) 78%,transparent 100%);opacity:.95}.ppms-sidebar-collapse-toggle{display:none;align-items:center;justify-content:center;width:100%;margin:0;padding:.2rem 0 .15rem;border:none;border-radius:999px;background:transparent;color:#ffffffd1;cursor:pointer;transition:transform .18s ease}.ppms-sidebar-collapse-toggle:hover{color:#fff}.ppms-sidebar-collapse-toggle:hover .ppms-sidebar-collapse-face{background:linear-gradient(165deg,#ffffff29,#ffffff0d);border-color:#ffffff47;box-shadow:inset 0 1px #fff3,0 4px 14px #00000059,0 0 0 1px #9a003659;transform:scale(1.04)}.ppms-sidebar-collapse-toggle:active .ppms-sidebar-collapse-face{transform:scale(.97)}.ppms-sidebar-collapse-toggle:focus-visible{outline:none;box-shadow:none}.ppms-sidebar-collapse-toggle:focus-visible .ppms-sidebar-collapse-face{box-shadow:inset 0 1px #ffffff2e,0 0 0 2px var(--pbi-nav-bg),0 0 0 4px #fff}.ppms-sidebar-collapse-face{display:flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;border-radius:50%;background:linear-gradient(160deg,#ffffff1c,#ffffff08);border:1px solid rgba(255,255,255,.16);box-shadow:inset 0 1px #ffffff1f,0 2px 10px #00000047;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .18s ease}.ppms-sidebar-collapse-svg{width:1.15rem;height:1.15rem;flex-shrink:0;stroke:currentColor;fill:none}@media (prefers-reduced-motion: reduce){.ppms-sidebar-collapse-toggle:hover .ppms-sidebar-collapse-face,.ppms-sidebar-collapse-toggle:active .ppms-sidebar-collapse-face{transform:none}}.ppms-nav-ico-wrap{position:relative;display:inline-flex;flex-shrink:0;width:1.35rem;height:1.35rem;align-items:center;justify-content:center}.ppms-nav-ico-svg{width:1.25rem;height:1.25rem;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.ppms-nav-text{min-width:0}.ppms-sidebar-logout-btn .ppms-nav-ico-wrap{display:none}@media (min-width: 1024px){.ppms-sidebar-collapse-toggle{display:flex}.ppms-sidebar--collapsed{width:var(--ppms-sidebar-collapsed-w);padding-left:.35rem;padding-right:.35rem}.ppms-sidebar--collapsed .ppms-nav-label,.ppms-sidebar--collapsed .ppms-nav-text{display:none}.ppms-sidebar--collapsed .ppms-nav a{position:relative;justify-content:center;padding:.55rem .35rem}.ppms-sidebar--collapsed .ppms-nav a.router-link-active{box-shadow:none}.ppms-sidebar--collapsed .ppms-badge{position:absolute;top:4px;right:4px;min-width:1rem;height:1rem;font-size:.6rem;padding:0 .2rem;line-height:1rem}.ppms-sidebar--collapsed .ppms-user-card{justify-content:center}.ppms-sidebar--collapsed .ppms-user-meta{display:none}.ppms-sidebar--collapsed .ppms-sidebar-logout-btn{display:flex;align-items:center;justify-content:center;min-height:2.5rem;padding:.45rem}.ppms-sidebar--collapsed .ppms-sidebar-logout-btn .ppms-nav-text{display:none}.ppms-sidebar--collapsed .ppms-sidebar-logout-btn .ppms-nav-ico-wrap{display:inline-flex}}.ppms-brand{font-weight:800;font-size:1.05rem;letter-spacing:.04em;color:var(--ppms-primary)}.ppms-nav{display:flex;flex-direction:column;gap:1rem;flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-right:.25rem}.ppms-nav.ppms-nav--sidebar{gap:.7rem}.ppms-nav-group{display:flex;flex-direction:column;gap:.15rem}.ppms-nav-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#ffffff73;padding:.35rem .65rem .15rem;opacity:1}.ppms-nav a{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem;min-height:2.5rem;padding:.5rem .75rem;border-radius:var(--ppms-radius-sm);color:#ffffffd1;text-decoration:none;font-size:.92rem;transition:background .18s ease,color .18s ease}.ppms-nav a:hover{background:var(--pbi-nav-hover);color:#fff}.ppms-nav a.router-link-active{background:var(--pbi-nav-active);color:#fff;font-weight:600;box-shadow:inset 3px 0 0 var(--ppms-primary)}.ppms-user{border-top:1px solid rgba(255,255,255,.12);padding-top:1rem;margin-top:.75rem;font-size:.85rem}.ppms-sidebar .ppms-user-name{color:#fff}.ppms-sidebar .ppms-user-role{color:#ffffff8c}.ppms-sidebar .ppms-sidebar-logout-btn{color:#ffffffe0;border:1px solid rgba(255,255,255,.2);background:transparent}.ppms-sidebar .ppms-sidebar-logout-btn:hover{background:var(--pbi-nav-hover);color:#fff;border-color:#ffffff4d}.ppms-user-avatar{background:linear-gradient(145deg,var(--ppms-primary),var(--ppms-primary-hover));color:#fff}.ppms-main{flex:1;overflow:auto;-webkit-overflow-scrolling:touch;min-width:0;padding:1.25rem 1.5rem 2rem;padding-left:max(1.5rem,env(safe-area-inset-left,0px));padding-right:max(1.5rem,env(safe-area-inset-right,0px));padding-bottom:max(1.5rem,env(safe-area-inset-bottom,0px))}.ppms-topbar{display:none!important}.ppms-page-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.ppms-page-toolbar--end{justify-content:flex-end;width:100%}.ppms-skip-link{background:var(--ppms-primary);color:#fff}.ppms-mobile-tabbar,.ppms-sidebar-backdrop{display:none}.ppms-app-nav-toggle{display:none;flex-shrink:0}@media (max-width: 1023px){.ppms-app-middle{flex-direction:column;align-items:stretch}.ppms-app-nav-toggle{display:inline-flex;align-items:center;justify-content:center}.ppms-sidebar-backdrop{display:block;position:fixed;top:var(--ppms-header-h);left:0;right:0;bottom:0;z-index:124;margin:0;padding:0;border:none;background:#1a1d267a;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}.ppms-app--nav-open .ppms-sidebar-backdrop{opacity:1;visibility:visible;pointer-events:auto}.ppms-app-header{z-index:130}.ppms-mobile-tabbar{display:flex;align-items:stretch;justify-content:space-around;position:fixed;left:0;right:0;bottom:0;z-index:115;min-height:var(--ppms-mobile-tabbar-h);padding:.12rem 0 max(.12rem,env(safe-area-inset-bottom,0px));background:var(--ppms-surface);border-top:1px solid var(--ppms-border);box-shadow:0 -1px #ffffffe6 inset,0 -8px 28px #1a1d2617}.ppms-app--nav-open .ppms-mobile-tabbar{opacity:0;pointer-events:none;transition:opacity .15s ease}.ppms-mobile-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;min-width:0;min-height:3.1rem;max-width:6rem;margin:0 auto;padding:.2rem .25rem;text-decoration:none;color:var(--ppms-muted);font-size:.6rem;font-weight:700;letter-spacing:.02em;line-height:1.15;border-radius:var(--ppms-radius-sm);transition:color .15s ease,background .15s ease}.ppms-mobile-tab:hover{color:var(--ppms-text);background:#0000000a}.ppms-mobile-tab--active{color:var(--ppms-primary);font-weight:800}.ppms-mobile-tab--active .ppms-mobile-tab-svg{stroke:var(--ppms-primary)}.ppms-mobile-tab-ico{position:relative;display:flex;align-items:center;justify-content:center;width:1.55rem;height:1.45rem}.ppms-mobile-tab-svg{width:1.45rem;height:1.45rem;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.ppms-mobile-tab-label{max-width:5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.ppms-mobile-tab--notify{position:relative}.ppms-mobile-tab-badge{position:absolute;top:-3px;right:-5px;min-width:1rem;height:1rem;padding:0 .2rem;border-radius:999px;background:var(--ppms-primary);color:#fff;font-size:.58rem;font-weight:800;line-height:1rem;text-align:center}.ppms-mobile-tab:focus-visible{outline:none;box-shadow:var(--ppms-focus)}.ppms-app-middle .ppms-sidebar{position:fixed;top:var(--ppms-header-h);left:0;bottom:0;z-index:125;width:min(18.5rem,88vw);max-width:none;max-height:none;flex-shrink:0;border-right:1px solid var(--pbi-nav-border);border-bottom:none;box-shadow:4px 0 28px #00000047;transform:translate(-102%);transition:transform .22s ease;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.ppms-app--nav-open .ppms-app-middle .ppms-sidebar{transform:translate(0)}.ppms-content-header{padding:.85rem 1rem}.ppms-content-title{font-size:1.3rem}.ppms-main{padding:1rem;padding-bottom:calc(1rem + var(--ppms-mobile-tabbar-h) + env(safe-area-inset-bottom,0px))}.va-site-footer{padding-bottom:calc(1.15rem + var(--ppms-mobile-tabbar-h) + env(safe-area-inset-bottom,0px))}}@media (max-width: 1023px) and (prefers-reduced-motion: reduce){.ppms-app-middle .ppms-sidebar,.ppms-sidebar-backdrop{transition:none}}@media (min-width: 640px) and (max-width: 1023px){.ppms-main{padding:1.15rem 1.25rem;padding-bottom:calc(1.65rem + var(--ppms-mobile-tabbar-h) + env(safe-area-inset-bottom,0px))}.ppms-content-header{padding:.95rem 1.25rem}}@media (max-width: 639px){.ppms-app-header-inner{gap:.4rem;min-height:3.125rem;padding:0 .75rem}.ppms-app-brand strong{font-size:1.02rem}.ppms-app-brand span{font-size:.62rem;letter-spacing:.08em}.ppms-app-header-mascot{height:2.05rem;max-width:2.65rem}.ppms-app-header-mascot-wrap{padding:.08rem .28rem;border-radius:7px}.ppms-main{padding:.85rem .75rem;padding-bottom:calc(1.1rem + var(--ppms-mobile-tabbar-h) + env(safe-area-inset-bottom,0px))}.ppms-content-header{padding:.75rem}.ppms-content-title{font-size:1.2rem}.va-site-footer{padding-top:1rem;padding-bottom:calc(1rem + var(--ppms-mobile-tabbar-h) + env(safe-area-inset-bottom,0px))}.va-site-footer-top{flex-direction:column;align-items:stretch;gap:1rem}.va-site-footer-nav{justify-content:flex-start}.va-site-footer-modules{grid-template-columns:1fr 1fr}.va-site-header-inner{min-height:3.1rem}}@media (min-width: 1024px){.ppms-app-middle .ppms-sidebar{position:sticky;top:0;align-self:stretch;max-height:none;overflow-x:hidden;overflow-y:auto}}button:focus-visible,.ppms-icon-btn:focus-visible,.ppms-icon-btn-header:focus-visible,.ppms-header-notify:focus-visible{outline:none;box-shadow:var(--ppms-focus)}.ppms-sidebar .ppms-nav a:focus-visible,.ppms-sidebar .ppms-sidebar-logout-btn:focus-visible{outline:none;box-shadow:0 0 0 2px var(--pbi-nav-bg),0 0 0 4px #fff}.ppms-icon-btn{color:var(--ppms-text)}.ppms-icon-btn:hover{background:var(--ppms-primary-soft)}.ppms-gantt-bar{background:linear-gradient(90deg,var(--ppms-primary-hover),var(--ppms-primary))}.ppms-hist-bar{background:var(--ppms-primary)}.ppms-row-me{background:var(--ppms-primary-soft)}.ppms-tags span{background:var(--ppms-primary-soft);color:var(--ppms-primary);font-weight:500}.ppms-notify-list li.unread{background:var(--ppms-primary-soft)}.ppms-card:hover{border-color:#118dff59!important;box-shadow:0 1px 3px #00000014}body.ppms-modal-open{overflow:hidden}body.ppms-drawer-open{overflow:hidden;touch-action:none}.ppms-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:1rem;background:#1a1d2680;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.ppms-modal{width:100%;max-width:420px;background:var(--ppms-surface);border-radius:var(--ppms-radius);padding:1.35rem 1.5rem;box-shadow:var(--ppms-shadow-lg);border:1px solid var(--ppms-border);outline:none}.ppms-modal-title{margin:0 0 .5rem;font-size:1.15rem;font-weight:700;color:var(--ppms-text)}.ppms-modal-msg{margin:0 0 1.25rem;font-size:.9rem;color:var(--ppms-muted);line-height:1.45;white-space:pre-wrap}.ppms-modal-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.ppms-modal-btn{min-height:2.5rem}.ppms-btn-danger{background:var(--ppms-danger)!important;color:#fff!important;border-color:var(--ppms-danger)!important}.ppms-btn-danger:hover{filter:brightness(.95)}.ppms-toast-host{position:fixed;bottom:max(1rem,env(safe-area-inset-bottom,0px));right:max(1rem,env(safe-area-inset-right,0px));left:max(1rem,env(safe-area-inset-left,0px));z-index:10001;display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;pointer-events:none}.ppms-toast-host .ppms-toast{pointer-events:auto}.ppms-toast{display:flex;align-items:flex-start;gap:.65rem;max-width:min(28rem,100%);padding:.65rem .85rem;border-radius:var(--ppms-radius-sm);font-size:.875rem;line-height:1.4;box-shadow:var(--ppms-shadow-lg);border:1px solid var(--ppms-border);background:var(--ppms-surface);color:var(--ppms-text)}.ppms-toast--success{border-left:4px solid var(--ppms-success)}.ppms-toast--error{border-left:4px solid var(--ppms-danger)}.ppms-toast--warning{border-left:4px solid var(--ppms-warning)}.ppms-toast--info{border-left:4px solid var(--ppms-primary)}.ppms-toast-msg{flex:1;min-width:0}.ppms-toast-close{flex-shrink:0;border:none;background:transparent;font-size:1.25rem;line-height:1;cursor:pointer;color:var(--ppms-muted);padding:0 .15rem;border-radius:4px}.ppms-toast-close:hover{color:var(--ppms-text)}.ppms-toast-enter-active,.ppms-toast-leave-active{transition:opacity .2s ease,transform .2s ease}.ppms-toast-enter-from,.ppms-toast-leave-to{opacity:0;transform:translateY(8px)}.ppms-locale-switch{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:8px;background:var(--ppms-border)}.ppms-locale-btn{min-width:2.25rem;min-height:2.25rem;padding:.28rem .45rem;border:none;border-radius:6px;font-size:.72rem;font-weight:800;letter-spacing:.06em;color:var(--ppms-muted);background:transparent;cursor:pointer;transition:background .15s ease,color .15s ease}.ppms-locale-btn:hover{color:var(--ppms-text);background:#ffffffe6}.ppms-locale-btn--active{background:#fff;color:var(--ppms-primary);box-shadow:0 0 0 1px #00000014}.ppms-locale-btn--active:hover{color:var(--ppms-primary);background:#fff}.ppms-locale-btn:focus-visible{outline:none;box-shadow:var(--ppms-focus)}.pbi-report{max-width:100%}.pbi-canvas{background:var(--ppms-bg-subtle);border:1px solid var(--ppms-border);border-radius:var(--ppms-radius-sm);padding:1.15rem 1.25rem 1.65rem;box-shadow:inset 0 1px #ffffffbf,0 1px 2px #0000000a}.pbi-report-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.75rem 1.25rem;margin-bottom:1.1rem;padding-bottom:.85rem;border-bottom:1px solid #d8dbe0}.pbi-report-title{margin:0 0 .2rem;font-size:1.35rem;font-weight:700;letter-spacing:-.02em;color:#252423}.pbi-report-sub{margin:0;font-size:.8125rem;color:#605e5c;line-height:1.45;max-width:36rem}.pbi-report-meta{font-size:.75rem;color:#605e5c;text-align:right}.pbi-refresh-label{display:block;margin-bottom:.15rem}.pbi-refresh-time{display:block;font-weight:600;color:#323130;font-variant-numeric:tabular-nums}.pbi-loading{display:flex;align-items:center;gap:.65rem;font-size:.9rem;color:var(--ppms-muted)}.pbi-loading-bar{width:2.5rem;height:3px;border-radius:2px;background:linear-gradient(90deg,rgba(17,141,255,.25),var(--pbi-blue),rgba(17,141,255,.25));background-size:200% 100%;animation:pbi-loading-shimmer 1s ease-in-out infinite}@keyframes pbi-loading-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.pbi-kpi-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}@media (max-width: 1023px){.pbi-kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 520px){.pbi-kpi-row{grid-template-columns:1fr}}.pbi-kpi-card{background:#fff;border:1px solid #e2e4e8;border-radius:var(--ppms-radius-sm);box-shadow:0 1px 2px #0000000d;padding:.95rem 1rem;border-top:3px solid var(--pbi-yellow);display:flex;flex-direction:column;gap:.2rem;min-width:0}.pbi-kpi-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#605e5c}.pbi-kpi-value{font-size:1.65rem;font-weight:700;line-height:1.1;color:#252423;font-variant-numeric:tabular-nums}.pbi-kpi-hint{font-size:.68rem;color:#8a8886;line-height:1.35}.pbi-visual-row--2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}@media (max-width: 900px){.pbi-visual-row--2{grid-template-columns:1fr}}.pbi-visual{background:#fff;border:1px solid #e2e4e8;border-radius:4px;box-shadow:0 1px 3px #0000000f;display:flex;flex-direction:column;min-height:0;overflow:hidden}.pbi-visual--wide{width:100%}.pbi-visual-header{display:flex;align-items:stretch;gap:.65rem;padding:.65rem .85rem .65rem 0;border-bottom:1px solid #edebe9;background:#faf9f8}.pbi-visual-header--compact{padding:.55rem .85rem;border-bottom:1px solid #edebe9}.pbi-visual-accent{width:4px;flex-shrink:0;border-radius:0 2px 2px 0;background:linear-gradient(180deg,var(--pbi-blue) 0%,#0a6cbc 100%)}.pbi-visual-heading{flex:1;min-width:0;padding-right:.5rem}.pbi-visual-title{margin:0 0 .1rem;font-size:.875rem;font-weight:600;color:#252423}.pbi-visual-title--sm{font-size:.8125rem;margin:0}.pbi-visual-sub{margin:0;font-size:.72rem;color:#605e5c;line-height:1.35}.pbi-visual-body{flex:1;min-height:0;padding:.85rem 1rem 1rem}.pbi-chart-host{position:relative;height:260px;width:100%}.pbi-visual-empty{margin:0;font-size:.8125rem;color:#605e5c;line-height:1.45}.pbi-visual-empty--pad{padding:1rem .25rem}.pbi-funnel-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;padding:1rem 1.1rem 1.15rem}@media (max-width: 600px){.pbi-funnel-metrics{grid-template-columns:1fr}}.pbi-funnel-metric{background:#faf9f8;border:1px solid #edebe9;border-radius:4px;padding:.85rem 1rem;text-align:center}.pbi-funnel-metric-label{display:block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#605e5c;margin-bottom:.35rem}.pbi-funnel-metric-value{font-size:1.5rem;font-weight:700;color:#252423;font-variant-numeric:tabular-nums}.pbi-matrix-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}@media (max-width: 900px){.pbi-matrix-row{grid-template-columns:1fr}}.pbi-visual--matrix{min-height:0}.pbi-matrix-list{list-style:none;margin:0;padding:.5rem .85rem .85rem;font-size:.8125rem}.pbi-matrix-list li{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;padding:.45rem 0;border-bottom:1px solid #f3f2f1;color:#323130}.pbi-matrix-list li:last-child{border-bottom:none}.pbi-matrix-list strong{font-weight:700;font-variant-numeric:tabular-nums;color:var(--ppms-primary)}.pbi-table-body{padding:0}.pbi-table-body .ppms-table-scroll{border-radius:0 0 4px 4px}.pbi-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#605e5c}.pbi-mt{margin-top:.75rem}.ppms-process-timeline{display:flex;flex-wrap:wrap;gap:0;margin-top:1rem;padding:.5rem 0}.ppms-process-step{display:flex;align-items:flex-start;gap:.65rem;flex:1 1 8.5rem;min-width:7rem;position:relative;padding-bottom:.35rem}.ppms-process-step:not(:last-child):after{content:"";position:absolute;top:.55rem;left:.9rem;width:calc(100% - .55rem);height:2px;background:var(--ppms-border);z-index:0}.ppms-process-dot{flex-shrink:0;width:.65rem;height:.65rem;margin-top:.25rem;border-radius:50%;background:var(--ppms-border);border:2px solid var(--ppms-surface);box-shadow:0 0 0 2px var(--ppms-border);position:relative;z-index:1}.ppms-process-step.is-done .ppms-process-dot{background:var(--ppms-success);box-shadow:0 0 0 2px #0d948859}.ppms-process-step.is-current .ppms-process-dot{background:var(--ppms-primary);box-shadow:0 0 0 2px var(--ppms-primary-muted)}.ppms-process-body{display:flex;flex-direction:column;gap:.2rem;min-width:0;font-size:.85rem;position:relative;z-index:2}.ppms-process-label{font-weight:600;color:var(--ppms-text)}.ppms-process-badge{display:inline-block;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:.15rem .4rem;border-radius:4px;background:var(--ppms-primary-soft);color:var(--ppms-primary);width:fit-content}.ppms-process-body time{font-variant-numeric:tabular-nums;color:var(--ppms-muted);font-size:.8rem}.ppms-row--spread{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.ppms-row--spread h2{margin:0}.ppms-supplier-list{margin:.5rem 0 0;padding-left:1.15rem;color:var(--ppms-text);font-size:.9rem}.ppms-pagination{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}.ppms-pagination-actions{display:flex;gap:.5rem}.ppms-page-toolbar--wrap{flex-wrap:wrap}.ppms-project-filters.ppms-card{padding:1rem 1.1rem;overflow:visible}.ppms-project-filters-title{margin:0 0 .55rem;font-size:1rem;font-weight:700;color:var(--ppms-text)}.ppms-project-filters-grid{display:flex;flex-wrap:nowrap;align-items:flex-end;gap:.35rem .5rem;overflow-x:auto;overflow-y:hidden;padding-bottom:.2rem;margin:0 -.15rem;padding-left:.15rem;padding-right:.15rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.ppms-project-filters-grid>.ppms-field--compact{flex:0 0 auto;min-width:9.5rem}.ppms-project-filters-grid>.ppms-field--checkbox.ppms-field--compact{min-width:auto;padding-top:0;align-self:center;white-space:nowrap}.ppms-field--compact{margin-bottom:0}.ppms-project-filters .ppms-field--compact{gap:.2rem}.ppms-project-filters .ppms-field--compact input:not([type=checkbox]):not([type=radio]),.ppms-project-filters .ppms-field--compact select{padding:.38rem .5rem;font-size:.875rem}.ppms-field--compact span{font-size:.75rem;color:var(--ppms-muted)}.ppms-field--checkbox{display:flex;flex-direction:row;align-items:center;gap:.5rem;padding-top:1.35rem}.ppms-field--checkbox span{font-size:.85rem;color:var(--ppms-text);padding-top:0}.ppms-project-filters-actions{display:flex;align-items:flex-end;padding-bottom:.15rem}.ppms-filter-tab-block{display:flex;flex-direction:column;gap:.45rem;margin-bottom:.65rem;padding-bottom:.55rem;border-bottom:1px solid var(--ppms-border)}.ppms-filter-tab-row{display:flex;flex-wrap:nowrap;align-items:center;gap:.3rem .45rem;overflow-x:auto;overflow-y:hidden;padding-bottom:.15rem;margin:0 -.1rem;padding-left:.1rem;padding-right:.1rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.ppms-filter-tab-heading{flex:0 0 auto;flex-shrink:0;min-width:4.5rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;color:var(--ppms-muted)}.ppms-filter-tabs{display:flex;flex-wrap:nowrap;gap:.22rem;flex:1 1 auto;min-width:0}.ppms-filter-tabs .ppms-filter-tab{flex-shrink:0}.ppms-filter-tab{font:inherit;font-size:.8rem;line-height:1.2;cursor:pointer;border:1px solid var(--ppms-border);border-radius:999px;padding:.32rem .6rem;background:var(--ppms-surface);color:var(--ppms-text);transition:background .15s ease,border-color .15s ease,color .15s ease}.ppms-filter-tab:hover{background:var(--ppms-primary-soft);border-color:var(--ppms-primary-muted)}.ppms-filter-tab:focus-visible{outline:none;box-shadow:var(--ppms-focus)}.ppms-filter-tab--active{background:var(--ppms-primary);color:#fff;border-color:var(--ppms-primary)}.ppms-filter-tab--active:hover{background:var(--ppms-primary-hover);border-color:var(--ppms-primary-hover)}.ppms-project-filters-primary{display:flex;flex-wrap:nowrap;align-items:flex-end;gap:.35rem .5rem;margin-bottom:.35rem;overflow-x:auto;overflow-y:hidden;padding-bottom:.15rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.ppms-project-filters-search{flex:1 1 12rem;min-width:10rem;margin-bottom:0}.ppms-project-filters-primary-actions{display:flex;flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:.3rem;position:relative;z-index:21}.ppms-filter-advanced-toggle{white-space:nowrap;text-align:left}.ppms-filter-advanced-badge{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ppms-primary);background:var(--ppms-primary-soft);padding:.2rem .45rem;border-radius:999px}.ppms-filter-popover-wrap{position:relative;display:inline-flex;flex-wrap:wrap;align-items:center;gap:.35rem;z-index:30}.ppms-filter-popover-panel{position:absolute;top:calc(100% + .35rem);right:0;left:auto;z-index:100;width:min(22rem,calc(100vw - 2rem));max-width:100%;background:var(--ppms-surface-elevated);border:1px solid var(--ppms-border);border-radius:var(--ppms-radius);box-shadow:var(--ppms-shadow-lg)}.ppms-filter-popover-inner{padding:1rem 1.05rem;max-height:min(70vh,28rem);overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.ppms-filter-popover-lead{margin:0 0 .65rem;font-size:.85rem;color:var(--ppms-muted);line-height:1.35}.ppms-filter-popover-footer{margin-top:.85rem;padding-top:.65rem;border-top:1px solid var(--ppms-border)}.ppms-filter-popover-archived{padding-top:0;margin-top:.25rem}.ppms-filter-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin-top:.55rem;padding-top:.45rem;border-top:1px solid var(--ppms-border)}.ppms-filter-chip{display:inline-flex;align-items:center;gap:.15rem;max-width:100%;padding:.22rem .35rem .22rem .6rem;background:var(--ppms-primary-soft);border:1px solid var(--ppms-primary-muted);border-radius:999px;font-size:.78rem;color:var(--ppms-text)}.ppms-filter-chip-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:16rem}.ppms-filter-chip-remove{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:1.65rem;height:1.65rem;margin:0;padding:0;font:inherit;font-size:1.1rem;line-height:1;color:var(--ppms-muted);background:transparent;border:none;border-radius:999px;cursor:pointer}.ppms-filter-chip-remove:hover{background:#9a00361f;color:var(--ppms-primary)}.ppms-filter-chip-remove:focus-visible{outline:none;box-shadow:var(--ppms-focus)}.ppms-owner-combobox{position:relative}.ppms-owner-combobox-row{display:flex;align-items:stretch;gap:.35rem}.ppms-owner-combobox-row input{flex:1;min-width:0}.ppms-owner-combobox-clear{flex-shrink:0;padding-left:.5rem;padding-right:.5rem}.ppms-owner-suggestions{position:absolute;left:0;right:0;top:100%;z-index:55;margin:.2rem 0 0;padding:.3rem 0;list-style:none;max-height:12rem;overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--ppms-surface-elevated);border:1px solid var(--ppms-border);border-radius:var(--ppms-radius-sm);box-shadow:var(--ppms-shadow-lg)}.ppms-owner-suggestion-btn{display:block;width:100%;margin:0;padding:.45rem .75rem;font:inherit;font-size:.85rem;text-align:left;color:var(--ppms-text);background:transparent;border:none;cursor:pointer}.ppms-owner-suggestion-btn:hover{background:var(--ppms-primary-soft)}.ppms-owner-suggestion-btn:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--ppms-primary)}.ppms-project-list-bar{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;padding:.35rem 0}.ppms-project-list-bar-range{margin:0;flex:1;min-width:0;font-size:.9rem}.ppms-project-list-bar-sort{flex:0 0 auto;flex-direction:row;align-items:center;gap:.45rem;margin:0}.ppms-project-list-bar-sort span{font-size:.75rem;color:var(--ppms-muted);white-space:nowrap}.ppms-project-list-sort-select{min-width:11rem;max-width:min(18rem,45vw)}.ppms-empty-hint-text{margin:0}.ppms-empty-hint--actions{display:flex;flex-direction:column;align-items:center;gap:.25rem}@media (max-width: 639px){.ppms-filter-popover-panel{right:0;left:auto;width:min(20rem,calc(100vw - 2.5rem))}.ppms-project-list-bar{flex-wrap:wrap}.ppms-project-list-bar-sort{width:100%;justify-content:space-between}.ppms-project-list-sort-select{max-width:none;flex:1}}.ppms-th-process{min-width:8.5rem}.ppms-td-process{vertical-align:middle}.ppms-progress-track{height:.45rem;border-radius:999px;background:var(--ppms-border);overflow:hidden;margin-bottom:.25rem;max-width:10rem}.ppms-progress-fill{height:100%;border-radius:inherit;min-width:0;transition:width .2s ease}.ppms-progress-fill--low{background:var(--ppms-danger);opacity:.85}.ppms-progress-fill--mid{background:var(--ppms-warning);opacity:.9}.ppms-progress-fill--good{background:var(--ppms-primary)}.ppms-progress-fill--done{background:var(--ppms-success)}.ppms-progress-pct{font-size:.78rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--ppms-muted)}.ppms-empty-hint{padding:1.25rem;text-align:center;color:var(--ppms-muted);background:var(--ppms-bg-subtle);border-radius:var(--ppms-radius-sm);border:1px dashed var(--ppms-border)}.ppms-upgrade-ideas{font-size:.9rem}.ppms-upgrade-ideas summary{cursor:pointer;font-weight:600;color:var(--ppms-primary);padding:.15rem 0}.ppms-upgrade-ideas summary:hover{text-decoration:underline}.ppms-upgrade-ideas-list{margin:.65rem 0 0;padding-left:1.2rem;color:var(--ppms-muted);line-height:1.5}.ppms-upgrade-ideas-list li{margin-bottom:.35rem}.ppms-project-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;position:relative;z-index:20}.ppms-project-toolbar-inner{display:flex;flex-wrap:nowrap;gap:.5rem;align-items:center;width:100%;max-width:100%;justify-content:flex-end;overflow-x:auto;overflow-y:hidden;padding-bottom:.15rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.ppms-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ppms-toolbar-dropdown{position:relative;z-index:30}.ppms-toolbar-dropdown-panel{position:absolute;top:calc(100% + .35rem);right:0;left:0;z-index:100;margin:0;padding:.35rem 0;list-style:none;background:var(--ppms-surface-elevated);border:1px solid var(--ppms-border);border-radius:var(--ppms-radius-sm);box-shadow:var(--ppms-shadow-lg)}.ppms-dropdown-menuitem{display:block;width:100%;margin:0;padding:.55rem 1rem;font:inherit;font-size:.9rem;text-align:left;color:var(--ppms-text);background:transparent;border:none;cursor:pointer;min-height:var(--ppms-tap-min);touch-action:manipulation}.ppms-dropdown-menuitem:hover{background:var(--ppms-primary-soft)}.ppms-dropdown-menuitem:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--ppms-primary)}.ppms-project-list-loading{min-height:10rem;padding:.5rem 0}.ppms-skeleton-table{display:flex;flex-direction:column;gap:.65rem}.ppms-skeleton-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.ppms-skeleton-cell{height:.7rem;border-radius:6px;background:linear-gradient(90deg,var(--ppms-border) 0%,var(--ppms-bg-subtle) 50%,var(--ppms-border) 100%);background-size:200% 100%;animation:ppms-skeleton-shimmer 1.1s ease-in-out infinite}.ppms-skeleton-cell--lg{flex:1 1 40%;min-width:8rem}.ppms-skeleton-cell--md{flex:0 1 18%;min-width:4rem}.ppms-skeleton-cell--sm{flex:0 1 12%;min-width:3rem}.ppms-skeleton-cell--xs{flex:0 1 8%;min-width:2rem}@keyframes ppms-skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.ppms-table-scroll.ppms-table-scroll--sticky-head.ppms-project-list-table-wrap{overflow-x:auto;overflow-y:auto;max-height:min(65vh,38rem);-webkit-overflow-scrolling:touch;border-radius:var(--ppms-radius-sm);border:1px solid var(--ppms-border);background:var(--ppms-surface);padding:0;margin-left:0;margin-right:0;overscroll-behavior-x:contain}.ppms-project-list-table-wrap .ppms-table thead th{position:sticky;top:0;z-index:2;background:var(--ppms-surface);box-shadow:0 1px 0 var(--ppms-border);white-space:nowrap;line-height:1.3;word-break:normal;overflow-wrap:normal;-webkit-hyphens:manual;hyphens:manual}.ppms-project-list-table-wrap .ppms-table thead th.ppms-th-name{white-space:normal;word-break:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.ppms-project-list-table-wrap .ppms-table th,.ppms-project-list-table-wrap .ppms-table td{vertical-align:middle}.ppms-project-list-table-wrap .ppms-table td{white-space:nowrap}.ppms-project-list-table-wrap .ppms-table .ppms-td-process{white-space:normal}.ppms-project-list-table-wrap .ppms-table .ppms-td-process .ppms-progress-pct{white-space:nowrap}.ppms-bulk-dock.ppms-bulk-dock--full{width:100%;max-width:none;box-sizing:border-box}.ppms-bulk-dock-panel--danger{border-color:#dc262661!important;background:linear-gradient(165deg,#dc262612,#dc262605)!important;box-shadow:var(--ppms-shadow),inset 0 1px #ffffff73}.ppms-bulk-danger-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem}.ppms-bulk-danger-copy{flex:1 1 14rem;min-width:0;display:flex;flex-direction:column;gap:.2rem}.ppms-bulk-danger-actions{flex:0 0 auto;margin-left:auto;display:flex;align-items:center}.ppms-bulk-dock-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.35rem .75rem;margin-bottom:.5rem}.ppms-bulk-dock-head--danger{padding-bottom:.65rem;margin-bottom:.65rem;border-bottom:1px solid rgba(220,38,38,.22)}.ppms-bulk-dock-title{margin:0;font-size:.95rem;font-weight:700}.ppms-bulk-dock-clear{font-size:.82rem;white-space:nowrap}.ppms-bulk-danger-icon{flex-shrink:0;width:2.25rem;height:2.25rem;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#dc26261f;color:var(--ppms-danger)}.ppms-bulk-danger-svg{width:1.15rem;height:1.15rem}.ppms-bulk-danger-title{margin:0;font-size:.88rem;font-weight:800;color:#991b1b;letter-spacing:.01em}.ppms-bulk-danger-text{margin:0;font-size:.78rem;line-height:1.45;color:var(--ppms-muted)}.ppms-bulk-danger-btn{width:auto;min-width:11rem;justify-content:center}@media (max-width: 639px){.ppms-bulk-danger-actions{margin-left:0;width:100%;justify-content:stretch}.ppms-bulk-danger-btn{width:100%;min-width:0}}.ppms-saved-views-scroll{max-height:10.5rem;overflow-y:auto;-webkit-overflow-scrolling:touch;margin-top:.25rem;padding-right:.15rem}@media (max-width: 639px){.ppms-project-toolbar-inner{flex-direction:column;flex-wrap:nowrap;align-items:stretch;overflow-x:visible}.ppms-toolbar-dropdown{width:100%}}.ppms-saved-views-title{margin:0 0 .5rem;font-size:.9rem;font-weight:700}.ppms-saved-views-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center}.ppms-th-check,.ppms-td-check{width:2.25rem;text-align:center;vertical-align:middle}.ppms-deadline{display:inline-flex;flex-direction:column;gap:.15rem;font-size:.88rem;font-variant-numeric:tabular-nums}.ppms-deadline-badge{display:inline-block;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.1rem .35rem;border-radius:4px;width:fit-content}.ppms-deadline--soon{color:#b45309}.ppms-deadline--soon .ppms-deadline-badge{background:#d9770626;color:#b45309}.ppms-deadline--overdue{color:var(--ppms-danger);font-weight:600}.ppms-deadline--overdue .ppms-deadline-badge{background:#dc26261f;color:var(--ppms-danger)}.ppms-deadline--ok{color:var(--ppms-text)}.ppms-supplier-edit-row{display:grid;grid-template-columns:1fr 1fr auto;gap:.75rem;align-items:end}.ppms-supplier-edit-remove{align-self:end}@media (max-width: 640px){.ppms-supplier-edit-row{grid-template-columns:1fr}}.ppms-pl-subtoolbar--unified{align-items:center}.ppms-pl-leading-cluster{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem .85rem}.ppms-pl-new-project-btn{display:inline-flex;align-items:center;justify-content:center;gap:.42rem;min-height:2.35rem;padding:.42rem 1.05rem .42rem .78rem;font-size:.8125rem;font-weight:700;letter-spacing:.02em;border-radius:10px;box-shadow:0 1px 3px #9a003638;transition:box-shadow .15s ease,transform .12s ease,background .15s ease}.ppms-pl-new-project-btn:hover:not(:disabled){box-shadow:0 3px 10px #9a003647;transform:translateY(-1px)}.ppms-pl-new-project-btn:active:not(:disabled){transform:translateY(0)}.ppms-pl-ico-svg--on-primary{width:1.05rem;height:1.05rem;flex-shrink:0;opacity:.98}.ppms-saved-views--compact{padding:.65rem 1rem}.ppms-saved-views--compact .ppms-saved-views-title{margin-bottom:.35rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ppms-muted)}.ppms-project-filters--staging{padding:.65rem 1rem .85rem}.ppms-pl-filter-tabs-wrap{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.5rem .75rem;margin-bottom:.65rem;padding-bottom:.55rem;border-bottom:1px solid var(--ppms-border)}.ppms-pl-scope-row{display:flex;flex-wrap:wrap;gap:.15rem .35rem;min-width:0;flex:1 1 auto}.ppms-pl-scope-tab{font:inherit;font-size:.82rem;font-weight:600;padding:.4rem .15rem .35rem;margin:0;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--ppms-muted);cursor:pointer;border-radius:0;transition:color .15s ease,border-color .15s ease}.ppms-pl-scope-tab:hover{color:var(--ppms-text)}.ppms-pl-scope-tab:focus-visible{outline:none;box-shadow:var(--ppms-focus);border-radius:4px}.ppms-pl-scope-tab--active{color:var(--ppms-primary);border-bottom-color:var(--ppms-primary)}.ppms-pl-type-row{display:flex;flex-wrap:wrap;gap:.25rem;align-items:center;flex:1 1 100%;order:3}.ppms-pl-filter-toolbar-right{flex:0 0 auto;order:2}@media (min-width: 720px){.ppms-pl-type-row{flex:1 1 auto;order:unset}.ppms-pl-filter-toolbar-right{order:unset}}.ppms-pl-type-tab{font:inherit;font-size:.78rem;padding:.28rem .55rem;border:1px solid var(--ppms-border);border-radius:999px;background:var(--ppms-bg-subtle);color:var(--ppms-text);cursor:pointer;transition:background .15s ease,border-color .15s ease}.ppms-pl-type-tab:hover{border-color:var(--ppms-primary-muted);background:var(--ppms-primary-soft)}.ppms-pl-type-tab--active{background:var(--ppms-primary-soft);border-color:var(--ppms-primary);color:var(--ppms-primary);font-weight:600}.ppms-pl-view-mode-label{display:flex;align-items:center;gap:.35rem;margin:0}.ppms-pl-view-mode-text{font-size:.78rem;font-weight:600;color:var(--ppms-muted)}.ppms-pl-view-mode-select{font:inherit;font-size:.8rem;padding:.32rem 1.75rem .32rem .5rem;border-radius:var(--ppms-radius-sm);border:1px solid var(--ppms-border);background:var(--ppms-surface);color:var(--ppms-muted);cursor:not-allowed}.ppms-pl-subtoolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem 1rem;padding:.5rem .85rem;background:var(--ppms-surface);border:1px solid var(--ppms-border);border-radius:var(--ppms-radius-sm);box-shadow:var(--ppms-shadow)}.ppms-pl-subtoolbar-left{display:flex;align-items:center;flex-shrink:0;min-width:0}.ppms-pl-view-toggle{display:inline-flex;padding:.2rem;gap:.15rem;background:var(--ppms-bg-subtle);border:1px solid var(--ppms-border);border-radius:10px}.ppms-pl-view-btn{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;margin:0;padding:0;border:none;border-radius:8px;background:transparent;color:var(--ppms-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.ppms-pl-view-btn--active{background:var(--ppms-surface);color:var(--ppms-primary);box-shadow:0 1px 3px #1a1d2614}.ppms-pl-view-btn--disabled{opacity:.42}.ppms-pl-grid-root{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,18.75rem),1fr));gap:1.35rem 1.4rem;align-items:stretch}.ppms-pl-grid-group{grid-column:1 / -1;display:flex;align-items:center;flex-wrap:wrap;gap:.4rem .65rem;margin:.5rem 0 .2rem;padding:.55rem .6rem .5rem .65rem;border:0;border-left:3px solid var(--ppms-primary);border-radius:0 8px 8px 0;background:linear-gradient(90deg,rgba(154,0,54,.06),transparent 70%);font:inherit;font-size:.8125rem;font-weight:700;color:var(--ppms-text);text-align:left;width:100%;cursor:pointer;box-sizing:border-box}.ppms-pl-grid-group:hover{background:linear-gradient(90deg,rgba(154,0,54,.09),transparent 70%)}.ppms-pl-grid-group:focus-visible{outline:2px solid var(--ppms-primary);outline-offset:2px}.ppms-pl-grid-group-chevron{margin-right:.1rem}.ppms-pl-grid-group:first-child{margin-top:0;padding-top:.35rem}.ppms-pl-grid-group-title{text-transform:uppercase;font-size:.72rem;font-weight:700;letter-spacing:.06em;color:var(--ppms-muted)}.ppms-pl-grid-group-count{font-weight:600;font-size:.8125rem;color:var(--ppms-text);opacity:.85}.ppms-pl-project-card{display:flex;flex-direction:column;height:100%;min-height:0;padding:0;overflow:hidden;background:var(--ppms-surface);border:1px solid var(--ppms-border);border-radius:12px;box-shadow:0 1px 2px #1a1d260d;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.ppms-pl-project-card:hover{border-color:#9a003638;box-shadow:0 6px 20px #1a1d2614;transform:translateY(-1px)}.ppms-pl-project-card-top{padding:.95rem 1rem .85rem;border-bottom:1px solid var(--ppms-border);background:linear-gradient(180deg,var(--ppms-bg-subtle) 0%,transparent 100%)}.ppms-pl-project-card-body{display:flex;flex-direction:column;gap:.85rem;flex:1 1 auto;padding:.85rem 1rem .75rem;min-height:0}.ppms-pl-project-card-head{display:flex;align-items:flex-start;gap:.55rem;min-width:0}.ppms-pl-card-check{display:flex;align-items:center;flex-shrink:0;margin:.2rem 0 0;cursor:pointer}.ppms-pl-project-card-head-text{min-width:0;flex:1 1 auto}.ppms-pl-project-card-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:600;font-size:.9375rem;line-height:1.38;letter-spacing:-.01em;color:var(--ppms-text);text-decoration:none}.ppms-pl-project-card-title:hover{color:var(--ppms-primary);text-decoration:none}.ppms-pl-project-card-code{display:block;margin-top:.28rem;font-size:.72rem;font-variant-numeric:tabular-nums;letter-spacing:.02em}.ppms-pl-project-card-tags{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.65rem}.ppms-pl-project-card-type.ppms-pl-tag{font-size:.65rem;padding:.14rem .45rem;border-radius:6px}.ppms-pl-project-card-row{display:flex;flex-direction:column;gap:.35rem;min-width:0}.ppms-pl-project-card-mini-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.055em;color:var(--ppms-muted)}.ppms-pl-project-card-owner{margin:0;border:0;background:transparent;padding:0;width:100%;text-align:left;cursor:pointer;font:inherit}.ppms-pl-project-card-owner:disabled{cursor:default;opacity:.65}.ppms-pl-project-card-owner:focus-visible{outline:2px solid var(--ppms-primary);outline-offset:2px;border-radius:6px}.ppms-pl-project-card-owner .ppms-pl-username{font-size:.8125rem;font-weight:500}.ppms-pl-project-card-progress-block{display:flex;flex-direction:column;gap:.4rem;min-width:0}.ppms-pl-project-card-progress-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.ppms-pl-project-card-pct{font-size:.8125rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ppms-text)}.ppms-progress-track--card{max-width:none;width:100%;height:.5rem;margin-bottom:.15rem}.ppms-progress-track--card .ppms-progress-knob{width:1rem;height:1rem;min-width:1rem}.ppms-progress-track--card .ppms-progress-knob-pct{display:none}.ppms-pl-project-card-dl{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin:.15rem 0 0}.ppms-pl-project-card-stat{padding:.5rem .55rem;border-radius:8px;background:var(--ppms-bg-subtle);border:1px solid rgba(0,0,0,.04);min-width:0}.ppms-pl-project-card-dl dt{margin:0;font-weight:700;color:var(--ppms-muted);font-size:.62rem;text-transform:uppercase;letter-spacing:.05em;line-height:1.2}.ppms-pl-project-card-dl dd{margin:.28rem 0 0;font-size:.8125rem;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.3;color:var(--ppms-text)}.ppms-pl-project-card-actions{margin-top:auto;padding:.65rem 1rem .95rem;border-top:1px solid var(--ppms-border);background:var(--ppms-surface)}.ppms-pl-project-card-cta{display:flex;align-items:center;justify-content:center;width:100%;min-height:2.25rem;font-weight:600;border-radius:8px}.ppms-pl-grid-skeleton{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,18.75rem),1fr));gap:1.15rem 1.25rem}.ppms-pl-grid-skeleton-card{min-height:12rem;border-radius:12px;background:linear-gradient(110deg,var(--ppms-bg-subtle) 0%,var(--ppms-surface) 45%,var(--ppms-bg-subtle) 90%);background-size:200% 100%;animation:ppms-skeleton-shimmer 1.2s ease-in-out infinite;border:1px solid var(--ppms-border)}.ppms-pl-kanban-skeleton{display:flex;gap:.85rem;overflow:hidden;padding-bottom:.25rem}.ppms-pl-kanban-skeleton-col{flex:0 0 min(15rem,72vw);min-height:14rem;border-radius:12px;background:linear-gradient(110deg,var(--ppms-bg-subtle) 0%,var(--ppms-surface) 45%,var(--ppms-bg-subtle) 90%);background-size:200% 100%;animation:ppms-skeleton-shimmer 1.2s ease-in-out infinite;border:1px solid var(--ppms-border)}.ppms-pl-kanban-hint{margin:0 0 .65rem;font-size:.78rem;line-height:1.4}.ppms-pl-kanban-capacity{margin:0 0 .55rem;font-size:.76rem;line-height:1.4}.ppms-pl-kanban-board{width:100%;min-width:0}.ppms-pl-kanban-scroll{display:flex;gap:.85rem;overflow-x:auto;overflow-y:hidden;padding-bottom:.35rem;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.ppms-pl-kanban-col{flex:0 0 min(17.5rem,82vw);max-height:min(70vh,36rem);display:flex;flex-direction:column;min-width:0;border-radius:12px;border:1px solid var(--ppms-border);background:var(--ppms-bg-subtle);scroll-snap-align:start;transition:border-color .15s ease,box-shadow .15s ease}.ppms-pl-kanban-col--over{border-color:#9a003673;box-shadow:0 0 0 2px #9a00361f}.ppms-pl-kanban-col-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.55rem .65rem;border-bottom:1px solid var(--ppms-border);background:var(--ppms-surface-elevated);border-radius:12px 12px 0 0}.ppms-pl-kanban-col-title{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--ppms-muted)}.ppms-pl-kanban-col-count{font-size:.78rem;font-weight:800;font-variant-numeric:tabular-nums;padding:.12rem .45rem;border-radius:999px;background:#9a00361a;color:var(--ppms-primary)}.ppms-pl-kanban-col-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:.55rem;display:flex;flex-direction:column;gap:.55rem}.ppms-pl-kanban-empty{margin:0;padding:1rem .35rem;text-align:center;font-size:.78rem;color:var(--ppms-muted)}.ppms-pl-kanban-card{border-radius:10px;border:1px solid var(--ppms-border);background:var(--ppms-surface);box-shadow:0 1px 2px #1a1d260d;padding:.55rem .6rem .5rem;cursor:default;transition:opacity .15s ease,box-shadow .15s ease}.ppms-pl-kanban-card[draggable=true]{cursor:grab}.ppms-pl-kanban-card[draggable=true]:active{cursor:grabbing}.ppms-pl-kanban-card--dragging{opacity:.45}.ppms-pl-kanban-card--saving{pointer-events:none;opacity:.72}.ppms-pl-kanban-card-top{display:flex;align-items:flex-start;gap:.35rem;min-width:0}.ppms-pl-kanban-card-check{margin-top:.08rem}.ppms-pl-kanban-card-head-text{min-width:0;flex:1 1 auto}.ppms-pl-kanban-card-title{display:block;font-size:.84rem;font-weight:700;line-height:1.3;color:var(--ppms-text);text-decoration:none;word-break:break-word}.ppms-pl-kanban-card-title:hover{color:var(--ppms-primary);text-decoration:underline}.ppms-pl-kanban-card-labels{display:flex;flex-wrap:wrap;gap:.18rem;align-items:center}.ppms-pl-kanban-card-code{display:block;margin-top:.2rem;font-size:.68rem}.ppms-pl-kanban-card-meta{display:flex;flex-wrap:wrap;gap:.28rem;align-items:center;margin-top:.45rem}.ppms-pl-tag--kanban{font-size:.62rem;padding:.08rem .32rem}.ppms-status-pill--kanban{font-size:.62rem;padding:.1rem .38rem}.ppms-pl-kanban-card-progress{display:flex;align-items:center;gap:.4rem;margin-top:.45rem}.ppms-progress-track--kanban{flex:1 1 auto;min-width:0;height:.45rem}.ppms-progress-track--kanban .ppms-progress-knob{display:none}.ppms-pl-kanban-card-pct{flex-shrink:0;font-size:.68rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ppms-muted)}.ppms-pl-kanban-card-foot{display:flex;align-items:center;gap:.35rem;margin-top:.5rem;padding-top:.45rem;border-top:1px solid var(--ppms-border);min-width:0}.ppms-pl-kanban-owner{flex:1 1 auto;min-width:0;border:0;background:transparent;padding:0;font:inherit;text-align:left;cursor:pointer;display:flex;align-items:center;gap:.35rem}.ppms-pl-kanban-owner-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem}.ppms-pl-kanban-open{flex-shrink:0}.ppms-pl-ico-svg{display:block;width:1.125rem;height:1.125rem;flex-shrink:0}.ppms-pl-ico-svg--caret{width:.95rem;height:.95rem;margin-left:.1rem;opacity:.65;transition:transform .2s ease,opacity .15s ease}.ppms-pl-subtoolbar-right{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.35rem}.ppms-pl-subtoolbar-right--fill{flex:1 1 auto;margin-left:auto;justify-content:flex-end}.ppms-pl-page-arrows{display:inline-flex;align-items:center;gap:.2rem;padding-right:.65rem;margin-right:.35rem;border-right:1px solid var(--ppms-border)}.ppms-pl-page-btn{display:inline-flex;align-items:center;justify-content:center;min-width:2.25rem;height:2.25rem;margin:0;padding:0;border-radius:8px;color:var(--ppms-text)}.ppms-pl-page-btn:hover:not(:disabled){background:var(--ppms-primary-soft);color:var(--ppms-primary)}.ppms-pl-page-btn:disabled{opacity:.35}.ppms-pl-tbar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem}.ppms-toolbar-dropdown--pl .ppms-toolbar-dropdown-panel{left:auto;right:0;min-width:min(17rem,calc(100vw - 2rem))}.ppms-project-filters-primary--search-only{margin-bottom:0}.ppms-project-filters-primary--search-only .ppms-project-filters-search{flex:1 1 100%;min-width:0;max-width:none}.ppms-pl-tbar-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:2.35rem;padding:.4rem .75rem;font-size:.8125rem;font-weight:600;white-space:nowrap;color:var(--ppms-text);border-radius:8px;border:1px solid transparent;transition:background .15s ease,border-color .15s ease,color .15s ease}.ppms-pl-tbar-btn:hover:not(:disabled){background:var(--ppms-primary-soft);border-color:var(--ppms-primary-muted);color:var(--ppms-primary)}.ppms-pl-tbar-btn:disabled{opacity:.48;cursor:not-allowed}.ppms-pl-tbar-btn--menu{padding-right:.55rem}.ppms-pl-tbar-btn--menu[aria-expanded=true]{background:var(--ppms-primary-soft);border-color:var(--ppms-primary-muted);color:var(--ppms-primary)}.ppms-pl-tbar-btn--menu[aria-expanded=true] .ppms-pl-ico-svg--caret{opacity:1;transform:rotate(180deg)}.ppms-pl-tbar-btn .ppms-pl-ico-svg{opacity:.88}.ppms-pl-tbar-btn:hover:not(:disabled) .ppms-pl-ico-svg{opacity:1}.ppms-dropdown-menuitem--static{cursor:default;padding:.5rem .75rem}.ppms-dropdown-menuitem--static:hover{background:transparent}.ppms-pl-sort-inline{margin:0;flex-direction:column;align-items:stretch;gap:.25rem}.ppms-pl-sort-inline span{font-size:.72rem}.ppms-table--project-staging{table-layout:auto;width:max-content;min-width:100%;box-sizing:border-box}.ppms-table--project-staging thead th,.ppms-table--project-staging tbody td{vertical-align:middle;padding:.72rem .78rem}.ppms-table--project-staging .ppms-th-check,.ppms-table--project-staging .ppms-td-check{width:2.35rem;text-align:center}.ppms-table--project-staging .ppms-th-admin,.ppms-table--project-staging .ppms-td-admin{width:9.25rem}.ppms-table--project-staging .ppms-th-code,.ppms-table--project-staging .ppms-td-code{width:5.25rem}.ppms-table--project-staging .ppms-th-name{min-width:12rem}.ppms-table--project-staging .ppms-td-name{white-space:normal;word-break:break-word;overflow-wrap:break-word}.ppms-table--project-staging .ppms-th-participants,.ppms-table--project-staging .ppms-td-participants{width:7rem;min-width:6.5rem;text-align:center;vertical-align:middle}.ppms-table--project-staging .ppms-th-process,.ppms-table--project-staging .ppms-td-process{width:7.25rem}.ppms-table--project-staging .ppms-th-tasks,.ppms-table--project-staging .ppms-td-tasks{min-width:5.5rem;width:auto;white-space:nowrap;text-align:center}.ppms-table--project-staging .ppms-th-date{width:6.25rem;min-width:5.5rem;font-variant-numeric:tabular-nums;white-space:normal}.ppms-table--project-staging .ppms-td-date{width:6.25rem;font-variant-numeric:tabular-nums;white-space:nowrap}.ppms-table--project-staging .ppms-th-status,.ppms-table--project-staging .ppms-td-status{width:7rem}.ppms-table--project-staging .ppms-th-actions,.ppms-table--project-staging .ppms-td-actions{width:5.25rem;text-align:center}.ppms-table--project-staging tbody tr.ppms-pl-data-row:hover td{background:var(--ppms-primary-soft)}.ppms-table--project-staging thead th{text-align:center}.ppms-table--project-staging thead th.ppms-th-admin,.ppms-table--project-staging thead th.ppms-th-name{text-align:left}.ppms-table--project-staging tbody td{text-align:center}.ppms-table--project-staging .ppms-td-admin,.ppms-table--project-staging .ppms-td-name{text-align:left}.ppms-table--project-staging .ppms-th-num,.ppms-table--project-staging .ppms-td-num{text-align:center}.ppms-pl-column-picker-wrap{min-width:12rem;max-width:16rem}.ppms-pl-column-picker-title{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ppms-muted);margin-bottom:.15rem}.ppms-pl-column-picker-hint{margin:0 0 .4rem;font-size:.68rem;line-height:1.35}.ppms-pl-column-picker-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}.ppms-pl-column-picker-row{display:flex;align-items:center;gap:.45rem;margin:0;font-size:.8rem;cursor:pointer;-webkit-user-select:none;user-select:none}.ppms-pl-column-picker-row input:disabled{cursor:not-allowed;opacity:.55}.ppms-pl-project-card-dl--3{grid-template-columns:repeat(3,minmax(0,1fr))}.ppms-pl-project-card-dl--4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width: 420px){.ppms-pl-project-card-dl--3,.ppms-pl-project-card-dl--4{grid-template-columns:1fr}}.ppms-pl-name-link{font-weight:700;color:var(--ppms-text);text-decoration:none}.ppms-pl-name-link:hover{color:var(--ppms-primary);text-decoration:underline}.ppms-pl-tag{font-size:.68rem;font-weight:600;padding:.12rem .4rem;border-radius:4px;background:#9a00361a;color:var(--ppms-primary)}.ppms-pl-name-labels{display:flex;flex-wrap:wrap;gap:.2rem;align-items:center}.ppms-pl-name-labels-row,.ppms-pl-kanban-labels-row{display:flex;flex-wrap:wrap;align-items:center;gap:.28rem;margin-top:.28rem}.ppms-pl-label-add-btn{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:1.35rem;height:1.35rem;padding:0 .15rem;border:1px dashed var(--ppms-border);border-radius:4px;background:transparent;color:var(--ppms-muted);font-size:.8rem;font-weight:700;line-height:1;cursor:pointer}.ppms-pl-label-add-btn:hover{border-color:var(--ppms-primary);color:var(--ppms-primary);background:var(--ppms-primary-soft)}.ppms-pl-label-add-btn:focus-visible{outline:2px solid var(--ppms-primary);outline-offset:2px}.ppms-pl-quick-label-input{width:min(11rem,100%);max-width:100%;box-sizing:border-box;font-size:.72rem;padding:.18rem .4rem;border:1px solid var(--ppms-border);border-radius:4px;background:var(--ppms-surface)}.ppms-pl-detail-name-labels{display:flex;flex-wrap:wrap;gap:.35rem;margin:.35rem 0 .5rem}.ppms-pl-label-chip--under-name{font-size:.65rem}.ppms-pl-labels-cell{display:flex;flex-wrap:wrap;gap:.2rem;align-items:center}.ppms-pl-label-chip{display:inline-flex;align-items:center;max-width:100%;font-size:.65rem;font-weight:600;padding:.1rem .35rem;border-radius:4px;background:#2563eb1f;color:#1d4ed8;line-height:1.2;word-break:break-word}.ppms-pl-label-chip--header{font-size:.72rem}.ppms-pl-labels-more{font-size:.7rem;font-weight:700;color:var(--ppms-muted)}.ppms-pl-project-card-labels{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.35rem}.ppms-labels-modal-section{padding-bottom:.35rem;border-bottom:1px solid var(--ppms-border)}.ppms-labels-modal-section:last-of-type{border-bottom:0}.ppms-labels-modal-sub{margin:0 0 .35rem;font-size:.82rem;font-weight:700}.ppms-labels-modal-hint{margin:0 0 .5rem;font-size:.72rem;line-height:1.35}.ppms-labels-modal-actions-row{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.ppms-modal--labels{max-width:26rem}.ppms-pl-group-row .ppms-pl-group-cell{background:linear-gradient(90deg,#9a003612,#9a003605);font-weight:700;font-size:.82rem;padding:0;border-bottom:1px solid var(--ppms-border)}.ppms-pl-group-toggle{display:flex;align-items:center;flex-wrap:wrap;gap:.15rem .35rem;width:100%;margin:0;padding:.58rem .85rem;border:0;border-radius:0;background:transparent;font:inherit;font-weight:700;font-size:.82rem;color:inherit;text-align:left;cursor:pointer}.ppms-pl-group-toggle:hover{background:#9a00360a}.ppms-pl-group-toggle:focus-visible{outline:2px solid var(--ppms-primary);outline-offset:-2px}.ppms-pl-group-chevron{display:inline-block;margin-right:.35rem;font-size:.65rem;color:var(--ppms-muted);transition:transform .15s ease;transform-origin:center}.ppms-pl-group-chevron--collapsed{transform:rotate(-90deg)}.ppms-pl-group-count{margin-left:.25rem;font-weight:600;color:var(--ppms-muted)}.ppms-pl-usercell{display:flex;align-items:center;gap:.45rem;min-width:0}.ppms-pl-avatar{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:999px;font-size:.72rem;font-weight:800;color:#fff;letter-spacing:.02em}.ppms-pl-avatar--sm{width:1.45rem;height:1.45rem;font-size:.58rem}.ppms-pl-username{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:.8rem}.ppms-pl-participants{display:flex;align-items:center;gap:.25rem}.ppms-pl-participants-stack{display:inline-flex;flex-direction:row;align-items:center;flex-shrink:0}.ppms-pl-participants-stack-avatar{position:relative;flex-shrink:0}.ppms-pl-participants-stack-avatar:not(:first-child){margin-left:-.48rem;box-shadow:0 0 0 2px var(--ppms-surface)}.ppms-pl-participants-more{font-size:.75rem;font-weight:700;color:var(--ppms-muted)}.ppms-pl-usercell-trigger{border:0;background:transparent;padding:0;margin:0;width:100%;max-width:100%;text-align:left;font:inherit;color:inherit;cursor:pointer}.ppms-pl-usercell-trigger:disabled{cursor:default;opacity:.65}.ppms-pl-usercell-trigger:focus-visible{outline:2px solid var(--ppms-primary);outline-offset:2px;border-radius:6px}.ppms-pl-participants-trigger{display:flex;align-items:center;justify-content:center;gap:.25rem;margin:0 auto;border:0;background:transparent;padding:.2rem .25rem;font:inherit;color:inherit;cursor:pointer;border-radius:8px}.ppms-pl-participants-trigger:disabled{cursor:default;opacity:.55}.ppms-pl-participants-trigger:focus-visible{outline:2px solid var(--ppms-primary);outline-offset:2px}.ppms-pl-participants-avatar-btn{display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;padding:0;margin:0;cursor:pointer;border-radius:50%;font:inherit;color:inherit}.ppms-pl-participants-avatar-btn:not(:first-child){margin-left:-.48rem}.ppms-pl-participants-avatar-btn .ppms-pl-participants-stack-avatar{box-shadow:0 0 0 2px var(--ppms-surface)}.ppms-pl-participants-avatar-btn:disabled{cursor:default;opacity:.55}.ppms-pl-participants-avatar-btn:focus-visible{outline:2px solid var(--ppms-primary);outline-offset:2px}.ppms-pl-participants-overflow-btn{border:0;background:transparent;padding:.15rem .2rem;margin:0 0 0 .1rem;font:inherit;cursor:pointer;border-radius:6px;color:inherit}.ppms-pl-participants-overflow-btn:focus-visible{outline:2px solid var(--ppms-primary);outline-offset:2px}.ppms-pl-user-popover-pick-list{margin:.35rem 0 0;padding:0;list-style:none}.ppms-pl-user-popover-pick{display:block;width:100%;margin:0;padding:.35rem 0;border:0;background:transparent;text-align:left;font:inherit;color:var(--ppms-primary);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.ppms-pl-user-popover-pick:hover{color:var(--ppms-primary);opacity:.88}.ppms-pl-user-popover{position:fixed;z-index:10050;min-width:220px;max-width:min(280px,calc(100vw - 16px));padding:.8rem .95rem;background:var(--ppms-surface);border:1px solid var(--ppms-border);border-radius:10px;box-shadow:0 10px 28px #0f172a1f}.ppms-pl-user-popover-head{display:flex;align-items:flex-start;gap:.55rem;min-width:0}.ppms-pl-user-popover-text{min-width:0;flex:1}.ppms-pl-user-popover-name{display:block;font-size:.875rem;line-height:1.35}.ppms-pl-user-popover-email{margin:.2rem 0 0;font-size:.78rem;color:var(--ppms-muted);word-break:break-all}.ppms-pl-user-popover-extra{margin-top:.65rem;padding-top:.6rem;border-top:1px solid var(--ppms-border)}.ppms-pl-user-popover-extra-title{margin:0 0 .35rem;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ppms-muted)}.ppms-pl-user-popover-list{margin:0;padding-left:1.1rem;font-size:.78rem;line-height:1.45;word-break:break-all}.ppms-td-num{text-align:right;font-variant-numeric:tabular-nums}.ppms-th-num{text-align:right}.ppms-status-pill{display:inline-block;padding:.2rem .55rem;border-radius:999px;font-size:.72rem;font-weight:600;white-space:nowrap}.ppms-status-pill--track{background:#3b82f61f;color:#1d4ed8}.ppms-status-pill--risk{background:#eab30826;color:#a16207}.ppms-status-pill--late{background:#f9731624;color:#c2410c}.ppms-status-pill--blocked{background:#dc26261f;color:var(--ppms-danger)}.ppms-status-pill--muted{background:var(--ppms-bg-subtle);color:var(--ppms-muted)}.ppms-progress-track--staging{position:relative;height:.55rem;min-width:5rem;max-width:9rem;border-radius:999px;background:#fde68a;overflow:visible}.ppms-progress-track--staging .ppms-progress-fill{border-radius:999px;height:100%}.ppms-progress-knob{position:absolute;top:50%;transform:translate(-50%,-50%);width:1.1rem;height:1.1rem;border-radius:999px;background:#fff;border:2px solid var(--ppms-primary);box-shadow:0 1px 4px #0000001f;pointer-events:none;display:flex;align-items:center;justify-content:center;min-width:1.1rem}.ppms-progress-knob-pct{position:absolute;top:calc(100% + 2px);left:50%;transform:translate(-50%);font-size:.65rem;font-weight:700;color:var(--ppms-muted);white-space:nowrap}.ppms-td-process .ppms-progress-track--staging{margin-bottom:.85rem}.ppms-page--project-detail{max-width:min(100%,90rem)}.ppms-page--project-detail>header.ppms-page-head{background:#faf9f8;border:1px solid #edebe9;border-left:4px solid var(--pbi-blue);border-radius:4px;box-shadow:0 1px 3px #0000000f;padding:1rem 1.25rem 1.1rem;margin-bottom:.25rem}.ppms-page--project-detail>header.ppms-page-head h1{font-size:1.375rem;font-weight:600;color:#252423;letter-spacing:-.01em}.ppms-page--project-detail .ppms-back{margin-bottom:.4rem;font-size:.8125rem;font-weight:600;color:#106ebe;text-decoration:none}.ppms-page--project-detail .ppms-back:hover{text-decoration:underline;color:#005a9e}.ppms-page--project-detail .ppms-pl-label-chip--header{background:#118dff1a;color:#0a5fad;border:1px solid rgba(17,141,255,.28);font-weight:600}.ppms-page--project-detail .ppms-tags span{background:#f3f2f1;color:#323130;border:1px solid #edebe9;font-weight:500;border-radius:4px;padding:.2rem .5rem;font-size:.8125rem}.ppms-page--project-detail section.ppms-card{border:1px solid #e2e4e8;border-radius:4px;box-shadow:inset 0 3px 0 var(--pbi-blue),0 1px 3px #0000000f;background:#fff;padding:1rem 1.1rem 1.15rem}.ppms-page--project-detail section.ppms-card>h2:first-child,.ppms-page--project-detail section.ppms-card>.ppms-row--spread:first-child h2{font-size:.875rem;font-weight:600;color:#252423;margin-bottom:.35rem}.ppms-page--project-detail section.ppms-card>h2:first-child{margin-top:0}.ppms-page--project-detail .ppms-task-form input,.ppms-page--project-detail .ppms-task-form select{border-radius:4px;border-color:#c8c6c4}.ppms-page--project-detail .ppms-task-form input:focus-visible,.ppms-page--project-detail .ppms-task-form select:focus-visible{outline:none;border-color:var(--pbi-blue);box-shadow:0 0 0 1px var(--pbi-blue)}.ppms-page--project-detail .ppms-gantt-bar-wrap{background:#f3f2f1;border-color:#e1dfdd;border-radius:4px}.ppms-page--project-detail .ppms-gantt-bar{background:linear-gradient(90deg,#0a6cbc,var(--pbi-blue));border-radius:3px}.ppms-page--project-detail .ppms-process-step:not(:last-child):after{background:#e1dfdd}.ppms-page--project-detail .ppms-process-step.is-current .ppms-process-dot{background:var(--pbi-blue);box-shadow:0 0 0 2px #118dff59}.ppms-page--project-detail .ppms-process-badge{background:#118dff1f;color:#0a5fad}.ppms-page--project-detail .ppms-table thead th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#605e5c;background:#faf9f8;border-bottom:1px solid #edebe9;font-weight:600}.ppms-page--project-detail .ppms-table tbody tr:nth-child(2n){background:#faf9f8}.ppms-page--project-detail .ppms-table tbody tr:hover td{background:#118dff0f}.ppms-page--project-detail .ppms-linklike{color:#106ebe;font-weight:600}.ppms-page--project-detail .ppms-linklike:hover{color:#005a9e}.ppms-page--project-detail .ppms-bulk{padding:.65rem .75rem;background:#faf9f8;border:1px solid #edebe9;border-radius:4px}.ppms-pd-tasks-board{border-top:3px solid var(--pbi-blue);padding-top:.75rem}.ppms-pd-tasks-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-bottom:.65rem}.ppms-pd-tasks-toolbar-tools{display:inline-flex;align-items:center;gap:.25rem;margin-left:auto}.ppms-pd-tasks-toolbar-tools button{min-width:2rem;height:2rem;padding:0 .4rem;border-radius:4px;border:1px solid #edebe9;background:#fff;font-weight:700;font-size:.95rem;line-height:1;cursor:pointer;color:var(--ppms-text)}.ppms-pd-tasks-toolbar-tools button:hover{border-color:var(--pbi-blue);color:#106ebe}.ppms-pd-tasks-split{display:grid;grid-template-columns:minmax(280px,1fr) minmax(260px,1fr);gap:0;border:1px solid #edebe9;border-radius:6px;overflow:hidden;background:#fff;min-height:220px}@media (max-width: 960px){.ppms-pd-tasks-split{grid-template-columns:1fr}}.ppms-pd-tasks-col-left{border-right:1px solid #edebe9;display:flex;flex-direction:column;min-width:0;background:#fff}.ppms-pd-tasks-col-right{display:flex;flex-direction:column;min-width:0;background:#faf9f8}.ppms-pd-tasks-scroll{overflow:auto;max-height:min(62vh,720px)}.ppms-pd-tasks-table{width:100%;border-collapse:collapse;font-size:.8125rem}.ppms-pd-tasks-table thead th{position:sticky;top:0;z-index:2;background:#faf9f8;padding:.5rem .4rem;text-align:left;font-size:.65rem;text-transform:uppercase;letter-spacing:.04em;color:#605e5c;border-bottom:1px solid #edebe9;white-space:nowrap}.ppms-pd-tasks-table tbody tr{height:40px}.ppms-pd-tasks-table tbody td{padding:.45rem .4rem;border-bottom:1px solid #f3f2f1;vertical-align:middle}.ppms-pd-tasks-table tbody tr:hover td{background:#118dff0d}.ppms-pd-tasks-table .ppms-td-task-name{max-width:14rem}.ppms-pd-tasks-table .ppms-task-name-btn{display:block;text-align:left;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ppms-pd-tasks-avatar{width:1.75rem;height:1.75rem;border-radius:50%;background:linear-gradient(135deg,#e8e6e3,#d2d0ce);color:#323130;font-size:.65rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ppms-task-status-pill{display:inline-block;padding:.15rem .45rem;border-radius:4px;font-size:.72rem;font-weight:600;white-space:nowrap}.ppms-task-status-pill--todo{background:#e3f2fd;color:#1565c0}.ppms-task-status-pill--in_progress{background:#ede7f6;color:#5e35b1}.ppms-task-status-pill--done{background:#e8f5e9;color:#2e7d32}.ppms-task-status-pill--blocked{background:#ffebee;color:#c62828}.ppms-pd-gantt-head{flex-shrink:0;border-bottom:1px solid #edebe9;background:#fff}.ppms-pd-gantt-month{padding:.35rem .5rem;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-align:center;color:#605e5c;border-bottom:1px solid #edebe9}.ppms-pd-gantt-hscroll{overflow-x:auto;overflow-y:hidden}.ppms-pd-gantt-hscroll-inner{min-width:100%}.ppms-pd-gantt-daycols{display:grid;grid-auto-flow:column;grid-auto-columns:var(--pd-gantt-day-w, 26px);border-bottom:1px solid #edebe9}.ppms-pd-gantt-daycols--dow{border-bottom:none}.ppms-pd-gantt-daycell{text-align:center;font-size:.62rem;color:#605e5c;padding:.2rem 0;border-right:1px solid #f3f2f1}.ppms-pd-gantt-daycols--nums .ppms-pd-gantt-daycell{font-weight:600;color:#323130}.ppms-pd-gantt-body-scroll{overflow:auto;max-height:min(62vh,720px)}.ppms-pd-gantt-track-row{height:40px;box-sizing:border-box;border-bottom:1px solid #f3f2f1;display:flex;align-items:center;padding:0 .35rem}.ppms-pd-gantt-track-bg{position:relative;width:100%;height:14px;background:#fff;border:1px solid #e1dfdd;border-radius:4px;overflow:hidden}.ppms-pd-gantt-bar-fill{position:absolute;top:0;height:100%;border-radius:3px;background:linear-gradient(90deg,#0a6cbc,var(--pbi-blue));min-width:3px}.ppms-pd-shell{display:grid;grid-template-columns:1fr;gap:1rem;align-items:start}.ppms-pd-head{background:#fff;border:1px solid #e2e4e8;border-radius:8px;padding:1rem 1.1rem 0;box-shadow:0 1px 3px #0000000f;margin-bottom:.25rem}.ppms-pd-head-row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem 1rem;margin-bottom:.75rem}.ppms-pd-head-left{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.65rem 1rem;min-width:0;flex:1 1 280px}.ppms-pd-head-row--main{align-items:flex-start}.ppms-pd-head-title h1{margin:0 0 .35rem;font-size:1.35rem;font-weight:600;color:#252423}.ppms-pd-head-actions{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end;align-items:center}.ppms-pd-more-dd{position:relative}.ppms-pd-more-dd>summary{list-style:none}.ppms-pd-more-dd>summary::-webkit-details-marker{display:none}.ppms-pd-more-dd__summary{min-width:2.25rem;padding-left:.55rem;padding-right:.55rem;justify-content:center}.ppms-pd-more-dd__caret{font-size:.75rem;line-height:1;opacity:.85}.ppms-pd-more-dd-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:30;min-width:11rem;padding:.25rem;border-radius:6px;border:1px solid #e2e4e8;background:#fff;box-shadow:0 4px 12px #0000001a}.ppms-pd-more-dd-menu button{display:block;width:100%;text-align:left;padding:.45rem .55rem;border:none;background:transparent;font:inherit;cursor:pointer;border-radius:4px;color:#323130}.ppms-pd-more-dd-menu button:hover{background:#f3f2f1}.ppms-pd-tabs{display:flex;flex-wrap:wrap;gap:.15rem;border-top:1px solid #edebe9;margin:0 -1.1rem;padding:0 .5rem}.ppms-pd-tab{position:relative;border:none;background:transparent;padding:.65rem .85rem;font-size:.875rem;font-weight:600;color:#605e5c;cursor:pointer;border-radius:6px 6px 0 0;font-family:inherit}.ppms-pd-tab:hover{color:#106ebe;background:#118dff0f}.ppms-pd-tab.is-active{color:#106ebe;background:#faf9f8;box-shadow:inset 0 -2px #2196f3}.ppms-pd-tab-badge{display:inline-block;margin-left:.25rem;padding:.05rem .35rem;font-size:.7rem;font-weight:700;background:#edebe9;color:#323130;border-radius:999px;vertical-align:middle}.ppms-pd-tab-panel{padding-top:.5rem}.ppms-pd-empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1.75rem 1.25rem;border:1px dashed #c8c6c4;border-radius:8px;background:#fafaf9;max-width:28rem;margin-left:auto;margin-right:auto}.ppms-pd-empty-state__visual{width:3rem;height:3rem;margin-bottom:.75rem;border-radius:50%;background:linear-gradient(135deg,#0078d41f,#0078d40a);border:1px solid rgba(0,120,212,.2)}.ppms-pd-empty-state__title{margin:0 0 .35rem;font-size:1rem;font-weight:600;color:#252423}.ppms-pd-empty-state__desc{margin:0 0 1rem;font-size:.875rem;line-height:1.45;color:#605e5c}.ppms-pd-empty-state__actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.ppms-pd-report-empty-wrap{padding:.5rem 0 1rem}.ppms-pd-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem;margin-bottom:.85rem;width:100%;box-sizing:border-box}.ppms-pd-stat{min-width:0;background:#fff;border-radius:8px;padding:.75rem .85rem;border:1px solid #e2e4e8;border-top:4px solid #9e9e9e;box-shadow:0 1px 2px #0000000d}.ppms-pd-stat-value{display:block;font-size:1.5rem;font-weight:700;color:#252423;line-height:1.2}.ppms-pd-stat-label{font-size:.78rem;font-weight:600;color:#605e5c}.ppms-pd-stat--total{border-top-color:#ff9800}.ppms-pd-stat--overdue{border-top-color:#f44336}.ppms-pd-stat--progress{border-top-color:#2196f3}.ppms-pd-stat--done{border-top-color:#4caf50}.ppms-pd-stat--pending{border-top-color:#ffc107}.ppms-pd-stat-ico{width:1.75rem;height:1.75rem;border-radius:6px;margin-bottom:.2rem;flex-shrink:0;background:#edebe9 center / 65% no-repeat;box-shadow:0 1px 2px #0000000f}.ppms-pd-stat-ico--total{background-color:#fff3e0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23e65100'%3E%3Cpath d='M3 17h18v2H3v-2zm0-6h18v2H3v-2zm0-6h18v2H3V5z'/%3E%3C/svg%3E")}.ppms-pd-stat-ico--overdue{background-color:#ffebee;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23c62828'%3E%3Cpath d='M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10 10-4.5 10-10S17.5 2 12 2zm.5 5H11v6l5.2 3.2.8-1.3-4.5-2.7V7z'/%3E%3C/svg%3E")}.ppms-pd-stat-ico--progress{background-color:#e3f2fd;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231565c0'%3E%3Cpath d='M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-5 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z'/%3E%3C/svg%3E")}.ppms-pd-stat-ico--done{background-color:#e8f5e9;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%232e7d32'%3E%3Cpath d='M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z'/%3E%3C/svg%3E")}.ppms-pd-stat-ico--pending{background-color:#fff8e1;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f57f17'%3E%3Cpath d='M14 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V8l-6-6zm2 16H8v-2h8v2zm0-4H8v-2h8v2zm-3-5V3.5L18.5 9H13z'/%3E%3C/svg%3E")}.ppms-pd-stat{display:flex;flex-direction:column;align-items:flex-start}.ppms-pd-add-task-dd{position:relative;display:inline-block;list-style:none}.ppms-pd-add-task-dd>summary{list-style:none;cursor:pointer}.ppms-pd-add-task-dd>summary::-webkit-details-marker{display:none}.ppms-pd-add-task-menu{position:absolute;right:0;top:calc(100% + 4px);min-width:14rem;z-index:20;background:#fff;border:1px solid #e2e4e8;border-radius:8px;box-shadow:0 4px 16px #0000001f;padding:.25rem;display:flex;flex-direction:column;gap:.05rem}.ppms-pd-add-task-menu button{text-align:left;border:none;background:transparent;padding:.5rem .65rem;border-radius:6px;font:inherit;font-size:.85rem;cursor:pointer;color:#252423}.ppms-pd-add-task-menu button:hover{background:#f3f2f1}.ppms-pd-activity-list{list-style:none;margin:0;padding:0}.ppms-pd-activity-row{display:grid;grid-template-columns:9rem 1fr 2fr;gap:.65rem;padding:.45rem 0;border-bottom:1px solid #edebe9;font-size:.85rem;align-items:baseline}.ppms-pd-activity-time{color:#605e5c;font-variant-numeric:tabular-nums}.ppms-pd-activity-user{font-weight:600;color:#252423}.ppms-pd-activity-action{color:#323130}.ppms-pd-phase-existing{list-style:none;margin:.5rem 0 0;padding:0}.ppms-pd-phase-existing li{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;padding:.45rem 0;border-bottom:1px solid #edebe9;font-size:.88rem}.ppms-modal--wide{max-width:min(96vw,80rem);width:100%}.ppms-page--project-detail .ppms-task-form--extended{display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:.5rem;align-items:start}.ppms-page--project-detail .ppms-task-form--extended input,.ppms-page--project-detail .ppms-task-form--extended select{width:100%;min-width:0}@media (max-width: 640px){.ppms-pd-activity-row{grid-template-columns:1fr}}.ppms-pd-section{border-radius:8px}.ppms-pd-section>h2:first-child{margin-top:0}.ppms-pd-mini-h{font-size:.75rem;margin:0 0 .35rem}.ppms-pd-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:.85rem 1.25rem;margin-top:.65rem}.ppms-pd-info-cell--wide{grid-column:span 2}@media (max-width: 640px){.ppms-pd-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ppms-pd-info-cell--wide{grid-column:span 1}}.ppms-pd-info-label{display:block;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#605e5c;margin-bottom:.2rem}.ppms-pd-info-value{font-size:.9rem;color:#252423;font-weight:500}.ppms-pd-badge{display:inline-block;padding:.15rem .45rem;border-radius:4px;font-size:.78rem;font-weight:600;background:#e3f2fd;color:#1565c0}.ppms-pd-badge--status{background:#e8f5e9;color:#2e7d32}.ppms-pd-people{display:flex;align-items:center;gap:.4rem}.ppms-pd-people--wrap{flex-wrap:wrap}.ppms-pd-avatar{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:50%;font-size:.65rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#5c6bc0,#3949ab);flex-shrink:0}.ppms-pd-progress-row{display:flex;align-items:center;gap:.5rem}.ppms-pd-progress-row--block{margin-top:.35rem;width:100%}.ppms-pd-progress-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .75rem}.ppms-pd-progress-pct{font-weight:600}.ppms-pd-progress-calc{font-size:.78rem;line-height:1.3;max-width:100%}.ppms-pd-label-chips{display:flex;flex-wrap:wrap;gap:.35rem}.ppms-pd-label-chip{display:inline-block;font-size:.75rem;padding:.15rem .45rem;border-radius:999px;background:#f3f2f1;border:1px solid #e1dfdd;color:#323130}.ppms-pd-slot-list{list-style:none;margin:.35rem 0 0;padding:0;display:flex;flex-direction:column;gap:.55rem}.ppms-pd-slot-row{display:flex;align-items:flex-start;gap:.65rem}.ppms-pd-slot-body{display:flex;flex-direction:column;gap:.2rem;min-width:0}.ppms-pd-slot-line1{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .5rem}.ppms-pd-slot-email{font-size:.85rem}.ppms-pd-role-pill{display:inline-block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.12rem .4rem;border-radius:4px;background:#f3f2f1;color:#605e5c;width:fit-content}.ppms-pd-progress-track{flex:1;min-width:4rem;height:.5rem;background:#edebe9;border-radius:999px;overflow:hidden}.ppms-pd-progress-fill{height:100%;background:linear-gradient(90deg,#4caf50,#8bc34a);border-radius:999px;transition:width .2s ease}.ppms-pd-desc{margin-top:1rem;padding-top:1rem;border-top:1px solid #edebe9}.ppms-pd-desc-title{margin:0 0 .35rem;font-size:.85rem;font-weight:600;color:#323130}.ppms-pd-desc-body{margin:0;white-space:pre-wrap;font-size:.9rem;line-height:1.5;color:#323130}.ppms-pd-workload .ppms-pd-stack-wrap{min-width:7rem}.ppms-pd-stack{display:flex;height:.55rem;border-radius:4px;overflow:hidden;background:#edebe9}.ppms-pd-stack-seg{display:block;height:100%;min-width:0}.ppms-pd-stack-seg--done{background:#4caf50}.ppms-pd-stack-seg--prog{background:#2196f3}.ppms-pd-stack-seg--other{background:#ffc107}.ppms-pd-stack-legend{display:flex;flex-wrap:wrap;gap:.75rem 1rem;margin-top:.5rem;font-size:.75rem;color:#605e5c}.ppms-pd-stack-legend span{display:inline-flex;align-items:center;gap:.3rem}.ppms-pd-dot{width:.45rem;height:.45rem;border-radius:50%;font-style:normal}.ppms-pd-dot--done{background:#4caf50}.ppms-pd-dot--prog{background:#2196f3}.ppms-pd-dot--other{background:#ffc107}.ppms-pd-attach-list{list-style:none;margin:0;padding:0}.ppms-pd-attach-row{display:flex;align-items:center;gap:.65rem;padding:.5rem 0;border-bottom:1px solid #edebe9}.ppms-pd-attach-row:last-child{border-bottom:none}.ppms-pd-attach-row-actions{display:flex;flex-shrink:0;align-items:center;gap:.35rem}.ppms-pd-file-ico{width:2.25rem;height:2.5rem;border-radius:4px;background:#f3f2f1;border:1px solid #e1dfdd;flex-shrink:0;position:relative}.ppms-pd-file-ico:after{content:attr(data-ext);position:absolute;bottom:.2rem;left:50%;transform:translate(-50%);font-size:.55rem;font-weight:800;color:#605e5c;text-transform:uppercase;max-width:90%;overflow:hidden;text-overflow:ellipsis}.ppms-pd-attach-meta{flex:1;min-width:0;text-align:left}.ppms-pd-attach-sub{display:block;font-size:.75rem;margin-top:.1rem}.ppms-pd-report-actions{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem;align-items:flex-start}.ppms-pd-doc-toolbar{display:flex;flex-wrap:wrap;gap:.35rem}.ppms-pd-doc-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:.5rem .75rem;align-items:end}.ppms-pd-doc-form-field{margin:0}.ppms-pd-doc-form-actions{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}.ppms-pd-doc-form--attach{padding:.9rem 1.05rem;border-radius:12px;border:1px solid rgba(98,100,167,.22);background:linear-gradient(165deg,#f8f7fff5,#fff 52%);box-shadow:0 2px 10px #2524230f}.ppms-pd-doc-form--attach .ppms-pd-attach-into-hint{margin-bottom:.7rem!important;padding:.4rem .55rem;border-radius:8px;background:#6264a717;color:#3f3d7a;font-size:.8rem;line-height:1.45}.ppms-pd-doc-form--attach .ppms-pd-doc-form-grid{grid-template-columns:repeat(auto-fit,minmax(11.5rem,1fr));gap:.75rem 1rem;align-items:start}.ppms-pd-doc-form--attach .ppms-pd-doc-form-field>span:first-child{font-weight:600;font-size:.8rem;color:#252423}.ppms-pd-doc-form--attach .ppms-pd-doc-form-field input{margin-top:.28rem;width:100%;box-sizing:border-box;border-radius:8px;border:1px solid rgba(98,100,167,.28);padding:.48rem .6rem;font-size:.875rem;transition:border-color .15s ease,box-shadow .15s ease}.ppms-pd-doc-form--attach .ppms-pd-doc-form-field input:focus{outline:none;border-color:#6264a785;box-shadow:0 0 0 3px #6264a71f}.ppms-pd-doc-form--attach .ppms-pd-doc-form-actions{margin-top:.9rem;padding-top:.75rem;border-top:1px solid rgba(98,100,167,.12);gap:.5rem}.ppms-pd-doc-upload{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.5rem;padding:.5rem .65rem;background:#faf9f8;border:1px solid #edebe9;border-radius:6px}.ppms-pd-doc-upload-inner{margin:0;min-width:12rem}.ppms-pd-doc-list{list-style:none;margin:0;padding:0;border:1px solid #edebe9;border-radius:8px;overflow:hidden}.ppms-pd-doc-row{display:flex;align-items:flex-start;gap:.5rem;padding:.55rem .65rem;border-bottom:1px solid #edebe9;background:#fff}.ppms-pd-doc-row:last-child{border-bottom:none}.ppms-pd-doc-ico{width:1.75rem;height:2rem;flex-shrink:0;border-radius:4px;margin-top:.1rem;background:#f3f2f1;border:1px solid #e1dfdd;position:relative}.ppms-pd-doc-ico:after{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:800;color:#605e5c;text-transform:uppercase;content:attr(data-doc-type)}.ppms-pd-doc-ico[data-doc-type=folder]{background:#fff8e1;border-color:#ffe082}.ppms-pd-doc-ico[data-doc-type=folder]:after{content:"";width:.65rem;height:.45rem;border:2px solid #f57f17;border-top:none;border-radius:0 0 2px 2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ppms-pd-doc-ico[data-doc-type=link]:after{content:"URL";font-size:.5rem}.ppms-pd-doc-ico[data-doc-type=upload]:after{content:"FILE";font-size:.48rem}.ppms-pd-doc-main{flex:1;min-width:0}.ppms-pd-doc-title-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .65rem}.ppms-pd-doc-name{font-weight:600;color:#252423;word-break:break-word}.ppms-pd-doc-type{font-size:.72rem;text-transform:uppercase;letter-spacing:.03em}.ppms-pd-doc-url{display:block;font-size:.75rem;margin-top:.15rem;word-break:break-all;text-decoration:none}.ppms-pd-doc-url:hover{text-decoration:underline}.ppms-pd-doc-actions{display:flex;flex-wrap:wrap;gap:.25rem;flex-shrink:0}.ppms-pd-media-tab .ppms-pd-media-subh{font-size:1rem;font-weight:600;margin:0;color:#252423}.ppms-pd-media-intro p{max-width:48rem}.ppms-pd-media-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.75rem}.ppms-pd-media-filters{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.ppms-pd-media-search{flex:1;min-width:12rem}.ppms-pd-media-select,.ppms-pd-media-search-input{width:100%;max-width:16rem;padding:.35rem .5rem;border-radius:4px;border:1px solid rgba(98,100,167,.35);font-size:.875rem;background:#fff}.ppms-pd-media-search-input{max-width:22rem}.ppms-pd-media-counts{font-size:.8rem;margin:0}.ppms-pd-media-table .ppms-pd-file-ico{vertical-align:middle;margin-right:.35rem}.ppms-pd-media-path-cell{max-width:14rem}.ppms-pd-media-path{display:block;font-size:.75rem;line-height:1.35;word-break:break-word}.ppms-pd-media-actions{white-space:nowrap}.ppms-pd-media-scope[data-scope=project]{font-size:.75rem;padding:.12rem .4rem;border-radius:999px;background:#6264a71f;color:#3f3d7a}.ppms-pd-media-scope[data-scope=task]{font-size:.75rem;padding:.12rem .4rem;border-radius:999px;background:#c46a2a24;color:#a14b12}.ppms-pd-media-summary-stats{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem 1.25rem}.ppms-pd-media-recent-heading{font-size:.85rem;font-weight:600;margin-bottom:0!important}.ppms-pd-attach-list--sectioned{display:flex;flex-direction:column;gap:0}.ppms-pd-media-section-head{display:flex;align-items:center;gap:.5rem;list-style:none;margin:.85rem 0 .35rem;padding:.35rem 0 .2rem;border:none;border-top:1px dashed rgba(98,100,167,.22);background:transparent}.ppms-pd-media-section-head:first-child{margin-top:0;padding-top:0;border-top:none}.ppms-pd-media-section-label{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#605e5c}.ppms-pd-media-section-ico{width:1.5rem;height:1.5rem;border-radius:8px;flex-shrink:0;position:relative}.ppms-pd-media-section-ico[data-section=folder]{background:linear-gradient(145deg,#5b8fd959,#3b6ea573);border:1px solid rgba(59,110,165,.35)}.ppms-pd-media-section-ico[data-section=folder]:after{content:"";position:absolute;top:3px;right:4px;bottom:4px;left:4px;border-radius:3px;background:linear-gradient(180deg,#7aaef0,#4a7ebe);box-shadow:0 1px #0000001f}.ppms-pd-media-section-ico[data-section=library]{background:#6264a71f;border:1px solid rgba(98,100,167,.28)}.ppms-pd-media-section-ico[data-section=library]:after{content:"";position:absolute;left:50%;top:50%;width:.55rem;height:.7rem;transform:translate(-50%,-50%);border-radius:2px;background:#fff;border:1px solid rgba(98,100,167,.45);box-shadow:0 1px 2px #0000000f}.ppms-pd-media-section-ico[data-section=task]{background:#c46a2a1f;border:1px solid rgba(196,106,42,.35)}.ppms-pd-media-section-ico[data-section=task]:after{content:"";position:absolute;left:50%;top:50%;width:.65rem;height:.65rem;transform:translate(-50%,-50%);border-radius:50%;background:linear-gradient(145deg,#e8a060,#c46a2a);box-shadow:inset 0 -1px #00000026}.ppms-pd-attach-list--sectioned .ppms-pd-attach-row--folder{border-radius:10px;margin:0 -.35rem;padding:.55rem .65rem .55rem .5rem;border-left:3px solid #4a7ebe;background:linear-gradient(90deg,#5b8fd91a,#fff0 72%);border-bottom-color:#5b8fd92e}.ppms-pd-attach-list--sectioned .ppms-pd-attach-row--library{border-radius:10px;margin:0 -.35rem;padding:.55rem .65rem .55rem .5rem;border-left:3px solid rgba(98,100,167,.55);background:linear-gradient(90deg,#6264a714,#fff0 70%);border-bottom-color:#6264a71f}.ppms-pd-attach-list--sectioned .ppms-pd-attach-row--task{border-radius:10px;margin:0 -.35rem;padding:.55rem .65rem .55rem .5rem;border-left:3px solid rgba(196,106,42,.55);background:linear-gradient(90deg,#c46a2a17,#fff0 70%);border-bottom-color:#c46a2a26}.ppms-pd-file-ico--link{background:linear-gradient(160deg,#e8f4ff,#d4e9fc);border-color:#3b6ea559}.ppms-pd-file-ico--link:after{color:#2563a8}.ppms-pd-file-ico--task{background:linear-gradient(160deg,#fff8f0,#fdebd8);border-color:#c46a2a47}.ppms-pd-file-ico--task:after{color:#a14b12}.ppms-pd-media-row-ico{flex-shrink:0;width:2.25rem;display:flex;align-items:center;justify-content:center;align-self:flex-start;min-height:2.5rem}.ppms-pd-media-row-ico--folder{padding-top:.2rem}.ppms-pd-media-path-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .5rem;margin-top:.35rem;max-width:100%}.ppms-pd-media-path-row--task .ppms-pd-media-path-value{font-weight:600;color:#8b4514}.ppms-pd-media-path-label{font-size:.72rem;font-weight:700;letter-spacing:.02em;color:#605e5c;flex-shrink:0}.ppms-pd-media-path-label:after{content:":"}.ppms-pd-media-path-value{font-size:.8rem;font-weight:500;color:#323130;word-break:break-word;min-width:0;line-height:1.35}.ppms-pd-media-meta-tail{display:block;margin-top:.2rem}.ppms-pd-media-tree-wrap{margin-top:.35rem;max-width:100%}.ppms-pd-media-tree-head{font-size:.72rem;font-weight:700;letter-spacing:.02em;color:#605e5c;margin-bottom:.35rem}.ppms-pd-media-tree-head:after{content:":"}.ppms-pd-media-tree{margin:0;padding:.5rem .65rem .45rem;border-radius:10px;border:1px solid rgba(98,100,167,.16);background:linear-gradient(165deg,#6264a714,#fffffff5);box-shadow:inset 0 1px #ffffffbf}.ppms-pd-media-tree-row{display:flex;align-items:baseline;gap:.35rem;margin:0;padding:.15rem 0;min-height:1.38rem}.ppms-pd-media-tree-prefix{color:#6264a7b8;font-weight:600;font-size:.76rem;font-family:ui-monospace,Cascadia Code,Consolas,monospace;line-height:1;flex-shrink:0;-webkit-user-select:none;user-select:none}.ppms-pd-media-tree-name{font-size:.8rem;font-weight:500;color:#3b3a39;word-break:break-word;line-height:1.4}.ppms-pd-media-tree-row:first-child .ppms-pd-media-tree-name:before{content:"";display:inline-block;width:.6rem;height:.48rem;margin-right:.35rem;border-radius:2px;background:linear-gradient(145deg,#5b8fd9,#3b6ea5);box-shadow:inset 0 -1px #0000001f;vertical-align:-.06rem}.ppms-pd-media-tree-name.is-leaf{font-weight:700;color:#201f1e;padding:.1rem .4rem;margin:-.1rem -.4rem;border-radius:5px;background:#6264a71c;border:1px solid rgba(98,100,167,.18)}.ppms-pd-media-tree-path-block{margin-bottom:.15rem}.ppms-pd-media-tree-row--folder-hit{align-items:center}.ppms-pd-media-tree-folder-hit{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.25rem .35rem;margin:0;padding:.12rem .35rem .12rem .2rem;border:none;border-radius:6px;background:#5b8fd91a;font:inherit;font-size:.8rem;font-weight:600;color:#2b4a6e;cursor:pointer;text-align:left;max-width:100%;transition:background .15s ease,box-shadow .15s ease}.ppms-pd-media-tree-folder-hit:hover{background:#5b8fd92e;box-shadow:0 1px #0000000a}.ppms-pd-media-tree-folder-hit:focus-visible{outline:2px solid rgba(98,100,167,.55);outline-offset:1px}.ppms-pd-media-tree-folder-label{min-width:0;word-break:break-word}.ppms-pd-media-tree-chev{display:inline-block;width:.85rem;font-size:.65rem;color:#2b4a6ed9;flex-shrink:0}.ppms-pd-media-tree-children{margin:.2rem 0 .35rem .35rem;padding:.35rem .45rem .35rem .5rem;border-left:2px solid rgba(98,100,167,.22);border-radius:0 0 6px 6px;background:#ffffffa6}.ppms-pd-media-tree-children--nested{margin-left:.25rem}.ppms-pd-media-tree-empty{margin:0;font-size:.78rem;padding:.15rem 0}.ppms-pd-media-tree-child-row{margin-bottom:.15rem}.ppms-pd-media-tree-child-row:last-child{margin-bottom:0}.ppms-pd-media-tree-child-folder{display:inline-flex;align-items:center;gap:.3rem;margin:0;padding:.1rem .25rem;border:none;border-radius:4px;background:#5b8fd914;font:inherit;font-size:.78rem;font-weight:600;color:#2b4a6e;cursor:pointer;text-align:left}.ppms-pd-media-tree-child-folder:hover{background:#5b8fd929}.ppms-pd-media-tree-child-name{min-width:0;word-break:break-word}.ppms-pd-media-tree-child-file{font-size:.78rem}.ppms-pd-attach-library{padding-bottom:.5rem}.ppms-pd-attach-page-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 1.5rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(98,100,167,.14)}@media (max-width: 720px){.ppms-pd-attach-toolbar-main{flex-direction:column;align-items:stretch}.ppms-pd-attach-counts{white-space:normal}}.ppms-pd-attach-tabs{display:flex;flex-wrap:wrap;gap:.25rem;margin-bottom:.85rem;padding:.25rem;border-radius:10px;background:#6264a70f;border:1px solid rgba(98,100,167,.12)}.ppms-pd-attach-tab{flex:1 1 11rem;display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.45rem .65rem;border:none;border-radius:8px;font:inherit;font-size:.875rem;font-weight:600;color:#605e5c;background:transparent;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.ppms-pd-attach-tab:hover{color:#252423;background:#ffffff8c}.ppms-pd-attach-tab.is-active{color:#252423;background:#fff;box-shadow:0 1px 4px #25242312}.ppms-pd-attach-tab-label{text-align:center;line-height:1.25}.ppms-pd-attach-tab-badge{font-size:.68rem;font-weight:700;color:#605e5c;background:#6264a71f;padding:.1rem .4rem;border-radius:999px;min-width:1.35rem;text-align:center}.ppms-pd-attach-tab.is-active .ppms-pd-attach-tab-badge{background:#6264a733;color:#3f3d7a}.ppms-pd-attach-split--task-tab .ppms-pd-attach-col--task{border-left:none;padding-left:0;padding-top:0;border-top:none}.ppms-pd-attach-col-sub--only{margin:0 0 .75rem}.ppms-pd-attach-empty-visual--task{background:linear-gradient(145deg,#c46a2a1f,#6264a70f)}.ppms-pd-attach-page-head-text{flex:1 1 14rem;min-width:0}.ppms-pd-attach-page-title{font-size:1.25rem;font-weight:600;margin:0 0 .35rem;color:#252423}.ppms-pd-attach-page-intro{margin:0;font-size:.8125rem;line-height:1.45;color:#605e5c;max-width:36rem}.ppms-pd-attach-toolbar.ppms-pd-media-toolbar{flex:1 1 18rem;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:flex-end;gap:.65rem 1rem;margin-bottom:0}.ppms-pd-attach-toolbar-main{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.65rem .85rem;flex:1 1 16rem;min-width:0;justify-content:flex-end}.ppms-pd-attach-field{display:flex;flex-direction:column;gap:.2rem;min-width:0}.ppms-pd-attach-field-label{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#8a8886;line-height:1.2}.ppms-pd-attach-field--search{flex:1 1 18rem;min-width:12rem}.ppms-pd-attach-field--search .ppms-pd-media-search-input{max-width:none;width:100%}.ppms-pd-attach-counts{margin:0;flex:0 0 auto;font-size:.75rem;line-height:1.35;color:#605e5c;padding:.25rem .5rem;border-radius:6px;background:#6264a714;align-self:center;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.ppms-pd-attach-panel{padding:.65rem .75rem;border-radius:10px;border:1px solid rgba(98,100,167,.14);background:#faf9fd}.ppms-pd-attach-panel .ppms-pd-attach-actions{margin-bottom:.55rem;padding-bottom:.55rem;border-bottom:1px solid rgba(98,100,167,.1)}.ppms-pd-attach-panel .ppms-pd-attach-upload-zone--inline{margin-top:0;border:none;background:transparent;padding:0}.ppms-pd-attach-file-input{position:absolute!important;left:-9999px!important;width:0!important;height:0!important;margin:0!important;padding:0!important;opacity:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;border:0!important}.ppms-pd-attach-empty-wrap{margin-top:.5rem}.ppms-pd-attach-empty{text-align:center;padding:2rem 1.25rem;border-radius:12px;border:1px dashed rgba(98,100,167,.28);background:linear-gradient(180deg,#f8f7ffa6,#fff)}.ppms-pd-attach-empty--filter{border-style:solid;border-color:#6264a733}.ppms-pd-attach-empty--task-col{text-align:left;padding:1.25rem 1rem}.ppms-pd-attach-empty--task-col .ppms-pd-attach-empty-title{font-size:.95rem}.ppms-pd-attach-empty--task-col .ppms-pd-attach-empty-desc{margin-bottom:0;margin-left:0;margin-right:0;max-width:none}.ppms-pd-attach-empty-visual{width:3.5rem;height:3.5rem;margin:0 auto 1rem;border-radius:12px;background:linear-gradient(145deg,#6264a72e,#6264a70f);position:relative}.ppms-pd-attach-empty-visual:after{content:"";position:absolute;top:.65rem;right:.65rem;bottom:.65rem;left:.65rem;border:2px dashed rgba(98,100,167,.35);border-radius:8px;opacity:.85}.ppms-pd-attach-empty-visual--search{background:linear-gradient(145deg,#c46a2a24,#6264a714)}.ppms-pd-attach-empty-title{margin:0 0 .5rem;font-size:1.05rem;font-weight:600;color:#252423}.ppms-pd-attach-empty-desc{margin:0 0 1.25rem;font-size:.875rem;line-height:1.5;color:#605e5c;max-width:32rem;margin-left:auto;margin-right:auto}.ppms-pd-attach-empty--filter .ppms-pd-attach-empty-desc{margin-bottom:1rem}.ppms-pd-attach-empty-readonly{max-width:28rem;margin:0 auto}.ppms-pd-attach-upload-zone{position:relative;overflow:hidden;border-radius:10px;border:1px solid rgba(98,100,167,.22);background:#fff;padding:.85rem 1rem;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.ppms-pd-attach-upload-zone--hero{max-width:28rem;margin-left:auto;margin-right:auto;text-align:center}.ppms-pd-attach-upload-zone--inline .ppms-pd-attach-upload-zone-title{font-size:.88rem}.ppms-pd-attach-upload-zone--inline .ppms-pd-attach-upload-zone-hint{font-size:.78rem}.ppms-pd-attach-upload-zone.is-dragover{border-color:#6264a78c;box-shadow:0 0 0 3px #6264a71f;background:#6264a70a}.ppms-pd-attach-upload-zone.is-busy{pointer-events:none;opacity:.92}.ppms-pd-attach-upload-zone.is-success{border-color:#27ae6073;background:#27ae600f}.ppms-pd-attach-upload-zone.is-error{border-color:#c0392b73;background:#c0392b0d}.ppms-pd-attach-upload-zone-title{margin:0 0 .25rem;font-size:.95rem;font-weight:600;color:#252423}.ppms-pd-attach-upload-zone-hint{margin:0 0 .75rem;font-size:.8rem;color:#605e5c;line-height:1.4}.ppms-pd-attach-upload-zone--hero .ppms-pd-attach-upload-zone-hint{margin-bottom:1rem}.ppms-pd-attach-upload-zone-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.ppms-pd-attach-upload-zone-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem}.ppms-pd-attach-upload-zone-text{flex:1 1 12rem;min-width:0}.ppms-pd-attach-upload-zone--inline .ppms-pd-attach-upload-zone-row{align-items:flex-start}.ppms-pd-attach-upload-status{margin:.65rem 0 0;font-size:.8rem;line-height:1.4;color:#605e5c}.ppms-pd-attach-upload-status[data-status=uploading]{color:#3f3d7a;font-weight:500}.ppms-pd-attach-upload-status[data-status=success]{color:#1e8449}.ppms-pd-attach-upload-status[data-status=error]{color:#a93226}.ppms-pd-attach-bc-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .4rem;font-size:.85rem;margin-bottom:.5rem}.ppms-pd-attach-bc-item{background:none;border:none;padding:.15rem .25rem;color:#3f3d7a;cursor:pointer;border-radius:4px;font:inherit}.ppms-pd-attach-bc-item:hover:not(.is-current){background:#6264a71f}.ppms-pd-attach-bc-item.is-current{color:#605e5c;cursor:default;font-weight:600}.ppms-pd-attach-bc-sep{color:#a19f9d;-webkit-user-select:none;user-select:none}.ppms-pd-attach-bc-current{font-weight:600;color:#252423}.ppms-pd-attach-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.ppms-pd-attach-search-hint{font-size:.8rem;max-width:36rem}.ppms-pd-attach-into-hint{font-size:.8rem;margin-bottom:.45rem!important}.ppms-pd-attach-path-chip{display:block;font-size:.62rem;color:#605e5c;margin-top:.25rem;line-height:1.35;word-break:break-word}.ppms-pd-attach-split{display:flex;gap:1.25rem;align-items:flex-start}.ppms-pd-attach-split--file-preview{flex-wrap:nowrap;align-items:stretch}@media (max-width: 1100px){.ppms-pd-attach-split--file-preview{flex-wrap:wrap}.ppms-pd-attach-file-preview-aside{flex:1 1 100%;max-width:none}}@media (max-width: 960px){.ppms-pd-attach-split{flex-direction:column}}.ppms-pd-attach-col--project{flex:1.65;min-width:0}.ppms-pd-attach-col--task{flex:1;min-width:0;padding-left:1rem;border-left:1px solid rgba(98,100,167,.18)}@media (max-width: 960px){.ppms-pd-attach-col--task{padding-left:0;border-left:none;padding-top:1rem;border-top:1px solid rgba(98,100,167,.18)}}.ppms-pd-attach-col-head{margin-bottom:.65rem;padding-bottom:.5rem;border-bottom:1px solid rgba(98,100,167,.12)}.ppms-pd-attach-col-title{font-size:1rem;font-weight:600;margin:0;color:#252423}.ppms-pd-attach-col-sub{margin:.35rem 0 0;font-size:.75rem;line-height:1.4;color:#8a8886}.ppms-pd-attach-block{margin-bottom:1.1rem}.ppms-pd-attach-block-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .75rem;margin-bottom:.5rem}.ppms-pd-attach-block-h{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#605e5c;margin:0 0 .5rem}.ppms-pd-attach-block-head .ppms-pd-attach-block-h{margin:0}.ppms-pd-attach-block-hint{font-size:.72rem;line-height:1.4;color:#8a8886;flex:1 1 10rem;min-width:0;margin:0}.ppms-pd-attach-project-body{display:flex;gap:1rem;align-items:flex-start}@media (max-width: 900px){.ppms-pd-attach-project-body{flex-direction:column}}.ppms-pd-attach-project-list{flex:6 1 0%;min-width:0}.ppms-pd-attach-folder-hint{font-size:.8rem;margin:0 0 .5rem}.ppms-pd-attach-folder-preview{flex:4 1 0%;min-width:11rem;max-width:none;padding:.65rem .75rem;border:1px solid rgba(98,100,167,.14);border-radius:10px;background:#f8f7fc;align-self:stretch}.ppms-pd-attach-folder-preview-kicker{margin:0 0 .35rem;font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#8a8886}@media (max-width: 900px){.ppms-pd-attach-folder-preview{flex:1 1 auto;max-width:none;width:100%}}.ppms-pd-attach-preview-placeholder{margin:0;font-size:.8rem;color:#605e5c;line-height:1.45}.ppms-pd-attach-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:.35rem}.ppms-pd-attach-preview-title{margin:0;font-size:.95rem;font-weight:600;color:#252423;word-break:break-word}.ppms-pd-attach-preview-sub{margin:0 0 .65rem;font-size:.78rem}.ppms-pd-attach-preview-block{margin-bottom:.75rem}.ppms-pd-attach-preview-label{display:block;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#605e5c;margin-bottom:.35rem}.ppms-pd-attach-preview-list{list-style:none;margin:0;padding:0}.ppms-pd-attach-preview-list li+li{margin-top:.25rem}.ppms-pd-attach-preview-row{display:flex;align-items:center;gap:.4rem;width:100%;text-align:left;padding:.35rem .4rem;border:1px solid transparent;border-radius:6px;background:#ffffffa6;cursor:pointer;transition:background .12s ease,border-color .12s ease}.ppms-pd-attach-preview-row:hover{background:#6264a714;border-color:#6264a733}.ppms-pd-attach-preview-name{flex:1;min-width:0;font-size:.82rem;color:#252423;word-break:break-word}.ppms-pd-attach-preview-meta{flex-shrink:0;font-size:.7rem;color:#605e5c}.ppms-pd-attach-preview-empty{margin:0;font-size:.82rem}.ppms-pd-attach-folder-row{display:flex;flex-wrap:wrap;gap:.65rem}.ppms-pd-attach-folder-card{display:flex;align-items:flex-start;gap:.55rem;min-width:10rem;max-width:14rem;flex:1 1 auto;padding:.65rem .75rem;text-align:left;border:1px solid rgba(98,100,167,.22);border-radius:8px;background:linear-gradient(180deg,#f8f7fff2,#fff);cursor:pointer;transition:box-shadow .15s ease,border-color .15s ease}.ppms-pd-attach-folder-card:hover{border-color:#6264a773;box-shadow:0 3px 10px #25242314}.ppms-pd-attach-folder-card.is-selected{border-color:#6264a78c;box-shadow:0 0 0 2px #6264a733}.ppms-pd-attach-file-preview-aside{flex:0 1 44%;min-width:17.5rem;max-width:40rem;padding:.75rem .85rem;border:1px solid rgba(98,100,167,.22);border-radius:10px;background:linear-gradient(180deg,#f8f7ff73,#fff);display:flex;flex-direction:column;min-height:12rem}.ppms-pd-attach-file-preview-head{display:flex;flex-wrap:nowrap;align-items:flex-start;justify-content:space-between;gap:.6rem;margin-bottom:.35rem;min-width:0}.ppms-pd-attach-file-preview-head .ppms-pd-attach-preview-title{flex:1 1 0%;min-width:0;margin:0;font-size:.9rem;font-weight:600;color:#252423;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:normal}.ppms-pd-attach-file-preview-actions{display:flex;flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:.35rem;justify-content:flex-end}.ppms-pd-attach-file-preview-actions .ppms-btn-sm{flex-shrink:0;white-space:nowrap}.ppms-pd-attach-file-preview-loading,.ppms-pd-attach-file-preview-error,.ppms-pd-attach-file-preview-unsupported{font-size:.85rem;margin-top:.35rem}.ppms-pd-attach-file-preview-link{margin-top:.35rem;word-break:break-all}.ppms-pd-attach-file-preview-link-a{color:#3b6ea5;font-size:.82rem}.ppms-pd-attach-file-preview-pdf-tools{display:flex;justify-content:flex-end;margin-bottom:.35rem}.ppms-pd-attach-file-preview-frame{width:100%;min-height:16rem;height:50vh;max-height:560px;border:1px solid rgba(98,100,167,.2);border-radius:8px;background:#f3f2f1;margin-top:0}.ppms-pd-attach-file-preview-media{position:relative;margin-top:.35rem;border-radius:8px;overflow:hidden;cursor:zoom-in;outline:none}.ppms-pd-attach-file-preview-media:focus-visible{box-shadow:0 0 0 3px #6264a759}.ppms-pd-attach-file-preview-media .ppms-pd-attach-file-preview-img{display:block;width:100%;max-height:50vh;margin-top:0;border-radius:8px;object-fit:contain}.ppms-pd-attach-file-preview-media-hint{position:absolute;right:.4rem;bottom:.4rem;padding:.2rem .45rem;font-size:.65rem;font-weight:600;color:#fff;background:#2524238c;border-radius:4px;pointer-events:none}.ppms-pd-attach-file-preview-text-wrap{position:relative;margin-top:.35rem;border-radius:8px;cursor:zoom-in;outline:none;padding-bottom:1.5rem}.ppms-pd-attach-file-preview-text-wrap:focus-visible{box-shadow:0 0 0 3px #6264a759}.ppms-pd-attach-file-preview-text-wrap .ppms-pd-attach-file-preview-text{margin:0}.ppms-pd-attach-file-preview-text{margin:.35rem 0 0;padding:.5rem .6rem;font-size:.78rem;line-height:1.45;white-space:pre-wrap;word-break:break-word;max-height:50vh;overflow:auto;background:#0000000a;border-radius:8px;border:1px solid rgba(98,100,167,.15)}.ppms-pd-attach-lightbox{width:min(96vw,72rem);max-height:min(92vh,56rem);display:flex;flex-direction:column;background:#fff;border-radius:12px;box-shadow:0 12px 48px #0000002e;overflow:hidden}.ppms-pd-attach-lightbox-head{display:flex;flex-wrap:nowrap;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid rgba(98,100,167,.12);min-width:0;flex-shrink:0}.ppms-pd-attach-lightbox-title{margin:0;font-size:1rem;font-weight:600;color:#252423;flex:1 1 0%;min-width:0;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ppms-pd-attach-lightbox-actions{display:flex;flex-wrap:nowrap;flex-shrink:0;gap:.4rem;align-items:center}.ppms-pd-attach-lightbox-actions .ppms-btn-sm{white-space:nowrap}.ppms-pd-attach-lightbox-body{flex:1 1 auto;min-height:0;padding:.75rem 1rem 1rem;overflow:auto;background:#faf9fd}.ppms-pd-attach-lightbox-frame{width:100%;min-height:70vh;height:min(78vh,48rem);border:1px solid rgba(98,100,167,.2);border-radius:8px;background:#f3f2f1}.ppms-pd-attach-lightbox-img{display:block;max-width:100%;max-height:min(78vh,48rem);margin:0 auto;border-radius:8px;object-fit:contain}.ppms-pd-attach-lightbox-text{margin:0;padding:.65rem .75rem;font-size:.82rem;line-height:1.5;white-space:pre-wrap;word-break:break-word;max-height:min(78vh,48rem);overflow:auto;background:#fff;border-radius:8px;border:1px solid rgba(98,100,167,.15)}.ppms-pd-attach-file-card.is-selected{border-color:#6264a78c;box-shadow:0 0 0 2px #6264a733}.ppms-pd-attach-folder-ico{width:2.25rem;height:1.75rem;border-radius:4px;flex-shrink:0;background:linear-gradient(145deg,#5b8fd9,#3b6ea5);box-shadow:inset 0 -2px #0000001f;position:relative}.ppms-pd-attach-folder-ico:after{content:"";position:absolute;left:0;top:0;width:.85rem;height:.4rem;background:#7aaef0;border-radius:3px 4px 0 0}.ppms-pd-attach-folder-ico--sm{width:1.35rem;height:1.05rem;border-radius:3px}.ppms-pd-attach-folder-ico--sm:after{width:.55rem;height:.28rem}.ppms-pd-attach-folder-body{min-width:0;display:flex;flex-direction:column;gap:.2rem}.ppms-pd-attach-folder-name{font-weight:600;font-size:.88rem;color:#252423;word-break:break-word}.ppms-pd-attach-card-meta{font-size:.72rem;color:#605e5c}.ppms-pd-attach-file-grid{display:grid;gap:.75rem}.ppms-pd-attach-file-grid--large{grid-template-columns:repeat(auto-fill,minmax(148px,1fr))}.ppms-pd-attach-file-grid--task{grid-template-columns:repeat(3,1fr)}@media (max-width: 520px){.ppms-pd-attach-file-grid--task{grid-template-columns:repeat(2,1fr)}}.ppms-pd-attach-file-card{border:1px solid rgba(98,100,167,.18);border-radius:10px;overflow:hidden;background:#fff}.ppms-pd-attach-file-card--large .ppms-pd-attach-file-card-main,.ppms-pd-attach-file-card--task .ppms-pd-attach-file-card-main{display:block;width:100%;text-align:left;padding:0;border:none;background:transparent;cursor:pointer}.ppms-pd-attach-file-card--task{display:flex;flex-direction:column;gap:.35rem}.ppms-pd-attach-thumb{height:5.5rem;display:flex;align-items:center;justify-content:center;position:relative}.ppms-pd-attach-thumb--sm{height:4rem}.ppms-pd-attach-thumb-label{font-size:.72rem;font-weight:800;letter-spacing:.04em;color:#fffffff2;text-shadow:0 1px 2px rgba(0,0,0,.18)}.ppms-pd-attach-thumb--pdf{background:linear-gradient(180deg,#e74c3c,#c0392b)}.ppms-pd-attach-thumb--xls{background:linear-gradient(180deg,#27ae60,#1e8449)}.ppms-pd-attach-thumb--doc{background:linear-gradient(180deg,#2980b9,#1f618d)}.ppms-pd-attach-thumb--ppt{background:linear-gradient(180deg,#e67e22,#ca6f1e)}.ppms-pd-attach-thumb--img{background:linear-gradient(180deg,#8e7cc3,#6c5aa0)}.ppms-pd-attach-thumb--link{background:linear-gradient(180deg,#7f8c8d,#566573)}.ppms-pd-attach-thumb--default{background:linear-gradient(180deg,#95a5a6,#7b8d8d)}.ppms-pd-attach-file-body{padding:.45rem .55rem .55rem}.ppms-pd-file-ico--sm{width:.85rem;height:.85rem;min-width:.85rem;font-size:.45rem}.ppms-pd-file-ico--sm:after{font-size:.45rem;bottom:.12rem}.ppms-pd-attach-file-name{display:block;font-size:.78rem;font-weight:600;color:#252423;line-height:1.35;word-break:break-word}.ppms-pd-attach-file-line{display:flex;align-items:center;gap:.25rem;flex-wrap:wrap;margin-top:.2rem}.ppms-pd-attach-file-meta{font-size:.66rem;color:#605e5c}.ppms-pd-attach-card-actions{display:flex;flex-wrap:wrap;gap:.25rem;padding:0 .45rem .45rem;border-top:1px solid rgba(98,100,167,.1)}.ppms-pd-attach-task-pill{display:block;font-size:.62rem;color:#a14b12;margin-top:.2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ppms-pd-attach-task-actions{display:flex;flex-wrap:wrap;gap:.35rem;padding:0 .35rem .4rem;justify-content:center}.ppms-pd-attach-task-actions .ppms-btn-sm{flex:1 1 auto;min-width:5.5rem}.ppms-pd-report-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-bottom:.75rem}.ppms-pd-report-exports{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.ppms-pd-report-subtabs{display:flex;flex-wrap:wrap;gap:0;border-bottom:1px solid #edebe9;margin-bottom:1rem}.ppms-pd-report-subtab{position:relative;padding:.55rem 1rem;margin:0 0 -1px;border:none;background:transparent;font:inherit;font-weight:600;color:#605e5c;cursor:pointer;border-bottom:2px solid transparent}.ppms-pd-report-subtab:hover{color:#0a5fad}.ppms-pd-report-subtab.is-active{color:#d83b01;border-bottom-color:#d83b01}.ppms-pd-report-section-title{margin:0;font-size:1.05rem;font-weight:600;color:#252423}.ppms-pd-report-table-wrap{overflow-x:auto}.ppms-pd-report-matrix{min-width:56rem;font-size:.85rem}.ppms-pd-report-matrix thead th{text-align:center;vertical-align:middle;background:#f3f2f1;border:1px solid #e1dfdd;font-weight:600;color:#323130}.ppms-pd-report-matrix tbody td{border:1px solid #edebe9;vertical-align:middle}.ppms-pd-report-matrix .ppms-td-num{text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap}.ppms-pd-report-name{display:block;font-weight:600;color:#252423}.ppms-pd-report-email{display:block;font-size:.8rem;margin-top:.1rem}.ppms-pd-report-finance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.75rem}.ppms-pd-report-finance-card{padding:.85rem 1rem;border:1px solid #edebe9;border-radius:6px;background:#faf9f8;display:flex;flex-direction:column;gap:.35rem}.ppms-pd-report-finance-value{font-size:1.15rem;font-weight:700;color:#252423}.ppms-profile{--ppms-pf-surface: var(--ppms-surface, #fff);--ppms-pf-border: var(--ppms-border-subtle, rgba(15, 23, 42, .08));--ppms-pf-muted: var(--ppms-text-muted, #64748b);--ppms-pf-accent: var(--ppms-primary, #2563eb);max-width:1100px;margin:0 auto}.ppms-profile.ppms-profile--dark{--ppms-pf-surface: rgba(15, 23, 42, .65);--ppms-pf-border: rgba(148, 163, 184, .2);--ppms-pf-muted: #94a3b8}.ppms-profile-header{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;align-items:center;padding:1.25rem 1.5rem;background:var(--ppms-pf-surface);border:1px solid var(--ppms-pf-border);border-radius:12px;margin-bottom:1rem}.ppms-profile-header-avatar{width:56px;height:56px;border-radius:50%;object-fit:cover;background:linear-gradient(135deg,#e2e8f0,#cbd5e1);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.25rem;color:#475569;flex-shrink:0}.ppms-profile-header-main{flex:1 1 200px;min-width:0}.ppms-profile-header-name{margin:0;font-size:1.25rem;font-weight:700;letter-spacing:-.02em}.ppms-profile-header-meta{display:flex;flex-wrap:wrap;gap:.5rem .75rem;margin-top:.35rem;font-size:.9rem;color:var(--ppms-pf-muted)}.ppms-profile-role-badge{display:inline-flex;align-items:center;padding:.15rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.ppms-profile-role-badge--admin{background:#ef44441f;color:#b91c1c}.ppms-profile-role-badge--pm{background:#2563eb1f;color:#1d4ed8}.ppms-profile-role-badge--tl{background:#7c3aed1f;color:#6d28d9}.ppms-profile-role-badge--hr{background:#10b9811f;color:#047857}.ppms-profile-role-badge--developer{background:#64748b26;color:#475569}.ppms-profile-status-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .6rem;border-radius:999px;font-size:.75rem;font-weight:600;background:#10b9811f;color:#047857}.ppms-profile-status-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:#10b981;box-shadow:0 0 0 3px #10b98140}.ppms-profile-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-left:auto}.ppms-profile-tabs-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:.75rem;border-bottom:1px solid var(--ppms-pf-border)}.ppms-profile-tabs{display:inline-flex;gap:.25rem;min-width:min-content;padding:0 .25rem}.ppms-profile-tab{position:relative;border:none;background:none;padding:.65rem 1rem;font:inherit;font-weight:600;font-size:.9rem;color:var(--ppms-pf-muted);cursor:pointer;white-space:nowrap;border-radius:8px 8px 0 0;transition:color .15s ease,background .15s ease}.ppms-profile-tab:hover{color:var(--ppms-text, #0f172a);background:#0f172a0a}.ppms-profile-tab--active{color:var(--ppms-pf-accent)}.ppms-profile-tab--active:after{content:"";position:absolute;left:.75rem;right:.75rem;bottom:-1px;height:2px;border-radius:2px 2px 0 0;background:var(--ppms-pf-accent);animation:ppms-pf-tab-in .2s ease}@keyframes ppms-pf-tab-in{0%{transform:scaleX(.6);opacity:.5}to{transform:scaleX(1);opacity:1}}.ppms-profile-panel{padding:1.25rem 1.5rem;background:var(--ppms-pf-surface);border:1px solid var(--ppms-pf-border);border-radius:12px;min-height:280px}.ppms-profile-skel{display:grid;gap:.75rem}.ppms-profile-skel-line{height:12px;border-radius:6px;background:linear-gradient(90deg,#f1f5f9,#e2e8f0,#f1f5f9);background-size:200% 100%;animation:ppms-pf-skel 1.2s ease infinite}.ppms-profile.ppms-profile--dark .ppms-profile-skel-line{background:linear-gradient(90deg,#33415580,#47556999,#33415580);background-size:200% 100%}@keyframes ppms-pf-skel{0%{background-position:200% 0}to{background-position:-200% 0}}.ppms-profile-empty{text-align:center;padding:2rem 1rem;color:var(--ppms-pf-muted);font-size:.95rem}.ppms-profile-table-wrap{overflow-x:auto}.ppms-profile-table{width:100%;border-collapse:collapse;font-size:.875rem}.ppms-profile-table th,.ppms-profile-table td{padding:.55rem .65rem;text-align:left;border-bottom:1px solid var(--ppms-pf-border)}.ppms-profile-table th{font-weight:600;color:var(--ppms-pf-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.ppms-profile-table tr:hover td{background:#0f172a05}.ppms-profile-device-current{outline:2px solid rgba(37,99,235,.35);outline-offset:-2px;background:#2563eb0a}.ppms-profile-badge-this{display:inline-block;margin-left:.35rem;padding:.1rem .4rem;font-size:.65rem;font-weight:700;text-transform:uppercase;border-radius:4px;background:#2563eb26;color:#1d4ed8}.ppms-pf-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.45rem .85rem;font:inherit;font-size:.85rem;font-weight:600;border-radius:8px;border:1px solid var(--ppms-pf-border);background:var(--ppms-pf-surface);cursor:pointer;color:inherit}.ppms-pf-btn--primary{background:var(--ppms-pf-accent);border-color:transparent;color:#fff}.ppms-pf-btn--danger{background:#ef44441a;border-color:#ef444459;color:#b91c1c}.ppms-pf-btn:disabled{opacity:.55;cursor:not-allowed}.ppms-profile-drop{border:2px dashed var(--ppms-pf-border);border-radius:12px;padding:1.25rem;text-align:center;cursor:pointer;transition:border-color .15s,background .15s}.ppms-profile-drop:hover,.ppms-profile-drop--active{border-color:var(--ppms-pf-accent);background:#2563eb0a}.ppms-profile-crop-host{max-height:320px;background:#0f172a}.ppms-profile-meter{height:6px;border-radius:999px;background:#e2e8f0;overflow:hidden;margin-top:.35rem}.ppms-profile-meter-fill{height:100%;border-radius:inherit;transition:width .2s ease,background .2s ease}.ppms-profile-matrix th.ppms-profile-matrix-corner{min-width:120px}.ppms-profile-matrix input[type=checkbox]:disabled{cursor:default;opacity:.85}.o1tf-modal-body{max-height:min(88vh,960px);overflow:auto;padding:.25rem .15rem .75rem;margin:0 -.25rem}.ppms-modal.ppms-modal--task-o1{width:min(96vw,88rem);max-width:min(96vw,88rem);max-height:min(96vh,1120px);display:flex;flex-direction:column;overflow:hidden}.ppms-modal.ppms-modal--task-o1 .o1tf-modal-body{flex:1 1 auto;min-height:0;max-height:min(86vh,1040px)}.o1tf-tabs{margin-bottom:.75rem}.o1tf-tab-head{display:flex;gap:0;border-bottom:2px solid rgba(0,0,0,.08);margin-bottom:.75rem}.o1tf-tab-label{display:inline-block;padding:.5rem 1rem .4rem;margin-bottom:-2px;border:none;background:none;font:inherit;font-weight:500;color:#605e5c;cursor:pointer;border-bottom:2px solid transparent}.o1tf-tab-label:hover{color:#323130}.o1tf-tab-label.is-active{color:#0078d4;border-bottom-color:#0078d4}.o1tf-tab-pane{display:none}.o1tf-tab-pane.is-active{display:block}.o1tf-section{margin-bottom:1rem;border:1px solid rgba(0,0,0,.08);border-radius:6px;background:#fafaf9}.o1tf-section-title{display:flex;align-items:center;gap:.35rem;padding:.5rem .75rem;font-size:.95rem;font-weight:600;color:#252423;border-bottom:1px solid rgba(0,0,0,.06);background:#fff;border-radius:6px 6px 0 0}.o1tf-section-caret{display:inline-block;transform:rotate(-90deg);font-size:.7rem;opacity:.45}.o1tf-section-body{padding:.75rem;background:#fff;border-radius:0 0 6px 6px}.o1tf-row{display:flex;flex-wrap:wrap;gap:.65rem 1rem;margin-bottom:.75rem}.o1tf-row:last-child{margin-bottom:0}.o1tf-col-4{flex:1 1 140px;min-width:120px}.o1tf-col-8{flex:2 1 200px;min-width:180px}.o1tf-field{display:flex;flex-direction:column;gap:.25rem}.o1tf-field label,.o1tf-label{font-size:.8rem;font-weight:500;color:#323130}.o1tf-label .req{color:#a4262c}.o1tf-field input[type=text],.o1tf-field input[type=number],.o1tf-field input[type=date],.o1tf-field select,.o1tf-field textarea{width:100%;padding:.45rem .55rem;border:1px solid rgba(0,0,0,.15);border-radius:4px;font:inherit;background:#fff}.o1tf-field textarea{min-height:72px;resize:vertical}.o1tf-field input:disabled,.o1tf-field select:disabled{opacity:.45;cursor:not-allowed;background:#f3f2f1}.o1tf-hint{font-size:.75rem;color:#605e5c;margin-top:.15rem}.o1tf-muted{font-size:.8rem;color:#605e5c;font-style:italic}.o1tf-check{display:flex;align-items:flex-start;gap:.35rem;font-size:.85rem}.o1tf-check input{margin-top:.15rem}.o1tf-plus{display:flex;flex-direction:column;gap:.75rem}.o1tf-plus-row{display:flex;gap:.35rem;align-items:flex-start;padding:.5rem 0;border-bottom:1px dashed rgba(0,0,0,.08)}.o1tf-plus-row:last-of-type{border-bottom:none}.o1tf-plus-rm{flex-shrink:0;width:1.75rem;height:1.75rem;border:none;border-radius:4px;background:#f3f2f1;color:#605e5c;cursor:pointer;font-size:1.1rem;line-height:1}.o1tf-plus-rm:hover{background:#edebe9;color:#a4262c}.o1tf-plus-cols{display:flex;flex-wrap:wrap;gap:.65rem 1rem;align-items:flex-end;flex:1;min-width:0}.o1tf-plus-cols .o1tf-field{flex:0 1 auto;min-width:140px}.o1tf-plus-cols .o1tf-field.w-title{min-width:220px;flex:1 1 260px}.o1tf-plus-cols .o1tf-field.w-code{min-width:160px;max-width:200px}.o1tf-plus-cols .o1tf-field.w-user{min-width:180px;flex:1 1 200px}.o1tf-plus-cols .o1tf-field.w-dates{min-width:260px}.o1tf-plus-footer{display:flex;align-items:center;gap:.5rem;padding-top:.35rem}.o1tf-plus-add{width:2rem;height:2rem;border-radius:4px;border:1px dashed rgba(0,0,0,.2);background:#fff;cursor:pointer;font-size:1.25rem;line-height:1;color:#0078d4}.o1tf-plus-add:hover{border-color:#0078d4;background:#0078d40f}.o1tf-nested{margin-top:.65rem;padding-left:.5rem;border-left:2px solid rgba(0,120,212,.25)}.o1tf-process-preview{min-height:120px;padding:.75rem;border:1px dashed rgba(0,0,0,.12);border-radius:6px;background:#fafaf9;color:#605e5c;font-size:.9rem}.o1tf-radio-group{display:flex;flex-wrap:wrap;gap:.65rem 1rem}.o1tf-radio-group label{display:flex;align-items:center;gap:.35rem;font-size:.85rem;font-weight:400}.o1tf-modal-lead{margin:-.25rem 0 1rem;font-size:.82rem;line-height:1.45;color:#605e5c}.o1tf-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:.65rem 1rem;align-items:start}.o1tf-grid>*{min-width:0}.o1tf-span-4{grid-column:span 4}.o1tf-span-5{grid-column:span 5}.o1tf-span-6{grid-column:span 6}.o1tf-span-7{grid-column:span 7}.o1tf-span-8{grid-column:span 8}.o1tf-span-12{grid-column:span 12}@media (max-width: 720px){.o1tf-span-4,.o1tf-span-5,.o1tf-span-6,.o1tf-span-7,.o1tf-span-8{grid-column:span 12}}.o1tf-field--outlined label.o1tf-label,.o1tf-field--outlined>.o1tf-label{display:block;margin-bottom:.28rem;font-size:.8rem;font-weight:600;color:#323130}.o1tf-field--outlined .o1tf-input-el,.o1tf-field--outlined input:not([type=checkbox]):not([type=radio]),.o1tf-field--outlined select,.o1tf-field--outlined textarea{width:100%;min-height:2.35rem;padding:.45rem .65rem;border:1px solid #8a8886;border-radius:4px;font:inherit;background:#fff;color:#201f1e;transition:border-color .12s ease,box-shadow .12s ease}.o1tf-field--outlined textarea{min-height:96px;resize:vertical}.o1tf-field--outlined select[multiple].o1tf-multiselect{min-height:6.5rem;padding:.35rem;line-height:1.35}.o1tf-field--outlined :focus-visible{outline:none}.o1tf-field--outlined:focus-within .o1tf-input-el,.o1tf-field--outlined input:focus-visible,.o1tf-field--outlined select:focus-visible,.o1tf-field--outlined textarea:focus-visible{border-color:#0078d4;box-shadow:0 0 0 1px #0078d4}.o1tf-field--outlined .is-disabled{opacity:.42;pointer-events:none;background:#f3f2f1!important}.o1tf-field-hint{display:block;margin-top:.2rem;font-size:.72rem;line-height:1.35;color:#605e5c}.o1tf-datepair{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.o1tf-datepair .o1tf-time-input{flex:0 0 6.25rem;min-width:5.5rem}.o1tf-datepair .o1tf-date-input{flex:1 1 10rem;min-width:8rem}.o1tf-subgroup-label{display:block;margin:0 0 .35rem;font-size:.78rem;font-weight:600;color:#323130}.o1tf-section-title--btn{width:100%;margin:0;padding:.5rem .75rem;border:none;border-bottom:1px solid rgba(0,0,0,.06);background:#fff;border-radius:6px 6px 0 0;font:inherit;font-size:.95rem;font-weight:600;color:#252423;text-align:left;cursor:pointer;display:flex;align-items:center;gap:.4rem}.o1tf-section-title--btn:hover{background:#fafaf9}.o1tf-caret-sec{display:inline-block;font-size:.65rem;opacity:.55;transition:transform .15s ease}.o1tf-caret-sec.is-open{transform:rotate(90deg)}.o1tf-check-row{display:flex;flex-wrap:wrap;gap:.65rem 1.25rem;align-items:flex-start}.o1tf-check-row .o1tf-check{max-width:100%}.o1tf-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.o1tf-tab-head[role=tablist]{gap:.25rem}.o1tf-tab-label[role=tab]{border-radius:4px 4px 0 0}.o1tf-tab-label[role=tab]:focus-visible{outline:2px solid #0078d4;outline-offset:2px}.o1tf-user-grid{grid-column:span 12;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem 1rem;align-items:start}@media (max-width: 1100px){.o1tf-user-grid{grid-template-columns:1fr}}.o1-user-picker{display:flex;flex-direction:column;gap:.35rem;min-width:0}.o1-user-picker__search{width:100%}.o1-user-picker__pending{margin:0;font-size:.78rem;color:#605e5c}.o1-user-picker__list{max-height:9.5rem;overflow:auto;border:1px solid #8a8886;border-radius:4px;background:#fff}.o1-user-picker__opt{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;width:100%;margin:0;padding:.4rem .55rem;border:none;border-bottom:1px solid rgba(0,0,0,.06);background:#fff;font:inherit;text-align:left;cursor:pointer;color:#201f1e}.o1-user-picker__opt:last-child{border-bottom:none}.o1-user-picker__opt:hover{background:#f3f2f1}.o1-user-picker__opt.is-on{background:#0078d414;box-shadow:inset 3px 0 #0078d4}.o1-user-picker__opt.is-active-kb:not(:hover){background:#0078d40f}.o1-user-picker__opt.is-active-kb:focus-visible{outline:2px solid #0078d4;outline-offset:-2px}.o1-user-picker__name{font-size:.85rem;font-weight:500}.o1-user-picker__email{font-size:.72rem;color:#605e5c;word-break:break-all}.o1-user-picker__empty{margin:0;padding:.5rem .55rem;font-size:.78rem;color:#605e5c}.o1-user-picker__chips{display:flex;flex-wrap:wrap;gap:.35rem}.o1-user-chip{display:inline-flex;align-items:center;gap:.2rem;max-width:100%;padding:.15rem .35rem .15rem .45rem;border-radius:4px;border:1px solid rgba(0,0,0,.12);background:#fafaf9;font-size:.78rem;line-height:1.3}.o1-user-chip__txt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:12rem}.o1-user-chip__x{flex-shrink:0;width:1.35rem;height:1.35rem;padding:0;border:none;border-radius:3px;background:transparent;cursor:pointer;font-size:1rem;line-height:1;color:#605e5c}.o1-user-chip__x:hover{background:#a4262c1f;color:#a4262c}.o1tf-metric-block{grid-column:span 12;padding:.65rem .75rem;border:1px solid rgba(0,0,0,.08);border-radius:6px;background:#fafaf9}.o1tf-metric-block summary{cursor:pointer;font-size:.82rem;font-weight:600;color:#323130;list-style:none}.o1tf-metric-block summary::-webkit-details-marker{display:none}.o1tf-metric-block summary:before{content:"▸ ";display:inline-block;transition:transform .12s ease;opacity:.55}.o1tf-metric-block[open] summary:before{transform:rotate(90deg)}.o1tf-metric-block__body{margin-top:.5rem;font-size:.76rem;line-height:1.45;color:#323130}.o1tf-metric-block__body p{margin:.35rem 0 0}.o1tf-metric-block__body p:first-child{margin-top:0}.o1tf-computed-weight{margin-top:.35rem;font-size:.76rem;font-weight:600;color:#0078d4}.o1tf-attach-zone{display:flex;flex-direction:column;gap:.35rem}.o1tf-attach-input{font-size:.8rem}.o1tf-attach-list{list-style:none;margin:0;padding:0}.o1tf-attach-list li{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.35rem .45rem;border-radius:4px;border:1px solid rgba(0,0,0,.08);font-size:.8rem;margin-top:.35rem}.o1tf-attach-list li:first-child{margin-top:0}.o1tf-attach-rm{flex-shrink:0;border:none;background:transparent;color:#a4262c;cursor:pointer;font-size:.78rem;text-decoration:underline}.o1-user-lookup-select{display:flex;flex-direction:column;gap:.35rem;min-width:0}.o1-user-lookup-select__search{width:100%}.o1-user-lookup-select__picked{display:flex;align-items:center;justify-content:space-between;gap:.35rem;padding:.35rem .45rem;border-radius:4px;border:1px solid rgba(0,0,0,.1);background:#fafaf9;font-size:.8rem}.o1-user-lookup-select__picked-txt{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o1-user-lookup-select__clear{flex-shrink:0;margin:0;padding:0 .2rem;border:none;background:transparent;font:inherit;line-height:1;cursor:pointer;color:#605e5c}.o1-user-lookup-select__clear:hover{color:#201f1e}.o1-user-lookup-select__hits{max-height:9rem;margin:0;padding:0;list-style:none;overflow:auto;border:1px solid #8a8886;border-radius:4px;background:#fff}.o1-user-lookup-select__hit{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;width:100%;margin:0;padding:.4rem .55rem;border:none;border-bottom:1px solid rgba(0,0,0,.06);background:#fff;font:inherit;text-align:left;cursor:pointer;color:#201f1e}.o1-user-lookup-select__hit:last-child{border-bottom:none}.o1-user-lookup-select__hit:hover{background:#f3f2f1}.o1-user-lookup-select__name{font-size:.85rem;font-weight:500}.o1-user-lookup-select__email{font-size:.72rem;color:#605e5c;word-break:break-all}.o1-user-lookup-select__muted{color:#605e5c}html{font-size:80%;--ppms-layout-zoom: 1;min-height:calc(100vh / var(--ppms-layout-zoom));min-height:calc(100dvh / var(--ppms-layout-zoom))}@supports (zoom: .8){html{font-size:100%;zoom:.8;--ppms-layout-zoom: .8}}@media print{html{zoom:1!important;font-size:100%!important;--ppms-layout-zoom: 1 !important}}*{box-sizing:border-box}body{margin:0;font-family:var(--ppms-font);background:var(--ppms-bg-subtle);color:var(--ppms-text);min-height:calc(100vh / var(--ppms-layout-zoom));min-height:calc(100dvh / var(--ppms-layout-zoom));display:flex;flex-direction:column;-webkit-font-smoothing:antialiased;line-height:1.5}#app{flex:1 1 auto;display:flex;flex-direction:column;min-height:calc(100vh / var(--ppms-layout-zoom));min-height:calc(100dvh / var(--ppms-layout-zoom));width:100%}#app>.ppms-app,#app>.ppms-auth-page{flex:1 1 auto;min-height:calc(100vh / var(--ppms-layout-zoom));min-height:calc(100dvh / var(--ppms-layout-zoom));width:100%}#app>.ppms-app{display:flex;flex-direction:column}#app>.ppms-auth-page{display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr);align-content:stretch}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}a{color:var(--ppms-primary);text-decoration:none}a:hover{text-decoration:underline}.ppms-icon-menu{display:flex;align-items:center;justify-content:center;height:.875rem}.ppms-icon-menu:before{content:"";display:block;width:1.25rem;height:2px;background:currentColor;box-shadow:0 6px 0 currentColor,0 12px 0 currentColor}.ppms-icon-close{position:relative;display:block;width:1.25rem;height:1.25rem}.ppms-icon-close:before,.ppms-icon-close:after{content:"";position:absolute;left:0;top:50%;width:1.1rem;height:2px;background:currentColor}.ppms-icon-close:before{transform:translateY(-50%) rotate(45deg)}.ppms-icon-close:after{transform:translateY(-50%) rotate(-45deg)}.ppms-icon-bell:before{content:"";display:block;width:1rem;height:.85rem;border:2px solid currentColor;border-radius:50% 50% 0 0;border-bottom:none;margin:0 auto;box-shadow:0 4px 0 -1px currentColor}.ppms-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--ppms-tap-min);height:var(--ppms-tap-min);padding:0;border:none;border-radius:var(--ppms-radius-sm);background:transparent;color:var(--ppms-text);cursor:pointer}.ppms-user-card{display:flex;align-items:center;gap:.65rem}.ppms-user-avatar{width:2.5rem;height:2.5rem;border-radius:10px;font-weight:700;font-size:1rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ppms-user-meta{min-width:0}.ppms-user-name{display:block;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ppms-user-role{display:block;color:var(--ppms-muted);font-size:.72rem;margin-top:.1rem}.ppms-btn-block{width:100%;min-height:var(--ppms-tap-min)}.ppms-page-head h1{margin:0 0 .35rem;font-size:1.5rem}.ppms-page-head p{margin:0;color:var(--ppms-muted);font-size:.95rem}.ppms-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.ppms-page{width:100%;margin:0 auto}.ppms-card{background:var(--ppms-surface-elevated);border:1px solid var(--ppms-border);border-radius:var(--ppms-radius-sm);padding:1.25rem 1.5rem;box-shadow:var(--ppms-shadow)}@media (hover: hover) and (pointer: fine){.ppms-card:hover{border-color:#118dff59}}.ppms-card h2,.ppms-card h3{margin-top:0;font-size:1rem}.ppms-mt{margin-top:1.25rem}.ppms-grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.ppms-kv{list-style:none;padding:0;margin:0}.ppms-kv li{display:flex;justify-content:space-between;padding:.35rem 0;border-bottom:1px solid var(--ppms-border);font-size:.9rem}.ppms-table{width:100%;border-collapse:collapse;font-size:.9rem}.ppms-table th,.ppms-table td{text-align:left;padding:.55rem .5rem;border-bottom:1px solid var(--ppms-border)}.ppms-table th{color:var(--ppms-muted);font-weight:600}.ppms-muted{color:var(--ppms-muted)}.ppms-error{color:var(--ppms-danger);font-size:.9rem}.ppms-btn-primary,.ppms-btn-ghost,.ppms-btn-danger-outline{font:inherit;cursor:pointer;border-radius:var(--ppms-radius-sm);padding:.55rem 1.1rem;min-height:var(--ppms-tap-min);border:1px solid transparent;touch-action:manipulation}.ppms-btn-primary{background:var(--ppms-accent);color:#fff}.ppms-btn-primary:hover:not(:disabled){background:var(--ppms-accent-dim)}.ppms-btn-primary:disabled{opacity:.6;cursor:not-allowed}.ppms-btn-ghost{background:transparent;border-color:var(--ppms-border);color:var(--ppms-text)}.ppms-btn-danger-outline{background:var(--ppms-surface);border-color:var(--ppms-danger);color:var(--ppms-danger);font-weight:600}.ppms-btn-danger-outline:hover:not(:disabled){background:#dc262614}.ppms-btn-danger-outline:disabled{opacity:.55;cursor:not-allowed}.ppms-btn-sm{padding:.35rem .65rem;font-size:.8rem;min-height:2.25rem}.ppms-auth-page{position:relative;isolation:isolate;min-height:calc(100vh / var(--ppms-layout-zoom));min-height:calc(100dvh / var(--ppms-layout-zoom));display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr);align-content:stretch;background-color:#a50021;background-image:linear-gradient(180deg,#b80028,#a50021 38%,#8f001c)}.ppms-auth-page>*{position:relative;z-index:1}.ppms-auth-page .ppms-auth{background:transparent!important}.ppms-auth{display:flex;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));background:linear-gradient(165deg,rgba(154,0,54,.07) 0%,transparent 42%),var(--ppms-bg-subtle)}.ppms-auth--fill{display:flex;flex:1;min-height:0;flex-direction:column;align-items:center;justify-content:center;background:transparent}.ppms-auth-mascot-wrap{display:flex;justify-content:center;align-items:flex-end;margin-bottom:.85rem;padding:0 .5rem}.ppms-mascot-img{object-fit:contain;vertical-align:middle}.ppms-mascot--login{display:block;max-height:min(42vw,13rem);width:auto;max-width:11rem;filter:drop-shadow(0 8px 20px rgba(154,0,54,.15))}.ppms-auth-card{width:100%;max-width:420px;background:var(--ppms-surface);border:1px solid var(--ppms-border);border-radius:var(--ppms-radius);padding:2rem 1.75rem;box-shadow:var(--ppms-shadow-lg)}.ppms-auth-wordmark-row{display:flex;justify-content:center;margin-bottom:.65rem}.ppms-auth-card h1{margin:0 0 .25rem;font-size:1.5rem;letter-spacing:.04em;color:var(--ppms-primary)}.ppms-auth-card .ppms-btn-primary{width:100%;margin-top:.25rem}.ppms-auth-sub{color:var(--ppms-muted);margin:0 0 1.5rem;font-size:.9rem}.ppms-field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem;font-size:.9rem}.ppms-field input,.ppms-field select,.ppms-field textarea{font:inherit;padding:.5rem .65rem;border-radius:8px;border:1px solid var(--ppms-border);background:var(--ppms-bg);color:var(--ppms-text)}.ppms-field-inline{flex-direction:row;align-items:center;gap:.65rem;margin-bottom:0}.ppms-field-inline span{white-space:nowrap;color:var(--ppms-muted)}.ppms-field-inline input[type=month]{min-width:9rem}.ppms-leaderboard-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem}.ppms-th-rank{width:2.5rem;text-align:center;color:var(--ppms-muted)}.ppms-hint{margin-top:1rem;font-size:.8rem;color:var(--ppms-muted)}.ppms-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.ppms-back{display:inline-block;margin-bottom:.5rem;font-size:.9rem}.ppms-task-form{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.ppms-task-form input{font:inherit;padding:.45rem .55rem;border-radius:8px;border:1px solid var(--ppms-border);background:var(--ppms-bg);color:var(--ppms-text)}.ppms-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:10000}.ppms-modal{background:var(--ppms-surface);border:1px solid var(--ppms-border);border-radius:var(--ppms-radius);padding:1.5rem;width:100%;max-width:480px;max-height:90vh;overflow:auto}.ppms-modal.ppms-modal--wide{max-width:min(96vw,80rem)}.ppms-modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.ppms-modal--import{max-width:min(100%,42rem)}.ppms-modal-backdrop--project-create{align-items:center;justify-content:center;box-sizing:border-box;min-height:100dvh;min-height:100svh;padding:max(.5rem,env(safe-area-inset-top,0px)) max(.75rem,env(safe-area-inset-right,0px)) max(.5rem,env(safe-area-inset-bottom,0px)) max(.75rem,env(safe-area-inset-left,0px));overflow-y:auto;-webkit-overflow-scrolling:touch}.ppms-modal--project-create{max-width:min(100%,88rem);width:100%;min-width:0;max-height:min(92vh - 1rem,62rem);max-height:min(100dvh - 1rem,62rem);margin:auto;flex-shrink:0;padding:0;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 48px #0000001f}.ppms-modal--project-create>.ppms-pc-form{flex:1 1 auto;min-height:0}.ppms-pc-modal-head{flex-shrink:0;padding:1.25rem 1.5rem 0;border-bottom:1px solid var(--ppms-border);background:linear-gradient(180deg,rgba(255,140,0,.06) 0%,transparent 100%)}.ppms-pc-modal-head h2{margin:0;font-size:1.2rem;font-weight:700;line-height:1.3;letter-spacing:-.02em;color:var(--ppms-text)}.ppms-pc-modal-subtitle{margin:.4rem 0 0;padding-bottom:.85rem;font-size:.875rem;line-height:1.45;color:var(--ppms-muted);overflow-wrap:anywhere}.ppms-pc-tabhead{border-bottom:none;margin:.85rem 0 0;padding-bottom:0}.ppms-pc-tab-label{display:inline-block;padding:.35rem .5rem;font-size:.9rem;font-weight:600;color:var(--ppms-muted);border-bottom:2px solid transparent;margin-bottom:-1px}.ppms-pc-tab-label.is-active{color:var(--ppms-text);border-bottom-color:var(--pbi-orange, #ff8c00)}.ppms-pc-form{width:100%;display:flex;flex-direction:column;flex:1;min-height:0}.ppms-pc-form-body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:1rem 1.5rem 1.25rem;-webkit-overflow-scrolling:touch}.ppms-pc-form-body>.ppms-pc-card:last-child{margin-bottom:0}.ppms-pc-card{margin-bottom:1rem;padding:1rem 1.1rem 1.1rem;border:1px solid var(--ppms-border);border-radius:12px;background:var(--ppms-bg);box-shadow:0 1px #0000000a}.ppms-pc-card__title{display:flex;align-items:baseline;flex-wrap:wrap;gap:.25rem .4rem;margin:0 0 .85rem;padding-bottom:.65rem;font-size:.8125rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ppms-muted);border-bottom:1px solid rgba(0,0,0,.06)}.ppms-pc-card__title .ppms-req{text-transform:none;font-size:1em}.ppms-pc-subsection-title{margin:.85rem 0 .45rem;font-size:.8125rem;font-weight:600;color:var(--ppms-text);display:flex;align-items:center;flex-wrap:wrap;gap:.25rem}.ppms-pc-subsection-title:first-of-type{margin-top:0}.ppms-pc-ms-grid{display:flex;flex-direction:column;gap:1.15rem;align-items:stretch}.ppms-pc-ms-panel{display:flex;flex-direction:column;min-width:0;border:1px solid var(--ppms-border);border-radius:10px;background:var(--ppms-surface);overflow:hidden}.ppms-pc-ms-panel__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.45rem .65rem;font-size:.8rem;font-weight:600;color:var(--ppms-text);background:#00000008;border-bottom:1px solid var(--ppms-border)}.ppms-pc-ms-panel__badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;padding:0 .4rem;border-radius:999px;font-size:.72rem;font-weight:700;color:var(--ppms-text);background:#ff8c002e}.ppms-pc-ms-panel__body{display:flex;flex-direction:column;flex:1;min-height:0;padding:.5rem .65rem .65rem}.ppms-pc-userpick{display:flex;flex-direction:column;min-height:0;min-width:0}.ppms-pc-userpick__search{width:100%;box-sizing:border-box;padding:.45rem .55rem;font:inherit;font-size:.875rem;border-radius:8px;border:1px solid var(--ppms-border);background:var(--ppms-bg);color:var(--ppms-text)}.ppms-pc-userpick__search:focus{outline:none;border-color:var(--pbi-orange, #ff8c00);box-shadow:0 0 0 2px #ff8c0033}.ppms-pc-userpick__list{margin-top:.45rem;max-height:11.5rem;overflow:auto;overflow-x:hidden;border:1px solid var(--ppms-border);border-radius:8px;background:var(--ppms-bg);-webkit-overflow-scrolling:touch}.ppms-pc-userpick__row{display:flex;align-items:flex-start;gap:.5rem;padding:.45rem .55rem;border-bottom:1px solid rgba(0,0,0,.06);cursor:pointer;min-width:0}.ppms-pc-userpick__row:last-child{border-bottom:none}.ppms-pc-userpick__row:hover{background:#00000008}.ppms-pc-userpick__row input{margin-top:.2rem;flex-shrink:0}.ppms-pc-userpick__text{min-width:0;flex:1}.ppms-pc-userpick__name{display:block;font-size:.8125rem;font-weight:600;line-height:1.35;color:var(--ppms-text);overflow-wrap:anywhere;word-break:break-word}.ppms-pc-userpick__email{display:block;margin-top:.1rem;font-size:.75rem;color:var(--ppms-muted);overflow-wrap:anywhere;word-break:break-word}.ppms-pc-userpick__empty{margin:0;padding:.65rem .55rem;font-size:.8rem;color:var(--ppms-muted);text-align:center}.ppms-pc-ms-panel__body .ppms-pc-field-hint{margin-top:.45rem;font-size:.78rem}.ppms-req{color:#dc2626;font-weight:700;margin-left:.12em}.ppms-pc-section-title{margin:1.15rem 0 .5rem;font-size:.78rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ppms-muted)}.ppms-pc-form>.ppms-pc-section-title:first-of-type{margin-top:.15rem}.ppms-pc-label-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:.15rem;margin-bottom:.35rem;font-size:.82rem;font-weight:600;color:var(--ppms-text)}.ppms-pc-date-label{cursor:pointer}.ppms-pc-form input[type=date].ppms-pc-date-input{position:relative;z-index:1;cursor:pointer;min-height:2.5rem}.ppms-pc-form input[type=date].ppms-pc-date-input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:1}.ppms-pc-form select.ppms-pc-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .55rem center;background-size:1.1rem;padding-right:2.25rem;cursor:pointer}.ppms-pc-form select.ppms-pc-select:focus{outline:none;border-color:var(--pbi-orange, #ff8c00);box-shadow:0 0 0 2px #ff8c0033}.ppms-pc-form select.ppms-pc-multiselect:focus{outline:none;border-color:var(--pbi-orange, #ff8c00);box-shadow:0 0 0 2px #ff8c0033}.ppms-pc-combobox{position:relative;width:100%}.ppms-pc-combobox-trigger{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;width:100%;text-align:left;font:inherit;color:var(--ppms-text);padding:.55rem 2.35rem .55rem .65rem;border-radius:8px;border:1px solid var(--ppms-border);background:var(--ppms-bg);cursor:pointer;min-height:2.65rem;position:relative}.ppms-pc-combobox-trigger:hover{border-color:#ff8c008c}.ppms-pc-combobox-trigger:focus{outline:none}.ppms-pc-combobox--open .ppms-pc-combobox-trigger,.ppms-pc-combobox-trigger:focus-visible{border-color:var(--pbi-orange, #ff8c00);box-shadow:0 0 0 2px #ff8c0038}.ppms-pc-combobox-trigger-text{flex:1;min-width:0;font-size:.88rem;font-weight:600;line-height:1.35;overflow-wrap:anywhere;word-break:break-word}.ppms-pc-combobox-caret{position:absolute;right:.55rem;top:50%;width:1.1rem;height:1.1rem;margin-top:-.55rem;color:var(--ppms-muted);pointer-events:none;transition:transform .15s ease}.ppms-pc-combobox--open .ppms-pc-combobox-caret{transform:rotate(180deg)}.ppms-pc-combobox-panel{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:60;max-height:min(70vh,22rem);overflow-y:auto;margin:0;padding:.35rem 0;list-style:none;border-radius:10px;border:1px solid var(--ppms-border);background:var(--ppms-surface);box-shadow:0 10px 28px #0000001f}.ppms-pc-combobox-opt{display:block;width:100%;text-align:left;padding:.65rem .75rem;border:none;background:transparent;font:inherit;cursor:pointer;border-bottom:1px solid rgba(0,0,0,.06)}.ppms-pc-combobox-opt:last-child{border-bottom:none}.ppms-pc-combobox-opt:hover,.ppms-pc-combobox-opt:focus-visible{background:#0000000a;outline:none}.ppms-pc-combobox-opt--selected{background:#0000000f}.ppms-pc-combobox-opt-title{display:block;font-size:.88rem;font-weight:700;line-height:1.35;color:var(--ppms-text)}.ppms-pc-combobox-opt-detail{display:block;margin-top:.35rem;font-size:.78rem;line-height:1.45;font-style:italic;color:var(--ppms-muted);overflow-wrap:anywhere;word-break:break-word}.ppms-pc-field--flush{margin-bottom:.35rem}.ppms-pc-form .ppms-field input:not([type=checkbox]),.ppms-pc-form .ppms-field select,.ppms-pc-form .ppms-field textarea{width:100%;box-sizing:border-box}.ppms-pc-form .ppms-field input:not([type=checkbox]):focus,.ppms-pc-form .ppms-field textarea:focus{outline:none;border-color:var(--pbi-orange, #ff8c00);box-shadow:0 0 0 2px #ff8c0033}.ppms-pc-row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:.65rem 1rem;margin-bottom:.65rem;align-items:start}.ppms-pc-col--2{grid-column:span 2}.ppms-pc-col--4{grid-column:span 4}.ppms-pc-col--5{grid-column:span 5}.ppms-pc-col--6{grid-column:span 6}.ppms-pc-col--8{grid-column:span 8}.ppms-pc-col--12{grid-column:span 12}.ppms-pc-section-lead{margin:-.15rem 0 .75rem;font-size:.8125rem;line-height:1.45;color:var(--ppms-muted)}@media (max-width: 900px){.ppms-pc-row--info-grid .ppms-pc-col--4{grid-column:span 12}}.ppms-pl-actions-cell{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;justify-content:flex-end}.ppms-pl-list-hint{margin:0 0 .5rem;font-size:.8125rem}.ppms-pc-full{display:block;width:100%;margin-bottom:.65rem}.ppms-pc-details{margin:.5rem 0 .75rem;border:1px solid var(--ppms-border);border-radius:var(--ppms-radius);padding:.35rem .75rem;background:#00000005}.ppms-pc-details summary{cursor:pointer;font-weight:600;font-size:.9rem;list-style:none}.ppms-pc-details summary::-webkit-details-marker{display:none}.ppms-pc-details-hint{margin:.35rem 0 0;font-size:.82rem}.ppms-pc-attach-drop{margin:.75rem 0 .25rem;border:1px dashed var(--ppms-border);border-radius:var(--ppms-radius);padding:1rem;background:var(--ppms-bg)}.ppms-pc-attach-drop-inner{display:flex;gap:.85rem;align-items:flex-start}.ppms-pc-attach-ico{width:2.5rem;height:2.5rem;flex-shrink:0;border-radius:8px;background:#118dff1f url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231068be'%3E%3Cpath d='M9 16h6v-6h4l-7-7-7 7h4v6zm-4 2h14v2H5v-2z'/%3E%3C/svg%3E") center / 60% no-repeat}.ppms-pc-attach-hint{margin:.25rem 0 0;font-size:.85rem}.ppms-pc-footer{flex-shrink:0;margin-top:0;padding:.9rem 1.5rem 1.15rem;border-top:1px solid var(--ppms-border);background:var(--ppms-surface);box-shadow:0 -8px 24px #0000000f}.ppms-pc-form>.ppms-error{margin:0 1.5rem .5rem;flex-shrink:0}.ppms-pc-form .ppms-field input:disabled,.ppms-pc-form .ppms-field select:disabled{opacity:.88;cursor:not-allowed;background:#0000000a}.ppms-pc-multiselect{min-height:7.5rem;padding:.35rem .5rem;font-size:.88rem}.ppms-pc-field-hint{margin:.35rem 0 0;font-size:.8rem;line-height:1.45;color:var(--ppms-muted)}.ppms-pc-perm{margin:0}.ppms-pc-perm__intro{margin:0 0 .75rem;font-size:.84rem;line-height:1.5;color:var(--ppms-muted);overflow-wrap:anywhere}.ppms-pc-perm__group{display:flex;flex-direction:column;gap:.5rem}.ppms-pc-perm-option{display:flex;align-items:flex-start;gap:.65rem;margin:0;padding:.75rem .85rem;border-radius:10px;border:1px solid var(--ppms-border);background:var(--ppms-surface);cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.ppms-pc-perm-option:hover{border-color:#ff8c0066;background:#00000005}.ppms-pc-perm-option:has(.ppms-pc-perm-option__radio:checked){border-color:var(--pbi-orange, #ff8c00);background:#ff8c0012;box-shadow:0 0 0 1px #ff8c002e}.ppms-pc-perm-option:has(.ppms-pc-perm-option__radio:focus-visible){outline:none;box-shadow:0 0 0 2px #ff8c0059}.ppms-pc-perm-option:has(.ppms-pc-perm-option__radio:checked:focus-visible){box-shadow:0 0 0 1px #ff8c002e,0 0 0 3px #ff8c0059}.ppms-pc-perm-option__radio{flex-shrink:0;width:1.1rem;height:1.1rem;margin:.15rem 0 0;accent-color:var(--pbi-orange, #ff8c00);cursor:pointer}.ppms-pc-perm-option__body{flex:1;min-width:0}.ppms-pc-perm-option__title{display:block;font-size:.9rem;font-weight:700;line-height:1.35;color:var(--ppms-text);overflow-wrap:anywhere}.ppms-pc-perm-option__desc{display:block;margin-top:.35rem;font-size:.8rem;font-weight:400;line-height:1.45;color:var(--ppms-muted);overflow-wrap:anywhere}.ppms-pc-perm__footnote{margin:.75rem 0 0;font-size:.78rem;line-height:1.45;color:var(--ppms-muted);font-style:italic;overflow-wrap:anywhere}.ppms-pc-form .ppms-field span{font-size:.78rem}.ppms-pc-form .ppms-field .ppms-pc-label-row,.ppms-pc-form .ppms-field .ppms-pc-label-row span{font-size:.82rem}@media (max-width: 720px){.ppms-pc-col--2,.ppms-pc-col--4,.ppms-pc-col--5,.ppms-pc-col--6,.ppms-pc-col--8{grid-column:span 12}}.ppms-import-hint{margin:0;font-size:.82rem;line-height:1.45}.ppms-import-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.ppms-import-file-label{cursor:pointer;margin:0}.ppms-import-summary{margin:0;font-size:.88rem;font-weight:600}.ppms-import-preview-wrap{max-height:min(50vh,22rem);margin-left:0;margin-right:0}.ppms-table--compact th,.ppms-table--compact td{padding:.35rem .45rem;font-size:.78rem}.ppms-import-badge{display:inline-block;padding:.12rem .4rem;border-radius:6px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.ppms-import-badge--ok{background:#0d94881f;color:#0f766e}.ppms-import-badge--err{background:#dc26261a;color:var(--ppms-danger)}.ppms-import-err-cell{color:var(--ppms-danger);max-width:14rem;word-break:break-word}.ppms-stack{display:flex;flex-direction:column;gap:.5rem}.ppms-grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.ppms-chart-wrap{position:relative;min-height:220px}.ppms-mt-sm{margin-top:.5rem;font-size:.85rem}.ppms-gantt{display:flex;flex-direction:column;gap:.5rem}.ppms-gantt-row{display:grid;grid-template-columns:minmax(120px,1fr) 3fr;gap:.75rem;align-items:center}.ppms-gantt-name{font-size:.85rem}.ppms-gantt-bar-wrap{height:14px;background:var(--ppms-bg);border-radius:6px;border:1px solid var(--ppms-border)}.ppms-gantt-bar{height:100%;background:linear-gradient(90deg,#2563eb,#3b82f6);border-radius:5px;min-width:4px}.ppms-gantt-filters{flex-wrap:wrap;align-items:center}.ppms-inline-check{display:inline-flex;align-items:center;gap:.35rem;font-size:.9rem;color:var(--ppms-muted)}.ppms-hist{margin-top:.75rem;display:flex;flex-direction:column;gap:.4rem}.ppms-hist-row{display:grid;grid-template-columns:4.5rem 1fr 2rem;gap:.5rem;align-items:center;font-size:.85rem}.ppms-hist-label{color:var(--ppms-muted)}.ppms-hist-track{height:10px;background:var(--ppms-bg);border-radius:5px;border:1px solid var(--ppms-border);overflow:hidden}.ppms-hist-bar{height:100%;background:var(--ppms-accent);border-radius:4px;min-width:2px}.ppms-hist-count{text-align:right;color:var(--ppms-muted)}.ppms-badge-list{margin:.5rem 0 0;padding-left:1.25rem;color:var(--ppms-muted);font-size:.9rem}.ppms-bulk{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;font-size:.9rem}.ppms-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.ppms-comments{list-style:none;padding:0;margin:0 0 1rem;font-size:.9rem}.ppms-comments li{margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--ppms-border)}.ppms-filelist{list-style:none;padding:0;margin:.5rem 0 0;font-size:.9rem}.ppms-notify-list{list-style:none;padding:0;margin:0}.ppms-notify-list li{display:flex;justify-content:space-between;gap:1rem;padding:1rem;border-bottom:1px solid var(--ppms-border)}.ppms-notify-list li.unread{background:#3b82f614}.ppms-badge{display:inline-block;margin-left:.35rem;padding:.1rem .45rem;border-radius:999px;background:#ef4444;color:#fff;font-size:.7rem;vertical-align:middle}.ppms-linklike{background:none;border:none;color:var(--ppms-accent);cursor:pointer;font:inherit;text-align:left;padding:0}.ppms-linklike:hover{text-decoration:underline}.ppms-pre{margin-top:1rem;padding:1rem;background:var(--ppms-bg);border-radius:8px;font-size:.8rem;overflow:auto;max-height:320px}.ppms-report-actions{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.75rem}.ppms-th-check{width:2rem}.ppms-table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:.5rem -.25rem 0;padding:0 .25rem;scrollbar-color:var(--ppms-border) transparent}.ppms-table-scroll .ppms-table{min-width:520px}.ppms-loading-line{display:inline-block;padding:.35rem 0;color:var(--ppms-muted);font-size:.9rem}.ppms-skip-link{position:absolute;left:-9999px;z-index:200;padding:.5rem 1rem;background:var(--ppms-accent);color:#fff}.ppms-skip-link:focus{left:max(.5rem,env(safe-area-inset-left));top:max(.5rem,env(safe-area-inset-top))}@media (max-width: 639px){.ppms-page-toolbar .ppms-btn-primary,.ppms-page-toolbar .ppms-btn-ghost{width:100%;justify-content:center}.ppms-page-head.ppms-row{flex-direction:column;align-items:stretch;gap:.75rem}.ppms-page-head.ppms-row .ppms-actions{display:flex;flex-direction:column;gap:.5rem;width:100%}.ppms-page-head.ppms-row .ppms-actions .ppms-btn-ghost,.ppms-page-head.ppms-row .ppms-actions .ppms-btn-primary{width:100%}.ppms-page-head.ppms-row>.ppms-btn-primary,.ppms-page-head.ppms-row>.ppms-btn-ghost{width:100%}.ppms-field input:not([type=checkbox]):not([type=radio]),.ppms-field select,.ppms-field textarea{min-height:var(--ppms-tap-min)}.ppms-task-form input,.ppms-task-form select{min-height:2.75rem}.ppms-page-head h1{font-size:1.35rem}.ppms-modal-backdrop{align-items:flex-end;padding:0}.ppms-modal{max-width:100%;width:100%;max-height:min(92vh,100dvh);border-radius:var(--ppms-radius) var(--ppms-radius) 0 0;padding-bottom:max(1.5rem,env(safe-area-inset-bottom,0px))}.ppms-notify-list li{flex-direction:column;align-items:flex-start;gap:.65rem}.ppms-gantt-row{grid-template-columns:1fr;gap:.35rem}.ppms-hist-row{grid-template-columns:3.5rem 1fr 1.75rem;gap:.35rem}.ppms-leaderboard-head,.ppms-bulk{flex-direction:column;align-items:stretch}.ppms-bulk .ppms-btn-primary{width:100%}.ppms-report-actions{flex-direction:column}.ppms-report-actions li,.ppms-report-actions .ppms-btn-primary,.ppms-report-actions .ppms-btn-ghost{width:100%}}@media (min-width: 1024px) and (max-width: 1279px){.ppms-main{padding:1.5rem}}
