@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--gpsi-navy:#003867;--gpsi-navy-dark:#002a4d;--gpsi-navy-light:#004a8a;--gpsi-blue:#0098d4;--gpsi-blue-hover:#0086bc;--accent:#006fa6;--accent-hover:#005a87;--color-success:#15803d;--color-success-bg:#dcfce7;--color-success-border:#bbf7d0;--color-warning:#b45309;--color-warning-bg:#fef3c7;--color-warning-border:#fde68a;--color-caution:#d4a017;--color-caution-bg:#fef9c3;--color-caution-border:#fcd34d;--color-orange:#ea580c;--color-orange-bg:#ffedd5;--color-orange-border:#fdba74;--color-danger:#b91c1c;--color-danger-bg:#fee2e2;--color-danger-border:#fecaca;--color-info:#0369a1;--color-info-bg:#e0f2fe;--text-primary:#1e293b;--text-secondary:#475569;--text-muted:#5b6b80;--bg-body:#f1f5f9;--bg-surface:#fff;--bg-surface-hover:#f8fafc;--bg-muted:#f1f5f9;--border-color:#e2e8f0;--border-color-light:#f1f5f9;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 2px 8px #0000000f;--shadow-lg:0 4px 16px #00000014;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"SF Mono", "Fira Code", "Fira Mono", Menlo, monospace}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-sans);color:var(--text-primary);background-color:var(--bg-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:14px;line-height:1.5}code{font-family:var(--font-mono);background-color:var(--bg-muted);border-radius:var(--radius-sm);padding:2px 6px;font-size:.875em}h1,h2,h3,h4,h5,h6{color:var(--text-primary);margin-top:0;font-weight:600;line-height:1.3}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.1rem}p{color:var(--text-secondary)}a{color:var(--accent);text-decoration:none;transition:color .15s}a:hover{color:var(--gpsi-navy)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}table{border-collapse:collapse;background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;overflow:hidden}thead{background-color:var(--bg-muted)}th{text-align:left;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-color);padding:10px 14px;font-size:.75rem;font-weight:600}td{border-bottom:1px solid var(--border-color-light);color:var(--text-primary);vertical-align:middle;padding:10px 14px;font-size:.875rem}tbody tr{transition:background-color .1s}tbody tr:hover{background-color:var(--bg-surface-hover)}tbody tr:last-child td{border-bottom:none}button{font-family:var(--font-sans);border-radius:var(--radius-md);cursor:pointer;border:none;padding:8px 16px;font-size:.8125rem;font-weight:500;line-height:1.4;transition:all .15s}button:disabled{cursor:not-allowed;opacity:.7;background-color:var(--border-color)!important;color:var(--text-secondary)!important;border-color:var(--border-color)!important}input[type=text],input[type=email],input[type=password],input[type=search],input[type=number],input[type=url],input[type=tel],textarea,select{font-family:var(--font-sans);border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-surface);color:var(--text-primary);outline:none;padding:8px 12px;font-size:.875rem;line-height:1.4;transition:border-color .15s,box-shadow .15s}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 2px #0098d426}input::placeholder,textarea::placeholder{color:var(--text-muted)}.badge{border-radius:var(--radius-sm);align-items:center;padding:3px 8px;font-size:.75rem;font-weight:600;line-height:1.4;display:inline-flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}::selection{color:var(--text-primary);background-color:#0098d426}input[aria-invalid=true].field-invalid,input[aria-invalid=true].field-invalid:focus{border-color:var(--color-danger);box-shadow:0 0 0 2px #b91c1c26}.field-error-inline{color:var(--color-danger);margin:6px 0 0;font-size:13px}.header{background-color:var(--bg-surface);border-bottom:1px solid var(--border-color);height:56px;box-shadow:var(--shadow-sm);z-index:100;align-items:center;gap:16px;padding:0 24px;display:flex;position:sticky;top:0}.logo{border-radius:var(--radius-md);flex-shrink:0;align-items:center;display:flex}.logo img{height:36px;display:block}.hamburger{cursor:pointer;z-index:110;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;margin-left:auto;padding:8px;display:none}.hamburger span{background-color:var(--text-secondary);border-radius:2px;width:22px;height:2px;transition:transform .25s,opacity .25s;display:block}.hamburger.open span:first-child{transform:translateY(7px)rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav{flex:0 auto;min-width:0}.nav ul{align-items:center;gap:2px;margin:0;padding:0;list-style:none;display:flex}.header-end{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:flex}@media (width<=900px){.hamburger{order:3;margin-left:0;display:flex}.header-end{order:2}.nav{background-color:var(--bg-surface);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-md);opacity:0;z-index:99;order:4;max-height:0;padding:8px 0;transition:max-height .3s,opacity .2s;position:fixed;top:56px;left:0;right:0;overflow:hidden}.nav.nav-open{opacity:1;max-height:500px}.nav ul{flex-direction:column;align-items:stretch;gap:0}}@media (width<=480px){.header{gap:10px;padding:0 16px}.logo img{height:30px}}.header-end .academy-language{align-items:center;gap:.4rem;margin:0;font-size:.8rem;display:flex}.header-end .academy-language span{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.header-end .academy-language select{max-width:7rem;padding:.35rem}@media (width<=480px){.header{gap:4px;padding:0 8px}.header .logo img{width:64px;height:auto}.header-end{gap:2px}.header-end .academy-language{align-self:center;padding:0}.header-end .academy-language select{max-width:84px}.header-end .notification-bell-wrapper{margin:0}.header-end .acct-trigger{gap:2px;padding:4px}.header .hamburger{padding:6px}}@media (width<=360px){.header .logo img{width:48px}.header-end .academy-language select{max-width:80px;padding-inline:2px}}.acct{flex-shrink:0;display:inline-block}.acct-trigger{cursor:pointer;font-family:var(--font-sans);background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:4px 8px 4px 4px;transition:background-color .15s,border-color .15s;display:inline-flex}.acct-trigger:hover,.acct-trigger.open{border-color:var(--border-color);background-color:#0038670f}.acct-trigger .dir-avatar{width:28px;height:28px;font-size:.625rem}.acct-role{color:var(--gpsi-navy);white-space:nowrap;font-size:.8125rem;font-weight:600}.acct-caret{color:var(--text-muted);transition:transform .2s}.acct-trigger.open .acct-caret{transform:rotate(180deg)}@keyframes acctIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.acct-menu{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);min-width:240px;max-width:320px;box-shadow:var(--shadow-lg);z-index:1000;transform-origin:100% 0;flex-direction:column;gap:2px;padding:6px;animation:.15s acctIn;display:flex;position:fixed}.acct-identity{align-items:center;gap:10px;padding:8px 10px 10px;display:flex}.acct-identity-text{min-width:0}.acct-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;font-weight:600;display:block;overflow:hidden}.acct-email{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;display:block;overflow:hidden}.acct-acting{border-top:1px solid var(--border-color-light);color:var(--text-secondary);margin:0;padding:7px 10px;font-size:.78rem}.acct-acting strong{color:var(--gpsi-navy);font-weight:600}.acct-item{box-sizing:border-box;text-align:left;cursor:pointer;width:100%;font-family:var(--font-sans);color:var(--text-secondary);border-radius:var(--radius-md);background:0 0;border:none;padding:9px 10px;font-size:.8125rem;font-weight:500;transition:color .12s,background-color .12s;display:block}.acct-item:hover{color:var(--gpsi-navy);background-color:#00386712}.acct-item-danger:hover{color:var(--color-danger);background-color:var(--color-danger-bg)}.acct-sep{background:var(--border-color-light);height:1px;margin:4px 0}@media (width<=900px){.acct-role{display:none}}.navdd{display:inline-block}.navdd-trigger{cursor:pointer;color:var(--text-secondary);font-family:var(--font-sans);white-space:nowrap;border-radius:var(--radius-md);background:0 0;border:none;align-items:center;gap:6px;padding:7px 14px;font-size:.8125rem;font-weight:500;transition:color .15s,background-color .15s;display:inline-flex}.navdd-trigger:hover{color:var(--gpsi-navy);background-color:#0038670f}.navdd-trigger.active,.navdd-trigger.open{color:var(--gpsi-navy);background-color:#00386717;font-weight:600}.navdd-caret{opacity:.7;transition:transform .2s}.navdd-trigger.open .navdd-caret{transform:rotate(180deg)}.navdd-badge{background-color:var(--accent);color:#fff;font-variant-numeric:tabular-nums;border-radius:9999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.6875rem;font-weight:700;line-height:1;display:inline-flex}.navdd-item{justify-content:space-between;align-items:center;gap:12px;display:flex}@keyframes navddIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.navdd-menu{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);min-width:220px;box-shadow:var(--shadow-lg);z-index:1000;transform-origin:0 0;flex-direction:column;gap:2px;padding:6px;animation:.15s navddIn;display:flex;position:fixed}.navdd-item{box-sizing:border-box;text-align:left;white-space:nowrap;width:100%;color:var(--text-secondary);font-family:var(--font-sans);border-radius:var(--radius-md);padding:9px 14px;font-size:.8125rem;font-weight:500;text-decoration:none;transition:color .12s,background-color .12s;display:block}.navdd-item:hover{color:var(--gpsi-navy);background-color:#00386712}.navdd-item.active{color:var(--gpsi-navy);background-color:#0038671c;font-weight:600}@media (width<=900px){.navdd{display:block}.navdd-trigger{border-radius:0;justify-content:space-between;width:100%;padding:12px 24px;font-size:.875rem}.navdd-menu{border-left:none;border-right:none;border-radius:0;width:100vw;min-width:0;padding:4px 0}.navdd-item{border-radius:0;padding:12px 36px;font-size:.875rem}}.notification-drawer-backdrop{z-index:199;position:fixed;inset:0}.notification-drawer{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:380px;max-height:480px;box-shadow:var(--shadow-lg);z-index:200;flex-direction:column;margin-top:6px;display:flex;position:absolute;top:100%;right:0;overflow:hidden}.notification-drawer-header{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 16px 10px;display:flex}.notification-drawer-header h3{color:var(--text-primary);font-size:.9375rem;font-weight:600;font-family:var(--font-sans);margin:0}.mark-all-read-btn{color:var(--gpsi-navy);cursor:pointer;border-radius:var(--radius-md);font-size:.75rem;font-weight:500;font-family:var(--font-sans);background:0 0;border:none;padding:4px 8px;transition:background-color .15s}.mark-all-read-btn:hover{background-color:#0038670f}.mark-all-read-btn:disabled{opacity:.4;cursor:default}.notification-drawer-list{flex:1;margin:0;padding:0;list-style:none;overflow-y:auto}.notification-empty{color:var(--text-muted);font-size:.875rem;font-family:var(--font-sans);justify-content:center;align-items:center;padding:48px 16px;display:flex}.notification-item{cursor:pointer;border-bottom:1px solid var(--border-color);align-items:flex-start;gap:10px;padding:12px 16px;transition:background-color .12s;display:flex}.notification-item:last-child{border-bottom:none}.notification-item:hover{background-color:#00386708}.notification-item.unread{background-color:#0038670a}.notification-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:5px}.notification-dot.visible{background-color:var(--gpsi-navy)}.notification-dot.hidden{background-color:#0000}.notification-content{flex:1;min-width:0}.notification-title{color:var(--text-primary);font-size:.8125rem;line-height:1.35;font-family:var(--font-sans);margin:0 0 2px}.notification-title.unread{font-weight:600}.notification-title.read{font-weight:400}.notification-body{color:var(--text-secondary);-webkit-line-clamp:2;font-size:.75rem;line-height:1.4;font-family:var(--font-sans);-webkit-box-orient:vertical;margin:0 0 4px;display:-webkit-box;overflow:hidden}.notification-time{color:var(--text-muted);font-size:.6875rem;font-family:var(--font-sans)}.notification-load-more{border-top:1px solid var(--border-color);text-align:center;flex-shrink:0;padding:10px 16px}.load-more-btn{color:var(--gpsi-navy);cursor:pointer;border-radius:var(--radius-md);font-size:.8125rem;font-weight:500;font-family:var(--font-sans);background:0 0;border:none;padding:4px 12px;transition:background-color .15s}.load-more-btn:hover{background-color:#0038670f}.load-more-btn:disabled{opacity:.5;cursor:default}.notification-loading{color:var(--text-muted);font-size:.8125rem;font-family:var(--font-sans);justify-content:center;align-items:center;padding:24px 16px;display:flex}@media (width<=480px){.notification-drawer{width:calc(100vw - 32px);right:-8px}}.notification-bell-wrapper{align-items:center;margin-left:12px;margin-right:4px;display:flex;position:relative}.notification-bell-btn{cursor:pointer;border-radius:var(--radius-md);color:var(--text-secondary);background:0 0;border:none;justify-content:center;align-items:center;padding:6px;transition:color .15s,background-color .15s;display:flex;position:relative}.notification-bell-btn:hover{color:var(--gpsi-navy);background-color:#0038670f}.notification-bell-btn.has-unread{color:var(--gpsi-navy)}.notification-badge{color:#fff;font-size:.625rem;font-weight:700;font-family:var(--font-sans);pointer-events:none;background-color:#e53e3e;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;line-height:1;display:flex;position:absolute;top:0;right:0;transform:translate(4px,-4px)}.toggle{cursor:pointer;align-items:center;display:inline-flex}.toggle input{opacity:0;width:0;height:0;position:absolute}.toggle-track{background-color:var(--border-color);border-radius:999px;width:36px;height:20px;transition:background-color .15s;display:inline-block}.toggle-thumb{background-color:#fff;border-radius:50%;width:16px;height:16px;margin:2px;transition:transform .15s;display:block}.toggle input:checked+.toggle-track{background-color:var(--color-success)}.toggle input:checked+.toggle-track .toggle-thumb{transform:translate(16px)}.toggle input:disabled+.toggle-track{opacity:.5;cursor:not-allowed}.preferences-list{margin:0;padding:4px 0;list-style:none}.preferences-row{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.preferences-row:last-child{border-bottom:none}.preferences-label{flex-direction:column;gap:2px;display:flex}.preferences-title{color:var(--text-primary);font-size:.8125rem;font-weight:500;font-family:var(--font-sans)}.preferences-desc{color:var(--text-secondary);font-size:.6875rem;font-family:var(--font-sans)}.preferences-error{color:var(--text-secondary);font-size:.8125rem;font-family:var(--font-sans);flex-direction:column;align-items:center;gap:10px;padding:20px 16px;display:flex}.preferences-retry{border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-surface);color:var(--text-primary);font-size:.8125rem;font-family:var(--font-sans);cursor:pointer;padding:4px 14px}.preferences-select{border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-surface);color:var(--text-primary);font-size:.8125rem;font-family:var(--font-sans);cursor:pointer;padding:4px 8px}.preferences-link{color:var(--gpsi-blue);font-size:.6875rem;font-family:var(--font-sans);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;text-decoration:underline}.preferences-link:disabled{color:var(--text-secondary);cursor:default}.preferences-row-stacked{flex-direction:column;align-items:stretch;gap:6px}.preferences-row-stacked .preferences-select{width:100%}.settings-menu-wrapper{align-items:center;margin-left:4px;margin-right:8px;display:flex;position:relative}.settings-menu-panel{width:280px;max-height:none}.guide-overlay{z-index:10500;pointer-events:none;position:fixed;inset:0}.guide-ring{box-sizing:border-box;border:3px solid #f59e0b;border-radius:6px;animation:1.6s ease-in-out infinite guide-pulse;position:fixed;box-shadow:0 0 0 4px #f59e0b40}.guide-chip,.guide-scroll{box-sizing:border-box;color:#1f1300;white-space:nowrap;background:#f59e0b;border-radius:12px;font-weight:600;position:fixed;box-shadow:0 1px 4px #00000040}.guide-chip{height:20px;padding:0 8px;font-size:12px;line-height:20px}.guide-scroll{padding:4px 10px;font-size:13px}.guide-scroll-down:after{content:" ↓"}.guide-scroll-up:after{content:" ↑"}.guide-scroll-right:after{content:" →"}.guide-scroll-left:before{content:"←"}@keyframes guide-pulse{0%,to{box-shadow:0 0 0 4px #f59e0b40}50%{box-shadow:0 0 0 8px #f59e0b1f}}@media (prefers-reduced-motion:reduce){.guide-ring{animation:none}}.practice-status{z-index:1100;color:#342600;background:#fff2bf;border-bottom:2px solid #8a6500;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 20px;display:flex;position:sticky;top:0}.practice-status button{color:#342600;cursor:pointer;background:#fff;border:1px solid #8a6500;border-radius:4px;margin-left:auto;padding:8px 12px}.practice-script{border-top:1px solid #d9b94d;flex-wrap:wrap;flex-basis:100%;align-items:center;gap:12px;padding-top:8px;display:flex}.practice-script-text{flex-direction:column;flex:320px;gap:2px;display:flex}.practice-script-step{letter-spacing:.04em;font-size:12px;font-weight:700}.practice-script-note{color:#7a2e00}.practice-script-actions{gap:8px;display:flex}.practice-status .practice-script-actions button{margin-left:0}.practice-status .practice-script-continue{color:#fff;background:#8a6500;font-weight:600}.practice-status .practice-guide-toggle{margin-left:0}.practice-guide-recorded{color:#1d5e20}.practice-guide-link{color:#342600;align-self:center;font-weight:600}.practice-guide-unavailable{flex-basis:100%}.admin-page{max-width:1200px;margin:0 auto;padding:32px}.admin-page h1{text-align:center;color:var(--gpsi-navy);margin-bottom:32px;font-size:1.5rem}.service-list{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.service-item{border:1px solid var(--border-color);border-radius:var(--radius-lg);text-align:center;background-color:var(--bg-surface);width:300px;padding:24px;transition:box-shadow .15s,border-color .15s}.service-item:hover{box-shadow:var(--shadow-md);border-color:#cbd5e1}.service-item h2{color:var(--gpsi-navy);margin-bottom:8px;font-size:1.25rem}.service-item p{color:var(--text-secondary);margin-bottom:20px;font-size:.875rem}.service-link{color:#fff;background-color:var(--gpsi-navy);border-radius:var(--radius-md);padding:8px 20px;font-size:.8125rem;font-weight:600;text-decoration:none;transition:background-color .15s;display:inline-block}.service-link:hover{background-color:var(--gpsi-navy-dark);color:#fff}.button{border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;border:none;padding:8px 16px;font-size:.8125rem;font-weight:500}.button-primary{background-color:var(--gpsi-navy);color:#fff;font-weight:600;transition:background-color .15s}.button-primary:hover{background-color:var(--gpsi-navy-dark)}.button-secondary{background-color:var(--bg-muted);color:var(--text-primary);border:1px solid var(--border-color);font-weight:500;transition:background-color .15s}.button-secondary:hover{background-color:var(--border-color)}.inline-btn{border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;padding:4px 10px;font-size:.75rem;font-weight:600;line-height:1.4;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.inline-btn-save,.inline-btn-confirm{background-color:var(--color-success);color:#fff}.inline-btn-save:hover,.inline-btn-confirm:hover{background-color:#15803d}.inline-btn-cancel,.inline-btn-deny{background-color:var(--bg-surface);border-color:var(--color-danger-border);color:var(--color-danger)}.inline-btn-cancel:hover,.inline-btn-deny:hover{background-color:var(--color-danger-bg)}.inline-btn-edit{color:var(--accent);border-color:var(--accent);background-color:#0000}.inline-btn-edit:hover{background-color:var(--accent);color:#fff}.icon-btn{border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--bg-surface);width:30px;height:30px;color:var(--text-secondary);cursor:pointer;justify-content:center;align-items:center;padding:0;transition:all .15s;display:inline-flex;position:relative}.icon-btn:hover{border-color:var(--accent);color:var(--accent);background-color:var(--bg-surface-hover)}.icon-btn svg{width:15px;height:15px}.mono-id{font-family:var(--font-mono);color:var(--text-muted);font-size:.6875rem}.cell-nowrap{white-space:nowrap}.people-table td:first-child{padding-top:8px;padding-bottom:8px}.people-table .dir-badges:not(.dir-badges-wrap){overflow:hidden}.people-table .role-badge{flex-shrink:0}@media (width<=1360px){.people-table .dir-badges{flex-wrap:wrap;row-gap:3px;overflow:visible}.people-table td{white-space:normal}}.dir-page{max-width:1440px;margin:0 auto;padding:24px 32px 48px}.dir-page-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.dir-page-title{color:var(--gpsi-navy);margin:0;font-size:1.5rem}.dir-page-lede{color:var(--text-secondary);margin:4px 0 0;font-size:.8125rem}.dir-page-actions{flex-shrink:0;gap:8px;display:flex}.dir-breadcrumb{color:var(--text-secondary);align-items:center;gap:6px;margin-bottom:12px;font-size:.8125rem;display:flex}.dir-breadcrumb a{color:var(--text-secondary)}.dir-breadcrumb a:hover{color:var(--gpsi-navy)}.dir-breadcrumb-sep{color:var(--text-muted)}.dir-breadcrumb-current{color:var(--text-primary);font-weight:600}.dir-toolbar{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);flex-direction:column;gap:10px;margin-bottom:16px;padding:12px 14px;display:flex}.dir-toolbar-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.dir-search{flex:260px;max-width:380px;position:relative}.dir-search input{width:100%;padding:8px 32px 8px 34px;font-size:.875rem}.dir-search input::-webkit-search-cancel-button{appearance:none}.dir-search-icon{width:15px;height:15px;color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.dir-search-clear{width:22px;height:22px;color:var(--text-muted);background:0 0;border-radius:999px;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.dir-search-clear:hover{background:var(--bg-muted);color:var(--text-primary)}.dir-field{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:6px;font-size:.8125rem;display:inline-flex}.dir-field select{padding:7px 10px;font-size:.8125rem}.dir-toggle{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:.8125rem;display:inline-flex}.dir-toggle input{accent-color:var(--accent);width:15px;height:15px;margin:0}.dir-count{color:var(--text-secondary);white-space:nowrap;font-size:.8125rem;font-weight:600}.dir-toolbar-spacer{margin-left:auto}.dir-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.dir-chips-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-right:2px;font-size:.75rem;font-weight:600}.dir-chip{border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;font-weight:600;line-height:1.5;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}.dir-chip:hover{border-color:var(--accent);color:var(--gpsi-navy)}.dir-chip[aria-pressed=true]{background:var(--gpsi-navy);border-color:var(--gpsi-navy);color:#fff}.dir-chip-n{font-variant-numeric:tabular-nums;opacity:.75}.dir-chip-attention{border-color:var(--color-warning-border);color:#92400e;background:var(--color-warning-bg)}.dir-chip-attention:hover{border-color:var(--color-warning);color:#92400e}.dir-chip-attention[aria-pressed=true]{background:var(--color-warning);border-color:var(--color-warning);color:#fff}.dir-chip-dot{background:var(--color-warning);border-radius:999px;flex-shrink:0;width:6px;height:6px}.dir-chip-attention[aria-pressed=true] .dir-chip-dot{background:#fff}.dir-chip-zero{color:var(--text-muted);border-style:dashed}.dir-chip-clear{color:var(--accent);background:0 0;border:none;padding:4px 6px;font-size:.75rem;font-weight:600;text-decoration:underline}.dir-table-wrap{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);max-height:calc(100vh - 300px);overflow:auto}.dir-table{table-layout:fixed;border-collapse:separate;border-spacing:0;border:none;border-radius:0;width:100%;overflow:visible}.dir-table thead th{z-index:2;background:var(--bg-muted);border-bottom:1px solid var(--border-color);text-transform:none;letter-spacing:0;padding:0;position:sticky;top:0}.dir-th-inner,.dir-table thead th>.dir-th-sort{width:100%;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;text-align:left;white-space:nowrap;align-items:center;gap:4px;padding:11px 14px;font-size:.75rem;font-weight:700;display:flex}.dir-th-sort{cursor:pointer;background:0 0;border:none;border-radius:0;font-family:inherit}.dir-th-sort:hover{color:var(--gpsi-navy);background:var(--border-color-light)}.dir-th-num,.dir-th-end{justify-content:flex-end}.dir-sort-arrow{width:10px;height:10px;color:var(--accent);opacity:0;flex-shrink:0}.dir-th-sort:hover .dir-sort-arrow{opacity:.35}th[aria-sort=ascending] .dir-sort-arrow,th[aria-sort=descending] .dir-sort-arrow{opacity:1}th[aria-sort=descending] .dir-sort-arrow{transform:rotate(180deg)}th[aria-sort=ascending] .dir-th-sort,th[aria-sort=descending] .dir-th-sort{color:var(--gpsi-navy)}.dir-table tbody td{color:var(--text-primary);border-bottom:1px solid var(--border-color-light);vertical-align:middle;text-overflow:ellipsis;white-space:nowrap;padding:10px 14px;font-size:.8125rem;overflow:hidden}.dir-table tbody tr:last-child td{border-bottom:none}.dir-row-link{cursor:pointer}.dir-table tbody tr.dir-row-link:hover{background:var(--bg-surface-hover)}.dir-table tbody tr.dir-row-link:focus-visible{background:var(--bg-surface-hover);box-shadow:inset 3px 0 0 var(--gpsi-blue);outline:none}.dir-cell-actions{text-align:right;white-space:nowrap}.dir-cell-wrap{white-space:normal;overflow:visible}.dir-badges-wrap{flex-wrap:wrap;row-gap:3px}.dir-badges-wrap .dir-provider{min-width:0;max-width:100%}.dir-provider-label{text-overflow:ellipsis;overflow:hidden}.dir-cell-input{width:100%;max-width:100%;padding:5px 8px;font-size:.8125rem}.dir-empty-cell{color:var(--border-color);-webkit-user-select:none;user-select:none}.dir-muted{color:var(--text-secondary)}.dir-truncate{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.dir-stack{min-width:0;display:block}.dir-stack-primary{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.dir-stack-secondary{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;display:block;overflow:hidden}.dir-stack-absent{color:var(--text-secondary);font-style:italic}.dir-stack-alert{color:var(--color-danger);font-weight:600}.dir-person{align-items:center;gap:10px;min-width:0;display:flex}.dir-avatar{background:var(--color-info-bg);width:32px;height:32px;color:var(--gpsi-navy);letter-spacing:.02em;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:.6875rem;font-weight:700;display:inline-flex}.dir-avatar-lg{width:56px;height:56px;font-size:1.125rem}.dir-avatar-ghost{background:var(--bg-muted);color:var(--text-secondary)}.dir-person-text{flex:1;min-width:0}.dir-person-name{color:var(--gpsi-navy);text-overflow:ellipsis;font-size:.8125rem;font-weight:600;text-decoration:none;display:block;overflow:hidden}.dir-person-name:hover{text-decoration:underline}.dir-person-sub{color:var(--text-secondary);text-overflow:ellipsis;font-size:.75rem;display:block;overflow:hidden}.dir-person-sub-none{color:var(--text-secondary);font-style:italic}.role-badge{letter-spacing:.01em;white-space:nowrap;border-radius:9999px;padding:3px 9px;font-size:.7rem;font-weight:600;display:inline-block}.role-badge-admin{background-color:var(--color-info-bg);color:#075985}.role-badge-kam{color:#92400e;background-color:#fef3c7}.role-badge-expediting{color:#7b1fa2;background-color:#f3e5f5}.role-badge-ra{background-color:var(--color-success-bg);color:#166534}.role-badge-contractor{color:#0369a1;background-color:#e0f2fe}.role-badge-supervisor{color:#9d174d;background-color:#fce7f3}.role-badge-supplier{color:#166534;background-color:#f0fdf4}.role-badge-customer{color:#9a3412;background-color:#fff7ed}.role-badge-default{background-color:var(--bg-muted);color:var(--text-secondary)}.role-badge-retired{text-decoration:line-through}.dir-badges{align-items:center;gap:4px;min-width:0;display:flex}.dir-badge-more{color:var(--text-secondary);white-space:nowrap;font-size:.7rem;font-weight:600}.dir-provider{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:2px 8px 2px 6px;font-size:.7rem;font-weight:600;line-height:1.6;display:inline-flex}.dir-provider svg{flex-shrink:0;width:11px;height:11px}.dir-provider-entra{color:#1e40af;background:#dbeafe;border-color:#bfdbfe}.dir-provider-b2c{color:#5b21b6;background:#ede9fe;border-color:#ddd6fe}.dir-status-dot{background:var(--color-success);border-radius:999px;flex-shrink:0;width:6px;height:6px}.dir-status-dot-pending{opacity:.6;background:0 0;border:1.5px solid}.dir-pill-count{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:.72rem;font-weight:600}.dir-flag{white-space:nowrap;border:1px solid var(--border-color);background:var(--bg-muted);color:var(--text-secondary);border-radius:999px;align-items:center;gap:4px;padding:1px 7px;font-size:.68rem;font-weight:600;display:inline-flex}.dir-flag-warning{border-color:var(--color-warning-border);background:var(--color-warning-bg);color:#92400e}.dir-linkbtn{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-secondary);white-space:nowrap;align-items:center;gap:3px;padding:2px 6px;font-size:.72rem;font-weight:600;text-decoration:none;display:inline-flex}.dir-linkbtn:hover{border-color:var(--accent);color:var(--accent);background:var(--bg-surface-hover)}.dir-linkbtn svg{flex-shrink:0;width:11px;height:11px}.dir-linkbtn+.dir-linkbtn{margin-left:4px}.dir-skel{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--bg-muted) 25%, var(--border-color-light) 37%, var(--bg-muted) 63%);background-size:400% 100%;height:10px;animation:1.3s ease-in-out infinite dir-shimmer;display:block}.dir-skel-avatar{border-radius:999px;width:32px;height:32px}@keyframes dir-shimmer{0%{background-position:100%}to{background-position:0}}@media (prefers-reduced-motion:reduce){.dir-skel{animation:none}}.dir-state{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:40px 24px;display:flex}.dir-state-title{color:var(--text-primary);margin:0;font-size:.9375rem;font-weight:600}.dir-state-body{max-width:460px;color:var(--text-secondary);margin:0;font-size:.8125rem}.dir-state-actions{gap:8px;margin-top:4px;display:flex}.dir-notice{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-surface);align-items:flex-start;gap:12px;margin-bottom:16px;padding:14px 16px;display:flex}.dir-notice-icon{flex-shrink:0;width:18px;height:18px;margin-top:1px}.dir-notice-title{color:var(--text-primary);margin:0 0 2px;font-size:.875rem;font-weight:600}.dir-notice-body{color:var(--text-secondary);margin:0;font-size:.8125rem}.dir-notice-actions{gap:8px;margin-top:10px;display:flex}.dir-notice-warning{border-color:var(--color-warning-border);background:var(--color-warning-bg)}.dir-notice-warning .dir-notice-icon,.dir-notice-warning .dir-notice-title{color:#92400e}.dir-notice-warning .dir-notice-body{color:#a1620b}.dir-notice-danger{border-color:var(--color-danger-border);background:var(--color-danger-bg)}.dir-notice-danger .dir-notice-icon,.dir-notice-danger .dir-notice-title{color:var(--color-danger)}.dir-notice-danger .dir-notice-body{color:#a52222}.dir-btn{border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-primary);white-space:nowrap;align-items:center;gap:6px;padding:8px 14px;font-size:.8125rem;font-weight:600;text-decoration:none;display:inline-flex}.dir-btn:hover:not(:disabled){background:var(--bg-surface-hover);border-color:var(--accent);color:var(--gpsi-navy)}.dir-btn-primary{background:var(--gpsi-navy);border-color:var(--gpsi-navy);color:#fff}.dir-btn-primary:hover:not(:disabled){background:var(--gpsi-navy-dark);border-color:var(--gpsi-navy-dark);color:#fff}.dir-btn-sm{padding:5px 10px;font-size:.75rem}.dir-btn-danger{border-color:var(--color-danger-border);background:var(--color-danger-bg);color:var(--color-danger)}.dir-btn-danger:hover:not(:disabled){background:var(--color-danger);border-color:var(--color-danger);color:#fff}.dir-btn:disabled{cursor:not-allowed;opacity:.5}.dir-pager{color:var(--text-secondary);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 2px 0;font-size:.8125rem;display:flex}@media (width<=1100px){.dir-page{padding:20px 16px 40px}.dir-table-wrap{max-height:none}}@media (width<=720px){.dir-page-head{flex-direction:column;align-items:stretch}.dir-search{max-width:none}}.ui-pagination{color:var(--text-secondary);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 4px;font-size:.85rem;display:flex}.ui-pagination-controls{align-items:center;gap:10px;display:flex}.ui-pagination-size{align-items:center;gap:6px;display:flex}.ui-pagination-size select{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);padding:4px 6px}.ui-pagination-button{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);cursor:pointer;padding:5px 12px}.ui-pagination-button:hover:not(:disabled){background:var(--bg-surface-hover)}.ui-pagination-button:disabled{opacity:.45;cursor:not-allowed}.ui-pagination-page{white-space:nowrap}.acm-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.acm-card{background:var(--bg-surface);border-radius:var(--radius-md);width:420px;max-height:90vh;box-shadow:var(--shadow-lg);padding:24px;overflow-y:auto}.acm-card h3{margin-top:0;margin-bottom:12px}.acm-card input[type=text]{border:1px solid var(--border-color);border-radius:var(--radius-sm);width:100%;margin-bottom:8px;padding:6px 8px}.acm-primary,.acm-secondary{border-radius:var(--radius-sm);cursor:pointer;border:none;width:100%;margin-top:6px;padding:8px}.acm-primary{background:var(--gpsi-navy);color:#fff}.acm-secondary{background:var(--text-secondary);color:#fff}.acm-results{max-height:200px;margin:12px 0 0;padding:0;list-style:none;overflow-y:auto}.acm-results li{cursor:pointer;padding:6px 4px}.acm-results li:hover{background:var(--bg-surface-hover)}.acm-services{flex-direction:column;gap:6px;max-height:260px;margin:12px 0;display:flex;overflow-y:auto}.acm-parameters{flex-direction:column;gap:12px;max-height:260px;margin:12px 0;display:flex;overflow-y:auto}.acm-parameter-group{flex-direction:column;gap:4px;display:flex}.acm-parameter-group label{font-weight:500}.acm-parameter-group select{border-radius:var(--radius-sm);border:1px solid var(--border-color);padding:8px}.acm-actions{gap:8px;margin-top:16px;display:flex}.acm-error{color:var(--color-danger);margin-top:8px}.acm-confirm{margin:8px 0 0;padding-left:18px}.ui-modal-overlay{inset:0;top:var(--practice-band-h,0px);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed}.ui-modal-card{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-height:calc(100vh - 48px - var(--practice-band-h,0px));outline:none;flex-direction:column;display:flex}.ui-modal-sm{max-width:420px}.ui-modal-md{max-width:560px}.ui-modal-lg{max-width:880px}.ui-modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:12px;padding:18px 22px;display:flex}.ui-modal-title{color:var(--text-primary);margin:0;font-size:1.05rem;font-weight:600}.ui-modal-close{cursor:pointer;border-radius:var(--radius-sm);color:var(--text-secondary);background:0 0;border:none;padding:4px 8px;font-size:.95rem;line-height:1}.ui-modal-close:hover:not(:disabled){background:var(--bg-surface-hover);color:var(--text-primary)}.ui-modal-close:disabled{cursor:not-allowed;opacity:.5}.ui-modal-body{color:var(--text-primary);padding:20px 22px;overflow-y:auto}.ui-modal-footer{border-top:1px solid var(--border-color);justify-content:flex-end;gap:8px;padding:14px 22px;display:flex}.crm-search{flex-direction:column;gap:6px;display:flex;position:relative}.crm-search-label{color:var(--text-secondary);font-size:.8rem;font-weight:600}.crm-search-input{box-sizing:border-box;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);width:100%;color:var(--text-primary);padding:8px 10px;font-size:.9rem}.crm-search-input:focus{border-color:var(--accent);outline:none}.crm-search-input:disabled{background:var(--bg-muted);cursor:not-allowed}.crm-search-hint,.crm-search-status{color:var(--text-secondary);margin:0;font-size:.8rem}.crm-search-status p{margin:0 0 6px}.crm-search-error{color:var(--color-danger);background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-sm);padding:6px 8px;font-size:.8rem}.crm-search-results{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);box-shadow:var(--shadow-md);max-height:220px;margin:0;padding:0;list-style:none;overflow-y:auto}.crm-search-results li+li{border-top:1px solid var(--border-color-light)}.crm-search-results button{text-align:left;cursor:pointer;width:100%;color:var(--text-primary);background:0 0;border:none;padding:8px 10px;font-size:.88rem;display:block}.crm-search-results button:hover{background:var(--bg-surface-hover)}.crm-search-selection{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-muted);justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.crm-search-selection-name{color:var(--text-primary);font-size:.9rem}.crm-search-clear,.crm-search-external{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);cursor:pointer;padding:4px 10px;font-size:.8rem}.crm-search-clear:hover:not(:disabled),.crm-search-external:hover{background:var(--bg-surface-hover)}.crm-search-clear:disabled{opacity:.5;cursor:not-allowed}.manual-invite .form-section{margin-bottom:24px}.manual-invite .form-section h4{color:var(--text-primary);margin:0 0 12px;font-size:16px}.manual-invite .subsection-heading{color:var(--text-secondary);margin:20px 0 8px;font-size:14px}.manual-invite .form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.manual-invite .form-group{flex-direction:column;margin-bottom:16px;display:flex}.manual-invite .form-group label{color:var(--text-secondary);margin-bottom:6px;font-size:14px;font-weight:700}.manual-invite .form-group input,.manual-invite .form-group select{border:1px solid var(--border-color);border-radius:var(--radius-sm);box-sizing:border-box;width:100%;padding:8px 12px;font-size:14px}.manual-invite .form-group input:disabled{background-color:var(--bg-muted);color:var(--text-secondary)}.manual-invite .form-group input:focus,.manual-invite .form-group select:focus{border-color:var(--color-success);outline:none;box-shadow:0 0 0 2px #16a34a33}.manual-invite .field-help{color:var(--text-secondary);margin:6px 0 0;font-size:13px}.manual-invite .field-error{color:var(--color-danger);margin:6px 0 0;font-size:13px}.manual-invite .provider-failure{border-radius:var(--radius-sm);background-color:var(--color-danger-bg);border:1px solid var(--color-danger-border);color:var(--color-danger);padding:12px;font-size:13px}.manual-invite .provider-failure p{margin:0 0 8px}.manual-invite .search-button{background-color:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;align-self:flex-start;padding:6px 12px;font-size:13px;font-weight:500}.manual-invite .search-button:hover{background-color:var(--accent-hover)}.manual-invite .create-contact-section{background-color:var(--bg-muted);border:1px solid var(--border-color);border-radius:var(--radius-sm);text-align:center;margin-top:16px;padding:16px}.manual-invite .create-contact-button{background-color:var(--color-success);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;padding:12px 20px;font-size:14px;font-weight:700;transition:background-color .2s}.manual-invite .create-contact-button:hover:not(:disabled){background-color:#15803d}.manual-invite .create-contact-button:disabled{background-color:var(--border-color);cursor:not-allowed}.manual-invite .create-contact-note{color:var(--text-secondary);margin:8px 0 0;font-size:13px;font-style:italic}.manual-invite .error-message{background-color:var(--color-danger-bg);color:var(--color-danger);border-radius:var(--radius-sm);border:1px solid var(--color-danger-border);margin:16px 0;padding:12px}.manual-invite .success-message{background-color:var(--color-success-bg);color:var(--color-success);border-radius:var(--radius-sm);border:1px solid var(--color-success-border);margin:16px 0;padding:12px;font-weight:500}.manual-invite .modal-actions{border-top:1px solid var(--border-color);justify-content:flex-end;gap:12px;margin-top:24px;padding-top:16px;display:flex}.manual-invite .green-button{background-color:var(--color-success);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;padding:10px 20px;font-size:14px;font-weight:700}.manual-invite .green-button:hover:not(:disabled){background-color:#15803d}.manual-invite .green-button:disabled{background-color:var(--border-color);cursor:not-allowed}.manual-invite .red-button{background-color:var(--color-danger);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;padding:10px 20px;font-size:14px;font-weight:700}.manual-invite .red-button:hover:not(:disabled){background-color:#b91c1c}.manual-invite .red-button:disabled{background-color:var(--border-color);cursor:not-allowed}@media (width<=768px){.manual-invite .form-grid{grid-template-columns:1fr}}.login-page{background:linear-gradient(135deg, var(--gpsi-navy) 0%, var(--gpsi-blue) 100%);justify-content:center;align-items:center;height:100vh;display:flex}.login-container{background-color:var(--bg-surface);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-lg);width:100%;max-width:400px;padding:48px 40px}.login-container h1{color:var(--gpsi-navy);margin-bottom:12px;font-size:1.5rem}.login-container p{color:var(--text-secondary);margin-bottom:32px;font-size:.9rem}.login-button{background-color:var(--gpsi-navy);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;width:100%;padding:10px 28px;font-size:.875rem;font-weight:600;transition:background-color .15s}.login-button:hover{background-color:var(--gpsi-navy-dark)}.login-button-dev{background:#6b7280;margin-top:12px}.risk-assessment-admin-panel .loading-container{justify-content:center;padding:4rem 2rem;display:flex}.risk-assessment-admin-panel .spinner{color:var(--accent);font-size:2rem;animation:1s linear infinite ra-spin}@keyframes ra-spin{to{transform:rotate(360deg)}}.risk-assessment-admin-panel{width:92%;max-width:1400px;margin:0 auto;padding:32px 0}.risk-assessment-admin-panel h1{margin-bottom:20px;font-size:1.5rem;font-weight:600}.risk-assessment-admin-panel h2{color:var(--gpsi-navy);margin-bottom:16px;font-size:1.25rem;font-weight:600}.risk-assessment-table-container{-webkit-overflow-scrolling:touch;margin-bottom:2rem;overflow-x:auto}.risk-assessment-table{background-color:var(--bg-surface);border-collapse:collapse;border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;overflow:hidden}.risk-assessment-table thead{background-color:var(--bg-muted)}.risk-assessment-table th,.risk-assessment-table td{border:none;border-bottom:1px solid var(--border-color-light);text-align:left;padding:10px 14px;font-size:.875rem}.risk-assessment-table th{cursor:pointer;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-color);font-size:.75rem;font-weight:600}.risk-assessment-table tr:hover{background-color:var(--bg-surface-hover)}.view-icon{color:var(--accent);cursor:pointer}.opportunity-link{color:var(--accent);align-items:center;gap:5px;font-weight:500;text-decoration:none;display:inline-flex}.opportunity-link:hover{text-decoration:underline}.opportunity-link-icon{font-size:.7em}.delete-icon{color:#e53e3e;cursor:pointer;opacity:.75;transition:opacity .15s}.delete-icon:hover{opacity:1}.risk-assessment-table td.status-cell{text-align:left}.ra-status-badge{border-radius:var(--radius-sm);white-space:nowrap;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-block}.ra-status-pending{background-color:var(--color-warning-bg);color:#92400e;border:1px solid var(--color-warning-border)}.ra-status-active{background-color:var(--color-info-bg);color:var(--accent);border:1px solid var(--color-info-bg)}.ra-status-complete{background-color:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.ra-status-cancelled{background-color:var(--bg-muted);color:var(--text-muted);border:1px solid var(--border-color)}.risk-assessment-pings-container{margin-top:2rem}.pings-section-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.pings-section-header h2{margin:0}.pings-section-header .inline-btn{border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:none;justify-content:center;align-items:center;padding:6px 14px;font-size:.82rem;font-weight:500;line-height:1.4;transition:opacity .15s;display:inline-flex}.pings-section-header .inline-btn-edit{color:var(--accent);border:1px solid var(--gpsi-blue);background-color:#0000}.pings-section-header .inline-btn-edit:hover{background-color:var(--accent);color:#fff}.pings-section-header .inline-btn-save{background-color:var(--color-success);color:#fff}.pings-section-header .inline-btn-save:hover{background-color:#15803d}.risk-assessment-ping-group{border:1px solid var(--border-color);border-radius:var(--radius-md);-webkit-overflow-scrolling:touch;margin-bottom:1.5rem;overflow:hidden}.group-header{background-color:var(--color-info-bg);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.group-info{font-size:.9rem;font-weight:500}.group-actions button{border-radius:var(--radius-md);cursor:pointer;border:none;margin-left:8px;padding:6px 12px;font-size:.8125rem;font-weight:500}.manual-select-btn{background-color:var(--color-success);color:#fff}.skip-select-btn{background-color:var(--color-warning);color:#fff}.manual-select-btn:hover,.skip-select-btn:hover{opacity:.9}.pings-table{border-collapse:collapse;width:100%}.pings-table th,.pings-table td{border:none;border-bottom:1px solid var(--border-color-light);padding:10px 14px}.pings-table th{background-color:var(--bg-muted);text-align:left;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.pings-table tr:hover{background-color:var(--bg-surface-hover)}.confirm-btn{background-color:var(--color-success);color:#fff;cursor:pointer;border-radius:var(--radius-md);border:none;padding:6px 12px;font-size:.8125rem;font-weight:500}.confirm-btn:hover{opacity:.9}.riskId{color:var(--text-muted);margin-left:16px;font-size:.75rem}.modal-content{background-color:var(--bg-surface);border-radius:var(--radius-lg);min-width:400px;max-width:600px;max-height:80vh;box-shadow:var(--shadow-lg);padding:24px;overflow-y:auto}.modal-content h3{margin-top:0;margin-bottom:16px}.modal-content input{border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;margin-bottom:12px;padding:8px 12px}.modal-content button{border-radius:var(--radius-md);cursor:pointer;border:none;margin-right:8px;padding:8px 16px;font-weight:500}.modal-content button:first-of-type{background-color:var(--gpsi-navy);color:#fff}.modal-content button:last-of-type{background-color:var(--bg-muted);color:var(--text-primary);border:1px solid var(--border-color)}.modal-content ul{margin-top:10px;padding:0;list-style:none}.modal-content li{margin-bottom:6px}.modal-content li button{text-align:left;background-color:var(--bg-muted);border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;color:var(--text-primary);padding:8px 12px}.modal-content li button:hover{background-color:var(--border-color)}.risk-assessment-table tr.missing-kam{background-color:#fef2f2!important}.risk-assessment-table tr.missing-kam:hover{background-color:#fee2e2!important}.survey-status{border-radius:var(--radius-sm);color:var(--text-secondary);background-color:var(--bg-muted);border:1px solid var(--border-color);padding:3px 8px;font-size:.75rem;font-weight:500;display:inline-block}.view-survey-btn{background-color:var(--accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;padding:6px 14px;font-size:.8125rem;font-weight:500;transition:background-color .15s}.view-survey-btn:hover{background-color:var(--accent-hover)}.service-level-badge{border-radius:var(--radius-sm);padding:3px 8px;font-size:.75rem;font-weight:600;display:inline-block}.service-level-em1{color:#1d4ed8;background-color:#dbeafe}.service-level-em2{color:#7c3aed;background-color:#f3e8ff}.service-level-em3{background-color:var(--color-success-bg);color:var(--color-success)}.service-level-rr{background-color:var(--color-warning-bg);color:#92400e}.service-level-none{background-color:var(--bg-muted);color:var(--text-secondary)}.awaiting-template-banner{background:var(--bg-warning-soft,#fff7e6);border:1px solid var(--border-warning,#f3c97a);border-radius:var(--radius-md,6px);margin:0 0 18px;padding:14px 16px}.awaiting-template-banner-header{color:var(--color-warning-dark,#8a5a00);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;font-size:.875rem;display:flex}.awaiting-template-banner-header svg{color:var(--color-warning,#d18a00);flex-shrink:0}.awaiting-template-subtle{color:var(--text-muted,#6a6a6a);font-size:.8125rem;font-weight:400}.awaiting-template-table{border-collapse:collapse;width:100%;font-size:.8125rem}.awaiting-template-table th,.awaiting-template-table td{text-align:left;border-bottom:1px solid var(--border-warning-soft,#f0d9a8);padding:6px 10px}.awaiting-template-table th{color:var(--text-secondary,#555);font-weight:600}.awaiting-template-table tr:last-child td{border-bottom:none}.awaiting-template-action{background:var(--color-primary,#2a5fb1);color:#fff;border-radius:var(--radius-sm,4px);cursor:pointer;border:none;padding:4px 12px;font-size:.75rem;font-weight:500}.awaiting-template-action:hover{filter:brightness(.95)}@media (width<=900px){.risk-assessment-admin-panel{width:96%;padding:16px 0}.filter-search-row{flex-direction:column;align-items:stretch}.risk-assessment-table th,.risk-assessment-table td{padding:8px 10px;font-size:.75rem}}@media (width<=480px){.risk-assessment-admin-panel{width:100%;padding:12px 8px}.risk-assessment-table{min-width:700px}}.ra-status-picker{min-width:250px;position:relative}.ra-status-picker>label{margin-bottom:4px;font-weight:600;display:block}.ra-status-picker-trigger{color:#172b3a;background:#fff;border:1px solid #aab3bd;border-radius:4px;justify-content:space-between;align-items:center;width:100%;min-height:38px;padding:8px 12px;display:flex}.ra-status-picker-popover{z-index:100;background:#fff;border:1px solid #cbd2d9;border-radius:7px;width:330px;max-height:min(70vh,520px);padding:6px 0;position:absolute;top:calc(100% + 5px);left:0;overflow-y:auto;box-shadow:0 8px 28px #0000002e}.ra-status-picker-popover fieldset{border:0;margin:0;padding:0 10px 8px}.ra-status-picker-popover fieldset+fieldset{border-top:1px solid #e6e9ec;padding-top:8px}.ra-status-section-row,.ra-status-option-row{cursor:pointer;grid-template-columns:22px 1fr auto;align-items:center;gap:7px;min-height:34px;display:grid}.ra-status-option-row{padding-left:14px}.ra-status-section-row>span:last-child,.ra-status-option-row>span:last-child{color:#64717d;font-variant-numeric:tabular-nums}.ra-status-picker input{width:16px;height:16px}.ra-result-section{margin-top:24px}.ra-result-section>h2{margin-bottom:10px}.loading-spinner-wrapper{justify-content:center;align-items:center;display:flex}.loading-spinner-svg{animation:1s linear infinite loading-spinner-rotate}@keyframes loading-spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.search-input{box-sizing:border-box;border:1px solid var(--border-color);border-radius:var(--radius-md);width:350px;font-size:.875rem;font-family:var(--font-sans);color:var(--text-primary);padding:8px 12px;transition:border-color .15s,box-shadow .15s}.search-input::placeholder{color:var(--text-muted)}.quote-modal-container{background-color:var(--bg-surface);border-radius:var(--radius-lg);width:500px;max-height:80%;box-shadow:var(--shadow-lg);padding:28px;overflow-y:auto}.modal-content{margin-bottom:16px}.file-upload-section{margin:16px 0}.modal-actions{justify-content:flex-end;gap:8px;display:flex}.button-cancel{background-color:var(--bg-muted);color:var(--text-primary);border:1px solid var(--border-color);cursor:pointer;border-radius:var(--radius-md);padding:8px 18px;font-size:.8125rem;font-weight:500}.button-cancel:hover{background-color:var(--border-color);border-color:var(--text-muted)}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:999;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.po-modal-container{background:var(--bg-surface);border-radius:var(--radius-sm);width:700px;max-width:90%;max-height:90vh;padding:20px;overflow-y:auto}.button{cursor:pointer;background:var(--border-color);border-radius:var(--radius-sm);border:none;padding:8px 12px}.button-primary{background:var(--gpsi-navy);color:#fff}.button-cancel{background-color:var(--color-danger);color:#fff;cursor:pointer;border:none;margin-right:10px;padding:10px 20px}.button-danger{background:var(--color-danger);color:#fff}.button-download{background:var(--accent);color:#fff}.button-disabled{opacity:.6;background:var(--border-color)!important;color:var(--text-secondary)!important;cursor:not-allowed!important}.service-levels-section{background-color:var(--bg-muted);border-radius:var(--radius-lg);border:1px solid var(--border-color);margin:20px 0;padding:20px}.service-levels-section h3{color:var(--gpsi-navy);margin-top:0;margin-bottom:16px;font-size:18px}.service-levels-section h4{color:#495057;margin-top:12px;margin-bottom:8px;font-size:16px}.interests-display{background-color:var(--bg-surface);border-radius:var(--radius-md);border:1px solid var(--border-color);margin-bottom:24px;padding:16px}.interests-display ul{margin:12px 0;padding-left:0;list-style-type:none}.interests-display li{border-bottom:1px solid var(--border-color);padding:6px 0}.interests-display li:last-child{border-bottom:none}.confirmed-inputs{background-color:var(--bg-surface);border-radius:var(--radius-md);border:1px solid var(--border-color);padding:16px}.hint-text{color:var(--text-secondary);margin-bottom:16px;font-size:14px;font-style:italic}.level-input{justify-content:space-between;align-items:center;margin:12px 0;padding:8px 0;display:flex}.level-input label{color:#495057;flex:1;font-size:14px}.level-input input{border-radius:var(--radius-sm);text-align:center;border:1px solid #ced4da;width:80px;padding:8px 12px;font-size:14px}.level-input input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 .2rem #0098d440}.total-line{border-top:2px solid var(--border-color);color:var(--gpsi-navy);margin-top:16px;padding-top:12px;font-size:16px}.confirm-dialog-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1001;background-color:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-dialog{background-color:var(--bg-surface);border-radius:var(--radius-lg);width:90%;max-width:450px;box-shadow:var(--shadow-lg);padding:30px}.confirm-dialog h3{color:var(--gpsi-navy);margin-top:0;margin-bottom:16px}.confirm-dialog p{color:#495057;margin-bottom:12px}.confirm-dialog ul{margin:16px 0;padding-left:0;list-style-type:none}.confirm-dialog li{background-color:var(--bg-muted);border-left:4px solid var(--gpsi-blue);border-radius:var(--radius-sm);margin:4px 0;padding:8px 12px}.total-summary{color:var(--gpsi-navy);background-color:var(--color-info-bg);border-radius:var(--radius-sm);text-align:center;margin:16px 0;padding:12px;font-size:18px;font-weight:700}.dialog-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.dialog-actions .button{min-width:100px}.po-modal-container .manual-upload-section{background-color:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:var(--radius-sm);margin-top:16px;padding:16px}.po-modal-container .manual-upload-section label{color:var(--color-warning);margin-bottom:8px;font-weight:600;display:block}.po-modal-container .manual-upload-section input[type=file]{margin-bottom:12px}.modal{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;background:#00000080;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.modal-content{background:var(--bg-surface);border-radius:var(--radius-lg);width:400px;max-height:80vh;box-shadow:var(--shadow-lg);padding:20px;animation:.3s ease-in-out slideIn;overflow-y:auto}.ra-order-modal{width:800px;max-width:90vw}.modal-content h2{color:var(--text-primary);text-align:center;margin-bottom:15px}.modal-content button{background:var(--gpsi-navy);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;width:100%;margin-top:15px;padding:8px;font-size:14px;font-weight:700;display:block}.modal-content button:hover{opacity:.85}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.close-button{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;justify-content:center;align-items:center;width:30px;height:30px;margin-top:0;font-size:24px;display:flex}.close-button:hover{color:var(--text-primary);opacity:1}.cancel-button{background-color:var(--text-secondary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;width:auto;margin-top:0;padding:10px 20px}.cancel-button:hover{background-color:#545b62}.client-nda-content .download-button:hover,.client-nda-content .upload-button:hover{background-color:var(--accent-hover);opacity:1}.ra-modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;background-color:#00000080;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.ra-modal{background-color:var(--bg-surface);border-radius:var(--radius-lg);width:800px;max-width:90%;max-height:90vh;box-shadow:var(--shadow-lg);padding:20px;position:relative;overflow-y:auto}.pay-rate-section,.report-section{border-top:1px solid var(--border-color);margin-top:20px;padding-top:20px}.report-section h3{color:var(--text-primary);margin:0 0 16px;font-size:1.125rem}.report-section .file-status{flex-flow:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.report-section .file-uploaded{color:var(--color-success);flex:100%;font-weight:500}.report-section .file-status .download-button:last-of-type{background-color:var(--gpsi-navy)}.report-section .file-status .download-button:last-of-type:hover{background-color:var(--gpsi-navy-dark)}@media (width<=640px){.report-section .file-status .download-button{flex:100%}}.report-section .manual-upload-section{background-color:var(--color-info-bg);border:1px solid var(--color-info);border-radius:var(--radius-md);margin-top:12px;padding:16px}.report-section .manual-upload-section p{color:var(--text-secondary);margin:0 0 12px;font-size:.875rem}.report-section .file-input-group{flex-direction:column;gap:12px;display:flex}.report-section .file-input-group p{color:var(--text-secondary);margin:0;font-size:.875rem}.download-button{background-color:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;align-self:flex-start;width:auto;margin-top:0;padding:8px 16px;font-size:.875rem}.download-button:hover{background-color:var(--accent-hover)}.assessment-status-info{border:1px solid var(--border-color);border-radius:var(--radius-sm);margin-top:20px;padding:10px}.client-nda-content .file-input-group .button{background-color:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;align-self:flex-start;width:auto;margin-top:0;padding:8px 16px;font-size:.875rem}.client-nda-content .file-input-group .button:hover{background-color:var(--accent-hover)}.client-nda-content .file-input-group .button:disabled{background-color:var(--text-secondary);cursor:not-allowed}.pay-rate-management{border:1px solid var(--border-color);border-radius:var(--radius-lg);background-color:var(--bg-muted);margin-bottom:16px;padding:16px}.pay-rate-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.pay-rate-header h3{color:var(--text-primary);margin:0;font-size:1.1rem}.status-badge{border-radius:var(--radius-sm);padding:4px 8px;font-size:.8rem;font-weight:700}.status-set{background-color:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.status-pending{background-color:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--color-warning-border)}.pay-rate-display{justify-content:space-between;align-items:center;display:flex}.pay-rate-info{flex:1}.pay-rate-comments{color:var(--text-secondary);margin-top:8px;font-size:.9rem}.pay-rate-missing{text-align:center}.alert-message{color:var(--color-warning);background-color:var(--color-warning-bg);border:1px solid var(--color-warning-border);border-radius:var(--radius-sm);margin-bottom:12px;padding:12px}.pay-rate-form{border-top:1px solid var(--border-color);margin-top:16px;padding-top:16px}.pay-rate-form h4{color:var(--text-primary);margin-top:0;margin-bottom:12px}.job-info{color:var(--text-secondary);margin-bottom:8px;font-size:.9rem}.form-group input,.form-group textarea{border:1px solid var(--border-color);border-radius:var(--radius-sm);width:100%;padding:8px;font-size:.9rem}.form-group input:focus,.form-group textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #0098d440}.form-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.btn{border-radius:var(--radius-sm);cursor:pointer;border:none;padding:8px 16px;font-size:.9rem;text-decoration:none;transition:background-color .2s;display:inline-block}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--gpsi-navy);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--gpsi-navy-dark)}.btn-secondary{background-color:var(--text-secondary);color:#fff}.btn-secondary:hover:not(:disabled){background-color:#545b62}.btn-sm{padding:4px 8px;font-size:.8rem}.error-message{color:var(--color-danger);background-color:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-sm);margin-bottom:12px;padding:8px;font-size:.9rem}.pay-rate-loading,.pay-rate-error{text-align:center;color:var(--text-secondary);padding:16px;font-style:italic}.pay-rate-error{color:var(--color-danger);background-color:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-sm)}.confirm-contractor-modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:9999;background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-contractor-modal{background:var(--bg-surface);border-radius:var(--radius-lg);width:90%;max-width:600px;max-height:90vh;box-shadow:var(--shadow-lg);z-index:10000;position:relative;overflow-y:auto}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 24px 16px;display:flex}.modal-header h3{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:600}.close-btn{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:24px;transition:all .2s;display:flex}.close-btn:hover{background-color:var(--bg-surface-hover);color:var(--text-primary)}.modal-content{margin:0 auto;padding:24px}.contractor-info,.pay-rate-section{margin-bottom:24px}.contractor-info h4,.pay-rate-section h4{color:var(--text-primary);margin:0 0 16px;font-size:1.1rem;font-weight:600}.info-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.info-item{flex-direction:column;gap:4px;display:flex}.info-item label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.info-item span{color:var(--text-primary);font-size:.9rem}.pay-rate-info{margin-bottom:16px}.pay-rate-info .info-item{flex-direction:row;align-items:center;gap:8px;margin-bottom:8px;display:flex}.pay-rate-info .info-item label{min-width:140px;margin:0}.negotiated-pay-input{flex-direction:column;gap:8px;display:flex}.negotiated-pay-input label{color:var(--text-primary);font-size:.9rem;font-weight:500}.pay-rate-input{border:1px solid var(--border-color);border-radius:var(--radius-md);width:200px;padding:10px 12px;font-size:.9rem;transition:border-color .2s}.pay-rate-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #0098d41a}.pay-rate-hint{color:var(--text-secondary);margin:0;font-size:.8rem}.confirmation-message{background-color:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:var(--radius-md);margin-bottom:16px;padding:16px}.confirmation-message p{color:#92400e;margin:0 0 8px}.confirmation-message p:last-child{margin-bottom:0}.notification{border-radius:var(--radius-lg);border:1px solid;margin-bottom:20px;padding:16px}.notification.success{background-color:var(--color-success-bg);border-color:var(--color-success);color:#15803d}.notification.warning{background-color:var(--color-warning-bg);border-color:var(--color-warning);color:#92400e}.notification h4{margin:0 0 8px;font-size:1.1rem;font-weight:600}.notification p{margin:4px 0}.placement-link{border-top:1px solid var(--border-color);margin-top:12px;padding-top:12px}.placement-url-link{background-color:var(--accent);color:#fff;border-radius:var(--radius-md);margin-top:8px;padding:10px 16px;font-weight:500;text-decoration:none;transition:background-color .2s;display:inline-block}.placement-url-link:hover{background-color:var(--accent-hover);color:#fff;text-decoration:none}.job-url-link{background-color:var(--color-warning);color:#fff;border-radius:var(--radius-md);margin-top:8px;padding:10px 16px;font-weight:500;text-decoration:none;transition:background-color .2s;display:inline-block}.job-url-link:hover{color:#fff;background-color:#b45309;text-decoration:none}.error-details{border-top:1px solid var(--color-danger-border);margin-top:12px;padding-top:12px}.error-details p{margin:4px 0}.error-details em{color:#7f1d1d;font-size:.9rem}.error-message{background-color:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-md);color:var(--color-danger);margin-bottom:16px;padding:12px;font-size:.9rem}.modal-actions{border-top:1px solid var(--border-color);justify-content:flex-end;gap:12px;padding:16px 24px 24px;display:flex}.cancel-btn,.confirm-btn{border-radius:var(--radius-md);cursor:pointer;border:none;min-width:100px;padding:10px 20px;font-size:.9rem;font-weight:500;transition:all .2s}.cancel-btn{background-color:var(--bg-muted);color:var(--text-primary)}.cancel-btn:hover:not(:disabled){background-color:var(--border-color)}.confirm-btn{background-color:var(--accent);color:#fff}.confirm-btn:hover:not(:disabled){background-color:var(--accent-hover)}.cancel-btn:disabled,.confirm-btn:disabled{opacity:.6;cursor:not-allowed}.contractor-search-section{margin-bottom:24px}.contractor-search-section h4{color:var(--text-primary);margin:0 0 16px;font-size:1.1rem;font-weight:600}.search-input-group{z-index:10001;gap:12px;margin:10px;position:relative}.search-input-group input{border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-surface);color:var(--text-primary);appearance:none;z-index:1;flex:1;padding:10px 12px;font-size:14px;position:relative}.search-input-group input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #0098d41a}.search-input-group button{background-color:var(--accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;min-width:100px;padding:10px 16px;font-weight:500}.search-input-group button:hover:not(:disabled){background-color:var(--accent-hover)}.search-input-group button:disabled{background-color:var(--text-muted);cursor:not-allowed}.search-results{border:1px solid var(--border-color);border-radius:var(--radius-md);z-index:10001;background-color:var(--bg-surface);max-height:300px;position:relative;overflow-y:auto}.search-results h5{background-color:var(--bg-surface-hover);border-bottom:1px solid var(--border-color);color:var(--text-primary);margin:0;padding:12px 16px;font-size:14px;font-weight:600}.results-list{padding:0}.result-item{border-bottom:1px solid var(--border-color-light);cursor:pointer;padding:12px 16px;transition:background-color .2s}.result-item:hover{background-color:var(--bg-surface-hover)}.result-item:last-child{border-bottom:none}.result-name{color:var(--text-primary);margin-bottom:4px;font-weight:600}.result-email,.result-phone{color:var(--text-secondary);margin-bottom:2px;font-size:14px}.change-contractor-btn{background-color:var(--bg-muted);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;margin-top:16px;padding:8px 16px;font-size:14px;font-weight:500}.change-contractor-btn:hover{background-color:var(--border-color)}@media (width<=640px){.confirm-contractor-modal{width:95%;margin:10px}.info-grid{grid-template-columns:1fr}.modal-actions{flex-direction:column-reverse}.cancel-btn,.confirm-btn{width:100%}}.manual-group-title{flex-direction:column;gap:2px;display:flex}.manual-group-title-id{color:var(--text-muted);font-size:.75rem}.assign-template-overlay{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.assign-template-container{background-color:var(--bg-surface);border-radius:var(--radius-lg);width:520px;max-width:calc(100vw - 32px);box-shadow:var(--shadow-lg);color:var(--text-primary);padding:28px 28px 24px}.assign-template-container h2{margin:0 0 8px;font-size:1.125rem}.assign-template-subtitle{color:var(--text-muted,#555);margin:0 0 16px;font-size:.875rem;line-height:1.4}.assign-template-meta{background:var(--bg-subtle,#f5f6f8);border-radius:var(--radius-md);flex-direction:column;gap:4px;margin-bottom:16px;padding:12px 14px;font-size:.8125rem;display:flex}.assign-template-label{margin-bottom:6px;font-size:.8125rem;font-weight:500;display:block}.assign-template-select{border-radius:var(--radius-md);border:1px solid var(--border-color,#d0d4d9);background:var(--bg-input,#fff);width:100%;padding:8px 10px;font-size:.875rem}.assign-template-loading,.assign-template-empty{color:var(--text-muted,#555);padding:8px 0;font-size:.8125rem}.assign-template-empty{color:var(--color-danger,#c0392b)}.assign-template-error{color:var(--color-danger,#c0392b);border-radius:var(--radius-md);background:#c0392b14;margin-top:12px;padding:8px 12px;font-size:.8125rem}.assign-template-confirm-body{background:var(--bg-warning-soft,#fff7e6);border:1px solid var(--border-warning,#f3c97a);border-radius:var(--radius-md);margin-bottom:8px;padding:14px 16px;font-size:.875rem;line-height:1.5}.assign-template-actions{justify-content:flex-end;gap:12px;margin-top:20px;display:flex}.assign-template-actions .button{border:1px solid var(--border-color,#d0d4d9);background:var(--bg-input,#fff);color:var(--text-primary,#1e293b);border-radius:var(--radius-md);cursor:pointer;padding:8px 18px;font-size:.8125rem;font-weight:500}.assign-template-actions .button:disabled{opacity:.6;cursor:not-allowed}.assign-template-actions .button-primary{background:var(--color-primary,#2a5fb1);border-color:var(--color-primary,#2a5fb1);color:#fff}.assign-template-actions .button-primary:hover:not(:disabled){filter:brightness(.95)}.confirm-deletion-overlay{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#00000073;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.confirm-deletion-container{background-color:var(--bg-surface);border-radius:var(--radius-lg);text-align:center;width:420px;box-shadow:var(--shadow-lg);padding:28px}.confirm-deletion-actions{justify-content:center;gap:12px;margin-top:24px;display:flex}.confirm-deletion-actions .button{border-radius:var(--radius-md);cursor:pointer;border:none;padding:8px 20px;font-size:.8125rem;font-weight:500}.confirm-deletion-actions .button-danger{background-color:var(--color-danger);color:#fff}.confirm-deletion-actions .button-danger:hover{opacity:.9}.expediting-admin-panel{width:92%;max-width:1400px;margin:0 auto;padding:32px 0}.expediting-admin-panel h1{margin-bottom:20px;font-size:1.5rem;font-weight:600}.filter-search-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.filter-section,.search-section{align-items:center;display:flex}.filter-section label{color:var(--text-secondary);margin-right:8px;font-size:.8125rem;font-weight:500}.expediting-table{background-color:var(--bg-surface);border-collapse:collapse;border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;overflow:hidden}.expediting-table thead{background-color:var(--bg-muted)}.expediting-table th,.expediting-table td{border:none;border-bottom:1px solid var(--border-color-light);text-align:left;padding:10px 14px;font-size:.875rem}.expediting-table th{cursor:pointer;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-color);font-size:.75rem;font-weight:600}.expediting-table tr:hover{background-color:var(--bg-surface-hover)}.view-icon{color:var(--accent);cursor:pointer;transition:color .15s}.view-icon:hover{color:var(--gpsi-navy)}.loading-container{justify-content:center;padding:2rem;display:flex}.spinner{color:var(--accent);font-size:2rem;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.no-data-message{text-align:center;color:var(--text-muted);padding:2rem;font-style:italic}.pay-rate-badge{border-radius:var(--radius-sm);padding:3px 8px;font-size:.75rem;font-weight:600;display:inline-block}.pay-rate-badge.set{background-color:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.pay-rate-badge.pending{background-color:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--color-warning-border)}.pay-rate-badge.not-applicable{background-color:var(--bg-muted);color:var(--text-muted);border:1px solid var(--border-color)}.pay-rate-badge.loading{background-color:var(--bg-muted);color:var(--text-secondary);border:1px solid var(--border-color)}.kam-notification{background-color:var(--color-danger-bg);color:var(--color-danger);border:1px solid var(--color-danger-border);border-radius:var(--radius-sm);white-space:nowrap;align-items:center;margin-left:8px;padding:3px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.kam-notification-icon{margin-right:4px}.expediting-table tr.missing-kam{background-color:#fef2f2!important}.expediting-table tr.missing-kam:hover{background-color:#fee2e2!important}.expediting-recovery-modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;background-color:#00000080;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.expediting-recovery-modal{background-color:var(--bg-surface);border-radius:var(--radius-lg);width:800px;max-width:90%;max-height:90vh;box-shadow:var(--shadow-lg);padding:20px;position:relative;overflow-y:auto}.close-button{color:var(--text-muted);cursor:pointer;z-index:1001;background:0 0;border:none;font-size:20px;position:absolute;top:16px;right:16px}.modal-content p{margin:6px 0}.pay-rate-section{border-top:1px solid var(--border-color);margin-top:20px;padding-top:20px}.job-status-info,.opportunity-status-info{border:1px solid var(--border-color);border-radius:var(--radius-sm);margin-top:20px;padding:10px}.modal-footer{text-align:right;margin-top:16px}.quoting-section,.reviewing-section,.other-opportunity-section{margin-top:16px}.expediting-action-button{border:1px solid var(--gpsi-navy);border-radius:var(--radius-sm);background:var(--gpsi-navy);color:#fff;width:auto;margin:8px 8px 8px 0;padding:8px 16px;font-weight:600}.expediting-action-button:hover:not(:disabled){border-color:var(--gpsi-navy-dark);background:var(--gpsi-navy-dark)}.view-icon{cursor:pointer}.tab-buttons{border-bottom:1px solid var(--border-color);margin-bottom:20px;display:flex}.tab-button{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-bottom:2px solid #0000;width:auto;margin-top:0;padding:12px 20px;font-size:14px;font-weight:500;transition:all .2s}.tab-button:hover{color:var(--text-primary);background-color:var(--bg-muted)}.tab-button.active{color:var(--accent);border-bottom-color:var(--accent);background-color:#0000}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:0;padding-bottom:15px;display:flex}.modal-header h2{color:var(--text-primary);margin:0;font-size:1.5rem}.modal-header .close-button{color:var(--text-secondary);justify-content:center;align-items:center;width:30px;height:30px;display:flex;position:static}.modal-header .close-button:hover{color:var(--text-primary)}.modal-body{padding:20px 0}.modal-footer{border-top:1px solid var(--border-color);justify-content:flex-end;gap:12px;padding-top:20px;display:flex}.modal-footer .cancel-button{background-color:var(--text-secondary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;padding:10px 20px}.modal-footer .cancel-button:hover{background-color:#545b62}.client-nda-content .loading{text-align:center;color:var(--text-secondary);padding:40px;font-style:italic}.client-nda-content .nda-info-section{background-color:var(--bg-muted);border-radius:var(--radius-lg);margin-bottom:24px;padding:20px}.client-nda-content .info-row{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.client-nda-content .info-row:last-child{margin-bottom:0}.client-nda-content .info-label{color:var(--text-primary);min-width:150px;font-weight:600}.client-nda-content .info-value{color:var(--text-secondary);text-align:right}.client-nda-content .info-value.email{font-family:var(--font-mono);background-color:var(--bg-muted);border-radius:var(--radius-sm);padding:4px 8px}.client-nda-content .status-badge{text-transform:uppercase;border-radius:20px;padding:4px 12px;font-size:.875rem;font-weight:500}.client-nda-content .status-badge.completed{background-color:var(--color-success-bg);color:var(--color-success)}.client-nda-content .status-badge.pending{background-color:var(--color-warning-bg);color:var(--color-warning)}.client-nda-content .status-badge.waiting{background-color:var(--color-danger-bg);color:var(--color-danger)}.client-nda-content .nda-actions-section{flex-direction:column;gap:24px;display:flex}.client-nda-content .action-group{border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:20px}.client-nda-content .action-group h3{color:var(--text-primary);margin:0 0 16px;font-size:1.125rem}.client-nda-content .action-group h4{color:#495057;margin:16px 0 8px;font-size:1rem}.client-nda-content .file-status{flex-direction:column;gap:12px;display:flex}.client-nda-content .file-uploaded{color:var(--color-success);font-weight:500}.client-nda-content .file-pending{color:var(--color-warning);font-weight:500}.client-nda-content .download-button,.client-nda-content .upload-button{background-color:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;align-self:flex-start;width:auto;margin-top:0;padding:8px 16px;font-size:.875rem}.client-nda-content .download-button:hover,.client-nda-content .upload-button:hover{background-color:var(--accent-hover)}.client-nda-content .upload-button:disabled{background-color:var(--text-secondary);cursor:not-allowed}.client-nda-content .email-instructions{background-color:var(--bg-muted);border-radius:var(--radius-md);margin-top:12px;padding:16px}.client-nda-content .email-instructions p{color:#495057;margin:0 0 8px;font-weight:500}.client-nda-content .email-instructions ul{margin:0;padding-left:20px}.client-nda-content .email-instructions li{color:var(--text-secondary);margin-bottom:4px}.client-nda-content .manual-upload-section{background-color:var(--bg-muted);border-radius:var(--radius-md);margin-top:12px;padding:16px}.client-nda-content .manual-upload-section p{color:var(--text-secondary);margin:0 0 12px;font-size:.875rem}.client-nda-content .file-input-group{flex-direction:column;gap:12px;display:flex}.client-nda-content .file-input-group input[type=file]{margin-bottom:10px}.client-nda-content .file-input-group p{color:var(--text-secondary);margin:5px 0;font-size:.875rem}.client-nda-content .success-message{background-color:var(--color-success-bg);color:var(--color-success);border-radius:var(--radius-md);margin:0;padding:12px;font-weight:500}.search-combobox{flex-direction:column;gap:0;display:flex}.search-combobox input{box-sizing:border-box;width:100%;font:inherit;color:var(--text-primary);border:1px solid var(--border-color,#e2e8f0);border-radius:var(--radius-md,6px);background:var(--bg-surface,#fff);padding:8px 10px;font-weight:400}.search-combobox input[aria-expanded=true]{border-color:var(--gpsi-blue)}.search-combobox-list{border:1px solid var(--border-color,#e2e8f0);border-radius:var(--radius-md,6px);background:var(--bg-surface,#fff);max-height:240px;margin:4px 0 0;padding:4px 0;font-weight:400;list-style:none;overflow-y:auto}.search-combobox-option{cursor:pointer;flex-direction:column;gap:1px;padding:6px 10px;display:flex}.search-combobox-option:hover,.search-combobox-option.is-active{background:var(--color-info-bg)}.search-combobox-option[aria-selected=true] .search-combobox-label{font-weight:600}.search-combobox-label{color:var(--text-primary)}.search-combobox-detail{color:var(--text-secondary);font-size:.75rem}.search-combobox-empty{color:var(--text-secondary);margin:0;padding:8px 10px;font-size:.8125rem}.search-combobox-empty:empty{padding:0}.hc-table-wrap{min-width:0;max-width:100%;overflow-x:auto}.hc-table{table-layout:auto;min-width:1500px}.hc-table tbody td{max-width:220px}.hc-table tbody td.hc-eta,.hc-table tbody td.hc-approver{max-width:none}.hc-id{font-variant-numeric:tabular-nums;font-weight:600}.hc-account{color:var(--text-secondary);font-size:.75rem;display:block}.hc-revenue{font-variant-numeric:tabular-nums;white-space:nowrap}.hc-contact-cell{cursor:help}.hc-evidence{white-space:nowrap}.hc-table th.hc-route-band{text-align:left;color:var(--gpsi-navy);font-weight:700}.hc-table th.hc-route-0,.hc-table td.hc-route-0{background:#0098d40d}.hc-table th.hc-route-1,.hc-table td.hc-route-1{background:#16a34a0d}.hc-table th.hc-route-2,.hc-table td.hc-route-2{background:#d977060f}.hc-table th.hc-route-3,.hc-table td.hc-route-3{background:#64748b14}.hc-table thead th.hc-route-0,.hc-table thead th.hc-route-1,.hc-table thead th.hc-route-2,.hc-table thead th.hc-route-3{background-color:var(--bg-muted)}.hc-table thead th.hc-route-0{background-image:linear-gradient(#0098d40d,#0098d40d)}.hc-table thead th.hc-route-1{background-image:linear-gradient(#16a34a0d,#16a34a0d)}.hc-table thead th.hc-route-2{background-image:linear-gradient(#d977060f,#d977060f)}.hc-table thead th.hc-route-3{background-image:linear-gradient(#64748b14,#64748b14)}.hc-table thead th{z-index:3}.hc-table th.hc-route-start,.hc-table td.hc-route-start{border-left:2px solid var(--border-color)}.hc-table{--hc-band-height:41px}.hc-table thead th.hc-route-band{height:var(--hc-band-height);box-sizing:border-box}.hc-table thead tr+tr th{top:var(--hc-band-height)}.hc-table thead th.hc-route-0{background:linear-gradient(#0098d40d, #0098d40d), var(--bg-muted)}.hc-table thead th.hc-route-1{background:linear-gradient(#16a34a0d, #16a34a0d), var(--bg-muted)}.hc-table thead th.hc-route-2{background:linear-gradient(#d977060f, #d977060f), var(--bg-muted)}.hc-table thead th.hc-route-3{background:linear-gradient(#64748b14, #64748b14), var(--bg-muted)}.hc-archived{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-left:8px;font-size:.6875rem;font-weight:700}.hc-awaiting-placement{letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;color:#92400e;background:#fef3c7;border:1px solid #fcd34d;border-radius:4px;margin-left:8px;padding:1px 6px;font-size:.6875rem;font-weight:700}.hc-stop-cell{cursor:help}.hc-stage{background:var(--bg-muted);border:1px solid var(--border-color);color:var(--gpsi-navy);white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:600;display:inline-block}.hc-stage-archived{color:var(--text-muted);text-decoration:line-through}.hc-route-chip{background:var(--bg-surface,#fff);border:1px solid var(--border-color);color:var(--text-muted);white-space:nowrap;border-radius:999px;margin-left:6px;padding:1px 8px;font-size:.72rem;font-weight:600;display:inline-block}.hc-previous-route{color:var(--text-secondary,var(--text-muted));margin:4px 0 0;font-size:.85rem}.hc-eta-nudge{color:var(--gpsi-blue,#006fa6);margin:4px 0 0;font-size:.85rem;font-weight:700}.hc-detail-post .dir-btn.hc-btn-nudged{border:2px solid var(--gpsi-blue,#0098d4);color:var(--gpsi-blue,#006fa6);font-weight:700}.hc-detail-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.hc-fields{gap:8px 16px;margin:0;display:grid}.hc-fields-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:16px}.hc-field dt{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.6875rem;font-weight:700}.hc-field dd{color:var(--text-primary);overflow-wrap:anywhere;margin:2px 0 0;font-size:.875rem}.hc-sub{color:var(--text-secondary)}.hc-route{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:16px;display:grid}.hc-route-title,.hc-stop h3,.hc-section h3{color:var(--gpsi-navy);margin:0 0 8px;font-size:.8125rem;font-weight:700}.hc-route-title{grid-column:1/-1;margin-bottom:0}.hc-stop{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-muted);padding:12px 14px}.hc-route-flight{color:var(--text-secondary);grid-column:1/-1;margin:0;font-size:.875rem}.hc-route-flight-times{white-space:pre-line;margin-top:2px;display:block}.hc-proof{grid-column:1/-1}.hc-proof-row{flex-wrap:wrap;gap:8px;display:flex}.hc-proof-thumb{cursor:zoom-in;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-muted);width:64px;height:64px;padding:0;display:block;overflow:hidden}.hc-proof-thumb img{object-fit:cover;width:100%;height:100%;display:block}.hc-proof-thumb-failed{border-style:dashed}.hc-section{margin-bottom:16px}.hc-parts{font-variant-numeric:tabular-nums;margin:0;padding-left:18px;font-size:.875rem}.hc-timeline{border-left:2px solid var(--border-color);margin:0;padding-left:0;list-style:none}.hc-timeline li{padding:2px 0 8px 16px;font-size:.875rem;position:relative}.hc-timeline li:before{content:"";background:var(--accent);border-radius:999px;width:10px;height:10px;position:absolute;top:8px;left:-6px}.hc-timeline-at{min-width:170px;color:var(--text-secondary);font-variant-numeric:tabular-nums;padding-right:12px;display:inline-block}.hc-timeline-label{font-weight:600}.hc-history{margin:0;padding:0;list-style:none}.hc-history>li{border-bottom:1px solid var(--border-color);flex-wrap:wrap;align-items:baseline;padding:6px 0;font-size:.875rem;display:flex}.hc-history>li:last-child{border-bottom:none}.hc-history-body{overflow-wrap:anywhere;min-width:0;color:var(--text-primary);flex:280px}.hc-history-headline{color:var(--text-primary);margin:0}.hc-history-derived{margin:2px 0 0;font-size:.8125rem}.hc-history-changes{margin:4px 0 0;padding-left:18px}.hc-thread-subject{margin:0 0 8px}.hc-thread-messages{margin:0;padding:0;list-style:none}.hc-thread-messages li{border-top:1px solid var(--border-color-light);padding:8px 0}.hc-thread-meta{justify-content:space-between;gap:12px;font-size:.8125rem;display:flex}.hc-thread-recipients{overflow-wrap:anywhere;margin:2px 0 0;font-size:.75rem}.hc-thread-recipient-label{margin-right:4px;font-weight:600}.hc-thread-body{white-space:pre-wrap;margin:4px 0 0;font-size:.8125rem}.hc-thread-html{overflow-wrap:anywhere;margin:4px 0 0;font-size:.8125rem;overflow-x:auto}.hc-thread-html table{max-width:100%}.hc-thread-image{margin:8px 0 0}.hc-thread-image-frame{box-sizing:border-box;border:1px solid var(--border-color-light);background:0 0;border-radius:4px;justify-content:center;align-items:center;width:320px;max-width:100%;height:200px;padding:0;font-size:.75rem;display:flex;overflow:hidden}button.hc-thread-image-frame{cursor:zoom-in}.hc-thread-image-frame img{object-fit:contain;max-width:100%;max-height:100%;display:block}.hc-thread-image-thumb{width:96px;margin:0}.hc-thread-image-thumb .hc-thread-image-frame{width:96px;height:96px}.hc-thread-image-caption{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:.6875rem;overflow:hidden}.hc-thread-files{flex-wrap:wrap;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.hc-thread-messages .hc-thread-files li{border-top:none;padding:0}.hc-thread-file{border:1px solid var(--border-color-light);max-width:100%;color:inherit;font:inherit;cursor:pointer;background:0 0;border-radius:4px;align-items:baseline;gap:6px;padding:4px 8px;font-size:.75rem;display:inline-flex}.hc-thread-file:hover:not(:disabled){border-color:var(--text-secondary)}.hc-thread-file:disabled{cursor:progress;opacity:.7}.hc-thread-file-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hc-thread-file-error{color:var(--color-danger);margin-top:2px;font-size:.75rem;display:block}.hc-table th.hc-actions-col,.hc-table td.hc-actions-col{z-index:2;background:var(--surface-color,#fff);border-left:1px solid var(--border-color,#e2e8f0);position:sticky;right:0;box-shadow:-6px 0 8px -6px #0f172a2e}.hc-table tbody td.hc-actions-col{white-space:normal;min-width:22rem;max-width:none;padding-left:16px;overflow:visible}.hc-table thead th.hc-actions-col .dir-th-inner{padding-left:16px}.hc-table thead th.hc-actions-col{z-index:4;background:var(--bg-muted)}.hc-table th.hc-stage-col,.hc-table td.hc-stage-col{right:var(--hc-actions-w,0px);z-index:2;background:var(--surface-color,#fff);border-left:1px solid var(--border-color,#e2e8f0);white-space:nowrap;position:sticky}.hc-table thead th.hc-stage-col{z-index:4;background:var(--bg-muted)}.hc-table tbody tr:hover td.hc-stage-col,.hc-table tbody tr:hover td.hc-actions-col{background:var(--surface-hover,#f8fafc)}.hc-row-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.hc-row-actions .dir-btn{white-space:nowrap}.hc-detail-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;min-width:0;margin-left:auto;display:flex}.hc-detail-post{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.hc-detail-hint{color:var(--text-muted);margin:-8px 0 16px;font-size:.85rem}.hc-dialog{flex-direction:column;gap:14px;display:flex}.hc-dialog-body{color:var(--text-secondary);margin:0;font-size:.875rem;line-height:1.45}.hc-dialog-hint{color:var(--text-secondary);margin:0;font-size:.8125rem;line-height:1.4}.hc-dialog-error{color:var(--danger-color,#dc2626);margin:0;font-size:.8125rem}.hc-dialog-field{color:var(--text-secondary);flex-direction:column;gap:6px;font-size:.8125rem;font-weight:600;display:flex}.hc-dialog-field select,.hc-dialog-field textarea,.hc-dialog-field input[type=datetime-local]{box-sizing:border-box;width:100%;font:inherit;color:var(--text-primary);padding:8px 10px;font-weight:400}.hc-dialog-field textarea{resize:vertical}.hc-dialog-field input[type=datetime-local]{border:1px solid var(--border-color,#e2e8f0);border-radius:var(--radius-md,6px);background:var(--bg-surface,#fff)}.hc-dialog-field .hc-dialog-hint{font-weight:400}.hc-dialog-field [aria-invalid=true].hc-field-invalid{border-color:var(--danger-color,#dc2626);background-color:#fef2f2}.hc-dialog-field [aria-invalid=true].hc-field-invalid:focus{box-shadow:0 0 0 2px #dc262626}.hc-file-row{align-items:center;gap:10px;font-weight:400;display:flex}.hc-file-row .dir-btn{cursor:pointer}.hc-file-input{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.hc-dialog-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.hc-dialog-label{text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary);margin:8px 0 2px;font-size:.75rem;font-weight:600}.hc-po-list{flex-direction:column;gap:6px;max-height:220px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.hc-po-row{justify-content:space-between;align-items:center;gap:10px;font-size:.8125rem;display:flex}.hc-po-check{cursor:pointer;align-items:center;gap:8px;display:flex}.hc-lightbox .hc-lightbox-stage{background:var(--bg-muted);border-radius:var(--radius-md);justify-content:center;align-items:center;min-height:240px;display:flex}.hc-lightbox .hc-lightbox-stage img{object-fit:contain;max-width:100%;max-height:65vh}.hc-lightbox-count{color:var(--text-secondary);margin-right:auto;font-size:.8125rem}@media (width<=1399px){.hc-table tbody td.hc-actions-col{min-width:9rem}}.hc-actions-trigger{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.hc-actions-menu{z-index:50;background:var(--bg-surface,#fff);border:1px solid var(--border-color);border-radius:var(--radius-md);flex-direction:column;min-width:12rem;padding:4px;display:flex;position:fixed;box-shadow:0 8px 24px #0f172a29}.hc-actions-item{border-radius:var(--radius-sm,4px);text-align:left;color:var(--text-primary);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:8px 12px;font-size:.8125rem}.hc-actions-item:hover,.hc-actions-item:focus-visible{background:var(--bg-muted);outline:none}.hc-actions-item-danger{color:#b91c1c}.hc-lightbox .ui-modal-footer{flex-wrap:wrap;align-items:center}@media (width<=480px){.hc-lightbox-count{flex-basis:100%}.hc-lightbox .hc-lightbox-stage img{max-height:50vh}}.hc-toast-region{z-index:1050;max-width:calc(100vw - 32px);position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.hc-toast{border:1px solid var(--color-success-border,#bbf7d0);border-left:4px solid var(--color-success,#16a34a);border-radius:var(--radius-md,6px);background:var(--color-success-bg,#dcfce7);color:var(--text-primary,#0f172a);box-shadow:var(--shadow-lg,0 8px 24px #0f172a2e);align-items:center;gap:12px;padding:10px 12px 10px 16px;font-size:.875rem;display:flex}.hc-toast-close{border-radius:var(--radius-sm,4px);color:var(--text-secondary,#475569);cursor:pointer;background:0 0;border:none;padding:4px;display:inline-flex}.hc-toast-close svg{width:14px;height:14px}.adobe-sign-test-container{max-width:1200px;margin:0 auto;padding:20px}.error-message{color:var(--color-danger);background-color:var(--color-danger-bg);border-radius:var(--radius-sm);border-left:4px solid var(--color-danger);margin-bottom:16px;padding:10px}.button-group{gap:10px;margin-bottom:20px;display:flex}.adobe-sign-test-container button{background-color:var(--gpsi-navy);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;padding:8px 16px;font-size:14px;transition:background-color .3s}.adobe-sign-test-container button:hover{background-color:var(--gpsi-navy-dark)}.adobe-sign-test-container button:disabled{background-color:var(--border-color);cursor:not-allowed}.sections-container{flex-direction:column;gap:30px;display:flex}.adobe-sign-test-container section{background-color:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:16px}.signing-url-section{background-color:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin:20px 0;padding:16px}.signing-url-form{flex-wrap:wrap;gap:15px;margin-bottom:20px;display:flex}.signing-url-form .form-group{flex:1 0 300px}.signing-url-form label{margin-bottom:6px;font-weight:500;display:block}.signing-url-form input,.signing-url-form select{border:1px solid var(--border-color);border-radius:var(--radius-sm);width:100%;padding:8px}.signing-url-result{background-color:var(--bg-muted);border-radius:var(--radius-md);border-left:4px solid var(--gpsi-navy);margin-top:20px;padding:15px}.signing-url-display{background-color:var(--bg-muted);border-radius:var(--radius-sm);word-break:break-all;font-family:var(--font-mono);margin:10px 0;padding:10px;font-size:14px;overflow-x:auto}.signing-url-actions{gap:10px;margin-top:10px;display:flex}.adobe-sign-test-container .copy-button{background-color:var(--text-secondary)}.adobe-sign-test-container .open-button{background-color:var(--color-success);color:#fff;border-radius:var(--radius-sm);text-align:center;padding:8px 16px;text-decoration:none;display:inline-block}.adobe-sign-test-container h1{color:var(--gpsi-navy);margin-bottom:10px}.adobe-sign-test-container h2{color:var(--gpsi-navy);border-bottom:1px solid var(--border-color);margin-bottom:15px;padding-bottom:8px}.adobe-sign-test-container table{border-collapse:collapse;width:100%}.adobe-sign-test-container th,.adobe-sign-test-container td{text-align:left;border-bottom:1px solid var(--border-color);padding:12px 15px}.adobe-sign-test-container thead th{background-color:var(--bg-muted);color:var(--gpsi-navy);font-weight:700}.adobe-sign-test-container tbody tr:hover{background-color:var(--bg-muted)}@media (width>=768px){.sections-container{flex-flow:wrap}.adobe-sign-test-container section{flex:1 0 calc(50% - 15px);min-width:300px}}.adobe-sign-uploader{background-color:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin-bottom:30px;padding:20px}.adobe-sign-uploader h3{color:var(--gpsi-navy);margin-bottom:8px}.adobe-sign-uploader p{color:var(--text-secondary);margin-bottom:20px}.upload-form{flex-direction:column;gap:16px;display:flex}.form-group{flex-direction:column;display:flex}.form-group label{color:var(--gpsi-navy);margin-bottom:5px;font-weight:500}.form-group input[type=text]{border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:10px;font-size:14px}.form-group input[type=file]{border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--bg-muted);padding:8px}.upload-button{background-color:var(--gpsi-navy);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;margin-top:10px;padding:12px 20px;font-size:14px;font-weight:500;transition:background-color .3s}.upload-button:hover{background-color:var(--gpsi-navy-dark)}.upload-button:disabled{background-color:var(--border-color);cursor:not-allowed}.error-message{color:var(--color-danger);background-color:var(--color-danger-bg);border-radius:var(--radius-sm);border-left:4px solid var(--color-danger);margin-top:16px;padding:10px}.result-container{background-color:var(--color-success-bg);border-radius:var(--radius-sm);border-left:4px solid var(--color-success);margin-top:20px;padding:15px}.result-container h4{color:var(--color-success);margin-top:0}.result-container p{color:var(--text-primary);margin:8px 0}.instructions{border-top:1px solid var(--color-success-border);margin-top:15px;padding-top:15px}.instructions p{margin-bottom:10px;font-weight:500}.instructions ul{margin:0;padding-left:20px}.instructions li{margin-bottom:5px}@media (width>=768px){.upload-form{max-width:500px}}.template-manager{max-width:1200px;margin:0 auto;padding:30px}.manager-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;margin-bottom:30px;padding-bottom:20px;display:flex}.header-left h3{color:var(--gpsi-navy);margin:0 0 8px;font-size:1.1rem;font-weight:600}.header-left p{color:var(--text-secondary);margin:0;font-size:14px}.header-actions{align-items:center;gap:12px;display:flex}.toggle-view-btn,.refresh-btn{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;align-items:center;gap:6px;padding:10px 16px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.toggle-view-btn:hover,.refresh-btn:hover{background:var(--bg-muted);border-color:var(--accent);color:var(--accent)}.toggle-view-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.refresh-btn:disabled{opacity:.6;cursor:not-allowed}.upload-section{justify-content:center;padding:20px 0;display:flex}.upload-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;max-width:600px;box-shadow:var(--shadow-md);padding:30px}.upload-card h4{color:var(--text-primary);align-items:center;gap:8px;margin:0 0 8px;font-size:20px;display:flex}.upload-card p{color:var(--text-secondary);margin:0 0 25px;font-size:14px}.template-name-input{border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;padding:12px 16px;font-size:14px;transition:border-color .2s}.template-name-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #0098d433}.template-name-input::placeholder{color:var(--text-muted)}.file-upload-area{margin-bottom:20px;position:relative}.file-input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.file-upload-label{border:2px dashed var(--border-color);border-radius:var(--radius-lg);background:var(--bg-surface-hover);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;min-height:120px;padding:20px;transition:all .2s;display:flex}.file-upload-label:hover{border-color:var(--accent);background:var(--color-info-bg)}.upload-icon{margin-bottom:12px;font-size:32px}.upload-text{text-align:center}.upload-text strong{color:var(--text-primary);margin-bottom:4px;font-size:16px;display:block}.upload-text span{color:var(--text-secondary);font-size:14px}.selected-file{background:var(--bg-muted);border:1px solid var(--border-color);border-radius:var(--radius-lg);flex-direction:column;gap:15px;padding:20px;display:flex}.file-info{align-items:center;gap:12px;display:flex}.file-icon{font-size:24px}.file-details{flex:1}.file-name{color:var(--text-primary);margin-bottom:4px;font-weight:600}.file-size{color:var(--text-secondary);font-size:14px}.upload-btn{background:var(--color-success);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;align-self:flex-start;padding:12px 24px;font-size:14px;font-weight:600;transition:background-color .2s}.upload-btn:hover{background:#15803d}.upload-btn:disabled{background:var(--text-secondary);cursor:not-allowed}.templates-controls{justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px;display:flex}.search-bar{flex:1;max-width:400px}.search-input{border:1px solid var(--border-color);border-radius:20px;width:100%;padding:10px 16px;font-size:14px;transition:border-color .2s}.search-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #0098d433}.templates-count{color:var(--text-secondary);font-size:14px;font-weight:500}.loading-state,.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.empty-icon{opacity:.5;margin-bottom:20px;font-size:48px}.empty-state h4{color:var(--text-primary);margin-bottom:10px;font-size:18px}.empty-state p{color:var(--text-secondary);margin-bottom:20px}.create-first-btn{background:var(--accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;padding:12px 24px;font-size:14px;font-weight:600;transition:background-color .2s}.create-first-btn:hover{background:var(--accent-hover)}.templates-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;display:grid}.template-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:20px;transition:all .2s;position:relative}.template-card:hover{box-shadow:var(--shadow-md);border-color:var(--accent);transform:translateY(-2px)}.template-header{margin-bottom:15px}.template-info{margin-bottom:10px}.template-name{color:var(--text-primary);margin:0 0 8px;font-size:16px;font-weight:600;line-height:1.3}.template-meta{flex-direction:column;gap:2px;display:flex}.template-date{color:var(--text-secondary);font-size:12px}.status-badge{border-radius:var(--radius-lg);color:#fff;text-transform:uppercase;letter-spacing:.5px;padding:4px 8px;font-size:10px;font-weight:600;position:absolute;top:15px;right:15px}.template-actions{gap:8px;margin-top:15px;display:flex}.edit-btn,.select-btn{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);cursor:pointer;flex:1;padding:8px 12px;font-size:12px;font-weight:500;transition:all .2s}.edit-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff}.select-btn:hover{background:var(--color-success);border-color:var(--color-success);color:#fff}.template-authoring-view{flex-direction:column;height:100vh;padding:20px;display:flex}.authoring-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;display:flex}.authoring-header h3{color:var(--accent);margin:0;font-size:20px}.authoring-actions{gap:10px;display:flex}.open-external-btn,.finish-btn{border-radius:var(--radius-md);cursor:pointer;border:none;padding:10px 16px;font-size:14px;font-weight:500;transition:all .2s}.open-external-btn{background:var(--text-secondary);color:#fff}.open-external-btn:hover{background:#545b62}.finish-btn{background:var(--color-success);color:#fff}.finish-btn:hover{background:#15803d}.authoring-iframe-container{border:2px solid var(--gpsi-blue);border-radius:var(--radius-lg);flex:1;margin-bottom:20px;overflow:hidden}.authoring-iframe{background:var(--bg-surface);border:none;width:100%;height:100%}@media (width<=768px){.template-manager{padding:20px 15px}.manager-header{flex-direction:column;align-items:flex-start;gap:15px}.header-actions{flex-wrap:wrap}.templates-controls{flex-direction:column;align-items:stretch;gap:15px}.templates-grid{grid-template-columns:1fr;gap:15px}.upload-card{margin:0 -15px}.template-actions{flex-direction:column}.authoring-actions{flex-direction:column;gap:8px}}.agreement-manager{max-width:1200px;margin:0 auto;padding:30px}.manager-header{border-bottom:1px solid var(--border-color);margin-bottom:30px;padding-bottom:20px}.manager-header h3{color:var(--gpsi-navy);margin:0 0 8px;font-size:1.1rem;font-weight:600}.manager-header p{color:var(--text-secondary);margin:0;font-size:14px}.success-banner{background:var(--color-success-bg);border:1px solid var(--color-success-border);border-radius:var(--radius-lg);margin-bottom:20px;overflow:hidden}.success-content{align-items:center;gap:12px;padding:15px 20px;display:flex}.success-icon{flex-shrink:0;font-size:20px}.success-message{color:var(--color-success);flex:1;font-weight:500}.success-close{color:var(--color-success);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:20px;transition:background-color .2s;display:flex}.success-close:hover{background:#16a34a1a}.loading-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.loading-state p{color:var(--text-secondary);margin:0}.agreement-form{flex-direction:column;gap:30px;display:flex}.form-section{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:25px}.form-section h4{color:var(--text-primary);align-items:center;gap:8px;margin:0 0 8px;font-size:18px;font-weight:600;display:flex}.form-section>p{color:var(--text-secondary);margin:0 0 20px;font-size:14px}.no-templates{text-align:center;background:var(--bg-muted);border-radius:var(--radius-lg);border:2px dashed var(--border-color);flex-direction:column;justify-content:center;align-items:center;padding:40px 20px;display:flex}.no-templates-icon{opacity:.5;margin-bottom:15px;font-size:48px}.no-templates h5{color:var(--text-primary);margin:0 0 10px;font-size:18px}.no-templates p{color:var(--text-secondary);margin:0 0 20px;font-size:14px}.refresh-templates-btn{background:var(--accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;padding:10px 20px;font-size:14px;font-weight:500;transition:background-color .2s}.refresh-templates-btn:hover{background:var(--accent-hover)}.templates-selection{flex-direction:column;gap:12px;display:flex}.template-option{border:2px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;background:var(--bg-surface);justify-content:space-between;align-items:center;padding:15px;transition:all .2s;display:flex}.template-option:hover{border-color:var(--accent);background:var(--color-info-bg)}.template-option.selected{border-color:var(--accent);background:var(--color-info-bg);box-shadow:0 2px 8px #0098d433}.template-option-content{flex:1}.template-option-header{align-items:center;gap:10px;margin-bottom:5px;display:flex}.template-icon{font-size:18px}.template-name{color:var(--text-primary);font-size:16px;font-weight:600}.template-option-meta{color:var(--text-secondary);margin-left:28px;font-size:13px}.selected-indicator{color:var(--accent);font-size:20px;font-weight:700}.form-group label{color:var(--text-primary);margin-bottom:8px;font-size:14px;font-weight:600;display:block}.agreement-name-input{border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;padding:12px 16px;font-size:14px;transition:border-color .2s}.agreement-name-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #0098d433}.agreement-name-input:disabled{background:var(--bg-muted);color:var(--text-secondary)}.agreement-name-input::placeholder{color:var(--text-muted)}.field-help{color:var(--text-secondary);margin-top:5px;font-size:12px;display:block}.recipients-list{flex-direction:column;gap:15px;margin-bottom:20px;display:flex}.recipient-row{background:var(--bg-muted);border-radius:var(--radius-lg);border:1px solid var(--border-color);align-items:flex-start;gap:15px;padding:15px;display:flex}.recipient-number{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;margin-top:25px;font-size:14px;font-weight:600;display:flex}.recipient-fields{flex:1;grid-template-columns:2fr 1fr;gap:15px;display:grid}.field-group{flex-direction:column;display:flex}.field-group label{color:var(--text-primary);margin-bottom:5px;font-size:13px;font-weight:500}.recipient-email,.recipient-role{border:1px solid var(--border-color);border-radius:var(--radius-md);padding:10px 12px;font-size:14px;transition:border-color .2s}.recipient-email:focus,.recipient-role:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #0098d433}.recipient-email:disabled,.recipient-role:disabled{background:var(--bg-muted);color:var(--text-secondary)}.remove-recipient-btn{background:var(--color-danger);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;margin-top:25px;font-size:14px;transition:background-color .2s;display:flex}.remove-recipient-btn:hover{background:#b91c1c}.remove-recipient-btn:disabled{background:var(--text-secondary);cursor:not-allowed}.add-recipient-btn{background:var(--color-success);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;align-self:flex-start;padding:12px 20px;font-size:14px;font-weight:500;transition:background-color .2s}.add-recipient-btn:hover{background:#15803d}.add-recipient-btn:disabled{background:var(--text-secondary);cursor:not-allowed}.agreement-summary{background:var(--bg-muted);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-bottom:20px;padding:20px}.summary-row{justify-content:space-between;align-items:center;margin-bottom:10px;font-size:14px;display:flex}.summary-row:last-child{margin-bottom:0}.summary-label{color:var(--text-primary);font-weight:600}.summary-value{color:var(--text-secondary);text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:300px;overflow:hidden}.send-actions{flex-direction:column;gap:10px;display:flex}.send-agreement-btn{background:var(--gpsi-navy);color:#fff;border-radius:var(--radius-lg);cursor:pointer;border:none;align-self:flex-start;padding:15px 30px;font-size:16px;font-weight:600;transition:all .2s}.send-agreement-btn:hover{background:var(--gpsi-navy-dark);transform:translateY(-1px);box-shadow:0 4px 12px #0038674d}.send-agreement-btn:disabled{background:var(--text-secondary);cursor:not-allowed;box-shadow:none;transform:none}.send-help{margin-top:5px;font-size:13px}.send-help.error{color:var(--color-danger)}.send-help.success{color:var(--color-success);font-weight:500}@media (width<=768px){.agreement-manager,.form-section{padding:20px 15px}.recipient-fields{grid-template-columns:1fr;gap:10px}.recipient-row{flex-direction:column;align-items:stretch;gap:10px}.recipient-number{align-self:flex-start;margin-top:0}.remove-recipient-btn{align-self:flex-end;margin-top:0}.agreement-summary{padding:15px}.summary-row{flex-direction:column;align-items:flex-start;gap:5px}.summary-value{text-align:left;max-width:100%}.send-agreement-btn{text-align:center;width:100%}}@media (width<=480px){.templates-selection{gap:8px}.template-option{padding:12px}.template-option-header{flex-direction:column;align-items:flex-start;gap:5px}.template-icon{display:none}.template-option-meta{margin-left:0}}.adobe-sign-management-page{max-width:1200px;font-family:var(--font-sans);margin:0 auto;padding:20px}.adobe-sign-management-page .page-header{border-bottom:2px solid var(--border-color);justify-content:space-between;align-items:flex-start;margin-bottom:30px;padding-bottom:20px;display:flex}.header-content h1{color:var(--gpsi-navy);margin:0 0 8px;font-size:1.5rem;font-weight:600}.header-content p{color:var(--text-secondary);margin:0;font-size:16px}.header-actions{flex-shrink:0;align-self:flex-start;align-items:flex-start;gap:10px;display:flex}.test-connection-btn{background:var(--color-success);color:#fff;border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;border:none;align-self:flex-start;align-items:center;gap:8px;height:fit-content;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.test-connection-btn:hover{background:#15803d;transform:translateY(-1px)}.test-connection-btn:disabled{background:var(--text-secondary);cursor:not-allowed;transform:none}.test-connection-btn.loading{animation:1.5s infinite pulse}.error-banner{background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-lg);margin-bottom:20px;overflow:hidden}.error-content{align-items:center;gap:12px;padding:15px 20px;display:flex}.error-icon{flex-shrink:0;font-size:20px}.error-message{color:var(--color-danger);flex:1}.error-close{color:var(--color-danger);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:20px;transition:background-color .2s;display:flex}.error-close:hover{background:#dc26261a}.tabs-container{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.tabs-nav{background:var(--bg-muted);border-bottom:1px solid var(--border-color);display:flex}.tab-button{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-bottom:3px solid #0000;flex:1;justify-content:center;align-items:center;gap:8px;padding:16px 20px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.tab-button:hover{background:var(--border-color);color:var(--accent)}.tab-button.active{background:var(--bg-surface);color:var(--accent);border-bottom-color:var(--accent)}.tab-icon{font-size:18px}.tab-label{font-weight:600}.tab-content{padding:0}.tab-description{background:var(--bg-muted);border-bottom:1px solid var(--border-color);color:var(--text-secondary);padding:20px 30px;font-size:14px;font-style:italic}.tab-panel{min-height:500px;padding:0}.agreement-status-view{padding:30px}.status-header{justify-content:space-between;align-items:center;margin-bottom:25px;display:flex}.status-header h3{color:var(--gpsi-navy);margin:0;font-size:1.1rem}.refresh-btn{background:var(--accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;padding:8px 16px;font-size:14px;transition:background-color .2s}.refresh-btn:hover{background:var(--accent-hover)}.loading-container{color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.spinner{border:4px solid var(--border-color-light);border-top:4px solid var(--gpsi-blue);border-radius:50%;width:40px;height:40px;margin-bottom:20px;animation:1s linear infinite spin}.empty-state{text-align:center;color:var(--text-secondary);padding:60px 20px}.empty-icon{margin-bottom:20px;font-size:48px}.empty-state h4{color:var(--text-primary);margin-bottom:10px}.agreements-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px;display:grid}.agreement-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-surface);padding:20px;transition:all .2s}.agreement-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.agreement-header{justify-content:space-between;align-items:flex-start;margin-bottom:15px;display:flex}.agreement-header h4{color:var(--text-primary);flex:1;margin:0;font-size:16px}.status-badge{color:#fff;text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:4px 12px;font-size:11px;font-weight:600}.agreement-details{flex-direction:column;gap:8px;display:flex}.detail-row{justify-content:space-between;font-size:14px;display:flex}.detail-label{color:var(--text-secondary);font-weight:500}.detail-value{color:var(--text-primary);text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.settings-view{padding:30px}.settings-section{border-bottom:1px solid var(--border-color);margin-bottom:40px;padding-bottom:30px}.settings-section:last-child{border-bottom:none;margin-bottom:0}.settings-section h3{color:var(--gpsi-navy);margin-bottom:15px;font-size:1.1rem}.connection-info,.webhook-config,.integration-info{color:var(--text-secondary)}.connection-info p,.webhook-config p{margin-bottom:15px}.test-btn,.register-webhook-btn{background:var(--accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;padding:10px 20px;font-size:14px;transition:background-color .2s}.test-btn:hover,.register-webhook-btn:hover{background:var(--accent-hover)}.register-webhook-btn:disabled{background:var(--text-secondary);cursor:not-allowed}.register-webhook-btn.loading{animation:1.5s infinite pulse}.form-group{margin-bottom:20px}.form-group label{color:var(--text-primary);margin-bottom:8px;font-weight:500;display:block}.webhook-input{border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;max-width:500px;font-size:14px;font-family:var(--font-mono);padding:10px 12px}.webhook-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #0098d433}.success-message{background:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success);border-radius:var(--radius-md);margin-top:15px;padding:12px 16px;font-size:14px}.info-grid{grid-template-columns:1fr 1fr;gap:30px;margin-top:20px;display:grid}.info-item h4{color:var(--text-primary);margin-bottom:15px;font-size:16px}.info-item ul{margin:0;padding:0;list-style:none}.info-item li{border-bottom:1px solid var(--border-color-light);padding:8px 0;font-size:14px}.info-item li:last-child{border-bottom:none}.info-item code{background:var(--bg-muted);font-family:var(--font-mono);color:#e83e8c;border-radius:3px;padding:2px 6px}@keyframes pulse{0%{opacity:1}50%{opacity:.7}to{opacity:1}}@media (width<=768px){.adobe-sign-management-page{padding:15px}.page-header{flex-direction:column;align-items:flex-start;gap:15px}.tabs-nav{flex-direction:column}.tab-button{justify-content:flex-start;padding:12px 20px}.info-grid{grid-template-columns:1fr;gap:20px}.agreements-grid{grid-template-columns:1fr;gap:15px}.agreement-header{flex-direction:column;align-items:flex-start;gap:10px}.webhook-input{max-width:100%}}.sizeable-button{border-radius:var(--radius-md);cursor:pointer;border:1px solid var(--gpsi-navy);color:var(--gpsi-navy);font-size:.875rem;font-weight:500;font-family:var(--font-sans);background-color:#0000;padding:8px 18px;transition:all .15s}.sizeable-button:hover{background-color:var(--gpsi-navy);color:#fff}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#00000073;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.company-modal-container{background-color:var(--bg-surface);border-radius:var(--radius-lg);width:500px;box-shadow:var(--shadow-lg);padding:28px}.modal-content .form-group{margin-bottom:16px}.modal-content .form-group label{color:var(--text-secondary);margin-bottom:6px;font-size:.8125rem;font-weight:500;display:block}.modal-content .form-group input{box-sizing:border-box;border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;padding:8px 12px;font-size:.875rem}.modal-actions{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.modal-actions .button{border-radius:var(--radius-md);cursor:pointer;border:none;margin-left:0;padding:8px 18px;font-size:.8125rem;font-weight:500}.modal-actions .button-primary{background-color:var(--gpsi-navy);color:#fff}.modal-actions .button-primary:hover{background-color:var(--gpsi-navy-dark)}.modal-actions .button-danger{color:var(--text-secondary);border:1px solid var(--border-color);background-color:#0000}.modal-actions .button-danger:hover{background-color:var(--color-danger-bg);color:var(--color-danger);border-color:var(--color-danger-border)}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.weights-modal-content{background-color:var(--bg-surface);border-radius:var(--radius-lg);width:90%;max-width:800px;max-height:90vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex}.weights-modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px;display:flex}.weights-modal-header h2{color:var(--text-primary);margin:0;font-size:20px}.close-button{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:28px;display:flex}.close-button:hover{color:var(--text-primary)}.weights-modal-body{flex:1;padding:20px;overflow-y:auto}.error-message{background-color:var(--color-danger-bg);color:var(--color-danger);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px;display:flex}.error-message button{color:var(--color-danger);cursor:pointer;background:0 0;border:none;width:24px;height:24px;padding:0;font-size:20px}.success-message{background-color:var(--color-success-bg);color:var(--color-success);border-radius:var(--radius-sm);margin-bottom:16px;padding:12px}.loading-container{justify-content:center;align-items:center;padding:40px;display:flex}.weights-instructions{color:var(--text-secondary);margin-bottom:16px;font-size:14px;line-height:1.5}.weights-table{border-collapse:collapse;background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);width:100%}.weights-table thead{background-color:var(--bg-muted)}.weights-table th{text-align:left;color:var(--text-primary);border-bottom:2px solid var(--border-color);padding:12px;font-weight:600}.weights-table th:nth-child(2),.weights-table th:nth-child(3){text-align:center}.weights-table tbody tr{border-bottom:1px solid var(--border-color)}.weights-table tbody tr:last-child{border-bottom:none}.weights-table tbody tr:hover{background-color:var(--bg-muted)}.weights-table td{padding:12px}.weights-table td:nth-child(2),.weights-table td:nth-child(3){text-align:center}.weight-input{border:1px solid var(--border-color);border-radius:var(--radius-sm);text-align:center;width:80px;padding:6px 8px;font-size:14px}.weight-input:focus{border-color:var(--accent);outline:none}.save-button,.reset-button{border-radius:var(--radius-sm);cursor:pointer;border:none;margin:0 4px;padding:6px 16px;font-size:14px;transition:background-color .2s}.save-button{background-color:var(--accent);color:#fff}.save-button:hover:not(:disabled){background-color:var(--accent-hover)}.save-button:disabled{background-color:var(--border-color);cursor:not-allowed}.reset-button{background-color:var(--bg-surface);color:var(--text-secondary);border:1px solid var(--border-color)}.reset-button:hover:not(:disabled){background-color:var(--bg-muted)}.reset-button:disabled{border-color:var(--border-color);cursor:not-allowed}.weights-modal-footer{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.reload-button,.close-footer-button{border-radius:var(--radius-sm);cursor:pointer;border:none;padding:10px 20px;font-size:14px;transition:background-color .2s}.reload-button{background-color:var(--bg-surface);color:var(--accent);border:1px solid var(--gpsi-blue)}.reload-button:hover:not(:disabled){background-color:var(--color-info-bg)}.reload-button:disabled{color:var(--border-color);border-color:var(--border-color);cursor:not-allowed}.close-footer-button{background-color:var(--accent);color:#fff}.close-footer-button:hover{background-color:var(--accent-hover)}.empty-state{flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.empty-message{color:var(--text-secondary);text-align:center;margin-bottom:24px;font-size:16px}.initialize-button{background-color:var(--color-success);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;padding:12px 32px;font-size:16px;font-weight:500;transition:background-color .2s}.initialize-button:hover:not(:disabled){background-color:#15803d}.initialize-button:disabled{background-color:var(--border-color);cursor:not-allowed}.error-popup-overlay{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#00000073;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.error-popup-container{background-color:var(--bg-surface);border-radius:var(--radius-lg);width:360px;box-shadow:var(--shadow-lg);padding:28px}.error-popup-container p{color:var(--color-danger);margin-bottom:20px;font-size:.9rem;font-weight:600}.error-popup-container button{border-radius:var(--radius-md);background-color:var(--gpsi-navy);color:#fff;cursor:pointer;border:none;padding:8px 20px;font-weight:500;transition:background-color .15s}.error-popup-container button:hover{background-color:var(--gpsi-navy-dark)}.companies-page-container{flex-direction:column;align-items:center;padding:32px;display:flex}.add-company-button{margin-top:12px}.search-container{justify-content:space-between;align-items:center;width:100%;margin-top:20px;display:flex}.companies-grid{border:1px solid var(--border-color);border-radius:var(--radius-lg);background-color:var(--bg-surface);flex-wrap:wrap;justify-content:flex-start;gap:12px;width:85%;margin-top:20px;padding:16px;display:flex}.company-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;background-color:var(--bg-surface);width:400px;padding:20px;transition:box-shadow .15s,border-color .15s}.company-card:hover{box-shadow:var(--shadow-md);border-color:#cbd5e1}.company-card-content{cursor:pointer;color:inherit;text-decoration:none;display:block}.company-card-muted{color:var(--text-secondary);font-size:.8125rem}.company-card-content h3{color:var(--gpsi-navy);margin:0;font-size:1.1rem}.company-card-actions{border-top:1px solid var(--border-color);justify-content:center;margin-top:15px;padding-top:15px;display:flex}.risk-map-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#00000073;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.risk-map-modal-container{background-color:var(--bg-surface);border-radius:var(--radius-lg);width:500px;max-height:85vh;box-shadow:var(--shadow-lg);padding:28px;overflow-y:auto}.risk-map-modal-container.wide{width:680px}.risk-map-modal-container h2{margin-top:0}.risk-map-modal-subtitle{color:var(--text-secondary);margin:-8px 0 16px;font-size:.8125rem}.risk-map-form-group{margin-bottom:16px}.risk-map-form-group label{color:var(--text-secondary);margin-bottom:6px;font-size:.8125rem;font-weight:500;display:block}.risk-map-form-group input,.risk-map-form-group select{width:100%}.risk-map-form-row{gap:12px;display:flex}.risk-map-form-row>*{flex:1}.risk-map-hint{color:var(--text-muted);margin:4px 0 0;font-size:.75rem}.risk-map-modal-actions{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.risk-map-modal-actions .button{border-radius:var(--radius-md);cursor:pointer;border:none;padding:8px 18px;font-size:.8125rem;font-weight:500}.risk-map-modal-actions .button-primary{background-color:var(--gpsi-navy);color:#fff}.risk-map-modal-actions .button-primary:hover{background-color:var(--gpsi-navy-dark)}.risk-map-modal-actions .button-danger{color:var(--text-secondary);border:1px solid var(--border-color);background-color:#0000}.risk-map-modal-actions .button-danger:hover{background-color:var(--color-danger-bg);color:var(--color-danger);border-color:var(--color-danger-border)}.risk-map-row-list{border:1px solid var(--border-color);border-radius:var(--radius-md);max-height:260px;margin-bottom:16px;overflow-y:auto}.risk-map-row{border-bottom:1px solid var(--border-color-light);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.risk-map-row:last-child{border-bottom:none}.risk-map-row-main{min-width:0}.risk-map-row-title{color:var(--text-primary);font-weight:500}.risk-map-row-meta{color:var(--text-secondary);margin-top:2px;font-size:.75rem}.risk-map-row-actions{flex-shrink:0;gap:6px;display:flex}.risk-map-row-actions button{border:1px solid var(--border-color);color:var(--text-secondary);background-color:#0000;padding:4px 10px}.risk-map-row-actions button:hover{background-color:var(--bg-surface-hover);color:var(--text-primary)}.risk-map-row-actions button.danger:hover{background-color:var(--color-danger-bg);color:var(--color-danger);border-color:var(--color-danger-border)}.risk-map-empty{text-align:center;color:var(--text-muted);padding:16px;font-size:.8125rem}.risk-map-section-heading{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;margin:0 0 8px;font-size:.8125rem;font-weight:600}.risk-map-modal-search{margin-bottom:12px}.risk-map-modal-search input{width:100%}.risk-map-inline-form{border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-surface-hover);margin-bottom:16px;padding:16px}.risk-map-page-container{flex-direction:column;align-items:center;padding:32px;display:flex}.risk-map-load-error{color:var(--color-danger);font-size:.875rem}.risk-map-section{width:85%;margin-top:24px}.risk-map-section-header{justify-content:space-between;align-items:center;display:flex}.risk-map-section-header h2{color:var(--gpsi-navy);margin:0;font-size:1.125rem}.risk-map-search{margin-top:12px}.risk-map-search input{width:100%}.risk-map-grid{border:1px solid var(--border-color);border-radius:var(--radius-lg);background-color:var(--bg-surface);flex-wrap:wrap;justify-content:flex-start;gap:12px;width:100%;margin-top:16px;padding:16px;display:flex}.risk-map-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);background-color:var(--bg-surface);width:400px;padding:20px;transition:box-shadow .15s,border-color .15s}.risk-map-card:hover{box-shadow:var(--shadow-md);border-color:#cbd5e1}.risk-map-card-content{cursor:pointer}.risk-map-card-content h3{color:var(--gpsi-navy);margin:0;font-size:1.1rem}.risk-map-card-address{color:var(--text-secondary);margin:4px 0 12px;font-size:.875rem}.risk-map-link-list{color:var(--text-secondary);margin:0;padding:0;font-size:.8125rem;list-style:none}.risk-map-link-list li{margin-bottom:4px}.risk-map-link-empty{color:var(--text-muted);font-style:italic}.risk-map-tier-badge{border-radius:var(--radius-sm);background-color:var(--color-info-bg);color:var(--color-info);margin-right:6px;padding:1px 6px;font-size:.6875rem;font-weight:600;display:inline-block}.risk-map-card-assessments{color:var(--text-secondary);margin:10px 0 0;font-size:.8125rem}.risk-map-card-due{color:var(--gpsi-navy);margin:4px 0 0;font-size:.8125rem;font-weight:500}.risk-map-card-actions{border-top:1px solid var(--border-color);justify-content:center;gap:8px;margin-top:15px;padding-top:15px;display:flex}.risk-map-program-list{border:1px solid var(--border-color);border-radius:var(--radius-lg);background-color:var(--bg-surface);width:100%;margin-top:16px;overflow:hidden}.risk-map-program-row{border-bottom:1px solid var(--border-color-light);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.risk-map-program-row:last-child{border-bottom:none}.risk-map-program-code{font-family:var(--font-mono);color:var(--gpsi-navy);margin-right:12px;font-weight:600}.risk-map-program-name{color:var(--text-secondary);font-size:.875rem}.risk-map-program-edit{border:1px solid var(--border-color);color:var(--text-secondary);background-color:#0000;padding:4px 12px}.risk-map-program-edit:hover{background-color:var(--bg-surface-hover);color:var(--text-primary)}.risk-map-empty-state{color:var(--text-muted);padding:16px;font-size:.875rem}.loading-container{justify-content:center;align-items:center;height:100vh;display:flex}.person-page{flex-direction:column;gap:16px;max-width:1080px;display:flex}.person-hero{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:20px 22px}.person-hero-top{align-items:center;gap:16px;display:flex}.person-hero-id{flex:1;min-width:0}.person-hero-id h1{color:var(--gpsi-navy);overflow-wrap:anywhere;margin:0;font-size:1.375rem}.person-hero-sub{color:var(--text-secondary);margin:2px 0 0;font-size:.875rem}.person-hero-actions{flex-shrink:0;align-self:flex-start}.person-hero .dir-notice{margin:16px 0 0}.person-hero-note{color:var(--text-secondary);margin:10px 0 0;font-size:.8125rem}.person-facts{border-top:1px solid var(--border-color-light);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px 24px;margin:18px 0 0;padding-top:16px;display:grid}@media (width>=900px){.person-facts{grid-template-columns:1.55fr 1fr 1.15fr 1.3fr}}.person-fact{min-width:0}.person-facts dt{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.7rem;font-weight:700}.person-facts dd{overflow-wrap:anywhere;margin:4px 0 0;font-size:.875rem}.person-fact-absent{color:var(--text-muted);font-size:.8125rem;font-style:italic}.person-skel-avatar{width:56px;height:56px}.person-cards{flex-direction:column;gap:16px;display:flex}.person-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.person-card-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:12px;padding:13px 18px;display:flex}.person-card-title{color:var(--gpsi-navy);align-items:center;gap:8px;margin:0;font-size:.9375rem;font-weight:600;display:flex}.person-card-count{color:var(--text-secondary);background:var(--bg-muted);font-variant-numeric:tabular-nums;border-radius:999px;padding:1px 8px;font-size:.75rem;font-weight:600}.person-card-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.person-card-body{padding:4px 18px 12px;overflow-x:auto}.person-table-identities{min-width:760px}.person-table{table-layout:fixed;border-collapse:separate;border-spacing:0;border:none;border-radius:0;width:100%;overflow:visible}.person-table th{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);text-align:left;border-bottom:1px solid var(--border-color-light);white-space:nowrap;background:0 0;padding:10px 0 8px;font-size:.7rem;font-weight:700}.person-table td{color:var(--text-primary);border-bottom:1px solid var(--border-color-light);vertical-align:middle;text-overflow:ellipsis;padding:9px 0;font-size:.8125rem;overflow:hidden}.person-table tbody tr:last-child td{border-bottom:none}.person-table th+th,.person-table td+td{padding-left:12px}.person-table-retired td{opacity:.55}.person-cell-actions{text-align:right;white-space:nowrap}.person-cell-actions .person-btn+.person-btn{margin-left:6px}.person-cell-badges{white-space:normal}.person-cell-badges .dir-badges{flex-wrap:wrap;row-gap:3px}.person-stack-primary{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.person-stack-secondary{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;display:block;overflow:hidden}.person-absent{color:var(--text-muted);font-style:italic}.person-strong{color:var(--text-primary);font-weight:600}.person-muted{color:var(--text-secondary)}.person-chip{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;padding:2px 8px;font-size:.7rem;font-weight:600;display:inline-flex}.person-chip-neutral{background:var(--bg-muted);color:var(--text-secondary);border-color:var(--border-color)}.person-chip-active{background:var(--color-success-bg);color:var(--color-success);border-color:var(--color-success-border)}.person-chip-pending_signup,.person-chip-scheduled{background:var(--color-info-bg);color:var(--color-info);border-color:#bae6fd}.person-chip-expired,.person-chip-revoked{background:var(--bg-muted);color:var(--text-muted);border-color:var(--border-color)}.person-btn{font:inherit;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-primary);cursor:pointer;white-space:nowrap;align-items:center;padding:5px 10px;font-size:.78rem;font-weight:600;text-decoration:none;display:inline-flex}.person-btn:hover:not(:disabled){background:var(--bg-surface-hover);border-color:var(--accent);color:var(--gpsi-navy)}.person-btn:disabled{cursor:not-allowed;opacity:.5}.person-btn-primary{background:var(--gpsi-navy);border-color:var(--gpsi-navy);color:#fff}.person-btn-primary:hover:not(:disabled){background:var(--gpsi-navy-dark);border-color:var(--gpsi-navy-dark);color:#fff}.person-btn-danger{background:var(--color-danger);border-color:var(--color-danger);color:#fff}.person-btn-danger:hover:not(:disabled){color:#fff;background:#b91c1c;border-color:#b91c1c}.person-btn-quiet{color:var(--gpsi-navy);background:0 0;border-color:#0000}.person-btn-quiet:hover:not(:disabled){background:var(--bg-muted);border-color:var(--border-color)}.person-link{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8rem;font-weight:600;text-decoration:underline}.person-link:hover{color:var(--gpsi-navy)}.person-cap-note{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-muted);color:var(--text-secondary);align-items:center;gap:8px;margin:10px 0 0;padding:6px 10px;font-size:.78rem;display:flex}.person-cap-note svg{width:13px;height:13px;color:var(--text-muted);flex-shrink:0}.person-field{margin-bottom:14px;display:block}.person-field-row{gap:12px;display:flex}.person-field-row .person-field{flex:1}.person-field-label{color:var(--text-secondary);margin-bottom:5px;font-size:.78rem;font-weight:600;display:block}.person-input{box-sizing:border-box;width:100%;font:inherit;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);padding:8px 10px;font-size:.875rem}.person-input:focus-visible{outline:2px solid var(--gpsi-blue);outline-offset:-1px}.person-input:disabled,.person-input[readonly],.person-locked{background:var(--bg-muted);color:var(--text-secondary);cursor:default}.person-locked{box-sizing:border-box;border:1px solid var(--border-color);border-radius:var(--radius-md);align-items:center;gap:8px;width:100%;padding:8px 10px;font-size:.875rem;display:flex}.person-locked-input{min-width:0;font:inherit;color:var(--text-secondary);cursor:default;background:0 0;border:none;flex:1;padding:0;font-size:.875rem}.person-locked svg{width:13px;height:13px;color:var(--text-muted);flex-shrink:0}.person-field-hint{color:var(--text-secondary);margin:5px 0 0;font-size:.78rem}.person-field-error{color:var(--color-danger);margin:5px 0 0;font-size:.78rem}.person-hint,.person-empty{color:var(--text-secondary);margin:12px 0;font-size:.8125rem}.person-dialog-lead{color:var(--text-primary);margin:0 0 14px;font-size:.875rem}.person-notice{border-radius:var(--radius-md);border:1px solid var(--border-color);margin:12px 0;padding:10px 12px;font-size:.8125rem}.person-notice-message{color:inherit;margin:0}.person-notice-detail{color:var(--text-secondary);margin:6px 0 0}.person-notice-action{margin-top:8px}.person-notice-error{background:var(--color-danger-bg);border-color:var(--color-danger-border);color:var(--color-danger)}.person-notice-warning{background:var(--color-warning-bg);border-color:var(--color-warning-border);color:#92400e}.person-reference-list{margin:8px 0 0;padding-left:18px}.person-reference-list li{margin-bottom:2px}.person-delegation-group+.person-delegation-group{border-top:1px solid var(--border-color);margin-top:8px;padding-top:8px}.person-delegation-head{justify-content:space-between;align-items:center;gap:12px;padding:12px 0 2px;display:flex}.person-delegation-head-actions{align-items:center;gap:12px;display:flex}.person-candidates{max-height:240px;overflow-y:auto}.ar-queue-count{background:var(--accent);color:#fff;vertical-align:3px;font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;margin-left:10px;padding:0 7px;font-size:.75rem;font-weight:700;display:inline-flex}.dir-linkbtn-action{cursor:pointer;font-family:inherit}.dir-linkbtn-action:disabled{cursor:not-allowed;opacity:.5;border-color:var(--border-color);color:var(--text-muted);background:var(--bg-muted)}.access-requests-table tbody td{height:54px}.ar-form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 14px;display:grid}.ar-form-heading{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-top:1px solid var(--border-color-light);margin:6px 0 12px;padding-top:14px;font-size:.8rem;font-weight:700}.ar-summary{grid-template-columns:max-content 1fr;gap:6px 16px;margin:0 0 4px;font-size:.8125rem;display:grid}.ar-summary>div{display:contents}.ar-summary dt{color:var(--text-secondary);font-weight:600}.ar-summary dd{color:var(--text-primary);overflow-wrap:anywhere;margin:0}.ar-focal-flag{text-overflow:ellipsis;border-color:var(--color-info);background:var(--color-info-bg);width:fit-content;max-width:100%;color:var(--color-info);margin-top:4px;display:block;overflow:hidden}.contractor-params-table tbody td{height:46px}.contractor-params-table{min-width:920px}.dir-row-editing{background:var(--bg-surface-hover);box-shadow:inset 3px 0 0 var(--gpsi-blue)}.persona-picker-page{background-color:var(--bg-body);justify-content:center;align-items:center;min-height:calc(100vh - 64px);padding:24px;display:flex}.persona-picker-container{background-color:var(--bg-surface);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-lg);width:100%;max-width:480px;padding:48px 40px}.persona-picker-container h1{color:var(--gpsi-navy);margin-bottom:12px;font-size:1.5rem}.persona-picker-container p{color:var(--text-secondary);margin-bottom:32px;font-size:.9rem}.persona-list{flex-direction:column;gap:12px;display:flex}.persona-card{background-color:var(--bg-surface);color:var(--gpsi-navy);border:1px solid var(--gpsi-navy);border-radius:var(--radius-md);cursor:pointer;padding:16px 20px;font-size:1rem;font-weight:600;transition:background-color .15s,color .15s}.persona-card-detail{opacity:.8;margin-top:.25rem;font-size:.75rem;font-weight:400;display:block}.persona-card:hover{background-color:var(--gpsi-navy);color:#fff}.persona-empty{color:var(--text-secondary);margin:0;font-size:.875rem}.adr-list-wrap{flex-direction:column;gap:12px;display:flex}.adr-outcome{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.adr-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:16px}.adr-card-highlight{border-color:var(--gpsi-blue);box-shadow:0 0 0 2px var(--gpsi-blue)}.adr-card-head{margin-bottom:12px}.adr-card-title{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.adr-card-name{color:var(--text-primary);margin:0;font-size:1rem;font-weight:600}.adr-card-meta{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:4px 16px;margin-top:4px;font-size:.8125rem;display:flex}.adr-card-reason{color:var(--text-primary);margin:8px 0 0;font-size:.8125rem}.adr-status{border:1px solid var(--border-color);background:var(--bg-muted);color:var(--text-secondary);border-radius:999px;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-block}.adr-status-pending{background:var(--color-warning-bg);border-color:var(--color-warning-border);color:var(--color-warning)}.adr-status-completed{background:var(--color-danger-bg);border-color:var(--color-danger-border);color:var(--color-danger)}.adr-card-body{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.adr-section-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0 0 6px;font-size:.75rem;font-weight:600}.adr-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.adr-list-row{color:var(--text-primary);flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:.8125rem;display:flex}.adr-muted{color:var(--text-muted);margin:0;font-size:.8125rem}.adr-openwork{font-size:.8125rem}.adr-openwork-warning{border-radius:var(--radius-md);border:1px solid var(--color-warning-border);background:var(--color-warning-bg);color:#92400e;padding:8px 10px}.adr-openwork-title{margin:0 0 4px;font-weight:600}.adr-openwork-list,.adr-external-list,.adr-steps{margin:4px 0 0;padding-left:18px;font-size:.8125rem}.adr-external{margin-top:12px}.adr-card-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.adr-steps{color:var(--text-primary);margin:0 0 12px}.adr-dialog-note{color:var(--text-secondary);margin:0 0 10px;font-size:.8125rem}.adr-reason{resize:vertical;min-height:72px}.app-dlg-overlay{z-index:11000;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.app-dlg-card{background:var(--bg-surface,#fff);border-radius:var(--radius-lg,10px);width:100%;max-width:460px;color:var(--text-primary,#0f172a);padding:20px 22px 16px;box-shadow:0 10px 30px #00000040}.app-dlg-title{color:var(--gpsi-navy,#003867);margin:0 0 8px;font-size:1.05rem;font-weight:600}.app-dlg-message{white-space:pre-line;overflow-wrap:anywhere;font-size:.9rem;line-height:1.45}.app-dlg-field{color:var(--text-secondary,#64748b);flex-direction:column;gap:4px;margin-top:12px;font-size:.8125rem;display:flex}.app-dlg-field input{border:1px solid var(--border-color,#cbd5e1);border-radius:var(--radius-md,6px);color:var(--text-primary,#0f172a);padding:8px 10px;font-size:.9rem}.app-dlg-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.app-dlg-btn{border-radius:var(--radius-md,6px);border:1px solid var(--border-color,#cbd5e1);background:var(--bg-surface,#fff);color:var(--text-primary,#0f172a);cursor:pointer;padding:8px 16px;font-size:.8125rem;font-weight:600}.app-dlg-btn:focus-visible,.app-dlg-btn:focus{outline-offset:2px;outline:2px solid #2563eb}.app-dlg-btn-primary{background:var(--gpsi-navy,#003867);border-color:var(--gpsi-navy,#003867);color:#fff}.app-dlg-btn-danger{background:var(--color-danger,#dc2626);border-color:var(--color-danger,#dc2626);color:#fff}.app-toast-region{z-index:11001;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:16px;left:16px;right:16px}.app-toast{pointer-events:auto;border-radius:var(--radius-md,6px);border:1px solid var(--color-info,#0284c7);background:var(--bg-surface,#fff);max-width:440px;color:var(--text-primary,#0f172a);border-left-width:4px;align-items:center;gap:10px;padding:10px 12px 10px 14px;font-size:.875rem;display:flex;box-shadow:0 6px 18px #0000002e}.app-toast-success{border-color:var(--color-success,#16a34a)}.app-toast-error{border-color:var(--color-danger,#dc2626)}.app-toast-message{white-space:pre-line;overflow-wrap:anywhere;flex:1}.app-toast-action{color:var(--gpsi-navy,#003867);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-weight:700;text-decoration:underline}.app-toast-close{color:var(--text-secondary,#64748b);cursor:pointer;background:0 0;border:none;padding:2px 4px}
