/* ParsSkin Hafez — Stage 41, single-couplet share cards.
   All page rules are scoped; existing reader mode and ghazal layout stay intact. */
.hg-page .hbc-hint { margin:0 0 15px; padding:8px 12px; color:#60746c; background:#f4f8f4; border:1px solid #e2ebe2; border-radius:10px; font-size:13px; line-height:2; }
.hg-page .hbc-verse-action { display:flex; justify-content:center; margin:7px auto 0; }
.hg-page .hbc-verse-btn { font:inherit; font-size:12px; line-height:1.8; color:#315a50; background:#f7faf7; border:1px solid #d9e8db; border-radius:999px; padding:5px 14px; min-height:38px; cursor:pointer; transition:background .15s,border-color .15s; }
.hg-page .hbc-verse-btn:hover { background:#e9f3eb; border-color:#b2cdb8; }
.hg-page .hbc-verse-btn:focus-visible { outline:3px solid #b78b50; outline-offset:3px; }
.hg-page .hg-verse:last-child .hbc-verse-action { margin-bottom:3px; }
/* Overlay is attached directly to <body> to avoid clipping by template containers. */
body.hbc-lock { overflow:hidden!important; }
.hbc-overlay,.hbc-overlay * { box-sizing:border-box; }
.hbc-overlay { position:fixed; inset:0; z-index:2147483000; display:flex; justify-content:center; align-items:center; padding:14px; overflow-y:auto; background:rgba(15,35,31,.82); direction:rtl; font-family:inherit; }
.hbc-overlay[hidden] { display:none!important; }
.hbc-dialog { width:min(100%,920px); max-height:min(95vh,100%); overflow-y:auto; overscroll-behavior:contain; background:#fffdf9; border:1px solid #e9ddc5; border-radius:18px; color:#263e36; box-shadow:0 24px 85px rgba(0,0,0,.28); padding:20px; }
.hbc-top { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin:0 0 13px; }
.hbc-title { margin:0; font-size:20px; line-height:1.7; flex:1 1 210px; color:#254f43; }
.hbc-close { background:#f2ede4!important; border:1px solid #ded2c1!important; border-radius:10px; color:#4a524a!important; font:inherit; font-size:13px; font-weight:700; min-height:42px; padding:6px 13px; cursor:pointer; }
.hbc-intro { font-size:13px; color:#68736b; line-height:1.9; margin:0 0 14px; }
.hbc-themes { display:flex; gap:9px; flex-wrap:wrap; margin:0 0 15px; }
.hbc-theme { border:1px solid #d4d9d0!important; border-radius:11px; background:#fff!important; color:#325047!important; font:inherit; font-weight:700; font-size:13px; padding:9px 15px; min-height:43px; cursor:pointer; }
.hbc-theme[aria-pressed="true"] { background:#e6f0e9!important; border-color:#285748!important; box-shadow:inset 0 0 0 1px #285748; }
.hbc-preview-wrap { background:#e8e9e5; border:1px solid #d6ddd7; border-radius:13px; padding:14px; text-align:center; overflow:hidden; }
.hbc-canvas { display:block; width:auto; max-width:100%; height:auto; max-height:51vh; margin:auto; border-radius:6px; box-shadow:0 5px 20px rgba(32,39,33,.16); background:#eee; }
.hbc-options { display:flex; align-items:center; gap:12px; flex-wrap:wrap; padding:11px 2px 0; font-size:13px; }
.hbc-logo-label { display:flex; align-items:center; gap:8px; line-height:1.9; cursor:pointer; }
.hbc-logo-label input { width:17px; height:17px; accent-color:#285748; }
.hbc-status { flex:1 1 170px; font-size:12px; color:#6a756b; line-height:1.8; min-height:20px; }
.hbc-actions { display:flex; gap:9px; flex-wrap:wrap; margin-top:14px; }
.hbc-action { flex:1 1 160px; background:#285748!important; border:1px solid #285748!important; border-radius:10px; color:#fff!important; font:inherit; font-size:13px; font-weight:700; padding:10px 13px; min-height:46px; cursor:pointer; }
.hbc-action.hbc-secondary { background:#fff!important; color:#285748!important; }
.hbc-action:disabled { opacity:.55; cursor:not-allowed; }
.hbc-dialog button:focus-visible,.hbc-dialog input:focus-visible { outline:3px solid #b78b50; outline-offset:3px; }
.hbc-caption { color:#65736a; font-size:12px; line-height:1.9; margin:10px 0 0; }
@media(max-width:520px){
 .hg-page .hbc-verse-btn { min-height:42px; font-size:12px; }
 .hbc-overlay { padding:5px; align-items:flex-start; }
 .hbc-dialog { padding:13px; max-height:calc(100vh - 10px); max-height:calc(100dvh - 10px); border-radius:13px; }
 .hbc-title { font-size:16px; flex-basis:130px; }
 .hbc-intro { font-size:12px; }
 .hbc-preview-wrap { padding:8px; }
 .hbc-canvas { max-height:42vh; }
 .hbc-action { flex-basis:42%; font-size:12px; padding:9px 7px; }
}
@media(prefers-reduced-motion:reduce){.hg-page .hbc-verse-btn { transition:none; }}
