.project-overview{display:grid;grid-template-columns:var(--ui-sidebar-width,228px) minmax(0,1fr);min-height:calc(100dvh - var(--ui-header-height));color:var(--ui-text,#30383b);font:13px/1.5 var(--sans);background:#fff}
.project-overview[hidden]{display:none}.project-overview *{box-sizing:border-box}.ov-rail{padding:28px 24px;background:var(--ui-sidebar,#f8f9fa);border-right:1px solid var(--ui-border,#e1e6e8);display:flex;flex-direction:column;min-width:0}.ov-kicker{font-size:10px;letter-spacing:1.1px;font-weight:600;color:#75837c;margin:0 0 14px}.ov-rail nav{display:grid;gap:4px;margin:0 -9px 28px}.ov-rail nav button{padding:10px;text-align:left;color:#68756d;font-size:12px;border-radius:5px;display:flex;align-items:center;justify-content:space-between;gap:6px}.ov-rail nav button[aria-current]{background:#e8eee8;color:#324b3a;font-weight:600}.ov-rail small{font-size:9px;color:#7e8a82}.ov-rail-work{display:grid;gap:16px}.ov-rail-work button{display:flex;gap:9px;align-items:flex-start;text-align:left;font-size:11px;line-height:1.5;min-width:0}.ov-rail-work span{overflow-wrap:anywhere}.ov-rail-work small{display:block;margin-top:4px}.ov-dot{display:inline-block;width:6px;height:6px;flex:none;border-radius:50%;margin-top:5px;background:#8b9a8e}.ov-dot[data-status=running]{background:#688768}.ov-dot[data-status=failed]{background:#b46e4c}.ov-rail-bottom{display:grid;gap:12px;margin-top:auto;padding-top:40px}.ov-main{padding:28px 36px 50px;min-width:0}.ov-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:0 0 24px;border-bottom:1px solid #e4e9e5}.ov-title-group{min-width:0}.ov-title-button{display:flex;align-items:center;gap:14px;max-width:100%;text-align:left;color:inherit}.ov-title-button h1{font-size:25px;letter-spacing:-.7px;line-height:1.25;font-weight:600;margin:0;overflow-wrap:anywhere}.ov-title-button>span{color:#8b978e;font-size:18px}.ov-objective{font-size:12px;color:#647167;max-width:800px;margin:10px 0;overflow-wrap:anywhere}.ov-project-meta{display:flex;align-items:center;gap:15px;flex-wrap:wrap;font-size:10px;color:#7b877e}.ov-header-actions{display:flex;align-items:center;gap:8px;flex:none;padding-top:3px}.ov-header-actions .button{white-space:nowrap;font-size:11px}.ov-link{color:#4c6654;font-size:11px;text-align:left;background:none;border:0;padding:0;line-height:1.5}.ov-link:hover{text-decoration:underline}.ov-status{display:inline-flex;align-items:center;gap:5px;font-size:10px;color:#718071;background:#f2f5f0;border-radius:3px;padding:2px 6px;font-weight:500;white-space:nowrap}.ov-status[data-status=running],.ov-status[data-status=active]{color:#436746;background:#eef4e9}.ov-status[data-status=failed]{color:#98603f;background:#fbf2e8}.ov-status[data-status=completed]{color:#4c6454;background:#edf3ee}.ov-status[data-status=skipped]{color:#89928b;background:#f6f7f5}.ov-section{padding:24px 0;border-bottom:1px solid #e4e9e5;min-width:0}.ov-section h2{font-size:14px;letter-spacing:-.1px;font-weight:600;margin:0}.ov-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.ov-section-head p{font-size:11px;color:#65786b;margin:5px 0 0}.ov-subtle,.ov-muted{font-size:11px;color:#7e897f}.ov-muted{line-height:1.7}.ov-section p{overflow-wrap:anywhere}.ov-now-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.ov-now-item{position:relative;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:7px;min-width:0;padding:0 14px 0 0;background:transparent;border-right:1px solid #e6ebe5;overflow-wrap:anywhere;color:inherit}.ov-now-item:last-child{border:0}.ov-now-item>small{color:#7b877e;font-size:10px}.ov-now-item>strong{font-size:12px;font-weight:600;line-height:1.5}.ov-now-item>span{color:#7b857d;font-size:10px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ov-now-item>b{position:absolute;right:8px;top:0;color:#869388;font-weight:400}.ov-empty{padding:28px 0}.ov-empty h2{font-size:20px;letter-spacing:-.4px}.ov-empty p:not(.ov-kicker){color:#748176;font-size:12px;max-width:620px}.ov-empty-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.ov-empty-actions .button{font-size:11px}.ov-workflow-controls{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.ov-workflow-controls select{max-width:230px;font-size:11px;padding:7px 9px;border:1px solid #dbe3dc;border-radius:4px;background:white}.ov-workflow-progress{display:flex;gap:12px;align-items:center;font-size:10px;color:#7b887d;margin-bottom:14px}.ov-workflow-scroll{overflow:auto;max-width:100%;padding:3px 2px 9px}.ov-workflow-lanes{display:flex;gap:26px;align-items:center;width:max-content;min-width:100%}.ov-workflow-lane{display:grid;gap:12px;width:174px;flex:none}.ov-node{display:flex;align-items:flex-start;flex-direction:column;position:relative;gap:7px;width:100%;min-height:108px;padding:13px;background:#fafbf9;border:1px solid #dfe6dc;border-radius:6px;text-align:left;color:#3d5343}.ov-node strong{font-size:12px;line-height:1.5;overflow-wrap:anywhere}.ov-node>small,.ov-node-type{font-size:9px;color:#7b887d}.ov-node[data-status=running]{border-color:#7b9472;background:#f2f6ed}.ov-node[data-status=completed]{background:#f0f5eb}.ov-node[data-status=skipped]{opacity:.65}.ov-workflow-lane:not(:last-child) .ov-node:after{content:'→';position:absolute;right:-22px;top:45%;color:#99a693}.ov-node:hover,.ov-node:focus-visible{border-color:#75936e}.ov-step-preview{min-height:48px;font-size:10px;color:#7f8a81;padding:10px 0 0;display:flex;flex-wrap:wrap;gap:3px 10px;align-content:flex-start}.ov-step-preview strong{color:#506853;font-weight:500}.ov-metrics{display:flex;flex-wrap:wrap;gap:30px;border-bottom:1px solid #e4e9e5;padding:20px 0}.ov-metrics>button,.ov-metrics>div{display:flex;align-items:baseline;gap:9px;text-align:left;color:inherit}.ov-metrics strong{font-size:20px;font-weight:500;letter-spacing:-.6px}.ov-metrics span{color:#7e897f;font-size:10px}.ov-detail-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:36px}.ov-team-tools{min-width:0}.ov-count{display:inline-block;color:#917958;font-size:10px;font-weight:500;border:1px solid #e7dfd1;border-radius:4px;padding:0 5px;margin-left:5px}.ov-attention-row{display:flex;gap:10px;border-top:1px solid #eef1ec;padding:15px 0}.ov-attention-row>.ov-dot{background:#b89a60}.ov-attention-row[data-severity=info]>.ov-dot{background:#9eab9e}.ov-attention-row strong{font-size:12px;font-weight:500}.ov-attention-row p{font-size:11px;color:#7c877e;line-height:1.6;margin:5px 0 7px}.ov-team-row{display:flex;align-items:center;gap:10px;padding:9px 0;min-width:0}.ov-avatar{display:grid;place-items:center;position:relative;flex:none;width:29px;height:29px;border-radius:50%;color:#68766b;background:#eef2ec;font-size:10px;border:1px solid #e0e7dc}.ov-avatar[data-online=true]:after{content:'';position:absolute;right:-1px;bottom:-1px;width:7px;height:7px;background:#71966c;border:2px solid white;border-radius:50%}.ov-team-row>div{min-width:0;flex:1}.ov-team-row strong{display:block;font-size:11px;font-weight:500}.ov-team-row small{display:block;font-size:10px;color:#8b948d;margin-top:3px}.ov-team-location{font-size:10px;color:#758573;display:block;text-align:left;margin-top:3px;overflow-wrap:anywhere}.ov-presence-label{font-size:9px;color:#87938a}.ov-footnote{font-size:10px;color:#8a958b;line-height:1.6;margin:16px 0 0}.ov-action{display:flex;gap:12px;align-items:center;padding:12px 0;border-top:1px solid #eef1ec}.ov-action>div{flex:1;min-width:0}.ov-action strong{font-size:11px;font-weight:500}.ov-action p{font-size:10px;color:#7b877e;line-height:1.6;margin:4px 0 0}.ov-action .button{font-size:10px;flex:none}.ov-recent-runs summary{font-size:11px;color:#6d7e6e;cursor:pointer;margin-top:15px}.ov-recent-runs button{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;width:100%;font-size:11px;border-top:1px solid #edf0e9;padding:10px 0}.ov-recent-runs small{display:block;color:#8b958c;font-size:10px;margin-top:3px}.ov-pulse ol{list-style:none;padding:0;margin:0}.ov-pulse li{display:flex;align-items:flex-start;gap:24px;padding:12px 0;border-top:1px solid #eef1ec}.ov-pulse time{flex:none;width:75px;color:#8b968c;font-size:10px;padding-top:2px}.ov-pulse li>div{min-width:0}.ov-pulse strong,.ov-pulse .ov-link{font-size:11px;font-weight:500}.ov-pulse p{font-size:10px;color:#7b877d;margin:5px 0 0;line-height:1.6}.ov-pulse small{color:#8b978e;font-size:9px}.ov-notice{font-size:11px;border:1px solid #e6ddcd;padding:10px 12px;background:#fbf8f0;color:#827154;border-radius:4px}.ov-loading{padding:35px 0}.ov-skeleton{height:12px;width:50%;background:#f0f3ef;border-radius:4px;margin:14px 0}.ov-skeleton-title{height:26px;width:68%}.ov-skeleton-panel{height:140px;width:100%;margin-top:45px}.project-overview :focus-visible{outline:2px solid #718e74;outline-offset:3px}
@media(min-width:1700px){.ov-main{padding:32px 50px 60px}.ov-workflow-lane{width:196px}}
@media(max-width:1100px){.ov-main{padding:25px}.ov-now-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.ov-now-item:nth-child(2){border:0}.ov-header{flex-wrap:wrap;gap:14px}.ov-detail-grid{gap:24px}.ov-title-button h1{font-size:23px}}
@media(max-width:850px){.project-overview{display:block}.ov-rail{padding:12px 22px;border-right:0;border-bottom:1px solid #e4e9e5;display:block}.ov-rail>.ov-kicker,.ov-rail-work,.ov-rail-bottom{display:none}.ov-rail nav{display:flex;gap:7px;margin:0;overflow:auto}.ov-rail nav button{flex:none;gap:8px;font-size:11px;min-height:40px}.ov-main{padding:22px}.ov-detail-grid{grid-template-columns:1fr 1fr}.ov-header-actions{padding:0}}
@media(max-width:620px){.ov-main{padding:20px 16px}.ov-rail{padding:8px 12px}.ov-title-button h1{font-size:22px}.ov-now-grid{gap:18px 12px}.ov-now-item{padding-right:8px}.ov-detail-grid{grid-template-columns:1fr;gap:0}.ov-now-item strong{font-size:11px}.ov-header-actions .button,.ov-empty-actions .button{min-height:40px}.ov-header{padding-bottom:20px}.ov-section{padding:20px 0}.ov-section-head{align-items:flex-start}.ov-workflow-controls{justify-content:flex-end;max-width:50%}.ov-workflow-controls select{max-width:100%}.ov-metrics{gap:15px 22px}.ov-metrics>button,.ov-metrics>div{display:grid;gap:2px}.ov-pulse li{gap:12px}.ov-pulse time{width:60px}.ov-rail nav button small{display:none}.ov-now-item>b{right:3px}.ov-title-group{width:100%}.ov-workflow-lane{width:155px}}
.ov-header-actions .button.gold,.ov-empty-actions .button.gold{font-size:12px}.ov-node[data-status=failed]{border-color:#c39770;background:#fbf6ee}
.ov-recorded-gap{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:20px;padding:16px 20px;border:1px solid #e6ddcd;border-radius:6px;background:#fbf8f0;color:#554b3b}.ov-gap-evidence{min-width:0}.ov-recorded-gap h2{font-size:11px;font-weight:600;margin:0 0 5px;color:#827154}.ov-gap-measurement{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;margin:0;font-size:13px;overflow-wrap:anywhere}.ov-gap-measurement>strong{font-size:26px;font-weight:600;line-height:1.25;letter-spacing:-.5px}.ov-gap-target{display:inline-block;color:#76684f}.ov-gap-condition{font-size:12px;margin:5px 0 0;overflow-wrap:anywhere}.ov-gap-provenance{font-size:10px;color:#827762;margin:5px 0 0;overflow-wrap:anywhere}.ov-gap-revised{font-weight:600;color:#765626}.ov-recorded-gap>.ov-link{flex:none;font-size:12px;padding:8px 0}
@media(max-width:620px){.ov-recorded-gap{align-items:flex-start;flex-direction:column;gap:6px;padding:14px 16px}.ov-gap-measurement{gap:4px 10px}.ov-gap-measurement>strong{font-size:24px}}
/* Snapshot (report at a glance) and Today's notebook on the Overview */
.ov-snapshot .ov-section-head,.ov-today .ov-section-head{align-items:flex-start}
.ov-snap-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:20px}
.ov-snap-doc p{margin:0 0 12px;font-size:14px;line-height:1.6;color:var(--pv-ink)}
.ov-snap-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ov-snap-stat{display:grid;padding:10px 12px;border:1px solid var(--pv-line-2);border-radius:10px;background:var(--pv-surface-2)}
.ov-snap-stat strong{font:600 20px/1.1 var(--sans-app);font-variant-numeric:tabular-nums}
.ov-snap-stat small{font-size:11.5px;color:var(--pv-muted)}
.ov-snap-steps h3{margin:0 0 8px;font:600 12px/1 var(--sans-app);letter-spacing:.06em;text-transform:uppercase;color:var(--pv-muted)}
.ov-snap-steps ol{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.ov-snap-steps li{display:flex;align-items:flex-start;gap:10px;padding:8px 10px;border:1px solid var(--pv-line-2);border-radius:9px;background:var(--pv-surface)}
.ov-snap-steps li>div{flex:1;min-width:0}
.ov-snap-steps strong{font:600 13px/1.3 var(--sans-app)}.ov-snap-steps span{font-size:13px;color:var(--pv-ink-2)}
.ov-snap-steps small{display:block;font-size:11.5px;color:var(--pv-muted)}
.ov-snap-dot{flex:none;width:8px;height:8px;margin-top:6px;border-radius:50%;background:var(--pv-accent)}
.ov-today-outline{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px 20px;margin-top:18px}/* air between the live timer bar and Today's plan */
.ov-today-group h3{margin:0 0 6px;font:600 13.5px/1.3 var(--sans-app);color:var(--pv-ink)}
.ov-today-group ul{list-style:none;margin:0;padding:0 0 0 10px;border-left:2px solid var(--pv-line-2);display:grid;gap:4px}
.ov-today-group li{font:400 13px/1.45 var(--sans-app);color:var(--pv-ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ov-today-group li.is-checked{color:var(--pv-muted);text-decoration:line-through}
.ov-today-group li.table{color:var(--pv-accent-ink)}
@media(max-width:1000px){.ov-snap-grid{grid-template-columns:1fr}}
