/* R478: short home ribbon and symbol in category strip only. */
#dol-support{position:fixed;left:0;top:80px;z-index:20000;font-family:var(--home-body,Arial,sans-serif);color:#183759;line-height:1.5;pointer-events:none}
#dol-support[hidden],#dol-support [hidden]{display:none!important}
#dol-support *{box-sizing:border-box}
#dol-support .dol-support-tab{pointer-events:auto;display:flex;align-items:center;flex-direction:column;gap:8px;width:30px;height:var(--dol-support-height,144px);margin:0;padding:10px 4px 16px;border:0;border-radius:0 5px 0 0;clip-path:polygon(0 0,100% 0,100% 100%,50% calc(100% - 9px),0 100%);background:#84243c;color:white;cursor:pointer;touch-action:manipulation;font:700 12px/1.2 Arial,sans-serif}
#dol-support .dol-support-tab svg{width:19px;height:19px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
#dol-support .dol-support-label{writing-mode:vertical-rl;text-orientation:mixed;white-space:nowrap;letter-spacing:.02em}
#dol-support button:focus-visible,#dol-support a:focus-visible{outline:3px solid #e9a52b;outline-offset:3px}
#dol-support .dol-support-panel{pointer-events:auto;position:fixed;left:40px;right:40px;top:50%;width:auto;max-width:350px;margin-inline:auto;max-height:calc(100dvh - 28px);overflow:auto;overscroll-behavior:contain;background:#fff;border:2px solid #84243c;border-top-width:5px;border-radius:16px;box-shadow:0 12px 42px #193b6338;padding:58px 18px 20px;transform:translateY(-50%)}
#dol-support h2{margin:6px 0 18px;color:#84243c;font:bold 23px/1.2 Georgia,serif}
#dol-support p{margin:0 0 16px;font-size:15px;line-height:1.55}
#dol-support .dol-support-close{position:absolute;left:10px;top:8px;min-width:96px;min-height:40px;padding:6px 10px;border:1px solid #e4cbd2;border-radius:8px;background:#fff7f9;color:#84243c;font:700 14px/1.2 Arial,sans-serif;cursor:pointer}
#dol-support .dol-support-action{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;padding:10px 12px;border:0;border-radius:9px;background:#84243c;color:white;text-decoration:none;font:700 15px/1.4 Arial,sans-serif;cursor:pointer}
#dol-support .dol-support-payment{margin-top:16px}
#dol-support .dol-support-currencies{display:flex;gap:10px}
#dol-support .dol-support-free{margin:14px 0 0;font-size:12px;color:#647188}
#dol-support .dol-support-notice{padding:12px;border-radius:8px;background:#faf0f3;color:#713044;font-size:14px;border-left:3px solid #84243c}
.dol-support-menu{color:#84243c!important}
#dol-support .dol-support-backdrop{position:fixed;inset:0;background:#102e591a;pointer-events:auto;touch-action:none}
#dol-support .dol-support-panel{isolation:isolate;z-index:2}
#dol-support .dol-support-brand{font:700 10px/1.4 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#7b5260}
body.dol-support-open .niagara-rail,body.dol-support-open .niagara-bubble,body.dol-support-open .symbol-niagara-preview{pointer-events:none!important}
@media(max-height:520px){#dol-support .dol-support-panel{position:fixed;left:40px;top:12px;max-height:calc(100dvh - 24px);transform:none}}
@media print{#dol-support{display:none!important}}
#dol-support .dol-support-tab{position:relative;z-index:3}
/* The header, search, result list and article layout keep their existing widths. */
.library-shell .dol-one-library-sticky>.dol-support-tabs-host{margin-left:36px!important;width:calc(100% - 36px)!important}
#dol-support[data-placement="home"] .dol-support-tab{width:28px;gap:0;justify-content:center;padding:8px 4px 14px;font-size:12px}
#dol-support[data-placement="home"] .dol-support-tab svg{display:block;width:20px;height:20px;stroke-width:2.6}
#dol-support[data-placement="categories"] .dol-support-tab{width:32px;padding:7px 4px 10px;justify-content:center;gap:0;clip-path:polygon(0 0,100% 0,100% 100%,50% calc(100% - 5px),0 100%)}
#dol-support[data-placement="categories"] .dol-support-label{display:none}
#dol-support[data-placement="categories"] .dol-support-tab svg{width:23px;height:23px}

/* R479: the ribbon follows the elliptical photo seam, leaving the hero untouched. */
#dol-support[data-placement="home"] .dol-support-tab{height:var(--dol-support-height);clip-path:var(--dol-support-clip);justify-content:flex-start;padding-top:var(--dol-support-content-top,40px)}

#dol-support[data-placement="home"] .dol-support-tab{gap:6px}
#dol-support[data-placement="categories"] .dol-support-tab svg{stroke-width:2.6}

/* R481: align the longer Polish label's bottom clearance with English Support. */
html[lang="pl"] #dol-support[data-placement="home"] .dol-support-tab>svg,
html[lang="pl"] #dol-support[data-placement="home"] .dol-support-tab>.dol-support-label{transform:translateY(-6px)}

/* R482: a clear choice between one gift and voluntary monthly patronage. */
#dol-support .dol-support-modes{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 12px}
#dol-support .dol-support-mode{display:flex;flex-direction:column;gap:5px;align-items:flex-start;text-align:left;min-width:0;min-height:88px;padding:12px 10px;border:2px solid #e6d4d9;border-radius:10px;background:#fff;color:#713044;cursor:pointer;font:14px/1.35 Arial,sans-serif}
#dol-support .dol-support-mode strong{font-weight:750;font-size:14px}
#dol-support .dol-support-mode span{font-size:12px;color:#647188}
#dol-support .dol-support-mode[aria-pressed="true"]{border-color:#84243c;background:#faf0f3;box-shadow:inset 0 -3px 0 #84243c}
#dol-support .dol-support-mode-info{font-size:13px;color:#53687e;margin-bottom:14px}
@media(max-width:340px){#dol-support .dol-support-modes{grid-template-columns:1fr}}

/* R484: the fabric is a decorative raster; text and heart remain live controls.
   Its transparent margins are cropped by CSS, preserving the original asset. */
#dol-support[data-placement="home"].dol-support-fabric .dol-support-tab{
  clip-path:none;border-radius:0;background:transparent;overflow:visible;
  filter:drop-shadow(2px 3px 2px #35131e29);
}
#dol-support[data-placement="home"].dol-support-fabric .dol-support-tab::before{
  content:"";position:absolute;inset:-3px -2px -1px;z-index:-1;pointer-events:none;
  background:url("support-ribbon-r484.png") 50% 50%/260% 103% no-repeat;
  filter:brightness(.94) saturate(.85);
}
#dol-support[data-placement="home"] .dol-support-tab:focus-visible{
  outline:2px solid #e9a52b;outline-offset:4px;
}
/* The inset shortens the curved cap: reserve notch clearance in all languages. */
#dol-support[data-placement="home"] .dol-support-tab>svg,
#dol-support[data-placement="home"] .dol-support-tab>.dol-support-label{transform:translateY(-6px)}
@media(forced-colors:active){
  #dol-support[data-placement="home"].dol-support-fabric .dol-support-tab{
    background:ButtonFace;color:ButtonText;border:1px solid ButtonText;filter:none;
  }
  #dol-support[data-placement="home"].dol-support-fabric .dol-support-tab::before{display:none}
}
