/* Agenda appointment sheet: consistent GreenTech layout for every role. */
.operator-agenda-dialog{
  width:min(820px,calc(100vw - 32px));
  max-height:calc(100dvh - 32px);
  color:var(--legacy-ink,#123c2c);
}
.operator-agenda-dialog [hidden]{display:none!important}
.operator-agenda-dialog-head{
  align-items:center;
  padding:22px 30px;
  border-bottom:3px solid var(--legacy-yellow,#fce300);
}
.operator-agenda-dialog-head h2{margin:0;font-size:clamp(1.35rem,2.4vw,1.8rem);line-height:1.2}
.operator-agenda-dialog-head .quiet{min-width:78px}
.operator-agenda-form-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:20px;
  row-gap:18px;
  padding:26px 30px 22px;
  align-items:start;
}
.operator-agenda-form-grid>label{
  min-width:0;
  margin:0;
  align-content:start;
  gap:8px;
  color:var(--legacy-ink,#123c2c);
  font-size:.86rem;
  font-weight:750;
}
.operator-agenda-form-grid input,
.operator-agenda-form-grid select,
.operator-agenda-form-grid textarea{
  width:100%;
  min-width:0;
  min-height:48px;
  margin:0;
  border:1px solid #cbdcd2;
  border-radius:12px;
  padding:11px 14px;
  color:var(--legacy-ink,#123c2c);
  background:#fff;
  font:inherit;
  font-weight:600;
  line-height:1.45;
}
.operator-agenda-form-grid textarea{min-height:88px;resize:vertical;font-weight:500}
.operator-agenda-form-grid input[readonly],
.operator-agenda-form-grid textarea[readonly]{background:#f8fbf9}
.operator-agenda-form-grid input:focus-visible,
.operator-agenda-form-grid select:focus-visible,
.operator-agenda-form-grid textarea:focus-visible{
  outline:3px solid rgba(184,219,54,.42);
  outline-offset:2px;
  border-color:#53966c;
}
.operator-agenda-form-grid a{
  display:inline-flex;
  align-items:center;
  justify-self:start;
  width:fit-content;
  min-height:34px;
  padding:5px 10px;
  border-radius:8px;
  background:#edf7ee;
  color:#145b38;
  text-decoration:none;
  font-size:.79rem;
  font-weight:800;
}
.operator-agenda-form-grid a:hover,
.operator-agenda-form-grid a:focus-visible{background:#dff1df;text-decoration:underline}
.operator-appointment-section{
  grid-column:1/-1;
  margin:4px 0 -4px;
  padding-top:16px;
  border-top:1px solid var(--legacy-border,#d9e1de);
  color:#416b53;
  font-size:.73rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
#operator-appointment-signed-fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 18px;
  padding:16px 18px;
  border:1px solid #d6e7d9;
  border-radius:12px;
  background:#f5faf5;
}
#operator-appointment-signed-fields>label{min-width:0;margin:8px 0;align-content:start}
#operator-appointment-signed-fields>label:has(input[type=checkbox]){display:flex;align-items:center;gap:10px;grid-column:1/-1}
#operator-appointment-signed-fields input[type=checkbox]{width:18px;min-height:18px;height:18px;flex:none}
#operator-appointment-ack-tools{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px;
  margin:0 30px 20px;
  padding:13px 16px;
  border:1px solid #d5e6d8;
  border-radius:12px;
  background:#f4faf4;
}
#operator-appointment-ack-status{margin:0;color:#24523b;font-size:.86rem;font-weight:700}
#operator-appointment-ack{min-height:40px;padding:8px 14px;font-size:.82rem}
.operator-agenda-dialog .form-error{margin:0 30px 12px}
.operator-agenda-dialog .form-error:empty{min-height:0;margin-bottom:0}
.operator-agenda-calendar-actions{
  gap:10px;
  margin:0;
  padding:14px 30px;
  border-top:1px solid var(--legacy-border,#d9e1de);
}
.operator-agenda-calendar-actions button,
.operator-agenda-dialog-actions button{
  min-height:42px;
  padding:9px 15px;
  font-size:.84rem;
  line-height:1.25;
}
.operator-agenda-calendar-actions .secondary{background:#eaf2ed;color:#174d35}
.operator-agenda-dialog-actions{
  z-index:3;
  align-items:center;
  gap:8px;
  padding:14px 30px;
  border-top:1px solid var(--legacy-border,#d9e1de);
  box-shadow:0 -8px 22px rgba(18,60,44,.04);
}
.operator-agenda-dialog-actions .quiet{margin-right:auto;color:#315949}
.operator-agenda-dialog-actions .secondary{background:#eaf2ed;color:#174d35}
@media(max-width:640px){
  .operator-agenda-dialog{width:calc(100vw - 12px);max-height:calc(100dvh - 12px)}
  .operator-agenda-dialog-head{padding:16px 18px}
  .operator-agenda-dialog-head .quiet{min-width:auto}
  .operator-agenda-form-grid{grid-template-columns:minmax(0,1fr);gap:16px;padding:20px 18px}
  .operator-agenda-form-grid .wide,.operator-appointment-section{grid-column:1}
  #operator-appointment-signed-fields{grid-template-columns:minmax(0,1fr)}
  #operator-appointment-ack-tools{margin:0 18px 16px}
  .operator-agenda-dialog .form-error{margin-left:18px;margin-right:18px}
  .operator-agenda-calendar-actions{padding:12px 18px}
  .operator-agenda-calendar-actions>*{width:auto;flex:1 1 190px}
  .operator-agenda-dialog-actions{flex-wrap:wrap;padding:12px 18px}
  .operator-agenda-dialog-actions .quiet{width:100%;margin-right:0}
  .operator-agenda-dialog-actions .primary,.operator-agenda-dialog-actions .secondary{flex:1 1 145px}
}
