/* BRM Traitors role reveal — public ceremony and optional self-recorded video. */
#brm-role-reveal-player[hidden],#brm-role-reveal-host[hidden],
.brm-role-video-modal [hidden],.brm-role-stage [hidden]{display:none!important}
.brm-role-actions,.brm-role-host{
 color:#f1e3c6;border:1px solid #a58b58;
 background:linear-gradient(145deg,#26281f,#121a17);
 padding:14px;margin:12px 0;box-shadow:inset 0 1px #ecd39724;
}
.brm-role-actions h3{color:#f1d298;font:23px/1.2 var(--app-font,Georgia,serif);margin:0 0 8px}
.brm-role-description{color:#daccb0;font:12px/1.55 var(--app-font,Georgia,serif);margin:0 0 10px}
.brm-role-buttons{display:flex;flex-wrap:wrap;gap:8px}
.brm-role-buttons button{flex:1 1 145px;min-width:0;font-size:12px}
.brm-role-host-details>summary{cursor:pointer;font-size:20px;color:#efd2a1;padding:3px}
.brm-role-host-details[open]>summary{margin-bottom:10px}
.brm-role-end-game{display:block;margin:7px 0 13px;width:100%;background:linear-gradient(#744045,#3a191e)}
.brm-role-host-row{
 display:flex;align-items:center;justify-content:space-between;gap:12px;
 padding:8px 0;border-top:1px solid #ac936049;
 color:#f7e3bb;font-size:13px;
}
.brm-role-host-row button{min-height:35px;flex:none;padding:7px 10px;font-size:12px}
.brm-role-published{color:#aac399;font-size:11px}
.brm-role-video-modal,.brm-role-stage{
 position:fixed;inset:0;z-index:35000;display:flex;align-items:center;
 justify-content:center;overflow:auto;
 padding:calc(15px + env(safe-area-inset-top)) 12px calc(15px + env(safe-area-inset-bottom));
 background:linear-gradient(170deg,#080c0af2,#1b1012f7);
}
.brm-role-video-card,.brm-role-stage-card{
 width:min(100%,530px);max-height:100%;overflow-y:auto;
 border:2px solid #ba955e;
 background:linear-gradient(160deg,#202721eF,#12110ff5),url('/assets/gallery-wall-v3.webp') center/cover;
 box-shadow:0 18px 60px #000d,inset 0 0 0 3px #11160fcc;
 padding:clamp(15px,4vw,25px);text-align:center;
}
.brm-role-video-card h2,.brm-role-stage-card h2{
 margin:0 0 10px;color:#f5daa5;font:clamp(23px,6vw,34px)/1.2 var(--app-font,Georgia,serif);
}
.brm-role-video-card>p,.brm-role-stage-card>p{color:#ded4bf;font:12px/1.6 var(--app-font,Georgia,serif)}
.brm-role-video-screen{
 width:min(100%,320px);aspect-ratio:9/12;margin:12px auto;
 overflow:hidden;border:2px solid #b99a63;
 background:#070808;box-shadow:0 5px 25px #0009;
}
.brm-role-video-screen video{display:block;width:100%;height:100%;object-fit:cover}
.brm-role-video-controls{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.brm-role-video-controls button{padding:10px 8px;font-size:12px}
.brm-role-video-message{min-height:25px}
.brm-role-eyebrow{
 display:block;margin-bottom:11px;color:#d7b479;letter-spacing:.2em;font-size:11px;
}
.brm-role-stage video{
 display:block;width:100%;max-height:55dvh;margin:12px 0;
 object-fit:contain;background:#040707;border:2px solid #a78a55;
}
.brm-role-stage .brm-role-play,
.brm-role-stage .brm-role-continue,
.brm-role-stage .brm-role-retry,
.brm-role-stage .brm-role-skip{
 display:block;width:100%;padding:12px;margin-top:9px;
 border:1px solid #cba569;background:linear-gradient(#753139,#3c131b);
 color:#f9e5ba;font-size:13px;
}
.brm-role-answer{
 padding:20px 12px 24px;
 background:linear-gradient(#0f1616aa,#0d0e0aee),url('/assets/gallery-wall-v3.webp') center/cover;
 border:1px solid #c8a46e;
}
.brm-role-answer strong{
 display:block;color:#f5d79c;font:700 clamp(32px,12vw,64px)/1.1 var(--app-font,Georgia,serif);
 letter-spacing:.08em;text-shadow:0 4px 25px #000c;
}
.brm-role-answer span{
 display:block;color:#f4e3c4;margin-top:8px;font-size:16px;
}
.brm-role-answer-open{animation:brm-role-reveal-in .6s ease-out both}
@keyframes brm-role-reveal-in{
 from{opacity:0;transform:scale(.9)}
 to{opacity:1;transform:scale(1)}
}
@media(max-height:740px){
 .brm-role-video-modal,.brm-role-stage{align-items:flex-start}
 .brm-role-video-screen{max-height:40dvh;width:auto}
 .brm-role-video-card,.brm-role-stage-card{padding:12px}
}
@media(prefers-reduced-motion:reduce){.brm-role-answer-open{animation:none}}

/* Only displayed once the viewer's role-reveal film has finished and been acknowledged. */
body.castle-game #app .cast-player .brm-cast-public-role{
 display:table;position:relative;z-index:7;margin:6px auto 0;
 padding:4px 11px;min-width:85px;max-width:100%;
 text-align:center;letter-spacing:.13em;color:#f6ddb1;
 border:1px solid #c6a36a;background:linear-gradient(135deg,#5c222b,#2b1219);
 box-shadow:0 1px 8px #0009;
 font:700 clamp(9px,1.6vw,12px)/1.25 var(--app-font,Georgia,serif);
}
.brm-banishment-actions .brm-banishment-role-button{
 color:#21170f;background:linear-gradient(#f3dba7,#c49a57);
 border:1px solid #e9c98c;
}
.brm-banishment-actions .brm-banishment-role-button + .brm-banishment-role-button{
 color:#f9e6c0;background:linear-gradient(#654047,#39232a);
 border:1px solid #bd9a68;
}
.brm-banishment-actions .brm-banishment-diary-button{
 color:#ead8b9;background:linear-gradient(#34332c,#221e1c);
 border:1px solid #8d7d62;
}
