:root{font-family:Segoe UI,Arial,sans-serif;color:#143047;background:#f2f6f9;font-synthesis:none;--green:#092e4d;--border:#dae2e9}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #c7d5e0;background:#fff;color:#173853;border-radius:8px;padding:10px 14px;font-size:13px;font-weight:600}button:hover{background:#eaf1f6}button:disabled{opacity:.45;cursor:default}.primary{background:var(--green);border-color:var(--green);color:white}.primary:hover{background:#134670}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #5b9df4;outline-offset:2px}.topbar{height:76px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:22px;padding:0 4%;background:#fff}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font-size:20px;font-weight:650;letter-spacing:-.6px;color:var(--green)}.brand-mark{background:var(--green);color:#bde7fa;border-radius:11px;width:35px;height:35px;display:grid;place-items:center}.prototype{font-size:10px;letter-spacing:1.5px;color:#59758c;border:1px solid var(--border);padding:5px 9px;border-radius:5px}#install{margin-left:auto}main{max-width:1600px;margin:auto;padding:42px 4% 22px}.heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;color:#537693;margin:0 0 12px}h1{font-size:clamp(26px,3vw,37px);letter-spacing:-1.2px;margin:0 0 10px;font-weight:600}.subtitle{font-size:14px;color:#5d768a;margin:0;line-height:1.6}.heading>.primary{padding:14px 21px;white-space:nowrap}.summary{display:flex;align-items:center;background:#e1ecf5;border:1px solid #cddfed;border-radius:12px;padding:20px 26px;gap:42px;margin-bottom:25px}.summary>div{min-width:110px}.summary span:not(.dot){font-size:26px;font-weight:600}.summary p{font-size:12px;margin:4px 0;color:#546e83}.summary .local-note{margin-left:auto;line-height:1.9}.local-note small{font-size:11px}.dot{display:inline-block;width:7px;height:7px;background:#3b74a2;border-radius:100%;margin-right:6px}.schedule-panel{background:white;border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:0 3px 14px #253f3205}.toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:21px}.week-nav,.tools{display:flex;gap:7px;align-items:center}.week-nav h2{font-size:16px;margin:0 0 0 12px;font-weight:600}.week-nav button{padding:7px 11px}.tools input{width:180px}.table-scroll{overflow:auto;max-height:65vh}table{border-collapse:separate;border-spacing:0;width:100%;table-layout:fixed;min-width:1120px}th,td{border-right:1px solid #e4eaef;border-bottom:1px solid #e4eaef}thead th{height:72px;text-align:left;font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:#637b8e;padding:12px;background:#f8fbfd;position:sticky;top:0;z-index:2}thead th strong{display:block;font-size:21px;color:#27445b;margin-top:5px;letter-spacing:-.5px;font-weight:500}th:first-child{width:190px;position:sticky;left:0;z-index:3;background:#fff;padding:18px}thead th:first-child{background:#f8fbfd;z-index:4}tbody th{text-align:left;font-weight:500}td{vertical-align:top;padding:8px;height:121px}.person{display:flex;align-items:center;gap:10px}.avatar{width:32px;height:32px;display:grid;place-items:center;background:#e5eef5;border-radius:50%;font-size:11px;font-weight:700;color:#4f6e88;flex-shrink:0}.person-name{font-size:13px;word-break:break-word}.person small{display:block;font-size:10px;font-weight:400;color:#7e92a2;margin-top:5px}.today-col{background:#ecf6fb}thead .today-col strong{color:#215986}.event{display:block;width:100%;padding:9px 9px 8px;border:0;border-left:3px solid #73a17d;border-radius:5px;background:#eaf3e9;text-align:left;margin-bottom:6px;color:#31543a;font-weight:400}.event:hover{filter:brightness(.96);background:#e1eddf}.event strong{font-size:11px;font-weight:600;display:block;line-height:1.5;overflow-wrap:anywhere}.event .time{font-size:10px;display:block;margin-top:4px;white-space:nowrap}.event .repeat-tag{font-size:9px;margin-top:6px;display:block;opacity:.7}.blue{background:#eaf0fb;color:#3b5b85;border-color:#799dce}.amber{background:#fcf2df;color:#85662e;border-color:#cfb06a}.purple{background:#f1eafa;color:#725388;border-color:#aa8cc7}.cell-add{border:1px dashed #d0dde8;background:transparent;width:100%;font-size:13px;padding:5px;color:#869eb1;opacity:0}.cell-add:focus-visible,td:hover .cell-add{opacity:1}.panel-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 20px;font-size:11px;color:#6b8498}.legend{display:inline-block;width:8px;height:8px;border-radius:2px;background:#94bada;margin-right:6px}.panel-footer button{font-size:11px;padding:7px 10px}footer{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#6e8597;gap:16px;margin-top:23px}footer button{border:0;background:transparent;font-weight:400;font-size:11px;padding:6px}.unassigned{padding:20px;border:1px solid var(--border);background:#fff;margin-top:20px;border-radius:12px}.unassigned h2{font-size:16px}.unassigned p{font-size:12px;color:#59758b}#unassigned{display:flex;gap:10px;flex-wrap:wrap}#unassigned .event{width:190px}.scroll-hint{display:none}input,select,textarea{border:1px solid #c9d5df;padding:10px;border-radius:7px;color:#213e56;background:#fff;font-size:13px;width:100%;min-width:0}dialog{width:520px;max-width:calc(100% - 24px);border:1px solid var(--border);border-radius:15px;padding:25px;color:#16344d;max-height:92vh;overflow:auto;box-shadow:0 20px 90px #102a3440}dialog::backdrop{background:#152e3260;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:22px}.dialog-heading h2,dialog>h2{font-size:23px;letter-spacing:-.6px;margin:0}.close{border:0;background:transparent;font-size:24px;padding:0 5px;color:#748b9e}label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600;margin-bottom:16px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field-note{font-size:11px;color:#688297;line-height:1.5;margin:0 0 14px;font-weight:400}.dialog-actions{display:flex;gap:8px;align-items:center;margin-top:24px}.spacer{flex:1}.danger{color:#a3473a;border:0;padding-left:0}.error{color:#b04435;font-size:12px}.checklist{display:flex;flex-wrap:wrap;gap:7px;max-height:150px;overflow:auto}.checklist label{display:flex;flex-direction:row;align-items:center;gap:8px;border:1px solid #d6e1ea;padding:8px 10px;border-radius:6px;margin:0;font-weight:400}.checklist input{width:15px;accent-color:#134670}.text-button{font-size:11px;border:0;padding:10px 0;background:transparent}fieldset{border:1px solid #d9e3eb;border-radius:8px;margin:0 0 16px;padding:13px}legend{font-size:12px;font-weight:600;padding:0 5px}.person-add{display:flex;gap:8px;margin-bottom:12px}.person-add input{flex:1}.person-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #e1e9f0;font-size:13px}.person-row button{border:0;font-size:11px}#people-list{max-height:300px;overflow:auto;margin-bottom:20px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#092e4d;color:white;padding:12px 20px;border-radius:10px;font-size:13px;box-shadow:0 4px 25px #0f2a4320;z-index:20;display:none}.empty{padding:50px;color:#6c859a;font-size:14px;text-align:center}
@media(max-width:1000px){.toolbar{flex-direction:column;align-items:stretch}.tools{justify-content:space-between}.tools input{flex:1}.summary{gap:20px}.summary>div{min-width:80px}.summary .local-note{max-width:190px}.scroll-hint{display:block;padding:0 20px 14px;font-size:11px;color:#638097}.cell-add{opacity:1}}@media(max-width:600px){.topbar{height:64px;padding:0 18px;gap:12px}.brand{font-size:17px}.prototype{font-size:8px;letter-spacing:.7px;padding:4px}main{padding:28px 14px}.heading{display:block}.heading>.primary{margin-top:18px;width:100%}.summary{flex-wrap:wrap;padding:18px;gap:18px}.summary>div{min-width:65px;flex:1}.summary span:not(.dot){font-size:23px}.summary .local-note{margin:0;max-width:none;width:100%}.week-nav h2{font-size:13px;margin-left:4px}.week-nav{gap:4px}.week-nav button{padding:7px 9px}.toolbar{padding:15px}.panel-footer{align-items:flex-start;padding:12px;font-size:10px}.panel-footer>span{max-width:65%}footer{align-items:flex-start;flex-direction:column}th:first-child{width:155px}.person{gap:7px}.person-name{font-size:12px}.fields{gap:10px}dialog{padding:20px}#toast{width:calc(100% - 32px);text-align:center}.dialog-actions button{font-size:12px;padding:9px}}

.open-coverage-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px}.open-coverage-card{width:240px;border:1px solid var(--border);border-radius:10px;padding:12px}.open-coverage-card>.event{width:100%!important}.open-coverage-actions{display:flex;gap:7px;flex-wrap:wrap}.open-coverage-actions button{font-size:11px}#unassigned{align-items:flex-start}@media(max-width:650px){.open-coverage-heading{align-items:stretch;flex-direction:column}.open-coverage-card{width:100%}}

#event-dialog .dialog-actions{flex-wrap:wrap}

#oncall-day-hours{line-height:1.8;font-weight:600}#oncall-day-details section{border-top:1px solid var(--border);padding-top:15px;margin-top:15px}#oncall-day-details .text-button{display:block;text-align:left;padding:12px 0}.event .time{line-height:1.7}
