:root{color:#24272a;font-synthesis:none;text-rendering:optimizelegibility;background:#f8f8f9;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #446da957}.login-page{grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr);min-height:100vh;display:grid}.login-introduction{color:#fff;background:#446da9;flex-direction:column;justify-content:space-between;padding:clamp(32px,6vw,84px);display:flex;position:relative;overflow:hidden}.login-introduction:after{content:"";opacity:.2;background-image:radial-gradient(#ffffffc7 1.2px,#0000 1.2px);background-size:12px 12px;width:310px;height:310px;position:absolute;top:21%;right:-52px;transform:rotate(-8deg)}.brand-lockup{z-index:1;align-items:center;gap:18px;display:flex;position:relative}.brand-lockup strong,.brand-lockup span{display:block}.brand-lockup strong{font-size:1rem;font-weight:750}.brand-lockup span{opacity:.78;margin-top:2px;font-size:.85rem}.brand-lockup img{width:237px;height:auto;display:block}.login-brand{color:#24272a;background:#fff;border-radius:4px 4px 34px;align-self:flex-start;padding:16px 22px;box-shadow:0 18px 38px #173a6433}.login-brand img{width:clamp(190px,18vw,237px)}.prototype-identity{border-left:1px solid #d3dcea;padding-left:18px}.login-brand .prototype-identity span{color:#6d6d74;opacity:1}.introduction-copy{z-index:1;max-width:650px;padding:72px 0;position:relative}.introduction-copy:before{content:"";background:#95268f;width:52px;height:3px;margin-bottom:24px;display:block}.eyebrow{color:#446da9;letter-spacing:.11em;text-transform:uppercase;margin:0 0 12px;font-size:.76rem;font-weight:750}.login-introduction .eyebrow{color:#fff;opacity:.84}.introduction-copy h1{letter-spacing:-.045em;max-width:600px;margin:0;font-size:clamp(2.3rem,5vw,4.8rem);line-height:1.03}.introduction-copy>p:last-child{color:#ffffffdb;max-width:620px;margin:26px 0 0;font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.65}.environment-note{z-index:1;color:#ffffffc7;margin:0;font-size:.82rem;position:relative}.login-panel{background:#f8f8f9;place-items:center;padding:32px;display:grid}.login-form{background:#fff;border:1px solid #d3dcea;border-top:4px solid #446da9;border-radius:4px 4px 58px;width:min(100%,430px);padding:clamp(28px,5vw,46px);position:relative;box-shadow:0 22px 55px #173a641f}.login-form:after{content:"";background:#95268f;width:26px;height:3px;position:absolute;bottom:17px;right:24px}.login-form h2{letter-spacing:-.025em;margin:0;font-size:2rem}.form-description{color:#6d6d74;margin:9px 0 30px}.login-form label{color:#24272a;gap:8px;margin-top:19px;font-size:.9rem;font-weight:650;display:grid}.login-form input{color:#24272a;background:#fff;border:1px solid #aeb7c1;border-radius:4px;width:100%;padding:12px 13px}.login-form input:hover{border-color:#446da9}.primary-button,.secondary-button{cursor:pointer;border-radius:8px;font-weight:700}.primary-button{color:#fff;background:#446da9;border:0;border-radius:4px 4px 20px;width:100%;margin-top:24px;padding:13px 16px}.primary-button:hover{background:#173a64}.primary-button:disabled,.secondary-button:disabled{cursor:wait;opacity:.65}.error-message{color:#8b2525;background:#fdeaea;border-radius:8px;margin-top:16px;padding:11px 12px;font-size:.88rem}.support-note{color:#6d6d74;text-align:center;margin:20px 0 0;font-size:.78rem}.prototype-disclaimer{color:#6d6d74;letter-spacing:.02em;text-align:center;border-top:1px solid #e2e6eb;margin:13px 0 0;padding-top:13px;font-size:.72rem;font-weight:650}.loading-screen{color:#54565a;place-items:center;min-height:100vh;display:grid}.workspace-shell{--sidebar-width:282px;grid-template-columns:var(--sidebar-width) minmax(0, 1fr);background:#f8f8f9;min-height:100vh;transition:grid-template-columns .22s;display:grid}.workspace-shell.sidebar-hidden{grid-template-columns:0 minmax(0,1fr)}.sidebar{color:#fff;background:#173a64;flex-direction:column;width:282px;min-width:0;height:100vh;transition:transform .22s,opacity .18s;display:flex;position:sticky;top:0;overflow:hidden;box-shadow:8px 0 24px #173a6414}.sidebar-hidden .sidebar{pointer-events:none;opacity:0;transform:translate(-100%)}.sidebar-brand{background:#fff;border-bottom:4px solid #446da9;min-height:142px;padding:24px 24px 22px}.sidebar-brand img{width:188px;height:auto;display:block}.sidebar-brand div{border-left:3px solid #95268f;margin-top:15px;padding-left:13px}.sidebar-brand strong,.sidebar-brand span{display:block}.sidebar-brand strong{color:#24272a;font-size:.9rem}.sidebar-brand span{color:#6d6d74;margin-top:3px;font-size:.72rem}.primary-navigation{padding:26px 16px}.navigation-label{color:#ffffff7a;letter-spacing:.14em;text-transform:uppercase;margin:0 12px 10px;font-size:.68rem;font-weight:750}.navigation-item{color:#ffffffbd;border-radius:4px 4px 18px;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:48px;margin:4px 0;padding:10px 13px;text-decoration:none;transition:color .16s,background .16s,transform .16s;display:grid;position:relative}.navigation-item:hover{color:#fff;background:#ffffff14;transform:translate(2px)}.navigation-item.active{color:#173a64;background:#fff;box-shadow:0 10px 24px #061a312e}.navigation-item.active:before{content:"";background:#95268f;border-radius:0 3px 3px 0;width:3px;position:absolute;top:11px;bottom:11px;left:0}.navigation-icon{place-items:center;display:grid}.navigation-icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.navigation-icon svg rect{fill:none}.navigation-text{font-size:.89rem;font-weight:650}.navigation-badge{color:#fff;letter-spacing:.04em;text-transform:uppercase;background:#95268f;border-radius:999px;padding:3px 7px;font-size:.61rem;font-weight:750}.dashboard-navigation-group{margin-bottom:4px}.dashboard-navigation-row{position:relative}.dashboard-navigation-row .navigation-item{padding-right:42px}.dashboard-menu-toggle{z-index:2;color:#ffffffa8;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;width:28px;height:28px;padding:0;display:grid;position:absolute;top:11px;right:8px}.dashboard-navigation-row .navigation-item.active+.dashboard-menu-toggle{color:#173a64}.dashboard-menu-toggle:hover{color:#fff;background:#ffffff1a}.dashboard-navigation-row .navigation-item.active+.dashboard-menu-toggle:hover{color:#173a64;background:#edf2f8}.dashboard-menu-toggle svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px;transition:transform .16s}.dashboard-menu-toggle.open svg{transform:rotate(180deg)}.dashboard-subnavigation{border-left:1px solid #ffffff2e;gap:2px;margin:2px 0 8px 24px;padding:4px 0 4px 20px;display:grid;position:relative}.dashboard-subnavigation a{color:#ffffff94;border-radius:4px 4px 11px;align-items:center;gap:9px;min-height:31px;padding:5px 9px;font-size:.72rem;font-weight:620;text-decoration:none;transition:color .14s,background .14s;display:flex}.dashboard-subnavigation a>span{background:#ffffff47;border-radius:50%;flex:none;width:5px;height:5px}.dashboard-subnavigation a:hover{color:#fff;background:#ffffff12}.dashboard-subnavigation a.active{color:#fff;background:#ffffff1a}.dashboard-subnavigation a.active>span{background:#93d500;box-shadow:0 0 0 3px #93d5001f}.sidebar-account{background:#00000014;border-top:1px solid #ffffff1f;grid-template-columns:38px minmax(0,1fr) 34px;align-items:center;gap:10px;margin-top:auto;padding:17px 18px;display:grid}.account-avatar{color:#173a64;background:#fff;border-radius:4px 4px 14px;place-items:center;width:38px;height:38px;font-weight:800;display:grid}.account-summary{min-width:0}.account-summary strong,.account-summary span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.account-summary strong{font-size:.78rem}.account-summary span{color:#ffffff8f;text-transform:capitalize;margin-top:3px;font-size:.69rem}.sidebar-account button{color:#ffffffb8;cursor:pointer;background:0 0;border:0;border-radius:4px 4px 12px;place-items:center;width:34px;height:34px;padding:0;display:grid}.sidebar-account button:hover{color:#fff;background:#ffffff1a}.sidebar-account button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.sidebar-edge-toggle{z-index:30;top:50%;left:var(--sidebar-width);color:#446da9;cursor:pointer;background:#fff;border:1px solid #b9c7d8;border-left:0;border-radius:0 9px 9px 0;place-items:center;width:18px;height:62px;padding:0;transition:left .22s,color .16s,background .16s;display:grid;position:fixed;transform:translateY(-50%);box-shadow:5px 0 14px #173a6421}.sidebar-hidden .sidebar-edge-toggle{left:0}.sidebar-edge-toggle:hover{color:#fff;background:#446da9}.sidebar-edge-toggle svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:13px;height:18px}.workspace-main{min-width:0}.workspace-header{background:#fff;border-top:5px solid #446da9;border-bottom:1px solid #dce3ed;justify-content:space-between;align-items:center;gap:24px;min-height:76px;padding:14px clamp(24px,4vw,58px);display:flex}.header-title span,.header-title strong{display:block}.header-title span{color:#6d6d74;font-size:.72rem}.header-title strong{color:#24272a;margin-top:3px;font-size:.97rem}.prototype-status{color:#6d6d74;align-items:center;gap:8px;font-size:.74rem;display:flex}.prototype-status>span{background:#93d500;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #93d50021}.workspace-content{padding:clamp(30px,5vw,58px)}.page-heading{border-bottom:1px solid #dce3ed;padding-bottom:25px}.page-heading h1{color:#24272a;letter-spacing:-.04em;margin:0;font-size:clamp(2rem,4vw,3.25rem);line-height:1.05}.empty-workspace{min-height:calc(100vh - 235px)}.page-heading-with-note{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.data-disclaimer{color:#6d6d74;text-align:right;max-width:390px;margin:0;font-size:.74rem;line-height:1.45}.content-state{color:#6d6d74;place-items:center;min-height:300px;display:grid}.content-state.error-message{margin:30px 0 0}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:24px;display:grid}.metric-card{background:#fff;border:1px solid #dce3ed;border-radius:5px 5px 28px;min-height:154px;padding:23px 24px;position:relative;overflow:hidden;box-shadow:0 12px 28px #173a640f}.metric-card:after{content:"";background:#446da9;width:6px;height:45px;position:absolute;top:0;right:0}.metric-card.warning:after{background:#d97820}.metric-card span,.metric-card small{display:block}.metric-card span{color:#6d6d74;font-size:.78rem;font-weight:680}.metric-card strong{color:#173a64;letter-spacing:-.035em;margin:13px 0 8px;font-size:clamp(1.75rem,3vw,2.45rem);line-height:1;display:block}.metric-card small{color:#89919b;font-size:.71rem}.dashboard-grid{grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:18px;margin-top:18px;display:grid}.dashboard-panel,.detail-panel{background:#fff;border:1px solid #dce3ed;border-radius:5px 5px 32px;padding:24px;box-shadow:0 12px 28px #173a640d}.dashboard-wide{grid-column:1/-1}.panel-heading{border-bottom:1px solid #e6eaf0;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:18px;display:flex}.panel-heading .eyebrow{margin-bottom:6px}.panel-heading h2{color:#24272a;margin:0;font-size:1.08rem}.panel-heading>a{color:#446da9;font-size:.76rem;font-weight:700;text-decoration:none}.panel-heading>span{color:#89919b;font-size:.69rem}.attention-list,.risk-ranking{margin-top:4px}.attention-row,.risk-ranking-row{min-height:62px;color:inherit;border-bottom:1px solid #edf0f4;align-items:center;gap:12px;padding:10px 4px;text-decoration:none;display:grid}.attention-row{grid-template-columns:40px minmax(0,1fr) auto}.risk-ranking-row{grid-template-columns:40px minmax(0,1fr) auto 42px}.attention-row:hover,.risk-ranking-row:hover{background:#f7f9fc}.attention-row>span:nth-child(2),.risk-ranking-row>span:nth-child(2){min-width:0}.attention-row strong,.attention-row small,.risk-ranking-row strong,.risk-ranking-row small{display:block}.attention-row strong,.risk-ranking-row>span strong{color:#24272a;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.attention-row small,.risk-ranking-row small{color:#89919b;margin-top:3px;font-size:.68rem}.risk-score{color:#173a64;text-align:right;font-size:1.05rem}.vendor-logo{color:#173a64;background:#fff;border:1px solid #dce3ed;border-radius:5px 5px 13px;flex:none;place-items:center;width:38px;height:38px;font-size:.68rem;font-weight:800;display:grid;overflow:hidden}.vendor-logo.large{border-radius:7px 7px 19px;width:58px;height:58px;font-size:.86rem}.vendor-logo img{object-fit:contain;width:72%;height:72%}.review-pill,.risk-badge{white-space:nowrap;border-radius:999px;align-items:center;width:fit-content;font-size:.64rem;font-weight:750;line-height:1;display:inline-flex}.review-pill{padding:6px 9px}.review-pill.current{color:#24704a;background:#e8f6ef}.review-pill.due{color:#8a5619;background:#fff1dc}.review-pill.overdue{color:#9c2e35;background:#fbe7e9}.review-pill.as-needed{color:#59636e;background:#edf0f3}.risk-badge{padding:6px 9px}.risk-critical{color:#8b252d;background:#fbe4e7}.risk-high{color:#96521a;background:#ffecd8}.risk-moderate{color:#675f19;background:#f5f1cf}.risk-low{color:#27704c;background:#e4f4eb}.risk-unrated{color:#59636e;background:#edf0f3}.distribution-list{gap:20px;margin-top:28px;display:grid}.distribution-row{color:#59636e;grid-template-columns:67px minmax(80px,1fr) 24px;align-items:center;gap:10px;font-size:.74rem;display:grid}.distribution-row>div{background:#edf0f4;border-radius:999px;height:9px;overflow:hidden}.distribution-row i{border-radius:inherit;background:#446da9;min-width:6px;height:100%;display:block}.distribution-row .bar-critical{background:#b43b46}.distribution-row .bar-high{background:#d97820}.distribution-row .bar-moderate{background:#b4a52e}.distribution-row .bar-low{background:#3e9b6b}.distribution-row strong{color:#24272a;text-align:right}.analytics-landscape-panel{margin-top:24px;overflow:hidden}.landscape-frame{margin-top:22px;padding:0 16px 30px 50px;position:relative}.landscape-y-label{color:#89919b;letter-spacing:.05em;text-transform:uppercase;font-size:.62rem;font-weight:720;position:absolute;top:50%;left:2px;transform:translate(-40%,-50%)rotate(-90deg)}.risk-landscape-chart{background:repeating-linear-gradient(90deg,#0000 0 calc(20% - 1px),#173a640f 20%),linear-gradient(#b43b460b 0 25%,#d978200a 25% 50%,#b4a52e09 50% 75%,#3e9b6b0a 75% 100%),#fbfcfd;border:1px solid #dce3ed;border-radius:5px 5px 25px;height:410px;position:relative}.risk-landscape-chart:after{content:"";background:linear-gradient(90deg,#93d500,#446da9,#95268f);height:2px;position:absolute;bottom:-1px;left:0;right:0}.impact-band{z-index:1;color:#89919b;letter-spacing:.04em;text-transform:uppercase;font-size:.59rem;font-weight:750;position:absolute;left:12px}.band-critical{top:5%}.band-high{top:29%}.band-moderate{top:54%}.band-low{top:79%}.risk-axis-label{color:#89919b;font-size:.61rem;position:absolute;bottom:-23px}.axis-low{left:0}.axis-high{right:0}.landscape-bubble{z-index:2;color:#30343a;background:#ffffffe0;border:2px solid #446da94d;border-radius:50%;place-items:center;text-decoration:none;transition:z-index,transform .15s,box-shadow .15s;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 8px 20px #173a641f}.landscape-bubble:hover,.landscape-bubble:focus-visible{z-index:5;outline:none;transform:translate(-50%,-50%)scale(1.1);box-shadow:0 12px 28px #173a6438}.landscape-bubble>.vendor-logo{width:32px;height:32px;box-shadow:none;border:0}.landscape-bubble>span:last-child{color:#fff;text-align:center;background:#173a64;border-radius:5px;width:max-content;max-width:150px;padding:5px 7px;font-size:.61rem;font-weight:700;display:none;position:absolute;top:calc(100% + 5px);left:50%;transform:translate(-50%)}.landscape-bubble:hover>span:last-child,.landscape-bubble:focus-visible>span:last-child{display:block}.bubble-critical{background:#fbe4e7f0;border-color:#b43b469e}.bubble-high{background:#ffecd8f0;border-color:#d9782085}.bubble-moderate{background:#f5f1cff0;border-color:#b4a52e85}.bubble-low{background:#e4f4ebf0;border-color:#3e9b6b85}.analytics-grid,.lifecycle-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px;display:grid}.spend-ranking{margin-top:6px}.spend-row{min-height:66px;color:inherit;border-bottom:1px solid #edf0f4;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 4px;text-decoration:none;display:grid}.spend-row:hover{background:#f7f9fc}.spend-row>span{min-width:0}.spend-row>span strong{color:#30343a;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;display:block;overflow:hidden}.spend-row>span i{background:#edf0f4;border-radius:999px;height:5px;margin-top:7px;display:block;overflow:hidden}.spend-row>span b{border-radius:inherit;background:linear-gradient(90deg,#446da9,#95268f);height:100%;display:block}.spend-row>strong{color:#173a64;font-size:.71rem}.exposure-list{gap:23px;margin-top:24px;display:grid}.exposure-row>div{justify-content:space-between;align-items:center;gap:16px;display:flex}.exposure-row>div>strong{color:#30343a;font-size:.78rem}.exposure-row>span{background:#edf0f4;border-radius:999px;height:9px;margin-top:10px;display:block;overflow:hidden}.exposure-row>span>i{border-radius:inherit;background:#446da9;min-width:5px;height:100%;display:block}.exposure-row .bar-critical{background:#b43b46}.exposure-row .bar-high{background:#d97820}.exposure-row .bar-moderate{background:#b4a52e}.exposure-row .bar-low{background:#3e9b6b}.exposure-row small{color:#89919b;text-align:right;margin-top:6px;font-size:.61rem;display:block}.lifecycle-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:24px;display:grid}.lifecycle-metrics article{background:#fff;border:1px solid #dce3ed;border-radius:5px 5px 24px;min-height:124px;padding:20px;position:relative;overflow:hidden;box-shadow:0 10px 24px #173a640d}.lifecycle-metrics article:before{content:"";background:#446da9;width:44px;height:4px;position:absolute;top:0;left:0}.lifecycle-metrics article.attention:before{background:#d97820}.lifecycle-metrics span,.lifecycle-metrics small{color:#89919b;font-size:.66rem;display:block}.lifecycle-metrics span{font-weight:700}.lifecycle-metrics strong{color:#173a64;margin:11px 0 6px;font-size:1.9rem;line-height:1;display:block}.contract-timeline-panel{margin-top:18px;overflow:hidden}.timeline-scroll{cursor:grab;scrollbar-color:#aebed1 #edf0f4;scrollbar-width:thin;margin-top:22px;padding:8px 4px 12px;overflow:auto hidden}.timeline-scroll.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.timeline-scroll .timeline-vendor{cursor:inherit}.contract-timeline{height:365px;margin:0 24px;position:relative}.timeline-axis{background:linear-gradient(90deg,#93d500 0%,#446da9 55%,#95268f 100%);border-radius:999px;height:3px;position:absolute;top:50%;left:0;right:0;box-shadow:0 0 0 5px #446da90f}.timeline-year{color:#89919b;font-size:.62rem;position:absolute;top:calc(50% + 13px);transform:translate(-50%)}.timeline-year i{background:#b6c2d1;width:1px;height:10px;position:absolute;top:-17px;left:50%}.timeline-vendor{z-index:2;width:152px;color:inherit;background:#fffffff5;border:1px solid #dce3ed;border-radius:5px 5px 17px;grid-template-columns:38px 106px;align-items:center;gap:8px;padding:7px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid;position:absolute;transform:translate(-50%);box-shadow:0 8px 18px #173a6417}.timeline-vendor:hover,.timeline-vendor:focus-visible{z-index:5;border-color:#8ea8ca;outline:none;transform:translate(-50%)translateY(-2px);box-shadow:0 13px 27px #173a642b}.timeline-vendor:after{content:"";background:#9fb1c7;width:1px;height:43px;position:absolute;left:50%}.timeline-vendor:before{z-index:2;content:"";background:#446da9;border:2px solid #fff;border-radius:50%;width:10px;height:10px;position:absolute;left:calc(50% - 5px);box-shadow:0 0 0 2px #446da92e}.timeline-vendor.timeline-above{top:47px}.timeline-vendor.timeline-above:after{top:100%}.timeline-vendor.timeline-above:before{top:calc(100% + 38px)}.timeline-vendor.timeline-below{top:calc(50% + 55px)}.timeline-vendor.timeline-below:after{bottom:100%}.timeline-vendor.timeline-below:before{bottom:calc(100% + 38px)}.timeline-vendor>span:last-child{min-width:0}.timeline-vendor strong,.timeline-vendor small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.timeline-vendor strong{color:#30343a;font-size:.68rem}.timeline-vendor small{color:#89919b;margin-top:4px;font-size:.58rem}.lifecycle-list{margin-top:4px}.lifecycle-list>a{min-height:64px;color:inherit;border-bottom:1px solid #edf0f4;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px 4px;text-decoration:none;display:grid}.lifecycle-list>a:hover{background:#f7f9fc}.lifecycle-list>a>span:nth-child(2){min-width:0}.lifecycle-list strong,.lifecycle-list small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.lifecycle-list strong{color:#30343a;font-size:.76rem}.lifecycle-list small{color:#89919b;margin-top:3px;font-size:.64rem}.lifecycle-list time{color:#59636e;white-space:nowrap;font-size:.66rem}.vendor-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-top:24px;display:flex}.vendor-search{background:#fff;border:1px solid #cfd7e2;border-radius:5px;align-items:center;gap:10px;width:min(100%,520px);height:44px;padding:0 14px;display:flex}.vendor-search:focus-within{border-color:#446da9;box-shadow:0 0 0 3px #446da91f}.vendor-search svg{fill:none;stroke:#75808c;stroke-width:1.8px;stroke-linecap:round;width:18px;height:18px}.vendor-search input{color:#24272a;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:0;font-size:.82rem}.view-toggle{background:#fff;border:1px solid #cfd7e2;border-radius:5px;padding:3px;display:flex}.view-toggle button{color:#68727d;cursor:pointer;background:0 0;border:0;border-radius:3px;align-items:center;gap:6px;min-height:34px;padding:7px 11px;font-size:.72rem;font-weight:700;display:flex}.view-toggle button.active{color:#fff;background:#446da9}.view-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:16px;height:16px}.vendor-count{color:#89919b;margin:16px 0 9px;font-size:.72rem}.vendor-table-wrap{background:#fff;border:1px solid #dce3ed;border-radius:5px 5px 26px;overflow-x:auto;box-shadow:0 12px 28px #173a640d}.vendor-table{border-collapse:collapse;text-align:left;width:100%;min-width:1020px}.vendor-table th{color:#6d6d74;letter-spacing:.03em;text-transform:uppercase;background:#f7f9fb;border-bottom:1px solid #dce3ed;padding:14px 16px;font-size:.66rem;font-weight:750}.vendor-table td{color:#59636e;vertical-align:middle;border-bottom:1px solid #edf0f4;padding:13px 16px;font-size:.74rem}.vendor-table tbody tr{cursor:pointer;transition:background .14s,box-shadow .14s}.vendor-table tbody tr:last-child td{border-bottom:0}.vendor-table tbody tr:hover,.vendor-table tbody tr:focus-visible{background:#f5f8fc;outline:none;box-shadow:inset 3px 0 #446da9}.vendor-name-cell{align-items:center;gap:11px;min-width:190px;display:flex}.vendor-name-cell>span:last-child{min-width:0}.vendor-name-cell strong,.vendor-name-cell small{display:block}.vendor-name-cell strong{color:#24272a;font-size:.77rem}.vendor-name-cell small{color:#89919b;margin-top:3px;font-size:.65rem}.score-cell{align-items:center;gap:8px;display:flex}.score-cell>strong{color:#173a64;font-size:.78rem}.review-date{color:#89919b;white-space:nowrap;margin-top:5px;font-size:.62rem;display:block}.row-arrow{color:#446da9;font-size:1.5rem;line-height:1}.vendor-card-grid{grid-template-columns:repeat(3,minmax(240px,1fr));gap:16px;display:grid}.vendor-card{color:#24272a;cursor:pointer;text-align:left;background:#fff;border:1px solid #dce3ed;border-radius:5px 5px 34px;flex-direction:column;min-height:350px;padding:22px;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex;overflow:hidden;box-shadow:0 12px 28px #173a640d}.vendor-card:hover,.vendor-card:focus-visible{border-color:#9fb3ce;outline:none;transform:translateY(-2px);box-shadow:0 17px 36px #173a641f}.vendor-card-top{justify-content:space-between;align-items:flex-start;display:flex}.vendor-card-status{color:#4b795e;align-items:center;gap:6px;font-size:.67rem;font-weight:700;display:flex}.vendor-card-status i{background:#39a86b;border-radius:50%;width:7px;height:7px}.vendor-card-title{margin-top:18px;display:block}.vendor-card-title strong,.vendor-card-title small{display:block}.vendor-card-title strong{letter-spacing:-.02em;font-size:1.12rem}.vendor-card-title small{color:#89919b;margin-top:4px;font-size:.68rem}.vendor-card-description{color:#626b75;-webkit-line-clamp:3;-webkit-box-orient:vertical;min-height:59px;margin-top:14px;font-size:.73rem;line-height:1.55;display:-webkit-box;overflow:hidden}.vendor-card-tags{flex-wrap:wrap;gap:6px;margin-top:16px;display:flex}.vendor-card-meta{border-top:1px solid #edf0f4;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px;padding:15px 0;display:grid}.vendor-card-meta>span,.vendor-card-meta small,.vendor-card-meta strong{display:block}.vendor-card-meta small{color:#89919b;font-size:.62rem}.vendor-card-meta strong{color:#3f4851;margin-top:4px;font-size:.69rem}.review-text-due{color:#96521a!important}.review-text-overdue{color:#9c2e35!important}.vendor-card-link{color:#446da9;justify-content:space-between;align-items:center;margin-top:auto;font-size:.72rem;font-weight:750;display:flex}.vendor-card-link b{font-size:1.05rem}.back-link{color:#446da9;margin-bottom:20px;font-size:.77rem;font-weight:700;text-decoration:none;display:inline-block}.vendor-detail-header{border-bottom:1px solid #dce3ed;grid-template-columns:62px minmax(0,1fr) auto;align-items:center;gap:18px;padding-bottom:24px;display:grid}.vendor-detail-title h1{color:#24272a;letter-spacing:-.04em;margin:0;font-size:clamp(2rem,4vw,3.15rem);line-height:1}.vendor-detail-title>a{color:#446da9;margin-top:8px;font-size:.75rem;text-decoration:none;display:inline-block}.vendor-detail-badges{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.detail-layout{grid-template-columns:minmax(0,1fr) 310px;gap:18px;margin-top:22px;display:grid}.detail-main{align-content:start;gap:18px;display:grid}.vendor-service-summary{color:#59636e;margin:20px 0 4px;font-size:.82rem;line-height:1.65}.vendor-facts{grid-template-columns:1fr 1fr;gap:0;margin:18px 0 0;display:grid}.vendor-facts>div{border-top:1px solid #edf0f4;min-height:83px;padding:17px 18px}.vendor-facts>div:nth-child(odd){border-right:1px solid #edf0f4}.vendor-facts .fact-wide{border-right:0;grid-column:1/-1}.vendor-facts dt,.review-summary-panel dt{color:#89919b;font-size:.65rem}.vendor-facts dd,.review-summary-panel dd{color:#30343a;margin:6px 0 0;font-size:.78rem;font-weight:650;line-height:1.45}.active-status{align-items:center;gap:6px;display:inline-flex}.active-status i{background:#39a86b;border-radius:50%;width:7px;height:7px}.detail-sidebar{align-content:start;gap:18px;display:grid}.risk-summary-panel{text-align:center}.risk-summary-panel .eyebrow{text-align:left}.large-risk-score{color:#173a64;margin:20px 0 12px}.large-risk-score strong{letter-spacing:-.06em;font-size:3.6rem;line-height:1}.large-risk-score span{color:#89919b;margin-left:5px;font-size:.75rem}.risk-summary-panel>.risk-badge{margin:0 auto}.risk-summary-panel>small{color:#89919b;margin-top:16px;font-size:.66rem;line-height:1.55;display:block}.review-summary-panel>.review-pill{margin-top:13px}.review-summary-panel dl{margin:16px 0 0}.review-summary-panel dl>div{border-top:1px solid #edf0f4;padding:13px 0}.document-empty-state{background:#f9fafc;border:1px dashed #cbd5e2;border-radius:5px 5px 24px;align-items:center;gap:18px;min-height:165px;padding:24px;display:flex}.document-icon{color:#446da9;background:#eaf0f8;border-radius:5px 5px 17px;flex:none;place-items:center;width:52px;height:52px;display:grid}.document-icon svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:25px;height:25px}.document-empty-state strong{color:#30343a;font-size:.87rem}.document-empty-state p{color:#7b848e;max-width:590px;margin:7px 0 0;font-size:.72rem;line-height:1.55}.contract-panel .panel-heading{margin-bottom:18px}.detail-disclaimer{color:#89919b;text-align:center;margin:18px 0 0;font-size:.67rem}.monitoring-page-heading{padding-bottom:14px}.monitoring-page-heading .eyebrow{margin-bottom:5px;font-size:.64rem}.monitoring-page-heading h1{letter-spacing:-.02em;font-size:clamp(1.25rem,1.7vw,1.55rem)}.monitoring-page-heading .data-disclaimer{font-size:.66rem}.monitoring-control-grid{grid-template-columns:minmax(360px,.92fr) minmax(440px,1.08fr);gap:12px;margin-top:14px;display:grid}.monitoring-run-panel,.monitoring-progress-panel,.monitoring-candidate-panel{background:#fff;border:1px solid #dce3ed;border-radius:5px 5px 32px;box-shadow:0 12px 28px #173a640d}.monitoring-run-panel,.monitoring-progress-panel{padding:15px 17px}.monitoring-candidate-panel{border-top:3px solid #446da9;padding:24px;box-shadow:0 15px 34px #173a6412}.monitoring-control-grid .panel-heading{gap:12px;padding-bottom:9px}.monitoring-control-grid .panel-heading .eyebrow{margin-bottom:3px;font-size:.6rem}.monitoring-control-grid .panel-heading h2{font-size:.9rem}.monitoring-control-grid .panel-heading>span{font-size:.62rem}.monitoring-date-fields{grid-template-columns:1fr auto 1fr;align-items:end;gap:8px;margin-top:11px;display:grid}.monitoring-date-fields>span{color:#8a94a0;padding-bottom:8px;font-size:.82rem}.monitoring-date-fields label{color:#4b5560;gap:4px;font-size:.62rem;font-weight:720;display:grid}.monitoring-date-fields input{color:#30343a;background:#fff;border:1px solid #cbd5e2;border-radius:5px;width:100%;min-height:34px;padding:5px 8px;font-size:.72rem}.monitoring-date-fields input:focus{border-color:#446da9}.monitoring-date-fields input:disabled{color:#8a94a0;background:#f3f5f7}.monitoring-helper{color:#7d8792;margin:8px 0 0;font-size:.6rem;line-height:1.4}.monitoring-run-button{border-radius:4px 4px 14px;margin-top:10px;padding:8px 12px;font-size:.7rem}.monitoring-status{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:5px 9px;font-weight:760;font-size:.62rem!important}.status-pending,.status-fetching{background:#e8f0fa;color:#285786!important}.status-completed{background:#e7f5ed;color:#28704b!important}.status-failed{background:#fbe8ea;color:#97323b!important}.monitoring-progress-stack{gap:12px;margin-top:11px;display:grid}.monitoring-progress-item>div:first-child{justify-content:space-between;align-items:center;gap:18px;display:flex}.monitoring-progress-item strong{color:#3a434c;font-size:.66rem}.monitoring-progress-item>div:first-child span{color:#446da9;font-size:.64rem;font-weight:780}.monitoring-progress-track{background:#edf1f5;border-radius:999px;height:7px;margin-top:6px;overflow:hidden;box-shadow:inset 0 1px 2px #173a6414}.monitoring-progress-track i{border-radius:inherit;background:linear-gradient(90deg,#446da9,#6b78b5,#95268f);height:100%;transition:width .4s;display:block}.monitoring-progress-item small{color:#89919b;margin-top:4px;font-size:.58rem;line-height:1.35;display:block}.monitoring-progress-item.analysis-disabled{border-top:1px solid #e7ebf0;padding-top:11px}.monitoring-progress-item.analysis-disabled .monitoring-progress-track i{background:#b8c1cb}.monitoring-results-section{margin-top:12px}.monitoring-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.monitoring-metrics article{background:#fff;border:1px solid #dce3ed;border-radius:5px 5px 18px;min-height:72px;padding:13px 16px;position:relative;overflow:hidden;box-shadow:0 9px 22px #173a640b}.monitoring-metrics article:before{content:"";background:#446da9;width:42px;height:4px;position:absolute;top:0;left:0}.monitoring-metrics span{color:#89919b;font-size:.66rem;font-weight:700;display:block}.monitoring-metrics strong{color:#173a64;margin-top:7px;font-size:1.35rem;line-height:1;display:block}.candidate-preview-note{color:#6c747d;background:#fff8f0;border-left:3px solid #d97820;margin:17px 0;padding:11px 13px;font-size:.67rem;line-height:1.5}.monitoring-candidate-list{display:grid}.monitoring-candidate{min-height:116px;color:inherit;border-bottom:1px solid #e8ecf1;grid-template-columns:58px minmax(0,1fr) 24px;align-items:center;gap:15px;padding:17px 5px;text-decoration:none;transition:background .14s;display:grid}.monitoring-candidate:last-child{border-bottom:0}.monitoring-candidate:hover,.monitoring-candidate:focus-visible{background:#f7f9fc;outline:none}.candidate-score{color:#173a64;background:#edf3fa;border:1px solid #bac9db;border-radius:5px 5px 17px;place-items:center;width:52px;height:57px;display:grid}.candidate-score strong{font-size:1.25rem;line-height:1}.candidate-score span{color:#788594;text-transform:uppercase;margin-top:-5px;font-size:.55rem}.candidate-content{min-width:0}.candidate-vendor-line{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.candidate-vendor-line strong{color:#446da9;font-size:.69rem}.candidate-vendor-line span{color:#89919b;border-left:1px solid #d6dde6;padding-left:8px;font-size:.61rem}.candidate-content h3{color:#30343a;margin:7px 0 9px;font-size:.9rem;line-height:1.42}.candidate-rule-tags{flex-wrap:wrap;gap:6px;display:flex}.candidate-rule-tags span,.candidate-rule-tags small{border-radius:999px;padding:4px 7px;font-size:.56rem;font-weight:680}.candidate-rule-tags span{color:#8c373e;background:#f9e9ea}.candidate-rule-tags small{color:#59636e;background:#eef1f4}.candidate-open{color:#446da9;font-size:1.1rem}.monitoring-empty-state{color:#89919b;text-align:center;place-items:center;min-height:180px;display:grid}.monitoring-empty-state strong{color:#4f5963;font-size:.88rem}.monitoring-empty-state span{margin-top:7px;font-size:.68rem}@media (width<=820px){.login-page{grid-template-columns:1fr}.login-introduction{min-height:330px;padding:30px}.login-brand{gap:12px;padding:12px 16px}.login-brand img{width:170px}.prototype-identity{padding-left:12px}.introduction-copy{padding:48px 0 30px}.introduction-copy h1{max-width:680px}.login-panel{padding:24px}.workspace-shell{--sidebar-width:84px}.workspace-shell.sidebar-hidden{grid-template-columns:0 minmax(0,1fr)}.sidebar{width:84px;overflow:visible}.sidebar-brand{min-height:88px;padding:18px 13px}.sidebar-brand img{object-fit:cover;object-position:left;width:43px;height:43px}.sidebar-brand div,.navigation-label,.navigation-text,.navigation-badge,.account-summary{display:none}.primary-navigation{padding:20px 12px}.navigation-item{grid-template-columns:1fr;justify-items:center;padding:10px}.dashboard-navigation-row .navigation-item{padding-right:10px}.dashboard-menu-toggle{display:none}.dashboard-navigation-group{position:relative}.dashboard-subnavigation{z-index:40;background:#173a64;border:1px solid #ffffff2e;border-radius:5px 5px 18px;gap:3px;width:188px;margin:0;padding:8px;display:grid;position:absolute;top:0;left:67px;box-shadow:0 16px 32px #061a3152}.dashboard-subnavigation a{color:#ffffffc7;min-height:39px;padding:8px 10px;font-size:.75rem}.sidebar-account{grid-template-columns:1fr;justify-items:center;padding:15px 10px}.sidebar-account button{margin-top:4px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.dashboard-wide{grid-column:auto}.analytics-grid,.lifecycle-grid{grid-template-columns:1fr}.lifecycle-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.vendor-card-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}.detail-layout{grid-template-columns:1fr}.detail-sidebar{grid-template-columns:1fr 1fr}.monitoring-control-grid{grid-template-columns:1fr}}@media (width<=560px){.login-introduction{min-height:290px}.login-panel{padding:16px}.login-form{padding:28px 22px}.workspace-header{padding:12px 18px}.prototype-status{display:none}.workspace-content{padding:28px 20px}.page-heading-with-note{flex-direction:column;align-items:flex-start}.data-disclaimer{text-align:left}.metric-grid,.lifecycle-metrics,.vendor-card-grid,.detail-sidebar{grid-template-columns:1fr}.landscape-frame{padding-left:30px}.risk-landscape-chart{height:360px}.landscape-y-label{display:none}.vendor-toolbar{flex-direction:column;align-items:stretch}.view-toggle{align-self:flex-end}.vendor-detail-header{grid-template-columns:58px minmax(0,1fr)}.vendor-detail-badges{grid-column:1/-1;justify-content:flex-start}.vendor-facts{grid-template-columns:1fr}.vendor-facts>div:nth-child(odd){border-right:0}.vendor-facts .fact-wide{grid-column:auto}.document-empty-state{flex-direction:column;align-items:flex-start}.monitoring-date-fields{grid-template-columns:1fr}.monitoring-date-fields>span{display:none}.monitoring-metrics{grid-template-columns:1fr}.monitoring-candidate{grid-template-columns:50px minmax(0,1fr)}.candidate-open{display:none}}
