/* C32: the event poster swipe (T2 labelled pager + the shared viewer; T3 chip behind ?poster=t3). Loaded after app/evfs.css.
   Colours: ink/paper tokens only (--fg/--muted/--rule2 from .evx); nothing is sampled from the photo or the poster. visual-audit/c32/C32.md §6. */
.evx .c32w{position:relative;flex:none;width:100%}
.evx .c32t{position:relative;width:100%;overflow:hidden;touch-action:pan-y;overscroll-behavior-x:contain;outline:0}
.evx .c32in{display:flex;width:100%;will-change:transform}
.evx .c32p{flex:0 0 100%;width:100%;position:relative;overflow:hidden}
.evx .c32p1{display:flex;flex-direction:column}
.evx.e-overlay .c32p1>.e-hero{margin:0}
/* the top chrome lifted out of the hero stays put while the pages move; hero ink pills on the photo and on the poster's blur */
.evx .c32w>.e-top{position:absolute;left:8px;right:8px;top:8px;z-index:5;padding:10px}
.evx .c32w>.e-top .e-chip,.evx .c32w>.e-top .e-ib{background:rgba(14,12,10,.74);border-color:transparent;color:#fff}
.evx .c32w>.e-top .e-chip small{color:rgba(255,255,255,.82)}
.evx .e-top .e-ib{flex:none;min-width:44px;min-height:44px}
.evx .e-top .e-chip{flex:0 1 auto;overflow:hidden}
/* S4 page 2: the poster whole and uncropped on a blurred copy of itself under a veil. No text over it. */
.evx .c32p2{background:#0C0B09}
.evx .c32p2 .c32pbg{position:absolute;inset:-40px;width:calc(100% + 80px);height:calc(100% + 80px);object-fit:cover;filter:blur(28px) saturate(1.05);transform:scale(1.15);opacity:.9;pointer-events:none}
.evx .c32p2 .c32pveil{position:absolute;inset:0;background:rgba(245,241,232,.30);pointer-events:none}
html[data-theme=dark] .evx .c32p2 .c32pveil{background:rgba(12,11,9,.38)}
.evx .c32p2 .c32pfg{position:absolute;left:16px;right:16px;top:var(--ptop,16px);bottom:var(--pbot,16px);display:flex;align-items:center;justify-content:center;padding:0;border:0;background:none;cursor:zoom-in;-webkit-tap-highlight-color:transparent}
.evx .c32p2 .c32pfg img{max-width:100%;max-height:100%;width:auto;height:auto;display:block;box-shadow:0 1px 0 rgba(0,0,0,.25),0 8px 24px rgba(0,0,0,.28);border-radius:2px;-webkit-user-drag:none;user-select:none}
/* S5 the T2 label row: 36 px of layout, 44 px targets (negative margins) */
.evx .c32row{flex:none;display:flex;align-items:center;justify-content:space-between;height:36px;padding:0 12px;position:relative;z-index:4}
.evx .c32row.c32withmore{padding-left:20px}
.evx .c32row.c32withmore .c32lab{margin-left:auto}
.evx .c32dots{display:flex}
.evx .c32dot{height:44px;margin:-4px 0;min-width:44px;display:flex;align-items:center;justify-content:center;border:0;background:none;padding:0;cursor:pointer}
.evx .c32dot i{display:block;width:8px;height:8px;border-radius:4px;background:var(--muted);transition:width .2s}
.evx .c32dot[aria-current=true] i{width:22px;background:var(--fg)}
.evx .c32lab{height:44px;margin:-4px 0;display:flex;align-items:center;gap:8px;border:0;background:none;padding:0 4px;font:600 15px/1 var(--f-b);color:var(--fg);cursor:pointer}
.evx .c32lab[hidden],.evx .c32more[hidden]{display:none}
.evx .c32th{display:block;flex:none;width:24px;height:24px;border-radius:4px;background-size:cover;background-position:center;box-shadow:0 0 0 1px var(--rule2)}
.evx .c32ar{font-size:18px;line-height:1;color:var(--muted)}
.evx .c32more{height:44px;margin:-4px 0;border:0;background:none;padding:0;font:600 15px/1 var(--f-b);color:var(--fg);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
/* T3 (?poster=t3): a solid Poster chip that opens the viewer (no paging) */
.evx .c32chip{position:absolute;z-index:6;right:18px;top:70px;height:44px;display:flex;align-items:center;gap:8px;padding:0 12px 0 8px;border-radius:22px;border:0;background:#FBF8F2;color:#15120F;font:600 15px/1 var(--f-b);box-shadow:0 0 0 1px rgba(21,18,15,.18);cursor:pointer}
.evx .c32chip .c32th{box-shadow:0 0 0 1px rgba(21,18,15,.25)}
.evx .c32seam{flex:none;display:flex;align-items:center;justify-content:flex-end;padding:0 16px 0 20px;height:36px;position:relative;z-index:4}
.evx .c32seam .c32chip{position:relative;right:auto;top:auto;margin:-4px 0}
/* S7 the viewer: everything above the action bar, on black; the bar stays live */
.evx .c32v{position:absolute;left:0;right:0;top:0;z-index:40;background:#0C0B09;display:flex;flex-direction:column;color:#F2EDE3}
.evx .c32v[hidden]{display:none}
.evx .c32v.c32fadein{animation:c32fade .18s ease-out}
@keyframes c32fade{from{opacity:0}to{opacity:1}}
.evx.c32vopen{overflow:hidden}
.evx .c32vtop{flex:none;display:flex;align-items:center;gap:8px;padding:8px 10px}
.evx .c32vsp{flex:1}
.evx .c32vb{height:44px;min-width:44px;padding:0 14px;border-radius:22px;border:0;background:#2A2722;color:#F2EDE3;font:600 15px/1 var(--f-b);cursor:pointer;display:grid;place-items:center}
.evx .c32vb.c32vmore{padding:0;width:44px}
.evx .c32vb[aria-pressed=true]{background:#F2EDE3;color:#14110D}
.evx .c32vdate{flex:none;margin:0;padding:0 16px 8px;color:#F2EDE3;font:600 15px/1.3 var(--f-b);text-align:center}
.evx .c32vsc{flex:1;min-height:0;overflow:hidden;display:flex;align-items:center;justify-content:center;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}
.evx .c32vsc img{max-width:100%;max-height:100%;display:block;-webkit-user-drag:none;user-select:none}
.evx .c32v.c32z .c32vsc{display:block;overflow:auto}
.evx .c32v.c32z .c32vsc img{margin:0}
.evx .c32vtx{flex:none;max-height:38%;overflow:auto;background:#17150F;color:#F2EDE3;font:400 16px/1.45 var(--f-b);padding:14px 18px}
.evx .c32vtx[hidden]{display:none}
.evx .c32vtx b{display:block;font:600 12px/1 var(--f-b);letter-spacing:.12em;text-transform:uppercase;color:#A69E91;margin-bottom:8px}
.evx .c32vtx p{margin:0}
.evx .c32sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:reduce){.evx .c32in{transition:none!important}.evx .c32dot i{transition:none}.evx .c32v.c32fadein{animation:none}}
/* ---------- S10 composer: background photo + poster, both optional ---------- */
.c32c{padding:2px 0 8px}
.c32c[hidden]{display:none}
.c32c-h{font:600 12px/1 var(--f-ui,system-ui);letter-spacing:.08em;text-transform:uppercase;display:flex;gap:8px;align-items:baseline;margin:0 0 6px;color:var(--ink,inherit)}
.c32c-h span{letter-spacing:0;text-transform:none;font-weight:400;color:var(--muted-ink,#5B544A)}
html[data-theme=dark] .c32c-h span{color:#A69E91}
.c32c-r{display:flex;gap:8px;align-items:center}
.c32c-th{position:relative;width:84px;height:56px;border-radius:8px;overflow:hidden;flex:none;border:0;padding:0;background:#222;box-shadow:0 1px 3px rgba(0,0,0,.25);cursor:pointer}
.c32c-th img{width:100%;height:100%;object-fit:cover;display:block}
.c32c-th.po img.bg{position:absolute;inset:0;filter:blur(6px) brightness(.8);transform:scale(1.2)}
.c32c-th.po img.fg{position:absolute;inset:3px;width:calc(100% - 6px);height:calc(100% - 6px);object-fit:contain}
.c32c-th .n{position:absolute;right:3px;bottom:3px;background:rgba(0,0,0,.72);color:#fff;font:700 10px/1.3 system-ui;border-radius:6px;padding:1px 5px}
.c32c-th .mt{position:absolute;left:4px;bottom:4px;background:#fff;border-radius:3px;font:800 9px/1 "Marla Outfit C28",system-ui;color:#15120F;padding:2px 3px}
.c32c-th.plain{background:var(--card,#EFE6D8);color:var(--ink,#15120F);text-align:left;font:500 26px/1 Fraunces,serif;padding:4px 6px;box-shadow:inset 0 0 0 1px var(--line,#CFC4B3)}
.c32c-th.plain small{display:block;font:500 8px/1.1 Fraunces,serif;margin-top:2px;overflow:hidden;max-height:18px}
html[data-theme=dark] .c32c-th.plain{background:#1E1C19;color:#F2EDE3;box-shadow:inset 0 0 0 1px #3A3631}
.c32c-add{width:84px;height:56px;border-radius:8px;border:1.5px dashed currentColor;background:none;color:inherit;font:600 13px system-ui;flex:none;cursor:pointer;opacity:.85}
.c32c-cap{font-size:13px;line-height:1.25;opacity:.82;min-width:0}
.c32c-cap button{color:inherit;font:600 13px system-ui;text-decoration:underline;min-height:44px;padding:0 2px;border:0;background:none;cursor:pointer}
.c32c-alt{display:flex;align-items:center;gap:8px;margin-top:6px;min-height:44px;border-radius:12px;background:rgba(127,117,100,.14);padding:0 4px 0 12px;font-size:13px}
.c32c-alt span{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.c32c-alt em{font-style:normal;font-weight:600;margin-right:4px}
.c32c-alt button{min-height:44px;min-width:44px;border:0;background:none;color:inherit;font:600 14px system-ui;text-decoration:underline;cursor:pointer}
.c32c-w{border-radius:14px;background:#FFF4D6;color:#5A3E00;padding:10px 12px 4px;margin-top:6px;font-size:13.5px;line-height:1.3}
.c32c-w.block{background:#FBE3E3;color:#7A1020}
html[data-theme=dark] .c32c-w{background:#3A2E10;color:#FFE3A3}
html[data-theme=dark] .c32c-w.block{background:#3E1A1F;color:#FFC9CF}
.c32c-w b{display:block;font-size:14px}
.c32c-w .wb{display:flex;gap:8px;margin-top:6px;padding-bottom:6px}
.c32c-w .wb button{min-height:44px;flex:1;border-radius:22px;border:1.5px solid currentColor;background:transparent;color:inherit;font:600 14px system-ui;cursor:pointer}
.c32c-w .wb button.p{background:currentColor}
.c32c-w .wb button.p span{color:#FFF4D6}
.c32c-w.block .wb button.p span{color:#FBE3E3}
html[data-theme=dark] .c32c-w .wb button.p span{color:#3A2E10}
html[data-theme=dark] .c32c-w.block .wb button.p span{color:#3E1A1F}
.ev-sheet .c32-opt{display:flex;gap:12px;align-items:center;width:100%;min-height:64px;border:0;border-radius:14px;background:rgba(127,117,100,.14);color:inherit;text-align:left;padding:8px 12px;margin-bottom:8px;font:15px system-ui;cursor:pointer}
.ev-sheet .c32-opt .ic{width:48px;height:48px;border-radius:10px;flex:none;display:grid;place-items:center;font-size:22px;background:rgba(127,117,100,.18)}
.ev-sheet .c32-opt b{display:block;font-size:16px}.ev-sheet .c32-opt small{opacity:.8;font-size:13px}
.ev-sheet .c32-ta{width:100%;height:110px;border-radius:12px;border:1.5px solid rgba(127,117,100,.5);background:transparent;color:inherit;font:15px/1.35 system-ui;padding:10px;box-sizing:border-box}
.ev-sheet .c32-hint{font-size:13px;opacity:.8;margin:6px 2px 10px}
.ev-sheet .c32-row2{display:flex;gap:8px}
.ev-sheet .c32-row2 button{flex:1;min-height:48px;border-radius:24px;font:600 16px system-ui;border:1.5px solid rgba(127,117,100,.5);background:none;color:inherit;cursor:pointer}
.ev-sheet .c32-check{display:inline-block;margin-left:6px;font:700 11px/1 system-ui;letter-spacing:.06em;text-transform:uppercase;padding:3px 6px;border-radius:6px;background:#FFF4D6;color:#5A3E00}

/* FB3 R37-2: the poster viewer owns its touches: a swipe in it never pages the pager behind (zoomed, it pans) */
.evx .c32v{touch-action:none;overscroll-behavior:contain}.evx .c32v .c32vsc{touch-action:none;overscroll-behavior:contain}.evx .c32v.c32z .c32vsc{touch-action:pan-x pan-y}

/* ONE-DESIGN: the Full screen / poster row sits in the form (under the Photo and Poster pills), not pinned over it */
#ev-c32.c32c{padding:6px 0 10px;margin:0}
