/* Publish sheet (calm bottom sheet, Learn look: cream paper, serif headings, outlined pills). Logical properties only: works left-to-right and right-to-left. */
html.pbp-lock{overflow:hidden}
.pbp{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-end;justify-content:center;font-family:var(--sans);color:var(--ink)}
.pbp[hidden]{display:none}
.pbp-back{position:absolute;inset:0;background:color-mix(in srgb,var(--cocoa,#241915) 55%,transparent);animation:pbpFade var(--t-med) var(--ease) both}
.pbp-sheet{position:relative;width:min(100%,560px);max-height:90vh;max-height:90dvh;overflow:auto;overscroll-behavior:contain;background:var(--bg);border:1.5px solid var(--ink);border-bottom:0;border-radius:var(--r-4) var(--r-4) 0 0;
  padding:10px 20px calc(20px + env(safe-area-inset-bottom,0px));box-shadow:0 -10px 40px -18px #24191599;animation:pbpUp var(--t-slow) var(--ease) both}
.pbp-grab{width:42px;height:5px;border-radius:9px;background:var(--line2);margin:0 auto 14px}
.pbp-h{font-family:var(--display);font-weight:700;font-size:var(--fs-5);line-height:1.15;margin:0 0 6px;outline:0}
.pbp-h3{font-family:var(--display);font-size:var(--fs-4);margin:0 0 8px}
.pbp-sub{color:var(--muted);font-size:var(--fs-2);margin:0 0 14px}
.pbp-l{display:block;font:600 14px var(--sans);color:var(--muted);margin:12px 0 4px}
.pbp-in{width:100%;min-height:48px;border-radius:var(--r-2);border:1.5px solid var(--line2);background:var(--surface);color:var(--ink);font:500 16px var(--sans);padding:10px 14px}
.pbp-in:focus-visible{outline:0;border-color:var(--accent);box-shadow:var(--glow)}
.pbp-pw{position:relative}
.pbp-pw .pbp-in{padding-inline-end:84px}
.pbp-eye{position:absolute;inset-block:6px;inset-inline-end:6px;min-width:64px;border:1.5px solid var(--line2);border-radius:var(--r-pill);background:transparent;color:var(--ink);font:600 14px var(--sans);cursor:pointer;padding:0 12px}
.pbp-hint{font-size:var(--fs-1);color:var(--muted);margin:6px 0 0}
.pbp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:var(--tap);padding:0 20px;border:1.5px solid var(--ink);border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font:700 16px var(--sans);text-decoration:none;cursor:pointer;box-shadow:var(--hard-sm);text-align:center}
.pbp-btn:active:not(:disabled){transform:translate(2px,2px);box-shadow:none}
.pbp-btn:disabled{opacity:.6;cursor:default}
.pbp-primary{background:var(--btn-bg);color:var(--btn-ink);border-color:var(--btn-line)}
.pbp-form .pbp-primary{width:100%;margin-block-start:16px}
.pbp-small{min-height:40px;padding:0 14px;font-size:14px}
.pbp-danger{background:var(--bad);border-color:var(--bad);color:#fff}
.pbp-btn:focus-visible,.pbp-link:focus-visible,.pbp-eye:focus-visible,.pbp-su:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.pbp-link{background:none;border:0;padding:10px 4px;min-height:var(--tap);color:var(--accent-text);font:600 15px var(--sans);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.pbp-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-block-start:10px}
.pbp-err,.pbp-ok{border-radius:var(--r-2);padding:10px 14px;margin:0 0 10px;font-size:var(--fs-2);border:1.5px solid}
.pbp-err{color:var(--bad);border-color:var(--bad);background:color-mix(in srgb,var(--bad) 8%,var(--surface))}
.pbp-ok{color:var(--good);border-color:var(--good);background:color-mix(in srgb,var(--good) 8%,var(--surface))}
.pbp-link-box{font:600 15px var(--mono);background:var(--surface);border:1.5px dashed var(--line2);border-radius:var(--r-2);padding:14px;word-break:break-all;text-align:start;margin-block-end:8px;unicode-bidi:plaintext}
.pbp-exp{font:600 13px var(--mono);color:var(--muted);margin:0 0 12px}
[dir=rtl] .pbp-exp{font-family:var(--sans);font-size:14px}
.pbp-acts{display:flex;gap:10px;flex-wrap:wrap;margin-block:6px 14px}
.pbp-acts .pbp-btn{flex:1 1 150px}
.pbp-sites{border-top:1px solid var(--line);padding-top:14px;margin-block-start:6px}
.pbp-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.pbp-site{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r-2);padding:12px 14px}
.pbp-sm{display:grid;gap:2px;min-width:0;flex:1 1 180px}
.pbp-sn{font-family:var(--display);font-size:var(--fs-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pbp-sd{font-size:var(--fs-1);color:var(--muted)}
.pbp-su{font:500 13px var(--mono);color:var(--accent-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:start}
.pbp-ask{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:var(--fs-2)}
.pbp-spin{display:flex;gap:8px;justify-content:center;padding:18px 0 10px}
.pbp-spin i{width:12px;height:12px;border-radius:50%;background:var(--accent);animation:pbpDot 1s var(--ease) infinite}
.pbp-spin i:nth-child(2){animation-delay:.15s}.pbp-spin i:nth-child(3){animation-delay:.3s}
@keyframes pbpUp{from{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}
@keyframes pbpFade{from{opacity:0}to{opacity:1}}
@keyframes pbpDot{0%,100%{transform:scale(.6);opacity:.5}50%{transform:scale(1);opacity:1}}
@media (prefers-reduced-motion:reduce){.pbp-sheet,.pbp-back,.pbp-spin i{animation:none}}
@media (min-width:700px){.pbp{align-items:center}.pbp-sheet{border-bottom:1.5px solid var(--ink);border-radius:var(--r-4);padding-bottom:20px}}

/* Feedback sheet and "Was this clear?" (feedback.js reuses the publish sheet look) */
.fbkinds{display:flex;flex-wrap:wrap;gap:8px}
.fbkind{min-height:44px;padding:0 16px;border:1.5px solid var(--line2);border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font:600 15px var(--sans);cursor:pointer}
.fbkind[aria-pressed="true"]{border-color:var(--ink);background:color-mix(in srgb,var(--accent) 16%,var(--surface))}
.fbfaces{display:flex;gap:8px}
.fbface{flex:1;min-height:64px;display:grid;place-items:center;gap:2px;padding:6px;border:1.5px solid var(--line2);border-radius:var(--r-2);background:var(--surface);color:var(--muted);font:600 13px var(--sans);cursor:pointer}
.fbface[aria-pressed="true"]{border-color:var(--ink);color:var(--accent-text);background:color-mix(in srgb,var(--accent) 12%,var(--surface))}
.fbtext{resize:vertical;min-height:96px}
.fbsend{width:100%;margin-block-start:14px}
.fbwa{width:100%;margin-block-start:10px}
.fbq{margin:18px 0 6px;padding:14px;border:1.5px solid var(--line2);border-radius:var(--r-3);background:var(--surface);text-align:start}
.fbqt{margin:0 0 10px;font-size:19px}
.fbqin{margin-block-start:10px}
.fbqrow{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-block-start:10px}
.fbtop{margin-inline-start:auto}
.fbq .fbface,.pbp .fbface{color:var(--muted)}
