#ocm-root { --ocm-accent:#1f543d; font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:15px; }
#ocm-root *, #ocm-root *::before, #ocm-root *::after { box-sizing:border-box; }
#ocm-root [hidden] { display:none !important; }
#ocm-root button { font-family:inherit; cursor:pointer; }
#ocm-root .ocm-banner { position:fixed; bottom:18px; left:50%; transform:translateX(-50%); width:min(1040px,calc(100% - 28px)); padding:24px 26px; z-index:2147483000; background:#fff; color:#17231c; border:1px solid #e4e9e5; border-radius:18px; box-shadow:0 14px 50px rgba(20,31,22,.17); display:flex; align-items:center; gap:32px; }
#ocm-root .ocm-copy { flex:1 1 auto; min-width:0; }
#ocm-root h2 { margin:0 0 9px; color:#17231c; font-size:20px; font-weight:750; letter-spacing:-.02em; line-height:1.3; }
#ocm-root .ocm-copy p { margin:0; font-size:14px; line-height:1.6; color:#4a554e; }
#ocm-root a { color:var(--ocm-accent); text-decoration:underline; }
#ocm-root .ocm-actions { flex:0 0 285px; display:grid; grid-template-columns:1fr 1fr; gap:9px; }
#ocm-root .ocm-actions .ocm-button:last-child { grid-column:1 / -1; grid-row:2; }
#ocm-root .ocm-button { border-radius:9px; padding:11px 13px; font-size:13px; font-weight:700; line-height:1.3; min-height:43px; transition:filter .15s ease; }
#ocm-root .ocm-button:hover { filter:brightness(.94); }
#ocm-root .ocm-button:focus-visible, #ocm-root .ocm-reopen:focus-visible, #ocm-root .ocm-close:focus-visible, #ocm-root input:focus-visible { outline:3px solid #8bbba0; outline-offset:3px; }
#ocm-root .ocm-button--primary { background:var(--ocm-accent); border:1px solid var(--ocm-accent); color:#fff; }
#ocm-root .ocm-button--outline { background:#fff; border:1px solid #d2ddd5; color:#253a2e; }
#ocm-root .ocm-reopen { position:fixed; left:16px; bottom:16px; z-index:2147482990; border:1px solid #d6ddd8; background:#fff; color:#253a2e; box-shadow:0 5px 20px #0002; padding:9px 14px; border-radius:24px; font-size:12px; font-weight:650; }
#ocm-root .ocm-shade { position:fixed; inset:0; z-index:2147483002; background:rgba(10,20,14,.56); }
#ocm-root .ocm-panel { position:fixed; width:min(540px,calc(100% - 24px)); max-height:min(84vh,750px); overflow-y:auto; left:50%; top:50%; transform:translate(-50%,-50%); z-index:2147483003; background:#fff; color:#17231c; border-radius:18px; padding:26px; box-shadow:0 18px 70px #0003; }
#ocm-root .ocm-panel__head { display:flex; align-items:flex-start; justify-content:space-between; gap:15px; }
#ocm-root .ocm-close { background:transparent; color:#435248; border:0; font-size:29px; line-height:1; }
#ocm-root .ocm-panel__intro { color:#58655c; font-size:14px; line-height:1.6; margin:0 0 12px; }
#ocm-root .ocm-setting { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:15px 0; border-bottom:1px solid #e6eee8; margin:0; cursor:pointer; }
#ocm-root .ocm-setting strong { display:block; color:#202d24; font-size:14px; }
#ocm-root .ocm-setting small { display:block; color:#637167; font-size:12px; margin-top:4px; line-height:1.5; }
#ocm-root .ocm-setting input { appearance:auto; width:19px; height:19px; accent-color:var(--ocm-accent); flex:0 0 19px; }
#ocm-root .ocm-always { color:var(--ocm-accent); font-size:12px; font-weight:700; flex:none; }
#ocm-root .ocm-panel__actions { display:flex; gap:10px; margin-top:22px; }
#ocm-root .ocm-panel__actions .ocm-button { flex:1; }
#ocm-root .ocm-error { color:#a22525; font-size:13px; margin:8px 0 0; }
#ocm-root .ocm-shortcode-button { background:transparent; border:0; color:inherit; text-decoration:underline; }
body.ocm-open { overflow:hidden; }
@media (max-width:700px) { #ocm-root .ocm-banner { display:block; padding:18px; bottom:10px; width:calc(100% - 20px); } #ocm-root h2 { font-size:17px; } #ocm-root .ocm-copy p { font-size:12px; } #ocm-root .ocm-actions { margin-top:16px; } #ocm-root .ocm-panel { padding:20px; } }
@media (max-width:370px) { #ocm-root .ocm-actions { display:flex; flex-direction:column; } }
