.group-plan-tools { display:flex; flex-wrap:wrap; align-items:end; gap:10px; margin-bottom:16px; }
.group-plan-tools label, .plan-field { display:grid; gap:5px; color:var(--muted); font-size:.78rem; font-weight:800; }
.group-plan-tools input, .plan-field input, .plan-field select, .plan-field textarea { width:100%; min-width:0; border:1px solid var(--line); border-radius:8px; padding:8px 9px; color:var(--ink); background:#fff; font:inherit; }
.group-plan-tools input { width:150px; }
.plan-status { margin:0 0 16px; padding:10px 12px; border-radius:10px; background:#eef6f1; color:var(--ink2); font-size:.82rem; font-weight:800; }
.plan-status[data-state="offline"], .plan-status[data-state="error"] { background:#fff0e8; color:#8a392d; }
.plan-dashboard { display:grid; grid-template-columns:repeat(4,1fr); gap:9px; margin-bottom:16px; }
.plan-metric { background:#f3f7f3; border-radius:10px; padding:10px; }
.plan-metric span { display:block; color:var(--muted); font-size:.68rem; font-weight:900; letter-spacing:.05em; text-transform:uppercase; }
.plan-metric strong { display:block; margin-top:2px; font-size:1rem; }
.plan-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.plan-card { background:#fff; border:1px solid var(--line); border-radius:12px; padding:14px; }
.plan-card h3 { margin-bottom:10px; }
.plan-card h4 { margin:0 0 7px; font-size:.92rem; }
.plan-card + .plan-card { margin-top:10px; }
.plan-list { display:grid; gap:9px; }
.plan-item { padding:10px; border-radius:10px; background:#f7faf7; border:1px solid #e6eee8; }
.plan-item-head { display:flex; justify-content:space-between; gap:8px; align-items:baseline; margin-bottom:7px; }
.plan-item-head strong { font-size:.9rem; }
.plan-item-head small { color:var(--muted); font-weight:800; }
.plan-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.plan-fields .wide { grid-column:1/-1; }
.plan-checks { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px 10px; }
.plan-check { display:flex; gap:6px; align-items:flex-start; color:var(--muted); font-size:.78rem; }
.plan-check input { margin-top:3px; accent-color:var(--ink2); }
.plan-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
.plan-actions button { padding:8px 10px; font-size:.8rem; }
.plan-actions .secondary { background:#edf6f2; color:var(--ink); border:1px solid #d4e4dd; }
.plan-guidance { display:grid; gap:8px; margin-top:16px; }
.plan-guidance .note { margin:0; }
.plan-print-only { display:none; }
@media (max-width:700px) {
  .plan-dashboard { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .plan-grid { grid-template-columns:1fr; }
  .plan-fields { grid-template-columns:1fr; }
  .plan-checks { grid-template-columns:1fr; }
  .group-plan-tools { align-items:stretch; }
  .group-plan-tools button { width:100%; }
}
@media print {
  body { background:#fff; }
  body > *:not(main), main > *:not(#group-plan) { display:none !important; }
  #group-plan { display:block !important; margin:0; }
  #group-plan .group-plan-tools, #group-plan .plan-status, #group-plan .plan-actions { display:none !important; }
  #group-plan .plan-grid { grid-template-columns:1fr 1fr; gap:8px; }
  #group-plan .plan-card { break-inside:avoid; box-shadow:none; padding:9px; }
  #group-plan .plan-print-only { display:block; }
  #group-plan .plan-item { padding:6px; }
  #group-plan textarea, #group-plan input, #group-plan select { border:0; padding:0; background:transparent; appearance:none; }
  .plan-guidance { break-inside:avoid; }
}
