.office-ip-selections { display:grid; gap:14px; margin-top:16px; grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr)); }
.office-ip-selection { padding:16px; border:1px solid #64748b55; border-radius:14px; background:rgba(15,23,42,.05); min-width:0; }
.office-ip-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.office-ip-heading h4 { font-size:14px; font-weight:700; }
.office-ip-selection p { font-size:12px; margin:10px 0; }
.office-ip-selection button { border:1px solid #64748b66; border-radius:8px; padding:7px 10px; font-size:12px; }
.office-ip-selection button:disabled { opacity:.45; }
.office-ip-actions { display:flex; gap:8px; margin:10px 0; }
.office-ip-list { max-height:240px; overflow-y:auto; display:grid; gap:6px; }
.office-ip-list label { display:flex; align-items:center; gap:9px; padding:8px; border-radius:7px; cursor:pointer; background:rgba(100,116,139,.07); }
.office-ip-list input { accent-color:#0e7490; flex-shrink:0; }
.office-ip-selection code { font-size:12px; overflow-wrap:anywhere; }
.office-ip-selection details { margin-top:12px; font-size:12px; color:#b45309; }
.office-ip-selection details code { display:block; margin-top:5px; }
.dark .office-ip-selection { background:#111827; color:#e5e7eb; }
.dark .office-ip-selection details { color:#fbbf24; }
.office-ip-selection .is-error { color:#ef4444; }
