:root{--navy-950:#0b2a3d;--navy-800:#163b52;--navy-700:#51677e;--sky-500:#1c6ea4;--sky-600:#0077b5;--sky-100:#e5f0f6;--slate-50:#f5f7fa;--slate-200:#e2e8f0;--ink-900:#0b2a3d;--ink-500:#51677e;--danger:#c0473b}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{color:var(--ink-900);background:var(--slate-50);font-family:Segoe UI,system-ui,-apple-system,Roboto,sans-serif}.op-root{height:100vh;display:flex}.op-loading{color:var(--ink-500);flex-direction:column;justify-content:center;align-items:center;gap:10px;width:100%;padding:60px}.op-loading-logo{width:220px;height:auto;margin-bottom:10px}.op-spin{animation:1s linear infinite op-spin}@keyframes op-spin{to{transform:rotate(360deg)}}.op-sidebar{background:var(--navy-950);color:#e7eef8;flex-direction:column;width:220px;min-width:220px;padding:20px 14px;display:flex}.op-brand{align-items:center;gap:10px;padding:4px 8px 22px;display:flex}.op-brand-mark{object-fit:contain;flex-shrink:0;width:34px;height:34px}.op-brand-name{font-family:Segoe UI,system-ui,sans-serif;font-size:13.5px;font-weight:600;line-height:1.2}.op-brand-sub{color:#93a5c4;letter-spacing:.02em;font-size:11px}.op-nav{flex-direction:column;flex:1;gap:2px;display:flex}.op-nav-item{color:#b7c4dc;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:7px;align-items:center;gap:10px;padding:9px 10px;font-family:inherit;font-size:13px;transition:background .12s,color .12s;display:flex}.op-nav-item:hover{color:#fff;background:#ffffff0f}.op-nav-item--active{background:var(--sky-500);color:#fff}.op-nav-lock{opacity:.7;margin-left:auto}.op-sidebar-foot{color:#6d80a3;border-top:1px solid #ffffff14;margin-top:8px;padding:10px 8px 2px;font-size:10.5px;line-height:1.5}.op-main{flex-direction:column;flex:1;min-width:0;display:flex}.op-topbar{border-bottom:1px solid var(--slate-200);background:#fff;justify-content:space-between;align-items:center;padding:18px 26px;display:flex}.op-topbar-date{color:var(--ink-500);letter-spacing:.02em;font-family:Consolas,SF Mono,monospace;font-size:11.5px}.op-topbar-title{margin-top:2px;font-family:Segoe UI,system-ui,sans-serif;font-size:19px;font-weight:600}.op-whoami{align-items:center;gap:10px;display:flex}.op-whoami-name{font-size:12.5px;font-weight:500}.op-whoami-signout{color:var(--ink-500);align-items:center;gap:4px;font-size:11px;text-decoration:none;display:inline-flex}.op-whoami-signout:hover{color:var(--danger)}.op-error-banner{color:var(--danger);background:#fdecea;border-bottom:1px solid #f3c9c4;justify-content:space-between;align-items:center;gap:12px;padding:10px 26px;font-size:13px;display:flex}.op-error-banner button{color:inherit;cursor:pointer;background:0 0;border:none;display:flex}.op-range-picker{flex-wrap:wrap;gap:6px;margin-bottom:18px;display:flex}.op-chart-block{margin-bottom:22px}.op-chart-title{color:var(--ink-500);margin-bottom:8px;font-size:12.5px;font-weight:600}.op-trend-table{border-top:1px solid var(--slate-200);margin-top:8px}.op-trend-row{border-bottom:1px solid var(--slate-50);grid-template-columns:2fr repeat(4,1fr);gap:8px;padding:8px 4px;font-size:12.5px;display:grid}.op-trend-row--head{color:var(--ink-500);text-transform:uppercase;letter-spacing:.03em;font-size:11px;font-weight:600}.op-trend-row span:not(:first-child){text-align:center}.op-content{flex:1;padding:22px 26px 40px;overflow-y:auto}.op-view{flex-direction:column;gap:18px;max-width:1000px;display:flex}.op-view--wide{max-width:1480px}.op-grid-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=860px){.op-grid-2{grid-template-columns:1fr}}.op-team-board-columns{grid-template-columns:1.1fr 1fr;align-items:start;gap:16px;display:grid}@media (width<=1000px){.op-team-board-columns{grid-template-columns:1fr}}.op-card{border:1px solid var(--slate-200);background:#fff;border-radius:12px;padding:20px 22px}.op-card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:14px;display:flex}.op-card-head h2,.op-card-head h3{margin:0;font-family:Segoe UI,system-ui,sans-serif;font-size:15.5px;font-weight:600}.op-card-hint{color:var(--ink-500);font-size:11.5px}.op-ai-narrative{background:var(--sky-100);border:1px solid #cfe3ef;border-radius:10px;margin-top:4px;padding:12px 14px}.op-ai-narrative-head{color:var(--sky-500);text-transform:uppercase;letter-spacing:.03em;align-items:center;gap:6px;margin-bottom:6px;font-size:11.5px;font-weight:600;display:flex}.op-ai-narrative-para{color:var(--ink-900);margin:0 0 8px;font-size:13px;line-height:1.5}.op-ai-narrative-para:last-child{margin-bottom:0}.op-grid-3{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (width<=860px){.op-grid-3{grid-template-columns:1fr}.op-sidebar{width:72px;min-width:72px}.op-sidebar .op-brand-name,.op-sidebar .op-brand-sub,.op-nav-item span,.op-sidebar-foot{display:none}}.op-pulse-strip{flex-wrap:wrap;gap:18px;padding-top:4px;display:flex}.op-pulse-item{cursor:pointer;background:0 0;border:none;border-radius:10px;flex-direction:column;align-items:center;gap:6px;padding:4px;font-family:inherit;display:flex}.op-pulse-item:hover{background:var(--slate-50)}.op-pulse-ring{border:2.5px solid var(--ring-color);border-radius:999px;padding:3px;transition:border-color .15s}.op-pulse-name{color:var(--ink-500);text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:60px;font-size:11px;overflow:hidden}.op-avatar{border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-family:Segoe UI,system-ui,sans-serif;font-weight:600;display:flex}.op-stat-row{flex-wrap:wrap;gap:14px;margin-bottom:12px;display:flex}.op-stat{text-align:center;min-width:52px}.op-stat-num{color:var(--stat-color);font-family:Segoe UI,system-ui,sans-serif;font-size:22px;font-weight:700}.op-stat-label{color:var(--ink-500);margin-top:1px;font-size:10.5px}.op-link{color:var(--sky-500);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:12.5px;font-weight:500}.op-link:hover{text-decoration:underline}.op-oncall-highlight{align-items:center;gap:12px;margin-bottom:12px;display:flex}.op-oncall-highlight--lg{margin-bottom:20px}.op-oncall-name{font-size:14px;font-weight:600}.op-oncall-role{color:var(--ink-500);font-size:12px}.op-oncall-days{flex-direction:column;gap:1px;display:flex}.op-oncall-day{border-bottom:1px solid var(--slate-50);padding:14px 12px}.op-oncall-day:last-child{border-bottom:none}.op-oncall-day--today{background:var(--sky-100);border-radius:10px}.op-oncall-day-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.op-oncall-day-label{align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.op-oncall-day-empty{color:var(--ink-500);margin-bottom:10px;font-size:12.5px}.op-oncall-day-select{border:1px solid var(--slate-200);background:#fff;border-radius:8px;width:100%;padding:7px 10px;font-family:inherit;font-size:12.5px}.op-sync-row{align-items:center;gap:12px;margin-bottom:14px;display:flex}.op-sync-badge{background:var(--slate-50);color:var(--ink-500);border-radius:999px;padding:3px 9px;font-size:11px;font-weight:600}.op-sync-badge--live{color:#2f9e68;background:#e5f5ec}.op-person-tabs{flex-wrap:wrap;gap:6px;margin-bottom:18px;display:flex}.op-person-tab{border:1.5px solid var(--slate-200);color:var(--ink-500);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:7px;padding:6px 12px 6px 6px;font-family:inherit;font-size:12.5px;font-weight:500;display:inline-flex}.op-person-tab:hover{border-color:var(--sky-500);color:var(--sky-500)}.op-person-tab--active{background:var(--sky-500);border-color:var(--sky-500);color:#fff}.op-dept-tabs{flex-wrap:wrap;gap:6px;display:flex}.op-dept-tab{border:1.5px solid var(--slate-200);color:var(--ink-500);cursor:pointer;background:#fff;border-radius:999px;padding:7px 14px;font-family:inherit;font-size:12.5px;font-weight:500}.op-dept-tab:hover{border-color:var(--sky-500);color:var(--sky-500)}.op-dept-tab--active{background:var(--navy-950);border-color:var(--navy-950);color:#fff}.op-mini-checklist-list{flex-direction:column;gap:10px;margin-bottom:12px;display:flex}.op-mini-checklist-row{align-items:center;gap:10px;display:flex}.op-mini-checklist-name{min-width:56px;font-size:12px;font-weight:500}.op-mini-checklist-frac{color:var(--ink-500);text-align:right;min-width:30px;font-family:Consolas,SF Mono,monospace;font-size:11px}.op-progress-bar--sm{flex:1;height:6px;margin-bottom:0}.op-progress-wrap{margin-bottom:12px}.op-progress-bar{background:var(--slate-200);border-radius:999px;height:7px;margin-bottom:6px;overflow:hidden}.op-progress-fill{background:var(--sky-500);border-radius:999px;height:100%;transition:width .2s}.op-progress-label{color:var(--ink-500);font-size:11.5px}.op-event-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.op-event-row{border-bottom:1px solid var(--slate-50);align-items:center;gap:10px;padding:8px 4px;font-size:13px;display:flex}.op-event-row:last-child{border-bottom:none}.op-event-icon{border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.op-event-icon--birthday{color:#c0477a;background:#fdeef0}.op-event-icon--anniversary{background:var(--sky-100);color:var(--sky-500)}.op-event-icon--holiday{color:#6b5ca5;background:#f1ecfb}.op-event-label{flex:1}.op-event-when{color:var(--ink-500);font-family:Consolas,SF Mono,monospace;font-size:11.5px}.op-cal-layout{grid-template-columns:1.7fr 1fr;align-items:stretch;gap:16px;display:grid}@media (width<=1000px){.op-cal-layout{grid-template-columns:1fr}.op-cal-sidebar>.op-card:last-child{flex:none}}.op-cal-sidebar{flex-direction:column;gap:16px;display:flex}.op-cal-sidebar>.op-card:last-child{flex-direction:column;flex:1;display:flex}.op-cal-sidebar>.op-card:last-child>ul,.op-cal-sidebar>.op-card:last-child>.op-empty{margin-top:4px}.op-events-columns{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=860px){.op-events-columns{grid-template-columns:1fr}}.op-cal-weekdays{grid-template-columns:repeat(7,1fr);margin-bottom:6px;display:grid}.op-cal-weekday{text-align:center;color:var(--ink-500);text-transform:uppercase;letter-spacing:.03em;padding:4px 0;font-size:10.5px;font-weight:600}.op-cal-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.op-cal-cell{aspect-ratio:1;background:var(--slate-50);text-align:left;cursor:pointer;border:none;border-radius:8px;flex-direction:column;align-items:stretch;gap:2px;min-width:0;padding:5px;font-family:inherit;display:flex;overflow:hidden}.op-cal-cell:hover{background:var(--slate-200)}.op-cal-cell--empty{cursor:default;background:0 0}.op-cal-cell--empty:hover{background:0 0}.op-cal-cell--today{background:var(--sky-100);box-shadow:inset 0 0 0 1.5px var(--sky-500)}.op-cal-cell--selected{box-shadow:inset 0 0 0 2px var(--navy-950)}.op-cal-day-num{color:var(--ink-900);font-size:11.5px;font-weight:500}.op-cal-bar{color:#fff;white-space:nowrap;text-overflow:ellipsis;border-radius:4px;padding:1.5px 4px;font-size:9px;font-weight:600;line-height:1.5;overflow:hidden}.op-cal-bar--birthday{background:#c0477a}.op-cal-bar--anniversary{background:var(--sky-500)}.op-cal-bar--holiday{background:#6b5ca5}.op-cal-bar--more{background:var(--slate-200);color:var(--ink-500)}.op-cal-oncall{color:var(--ink-500);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:3px;margin-top:auto;font-size:9px;font-weight:600;display:flex;overflow:hidden}.op-cal-oncall .op-avatar{flex-shrink:0;width:14px!important;height:14px!important;font-size:7px!important}.op-empty{text-align:center;color:var(--ink-500);flex-direction:column;align-items:center;gap:6px;padding:30px 10px;display:flex}.op-empty-title{color:var(--ink-900);font-size:13.5px;font-weight:600}.op-empty-body{max-width:320px;font-size:12px}.op-datebar{align-items:center;gap:10px;margin-bottom:16px;display:flex}.op-datebar-label{align-items:center;gap:8px;font-family:Segoe UI,system-ui,sans-serif;font-size:14px;font-weight:600;display:flex}.op-today-tag{background:var(--sky-100);color:var(--sky-500);border-radius:999px;padding:2px 7px;font-size:10.5px;font-weight:600}.op-datebar-today{margin-left:auto}.op-iconbtn{border:1px solid var(--slate-200);width:28px;height:28px;color:var(--ink-500);cursor:pointer;background:#fff;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.op-iconbtn:hover{background:var(--slate-50);color:var(--ink-900)}.op-iconbtn--danger:hover{color:var(--danger);background:#fdecea;border-color:#f3c9c4}.op-roster-table{flex-direction:column;display:flex}.op-roster-row{border-bottom:1px solid var(--slate-50);flex-wrap:wrap;align-items:center;gap:16px;padding:12px 4px;display:flex}.op-roster-row:last-child{border-bottom:none}.op-roster-person{align-items:center;gap:10px;min-width:190px;display:flex}.op-roster-name{font-size:13.5px;font-weight:600}.op-roster-role{color:var(--ink-500);font-size:11.5px}.op-status-buttons{flex-wrap:wrap;gap:6px;display:flex}.op-status-btn{border:1.5px solid var(--slate-200);color:var(--ink-500);cursor:pointer;background:#fff;border-radius:999px;padding:6px 10px;font-family:inherit;font-size:11.5px}.op-status-btn:hover{border-color:var(--btn-color);color:var(--btn-color)}.op-status-btn--active{background:var(--btn-color);border-color:var(--btn-color);color:#fff}.op-roster-note{flex:1;min-width:140px}.op-note-display{color:var(--ink-500);cursor:pointer;text-align:left;background:0 0;border:none;width:100%;padding:4px 0;font-family:inherit;font-size:12px}.op-note-placeholder{color:#a7b2c4}.op-note-edit{align-items:center;gap:6px;display:flex}.op-note-edit input{border:1px solid var(--slate-200);border-radius:6px;flex:1;padding:6px 8px;font-family:inherit;font-size:12px}.op-checklist{flex-direction:column;gap:1px;margin:0 0 16px;padding:0;list-style:none;display:flex}.op-checklist-item{border-bottom:1px solid var(--slate-50);align-items:center;gap:12px;padding:10px 4px;display:flex}.op-checklist-item:last-child{border-bottom:none}.op-checklist-item--done .op-checklist-text{color:var(--ink-500);text-decoration:line-through}.op-checkbox{border:1.5px solid var(--slate-200);cursor:pointer;color:#fff;background:#fff;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.op-checklist-item--done .op-checkbox{background:var(--sky-500);border-color:var(--sky-500)}.op-checklist-text{flex:1;font-size:13.5px}.op-checklist-due{color:var(--ink-500);background:var(--slate-50);white-space:nowrap;border-radius:999px;padding:2px 8px;font-family:Consolas,SF Mono,monospace;font-size:10.5px}.op-checklist-item--overdue .op-checklist-due{color:var(--danger);background:#fdecea}.op-checklist-item--overdue .op-checklist-text{color:var(--danger)}.op-checklist-item--editing{gap:8px}.op-checklist-item--editing input[type=text],.op-checklist-item--editing input:not([type]){border:1px solid var(--slate-200);border-radius:6px;flex:1;padding:6px 10px;font-family:inherit;font-size:13px}.op-checklist-item--editing input[type=date]{border:1px solid var(--slate-200);border-radius:6px;padding:6px 8px;font-family:inherit;font-size:12.5px}.op-inline-form{border-top:1px solid var(--slate-50);flex-wrap:wrap;gap:8px;padding-top:12px;display:flex}.op-inline-form input,.op-inline-form select,.op-inline-form textarea{border:1px solid var(--slate-200);background:var(--slate-50);color:var(--ink-900);border-radius:8px;padding:8px 11px;font-family:inherit;font-size:13px}.op-inline-form input[type=text],.op-inline-form input:not([type]){flex:1;min-width:160px}.op-inline-form--note{flex-direction:column;align-items:stretch}.op-inline-form--note textarea{resize:vertical;width:100%;font-family:inherit}.op-add-person-form{border-top:1px solid var(--slate-50);flex-direction:column;gap:10px;padding-top:14px;display:flex}.op-add-person-row{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.op-add-person-row input[type=text],.op-add-person-row input:not([type]){border:1px solid var(--slate-200);background:var(--slate-50);min-width:160px;color:var(--ink-900);border-radius:8px;flex:1;padding:8px 11px;font-family:inherit;font-size:13px}.op-add-person-row input[type=email]{border:1px solid var(--slate-200);background:var(--slate-50);color:var(--ink-900);border-radius:8px;flex:1;min-width:160px;padding:8px 11px;font-family:inherit;font-size:13px}.op-add-person-row select{border:1px solid var(--slate-200);background:var(--slate-50);min-width:160px;color:var(--ink-900);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2351677E' stroke-width='1.5' fill='none' fill-rule='evenodd'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;border-radius:8px;flex:1;padding:8px 28px 8px 11px;font-family:inherit;font-size:13px}.op-add-person-row .op-field-label{flex:1;min-width:160px}.op-add-person-row .op-field-label input{border:1px solid var(--slate-200);border-radius:8px;width:100%;padding:7px 10px;font-family:inherit;font-size:13px}.op-add-person-submit{flex-shrink:0}.op-add-person-collapsed{border-top:1px solid var(--slate-50);padding-top:14px}.op-btn{border:1px solid var(--slate-200);color:var(--ink-900);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:12.5px;font-weight:500;display:inline-flex}.op-btn:hover{background:var(--slate-50)}.op-btn--primary{background:var(--sky-500);border-color:var(--sky-500);color:#fff}.op-btn--primary:hover{background:var(--sky-600)}.op-btn--danger{background:var(--danger);border-color:var(--danger);color:#fff}.op-holiday-list{margin:0 0 14px;padding:0;list-style:none}.op-holiday-row{border-bottom:1px solid var(--slate-50);align-items:center;gap:12px;padding:9px 4px;font-size:13px;display:flex}.op-holiday-row:last-child{border-bottom:none}.op-holiday-date{color:var(--sky-500);min-width:56px;font-family:Consolas,SF Mono,monospace;font-size:11.5px}.op-holiday-name{flex:1}.op-people-list{flex-direction:column;margin-bottom:6px;display:flex}.op-person-row{border-bottom:1px solid var(--slate-50);align-items:center;gap:12px;padding:12px 4px;display:flex}.op-person-row:last-child{border-bottom:none}.op-person-info{flex:1}.op-person-name-lg{align-items:center;gap:8px;font-size:13.5px;font-weight:600;display:flex}.op-person-meta{color:var(--ink-500);margin-top:1px;font-size:12px}.op-leadership-tag{color:var(--sky-500);background:var(--sky-100);border-radius:999px;padding:1px 7px;font-size:10px;font-weight:600}.op-row-actions{align-items:center;gap:6px;margin-left:auto;display:flex}.op-confirm-text{color:var(--danger);margin-right:4px;font-size:12px}.op-person-row--editing{background:var(--slate-50);border-radius:10px;align-items:flex-start;padding:14px}.op-person-edit-grid{flex-direction:column;flex:1;gap:10px;display:flex}.op-person-edit-grid input[type=text],.op-person-edit-grid input:not([type]){border:1px solid var(--slate-200);border-radius:8px;padding:8px 11px;font-family:inherit;font-size:13px}.op-person-edit-grid select{border:1px solid var(--slate-200);width:100%;color:var(--ink-900);appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2351677E' stroke-width='1.5' fill='none' fill-rule='evenodd'/%3E%3C/svg%3E") right 11px center no-repeat;border-radius:8px;padding:8px 28px 8px 11px;font-family:inherit;font-size:13px}.op-field-label{color:var(--ink-500);flex-direction:column;gap:4px;font-size:11.5px;display:flex}.op-field-label input{border:1px solid var(--slate-200);border-radius:8px;padding:7px 10px;font-family:inherit;font-size:13px}.op-checkline{color:var(--ink-900);align-items:center;gap:8px;font-size:12.5px;display:flex}.op-notes-picker{margin-bottom:16px}.op-notes-picker select{border:1px solid var(--slate-200);background:var(--slate-50);border-radius:8px;width:100%;max-width:320px;padding:9px 12px;font-family:inherit;font-size:13.5px}.op-notes-list{flex-direction:column;gap:10px;margin:18px 0 0;padding:0;list-style:none;display:flex}.op-notes-list--compact{max-height:220px;margin-top:12px;overflow-y:auto}.op-note-item{background:var(--slate-50);border-radius:10px;padding:12px 14px}.op-note-item-head{align-items:center;gap:10px;margin-bottom:6px;display:flex}.op-note-author{font-size:12.5px;font-weight:600}.op-note-time{color:var(--ink-500);margin-right:auto;font-family:Consolas,SF Mono,monospace;font-size:10.5px}.op-note-item-body{white-space:pre-wrap;font-size:13px;line-height:1.5}
