#team-operations{margin:20px 0 36px;border:1px solid var(--line);border-radius:22px;padding:clamp(16px,3vw,32px);scroll-margin-top:100px}
#team-operations :is(h2,h3,h4,summary,label,button,.ops-kicker){font-family:var(--mono);font-weight:400}
#team-operations :is(button,.ops-action,select,input,textarea){border:1px solid var(--line);border-radius:12px;box-shadow:none;min-width:0}
#team-operations button{font-size:11px;padding:12px;color:var(--ink);background:transparent;cursor:pointer}
#team-operations button:disabled{opacity:.5;cursor:default}#team-operations :is(button,a,input,select,textarea):focus-visible{outline:2px solid var(--ink);outline-offset:3px}
#team-operations h2{font-size:24px;margin:4px 0 12px}#team-operations h3{font-size:14px}#team-operations h4{font-size:13px;margin:24px 0 12px}
#team-operations p{font:14px/1.6 var(--sans)}#team-operations .ops-kicker{font:10px/1.5 var(--mono);letter-spacing:.08em;color:var(--muted)}
.ops-heading,.ops-month-nav{display:flex;align-items:center;justify-content:space-between;gap:12px}.ops-heading>div{min-width:0}.ops-heading p{margin:8px 0}
.ops-filters{display:flex;gap:14px;flex-wrap:wrap;margin:24px 0}.ops-filters label{display:grid;gap:8px;font-size:10px}.ops-filters select{background:transparent;font:12px var(--mono);padding:12px;min-width:160px}
.ops-calendar-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:24px}.ops-calendar-layout aside{border-left:1px solid var(--line);padding-left:24px;min-width:0}.ops-calendar-layout aside>h3{margin:14px 0 18px}
.ops-month-nav{margin-bottom:22px}.ops-month-nav h3{margin:0;text-align:center}.ops-month-nav button{width:40px;height:40px}
.ops-weekdays,.ops-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.ops-weekdays span{text-align:center;font:9px var(--mono);padding:0 0 12px}
#team-operations .ops-day{padding:12px 2px;min-height:68px;display:grid;align-content:start;gap:7px;text-align:center;font-size:15px;border-color:transparent}.ops-day small{font:8px var(--mono)}
#team-operations .ops-day:has(small:not(:empty)){border-color:var(--line)}#team-operations .ops-day.is-selected{background:var(--ink);color:var(--paper,#fafaf7);border-color:var(--ink)}.ops-today{text-decoration:underline;text-underline-offset:4px}
#team-operations .ops-event{display:grid;gap:7px;text-align:left;padding:16px;margin-bottom:12px;width:100%;line-height:1.5}.ops-event strong{font:15px/1.4 var(--sans)}.ops-event>span,.ops-event small{font:11px/1.5 var(--mono)}.ops-event .ops-event-meta{font-size:9px;text-transform:uppercase;color:var(--muted)}
#team-operations .ops-empty{color:var(--muted);padding:16px 0}#ops-status{font:11px/1.5 var(--mono)!important;color:var(--muted);margin-top:24px}
#team-operations details{border:1px solid var(--line);border-radius:16px;padding:18px;margin:18px 0 0}#team-operations summary{cursor:pointer;font-size:12px;letter-spacing:.04em;padding:0;list-style-position:inside}#team-operations details[open]>summary{margin-bottom:18px}
#ops-agenda{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}#ops-agenda article>span{display:block;font:10px var(--mono);margin:8px 0}
.ops-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.ops-form label{display:grid;gap:8px;font-size:11px;line-height:1.6}.ops-form :is(input,select,textarea){width:100%;padding:12px;background:transparent;color:var(--ink);font:14px/1.5 var(--sans)}.ops-form textarea{min-height:88px;resize:vertical}.ops-wide{grid-column:1/-1}.ops-checkbox{display:flex!important;align-items:center;gap:12px!important}.ops-checkbox input{width:18px;height:18px;flex:none}
#team-operations .ops-action{display:inline-block;background:var(--ink);color:#fafaf7;padding:13px 18px;font:11px/1.4 var(--mono);text-decoration:none;text-align:center;align-self:start}.ops-form-status{margin:0;min-height:1.5em}
#ops-staff-list{list-style:none;padding:0;margin:16px 0}#ops-staff-list li{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}#ops-staff-list small{display:block;font-size:11px;color:var(--muted);overflow-wrap:anywhere}
#ops-event-dialog{background:var(--paper,#fafaf7);color:var(--ink);border:1px solid var(--line);border-radius:22px;width:min(820px,calc(100vw - 24px));max-height:88dvh;padding:0;overscroll-behavior:contain}#ops-event-dialog::backdrop{background:#0008}.ops-detail-head{padding:20px 24px;border-bottom:1px solid var(--line);display:flex;gap:20px;align-items:center;justify-content:space-between;position:sticky;top:0;background:var(--paper,#fafaf7);z-index:1}.ops-detail-head h3{font-size:20px!important;margin:6px 0}.ops-detail-head button{font-size:24px!important;width:42px;height:42px;padding:0!important}.ops-detail-body{padding:24px}.ops-event-specs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.ops-event-specs p{margin:0!important}.ops-paragraph{white-space:pre-wrap}.ops-shifts article{border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:12px}.ops-shifts p{white-space:pre-wrap;font-size:12px!important}.ops-small{font-size:11px!important;color:var(--muted)}
@media(max-width:760px){.ops-calendar-layout{grid-template-columns:1fr;gap:14px}.ops-calendar-layout aside{border-left:0;border-top:1px solid var(--line);padding:8px 0 0}.ops-filters label{flex:1}.ops-filters select{width:100%;min-width:0}.ops-form,.ops-event-specs,#ops-agenda{grid-template-columns:1fr}.ops-wide{grid-column:auto}.ops-day small{font-size:7px}.ops-days{gap:2px}#team-operations .ops-day{min-height:56px}.ops-detail-head,.ops-detail-body{padding:18px}#team-operations h2{font-size:20px}}
@media print{body>*{display:none!important}#ops-event-dialog{display:block}}

/* Team tools follow the same closed-by-default disclosure pattern as account settings. */
.team-page #team-workspace,
.team-page #team-operations,
.team-page #team-legacy-tools { display:grid; gap:18px; }
.team-page #team-operations { margin:0; padding:0; border:0; border-radius:0; }
.team-page #ops-manager { display:contents; }
.team-page #team-connection-status { margin:0 0 6px; font:13px/1.6 var(--sans); overflow-wrap:anywhere; }
.team-page #team-workspace details { border:1px solid var(--line); border-radius:18px; padding:0; margin:0; overflow:hidden; }
.team-page #team-workspace details > summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:76px; padding:22px 24px; margin:0; cursor:pointer; list-style:none; font:14px/1.5 var(--mono); letter-spacing:.075em; }
.team-page #team-workspace details > summary::-webkit-details-marker { display:none; }
.team-page #team-workspace details > summary:focus-visible { outline:2px solid var(--ink); outline-offset:-5px; }
.team-page #team-workspace .team-tool-body { padding:0 24px 24px; }
.team-tool-icon { flex:0 0 24px; width:24px; height:24px; background:linear-gradient(currentColor,currentColor) center/18px 2px no-repeat,linear-gradient(currentColor,currentColor) center/2px 18px no-repeat; }
details[open] > summary > .team-tool-icon { transform:rotate(45deg); background-size:24px 2px,2px 24px; }
.team-page .team-tool-action { display:inline-flex; align-items:center; justify-content:center; min-height:44px; max-width:100%; padding:11px 16px; border:1px solid var(--line); border-radius:12px; background:transparent; color:var(--ink); font:13px/1.5 var(--mono); letter-spacing:.035em; text-decoration:none; text-align:center; }
.team-page .team-tool-action:hover { border-color:var(--ink); background:var(--panel); }
.team-page #team-workspace .team-weekly { margin-top:24px; padding:0 20px 20px; }
.team-page #team-workspace .team-weekly > summary { padding-left:0; padding-right:0; }
.team-page #team-workspace .team-weekly > summary::after { content:'+'; font:28px/1 var(--sans); }
.team-page #team-workspace .team-weekly[open] > summary::after { content:'×'; }
.team-page #team-workspace .ops-heading { margin-bottom:20px; }
@media(max-width:620px){.team-page #team-workspace details > summary{min-height:68px;padding:20px;font-size:12px}.team-page #team-workspace .team-tool-body{padding:0 20px 20px}.team-page .team-tool-action{width:100%}}

.ops-reminder{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.ops-reminder label{min-width:0}

.ops-form label.ops-checkbox{flex-direction:row;flex-wrap:nowrap;align-items:flex-start;justify-content:flex-start;text-align:left}
.ops-form label.ops-checkbox > input[type="checkbox"]{appearance:auto;flex:0 0 20px;width:20px;min-width:20px;max-width:20px;height:20px;min-height:20px;padding:0;margin:0;order:0}
.ops-form label.ops-checkbox > span{min-width:0;order:1}
