/* ==========================================================================
   WordPress / Elementor integration layer (loaded after site.css)
   ========================================================================== */

/* Admin bar offset for the fixed header and menu */
body.admin-bar .hdr{top:32px}
body.admin-bar .menu{top:32px}
@media (max-width:782px){body.admin-bar .hdr{top:46px}body.admin-bar .menu{top:46px}}
#wpadminbar{position:fixed!important}

/* Elementor: our widgets render full-bleed sections themselves */
.elementor-section,.e-con,.e-con-inner{padding:0}
.elementor .e-con{--padding-top:0;--padding-bottom:0;--padding-left:0;--padding-right:0;--gap:0;--row-gap:0;--column-gap:0}
.elementor-widget-container{margin:0}
.elementor-element.elementor-widget{width:100%}
.e-con.e-flex>.elementor-widget{max-width:100%}
.elementor-widget:not(:last-child){margin-block-end:0}
.elementor-section.elementor-section-boxed>.elementor-container{max-width:none}
/* In the Elementor editor, keep things static and editable */
body.elementor-editor-active .loader,body.elementor-editor-preview .loader{display:none!important}
body.elementor-editor-active [data-split] .c,body.elementor-editor-active [data-reveal]{transform:none!important;opacity:1!important}
body.elementor-editor-active .tunnel.is-3d .tunnel-pin{height:auto}

/* Accessibility helpers */
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.skip-link:focus{position:fixed;left:16px;top:16px;z-index:999;background:var(--lime);color:var(--ink);padding:12px 18px;border-radius:999px;clip:auto;width:auto;height:auto}
:focus-visible{outline:2px solid var(--lime);outline-offset:3px}

/* Prose (privacy policy, posts, project body) */
.prose{max-width:820px;font-size:18px;line-height:1.7}
.prose>*+*{margin-top:1.1em}
.prose h2{font-size:clamp(26px,2.6vw,38px);font-weight:500;letter-spacing:-.03em;line-height:1.15;margin-top:1.6em}
.prose h3{font-size:22px;font-weight:600;margin-top:1.4em}
.prose ul,.prose ol{padding-left:1.3em}
.prose li+li{margin-top:.35em}
.prose a{text-decoration:underline;text-underline-offset:3px}
.prose img{border-radius:var(--r-sm)}
.prose blockquote{border-left:3px solid var(--lime);padding-left:20px;font-size:1.15em}
.wp-block-image,.wp-block-embed{margin-block:1.6em}
.alignwide{max-width:1100px}.alignfull{width:100vw;max-width:none;margin-left:calc(50% - 50vw)}
.nav-links{display:flex;gap:8px;justify-content:center}
.nav-links .page-numbers{display:grid;place-items:center;min-width:44px;height:44px;border-radius:999px;border:1px solid var(--line)}
.nav-links .page-numbers.current{background:var(--lime);color:var(--ink);border-color:var(--lime)}

/* Header account bell dot (unread notifications) */
.hdr-acc{position:relative}
.md-bell-dot{position:absolute;top:6px;left:36px;width:10px;height:10px;border-radius:50%;background:#ff5a4f;border:2px solid #101415}

/* Form feedback shared by plugins */
.md-msg{display:none;padding:14px 18px;border-radius:12px;font-size:14px}
.md-msg.show{display:block}
.md-msg.err{background:rgba(255,92,92,.12);color:#ff9b9b;border:1px solid rgba(255,92,92,.3)}
.md-msg.ok{background:rgba(212,255,79,.12);color:var(--lime);border:1px solid rgba(212,255,79,.3)}
[data-bg="light"] .md-msg.ok{color:#3c5a00;background:rgba(122,160,0,.12)}
