/* LGDM Cart Policy (Creative Dimension) */
.lgdm-cp-box { margin: 0 0 16px; text-align: left; }
.lgdm-cp-row { margin: 0 0 8px; }
.lgdm-cp-row label { display: flex; gap: 8px; align-items: flex-start; cursor: pointer; line-height: 1.4; }
.lgdm-cp-row input[type="checkbox"] { margin-top: 3px; flex: 0 0 auto; }
.lgdm-cp-row a.lgdm-cp-open { text-decoration: underline; }
.lgdm-cp-error { margin: 8px 0 0; padding: 8px 12px; color: #b32d2e; background: #fcf0f1; border-left: 3px solid #b32d2e; font-size: 14px; }
.lgdm-cp-fallback { max-width: 1140px; margin: 16px auto; padding: 0 16px; }

.lgdm-cp-lock { overflow: hidden; }
.lgdm-cp-modal[hidden], .lgdm-cp-policy[hidden], .lgdm-cp-error[hidden] { display: none !important; }
.lgdm-cp-modal { position: fixed; inset: 0; z-index: 999999; display: flex; align-items: center; justify-content: center; padding: 16px; }
.lgdm-cp-overlay { position: absolute; inset: 0; background: rgba(0, 0, 0, .6); }
.lgdm-cp-dialog { position: relative; width: 100%; max-width: 640px; max-height: 85vh; overflow-y: auto; padding: 28px 28px 20px; background: #fff; color: #222; border-radius: 8px; box-shadow: 0 10px 40px rgba(0, 0, 0, .35); outline: none; }
.lgdm-cp-title { margin: 0 32px 16px 0; font-size: 22px; line-height: 1.25; }
.lgdm-cp-content { font-size: 15px; line-height: 1.6; }
.lgdm-cp-content p:last-child { margin-bottom: 0; }
.lgdm-cp-close { position: absolute; top: 8px; right: 12px; width: 36px; height: 36px; padding: 0; font-size: 28px; line-height: 1; color: #555; background: transparent; border: 0; cursor: pointer; }
.lgdm-cp-close:hover { color: #000; background: transparent; }
.lgdm-cp-actions { margin: 20px 0 0; text-align: right; }
@media (max-width: 480px) { .lgdm-cp-dialog { padding: 22px 18px 16px; } }
