.policy-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:16px}.policy-form{margin-top:16px}.inline-form{display:flex;gap:9px;margin-bottom:14px}.inline-form input{flex:1}.policy-target{display:block;color:var(--muted);font-family:ui-monospace,monospace;font-size:12px}.delete-small{background:#35202a!important;color:var(--red)!important;padding:6px 9px!important}.policy-status{color:var(--green);font-size:11px;text-transform:uppercase;letter-spacing:.08em}
/* Schedule form: labeled fields on one aligned row — From and To sit side by side,
   the time zone is a dropdown, and nothing overlaps. */
.schedule-form{display:grid;grid-template-columns:minmax(150px,1.4fr) minmax(110px,.8fr) minmax(110px,.8fr) minmax(190px,1fr) auto;gap:12px;align-items:end;margin-bottom:16px}
.schedule-form label{display:grid;gap:6px;font-size:12px;color:var(--muted)}
.schedule-form input,.schedule-form select{width:100%;font:inherit}
.schedule-form button{align-self:end}
/* Group member form: same labeled-row pattern. */
.member-form{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.member-form h3{margin:0 0 10px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#5f7385}
.member-grid{display:grid;grid-template-columns:minmax(150px,1.4fr) 150px minmax(150px,1fr) auto;gap:12px;align-items:end}
.member-grid label{display:grid;gap:6px;font-size:12px;color:var(--muted)}
.member-grid input,.member-grid select{width:100%;font:inherit}
.member-grid button{align-self:end}
@media(max-width:950px){.policy-layout{grid-template-columns:1fr}}
@media(max-width:650px){.schedule-form{grid-template-columns:1fr 1fr}.schedule-form button{grid-column:1/-1}.member-grid{grid-template-columns:1fr 1fr}.member-grid button{grid-column:1/-1}}
