:root { --max-width: 820px; --container-padding: 20px; }

.location-options { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.loc-option { position: relative; display: block; min-width: 0; }
.loc-option input { position: absolute; opacity: 0; pointer-events: none; }
.loc-card { display: block; height: 100%; border: 2px solid var(--color-border); border-radius: var(--radius); padding: 12px; cursor: pointer; transition: border-color 0.15s, background 0.15s; }
.loc-option input:checked + .loc-card { border-color: var(--color-primary); background: #F4F5FC; }
.loc-name { display: block; font-size: 16px; font-weight: 700; color: var(--color-accent); margin-bottom: 4px; }
.loc-detail { display: block; font-size: 13px; color: var(--color-text-muted); line-height: 1.5; overflow-wrap: break-word; }
.child-block { border: 1px solid var(--color-border); border-radius: var(--radius); padding: 18px; margin-bottom: 14px; background: var(--color-bg); position: relative; }
.child-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; }
.child-head h3 { font-size: 15px; font-weight: 600; color: var(--color-primary); }
.remove-child { background: none; border: none; color: var(--color-text-muted); font-size: 13px; cursor: pointer; font-weight: 600; padding: 4px 8px; border-radius: 6px; }
.remove-child:hover { background: #F6E9E2; color: var(--color-accent); }
.opwdd-row { margin-top: 4px; }
.opwdd-check { display: flex; align-items: flex-start; gap: 10px; padding: 12px; border: 1px dashed var(--color-border); border-radius: 8px; cursor: pointer; }
.opwdd-check input { width: 18px; height: 18px; margin-top: 2px; flex-shrink: 0; accent-color: var(--color-primary); }
.opwdd-check .opwdd-text { font-size: 13px; color: var(--color-text-muted); }
.opwdd-check .opwdd-text strong { color: var(--color-text); display: block; font-size: 13px; }
.child-block.is-opwdd { border-color: var(--color-primary); background: #F4F5FC; }
.opwdd-note { margin-top: 14px; background: rgba(255,255,255,0.1); border-radius: 8px; padding: 12px 14px; font-size: 13px; line-height: 1.5; }
