        .mod-cb-container { position:fixed; bottom:20px; left:0; right:0; width:100%; padding:0 20px; box-sizing:border-box; z-index:99999; display:flex; justify-content:center; pointer-events:none; }
        .mod-cb-container--left { justify-content:flex-start; }
        .mod-cb-container--center { justify-content:center; }
        .mod-cb-container--right { justify-content:flex-end; }

        .mod-cb-wrapper { display:none; width:100%; max-width:var(--mod-cb-max-width, 1200px); padding:20px; box-shadow:0 4px 25px rgba(0,0,0,0.15); border-radius:8px; font-size:14px; line-height:1.5; box-sizing:border-box; align-items:center; gap:20px; pointer-events:all; }
        .mod-direction-row { flex-direction:row; justify-content:space-between; }
        .mod-direction-column { flex-direction:column; align-items:stretch; gap:16px; }
        .mod-direction-column .mod-cb-text { text-align:center; }
        .mod-direction-column .mod-cb-actions { justify-content:center; }

        .mod-cb-text { flex:1; }
        .mod-cb-actions { display:flex; flex-direction:row; align-items:center; gap:20px; white-space:nowrap; }

        .mod-cb-btn { display:inline-flex; gap: 8px; align-items:center; justify-content:center; height:40px; padding:0 22px; margin:0;  font-family:inherit; font-size:14px; font-weight:600; line-height:1; text-align:center; text-decoration:none; white-space:nowrap; cursor:pointer; background:none; box-shadow:none; outline:none; -webkit-appearance:none; appearance:none; transition:background 0.2s, color 0.2s, opacity 0.2s; }

        .mod-cb-btn--brand { background:#1C2E5A; color:#ffffff; }
        .mod-cb-btn--brand:hover { background:#1C2E5A; opacity:0.9;}

        .mod-cb-btn--default { background:#f5f5f5; color:#333333; }
        .mod-cb-btn--default:hover { background:#ebebeb; color: #333333 !important; }

        .mod-cb-btn--transparent { background:transparent; color:inherit; border: none; padding:0; height:auto; font-size:13px; font-weight:400; text-decoration:underline; }
        .mod-cb-btn--transparent:hover { color: inherit !important; opacity:0.7; background-color: transparent !important; box-shadow: none; }

        .mod-cb-theme-light { background:#ffffff; color:#333333; }
        .mod-cb-theme-light .mod-cb-text a { color:#1C2E5A; text-decoration:underline; }
        .mod-cb-theme-light .mod-cb-text a:hover { color:#1a5dbb; }

        .mod-cb-theme-dark { background:#191e28; color:#e0e0e0; }
        .mod-cb-theme-dark .mod-cb-text a { color:#64b5f6; text-decoration:underline; }
        .mod-cb-theme-dark .mod-cb-text a:hover { color:#90caf9; }

		.mod-cb-theme-auto { background:#ffffff; color:#333333; }
		.mod-cb-theme-auto .mod-cb-text a { color:#1C2E5A; }
		@media (prefers-color-scheme: dark) {
			.mod-cb-theme-auto { background:#191e28; color:#e0e0e0; box-shadow:0 4px 25px rgba(0,0,0,0.4); }
			.mod-cb-theme-auto .mod-cb-text a { color:#64b5f6; }
			.mod-cb-theme-auto .mod-cb-text a:hover { color:#90caf9; }
		}

        .mod-cb-modal-overlay { position:fixed; inset:0; background:rgba(0,0,0,0.5); z-index:100000; display:flex; align-items:center; justify-content:center; padding:20px; opacity:0; pointer-events:none; transition:opacity 0.25s ease; }
        .mod-cb-modal-overlay--visible { opacity:1; pointer-events:auto; }

        .mod-cb-modal { background:#ffffff; border-radius:12px; padding:32px; max-width:640px; width:100%; max-height:90vh; overflow-y:auto; box-shadow:0 20px 60px rgba(0,0,0,0.3); transform:scale(1.05); opacity:0; transition:transform 0.25s ease, opacity 0.25s ease; }
        .mod-cb-modal-overlay--visible .mod-cb-modal { transform:scale(1); opacity:1; }

        .mod-cb-modal-title { margin:0 0 8px; font-size:24px; font-weight:700; }
        .mod-cb-modal-subtitle { margin:0 0 24px; color:#666666; font-size:14px; }
        .mod-cb-modal-services { display:flex; flex-direction:column; gap:16px; margin-bottom:20px; }
        .mod-cb-service { border:1px solid #e0e0e0; border-radius:8px; padding:16px; }
        .mod-cb-service--required { background:#f5f5f5; }
        .mod-cb-service label { display:flex; align-items:center; gap:12px; font-weight:600; cursor:pointer; }
        .mod-cb-service input[type="checkbox"] { width:20px; height:20px; cursor:pointer; }
        .mod-cb-service input[type="checkbox"]:disabled { cursor:default; }
        .mod-cb-service p { margin:8px 0 0 32px; color:#666666; font-size:13px; }
        .mod-cb-service-status { float:right; color:#999999; font-size:13px; font-weight:400; }
        .mod-cb-modal-note { color:#999999; font-size:13px; margin-bottom:20px; }
        .mod-cb-modal-actions { display:flex; flex-wrap:wrap; gap:12px; }
        .mod-cb-modal-actions button { flex: 1; }

        @media screen and (max-width:768px) {
            .mod-cb-container { bottom:10px; padding:0 10px; justify-content:center !important; }
            .mod-cb-wrapper { padding:16px; flex-direction:column !important; align-items:stretch !important; gap:16px; }
            .mod-cb-text { text-align:center !important; font-size:13px; }
            .mod-cb-actions { flex-direction:column-reverse !important; align-items:center !important; gap:12px; white-space:normal; }
            .mod-cb-actions .mod-cb-btn { width:100%; text-align:center; padding:12px; }
        }

        .mod-cb-reopen { position:fixed; left:16px; bottom:1rem; z-index:99998; width:40px; height:40px; display:flex; align-items:center; justify-content:center; background:#1C2E5A; color:#ffffff; border-radius:50%; cursor:pointer; box-shadow:0 2px 10px rgba(0,0,0,0.2); transition:opacity 0.2s, transform 0.2s; }
        .mod-cb-reopen:hover { opacity:0.85; transform:scale(1.05); }
        .mod-cb-reopen svg { width:20px; height:20px; pointer-events:none; }
        .mod-cb-theme-light ~ .mod-cb-reopen { background:#ffffff; color:#333333; }
        .mod-cb-theme-dark ~ .mod-cb-reopen { background:#191e28; color:#e0e0e0; }