/* Drone CRUD */
.dm-modal{width:min(1040px,100%);height:min(760px,calc(100vh - 40px))}
.dm-wrap{flex:1;min-height:0;display:grid;grid-template-columns:190px minmax(0,1fr) 260px;border-top:1px solid var(--border-base)}
.dm-nav{display:flex;flex-direction:column;gap:2px;padding:12px 8px;border-right:1px solid var(--border-base)}
.dm-nav button{all:unset;cursor:pointer;display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:7px;font-size:12px;color:var(--fg-secondary)}
.dm-nav button:hover{background:var(--bg-hover);color:var(--fg-primary)}
.dm-nav button.on{background:var(--bg-inset);color:var(--fg-primary);font-weight:600}
.dm-nav-n{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:10px;border:1px solid var(--border-strong);flex-shrink:0}
.dm-nav-n.ok{background:color-mix(in oklab,var(--sev-low) 20%,transparent);border-color:var(--sev-low);color:var(--sev-low)}
.dm-body{overflow-y:auto;padding:4px 20px 40px;position:relative}
.dm-body section{padding:16px 0 18px;border-bottom:1px solid var(--border-base)}
.dm-body section:last-child{border-bottom:0;min-height:60%}
.dm-body h4{margin:0 0 12px;font-size:13px;font-weight:700}
.dm-hint{font-style:normal;font-weight:400;color:var(--fg-muted);text-transform:none;letter-spacing:0}
.dm-err .inp,.dm-err .sel{border-color:var(--sev-critical)!important}
.dm-err-t{font-style:normal;font-size:10.5px;color:var(--sev-critical)}
.dm-inline{display:flex;align-items:center;gap:6px}.dm-inline .inp{flex:1;min-width:0}
.dm-ro{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--fg-primary)}
.dm-ro em{font-style:normal;font-size:10.5px;color:var(--fg-muted)}
.dm-pl{display:flex;gap:8px;align-items:center;padding:8px 10px;border-radius:8px;background:var(--bg-inset);font-size:11.5px;color:var(--fg-secondary)}
.dm-pl .ico{color:var(--accent-primary)}
.dm-pl.is-warn{background:color-mix(in oklab,var(--sev-medium) 10%,transparent);color:var(--fg-primary)}.dm-pl.is-warn .ico{color:var(--sev-medium)}
.dm-tog{display:flex;gap:9px;align-items:flex-start;align-self:end;padding:8px 0;cursor:pointer;font-size:12px}
.dm-tog span{display:flex;flex-direction:column;gap:2px}.dm-tog em{font-style:normal;font-size:10.5px;color:var(--fg-muted)}
.dm-side{border-left:1px solid var(--border-base);padding:14px;overflow-y:auto;display:flex;flex-direction:column;gap:16px;background:color-mix(in oklab,var(--bg-inset) 50%,transparent)}
.dm-spec{display:flex;flex-direction:column;gap:2px}
.dm-spec .caps{margin-bottom:6px;color:var(--fg-primary)}
.dm-side-hd{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.dm-ready{display:flex;flex-direction:column;gap:6px}
.dm-chk{display:grid;grid-template-columns:14px 120px minmax(0,1fr);gap:8px;align-items:start;font-size:11.5px}
.dm-chk span{color:var(--fg-secondary)}
.dm-ready.is-compact .dm-chk{grid-template-columns:14px minmax(0,1fr)}
.dm-ready.is-compact .dm-chk span{grid-column:2;font-size:10.5px;margin-top:-4px}
.dm-chk-ok .ico{color:var(--sev-low)}
.dm-chk-warn .ico{color:var(--sev-medium)}.dm-chk-warn span{color:var(--sev-medium)}
.dm-chk-bad .ico{color:var(--sev-critical)}.dm-chk-bad span{color:var(--sev-critical)}
.dm-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;padding:2px 8px;border-radius:99px;white-space:nowrap;align-self:flex-start}
.dm-badge-ok{color:var(--sev-low);background:color-mix(in oklab,var(--sev-low) 13%,transparent)}
.dm-badge-warn{color:var(--sev-medium);background:color-mix(in oklab,var(--sev-medium) 13%,transparent)}
.dm-badge-bad{color:var(--sev-critical);background:color-mix(in oklab,var(--sev-critical) 14%,transparent)}
.dm-callsign{font-style:normal;font-weight:400;color:var(--fg-muted);font-family:inherit}
.dm-kv2 .ps-kv b{font-weight:500}
.dm-notes{margin:6px 0 0;font-size:11.5px;color:var(--fg-secondary);line-height:1.5}
.dm-impact{display:flex;gap:8px;align-items:flex-start;padding:9px 11px;border-radius:8px;background:color-mix(in oklab,var(--sev-medium) 10%,transparent);font-size:11.5px;margin-bottom:12px}
.dm-impact .ico{color:var(--sev-medium);margin-top:2px;flex-shrink:0}
.dm-opts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dm-opt{all:unset;cursor:pointer;display:flex;flex-direction:column;gap:5px;padding:12px;border:1px solid var(--border-base);border-radius:9px;font-size:11.5px}
.dm-opt span{color:var(--fg-secondary);line-height:1.45}.dm-opt b{font-size:13px}
.dm-opt:hover{border-color:var(--border-strong)}
.dm-opt.on{border-color:var(--accent-primary);box-shadow:inset 0 0 0 1px var(--accent-primary)}
.dm-opt-danger.on{border-color:var(--sev-critical);box-shadow:inset 0 0 0 1px var(--sev-critical)}.dm-opt-danger .ico{color:var(--sev-critical)}
.fl-dc .dm-badge{margin-top:2px}
@media (max-width:1000px){.dm-wrap{grid-template-columns:1fr}.dm-nav,.dm-side{display:none}}
