/*
Theme Name: D4C Prison World v0.4.25.39
Theme URI: https://dominants4cash.com/
Author: D4C
Description: HMP D4C immersive Prison World presentation. Jail Core remains authoritative for custody, sentence, release and communications permissions.
Version: 0.4.25.41
Text Domain: d4c-prison-world
*/
.d4c-prison-caption{position:fixed;left:50%;bottom:76px;z-index:100300;width:min(860px,calc(100% - 32px));transform:translate(-50%,18px);padding:16px 20px;background:rgba(10,9,7,.96);border:3px solid #b89458;color:#f4e8ce;font:900 17px/1.45 Arial,sans-serif;letter-spacing:.5px;text-align:center;box-shadow:0 10px 34px #000;opacity:0;visibility:hidden;transition:opacity .2s ease,transform .2s ease}.d4c-prison-caption.is-visible{opacity:1;visibility:visible;transform:translate(-50%,0)}
:root{--iron:#1b1b18;--iron2:#3c3932;--stone:#a99a7e;--stone2:#746854;--paper:#d9ccb0;--red:#71171a;--amber:#d99a43;--ink:#141411}
*{box-sizing:border-box}html,body{margin:0}body.d4c-prison-world-theme{background:#27231d;color:#eee7da;font-family:Arial,Helvetica,sans-serif}.d4c-generic-page{max-width:1100px;margin:auto;padding:40px 20px}
/* Interior: one environmental owner; no flat beige workspace. */
.d4c-prison-shell{min-height:100vh;padding:28px 22px 44px;background:linear-gradient(#0003,#0005),radial-gradient(ellipse at 50% 0,#c2b291 0,#8b7c62 32%,#574d3e 72%,#302a23 100%);position:relative;overflow:hidden}.d4c-prison-shell:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.3;background:repeating-linear-gradient(0deg,transparent 0 70px,#1e1c18 71px 74px),repeating-linear-gradient(90deg,transparent 0 150px,#302c25 151px 154px);mix-blend-mode:multiply}.d4c-prison-inner{max-width:1480px;margin:auto;position:relative;z-index:1}
.d4c-prison-mast{display:grid;grid-template-columns:130px 1fr auto;gap:20px;align-items:center;background:linear-gradient(#b9aa8d,#8d7d62);border:5px solid #282722;box-shadow:0 15px 35px #0009,inset 0 0 0 2px #d8c9aa;padding:14px 18px;color:#171713}.d4c-prison-seal{width:110px;height:110px;border:0;border-radius:50%;overflow:hidden;display:grid;place-content:center;text-align:center;background:#0d0b09;box-shadow:0 0 0 2px #9d8a69,0 5px 16px #0008}.d4c-prison-seal img{display:block;width:100%;height:100%;object-fit:cover}.d4c-prison-brand small,.d4c-section-sign span,.d4c-facility-sign b,.d4c-prison-status-chip,.d4c-prison-capacity span{font-weight:900;letter-spacing:2px}.d4c-prison-brand h1{font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(38px,6vw,72px);letter-spacing:6px;margin:2px 0;color:#171713}.d4c-prison-brand p{margin:0;font-weight:900;letter-spacing:2px}.d4c-prison-status-chip{border:3px solid #4d0f12;background:#71171a;color:white;padding:12px 15px;text-align:center}
.d4c-prison-status-row{display:grid;grid-template-columns:1fr minmax(280px,430px);gap:18px;margin:20px 0}.d4c-prison-capacity,.d4c-prison-self{background:#d3c5a7;color:#181714;border:4px solid #302e28;box-shadow:0 10px 24px #0007;padding:16px}.d4c-prison-capacity{display:flex;gap:20px;align-items:center}.d4c-prison-capacity strong{font:900 32px Impact,sans-serif;letter-spacing:2px}.d4c-prison-capacity small{margin-left:auto}.d4c-prison-self h2{font:900 17px Impact,sans-serif;letter-spacing:2px;margin:0 0 8px}.d4c-jail-status{font-weight:800}
/* Cell block: four physical door bays. Live Jail Core card becomes the occupied door content. */
.d4c-prison-cellblock{position:relative;background:linear-gradient(#3c372eeb,#27241fee);border:8px solid #25231e;box-shadow:inset 0 0 70px #000b,0 18px 36px #0009;padding:20px;margin-bottom:24px}.d4c-prison-cellblock:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.32;background:repeating-linear-gradient(0deg,transparent 0 95px,#8e8067 96px 99px),repeating-linear-gradient(90deg,transparent 0 220px,#81745e 221px 224px)}.d4c-section-sign{position:relative;z-index:2;background:#191916;border:2px solid #8f846f;padding:12px 16px;margin-bottom:18px;box-shadow:inset 0 0 0 2px #090909}.d4c-section-sign h2{font:900 32px Impact,sans-serif;letter-spacing:4px;margin:2px 0}.d4c-section-sign p{margin:3px 0;color:#c9c1b0}.d4c-cellblock-live{position:relative;z-index:2}.d4c-cellblock-live .d4c-prisoners{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:26px!important}.d4c-cellblock-live .d4c-prisoner-card,.d4c-empty-cell{position:relative!important;min-height:460px!important;padding:88px 28px 28px!important;border:14px solid #171714!important;border-radius:4px!important;background:linear-gradient(90deg,#292925,#464139 48%,#24231f)!important;color:#f3eee2!important;box-shadow:inset 0 0 0 4px #655f53,inset 0 0 55px #000,0 15px 30px #000b!important;overflow:hidden}.d4c-cellblock-live .d4c-prisoner-card:before,.d4c-empty-cell:before{content:'HMP D4C  •  CELL';position:absolute;top:17px;left:22px;right:22px;background:#b8a783;color:#151411;border:4px solid #111;padding:10px;text-align:center;font:900 20px Impact,sans-serif;letter-spacing:3px;box-shadow:inset 0 0 0 2px #ded0ad}.d4c-cellblock-live .d4c-prisoner-card:after,.d4c-empty-cell:after{content:"";position:absolute;inset:72px 14px 14px;pointer-events:none;border:2px solid #5e594f;background:repeating-linear-gradient(90deg,transparent 0 23%,#10100e 23% 25%,transparent 25% 48%);opacity:.22}.d4c-cellblock-live .d4c-prisoner-card>div:first-child{position:relative;z-index:2;display:grid!important;grid-template-columns:minmax(175px,230px) 1fr!important;gap:24px!important;align-items:center!important}.d4c-cellblock-live .d4c-prisoner-card img.avatar{width:100%!important;height:235px!important;object-fit:cover!important;border-radius:1px!important;border:18px solid #111!important;outline:5px solid #716a5d;box-shadow:inset 0 0 25px #000,0 0 0 2px #050505,0 0 22px #000b;filter:saturate(.72) contrast(1.08) brightness(.82)}.d4c-cellblock-live .d4c-prisoner-card img.avatar:before{content:""}.d4c-cellblock-live .d4c-prisoner-card>div:first-child>div{background:#bbaa87;color:#171713;border:4px solid #141411;padding:15px;box-shadow:inset 0 0 0 2px #ddcfad}.d4c-cellblock-live .d4c-prisoner-card strong{font:900 28px/1.1 'Arial Narrow',Arial,sans-serif!important;text-transform:uppercase}.d4c-cellblock-live .d4c-prisoner-card>div:nth-child(2){position:relative;z-index:2;margin-top:22px!important;background:#0d0e0c;border:4px solid #696256;padding:15px}.d4c-cellblock-live .d4c-prisoner-card small{font-weight:900;letter-spacing:1.4px}.d4c-cellblock-live .d4c-countdown{color:#e4a24b!important;font-family:'Courier New',monospace!important;text-shadow:0 0 12px #e19b3c88}.d4c-cellblock-live .button{position:relative;z-index:3;background:#b7aa8d!important;color:#171713!important;border:2px solid #171713!important;border-radius:0!important;font-weight:900!important}.d4c-empty-cell{display:grid;place-content:center;text-align:center;color:#8c8476!important}.d4c-empty-cell .d4c-empty-window{width:min(270px,65%);height:180px;margin:0 auto 20px;border:18px solid #10100e;outline:5px solid #655f54;background:repeating-linear-gradient(90deg,#080908 0 12px,#1c1d19 12px 18px,#080908 18px 42px);box-shadow:inset 0 0 35px #000}.d4c-empty-cell b{font:900 22px Impact,sans-serif;letter-spacing:3px}.d4c-prisoners-empty{grid-column:1/-1;background:#20201c;border:4px solid #49453c;padding:50px 20px;text-align:center;font:900 22px Impact,sans-serif;letter-spacing:2px}
.d4c-prison-operations{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}.d4c-prison-facility{position:relative;background:#cfc3aa;color:#171713;border:5px solid #34322d;box-shadow:0 12px 24px #0007;padding:16px;min-width:0}.d4c-facility-sign{background:#20201c;color:#eee7d8;border:3px solid #6c6659;padding:12px;margin:-2px -2px 16px;display:flex;justify-content:space-between;gap:15px}.d4c-facility-sign b{font-family:Impact,sans-serif;font-size:22px;letter-spacing:2px}.d4c-facility-sign span{font-size:12px;align-self:center}.d4c-prison-page-content,.d4c-prison-media-screen,.d4c-release-state{background:#e8dfcc;border:2px solid #655f53;padding:14px;min-height:150px}.d4c-prison-media-screen{background:#171816;color:#ddd;box-shadow:inset 0 0 30px #000}.d4c-prison-media iframe,.d4c-prison-media video{max-width:100%;width:100%}.d4c-release-gate{overflow:hidden}.d4c-release-bars{height:70px;margin:-16px -16px 0;background:repeating-linear-gradient(90deg,#1a1a17 0 12px,transparent 12px 44px),linear-gradient(#504d44,#24231f);border-bottom:8px solid #1a1a17}.d4c-prison-footer{margin-top:22px;background:#1e1e1a;border-top:5px solid #6d6454;padding:18px;display:flex;justify-content:space-between;font-weight:900;letter-spacing:2px}.d4c-prison-empty-note{padding:15px;background:#272621;color:#eee}
/* Entrance: approved photograph is sole gate surface. No CSS duplicate door slab. */
/* Old-prison access station: iron/bronze, not a modern dashboard. */
.d4c-hmp-clearance{position:absolute;right:clamp(18px,4vw,70px);bottom:clamp(18px,4vh,55px);width:min(390px,calc(100vw - 36px));background:linear-gradient(#26251fef,#121310f2);border:6px ridge #6d6250;box-shadow:0 18px 38px #000d,inset 0 0 0 2px #171713;padding:18px}.d4c-hmp-clearance:before{content:"";position:absolute;inset:7px;pointer-events:none;border:1px solid #8d7f67}.d4c-hmp-clearance__head{position:relative;font:900 13px Arial;letter-spacing:2px;color:#c9bea8}.d4c-hmp-clearance__head strong{display:block;font:900 38px Impact,sans-serif;letter-spacing:4px;color:#f0e6d3}.d4c-hmp-clearance__head span{display:block}.d4c-hmp-clearance__status{position:relative;margin:14px 0 8px;padding:9px;background:#234b2c;border-left:5px solid #6cc17a;font-weight:900;letter-spacing:1.5px}.d4c-hmp-clearance__status.danger{background:#62191c;border-color:#d54b51}.d4c-hmp-request-copy,.d4c-hmp-code-label{position:relative}.d4c-hmp-request-code,.d4c-hmp-enter{position:relative;width:100%;background:linear-gradient(#7a201f,#4e1215);color:#f1e8d8;border:3px solid #9b6e50;box-shadow:inset 0 0 0 2px #321011;padding:13px;font:900 14px Arial;letter-spacing:1.3px;cursor:pointer}.d4c-hmp-code-stage{position:relative}.d4c-hmp-code{font:900 30px 'Courier New',monospace;letter-spacing:9px;color:#e5ad54;background:#090a08;border:2px inset #716653;padding:8px 6px;text-align:center}.d4c-hmp-clearance label{display:block;font-size:11px;font-weight:900;margin:10px 0 5px}.d4c-hmp-clearance input{width:100%;background:#080906;color:#e8b35f;border:3px inset #756a56;padding:10px;font:900 24px 'Courier New',monospace;text-align:center;letter-spacing:10px}.d4c-hmp-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:9px}.d4c-hmp-keypad button,.d4c-hmp-sound,.d4c-hmp-skip{background:linear-gradient(#4a463c,#282721);color:#eee7d9;border:3px outset #6f6656;padding:10px;font-weight:900;cursor:pointer}.d4c-hmp-keypad button:active,.d4c-hmp-enter:active,.d4c-hmp-request-code:active{transform:translateY(1px);border-style:inset}.d4c-hmp-clearance__feedback{position:relative;font-size:11px;font-weight:900;letter-spacing:1px;margin-top:9px;color:#d7b56f}.d4c-hmp-clearance__feedback.ok{color:#77d28a}.d4c-hmp-sound,.d4c-hmp-skip{position:relative;margin-top:9px;font-size:10px}.d4c-hmp-skip{float:right;background:transparent}.d4c-hmp-gate.is-authorised .d4c-hmp-clearance{box-shadow:0 0 25px #5aa96a66,0 18px 38px #000d}
@media(max-width:900px){.d4c-prison-mast{grid-template-columns:90px 1fr}.d4c-prison-seal{width:82px;height:72px}.d4c-prison-status-chip{grid-column:1/-1}.d4c-prison-status-row,.d4c-prison-operations{grid-template-columns:1fr}.d4c-cellblock-live .d4c-prisoners{grid-template-columns:1fr!important}.d4c-hmp-clearance{right:18px;bottom:18px;max-height:62vh;overflow:auto}}
@media(max-width:600px){.d4c-prison-shell{padding:10px}.d4c-prison-mast{grid-template-columns:1fr;text-align:center}.d4c-prison-seal{margin:auto}.d4c-prison-status-row{display:block}.d4c-prison-capacity{display:grid;margin-bottom:10px}.d4c-prison-capacity small{margin:0}.d4c-cellblock-live .d4c-prisoner-card,.d4c-empty-cell{padding:78px 16px 18px!important;min-height:390px!important}.d4c-cellblock-live .d4c-prisoner-card>div:first-child{grid-template-columns:1fr!important}.d4c-cellblock-live .d4c-prisoner-card img.avatar{height:230px!important}.d4c-facility-sign,.d4c-prison-footer{display:block}.d4c-facility-sign span,.d4c-prison-footer span{display:block;margin-top:6px}.d4c-hmp-clearance{left:10px;right:10px;bottom:10px;width:auto;max-height:56vh}.d4c-hmp-clearance__head strong{font-size:30px}}

/* v0.2.2 evidence-led interior: one stone-wall owner + one cell-door asset owner. */
.d4c-prison-shell{background:#4a4338 url('assets/images/hmp-d4c-stone-wall.svg') center top/1200px 700px repeat!important}
.d4c-prison-shell:before{background:linear-gradient(90deg,#0008,transparent 12% 88%,#0008),linear-gradient(#0002,#0005)!important;opacity:1!important;mix-blend-mode:normal!important}
.d4c-prison-inner{max-width:1380px}
.d4c-prison-cellblock{background:rgba(25,24,20,.58)!important;border:8px solid #24231f!important;padding:24px!important}
.d4c-prison-cellblock:before{background:none!important}
.d4c-cellblock-live .d4c-prisoners{gap:34px!important}
.d4c-cell-door{min-height:570px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:0 22px 40px #000b!important;overflow:hidden!important;isolation:isolate}
.d4c-cell-door:before{content:'CELL ' attr(data-cell)!important;z-index:6!important;top:42px!important;left:50%!important;right:auto!important;transform:translateX(-50%);width:180px!important;padding:7px 10px!important;background:#171814!important;color:#d8c8a3!important;border:3px solid #7e735e!important;box-shadow:0 3px 8px #000!important;font:900 18px Impact,'Arial Narrow',sans-serif!important;letter-spacing:3px!important}
.d4c-cell-door:after{content:''!important;position:absolute!important;inset:0!important;z-index:4!important;background:url('assets/images/hmp-d4c-cell-door.svg') center/100% 100% no-repeat!important;opacity:1!important;pointer-events:none!important;border:0!important}
.d4c-cellblock-live .d4c-prisoner-card>div:first-child{display:block!important;position:static!important}
.d4c-cellblock-live .d4c-prisoner-card img.avatar{position:absolute!important;z-index:2!important;top:112px!important;left:50%!important;transform:translateX(-50%);width:270px!important;height:190px!important;object-fit:cover!important;border:0!important;outline:0!important;box-shadow:inset 0 0 35px #000!important;filter:saturate(.72) contrast(1.1) brightness(.72)!important}
.d4c-cellblock-live .d4c-prisoner-card>div:first-child>div{position:absolute!important;z-index:7!important;top:351px!important;left:18%!important;right:18%!important;min-height:56px!important;padding:9px 12px!important;background:linear-gradient(90deg,#b7a780,#776d56,#c1b38e)!important;color:#171713!important;border:3px solid #111!important;box-shadow:inset 0 0 0 2px #d7c9a5,0 3px 8px #000!important;text-align:center!important}
.d4c-cellblock-live .d4c-prisoner-card strong{font:900 22px/1.05 'Arial Narrow',Arial,sans-serif!important;letter-spacing:1px!important}
.d4c-cellblock-live .d4c-prisoner-card>div:first-child span{font-weight:900!important;letter-spacing:1.4px!important}
.d4c-cellblock-live .d4c-prisoner-card>div:nth-child(2){position:absolute!important;z-index:7!important;top:447px!important;left:22%!important;right:22%!important;margin:0!important;padding:8px 10px!important;min-height:53px!important;background:#10110e!important;border:3px solid #746d5e!important;text-align:center!important;box-shadow:inset 0 0 18px #000,0 3px 8px #000!important}
.d4c-cellblock-live .d4c-prisoner-card small{font-size:10px!important}.d4c-cellblock-live .d4c-countdown{font-size:clamp(17px,2.2vw,24px)!important}
.d4c-cellblock-live .d4c-prisoner-card>p{position:absolute!important;z-index:8!important;left:0!important;right:0!important;bottom:18px!important;margin:0!important;text-align:center!important}
.d4c-cellblock-live .button{background:#a99a78!important;border:3px solid #171713!important;box-shadow:0 3px 7px #000!important}
.d4c-empty-cell{display:block!important;color:#a99e88!important}
.d4c-empty-cell .d4c-empty-window{position:absolute;z-index:2;top:112px;left:50%;transform:translateX(-50%);width:270px;height:190px;margin:0!important;border:0!important;outline:0!important;background:radial-gradient(ellipse at 50% 40%,#292a24,#080907 72%)!important;box-shadow:inset 0 0 60px #000!important}
.d4c-empty-cell b{position:absolute;z-index:7;top:360px;left:18%;right:18%;padding:12px;background:#171814;border:3px solid #706956;font:900 18px Impact,sans-serif!important;letter-spacing:3px!important;text-align:center}

/* v0.2.2 amended: Release Card control belongs to Release Gate, not top status panel. */
.d4c-release-action{margin-top:16px;padding:14px;background:#171713;border:4px solid #5f584b;box-shadow:inset 0 0 24px #000,0 5px 12px #0006;text-align:center}
.d4c-release-action__locked{display:block;color:#a89f8d;font:900 15px/1.3 'Arial Narrow',Arial,sans-serif;letter-spacing:2px;text-transform:uppercase}
.d4c-release-action__ready small{display:block;margin-bottom:10px;color:#d9b46b;font-weight:900;letter-spacing:1.5px}
.d4c-release-action .d4c-release-control,.d4c-release-action a.button,.d4c-release-action .button{display:inline-block!important;width:auto!important;max-width:100%;margin:0!important;padding:14px 22px!important;border:3px solid #151410!important;border-radius:2px!important;background:linear-gradient(#c8b77f,#8e7948)!important;color:#15130e!important;box-shadow:inset 0 0 0 2px #e2d3a4,0 4px 0 #4b4028,0 8px 18px #0008!important;font:900 16px/1.1 'Arial Narrow',Arial,sans-serif!important;letter-spacing:1.5px!important;text-transform:uppercase!important;text-decoration:none!important;text-shadow:0 1px #eee0b0;cursor:pointer}
.d4c-release-action .d4c-release-control:hover,.d4c-release-action a.button:hover{transform:translateY(-1px);filter:brightness(1.08)}

/* HMP D4C entrance — single-owner gate architecture.
   The facade never moves. Only the two exact door-leaf assets swing. */
.d4c-hmp-gate{position:fixed;inset:0;z-index:999999;background:#171714;color:#eee;overflow:hidden;transition:opacity .9s ease,visibility .9s}
.d4c-hmp-gate.is-gone{opacity:0;visibility:hidden;pointer-events:none}
.d4c-hmp-gate__scene{position:absolute;inset:0;background:#171714 url('assets/images/hmp-d4c-gate-open-base.png') center/100% 100% no-repeat;overflow:hidden;isolation:isolate}
.d4c-hmp-gate__scene:after{content:"";position:absolute;inset:0;z-index:4;pointer-events:none;background:linear-gradient(90deg,#0002,transparent 18% 82%,#0002),linear-gradient(0deg,#0003,transparent 42%)}
.d4c-hmp-gate__half,.d4c-hmp-gate__threshold,.d4c-hmp-gate__lantern{display:none!important}

/* Exact doorway registration from the approved 1536x1024 facade: x456–1080, y610–952. */
.d4c-hmp-gate__corridor,.d4c-hmp-gate__doorstage{position:absolute;left:29.6875%;top:59.5703125%;width:40.625%;height:33.3984375%}
.d4c-hmp-gate__corridor{z-index:1;overflow:hidden;background:#12110f url('assets/images/hmp-d4c-corridor-photo.jpg') center/cover no-repeat;box-shadow:inset 0 0 55px #000c}
.d4c-hmp-gate__corridor-depth{position:absolute;inset:-3%;background:linear-gradient(90deg,#0009,transparent 22% 78%,#0009),linear-gradient(0deg,#0007,transparent 48%);transform:scale(1);transition:transform 5.2s cubic-bezier(.2,.66,.22,1),opacity 2s ease;opacity:.38}
.d4c-hmp-gate__doorstage{z-index:2;overflow:visible;perspective:2200px;pointer-events:none}
.d4c-hmp-gate__leaf{position:absolute;top:0;height:100%;width:50%;background-repeat:no-repeat;background-size:100% 100%;backface-visibility:hidden;transform-style:preserve-3d;will-change:transform;transition:transform 6.5s cubic-bezier(.12,.46,.14,1);filter:drop-shadow(0 12px 9px #000b)}
.d4c-hmp-gate__leaf--left{left:0;background-image:url('assets/images/hmp-d4c-gate-leaf-left.png');transform-origin:0 50%}
.d4c-hmp-gate__leaf--right{right:0;background-image:url('assets/images/hmp-d4c-gate-leaf-right.png');transform-origin:100% 50%}
.d4c-hmp-gate.is-open .d4c-hmp-gate__leaf--left{transform:rotateY(38deg)}
.d4c-hmp-gate.is-open .d4c-hmp-gate__leaf--right{transform:rotateY(-38deg)}
.d4c-hmp-gate.is-corridor .d4c-hmp-gate__corridor-depth{transform:scale(1.10);opacity:.18}

/* Flame-light treatment. No circles are drawn: a tiny core sits in the lantern glass and a large blurred spill moves on the stone. */
.d4c-hmp-gate__lantern-glow{position:absolute;z-index:3;pointer-events:none;width:12%;height:20%;top:34.5%;opacity:.18;background:radial-gradient(ellipse at center,rgba(255,178,74,.20) 0,rgba(226,126,32,.09) 30%,rgba(180,86,18,.035) 53%,transparent 76%);filter:blur(16px);mix-blend-mode:screen}
.d4c-hmp-gate__lantern-glow:before{content:"";position:absolute;left:44%;top:38%;width:12%;height:23%;border-radius:50% 50% 45% 45%;background:radial-gradient(ellipse at 50% 70%,#fff2bd 0,#ffc45e 26%,#d86f1c 58%,transparent 75%);filter:blur(1.2px);opacity:.46;transform-origin:50% 100%}
.d4c-hmp-gate__lantern-glow--left{left:14.6%;animation:d4cWallFlickerL 2.7s infinite steps(7)}
.d4c-hmp-gate__lantern-glow--right{right:11.7%;animation:d4cWallFlickerR 3.15s infinite steps(8)}
.d4c-hmp-gate__lantern-glow--left:before{animation:d4cFlameL 1.12s infinite steps(6)}
.d4c-hmp-gate__lantern-glow--right:before{animation:d4cFlameR 1.37s infinite steps(7)}
@keyframes d4cWallFlickerL{0%,100%{opacity:.12;transform:scale(.98)}14%{opacity:.22}31%{opacity:.15}49%{opacity:.25;transform:scale(1.025)}68%{opacity:.17}84%{opacity:.21}}
@keyframes d4cWallFlickerR{0%,100%{opacity:.16}18%{opacity:.24;transform:scale(1.015)}36%{opacity:.13}58%{opacity:.22}76%{opacity:.17;transform:scale(.985)}90%{opacity:.25}}
@keyframes d4cFlameL{0%,100%{opacity:.38;transform:scale(.90,1.02) rotate(-1deg)}25%{opacity:.55;transform:scale(1.05,.92) rotate(2deg)}52%{opacity:.42;transform:scale(.95,1.08) rotate(-2deg)}78%{opacity:.59;transform:scale(1.02,.96) rotate(1deg)}}
@keyframes d4cFlameR{0%,100%{opacity:.42;transform:scale(.96,1.05) rotate(1deg)}22%{opacity:.57;transform:scale(1.05,.93) rotate(-2deg)}47%{opacity:.39;transform:scale(.91,1.08) rotate(2deg)}73%{opacity:.55;transform:scale(1.03,.96) rotate(-1deg)}}

.d4c-hmp-gate.reduced-motion .d4c-hmp-gate__leaf,.d4c-hmp-gate.reduced-motion .d4c-hmp-gate__corridor-depth{transition-duration:.25s}
.d4c-hmp-gate.reduced-motion .d4c-hmp-gate__lantern-glow,.d4c-hmp-gate.reduced-motion .d4c-hmp-gate__lantern-glow:before{animation:none}
@media(max-width:900px){.d4c-hmp-gate__lantern-glow{display:none}.d4c-hmp-gate__leaf{transition-duration:5.2s}}

/* 27 Aug evidence-controlled environmental amendment: supplied old masonry + approved generated corridor. */
.d4c-prison-shell{background:#2b261f url('assets/images/hmp-d4c-old-stone-wall.jpg') center top/720px auto repeat!important}
.d4c-prison-shell:before{position:absolute!important;opacity:.48!important;background:linear-gradient(180deg,rgba(12,10,8,.18),rgba(12,10,8,.44)),radial-gradient(ellipse at 50% 0,rgba(198,165,111,.16),transparent 52%)!important;mix-blend-mode:multiply!important}
.d4c-prison-cellblock{background:linear-gradient(rgba(24,20,16,.35),rgba(16,14,12,.52)),url('assets/images/hmp-d4c-old-stone-wall.jpg') center/680px auto repeat!important;border-color:#211d18!important}
.d4c-prison-cellblock:before{display:none!important}
.d4c-prison-facility{background:linear-gradient(rgba(35,30,24,.72),rgba(20,18,15,.84)),url('assets/images/hmp-d4c-old-stone-wall.jpg') center/640px auto repeat!important;color:#eee7da!important;border-color:#211d18!important}
.d4c-prison-page-content,.d4c-prison-media-screen,.d4c-release-state{background:rgba(22,20,17,.91)!important;color:#eee7da!important;border-color:#625746!important}

/* Approved corridor image is the only rear environment behind the door aperture. */
.d4c-hmp-gate__corridor{background:#090806 url('assets/images/hmp-d4c-corridor-approved.png') center 58%/cover no-repeat!important;box-shadow:inset 0 0 50px 12px rgba(0,0,0,.72)!important}
.d4c-hmp-gate__corridor-depth{inset:0!important;background:linear-gradient(90deg,rgba(0,0,0,.38),transparent 25% 75%,rgba(0,0,0,.38)),linear-gradient(0deg,rgba(0,0,0,.28),transparent 52%)!important;opacity:.26!important}
/* Corridor firelight: independent, soft illumination only; no visible circles. */
.d4c-hmp-gate__corridor:before,.d4c-hmp-gate__corridor:after{content:"";position:absolute;z-index:2;top:19%;width:34%;height:48%;pointer-events:none;background:radial-gradient(ellipse at center,rgba(255,184,91,.24) 0,rgba(224,126,45,.10) 34%,transparent 72%);filter:blur(13px);mix-blend-mode:screen}
.d4c-hmp-gate__corridor:before{left:-4%;animation:d4cCorridorFlickerL 2.25s infinite steps(8)}
.d4c-hmp-gate__corridor:after{right:-4%;animation:d4cCorridorFlickerR 2.9s infinite steps(9)}
@keyframes d4cCorridorFlickerL{0%,100%{opacity:.28}14%{opacity:.48}31%{opacity:.34}47%{opacity:.55}66%{opacity:.30}83%{opacity:.45}}
@keyframes d4cCorridorFlickerR{0%,100%{opacity:.38}12%{opacity:.25}29%{opacity:.52}45%{opacity:.31}63%{opacity:.49}81%{opacity:.27}}
/* Exterior firelight is intentionally broad and irregular, registered around the photographed lanterns. */
.d4c-hmp-gate__lantern-glow{width:15%!important;height:27%!important;top:31%!important;border-radius:0!important;background:radial-gradient(ellipse at center,rgba(255,191,102,.28),rgba(224,124,41,.11) 35%,transparent 73%)!important;filter:blur(18px)!important;mix-blend-mode:screen!important}
.d4c-hmp-gate__lantern-glow--left{left:12.7%!important}.d4c-hmp-gate__lantern-glow--right{right:9.8%!important}
.d4c-hmp-gate__lantern-glow:before{left:46%!important;top:42%!important;width:8%!important;height:16%!important;filter:blur(2px)!important;opacity:.32!important}

/* ===== 28 AUG CONTROLLED REBUILD: MEDIEVAL HORSESHOE + PHYSICAL GATE CONTROLS ===== */
/* Gate clearance is an aged prison fixture, not a modern terminal. */
.d4c-hmp-clearance{background:linear-gradient(145deg,#30291f,#17140f 58%,#0e0d0a)!important;border:5px ridge #78654a!important;border-radius:2px!important;box-shadow:inset 0 0 0 2px #1a1711,inset 0 0 28px #000,0 12px 28px #000b!important;color:#d7c39a!important}
.d4c-hmp-clearance:before,.d4c-hmp-clearance:after{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:#8c7757;box-shadow:inset 1px 1px 2px #d0b887,inset -2px -2px 3px #211b13}.d4c-hmp-clearance:before{left:10px;top:10px}.d4c-hmp-clearance:after{right:10px;top:10px}
.d4c-hmp-clearance__head{color:#bda77d!important;text-shadow:0 2px 2px #000!important}.d4c-hmp-clearance__head strong{color:#e1cfaa!important}.d4c-hmp-clearance__status{background:#2c261b!important;color:#d9c08c!important;border:2px inset #75613f!important;box-shadow:inset 0 0 12px #000!important;text-shadow:0 1px 2px #000!important}.d4c-hmp-clearance__status.ok{color:#e6cf9b!important}
.d4c-hmp-clearance button{border:3px ridge #8b7249!important;background:linear-gradient(#4a3b28,#211a12)!important;color:#ead7aa!important;box-shadow:inset 0 0 8px #000,0 3px 5px #0009!important;text-shadow:0 2px 2px #000!important}.d4c-hmp-clearance button:hover{filter:brightness(1.18)}
.d4c-hmp-clearance .d4c-hmp-enter{background:linear-gradient(#6e281f,#3d120e)!important;border-color:#9d7453!important}.d4c-hmp-code-stage{padding:8px;border:2px inset #6f5c40;background:#100e0a}.d4c-hmp-code-stage label{display:block;margin-bottom:5px;color:#cbb587;font-weight:900;letter-spacing:1.5px}.d4c-hmp-code-stage input{width:100%;box-sizing:border-box;background:#080806!important;border:2px inset #6c5a3e!important;color:#efcf84!important;font:900 20px monospace!important;letter-spacing:7px!important;text-align:center!important}.d4c-hmp-keypad{display:grid!important;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:6px}.d4c-hmp-keypad button{padding:5px!important;font-size:11px!important}.d4c-hmp-clearance__feedback{color:#bda77d!important}.d4c-hmp-clearance__feedback.ok{color:#e5c77c!important}

/* Exterior lanterns: register to the photographed lanterns and make the changing stone spill unmistakable. */
.d4c-hmp-gate__lantern-glow{display:block!important;opacity:.62!important;width:18%!important;height:34%!important;top:27.5%!important;filter:blur(11px)!important;background:radial-gradient(ellipse at center,rgba(255,220,139,.58) 0,rgba(255,159,48,.34) 18%,rgba(202,92,20,.15) 42%,transparent 73%)!important;will-change:opacity,transform,filter!important}
.d4c-hmp-gate__lantern-glow--left{left:10.6%!important;animation:d4cTorchL .82s infinite steps(5,end)!important}.d4c-hmp-gate__lantern-glow--right{right:7.7%!important;animation:d4cTorchR 1.03s infinite steps(6,end)!important}
.d4c-hmp-gate__lantern-glow:before{display:block!important;left:46%!important;top:41%!important;width:11%!important;height:22%!important;opacity:.92!important;filter:blur(.7px)!important;background:radial-gradient(ellipse at 50% 75%,#fff7cf 0,#ffd06b 24%,#ef8a22 53%,transparent 74%)!important;animation:d4cFlameCore .43s infinite steps(4,end)!important}
@keyframes d4cTorchL{0%,100%{opacity:.42;transform:scale(.96)}18%{opacity:.88;transform:scale(1.04)}37%{opacity:.56;transform:scale(.98)}53%{opacity:1;transform:scale(1.07)}72%{opacity:.48;transform:scale(.95)}86%{opacity:.79;transform:scale(1.02)}}
@keyframes d4cTorchR{0%,100%{opacity:.78;transform:scale(1.02)}15%{opacity:.46;transform:scale(.96)}32%{opacity:.95;transform:scale(1.06)}49%{opacity:.59;transform:scale(.99)}68%{opacity:.9;transform:scale(1.04)}84%{opacity:.51;transform:scale(.97)}}
@keyframes d4cFlameCore{0%,100%{transform:scale(.8,1.08) translateY(1px)}25%{transform:scale(1.15,.88) translateY(-3px)}50%{transform:scale(.92,1.2) translate(2px,-1px)}75%{transform:scale(1.05,.82) translate(-2px,2px)}}
/* Keep flame-light alive even where reduced-motion is enabled; only gate travel is shortened. */
.d4c-hmp-gate.reduced-motion .d4c-hmp-gate__lantern-glow{animation-duration:1.4s!important}.d4c-hmp-gate.reduced-motion .d4c-hmp-gate__lantern-glow:before{animation:d4cFlameCore .8s infinite steps(3,end)!important}
@media(max-width:900px){.d4c-hmp-gate__lantern-glow{display:block!important;width:22%!important;height:30%!important}}

/* Corridor light pools are also stronger, independent and irregular. */
.d4c-hmp-gate__corridor:before,.d4c-hmp-gate__corridor:after{opacity:.7!important;background:radial-gradient(ellipse at center,rgba(255,208,125,.54),rgba(235,133,42,.24) 34%,transparent 73%)!important;filter:blur(9px)!important}.d4c-hmp-gate__corridor:before{animation:d4cTorchL .91s infinite steps(5,end)!important}.d4c-hmp-gate__corridor:after{animation:d4cTorchR 1.17s infinite steps(6,end)!important}

/* Cell Block: architecture first. No card-grid shell. */
.d4c-prison-cellblock{position:relative!important;min-height:760px!important;padding:38px 34px 70px!important;overflow:hidden!important;border:0!important;border-radius:48% 48% 3px 3px/15% 15% 3px 3px!important;background:radial-gradient(ellipse at 50% 100%,rgba(89,66,42,.22),transparent 44%),linear-gradient(rgba(9,8,6,.22),rgba(7,6,5,.62)),url('assets/images/hmp-d4c-old-stone-wall.jpg') center/720px auto repeat!important;box-shadow:inset 0 30px 65px #000b,inset 0 -30px 70px #000d,0 8px 22px #0009!important;perspective:1400px!important}
.d4c-prison-cellblock:after{content:"";position:absolute;left:4%;right:4%;bottom:0;height:34%;z-index:0;background:linear-gradient(180deg,transparent,#0b0907aa 40%),repeating-linear-gradient(92deg,#30271e 0 2px,#17130f 2px 110px,#4a3a2a 112px 114px);clip-path:polygon(12% 0,88% 0,100% 100%,0 100%);transform-origin:50% 100%;opacity:.78;box-shadow:inset 0 18px 30px #000}
.d4c-section-sign{position:relative!important;z-index:3!important;width:max-content!important;max-width:90%!important;margin:0 auto 24px!important;padding:10px 24px!important;background:linear-gradient(#332a1d,#17130e)!important;border:4px ridge #7d6747!important;box-shadow:0 8px 18px #000b,inset 0 0 12px #000!important;text-align:center!important}.d4c-section-sign span,.d4c-section-sign p{display:none!important}.d4c-section-sign h2{margin:0!important;color:#d9c18e!important;font-size:26px!important;letter-spacing:3px!important;text-shadow:0 2px #000!important}
.d4c-cellblock-live{position:relative!important;z-index:2!important;min-height:590px!important}.d4c-cellblock-live .d4c-prisoners,.d4c-cellblock-live .d4c-horseshoe{position:relative!important;display:block!important;width:100%!important;min-height:590px!important;margin:0!important;padding:0!important}
/* Four stable masonry bays around a shallow horseshoe. */
.d4c-cellblock-live .d4c-cell-door{position:absolute!important;box-sizing:border-box!important;width:22%!important;height:430px!important;margin:0!important;padding:0!important;overflow:visible!important;border:0!important;border-radius:48% 48% 2px 2px/13% 13% 2px 2px!important;background:linear-gradient(90deg,#15110d,#33271c 14%,#21180f 48%,#0c0a08 100%)!important;box-shadow:0 0 0 14px #514434,0 0 0 23px #211b15,0 15px 24px #000c,inset 0 0 28px #000!important;transform-origin:50% 100%!important}
.d4c-cellblock-live .d4c-cell-door:before{content:"CELL " attr(data-cell);position:absolute;z-index:10;left:18%;right:18%;top:-24px;padding:7px 4px;background:linear-gradient(#4c3d28,#20190f);border:3px ridge #806947;color:#dbc18b;text-align:center;font:900 15px/1 Impact,'Arial Narrow',sans-serif;letter-spacing:2px;text-shadow:0 2px #000;box-shadow:0 5px 10px #000a}
.d4c-cell-pos-1{left:4%!important;top:88px!important;transform:perspective(900px) rotateY(18deg) scale(.91)!important}.d4c-cell-pos-2{left:27%!important;top:42px!important;transform:perspective(900px) rotateY(7deg) scale(.98)!important}.d4c-cell-pos-3{right:27%!important;top:42px!important;transform:perspective(900px) rotateY(-7deg) scale(.98)!important}.d4c-cell-pos-4{right:4%!important;top:88px!important;transform:perspective(900px) rotateY(-18deg) scale(.91)!important}
/* Heavy timber/iron door face. */
.d4c-cellblock-live .d4c-cell-door:after{content:"";position:absolute;z-index:1;inset:8px;background:repeating-linear-gradient(90deg,#241a11 0 24px,#342417 25px 47px,#17110c 48px 51px);border:8px solid #171512;box-shadow:inset 0 0 30px #000,0 0 0 3px #665641;background-image:linear-gradient(#0000 0 20%,#161514 20% 24%,#0000 24% 72%,#161514 72% 76%,#0000 76%),repeating-linear-gradient(90deg,#241a11 0 24px,#342417 25px 47px,#17110c 48px 51px)}
/* Existing Jail Core content sits over physical door; occupied state is light emphasis, not geometry change. */
.d4c-cellblock-live .d4c-cell-door--occupied{filter:brightness(1.16) drop-shadow(0 0 14px rgba(211,151,67,.32))!important}.d4c-cellblock-live .d4c-cell-door--occupied:after{box-shadow:inset 0 0 25px #000,0 0 0 3px #8b7048,0 0 30px rgba(214,145,54,.18)!important}
.d4c-cellblock-live .d4c-prisoner-card img{position:absolute!important;z-index:6!important;top:82px!important;left:50%!important;transform:translateX(-50%)!important;width:56%!important;height:112px!important;object-fit:cover!important;border:10px solid #111!important;outline:4px solid #665742!important;filter:brightness(.72) contrast(1.08)!important;box-shadow:inset 0 0 25px #000,0 5px 12px #000!important}
.d4c-cellblock-live .d4c-prisoner-card>div:first-child{position:absolute!important;z-index:7!important;top:218px!important;left:8%!important;right:8%!important;margin:0!important;padding:8px!important;background:linear-gradient(#b69b66,#7e673f)!important;border:4px ridge #3a2d1c!important;color:#15110b!important;text-align:center!important;box-shadow:0 4px 8px #000!important}.d4c-cellblock-live .d4c-prisoner-card>div:first-child strong{font-size:17px!important}.d4c-cellblock-live .d4c-prisoner-card>div:nth-child(2){position:absolute!important;z-index:7!important;top:305px!important;left:10%!important;right:10%!important;min-height:58px!important;padding:8px!important;background:#0c0c09!important;border:4px ridge #665842!important;color:#e0c58d!important;text-align:center!important}.d4c-cellblock-live .d4c-prisoner-card>p{position:absolute!important;z-index:8!important;left:0!important;right:0!important;bottom:14px!important;text-align:center!important}
.d4c-empty-cell .d4c-empty-window{position:absolute!important;z-index:6!important;top:88px!important;left:50%!important;transform:translateX(-50%)!important;width:52%!important;height:100px!important;background:repeating-linear-gradient(90deg,#070706 0 15px,#28251f 16px 21px)!important;border:9px solid #111!important;outline:4px solid #5d503e!important;box-shadow:inset 0 0 30px #000!important}.d4c-empty-cell b{position:absolute!important;z-index:7!important;top:285px!important;left:15%!important;right:15%!important;padding:9px!important;background:#17130e!important;border:3px ridge #66553c!important;color:#87785f!important;text-align:center!important;letter-spacing:3px!important}
@media(max-width:900px){.d4c-prison-cellblock{min-height:auto!important;border-radius:28px!important;padding:28px 16px!important}.d4c-cellblock-live,.d4c-cellblock-live .d4c-prisoners,.d4c-cellblock-live .d4c-horseshoe{min-height:0!important}.d4c-cellblock-live .d4c-cell-door{position:relative!important;left:auto!important;right:auto!important;top:auto!important;display:block!important;width:min(88%,330px)!important;height:430px!important;margin:34px auto!important;transform:none!important}}

/* === HMP D4C R3: coherent dungeon interior / isolation cells === */
:root{--d4c-stencil:Impact,'Arial Narrow',Arial,sans-serif;--d4c-iron:#17130f;--d4c-brass:#b49355;--d4c-parch:#d5bd88}
.d4c-prison-inner{background:linear-gradient(rgba(10,8,6,.14),rgba(8,6,5,.32)),url('assets/images/hmp-d4c-gate-approved.png') center top/cover fixed!important}
.d4c-prison-mast,.d4c-prison-status-row{background:rgba(18,14,10,.86)!important;border:4px ridge #6f5b3d!important;color:#e1c994!important;box-shadow:inset 0 0 30px #000,0 8px 20px #0009!important}
.d4c-prison-mast h1,.d4c-prison-capacity strong,.d4c-prison-self h2,.d4c-facility-sign b,.d4c-section-sign h2{font-family:var(--d4c-stencil)!important;letter-spacing:3px!important}
.d4c-prison-status-chip{background:#4b1712!important;border-color:#8b5d3b!important}
/* Prisoner control is now first operational installation, not footer furniture. */
.d4c-prisoner-control{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;margin:0 0 24px;padding:18px;background:linear-gradient(90deg,rgba(23,18,13,.95),rgba(48,37,26,.9),rgba(20,16,12,.95));border:7px ridge #584733;box-shadow:inset 0 0 45px #000,0 12px 24px #000a}
.d4c-prisoner-control .d4c-prison-facility{margin:0!important;min-height:180px;background:radial-gradient(circle at 50% 30%,rgba(129,91,42,.15),transparent 48%),rgba(12,10,8,.72)!important;border:4px ridge #6a573c!important;box-shadow:inset 0 0 32px #000!important}
.d4c-prisoner-control .d4c-facility-sign{background:linear-gradient(#3a2c1d,#18120d)!important;border:3px ridge #8d7146!important;color:#ddc28c!important}
.d4c-prisoner-control .d4c-facility-sign b{font-size:22px!important}.d4c-prisoner-control .d4c-facility-sign span{color:#cbb88e!important}
.d4c-prison-bell-facility:after{content:'CALL FOR THE GOVERNOR';display:block;margin:18px auto 6px;width:max-content;max-width:85%;padding:9px 16px;border:3px ridge #8d7146;background:#17120d;color:#c9aa70;font:900 13px var(--d4c-stencil);letter-spacing:2px}
.d4c-release-state{background:transparent!important;border:0!important;box-shadow:none!important}.d4c-release-bars{height:22px!important;background:repeating-linear-gradient(90deg,#0b0907 0 15px,#564735 16px 27px,#0b0907 28px 42px)!important}
.d4c-release-action{background:#0d0b08!important;border:4px ridge #6c583c!important}.d4c-release-action__locked{font-family:var(--d4c-stencil)!important;color:#bca77d!important}
/* Cell block: one fortress chamber, not cards on wallpaper. */
.d4c-prison-cellblock{min-height:720px!important;border-radius:46% 46% 4px 4px/12% 12% 4px 4px!important;border:10px ridge #4e4131!important;background:radial-gradient(ellipse at 50% 88%,rgba(116,78,38,.20),transparent 40%),linear-gradient(rgba(7,6,5,.25),rgba(5,4,3,.72)),url('assets/images/hmp-d4c-gate-approved.png') center 32%/cover!important;box-shadow:inset 0 0 100px #000,0 18px 30px #000b!important}
.d4c-section-sign{width:max-content;max-width:90%;margin:0 auto 32px!important;background:linear-gradient(#392b1d,#17110c)!important;border:4px ridge #806543!important;text-align:center}.d4c-section-sign span,.d4c-section-sign p{display:none!important}.d4c-section-sign h2{font-size:27px!important;color:#d7bd87!important}
.d4c-cellblock-live,.d4c-cellblock-live .d4c-prisoners,.d4c-cellblock-live .d4c-horseshoe{min-height:565px!important}
.d4c-cellblock-live .d4c-cell-door{height:430px!important;width:21%!important;border-radius:50% 50% 3px 3px/15% 15% 3px 3px!important;background:#0b0907!important;box-shadow:0 0 0 12px #514536,0 0 0 24px #282118,0 0 0 29px #77664f,0 18px 32px #000d,inset 0 0 50px #000!important;overflow:hidden!important}
.d4c-cellblock-live .d4c-cell-pos-1{left:4%!important;top:82px!important;transform:perspective(900px) rotateY(17deg) scale(.94)!important}.d4c-cellblock-live .d4c-cell-pos-2{left:28%!important;top:34px!important;transform:perspective(900px) rotateY(6deg)!important}.d4c-cellblock-live .d4c-cell-pos-3{right:28%!important;top:34px!important;transform:perspective(900px) rotateY(-6deg)!important}.d4c-cellblock-live .d4c-cell-pos-4{right:4%!important;top:82px!important;transform:perspective(900px) rotateY(-17deg) scale(.94)!important}
.d4c-cellblock-live .d4c-cell-door:before{top:12px!important;left:12%!important;right:12%!important;background:#241a11!important;border:3px ridge #735c3c!important;color:#d4ba82!important;font-family:var(--d4c-stencil)!important}
.d4c-cellblock-live .d4c-cell-door:after{inset:52px 12px 12px!important;border:0!important;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(41,29,19,.5),rgba(0,0,0,.85)),repeating-linear-gradient(90deg,#26190f 0 18px,#130d09 19px 22px,#302014 23px 41px)!important;box-shadow:inset 0 0 45px #000,0 0 0 7px #17110c,0 0 0 10px #5b4933!important}
.d4c-cellblock-live .d4c-cell-door--occupied{filter:none!important;box-shadow:0 0 0 12px #5b4b38,0 0 0 24px #282118,0 0 0 29px #8a704b,0 18px 32px #000d,0 0 36px rgba(212,139,48,.32),inset 0 0 50px #000!important}
/* prisoner is a glimpse through a small barred inspection hatch */
.d4c-cellblock-live .d4c-prisoner-card img{top:104px!important;width:58%!important;height:92px!important;border:8px solid #0b0907!important;outline:4px solid #66533a!important;filter:grayscale(.35) brightness(.48) contrast(1.18)!important;z-index:5!important}.d4c-cellblock-live .d4c-prisoner-card:before{z-index:12!important}
.d4c-cellblock-live .d4c-prisoner-card .d4c-cell-bars{position:absolute;z-index:6;top:104px;left:21%;right:21%;height:92px;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0 15%,#080706 16% 21%,transparent 22% 36%);box-shadow:inset 0 0 24px #000}
.d4c-cellblock-live .d4c-prisoner-card>div:first-child{top:226px!important;left:9%!important;right:9%!important;background:linear-gradient(#806a45,#4c3b26)!important;color:#ead6a5!important;border:4px ridge #8a704a!important;text-shadow:0 2px #000!important}.d4c-cellblock-live .d4c-prisoner-card>div:first-child strong{font-family:var(--d4c-stencil)!important;letter-spacing:1.4px!important}.d4c-cellblock-live .d4c-prisoner-card>div:nth-child(2){top:318px!important;left:9%!important;right:9%!important;border-color:#6d583b!important}.d4c-cellblock-live .d4c-prisoner-card>div:nth-child(2),.d4c-cellblock-live .d4c-prisoner-card>div:nth-child(2) *{font-family:var(--d4c-stencil)!important;letter-spacing:1.2px!important}
.d4c-empty-cell b{position:absolute;z-index:8;left:18%;right:18%;bottom:50px;padding:8px;background:#17120d;border:3px ridge #655238;color:#8e8069;text-align:center;font:900 14px var(--d4c-stencil);letter-spacing:2px}
/* lower facilities remain subordinate to the chamber */
.d4c-prison-operations{grid-template-columns:1fr 1fr!important}.d4c-prison-operations>.d4c-prison-bell-facility,.d4c-prison-operations>.d4c-release-gate{display:none!important}.d4c-prison-comms,.d4c-prison-media{background:rgba(15,12,9,.90)!important;border:6px ridge #514332!important}.d4c-facility-sign{background:linear-gradient(#33271b,#15100c)!important;border:3px ridge #725b3d!important;color:#dcc28e!important}
@media(max-width:900px){.d4c-prisoner-control{grid-template-columns:1fr}.d4c-cellblock-live .d4c-cell-door{width:min(88%,310px)!important;transform:none!important}.d4c-prison-operations{grid-template-columns:1fr!important}.d4c-prison-inner{background-attachment:scroll!important}}

/* === HMP D4C R4: gate-matched isolation block === */
/* R4 deliberately leaves the accepted entrance/corridor selectors and assets unchanged. */
.d4c-prison-shell{background:#17130f!important;padding-top:18px!important}
.d4c-prison-inner{background:linear-gradient(rgba(9,7,5,.20),rgba(8,6,4,.42)),url('assets/images/hmp-d4c-gate-approved.png') center top/cover fixed!important;box-shadow:0 0 80px #000 inset!important}
.d4c-prison-mast,.d4c-prison-status-row{background:linear-gradient(180deg,rgba(42,32,22,.94),rgba(16,13,10,.96))!important;border-color:#6b563a!important;color:#ddc38f!important}
.d4c-prisoner-control{margin-top:18px!important;background:linear-gradient(rgba(9,7,5,.72),rgba(14,10,7,.88)),url('assets/images/hmp-d4c-gate-approved.png') center 35%/cover!important;border:7px ridge #5f4b32!important}
.d4c-prisoner-control .d4c-prison-facility{display:block!important;background:rgba(12,9,6,.82)!important}
.d4c-prisoner-control .d4c-prison-bell-facility:before{content:'☎';float:left;margin:20px 18px 14px 20px;width:62px;height:82px;display:grid;place-items:center;background:linear-gradient(#423421,#17110c);border:5px ridge #80633e;color:#d3b579;font:700 34px Georgia,serif;box-shadow:inset 0 0 18px #000,0 5px 14px #000}
.d4c-prison-cellblock{position:relative!important;min-height:700px!important;overflow:hidden!important;border-radius:48% 48% 3px 3px/14% 14% 3px 3px!important;background:linear-gradient(rgba(5,4,3,.14),rgba(4,3,2,.66)),url('assets/images/hmp-d4c-gate-approved.png') center 38%/cover!important}
.d4c-prison-cellblock:before{content:'';position:absolute;left:3%;right:3%;bottom:-18%;height:48%;background:linear-gradient(rgba(26,20,14,.15),rgba(4,3,2,.92)),repeating-linear-gradient(88deg,transparent 0 90px,rgba(0,0,0,.42) 92px 95px),repeating-linear-gradient(0deg,#44382b 0 50px,#17130f 52px 55px);transform:perspective(500px) rotateX(58deg);transform-origin:bottom;box-shadow:inset 0 30px 70px #0008;z-index:0}
.d4c-section-sign,.d4c-cellblock-live{position:relative;z-index:2}
.d4c-cellblock-live .d4c-cell-door{height:410px!important;width:19.5%!important;border-radius:48% 48% 2px 2px/12% 12% 2px 2px!important;background:#080705!important;box-shadow:0 0 0 10px #332b22,0 0 0 18px #665846,0 0 0 28px #211c17,0 20px 35px #000!important;overflow:visible!important}
.d4c-cellblock-live .d4c-cell-pos-1{left:4%!important;top:102px!important;transform:perspective(850px) rotateY(23deg) scale(.91)!important}.d4c-cellblock-live .d4c-cell-pos-2{left:28.5%!important;top:45px!important;transform:perspective(850px) rotateY(7deg)!important}.d4c-cellblock-live .d4c-cell-pos-3{right:28.5%!important;top:45px!important;transform:perspective(850px) rotateY(-7deg)!important}.d4c-cellblock-live .d4c-cell-pos-4{right:4%!important;top:102px!important;transform:perspective(850px) rotateY(-23deg) scale(.91)!important}
/* Battered timber isolation door. Stone arch is owned by the surrounding layered masonry, not a smooth graphic outline. */
.d4c-cellblock-live .d4c-cell-door:after{content:''!important;position:absolute!important;inset:48px 8px 8px!important;z-index:1!important;border:0!important;background:linear-gradient(rgba(8,6,4,.18),rgba(6,5,4,.42)),url('assets/images/hmp-d4c-isolation-door-reference.jpg') center/cover!important;box-shadow:inset 0 0 42px #000,0 0 0 4px #17120d!important}
.d4c-cellblock-live .d4c-cell-door:before{content:'CELL ' attr(data-cell)!important;z-index:10!important;top:9px!important;left:16%!important;right:16%!important;padding:6px 5px!important;background:#17120d!important;border:2px solid #8a6b42!important;color:#d8bb82!important;font-family:var(--d4c-stencil)!important;letter-spacing:2px!important;box-shadow:0 3px 8px #000!important}
/* Inspection hatch: prisoner is only glimpsed through a small barred opening. */
.d4c-cellblock-live .d4c-prisoner-card img{z-index:6!important;top:145px!important;left:50%!important;width:68px!important;height:58px!important;border:3px solid #0a0806!important;outline:3px solid #5a4936!important;filter:grayscale(.55) brightness(.42) contrast(1.25)!important;box-shadow:inset 0 0 20px #000!important}
.d4c-cellblock-live .d4c-prisoner-card .d4c-cell-bars{z-index:7!important;top:145px!important;left:calc(50% - 34px)!important;right:auto!important;width:68px!important;height:58px!important;background:repeating-linear-gradient(90deg,transparent 0 9px,#100d09 10px 14px)!important}
/* Physical prisoner plates, not floating profile cards. */
.d4c-cellblock-live .d4c-prisoner-card>div:first-child{z-index:8!important;top:auto!important;bottom:84px!important;left:7%!important;right:7%!important;padding:7px!important;background:#211a12!important;border:3px ridge #795d38!important;color:#d8bd86!important;font-family:var(--d4c-stencil)!important;letter-spacing:1px!important}
.d4c-cellblock-live .d4c-prisoner-card>div:nth-child(2){z-index:8!important;top:auto!important;bottom:20px!important;left:9%!important;right:9%!important;min-height:52px!important;padding:7px!important;background:#0d0b08!important;border:3px ridge #5f4c34!important;color:#d7b778!important}
.d4c-cellblock-live .d4c-prisoner-card>p{display:none!important}
.d4c-empty-cell .d4c-empty-window{display:none!important}.d4c-empty-cell b{z-index:8!important;top:auto!important;bottom:24px!important;left:20%!important;right:20%!important;background:#15110d!important;border:2px solid #6c573a!important;color:#85755d!important}
/* Communications/media are apertures in the same prison, not cream/modern cards. */
.d4c-prison-operations{margin-top:20px!important;background:linear-gradient(rgba(8,6,4,.35),rgba(6,5,4,.65)),url('assets/images/hmp-d4c-gate-approved.png') center 65%/cover!important;border:7px ridge #55432e!important;padding:18px!important;gap:18px!important}
.d4c-prison-comms,.d4c-prison-media{border:6px ridge #5c4931!important;background:rgba(8,7,5,.84)!important;box-shadow:inset 0 0 45px #000!important}.d4c-prison-page-content,.d4c-prison-media-screen{background:rgba(7,6,5,.72)!important;border:3px solid #493a29!important}
@media(max-width:900px){.d4c-prison-cellblock:before{display:none}.d4c-cellblock-live .d4c-cell-door{width:min(86%,300px)!important;height:400px!important;margin:38px auto!important}.d4c-prisoner-control{padding:12px!important}}

/* R5 — compact visitor admission terminal. The accepted gate/corridor scene remains untouched. */
.d4c-hmp-clearance.d4c-hmp-admission{right:18px;bottom:22px;width:min(315px,calc(100vw - 30px));padding:14px;border-width:5px;background:linear-gradient(155deg,#27251fef,#11120ff5);box-shadow:0 16px 34px #000e,inset 0 0 0 2px #171713}
.d4c-hmp-admission .d4c-hmp-clearance__head strong{font-size:31px}.d4c-hmp-admission .d4c-hmp-clearance__status{margin:10px 0 7px;padding:7px 9px;background:#3d3527;border-left-color:#b28a4c}.d4c-hmp-identity{position:relative;border:2px inset #6e604a;background:#0b0b09;padding:8px;margin:7px 0}.d4c-hmp-identity__label{display:block;color:#a99a7e;font:800 9px Arial;letter-spacing:1.7px}.d4c-hmp-identity__name,.d4c-hmp-identity-name{display:block;color:#e8d5ad;font:900 18px Impact,'Arial Narrow',sans-serif;letter-spacing:1.4px;margin-top:3px}.d4c-hmp-rules-accept{position:relative;display:flex!important;gap:8px;align-items:flex-start;margin:9px 0 5px!important;color:#e7dece;font:800 10px Arial;letter-spacing:.7px;line-height:1.35}.d4c-hmp-rules-accept input{width:17px!important;height:17px;margin:0;accent-color:#8a6b3d}.d4c-hmp-rules{position:relative;margin:5px 0 9px;color:#cdbd9e;font-size:10px}.d4c-hmp-rules summary{cursor:pointer;font-weight:900;letter-spacing:1px}.d4c-hmp-rules div{margin-top:7px;padding:8px;background:#15140f;border:1px solid #5f5648;line-height:1.35}.d4c-hmp-request-access,.d4c-hmp-enter-after-pass,.d4c-hmp-admin-bypass{position:relative;width:100%;padding:11px;background:linear-gradient(#7b211f,#4c1114);color:#f1e8d8;border:3px outset #8d6d51;font:900 12px Arial;letter-spacing:1.4px;cursor:pointer}.d4c-hmp-request-access:disabled{opacity:.42;cursor:not-allowed}.d4c-hmp-admin-bypass{margin-top:7px;background:linear-gradient(#49443a,#292720);font-size:10px}.d4c-hmp-pass{position:relative;margin:10px auto 8px;padding:9px 10px 10px;width:94%;background:linear-gradient(100deg,#d1bc8c,#a98f5e);color:#231b12;border:1px solid #4c3d27;box-shadow:0 7px 15px #000b;transform:translateY(-8px) rotate(-1deg);opacity:0;transition:.45s ease}.d4c-hmp-pass.is-issued{transform:translateY(0) rotate(-1deg);opacity:1}.d4c-hmp-pass__top{font:900 10px Impact,sans-serif;letter-spacing:1.5px;border-bottom:1px solid #655034;padding-bottom:4px}.d4c-hmp-pass__name{font:900 20px Impact,sans-serif;letter-spacing:1.2px;margin:5px 0 2px}.d4c-hmp-pass__meta{font:700 8px 'Courier New',monospace}.d4c-hmp-pass__stamp{position:absolute;right:8px;bottom:7px;border:2px solid #6f211e;color:#6f211e;padding:3px 5px;font:900 9px Impact,sans-serif;letter-spacing:1px;transform:rotate(-5deg)}
.d4c-hmp-admission .d4c-hmp-sound,.d4c-hmp-admission .d4c-hmp-skip{padding:7px;margin-top:7px}.d4c-hmp-admission p{margin:7px 0;font-size:11px}.d4c-hmp-admission .d4c-hmp-clearance__feedback{margin-top:7px}
@media(max-width:700px){.d4c-hmp-clearance.d4c-hmp-admission{right:10px;left:10px;bottom:10px;width:auto;max-height:86vh;overflow:auto}}

/* R6 wall-aligned admission amendment — 27 Aug 2026.
   Gate/corridor geometry remains untouched. Admission hardware follows the right gatehouse wall,
   is narrower to reveal the lantern, and projects subtly toward the visitor. */
@media (min-width:901px){
  .d4c-hmp-clearance.d4c-hmp-admission{
    right:8px!important;
    bottom:20px!important;
    width:248px!important;
    padding:12px!important;
    transform:perspective(1050px) rotateY(-8deg) rotateZ(.15deg)!important;
    transform-origin:100% 52%!important;
    box-shadow:-12px 16px 30px #000c,inset 0 0 0 2px #171713!important;
  }
  .d4c-hmp-clearance.d4c-hmp-admission:after{
    box-shadow:inset 1px 1px 2px #d0b887,inset -2px -2px 3px #211b13,-9px 3px 14px #0008!important;
  }
  .d4c-hmp-admission .d4c-hmp-clearance__head strong{font-size:27px!important;letter-spacing:3px!important}
  .d4c-hmp-admission .d4c-hmp-clearance__head{font-size:11px!important;letter-spacing:1.5px!important}
  .d4c-hmp-admission .d4c-hmp-clearance__status{margin:8px 0 6px!important;padding:6px 8px!important;font-size:10px!important}
  .d4c-hmp-identity{padding:7px!important;margin:6px 0!important}
  .d4c-hmp-identity__name,.d4c-hmp-identity-name{font-size:16px!important}
  .d4c-hmp-rules-accept{margin:7px 0 4px!important;font-size:9px!important}
  .d4c-hmp-rules{margin:4px 0 7px!important;font-size:9px!important}
  .d4c-hmp-request-access,.d4c-hmp-enter-after-pass,.d4c-hmp-admin-bypass{padding:9px!important;font-size:10px!important}
  .d4c-hmp-admission .d4c-hmp-sound{padding:6px!important;margin-top:6px!important;font-size:9px!important}
  .d4c-hmp-admission .d4c-hmp-clearance__feedback{font-size:9px!important;margin-top:5px!important}
}
/* R8 AUDITED FINAL OWNERS — entrance weather + isolation chamber. */
.d4c-hmp-gate.d4c-weather-active:before{content:"";position:absolute;inset:0;z-index:7;pointer-events:none;opacity:.42;background-image:repeating-linear-gradient(105deg,transparent 0 18px,rgba(215,225,225,.26) 19px,transparent 21px);background-size:160px 160px;animation:d4cRain .48s linear infinite;mix-blend-mode:screen}
.d4c-hmp-gate.d4c-weather-active:after{content:"";position:absolute;inset:0;z-index:8;pointer-events:none;background:rgba(235,242,238,0);transition:background .12s}.d4c-hmp-gate.d4c-lightning:after{background:rgba(235,242,238,.38)}
@keyframes d4cRain{to{background-position:-55px 160px}}
.d4c-hmp-gate.is-opening:before,.d4c-hmp-gate.is-open:before{opacity:.18;transition:opacity 4s}
.d4c-prison-cellblock{background:linear-gradient(rgba(8,7,6,.20),rgba(8,7,6,.55)),url('assets/images/hmp-d4c-corridor.jpg') center/cover!important;border:0!important;box-shadow:inset 0 0 90px #000!important;overflow:hidden!important}
.d4c-cellblock-live,.d4c-cellblock-live .d4c-prisoners,.d4c-cellblock-live .d4c-horseshoe{position:relative!important;min-height:540px!important;background:transparent!important;border:0!important;box-shadow:none!important}
.d4c-cellblock-live .d4c-cell-door{position:absolute!important;width:19.5%!important;height:410px!important;margin:0!important;border:0!important;border-radius:48% 48% 2px 2px/12% 12% 2px 2px!important;background:#080705!important;box-shadow:0 0 0 10px #332b22,0 0 0 18px #665846,0 0 0 28px #211c17,0 20px 35px #000!important;overflow:visible!important;transform-origin:50% 100%!important}
.d4c-cellblock-live .d4c-cell-pos-1{left:4%!important;top:70px!important;transform:perspective(900px) rotateY(12deg) scale(.91)!important}.d4c-cellblock-live .d4c-cell-pos-2{left:27%!important;top:36px!important;transform:perspective(900px) rotateY(5deg)!important}.d4c-cellblock-live .d4c-cell-pos-3{right:27%!important;top:36px!important;transform:perspective(900px) rotateY(-5deg)!important}.d4c-cellblock-live .d4c-cell-pos-4{right:4%!important;top:70px!important;transform:perspective(900px) rotateY(-12deg) scale(.91)!important}
.d4c-cellblock-live .d4c-cell-door:after{content:""!important;position:absolute!important;inset:48px 8px 8px!important;z-index:1!important;background:linear-gradient(rgba(8,6,4,.18),rgba(6,5,4,.42)),url('assets/images/hmp-d4c-isolation-door-reference.jpg') center/cover!important;box-shadow:inset 0 0 42px #000,0 0 0 4px #17120d!important}
.d4c-cellblock-live .d4c-cell-door:before{content:'CELL ' attr(data-cell)!important;position:absolute!important;z-index:10!important;top:9px!important;left:16%!important;right:16%!important;padding:6px 5px!important;background:#17120d!important;border:2px solid #8a6b42!important;color:#d8bb82!important;font-family:Impact,'Arial Narrow',sans-serif!important;letter-spacing:2px!important;text-align:center!important}
@media(max-width:900px){.d4c-hmp-gate.d4c-weather-active:before{opacity:.25}.d4c-cellblock-live,.d4c-cellblock-live .d4c-prisoners,.d4c-cellblock-live .d4c-horseshoe{min-height:0!important}.d4c-cellblock-live .d4c-cell-door{position:relative!important;left:auto!important;right:auto!important;top:auto!important;width:min(86%,300px)!important;height:400px!important;margin:38px auto!important;transform:none!important}}

/* R8 PRECISION RECOVERY — final narrow owners only. */
/* Replace R8 line overlay with irregular particle rain. */
.d4c-hmp-gate.d4c-weather-active:before{display:none!important}
.d4c-real-rain{position:absolute;inset:-6% -4% 0;z-index:7;overflow:hidden;pointer-events:none;transform:skewX(-5deg)}
.d4c-real-rain i{position:absolute;left:var(--x);top:-45px;width:1.5px;height:var(--len);opacity:var(--alpha);background:linear-gradient(to bottom,transparent,rgba(226,235,235,.72));filter:blur(.15px);animation:d4cRealRain var(--dur) linear var(--delay) infinite}
.d4c-real-rain i:nth-child(4n){width:2px;filter:blur(.35px);opacity:.62}
.d4c-real-rain i:nth-child(7n){height:38px;opacity:.28}
@keyframes d4cRealRain{0%{transform:translate3d(0,-8vh,0)}100%{transform:translate3d(-7vw,112vh,0)}}
.d4c-hmp-gate.is-opening .d4c-real-rain,.d4c-hmp-gate.is-open .d4c-real-rain{opacity:.32;transition:opacity 5s ease}

/* Interior is a separate, readable old-stone environment: reveal masonry and warm lamp pools. */
.d4c-prison-inner{background:
 radial-gradient(circle at 8% 24%,rgba(218,164,83,.28),transparent 20%),
 radial-gradient(circle at 92% 24%,rgba(218,164,83,.25),transparent 20%),
 linear-gradient(rgba(34,27,20,.10),rgba(20,16,12,.24)),
 url('assets/images/hmp-d4c-old-stone-wall.jpg') center top/520px auto repeat!important;
 box-shadow:inset 0 0 70px rgba(0,0,0,.48)!important}
.d4c-prison-cellblock{background:rgba(28,23,18,.48)!important}
.d4c-prison-operations{background:rgba(24,19,14,.24)!important}

/* Occupied cell: contain the Jail Core card completely inside the physical door. */
.d4c-cellblock-live .d4c-cell-door{overflow:hidden!important}
.d4c-cellblock-live .d4c-prisoner-card img{top:145px!important;left:50%!important;width:68px!important;height:58px!important;object-fit:cover!important;object-position:center 24%!important;border:0!important;outline:0!important;clip-path:inset(0)!important;filter:grayscale(.48) sepia(.12) brightness(.48) contrast(1.24)!important}
.d4c-cellblock-live .d4c-prisoner-card .d4c-cell-bars{z-index:9!important;box-shadow:inset 0 0 16px #000!important}
.d4c-cellblock-live .d4c-prisoner-card>div:first-child{max-height:54px!important;overflow:hidden!important}
.d4c-cellblock-live .d4c-prisoner-card>div:first-child img{position:absolute!important}
.d4c-cellblock-live .d4c-prisoner-card>p,.d4c-cellblock-live .d4c-prisoner-card>img:not(.avatar){max-width:100%!important;overflow:hidden!important}

/* Cargo/stencil institutional treatment — no webfont dependency. */
:root{--d4c-stencil:Impact,'Arial Narrow','Roboto Condensed',sans-serif}
.d4c-cellblock-live .d4c-cell-door:before,.d4c-empty-cell b,.d4c-cellblock-live .d4c-prisoner-card strong,.d4c-cellblock-live .d4c-prisoner-card small,.d4c-countdown,.d4c-release-action__locked,.d4c-facility-sign b{font-family:var(--d4c-stencil)!important;text-transform:uppercase!important;letter-spacing:1.8px!important}


/* R10 CONTROLLED RECOVERY — 27 Aug 2026.
   Protected exterior gate artwork/geometry is intentionally untouched. */

/* Interior architecture returns to the accepted HMP gate masonry language. */
.d4c-prison-shell{background:#17130f!important;padding-top:18px!important}
.d4c-prison-shell:before{background:linear-gradient(90deg,rgba(0,0,0,.28),transparent 12% 88%,rgba(0,0,0,.28)),linear-gradient(rgba(0,0,0,.04),rgba(0,0,0,.16))!important;opacity:1!important;mix-blend-mode:normal!important}
.d4c-prison-inner{background:
 radial-gradient(ellipse at 8% 27%,rgba(229,167,77,.24),transparent 22%),
 radial-gradient(ellipse at 92% 27%,rgba(229,167,77,.22),transparent 22%),
 linear-gradient(rgba(9,7,5,.10),rgba(8,6,4,.28)),
 url('assets/images/hmp-d4c-gate-approved.png') center top/cover fixed!important;
 box-shadow:inset 0 0 62px rgba(0,0,0,.48)!important}

/* Cell chamber gets visible, asynchronous warm prison-lantern pools. */
.d4c-prison-cellblock{background:linear-gradient(rgba(15,11,8,.12),rgba(8,6,4,.34)),url('assets/images/hmp-d4c-gate-approved.png') center 48%/cover!important;isolation:isolate}
.d4c-cellblock-live:before,.d4c-cellblock-live:after{content:"";position:absolute;top:8%;width:28%;height:72%;z-index:0;pointer-events:none;filter:blur(12px);background:radial-gradient(ellipse at center,rgba(244,183,83,.34) 0,rgba(203,127,44,.15) 34%,transparent 70%);animation:d4cCellLantern 5.4s ease-in-out infinite alternate}
.d4c-cellblock-live:before{left:-4%}.d4c-cellblock-live:after{right:-4%;animation-delay:-2.35s;animation-duration:6.2s}
@keyframes d4cCellLantern{0%{opacity:.46;transform:scale(.96)}34%{opacity:.68}67%{opacity:.54}100%{opacity:.78;transform:scale(1.04)}}

/* One final label owner: labels sit inside the door arch, not clipped off its top edge. */
.d4c-cellblock-live .d4c-cell-door:before{top:22px!important;left:12%!important;right:12%!important;padding:7px 5px!important;transform:none!important;white-space:nowrap!important}
.d4c-cellblock-live .d4c-cell-pos-1:before{transform:rotate(-1.4deg)!important}.d4c-cellblock-live .d4c-cell-pos-2:before{transform:rotate(-.5deg)!important}.d4c-cellblock-live .d4c-cell-pos-3:before{transform:rotate(.5deg)!important}.d4c-cellblock-live .d4c-cell-pos-4:before{transform:rotate(1.4deg)!important}

/* Cargo institutional typography. Use installed Cargo when available, with robust stencil fallbacks. */
:root{--d4c-cargo:'Cargo','Cargo Crate','Stencil Std','Black Ops One',Impact,'Arial Narrow',sans-serif}
.d4c-prison-world-theme .d4c-section-sign h2,.d4c-prison-world-theme .d4c-facility-sign b,.d4c-prison-world-theme .d4c-cell-door:before,.d4c-prison-world-theme .d4c-empty-cell b,.d4c-prison-world-theme .d4c-countdown,.d4c-prison-world-theme .d4c-prisoner-card strong,.d4c-prison-world-theme .d4c-prisoner-card small,.d4c-prison-world-theme .d4c-release-action__locked,.d4c-prison-world-theme .d4c-prison-status-chip{font-family:var(--d4c-cargo)!important;text-transform:uppercase!important;letter-spacing:1.8px!important}

/* Better Messages remains functional owner; HMP owns only the booth surround. */
.d4c-prison-comms{background:linear-gradient(90deg,#211a13,#3d3021 5%,#17110d 10% 90%,#3d3021 95%,#211a13)!important;box-shadow:inset 0 0 38px #000,0 14px 28px #0009!important}
.d4c-prison-comms .d4c-prison-page-content{padding:18px!important;background:linear-gradient(#16120e,#0d0b09)!important;border:7px ridge #5f4c34!important;box-shadow:inset 0 0 0 3px #17110c,inset 0 0 32px #000!important;overflow:hidden}
.d4c-prison-comms iframe{display:block;max-width:100%!important;width:100%!important;border:0!important;box-shadow:0 0 0 4px #2c241a,0 8px 22px #000b!important}
.d4c-prison-media-screen{min-height:420px!important;padding:18px!important;background:linear-gradient(#17120e,#0b0907)!important;border:7px ridge #5f4c34!important}
.d4c-prison-media-screen iframe,.d4c-prison-media-screen video{display:block;width:100%!important;max-width:100%!important;aspect-ratio:16/9;height:auto!important;border:4px solid #211b14!important;box-shadow:0 10px 28px #000c!important}
.d4c-governor-notice{margin:0 0 14px!important;padding:13px 15px!important;background:#c5b48d!important;color:#18140f!important;border:4px double #352a1c!important;font-family:var(--d4c-cargo)!important;letter-spacing:1.4px!important;text-align:center!important;text-transform:uppercase!important}

/* Preserve the accepted R9 rain appearance exactly; lifecycle is repaired in JS. */
.d4c-real-rain{transform:none!important;perspective:700px!important;opacity:.88;transition:opacity 2.8s ease!important}
.d4c-real-rain i{width:1px!important;height:var(--len)!important;border-radius:50% 50% 45% 45%;background:linear-gradient(to bottom,rgba(245,250,250,0),rgba(230,240,240,.66) 45%,rgba(244,248,248,.84))!important;transform:rotate(7deg);filter:blur(.25px);will-change:transform;animation-name:d4cStormDrop!important}
.d4c-real-rain i:nth-child(3n){width:2px!important;filter:blur(.45px);opacity:.72!important}.d4c-real-rain i:nth-child(5n){width:1px!important;filter:blur(.7px);opacity:.34!important;animation-duration:calc(var(--dur) * 1.45)!important}.d4c-real-rain i:nth-child(11n){width:3px!important;filter:blur(.2px);opacity:.8!important;animation-duration:calc(var(--dur) * .72)!important}
@keyframes d4cStormDrop{0%{transform:translate3d(2vw,-12vh,0) rotate(7deg);opacity:0}8%{opacity:var(--alpha)}92%{opacity:var(--alpha)}100%{transform:translate3d(-4vw,114vh,0) rotate(7deg);opacity:0}}
.d4c-rain-splash{position:absolute;z-index:7;left:var(--sx);bottom:var(--sy);width:var(--sw);height:3px;border-radius:50%;border-top:1px solid rgba(230,239,239,.62);opacity:0;pointer-events:none;animation:d4cSplash var(--sd) ease-out var(--sdelay) infinite}
@keyframes d4cSplash{0%,78%{opacity:0;transform:scale(.25)}82%{opacity:.7;transform:scale(.8)}90%{opacity:.3;transform:scale(1.45)}100%{opacity:0;transform:scale(1.8)}}
.d4c-hmp-gate.d4c-lightning .d4c-real-rain{filter:brightness(1.75);opacity:1}.d4c-hmp-gate.is-opening .d4c-real-rain{opacity:.22!important}.d4c-hmp-gate.is-open .d4c-real-rain,.d4c-hmp-gate.is-corridor .d4c-real-rain{opacity:0!important;visibility:hidden!important}

/* Desktop remains protected. Tablet/phone stack without horizontal overflow. */
.d4c-prison-operations{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;align-items:start!important}
@media(max-width:900px){.d4c-prison-operations{grid-template-columns:1fr!important}.d4c-prison-inner{background-attachment:scroll!important}.d4c-cellblock-live:before,.d4c-cellblock-live:after{width:42%;height:90%}.d4c-cellblock-live .d4c-cell-door:before{top:20px!important;left:14%!important;right:14%!important;transform:none!important}}
@media(max-width:700px){.d4c-hmp-clearance.d4c-hmp-admission{right:10px!important;left:10px!important;bottom:10px!important;width:auto!important;max-height:86vh!important;overflow:auto!important;transform:none!important}.d4c-prison-shell{padding-left:8px!important;padding-right:8px!important}.d4c-prison-inner{width:100%!important;max-width:100%!important}.d4c-prison-mast,.d4c-prison-status-row,.d4c-prisoner-control,.d4c-prison-operations{min-width:0!important;max-width:100%!important}}


/* R11.3 controlled interior refinement. Jail Core markup remains authoritative. */
:root{--d4c-cargo:'Cargo','Cargo Crate','Stencil Std','Black Ops One',Impact,'Arial Narrow',sans-serif}
/* The authoritative get_avatar() image is cloned into this dedicated inspection hatch. */
.d4c-cell-hatch{position:absolute!important;z-index:9!important;top:145px!important;left:50%!important;width:72px!important;height:62px!important;transform:translateX(-50%)!important;overflow:hidden!important;background:#050403!important;border:4px ridge #5a4936!important;box-shadow:inset 0 0 18px #000,0 2px 8px #000!important;cursor:pointer}
.d4c-cell-hatch img{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;object-position:center 28%!important;margin:0!important;padding:0!important;border:0!important;outline:0!important;border-radius:0!important;transform:none!important;filter:grayscale(.28) brightness(.72) contrast(1.12)!important;opacity:1!important}
.d4c-cell-hatch:after{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0 10px,#0b0907 11px 15px),linear-gradient(#0003,#0000 45%,#0005);box-shadow:inset 0 0 15px #000}
/* Hide only the original avatar after its exact source has been cloned; identity/countdown remain Jail Core-owned. */
.d4c-prisoner-card.d4c-avatar-bound>div:first-child>img.avatar{visibility:hidden!important}
.d4c-prisoner-card.d4c-avatar-bound>.d4c-cell-bars{display:none!important}
.d4c-cell-inspector[hidden]{display:none!important}.d4c-cell-inspector{position:fixed;inset:0;z-index:100050;background:rgba(3,3,2,.88);display:grid;place-items:center;padding:24px}.d4c-cell-inspector__panel{position:relative;width:min(92vw,520px);padding:24px;background:linear-gradient(#31281e,#15110d);border:8px ridge #6c573a;box-shadow:0 24px 70px #000;color:#eadfc9;text-align:center}.d4c-cell-inspector__panel h3{font:900 28px var(--d4c-cargo);letter-spacing:3px;margin:0 40px 18px}.d4c-cell-inspector__photo{width:min(78vw,330px);aspect-ratio:1/1;object-fit:cover;border:9px ridge #5f4c34;filter:grayscale(.15) contrast(1.08);background:#080604}.d4c-cell-inspector__meta{margin:16px auto 0;font-family:var(--d4c-cargo);letter-spacing:1.5px;line-height:1.5}.d4c-cell-inspector__close{position:absolute;right:10px;top:8px;border:2px solid #806742;background:#17120d;color:#e3c78d;font:bold 20px Arial;padding:5px 10px;cursor:pointer}
/* Communications is an installed prison terminal; Better Messages behaviour is untouched. */
.d4c-prison-comms .d4c-prison-page-content{background:radial-gradient(ellipse at 50% 0,#30271d,#0b0907 72%)!important;border:10px ridge #65513a!important;padding:14px!important;box-shadow:inset 0 0 0 4px #15110d,inset 0 0 45px #000,0 10px 24px #000a!important}
.d4c-prison-comms .bp-messages-wrap,.d4c-prison-comms .bpbm-main-wrap,.d4c-prison-comms .bm-card{border:5px solid #34291d!important;border-radius:2px!important;box-shadow:0 0 0 3px #806742,inset 0 0 18px #0003!important;max-width:100%!important}
.d4c-prison-comms .bp-messages-wrap .chat-header,.d4c-prison-comms .bp-messages-wrap .threads-list .thread .info{font-family:var(--d4c-cargo)!important}
.d4c-prison-media-screen{box-shadow:inset 0 0 38px #000,0 12px 28px #000a!important}.d4c-governor-notice{font-family:var(--d4c-cargo)!important;color:#2a2116!important;background:#c8b58a!important}
@media(max-width:700px){.d4c-cell-inspector{padding:10px}.d4c-cell-inspector__panel{width:96vw;padding:18px 12px}.d4c-cell-inspector__photo{width:min(80vw,300px)}}


/* R11.4 — evidence-led avatar, communications and escorted corridor refinement. */
.d4c-cell-hatch img.d4c-cell-prisoner-photo{position:absolute!important;inset:0!important;top:0!important;left:0!important;transform:none!important;width:100%!important;height:100%!important;display:block!important;visibility:visible!important;opacity:1!important;object-fit:cover!important;object-position:center 28%!important;border:0!important;outline:0!important;margin:0!important;padding:0!important;filter:grayscale(.2) brightness(.8) contrast(1.12)!important}
/* Better Messages owns behaviour; these rules skin only visible Jail Talk chrome inside the HMP booth. */
.d4c-prison-comms .bp-messages-wrap,.d4c-prison-comms .bpbm-main-wrap,.d4c-prison-comms .bm-content,.d4c-prison-comms .bm-chat-content{background:#17130f!important;color:#e2d5bc!important}
.d4c-prison-comms .bp-messages-wrap .chat-header,.d4c-prison-comms .bm-chat-header-title{background:#292117!important;color:#d8c49b!important;border-color:#6d583b!important;font-family:var(--d4c-cargo)!important;letter-spacing:1px!important}
.d4c-prison-comms .bp-messages-wrap .messages-stack,.d4c-prison-comms .bp-messages-wrap .list,.d4c-prison-comms .bp-messages-wrap .bm-messages-list,.d4c-prison-comms .bm-msg-list{background:#eee7d8!important;color:#211c16!important}
.d4c-prison-comms .bp-messages-wrap .reply,.d4c-prison-comms .bp-messages-wrap .message-input,.d4c-prison-comms .bp-messages-wrap textarea,.d4c-prison-comms .bp-messages-wrap [contenteditable=true]{background:#d8cfbd!important;color:#17130f!important;border-color:#6b5940!important}
.d4c-prison-comms .bp-messages-wrap button,.d4c-prison-comms .bp-messages-wrap .send{border-radius:1px!important;border-color:#6d583b!important}
.d4c-hmp-legacy-orphan{display:none!important}
.d4c-governor-notice{background:#c8b58a!important;color:#21190f!important;border:5px double #4e3b25!important;box-shadow:inset 0 0 0 2px #e1d1ab,0 5px 15px #0008!important;font-family:var(--d4c-cargo)!important;font-weight:900!important;letter-spacing:2px!important;text-transform:uppercase!important}
/* R11.6: Governor notice is one institutional sign; child theme/page colours cannot leak through. */
.d4c-prison-media .d4c-governor-notice,
.d4c-prison-media .d4c-governor-notice *{color:#21190f!important;background:transparent!important;border-color:#4e3b25!important;font-family:var(--d4c-cargo)!important;text-shadow:none!important}
.d4c-prison-media .d4c-governor-notice{background:#c8b58a!important}


/* R11.7 — CELL FOCUS REFINEMENT
   Presentation only. Jail Core remains authoritative for Bell and Release rules. */
.d4c-prison-world-theme .d4c-prison-inner{
  background:#15110e!important;
  box-shadow:inset 0 0 90px rgba(0,0,0,.72)!important;
}
.d4c-prison-world-theme .d4c-prison-operations{
  background:#100d0a!important;
}
.d4c-prison-world-theme .d4c-prison-cellblock{margin-top:12px!important}
.d4c-release-compact{
  display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);align-items:center;gap:16px;
  margin:16px 0 18px;padding:10px 14px;background:#0f0c09;border:4px ridge #5d4931;
  box-shadow:inset 0 0 24px #000,0 8px 16px #0008;color:#e1d4ba
}
.d4c-release-compact__head{display:flex;flex-direction:column;gap:2px}
.d4c-release-compact__head b{font-family:var(--d4c-cargo)!important;color:#d8bd86;font-size:18px;letter-spacing:1.6px}
.d4c-release-compact__head span{font-size:11px;color:#baa47c}
.d4c-release-compact .d4c-release-action{margin:0!important;padding:8px 10px!important;border-width:2px!important;min-height:0!important}
.d4c-release-compact .d4c-release-state{min-height:0!important;margin:0!important;padding:0!important}
.d4c-release-compact .d4c-release-state p{margin:8px 0!important}
.d4c-release-compact .d4c-release-card-button{display:inline-flex!important;align-items:center;justify-content:center;padding:8px 12px!important;white-space:normal;text-align:center}
.d4c-release-compact .d4c-release-action__locked{font-size:13px!important}
/* Occupied hatch: make the authoritative prisoner image read as a face behind bars, not a badge. */
.d4c-cell-hatch{width:104px!important;height:92px!important;top:132px!important;border-width:5px!important}
.d4c-cell-hatch img.d4c-cell-prisoner-photo{object-position:center 24%!important;transform:scale(1.08)!important}
@media(max-width:900px){
 .d4c-release-compact{grid-template-columns:1fr}
}
@media(max-width:600px){.d4c-cell-hatch{width:92px!important;height:82px!important}}

/* R11.9 — Prison Calling Bell belongs to the Prison Life column above its media. */
.d4c-prison-life-bell{display:block;position:relative;z-index:3;width:100%;min-width:0;margin:0 0 14px;padding:12px;background:rgba(14,10,8,.96);border:3px ridge #72583b;box-shadow:0 7px 18px #000a,inset 0 0 16px #000;color:#d6bd8b}
.d4c-prison-life-bell .d4c-prison-bell{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important}
.d4c-prison-life-bell .d4c-prison-bell>h3{margin:0 0 4px!important;font-size:16px!important;line-height:1.15!important}
.d4c-prison-life-bell .d4c-prison-bell>p{margin:0 0 7px!important;font-size:12px!important;line-height:1.25!important}
.d4c-prison-life-bell .bp-messages-wrap:not(.bp-messages-full-screen):not(.bp-messages-mobile),.d4c-prison-life-bell .bp-messages-threads-wrapper{height:190px!important;min-height:190px!important;max-height:190px!important;overflow:hidden!important}
.d4c-prison-life-bell .messages-stack,.d4c-prison-life-bell .bp-messages-list,.d4c-prison-life-bell .bm-messages-list,.d4c-prison-life-bell .bm-msg-list{min-height:0!important;overflow-y:auto!important}
@media(max-width:900px){.d4c-prison-life-bell{margin-bottom:12px}.d4c-prison-life-bell .bp-messages-wrap:not(.bp-messages-full-screen):not(.bp-messages-mobile),.d4c-prison-life-bell .bp-messages-threads-wrapper{height:210px!important;min-height:210px!important;max-height:210px!important}}

/* v0.4.0 — private Prison Yard / Holding Pen. */
.d4c-yard-shell{position:relative;min-height:100vh;padding:30px 22px 50px;overflow:hidden;background:#17130f;color:#eadfc9}.d4c-yard-architecture{position:fixed;inset:0;background:linear-gradient(rgba(10,8,6,.28),rgba(8,6,4,.78)),url('assets/images/hmp-d4c-prison-yard-reference.jpg') center/cover no-repeat;filter:sepia(.18) contrast(1.08);z-index:0}.d4c-yard-architecture:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 22% 30%,rgba(213,142,52,.18),transparent 32%),radial-gradient(circle at 78% 28%,rgba(213,142,52,.16),transparent 30%),linear-gradient(90deg,#0008,transparent 18% 82%,#0008);pointer-events:none}.d4c-yard-locked-gate{position:absolute;left:50%;bottom:7%;transform:translateX(-50%);padding:12px 24px;background:#0e0c0a;border:6px ridge #66543d;color:#d6b77b;font:900 18px var(--d4c-cargo);letter-spacing:3px;box-shadow:0 10px 30px #000}.d4c-yard-inner{position:relative;z-index:2;max-width:1180px;margin:auto}.d4c-yard-mast{display:grid;grid-template-columns:110px 1fr auto;align-items:center;gap:18px;padding:14px 18px;background:rgba(19,15,12,.94);border:5px ridge #6d593f;box-shadow:0 14px 35px #000;color:#e1c48b}.d4c-yard-mast h1{font:900 clamp(38px,6vw,70px)/1 var(--d4c-cargo);letter-spacing:6px;margin:3px 0}.d4c-yard-mast p,.d4c-yard-mast small{margin:0;letter-spacing:2px}.d4c-yard-mast>strong{padding:12px;border:3px solid #7f1d24;background:#3d1012;color:#fff;text-align:center}.d4c-yard-warning{display:flex;justify-content:space-between;gap:18px;margin:18px 0;padding:14px 18px;background:rgba(59,13,15,.94);border:4px ridge #9b3a35;color:#fff}.d4c-yard-warning b{font:900 26px var(--d4c-cargo);letter-spacing:3px}.d4c-yard-warning span{align-self:center;font-weight:900}.d4c-yard-case{display:grid;grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr);gap:18px;align-items:start;padding:20px;background:rgba(17,13,10,.9);border:6px ridge #65513a;box-shadow:0 20px 48px #000}.d4c-yard-detainee{grid-row:1/7;position:relative;padding:18px;background:rgba(8,7,5,.9);border:5px ridge #5e4a33}.d4c-yard-detainee__photo{position:relative;max-width:310px;margin:auto;aspect-ratio:4/5;overflow:hidden;border:12px solid #120f0c;outline:5px ridge #6b563d;background:#090705}.d4c-yard-detainee__photo img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;filter:grayscale(.25) sepia(.08) contrast(1.12) brightness(.78)}.d4c-yard-detainee__bars{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 15%,rgba(11,9,7,.92) 16% 20%,transparent 21% 35%);box-shadow:inset 0 0 35px #000;pointer-events:none}.d4c-yard-case__identity{margin-top:16px;padding:13px;background:#c8b48c;color:#17120d;border:4px solid #18130e}.d4c-yard-case__identity b,.d4c-yard-case__identity span,.d4c-yard-case__identity small{display:block}.d4c-yard-case__identity b{font:900 28px var(--d4c-cargo);letter-spacing:2px}.d4c-yard-case__status{padding:14px;background:#571416;border:4px ridge #a33d37;color:#fff;font:900 24px var(--d4c-cargo);letter-spacing:2px;text-align:center}.d4c-yard-case>p{margin:0;padding:10px;border:2px solid #705a3d;background:#1d1711;text-align:center;font-weight:900}.d4c-yard-bell{min-width:0;padding:12px;background:#0d0b09;border:4px ridge #6b553a}.d4c-yard-bell h3,.d4c-yard-bell p{margin:0 0 7px}.d4c-yard-bell .bp-messages-wrap:not(.bp-messages-full-screen):not(.bp-messages-mobile),.d4c-yard-bell .bp-messages-threads-wrapper{height:240px!important;min-height:240px!important;max-height:240px!important;overflow:hidden!important}.d4c-yard-fine,.d4c-yard-bell-suspended{display:grid;gap:8px;padding:14px;background:#2c2115;border:4px ridge #866739}.d4c-yard-fine .button{width:max-content}.d4c-yard-governor{display:flex;flex-wrap:wrap;gap:10px;align-items:end;padding:14px;background:#161d16;border:4px ridge #587050}.d4c-yard-governor h3{width:100%;margin:0}.d4c-yard-governor label{display:grid;gap:4px}.d4c-yard-governor button{min-height:42px;padding:8px 12px;font-weight:900}.d4c-visit-control{display:grid;grid-template-columns:auto auto 1fr auto;gap:14px;align-items:center;margin:0 0 18px;padding:12px 16px;background:#11100d;border:4px ridge #6b593f;color:#e2c78f}.d4c-visit-countdown{font:900 30px 'Courier New',monospace;color:#f0a94d}.d4c-authorised-exit{padding:10px 16px;background:#7b1c20;color:#fff;border:3px ridge #bd5148;font-weight:900}.d4c-impounded-overlay{position:fixed;inset:0;z-index:100100;display:grid;place-content:center;gap:18px;text-align:center;background:rgba(49,0,3,.94);color:#fff;animation:d4cImpoundPulse .75s ease-in-out 5 alternate}.d4c-impounded-overlay[hidden]{display:none!important}.d4c-impounded-overlay strong{font:900 clamp(70px,16vw,190px)/.9 var(--d4c-cargo);letter-spacing:8px;text-shadow:0 0 30px #ff3b3b}.d4c-impounded-overlay span{font-size:clamp(17px,3vw,34px);font-weight:900;letter-spacing:3px}@keyframes d4cImpoundPulse{from{background:rgba(35,0,2,.95)}to{background:rgba(126,0,8,.98)}}

/* v0.4.2: approved D4C Prison Service identity. */
.d4c-hmp-clearance__head img{display:block;width:100%;height:auto;max-height:96px;object-fit:contain;object-position:left center}
.d4c-yard-mast .d4c-prison-seal{width:92px;height:92px}

/* Prison World owns its embedded Jail Talk and Calling Bell surfaces.
   Suppress Better Messages' separate site-wide mini/mobile launcher here only. */
body.d4c-prison-world-theme .bp-messages-mobile-tap,
body.d4c-prison-world-theme .bp-messages-mobile-widget,
body.d4c-prison-world-theme .bp-messages-mobile-bottom,
body.d4c-prison-world-theme .bp-messages-bottom-bar,
body.d4c-prison-world-theme .bpbm-mobile-tab-bar,
body.d4c-prison-world-theme #bp-better-messages-mini,
body.d4c-prison-world-theme .bp-messages-wrap.bp-messages-mini,
body.d4c-prison-world-theme .bp-better-messages-mini,
body.d4c-prison-world-theme .bm-mini-widgets-wrap,
body.d4c-prison-world-theme .bm-mini-chats-wrap,
body.d4c-prison-world-theme .bm-mini-mobile-open-icon{display:none!important}

/* Better Messages 3.0 compatibility. The 2.x selectors above remain for rollback. */
.d4c-prison-comms .bm-single-thread-wrap,
.d4c-prison-comms .bm-card,
.d4c-prison-comms .bm-thread-col{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
.d4c-prison-comms .bm-reply{background:#d8cfbd!important;color:#17130f!important;border-color:#6b5940!important}
.d4c-prison-life-bell .bm-single-thread-wrap,
.d4c-prison-life-bell .bm-card{height:190px!important;min-height:190px!important;max-height:190px!important;overflow:hidden!important}
.d4c-yard-bell .bm-single-thread-wrap,
.d4c-yard-bell .bm-card{height:240px!important;min-height:240px!important;max-height:240px!important;overflow:hidden!important;width:100%!important;min-width:0!important}
@media(max-width:900px){.d4c-prison-life-bell .bm-single-thread-wrap,.d4c-prison-life-bell .bm-card{height:210px!important;min-height:210px!important;max-height:210px!important}}

/* v0.4.4: custody-safe session control and non-destructive avatar fitting. */
.d4c-prison-session-actions{display:grid;gap:8px;justify-items:stretch;text-align:center}
.d4c-yard-mast .d4c-prison-session-actions>strong{padding:12px;border:3px solid #7f1d24;background:#3d1012;color:#fff}
.d4c-prison-logout,.d4c-prison-return-gate{display:block;padding:9px 14px;border:2px solid #8e7652;background:#17130f;color:#ead8b4!important;font:900 12px Arial,sans-serif;letter-spacing:1.5px;text-decoration:none!important}
.d4c-prison-logout:hover,.d4c-prison-logout:focus,.d4c-prison-return-gate:hover,.d4c-prison-return-gate:focus{background:#6b171b;color:#fff!important;border-color:#bd5148}
.d4c-yard-detainee__photo img,
.d4c-cell-hatch img,
.d4c-cell-hatch img.d4c-cell-prisoner-photo,
.d4c-cell-inspector__photo{object-fit:contain!important;object-position:center center!important;background:#090705!important}
@media(max-width:600px){.d4c-prison-session-actions{width:min(100%,280px);margin-inline:auto}}
@media(max-width:850px){.d4c-yard-mast{grid-template-columns:84px 1fr}.d4c-yard-mast>strong{grid-column:1/-1}.d4c-yard-case{grid-template-columns:1fr}.d4c-yard-detainee{grid-row:auto}.d4c-visit-control{grid-template-columns:1fr auto}.d4c-visit-control span{grid-column:1/-1}.d4c-yard-warning{display:grid}.d4c-yard-warning span{align-self:auto}}@media(prefers-reduced-motion:reduce){.d4c-impounded-overlay{animation:none}}
.d4c-yard-demo{min-height:520px;margin:18px 0;padding:28px;display:grid;align-content:end;gap:16px;background:linear-gradient(transparent 0 42%,rgba(10,8,6,.9) 74%);border:6px ridge #705a40;box-shadow:0 20px 50px #000}.d4c-yard-demo>b{font:900 clamp(28px,5vw,54px) var(--d4c-cargo);letter-spacing:4px;color:#e0c087;text-align:center}.d4c-yard-demo>p{max-width:850px;margin:0 auto;text-align:center;font-weight:800}.d4c-yard-demo__flow{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.d4c-yard-demo__flow span{padding:12px 8px;background:#17110d;border:3px ridge #715a3e;text-align:center;font-weight:900}.d4c-yard-demo__flow span+span:before{content:'→';margin-right:10px;color:#a63c35}@media(max-width:700px){.d4c-yard-demo__flow{grid-template-columns:1fr}.d4c-yard-demo__flow span+span:before{content:'↓'}}

/* v0.4.17 — Death Row detainee presentation; ordinary Jail Core views unchanged. */
.d4c-death-row-custody strong{color:#7b1717!important;letter-spacing:.08em}.d4c-death-row-self .d4c-death-row-detained{display:block;color:#7b1717;font-size:1.05rem;margin:.25rem 0}.d4c-death-row-self div{color:#2b241d;font-weight:700}.d4c-death-row-release .d4c-release-action__locked{color:#f2d9a2!important}


/* v0.4.19 — HOLDING PEN PRESENTATION TEST.
   Presentation only. Existing D4C Impoundment Core remains authoritative for
   detention, Governor release and Calling Bell permissions. Ordinary Jail and
   Death Row selectors are intentionally not changed here. */
.d4c-yard-shell{background:#77766f;color:#17191a}
.d4c-yard-architecture{background:linear-gradient(rgba(222,224,218,.44),rgba(102,105,101,.48)),url('assets/images/hmp-d4c-prison-yard-reference.jpg') center/cover no-repeat;filter:grayscale(.38) brightness(1.34) contrast(.82)}
.d4c-yard-architecture:after{background:linear-gradient(180deg,rgba(244,246,240,.18),rgba(36,39,38,.22)),linear-gradient(90deg,rgba(0,0,0,.18),transparent 14% 86%,rgba(0,0,0,.18))}
.d4c-yard-locked-gate{background:#d8d9d4;border:5px ridge #6f7472;color:#252a2a;box-shadow:0 8px 24px #0006;font-size:16px}
.d4c-yard-mast{background:rgba(224,225,218,.94);border:5px ridge #747a78;box-shadow:0 12px 28px #0007;color:#1d2222}
.d4c-yard-mast h1{color:#202525}.d4c-yard-mast p,.d4c-yard-mast small{color:#444b4a}
.d4c-yard-mast>strong,.d4c-yard-mast .d4c-prison-session-actions>strong{background:#7b5a22;border-color:#ad8b50;color:#fff}
.d4c-yard-warning{background:rgba(173,134,62,.94);border-color:#d2b06d;color:#171713;box-shadow:0 8px 18px #0005}
.d4c-yard-warning b{color:#171713}.d4c-yard-warning span{color:#2a2418}
.d4c-yard-case{background:rgba(216,217,211,.94);border-color:#777d7a;box-shadow:0 16px 38px #0007;color:#202424}
.d4c-yard-detainee{background:#bfc1bd;border-color:#707572}
.d4c-yard-detainee__photo{background:#242725;border-color:#555b58;outline-color:#969b97}
.d4c-yard-detainee__photo img{filter:grayscale(.12) saturate(.82) contrast(1.02) brightness(.96)}
.d4c-yard-detainee__bars{background:repeating-linear-gradient(90deg,transparent 0 15%,rgba(57,62,60,.76) 16% 19%,transparent 20% 35%);box-shadow:inset 0 0 20px #0005}
.d4c-yard-case__identity{background:#ecece6;color:#1d2221;border-color:#676c69}
.d4c-yard-case__status{background:#8a692e;border-color:#b99857;color:#fff}
.d4c-yard-case>p{background:#ecece7;border-color:#8b908d;color:#242927}
.d4c-yard-bell{background:#d5d6d0;border-color:#757b78;color:#1e2322}
.d4c-yard-bell h3{color:#4c3a1b}.d4c-yard-bell p{color:#303634}
.d4c-yard-fine,.d4c-yard-bell-suspended{background:#dedfd9;border-color:#8b908d;color:#202523}
.d4c-yard-governor{background:#d6ddd5;border-color:#738373;color:#202721}
.d4c-yard-governor h3{color:#314536}
.d4c-yard-demo{background:rgba(228,229,223,.94)!important;border-color:#7d8380!important;color:#222827!important}
.d4c-yard-demo__flow span{background:#e6e7e1!important;border-color:#8d938f!important;color:#343a38!important}
.d4c-yard-shell .d4c-prison-footer{background:rgba(56,61,59,.94);border-top-color:#9ba09d;color:#f1f1ec}
@media(max-width:700px){.d4c-yard-mast{grid-template-columns:76px 1fr}.d4c-yard-mast .d4c-prison-seal{width:70px;height:70px}.d4c-yard-mast h1{font-size:clamp(34px,11vw,52px);letter-spacing:3px}.d4c-yard-warning{display:grid}.d4c-yard-case{grid-template-columns:1fr}.d4c-yard-detainee{grid-row:auto}}


/* v0.4.20 — HOLDING WING PRESENTATION TEST.
   Presentation only. Jail Core remains sole owner of impoundment/custody, Bell,
   Governor decisions, fines and release/commit actions. */
.d4c-yard-shell{background:#b7bab5!important;color:#1d2322!important}
.d4c-yard-architecture{
 background:
   linear-gradient(180deg,rgba(238,241,237,.86) 0 12%,rgba(187,193,189,.42) 12% 74%,rgba(86,92,90,.68) 74% 100%),
   repeating-linear-gradient(90deg,transparent 0 13%,rgba(52,59,57,.82) 13.2% 14.2%,transparent 14.4% 28%),
   linear-gradient(90deg,#767d79 0 3%,transparent 3% 97%,#767d79 97% 100%)!important;
 filter:none!important;background-color:#aeb3af!important
}
.d4c-yard-architecture:before{content:"";position:absolute;inset:11% 4% 23%;border-top:12px solid #626966;border-bottom:10px solid #626966;background:repeating-linear-gradient(90deg,rgba(49,55,53,.92) 0 7px,transparent 7px 70px),repeating-linear-gradient(0deg,transparent 0 112px,rgba(69,76,73,.72) 112px 121px);box-shadow:inset 0 0 70px #fff5,0 18px 40px #0004}
.d4c-yard-architecture:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,29,28,.25),transparent 10% 90%,rgba(24,29,28,.25)),radial-gradient(ellipse at 50% 12%,rgba(255,255,248,.72),transparent 34%),linear-gradient(180deg,transparent 0 70%,rgba(39,44,42,.28) 100%)!important}
.d4c-yard-watchtower{position:absolute;left:5%;right:5%;top:17%;height:10px;background:#555d5a;box-shadow:0 116px 0 #606764,0 232px 0 #606764}
.d4c-yard-watchtower:before,.d4c-yard-watchtower:after{content:"";position:absolute;top:-10px;width:4px;height:255px;background:#555d5a;box-shadow:34px 0 #555d5a,68px 0 #555d5a,102px 0 #555d5a,136px 0 #555d5a}
.d4c-yard-watchtower:before{left:3%}.d4c-yard-watchtower:after{right:13%}
.d4c-yard-locked-gate{bottom:5%!important;background:#dfe2de!important;border-color:#69716e!important;color:#202625!important;letter-spacing:2px!important}
.d4c-yard-inner{max-width:1260px!important}
.d4c-yard-mast{background:rgba(239,241,236,.96)!important;border-color:#6d7471!important;box-shadow:0 12px 32px #0005!important;color:#1d2322!important}
.d4c-yard-mast h1{color:#202625!important}.d4c-yard-mast p,.d4c-yard-mast small{color:#515957!important}
.d4c-yard-mast .d4c-prison-session-actions>strong{background:#806327!important;border-color:#b49453!important;color:#fff!important}
.d4c-yard-warning{background:rgba(189,153,79,.96)!important;border-color:#d3b66e!important;color:#181b19!important}
.d4c-yard-warning b,.d4c-yard-warning span{color:#181b19!important}
.d4c-yard-case{background:rgba(232,234,229,.96)!important;border-color:#707774!important;color:#202625!important;box-shadow:0 18px 42px #0006!important}
.d4c-yard-detainee{background:#c9cdc8!important;border-color:#737a77!important}
.d4c-yard-case__identity{background:#f1f2ed!important;color:#202625!important;border-color:#666d6a!important}
.d4c-yard-case__status{background:#86692f!important;border-color:#b99a58!important}
.d4c-yard-case>p,.d4c-yard-bell,.d4c-yard-fine,.d4c-yard-bell-suspended{background:#e7e9e4!important;border-color:#858c89!important;color:#252b29!important}
.d4c-yard-governor{background:#dde5dc!important;border-color:#758577!important;color:#222a24!important}
.d4c-yard-demo{min-height:560px!important;background:linear-gradient(180deg,rgba(239,241,236,.3),rgba(224,227,222,.96) 62%)!important;border-color:#737a77!important;color:#202625!important}
.d4c-yard-demo>b{color:#303735!important}.d4c-yard-demo__flow span{background:#f0f1ec!important;border-color:#858c89!important;color:#303735!important}
@media(max-width:700px){.d4c-yard-architecture:before{inset:10% 2% 20%}.d4c-yard-watchtower{left:2%;right:2%}}


/* v0.4.21 — CONSOLIDATED HOLDING WING PRESENTATION.
   Uses the user-approved multi-level prison interior reference as the physical
   environment. Presentation only: Jail Core remains authoritative for custody,
   Bell, Governor decisions, fines, release and commit actions. */
.d4c-yard-shell{background:#b7b3a8!important;color:#1f211f!important}
.d4c-yard-architecture{
 background:
   linear-gradient(180deg,rgba(244,240,225,.10),rgba(54,50,43,.13) 62%,rgba(20,20,18,.40)),
   url('assets/images/hmp-d4c-holding-wing-approved-reference.jpg') center 42%/cover no-repeat!important;
 filter:brightness(1.08) saturate(.82) contrast(.94)!important;
 transform:scale(1.012);
}
.d4c-yard-architecture:before{content:""!important;position:absolute!important;inset:0!important;border:0!important;background:linear-gradient(90deg,rgba(20,20,18,.28),transparent 12% 88%,rgba(20,20,18,.28)),linear-gradient(180deg,rgba(250,245,226,.08),transparent 48%,rgba(14,14,13,.28))!important;box-shadow:inset 0 0 90px rgba(0,0,0,.22)!important}
.d4c-yard-architecture:after{content:""!important;position:absolute!important;inset:0!important;background:radial-gradient(ellipse at 50% 8%,rgba(255,250,230,.18),transparent 34%)!important}
.d4c-yard-watchtower{display:none!important}
.d4c-yard-locked-gate{bottom:4.5%!important;background:rgba(222,216,197,.95)!important;border:4px ridge #5f5a50!important;color:#22231f!important;box-shadow:0 8px 24px #0008!important}
.d4c-yard-inner{max-width:1260px!important}
.d4c-yard-mast{background:rgba(238,235,222,.95)!important;border-color:#5f5c54!important;color:#20221f!important;backdrop-filter:blur(2px)}
.d4c-yard-mast h1{color:#20221f!important}.d4c-yard-mast p,.d4c-yard-mast small{color:#54564f!important}
.d4c-yard-demo{min-height:560px!important;background:linear-gradient(180deg,rgba(235,231,216,.12),rgba(225,222,208,.94) 69%)!important;border-color:#69655c!important;color:#242620!important}
.d4c-yard-demo>b{color:#292c27!important;text-shadow:0 1px #fff8!important}.d4c-yard-demo__flow span{background:rgba(239,236,222,.96)!important;border-color:#777168!important;color:#30332d!important}
.d4c-yard-warning{background:rgba(184,145,67,.95)!important;border-color:#d0ad64!important}
.d4c-yard-case{background:rgba(232,230,219,.96)!important;border-color:#68665f!important}
.d4c-yard-detainee{background:#c9c6ba!important;border-color:#6c6961!important}
.d4c-yard-case__identity{background:#f1eee2!important;border-color:#68655d!important}
.d4c-yard-case>p,.d4c-yard-bell,.d4c-yard-fine,.d4c-yard-bell-suspended{background:#e8e5d9!important;border-color:#817d73!important;color:#292b27!important}
.d4c-yard-governor{background:#dce1d7!important;border-color:#738074!important}
.d4c-yard-shell .d4c-prison-footer{background:rgba(39,40,36,.94)!important;border-top-color:#817b6d!important;color:#f2ecda!important}
@media(max-width:700px){.d4c-yard-architecture{background-position:center top!important;background-size:auto 100%!important}.d4c-yard-demo{min-height:480px!important}}

/* v0.4.22 — consolidated Death Row Review Wing presentation.
   Presentation only: Death Row Core remains authoritative for case/custody/appeal/tasks. */
.d4c-death-row-review-wing{position:relative;min-height:100vh;background:#17120f url('assets/images/hmp-d4c-corridor-photo.jpg') center top/cover fixed no-repeat;color:#eee4d4}
.d4c-death-row-review-wing:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(22,5,5,.82),rgba(18,13,10,.36) 28%,rgba(12,9,8,.25) 52%,rgba(18,8,7,.68)),linear-gradient(180deg,rgba(0,0,0,.12),rgba(24,0,0,.62));mix-blend-mode:multiply}
.d4c-death-row-review-wing .d4c-prison-inner{position:relative;z-index:1}
.d4c-death-row-review-wing .d4c-prison-mast{background:linear-gradient(180deg,rgba(28,22,18,.97),rgba(13,11,10,.98));border-color:#6f2a27;box-shadow:0 12px 34px #000c,inset 0 -2px 0 #8d302b}
.d4c-death-row-review-wing .d4c-prison-brand small{color:#c8967f}.d4c-death-row-review-wing .d4c-prison-brand h1{color:#f1e3cf;text-shadow:0 2px 0 #000,0 0 18px #6e1515}.d4c-death-row-review-wing .d4c-prison-brand p{color:#bda98e}
.d4c-death-row-review-wing .d4c-prison-status-chip{background:#5b1518!important;border-color:#9f3b3e!important;color:#ffe9dc!important}
.d4c-death-row-sound{display:block;width:100%;margin-top:7px;padding:7px 9px;background:#211b18;color:#e7d8c3;border:1px solid #6d5041;font:800 10px Arial;letter-spacing:1px;cursor:pointer}
.d4c-death-row-status-row{background:rgba(18,14,12,.94)!important;border-color:#74302b!important;box-shadow:0 14px 32px #0009}
.d4c-death-row-review-wing .d4c-death-row-custody strong,.d4c-death-row-review-wing .d4c-death-row-detained{color:#e45c55!important;text-shadow:0 0 12px #7a1717}
.d4c-death-row-review-wing .d4c-death-row-self div,.d4c-death-row-review-wing .d4c-death-row-custody small{color:#d7c9b6!important}
.d4c-death-row-process{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;margin:12px 0 18px;padding:11px 13px;background:rgba(11,9,8,.93);border:1px solid #66312d;box-shadow:0 10px 24px #0009;color:#c9b8a1;font:800 10px Arial;letter-spacing:.7px;text-transform:uppercase}
.d4c-death-row-process span{padding:7px 9px;background:#211a17;border:1px solid #4e3a31}.d4c-death-row-process span:first-child,.d4c-death-row-process span:last-child{border-color:#84312f;color:#f0d9c7}.d4c-death-row-process i{font-style:normal;color:#a9443e}
.d4c-death-row-review-wing .d4c-prison-facility,.d4c-death-row-review-wing .d4c-release-compact,.d4c-death-row-review-wing .d4c-prison-operations>section{background:rgba(20,16,13,.95)!important;border-color:#5f4033!important;box-shadow:0 15px 34px #000b}
.d4c-death-row-review-wing .d4c-facility-sign,.d4c-death-row-review-wing .d4c-release-compact__head{background:linear-gradient(90deg,#501518,#271513)!important;color:#f0ddc8!important;border-bottom-color:#7d312e!important}
.d4c-death-row-review-wing .d4c-facility-sign span,.d4c-death-row-review-wing .d4c-release-compact__head span{color:#cdb9a2!important}
.d4c-death-row-review-wing .d4c-death-row-appeal__surface,.d4c-death-row-review-wing .d4c-death-row-conditions__surface,.d4c-death-row-review-wing .d4c-prison-page-content,.d4c-death-row-review-wing .d4c-prison-media-screen{background:rgba(236,226,208,.94)!important;color:#2a211b!important;border:1px solid #5e4437!important;box-shadow:inset 0 0 28px rgba(70,35,20,.12)}
.d4c-death-row-review-wing .d4c-death-row-release{border-color:#7c302e!important}.d4c-death-row-review-wing .d4c-release-action{background:#171210!important;color:#e8d8c5!important}
.d4c-death-row-review-wing .d4c-prison-footer{background:rgba(12,10,9,.96)!important;border-color:#60302b!important;color:#cbb7a0!important}
@media(max-width:900px){.d4c-death-row-review-wing{background-attachment:scroll}.d4c-death-row-process{justify-content:flex-start}.d4c-death-row-process i{display:none}}


/* ============================================================
   v0.4.23 — DEATH ROW ENVIRONMENTAL COMPOSITION
   Presentation-only refinement. Death Row Core remains owner of
   custody, cases, appeals, tasks, review and release authority.
   ============================================================ */
.d4c-death-row-review-wing{
  background:#090807!important;
  padding-top:18px!important;
}
.d4c-death-row-review-wing:before{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  background:linear-gradient(180deg,rgba(8,5,4,.18),rgba(15,2,2,.52))!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
  pointer-events:none!important;
}
.d4c-death-row-review-wing .d4c-prison-inner{
  position:relative!important;
  z-index:1!important;
  max-width:1480px!important;
  min-height:1180px!important;
  padding:22px 22px 42px!important;
  background:
    linear-gradient(180deg,rgba(7,5,4,.15) 0%,rgba(10,7,5,.12) 24%,rgba(10,7,5,.26) 62%,rgba(6,4,3,.72) 100%),
    url('assets/images/hmp-d4c-corridor-approved.png') center top/cover fixed no-repeat!important;
  box-shadow:0 0 0 1px rgba(133,63,50,.45),0 30px 80px #000,inset 0 0 120px rgba(0,0,0,.38)!important;
}
.d4c-death-row-review-wing .d4c-prison-mast{
  max-width:1200px!important;
  margin:0 auto 18px!important;
  background:linear-gradient(180deg,rgba(24,17,14,.93),rgba(12,10,9,.95))!important;
  backdrop-filter:blur(2px);
}
.d4c-death-row-review-wing .d4c-death-row-status-row{
  max-width:1160px!important;
  margin:0 auto 14px!important;
  background:rgba(24,18,14,.88)!important;
  border:1px solid rgba(142,63,52,.88)!important;
  backdrop-filter:blur(2px);
}
.d4c-death-row-review-wing .d4c-death-row-custody,
.d4c-death-row-review-wing .d4c-death-row-self{
  background:rgba(11,9,8,.74)!important;
  border-color:rgba(113,72,55,.7)!important;
}
.d4c-death-row-review-wing .d4c-death-row-custody span,
.d4c-death-row-review-wing .d4c-death-row-self h2{color:#f0dfc7!important}
.d4c-death-row-review-wing .d4c-death-row-custody small,
.d4c-death-row-review-wing .d4c-death-row-self div{color:#eadbc7!important}
.d4c-death-row-review-wing .d4c-death-row-process{
  max-width:1160px!important;
  margin:0 auto 300px!important;
  background:rgba(12,9,8,.82)!important;
  border-color:rgba(120,54,47,.78)!important;
  backdrop-filter:blur(2px);
}
.d4c-death-row-review-wing .d4c-prison-facility.d4c-death-row-appeal-facility{
  width:min(920px,88%)!important;
  margin:0 0 26px 4%!important;
  background:rgba(23,16,12,.90)!important;
  border:1px solid #6b4032!important;
  box-shadow:0 18px 44px rgba(0,0,0,.72)!important;
  transform:rotate(-.25deg);
}
.d4c-death-row-review-wing .d4c-death-row-appeal__surface{
  background:rgba(229,216,193,.96)!important;
  color:#211b17!important;
  border:1px solid #7a6551!important;
}
.d4c-death-row-review-wing .d4c-prison-facility.d4c-death-row-conditions{
  width:min(820px,84%)!important;
  margin:26px 3% 26px auto!important;
  background:rgba(24,16,12,.90)!important;
  border:1px solid #6f4031!important;
  box-shadow:0 18px 44px rgba(0,0,0,.72)!important;
  transform:rotate(.25deg);
}
.d4c-death-row-review-wing .d4c-death-row-conditions__surface{
  background:rgba(229,216,193,.96)!important;
  color:#211b17!important;
}
.d4c-death-row-review-wing .d4c-death-row-release{
  max-width:980px!important;
  margin:34px auto 24px!important;
  background:rgba(20,14,11,.92)!important;
}
.d4c-death-row-review-wing .d4c-prison-operations{
  max-width:1160px!important;
  margin:30px auto 0!important;
  gap:22px!important;
}
.d4c-death-row-review-wing .d4c-prison-operations>section{
  background:rgba(20,15,12,.91)!important;
  backdrop-filter:blur(2px);
}
.d4c-death-row-review-wing .d4c-prison-page-content,
.d4c-death-row-review-wing .d4c-prison-media-screen{
  background:rgba(225,213,191,.94)!important;
  color:#211b17!important;
}
.d4c-death-row-review-wing .d4c-prison-footer{
  max-width:1160px!important;
  margin:28px auto 0!important;
  background:rgba(11,9,8,.93)!important;
}
@media(max-width:900px){
 .d4c-death-row-review-wing .d4c-prison-inner{background-attachment:scroll!important;background-position:center top!important;padding:10px!important}
 .d4c-death-row-review-wing .d4c-death-row-process{margin-bottom:150px!important}
 .d4c-death-row-review-wing .d4c-prison-facility.d4c-death-row-appeal-facility,
 .d4c-death-row-review-wing .d4c-prison-facility.d4c-death-row-conditions{width:100%!important;margin:18px 0!important;transform:none!important}
}


/* v0.4.25 — approved full-page Final Chamber + member identity presentation */
.d4c-final-chamber{min-height:100vh;background:#b59a72 url('assets/images/hmp-d4c-final-chamber-approved.jpg') center center/cover fixed no-repeat;color:#fff7e9;padding:18px 16px 70px;position:relative;overflow:hidden}
.d4c-final-chamber:before{content:"";position:fixed;inset:0;background:linear-gradient(180deg,rgba(20,10,5,.12),rgba(15,7,3,.22) 52%,rgba(10,5,2,.48));pointer-events:none}
.d4c-final-inner{position:relative;z-index:1;max-width:1420px;margin:auto}
.d4c-final-mast{display:grid;grid-template-columns:88px 1fr 240px;gap:18px;align-items:center;background:rgba(31,20,13,.76);backdrop-filter:blur(3px);border:1px solid rgba(255,220,164,.68);box-shadow:0 8px 30px #0008;padding:14px 18px}
.d4c-final-mast img{width:74px}.d4c-final-mast small{letter-spacing:3px;color:#ffe0aa;font-weight:800}.d4c-final-mast h1{margin:3px 0 0;font-size:46px;line-height:1;color:#fff7e8;text-shadow:0 2px 8px #000}.d4c-final-mast p{margin:7px 0 0;letter-spacing:3px;color:#ffcf82;font-weight:900}
.d4c-final-actions{display:grid;gap:7px}.d4c-final-actions button,.d4c-final-actions a{background:rgba(29,18,11,.86);border:1px solid #d4a968;color:#fff3df;padding:9px;text-align:center;font-weight:800;letter-spacing:1px;text-decoration:none}.d4c-final-actions .danger{background:rgba(116,25,20,.9);border-color:#e27668}
.d4c-final-stage{margin-top:16px;min-height:650px;position:relative;display:flex;align-items:flex-end;justify-content:center;padding:28px;border:1px solid rgba(255,226,180,.72);box-shadow:0 12px 38px #0009;overflow:hidden;background:transparent}
.d4c-final-stage:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,7,4,.30),transparent 35%,transparent 72%,rgba(12,7,4,.18));pointer-events:none}
.d4c-final-identity{position:absolute;z-index:3;right:34px;left:auto;top:26px;width:min(330px,30vw);background:rgba(28,18,11,.82);backdrop-filter:blur(4px);border:2px solid rgba(255,218,158,.8);box-shadow:0 12px 35px #000a;padding:14px;color:#fff5e5}
.d4c-final-photo-wrap{position:relative;background:#17100b;border:5px solid #d3ae75;box-shadow:inset 0 0 0 2px #4c3421;margin-bottom:12px;overflow:hidden;aspect-ratio:1/1}.d4c-final-avatar{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;border-radius:0!important;margin:0!important}.d4c-final-avatar-empty{display:grid!important;place-items:center;text-align:center;font-weight:900;letter-spacing:2px;color:#d9c09c}
.d4c-final-profile-x{position:absolute;inset:0;display:grid;place-items:center;font:900 clamp(170px,18vw,260px)/.75 Arial,sans-serif;color:rgba(196,24,20,.92);text-shadow:0 3px 8px #000;opacity:0;transform:rotate(-7deg);transition:opacity .18s ease}.d4c-final-identity.terminated .d4c-final-profile-x{opacity:1}.d4c-final-identity.stayed{border-color:#e3c86e;box-shadow:0 0 30px rgba(224,192,76,.38),0 12px 35px #000a}
.d4c-final-identity small{display:block;color:#e7c796;font-weight:900;letter-spacing:1.4px}.d4c-final-identity h2{margin:5px 0 10px;color:#fff;font-size:26px;text-transform:uppercase}.d4c-final-identity dl{margin:0;display:grid;gap:5px}.d4c-final-identity dl div{display:grid;grid-template-columns:110px 1fr;gap:8px;border-top:1px solid #8e6c43;padding-top:6px}.d4c-final-identity dt{font-size:11px;letter-spacing:1px;color:#e0bd87;font-weight:900}.d4c-final-identity dd{margin:0;font-weight:900}.d4c-final-identity.terminated #d4c-final-member-status{color:#ff7167}.d4c-final-identity.stayed #d4c-final-member-status{color:#f6dc76}
.d4c-final-notice{position:relative;z-index:2;width:min(760px,70%);margin-left:0;margin-right:300px;background:rgba(30,18,10,.76);backdrop-filter:blur(3px);border:1px solid rgba(255,218,157,.8);padding:16px 22px;text-align:center;box-shadow:0 10px 30px #0009}.d4c-final-notice h2{margin:0;color:#fff8e9;font-size:34px;text-shadow:0 2px 6px #000}.d4c-final-notice strong{display:block;color:#ff6b5f;letter-spacing:2px;margin-top:7px}.d4c-final-notice p{margin:7px 0 0}
.d4c-final-panel{margin-top:14px;background:rgba(26,16,10,.84);backdrop-filter:blur(4px);border:1px solid rgba(229,190,133,.7);padding:16px}.d4c-final-panel h2{margin:0 0 10px;color:#fff0d8}.d4c-final-sequence{display:flex;gap:7px;flex-wrap:wrap}.d4c-final-sequence span{border:1px solid #9b764b;background:rgba(18,12,8,.82);padding:8px 10px;font-size:12px;font-weight:800}.d4c-final-state{margin-top:12px;padding:12px;border-left:4px solid #c23a31;background:rgba(55,16,14,.88)}.d4c-final-state.stayed{border-color:#d0af48;background:rgba(50,42,12,.88)}
.d4c-final-testnote{margin-top:14px;background:rgba(75,54,20,.9);border:1px solid #d0a653;padding:12px;color:#fff0cc;font-weight:700}.d4c-final-transcript{display:none;margin-top:10px;padding:12px;background:rgba(15,10,7,.92);border:1px solid #806344;line-height:1.55}.d4c-final-transcript.show{display:block}
@media(max-width:820px){.d4c-final-chamber{background-attachment:scroll}.d4c-final-mast{grid-template-columns:65px 1fr}.d4c-final-mast img{width:58px}.d4c-final-mast h1{font-size:30px}.d4c-final-actions{grid-column:1/-1}.d4c-final-stage{min-height:720px;align-items:flex-end;padding:16px}.d4c-final-identity{left:auto;right:16px;top:16px;width:min(270px,70vw)}.d4c-final-notice{width:100%;margin-left:0;margin-right:0}.d4c-final-identity h2{font-size:21px}}


/* v0.4.25.2 — Final Chamber right-wall framed portrait presentation.
   Presentation only: live member/case ownership and simulation behaviour remain unchanged. */
.d4c-final-identity{
 right:5.3%;top:7.2%;width:min(255px,18vw);padding:10px 10px 9px;
 background:linear-gradient(145deg,#38291c,#18110c 55%,#2b1e14);
 border:8px ridge #8b6842;outline:2px solid rgba(28,20,14,.92);
 box-shadow:10px 13px 20px rgba(0,0,0,.48),inset 0 0 0 2px #c39a62;
 transform:perspective(900px) rotateY(-2.2deg) rotateZ(.35deg);
 backdrop-filter:none;color:#efe3cd;
}
.d4c-final-identity:before{content:"";position:absolute;left:50%;top:-16px;width:46px;height:15px;transform:translateX(-50%);border:2px solid #5d5141;border-bottom:0;border-radius:24px 24px 0 0;opacity:.82}
.d4c-final-photo-wrap{margin:0;background:#15100c;border:4px solid #c1a278;box-shadow:inset 0 0 0 2px #3b2b1e,0 2px 4px #0008;aspect-ratio:4/5}
.d4c-final-identity small{margin-top:8px;text-align:center;color:#bca98a;font-size:8px;letter-spacing:1.6px}
.d4c-final-identity h2{margin:4px 0 7px;text-align:center;font:900 20px/1.05 Georgia,'Times New Roman',serif;letter-spacing:.5px;text-transform:uppercase;color:#f2e8d8}
.d4c-final-identity dl{margin:0;padding:6px 7px;background:linear-gradient(#c7b58f,#9d8966);border:2px inset #68583e;color:#1b1712;box-shadow:inset 0 0 5px #fff5}
.d4c-final-identity dl div{display:grid;grid-template-columns:82px 1fr;gap:5px;border-top:1px solid rgba(63,51,34,.42);padding-top:4px;margin-top:3px}
.d4c-final-identity dl div:first-child{border-top:0;margin-top:0}
.d4c-final-identity dt{font-size:8px;letter-spacing:.65px;color:#4b3d2b;font-weight:900}
.d4c-final-identity dd{font-size:10px;color:#17130e;font-weight:900;overflow-wrap:anywhere}
.d4c-final-identity.terminated{border-color:#6f4b35;box-shadow:10px 13px 20px rgba(0,0,0,.52),inset 0 0 0 2px #a37d53}
.d4c-final-identity.terminated #d4c-final-member-status{color:#8d0f0b}
.d4c-final-identity.stayed #d4c-final-member-status{color:#5b4a00}
.d4c-final-profile-x{font-size:clamp(145px,14vw,205px);line-height:.75;color:rgba(190,18,14,.94);text-shadow:0 2px 5px #000;mix-blend-mode:multiply}
@media(max-width:1000px){.d4c-final-identity{right:3%;top:5%;width:min(230px,24vw)}}
@media(max-width:820px){.d4c-final-identity{position:relative;right:auto;top:auto;width:min(260px,82vw);margin:0 0 auto auto;transform:none}.d4c-final-identity:before{display:none}}


/* v0.4.25.3 — Final Chamber composition repair.
   Presentation only. Preserves v0.4.25.2 routing, member bridge, audio and simulation behaviour. */
.d4c-final-chamber{
 background-image:url('assets/images/hmp-d4c-final-chamber-approved.jpg');
 background-size:cover;
 background-position:center top;
 background-attachment:fixed;
 padding:18px 18px 70px;
}
.d4c-final-chamber:before{background:linear-gradient(90deg,rgba(16,9,5,.12),transparent 30%,transparent 100%)}
.d4c-final-inner{max-width:none;min-height:100vh;margin:0;position:relative}
/* Compact information column: no full-width banner. */
.d4c-final-mast{
 position:absolute;z-index:8;left:18px;top:18px;width:315px;
 display:grid;grid-template-columns:58px 1fr;gap:11px;align-items:start;
 padding:12px;background:rgba(31,20,13,.78);border:1px solid rgba(255,220,164,.72);
 box-shadow:0 8px 24px #0008;backdrop-filter:blur(2px)
}
.d4c-final-mast img{width:52px}.d4c-final-mast small{font-size:9px;letter-spacing:1.6px}.d4c-final-mast h1{font-size:28px;line-height:1.02;margin-top:4px}.d4c-final-mast p{font-size:11px;letter-spacing:2px;margin-top:6px}
.d4c-final-actions{grid-column:1/-1;display:grid;gap:6px;margin-top:2px}.d4c-final-actions .danger{font-size:11px;padding:5px 7px}.d4c-final-actions button{font-size:10px;padding:7px 8px}
/* The chamber photograph is the stage; remove the large web-page frame. */
.d4c-final-stage{margin:0;min-height:760px;padding:0;border:0;box-shadow:none;background:transparent;overflow:visible;display:block}
.d4c-final-stage:before{display:none}
/* Status belongs to the same left information column, directly beneath the mast. */
.d4c-final-notice{
 position:absolute;z-index:8;left:18px;top:226px;width:315px;margin:0;
 padding:11px 12px;background:rgba(31,20,13,.78);border:1px solid rgba(255,218,157,.72);
 box-shadow:0 8px 24px #0008;backdrop-filter:blur(2px);text-align:left
}
.d4c-final-notice h2{font-size:18px;line-height:1.1}.d4c-final-notice strong{font-size:11px}.d4c-final-notice p{font-size:11px;line-height:1.35}
/* Portrait: a modest physical picture hung on the upper-left grey wall, clear of the guillotine. */
.d4c-final-identity{
 position:absolute;z-index:5;left:29%;right:auto;top:17%;width:155px;padding:7px 7px 6px;
 background:linear-gradient(145deg,#392a1d,#18110c 58%,#2b1e14);border:6px ridge #8b6842;
 outline:1px solid rgba(28,20,14,.9);box-shadow:7px 9px 14px rgba(0,0,0,.48),inset 0 0 0 1px #c39a62;
 transform:perspective(900px) rotateY(1.5deg) rotateZ(-.35deg);backdrop-filter:none
}
.d4c-final-identity:before{top:-12px;width:34px;height:11px}
.d4c-final-photo-wrap{border:3px solid #c1a278;margin:0;aspect-ratio:4/5}
.d4c-final-identity small{font-size:6px;letter-spacing:.8px;margin-top:5px}.d4c-final-identity h2{font-size:12px;margin:3px 0 4px}.d4c-final-identity dl{padding:4px 5px}.d4c-final-identity dl div{grid-template-columns:50px 1fr;gap:3px;padding-top:2px;margin-top:2px}.d4c-final-identity dt{font-size:5.5px}.d4c-final-identity dd{font-size:6.5px}.d4c-final-profile-x{font-size:112px}
/* Ceremony controls remain below the visual chamber and retain their existing functionality. */
.d4c-final-panel{position:relative;z-index:9;margin:18px 18px 0;background:rgba(26,16,10,.88)}
@media(max-width:1000px){.d4c-final-identity{left:31%;right:auto;top:18%;width:135px}}
@media(max-width:820px){
 .d4c-final-chamber{background-attachment:scroll;background-position:center top;padding:10px 10px 50px}
 .d4c-final-mast{position:relative;left:auto;top:auto;width:min(315px,92vw);grid-template-columns:52px 1fr}
 .d4c-final-actions{grid-column:1/-1}.d4c-final-stage{min-height:650px}
 .d4c-final-notice{left:0;top:210px;width:min(290px,78vw)}
 .d4c-final-identity{left:auto;right:4%;top:9%;width:125px;transform:none;margin:0}
 .d4c-final-panel{margin:12px 0 0}
}

/* v0.4.25.4 — Final Chamber two-position presentation refinement.
   ONLY: (1) larger old framed member portrait on right grey wall;
         (2) Final Chamber information block moved to bottom-right under window.
   Functional/audio/routing/background/ceremony behaviour unchanged. */
.d4c-final-mast{
 left:auto;right:22px;top:500px;width:315px;
}
.d4c-final-notice{
 left:auto;right:22px;top:708px;width:315px;
}
/* Larger traditional wall-hung portrait on the broad right grey wall. */
.d4c-final-identity{
 left:auto;right:20%;top:16%;width:210px;padding:10px 10px 8px;
 background:linear-gradient(145deg,#4b2f18 0%,#24170e 28%,#5a3a1d 52%,#1b110a 76%,#3d2715 100%);
 border:10px ridge #8a5d2f;
 outline:2px solid rgba(53,31,14,.95);
 box-shadow:9px 12px 20px rgba(0,0,0,.55),inset 0 0 0 2px #c89b58,inset 0 0 0 5px #3a2412;
 transform:perspective(1000px) rotateY(-1deg) rotateZ(.25deg);
}
.d4c-final-identity:before{top:-16px;width:46px;height:14px;border-color:#6b4a28}
.d4c-final-photo-wrap{border:5px double #c8a36b;background:#160f0a;box-shadow:inset 0 0 10px #000;margin:0;aspect-ratio:4/5}
.d4c-final-identity small{font-size:6.5px;letter-spacing:.9px;margin-top:7px}
.d4c-final-identity h2{font-size:15px;margin:4px 0 5px}
.d4c-final-identity dl{padding:5px 6px;background:#cbb78d;color:#26190e}
.d4c-final-identity dl div{grid-template-columns:62px 1fr;gap:4px;padding-top:3px;margin-top:3px}
.d4c-final-identity dt{font-size:6px}.d4c-final-identity dd{font-size:7.5px}.d4c-final-profile-x{font-size:150px}
@media(max-width:1200px){
 .d4c-final-identity{right:16%;top:17%;width:185px}
 .d4c-final-mast{right:14px;top:490px}.d4c-final-notice{right:14px;top:698px}
}
@media(max-width:820px){
 .d4c-final-mast{position:relative;left:auto;right:auto;top:auto;width:min(315px,92vw)}
 .d4c-final-notice{left:auto;right:0;top:420px;width:min(290px,78vw)}
 .d4c-final-identity{left:auto;right:5%;top:8%;width:145px;transform:none}
}

/* v0.4.25.5 — Final Chamber cinematic scene integration.
   Presentation-only refinement from v0.4.25.4. Functional/audio/routing/custody logic unchanged. */
.d4c-final-chamber{isolation:isolate}
/* Slow environmental warning-light wash: physical-room effect, not UI flashing. */
.d4c-final-chamber:after{
 content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
 background:
  radial-gradient(circle at 76% 20%,rgba(190,22,18,.24),transparent 19%),
  radial-gradient(circle at 19% 48%,rgba(168,20,16,.14),transparent 25%),
  linear-gradient(105deg,transparent 35%,rgba(164,18,15,.10) 52%,transparent 68%);
 mix-blend-mode:multiply;opacity:.18;animation:d4cFinalWarningWash 4.8s ease-in-out infinite;
}
@keyframes d4cFinalWarningWash{0%,100%{opacity:.08}45%{opacity:.34}58%{opacity:.18}}
@media (prefers-reduced-motion:reduce){.d4c-final-chamber:after{animation:none;opacity:.10}}

/* Hero portrait: wider, higher and slightly left into the centre of the right grey wall. */
.d4c-final-identity{
 right:24.5%;top:9.5%;width:285px;padding:13px 13px 11px;
 border-width:12px;box-shadow:12px 16px 27px rgba(0,0,0,.58),inset 0 0 0 2px #d2aa68,inset 0 0 0 6px #3a2412;
 transform:perspective(1100px) rotateY(-1.5deg) rotateZ(.18deg);
}
.d4c-final-photo-wrap{aspect-ratio:1/1.08;border-width:6px}
.d4c-final-identity small{font-size:9px;letter-spacing:1.25px;margin-top:9px}
.d4c-final-identity h2{font-size:22px;line-height:1.05;margin:6px 0 8px;text-shadow:0 2px 3px #000}
.d4c-final-identity dl{padding:8px 9px}
.d4c-final-identity dl div{grid-template-columns:88px 1fr;gap:7px;padding-top:5px;margin-top:4px}
.d4c-final-identity dt{font-size:8px;letter-spacing:.8px}.d4c-final-identity dd{font-size:10.5px;line-height:1.15}.d4c-final-profile-x{font-size:205px}

/* Final Chamber notice/control assembly sits immediately beneath the right window and turns inward with the wall. */
.d4c-final-mast{
 right:3.8%;top:48%;width:305px;
 transform-origin:right center;transform:perspective(900px) rotateY(-12deg) rotateZ(-.35deg);
 background:linear-gradient(100deg,rgba(38,24,14,.90),rgba(19,13,9,.80));
 border:2px solid rgba(181,139,82,.78);box-shadow:-10px 12px 28px #0008,inset 0 0 18px rgba(198,146,77,.08);
}
.d4c-final-notice{
 right:4.1%;top:68%;width:305px;
 transform-origin:right center;transform:perspective(900px) rotateY(-12deg) rotateZ(-.35deg);
 background:linear-gradient(100deg,rgba(40,24,14,.91),rgba(18,12,8,.82));
 border:2px solid rgba(181,139,82,.74);box-shadow:-10px 12px 28px #0008,inset 0 0 18px rgba(198,146,77,.08);
}
/* Give warning states a restrained practical-light pulse. */
.d4c-final-mast,.d4c-final-notice{animation:d4cFinalPanelGlow 4.8s ease-in-out infinite}
@keyframes d4cFinalPanelGlow{0%,100%{border-color:rgba(181,139,82,.66);filter:brightness(.96)}45%{border-color:rgba(184,54,42,.88);filter:brightness(1.06)}58%{border-color:rgba(181,139,82,.72);filter:brightness(1)}}
@media (prefers-reduced-motion:reduce){.d4c-final-mast,.d4c-final-notice{animation:none}}

/* Staging controls remain below the cinematic scene and are deliberately visually separate. */
.d4c-final-panel{margin-top:24px;border-top:3px solid rgba(178,134,75,.65)}

@media(max-width:1200px){
 .d4c-final-identity{right:22%;top:10%;width:245px}
 .d4c-final-mast{right:2.5%;top:47%;width:290px}.d4c-final-notice{right:2.8%;top:67%;width:290px}
}
@media(max-width:820px){
 .d4c-final-chamber:after{position:absolute}
 .d4c-final-identity{left:auto;right:4%;top:8%;width:175px;transform:none}
 .d4c-final-mast{position:relative;right:auto;top:auto;width:min(315px,92vw);transform:none;animation:none}
 .d4c-final-notice{left:auto;right:0;top:420px;width:min(290px,78vw);transform:none;animation:none}
}

/* v0.4.25.6 — Final Walk corridor presentation.
   Presentation-only bridge before the existing Final Chamber simulation.
   Reuses the approved Prison World corridor and corridor-footsteps audio; no custody/case/routing changes. */
.d4c-final-walk{position:fixed;inset:0;z-index:100500;display:grid;place-items:end center;overflow:hidden;background:#080706;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 1.05s ease,visibility 1.05s ease}
.d4c-final-walk-pending .d4c-final-walk{opacity:1;visibility:visible;pointer-events:auto}
.d4c-final-walk__depth{position:absolute;inset:-3%;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.42)),url('assets/images/hmp-d4c-corridor-approved.png') center center/cover no-repeat;transform:scale(1.03);filter:brightness(.58) contrast(1.12) saturate(.72);transition:transform 6.2s cubic-bezier(.18,.72,.18,1),filter 6.2s ease}
.d4c-final-walk.is-walking .d4c-final-walk__depth{transform:scale(1.16);filter:brightness(.74) contrast(1.08) saturate(.78)}
.d4c-final-walk__vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 47%,transparent 22%,rgba(0,0,0,.28) 58%,rgba(0,0,0,.86) 100%),linear-gradient(90deg,rgba(111,12,12,.18),transparent 20% 80%,rgba(111,12,12,.18));box-shadow:inset 0 0 150px #000}
.d4c-final-walk__caption{position:relative;z-index:2;margin:0 0 7vh;padding:18px 28px 20px;min-width:min(520px,calc(100vw - 32px));text-align:center;color:#eee3d0;background:rgba(16,12,9,.78);border:1px solid rgba(190,151,92,.62);box-shadow:0 14px 45px #000,inset 0 0 22px rgba(164,33,24,.08);backdrop-filter:blur(2px);transition:opacity .7s ease,transform .7s ease}
.d4c-final-walk__caption small{display:block;font:800 10px/1.2 Arial,sans-serif;letter-spacing:3px;color:#c8aa79}.d4c-final-walk__caption h1{margin:5px 0 2px;font:900 clamp(34px,5vw,62px)/1 Impact,'Arial Narrow',sans-serif;letter-spacing:5px;color:#f0e2cb;text-shadow:0 3px 12px #000}.d4c-final-walk__caption p{margin:0 0 13px;font:900 13px/1.2 Arial,sans-serif;letter-spacing:3px;color:#b84336}.d4c-final-walk__caption button{border:1px solid #b9945c;background:linear-gradient(#4b3020,#25170f);color:#f4e5ce;padding:11px 18px;font-weight:900;letter-spacing:1.5px;cursor:pointer}.d4c-final-walk__caption button:disabled{opacity:.65;cursor:default}.d4c-final-walk__caption span{display:block;margin-top:9px;font:700 10px/1.3 Arial,sans-serif;letter-spacing:.7px;color:#c9bdac}
.d4c-final-walk.is-walking .d4c-final-walk__caption{opacity:.22;transform:translateY(20px)}
.d4c-final-walk-arriving .d4c-final-walk{opacity:0}
@media (prefers-reduced-motion:reduce){.d4c-final-walk__depth,.d4c-final-walk__caption,.d4c-final-walk{transition:none}.d4c-final-walk.is-walking .d4c-final-walk__depth{transform:scale(1.03)}}
@media(max-width:700px){.d4c-final-walk__caption{margin-bottom:5vh;padding:15px 16px}.d4c-final-walk__caption h1{letter-spacing:3px}}


/* v0.4.25.7 — FINAL WALK CINEMATIC VIDEO
   Presentation-only replacement of static corridor depth. Approved clip #2, slowed in-browser;
   existing corridor-footsteps remains the audio owner. Farewell captions are scenery, not messaging. */
.d4c-final-walk{background:#030303}
.d4c-final-walk:before,.d4c-final-walk:after{content:"";position:absolute;inset:0 50% 0 0;background:radial-gradient(ellipse at 100% 50%,rgba(93,72,48,.16),transparent 44%),linear-gradient(90deg,#050403,#15100c 70%,#080604);z-index:0}
.d4c-final-walk:after{inset:0 0 0 50%;transform:scaleX(-1)}
.d4c-final-walk__video{position:absolute;z-index:1;left:50%;top:50%;height:100vh;width:auto;max-width:100vw;transform:translate(-50%,-50%);object-fit:contain;background:#050403;filter:brightness(.82) contrast(1.08) saturate(.78);box-shadow:0 0 85px 28px rgba(0,0,0,.88)}
.d4c-final-walk__vignette{z-index:2;background:radial-gradient(ellipse at 50% 46%,transparent 30%,rgba(0,0,0,.18) 58%,rgba(0,0,0,.78) 100%),linear-gradient(180deg,rgba(0,0,0,.24),transparent 24% 76%,rgba(0,0,0,.55));box-shadow:inset 0 0 120px #000}
.d4c-final-walk__caption{z-index:5}.d4c-final-walk.is-walking .d4c-final-walk__caption{opacity:0;pointer-events:none;transform:translateY(28px)}
.d4c-final-walk__farewells{position:absolute;z-index:4;inset:0;pointer-events:none}
.d4c-final-farewell{position:absolute;top:23%;max-width:min(390px,34vw);padding:13px 19px;color:#f5ead8;background:rgba(19,15,11,.82);border:1px solid rgba(210,177,124,.72);border-radius:18px;font:800 clamp(15px,1.5vw,21px)/1.25 Arial,sans-serif;letter-spacing:.2px;text-shadow:0 2px 6px #000;box-shadow:0 10px 28px rgba(0,0,0,.72);opacity:0;transform:translateY(10px) scale(.96);transition:opacity .35s ease,transform .35s ease;backdrop-filter:blur(2px)}
.d4c-final-farewell.side-left{left:8%}.d4c-final-farewell.side-right{right:8%;top:32%}.d4c-final-farewell.show{opacity:1;transform:translateY(0) scale(1)}
.d4c-final-farewell:after{content:"";position:absolute;bottom:-10px;border:10px solid transparent;border-top-color:rgba(210,177,124,.72)}.d4c-final-farewell.side-left:after{left:26px}.d4c-final-farewell.side-right:after{right:26px}
@media(max-width:700px){.d4c-final-walk__video{width:100vw;height:100vh;object-fit:cover}.d4c-final-farewell{max-width:72vw;top:18%;font-size:15px}.d4c-final-farewell.side-left{left:5%}.d4c-final-farewell.side-right{right:5%;top:28%}}
@media(prefers-reduced-motion:reduce){.d4c-final-farewell{transition:none}.d4c-final-walk__video{filter:brightness(.82) contrast(1.08) saturate(.78)}}

/* v0.4.25.8 — FINAL WALK AUDIO + FINAL CHAMBER GEOMETRY REPAIR
   Scoped presentation/audio correction only. No custody, routing, case, ceremony or account logic changes. */
/* Portrait: centre it in the uninterrupted grey wall, higher and clear of the gold pictures. */
.d4c-final-identity{
  right:30.5%; top:5.5%; width:300px;
  transform:perspective(1150px) rotateY(-1deg) rotateZ(.12deg);
}
/* Right-wall information: higher, closer to the edge, and registered to the window/wall plane. */
.d4c-final-mast{
  right:1.2%; top:38.5%; width:300px;
  transform-origin:right center;
  transform:perspective(820px) rotateY(-15deg) rotateZ(-.45deg) skewY(-.35deg);
}
.d4c-final-notice{
  right:1.45%; top:57.5%; width:300px;
  transform-origin:right center;
  transform:perspective(820px) rotateY(-15deg) rotateZ(-.45deg) skewY(-.35deg);
}
@media(max-width:1200px){
 .d4c-final-identity{right:28%;top:5%;width:255px}
 .d4c-final-mast{right:1%;top:38%;width:285px}
 .d4c-final-notice{right:1.2%;top:57%;width:285px}
}
@media(max-width:820px){
 .d4c-final-identity{left:auto;right:4%;top:8%;width:175px;transform:none}
 .d4c-final-mast{position:relative;right:auto;top:auto;width:min(315px,92vw);transform:none}
 .d4c-final-notice{left:auto;right:0;top:420px;width:min(290px,78vw);transform:none}
}


/* v0.4.25.9 — FINAL CHAMBER PORTRAIT FRAME + AUDIO PACE REPAIR
   Evidence-led presentation correction from staging screenshot. No custody, routing,
   case, ceremony, account, farewell or Final Walk video changes. */

/* Physical wall portrait: shorter overall, wider identity area, reduced photograph,
   raised into the clear central grey wall and clear of the yellow exhibits. */
.d4c-final-identity{
  right:31.5%; top:2.8%; width:286px; padding:10px 11px 11px;
  background:
    linear-gradient(180deg,rgba(42,25,13,.98),rgba(22,14,9,.98)) padding-box,
    linear-gradient(135deg,#4b2a12 0%,#b47a35 14%,#e0b766 27%,#6e401a 43%,#c28a42 59%,#4a2912 78%,#d1a055 91%,#5b3215 100%) border-box;
  border:14px solid transparent; outline:2px solid rgba(38,21,10,.94);
  box-shadow:12px 16px 24px rgba(0,0,0,.56),inset 0 0 0 2px #2b180c,inset 0 0 0 5px rgba(207,157,78,.38);
  transform:perspective(1150px) rotateY(-1deg) rotateZ(.08deg); backdrop-filter:none;
}
/* Old frame inner moulding and hanging detail. */
.d4c-final-identity:after{content:"";position:absolute;inset:5px;pointer-events:none;border:2px solid #d0a65c;box-shadow:inset 0 0 0 2px #3d220f,inset 0 0 8px rgba(0,0,0,.8)}
.d4c-final-identity:before{top:-15px;width:42px;height:13px;border:2px solid #55452f;border-bottom:0;opacity:.72}
.d4c-final-photo-wrap{height:148px;aspect-ratio:auto;margin:0 0 7px;border:5px double #b88743;box-shadow:inset 0 0 0 2px #24150b,0 2px 5px #0009;background:#15100c}
.d4c-final-identity small{font-size:8px;line-height:1.1;letter-spacing:1.05px;margin-top:5px}
.d4c-final-identity h2{font-size:20px;line-height:1;margin:4px 0 6px}
.d4c-final-identity dl{padding:6px 7px}
.d4c-final-identity dl div{grid-template-columns:82px 1fr;gap:6px;padding-top:4px;margin-top:3px}
.d4c-final-identity dt{font-size:7.5px;letter-spacing:.7px}.d4c-final-identity dd{font-size:10px;line-height:1.1}
.d4c-final-profile-x{font-size:145px}

/* Keep the successful right-wall perspective but make it read as one installed assembly,
   not two competing framed cards. */
.d4c-final-mast{
  right:.7%; top:37%; width:294px;
  border:1px solid rgba(181,139,82,.68); border-bottom-color:rgba(181,139,82,.36);
  box-shadow:-9px 11px 24px #0007; transform-origin:right center;
  transform:perspective(820px) rotateY(-16deg) rotateZ(-.45deg) skewY(-.25deg);
}
.d4c-final-notice{
  right:.9%; top:54.2%; width:294px;
  border:1px solid rgba(181,139,82,.68); box-shadow:-9px 11px 24px #0007;
  transform-origin:right center; transform:perspective(820px) rotateY(-16deg) rotateZ(-.45deg) skewY(-.25deg);
}
/* Remove the visual double-frame effect from nested right-panel controls. */
.d4c-final-mast .d4c-final-actions{border:0;outline:0;box-shadow:none;background:transparent}

@media(max-width:1200px){
 .d4c-final-identity{right:29%;top:2.8%;width:250px}.d4c-final-photo-wrap{height:128px}
 .d4c-final-mast{right:.5%;top:36.5%;width:280px}.d4c-final-notice{right:.7%;top:53.5%;width:280px}
}
@media(max-width:820px){
 .d4c-final-identity{left:auto;right:4%;top:6%;width:185px;transform:none;border-width:9px}.d4c-final-photo-wrap{height:105px}
 .d4c-final-mast{position:relative;right:auto;top:auto;width:min(315px,92vw);transform:none}
 .d4c-final-notice{left:auto;right:0;top:420px;width:min(290px,78vw);transform:none}
}


/* v0.4.25.10 — ORNATE WALL PORTRAIT + FINAL WALK STEP PACE
   Presentation-only refinement from staging evidence and supplied old-frame reference.
   No routing, custody, case, ceremony, farewell, video or Final Chamber state changes. */
.d4c-final-identity{
  right:27.5%; top:2.8%; width:286px;
  padding:36px 31px 31px;
  border:0!important; outline:0!important;
  background:
    url('assets/images/hmp-d4c-final-portrait-frame.svg') center/100% 100% no-repeat,
    linear-gradient(180deg,#1b120d,#0f0a07) center/76% 76% no-repeat;
  box-shadow:none!important;
  transform:perspective(1150px) rotateY(-1deg) rotateZ(.08deg);
}
.d4c-final-identity:before,.d4c-final-identity:after{content:none!important;display:none!important}
.d4c-final-photo-wrap{height:132px;margin:0 0 6px;border:3px solid #8b632e;outline:1px solid #d2ad65;box-shadow:inset 0 0 0 2px #211208,0 2px 5px #0009;background:#15100c}
.d4c-final-identity small{font-size:8px;line-height:1.08;letter-spacing:1px;margin-top:4px}
.d4c-final-identity h2{font-size:19px;line-height:1;margin:3px 0 5px}
.d4c-final-identity dl{padding:5px 6px;margin-bottom:0}
.d4c-final-identity dl div{grid-template-columns:78px 1fr;gap:6px;padding-top:3px;margin-top:3px}
.d4c-final-identity dt{font-size:7.3px}.d4c-final-identity dd{font-size:9.8px}
.d4c-final-profile-x{font-size:132px}
@media(max-width:1200px){.d4c-final-identity{right:26%;top:2.8%;width:250px;padding:32px 27px 28px}.d4c-final-photo-wrap{height:116px}}
@media(max-width:820px){.d4c-final-identity{left:auto;right:4%;top:6%;width:185px;padding:25px 20px 22px;transform:none}.d4c-final-photo-wrap{height:96px}}

/* v0.4.25.11 — ORNATE FRAME APERTURE CONTAINMENT
   Presentation-only: keep v0.4.25.10 wall position/frame/footstep pace; constrain all identity content inside the ornate frame opening. */
.d4c-final-identity{
  height:300px;
  padding:43px 39px 42px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  overflow:hidden;
}
.d4c-final-photo-wrap{height:100px;min-height:100px;margin:0 0 4px;border-width:2px;outline:1px solid #d2ad65}
.d4c-final-identity small{font-size:6.2px;line-height:1;letter-spacing:.72px;margin:2px 0 0;text-align:center}
.d4c-final-identity h2{font-size:15px;line-height:.95;margin:2px 0 4px;text-align:center}
.d4c-final-identity dl{padding:3px 5px;margin:0;min-height:0}
.d4c-final-identity dl div{grid-template-columns:62px 1fr;gap:4px;padding-top:2px;margin-top:2px}
.d4c-final-identity dt{font-size:5.8px;line-height:1.05;letter-spacing:.45px}
.d4c-final-identity dd{font-size:7.8px;line-height:1.05}
.d4c-final-profile-x{font-size:105px}
@media(max-width:1200px){.d4c-final-identity{height:270px;padding:39px 34px 37px}.d4c-final-photo-wrap{height:88px;min-height:88px}}
@media(max-width:820px){.d4c-final-identity{height:235px;padding:34px 28px 32px}.d4c-final-photo-wrap{height:76px;min-height:76px}}


/* v0.4.25.12 — TALLER ORNATE FRAME + RIGHT PANEL SEPARATION
   Screenshot-led presentation-only correction. Accepted Final Walk, footstep pace,
   farewell sequence, chamber routing/state and ceremony remain untouched. */
@media(min-width:821px){
  /* Give the ornate portrait a genuinely taller physical aperture. The declared
     height now includes its padding, so all member information remains inside
     the decorative moulding instead of riding over the lower frame. */
  .d4c-final-identity{
    height:350px!important;
    box-sizing:border-box!important;
    padding:44px 38px 46px!important;
    overflow:hidden!important;
  }
  .d4c-final-photo-wrap{
    height:112px!important;
    min-height:112px!important;
    margin:0 0 5px!important;
  }
  .d4c-final-identity small{font-size:6.5px!important;line-height:1!important;margin:2px 0 0!important}
  .d4c-final-identity h2{font-size:16px!important;line-height:1!important;margin:2px 0 4px!important}
  .d4c-final-identity dl{padding:3px 5px 0!important;margin:0!important}
  .d4c-final-identity dl div{grid-template-columns:64px 1fr!important;gap:5px!important;padding-top:2px!important;margin-top:2px!important}
  .d4c-final-identity dt{font-size:6px!important;line-height:1.05!important}
  .d4c-final-identity dd{font-size:8px!important;line-height:1.05!important}
  .d4c-final-profile-x{font-size:112px!important}

  /* The termination notice and chamber mast are two separate physical wall
     elements. Keep their accepted inward perspective, but stop them occupying
     the same vertical space. */
  .d4c-final-notice{
    top:36.5%!important;
    right:.9%!important;
    width:270px!important;
    box-sizing:border-box!important;
    padding:10px 13px!important;
    margin:0!important;
  }
  .d4c-final-notice h2{font-size:17px!important;line-height:1.05!important;margin:0!important}
  .d4c-final-notice strong{font-size:10px!important;line-height:1.05!important;margin-top:5px!important}
  .d4c-final-notice p{font-size:9.5px!important;line-height:1.25!important;margin:5px 0 0!important}
  .d4c-final-mast{
    top:51%!important;
    right:.7%!important;
    width:294px!important;
  }
}
@media(min-width:821px) and (max-width:1200px){
  .d4c-final-identity{height:320px!important;padding:40px 34px 42px!important}
  .d4c-final-photo-wrap{height:100px!important;min-height:100px!important}
  .d4c-final-notice{top:36%!important;width:258px!important}
  .d4c-final-mast{top:51%!important;width:280px!important}
}


/* v0.4.25.13 — FINAL PORTRAIT READABILITY + SINGLE RIGHT PANEL
   Final screenshot-led presentation correction only. Accepted Final Walk video,
   footstep pace, farewell sequence, chamber state/ceremony/routing remain frozen. */
@media(min-width:821px){
  /* Remove the redundant termination card completely. The chamber mast is now
     the single right-wall information installation. */
  .d4c-final-notice{display:none!important}
  .d4c-final-mast{
    top:36.5%!important;
    right:.7%!important;
    width:294px!important;
  }

  /* Use the ornate frame as one physical portrait aperture. A square photograph
     sits above larger, readable identity information, all inside the moulding. */
  .d4c-final-identity{
    right:27.5%!important;
    top:2.8%!important;
    width:286px!important;
    height:350px!important;
    padding:43px 39px 42px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    overflow:hidden!important;
  }
  .d4c-final-photo-wrap{
    width:116px!important;
    height:116px!important;
    min-height:116px!important;
    aspect-ratio:1/1!important;
    align-self:center!important;
    margin:0 auto 6px!important;
    overflow:hidden!important;
    border:2px solid #8b632e!important;
    outline:1px solid #d2ad65!important;
  }
  .d4c-final-avatar,
  .d4c-final-photo-wrap img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
  }
  .d4c-final-identity small{
    font-size:8px!important;
    line-height:1.05!important;
    letter-spacing:.8px!important;
    margin:2px 0 1px!important;
    text-align:center!important;
  }
  .d4c-final-identity h2{
    font-size:20px!important;
    line-height:1!important;
    margin:2px 0 6px!important;
    text-align:center!important;
  }
  .d4c-final-identity dl{
    width:100%!important;
    padding:4px 5px 0!important;
    margin:0!important;
  }
  .d4c-final-identity dl div{
    grid-template-columns:82px minmax(0,1fr)!important;
    gap:6px!important;
    padding-top:4px!important;
    margin-top:3px!important;
  }
  .d4c-final-identity dt{
    font-size:7.5px!important;
    line-height:1.08!important;
    letter-spacing:.5px!important;
  }
  .d4c-final-identity dd{
    font-size:10.5px!important;
    line-height:1.08!important;
    overflow-wrap:anywhere!important;
  }
  .d4c-final-profile-x{font-size:116px!important}
}
@media(min-width:821px) and (max-width:1200px){
  .d4c-final-identity{right:26%!important;width:250px!important;height:320px!important;padding:39px 34px 38px!important}
  .d4c-final-photo-wrap{width:100px!important;height:100px!important;min-height:100px!important}
  .d4c-final-identity h2{font-size:18px!important}
  .d4c-final-identity dt{font-size:7px!important}.d4c-final-identity dd{font-size:9.5px!important}
  .d4c-final-mast{top:36%!important;width:280px!important}
}
@media(max-width:820px){
  .d4c-final-notice{display:none!important}
}

/* v0.4.25.14 — FINAL PORTRAIT PHYSICAL SCALE REPAIR
   Screenshot-verified scope: enlarge only the ornate member portrait installation
   and its internal readable composition. Right Final Chamber panel and all
   accepted cinematic/functional behaviour remain unchanged. */
@media(min-width:1201px){
  .d4c-final-identity{
    right:24.5%!important;
    top:1.2%!important;
    width:386px!important;
    height:472px!important;
    padding:58px 52px 56px!important;
  }
  .d4c-final-photo-wrap{
    width:158px!important;
    height:158px!important;
    min-height:158px!important;
    margin:0 auto 9px!important;
  }
  .d4c-final-identity small{
    font-size:10px!important;
    line-height:1.1!important;
    letter-spacing:1px!important;
    margin:3px 0 2px!important;
  }
  .d4c-final-identity h2{
    font-size:27px!important;
    line-height:1!important;
    margin:3px 0 9px!important;
  }
  .d4c-final-identity dl{
    padding:6px 7px 0!important;
  }
  .d4c-final-identity dl div{
    grid-template-columns:108px minmax(0,1fr)!important;
    gap:8px!important;
    padding-top:6px!important;
    margin-top:4px!important;
  }
  .d4c-final-identity dt{
    font-size:10px!important;
    line-height:1.1!important;
    letter-spacing:.55px!important;
  }
  .d4c-final-identity dd{
    font-size:14px!important;
    line-height:1.1!important;
  }
  .d4c-final-profile-x{font-size:158px!important}
}


/* === v0.4.25.16 — Entry moving corridor transition ===
   Presentation only: Gates -> Yard -> Corridor -> existing Cell Block. */
.d4c-entry-moving-corridor{position:fixed;z-index:100030;inset:0;overflow:hidden;background:#050403;color:#eee4d4;opacity:1;transition:opacity .8s ease}
.d4c-entry-moving-corridor.is-cleared{opacity:0;pointer-events:none}
.d4c-entry-moving-corridor video{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;filter:brightness(.58) contrast(1.08) saturate(.72);transform:scale(1.015)}
.d4c-entry-moving-corridor__shade{position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(4,3,2,.12),rgba(4,3,2,.44)),radial-gradient(ellipse at 50% 45%,transparent 24%,rgba(0,0,0,.46) 92%);pointer-events:none}
.d4c-entry-moving-corridor__sign{position:absolute;z-index:2;left:50%;bottom:7%;transform:translateX(-50%);min-width:min(620px,84vw);padding:13px 22px;text-align:center;background:rgba(18,14,11,.88);border:3px ridge #6f5b43;box-shadow:0 10px 28px #000b}
.d4c-entry-moving-corridor__sign b,.d4c-entry-moving-corridor__sign span{display:block}.d4c-entry-moving-corridor__sign b{font:900 clamp(19px,3vw,31px) var(--d4c-cargo);letter-spacing:3px}.d4c-entry-moving-corridor__sign span{margin-top:4px;font-weight:900;letter-spacing:2px;color:#cbb58e}
@media(prefers-reduced-motion:reduce){.d4c-entry-moving-corridor video{display:none}.d4c-entry-moving-corridor{background:#17120f url('assets/images/hmp-d4c-corridor-approved.png') center/cover no-repeat}}


/* v0.4.25.17 — SECURE CORRIDOR DWELL/AUDIO + AUTHORISED EXIT REUSE
   Presentation-only. Entry corridor held 12s with audible looping approved stone footsteps.
   Authorised exit presentation is Cell Block -> moving Secure Corridor -> Yard -> existing Gate clearance. */
.d4c-exit-corridor{background:#050403!important;overflow:hidden}
.d4c-exit-corridor video{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(.58) contrast(1.08) saturate(.72);transform:scale(1.015)}
.d4c-exit-corridor:after{background:linear-gradient(180deg,rgba(4,3,2,.12),rgba(4,3,2,.72))!important}
.d4c-exit-corridor b,.d4c-exit-corridor span{z-index:3}
\n\n/* === v0.4.25.18 — Gate pass clarity + corridor handoff/brightness repair ===
   Presentation only. No Jail Core, custody, route or permission ownership changes. */
/* Visitor pass is live HTML, not a raster image. Remove fractional rotation/translation that softens glyphs,
   and give the small live fields enough native pixels to remain legible at the accepted gate-panel size. */
.d4c-hmp-pass{transform:translateY(-8px) rotate(0deg)!important;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision;backface-visibility:hidden}
.d4c-hmp-pass.is-issued{transform:translateY(0) rotate(0deg)!important}
.d4c-hmp-pass__top{font-size:11px!important;letter-spacing:1.25px!important}
.d4c-hmp-pass__name{font-size:22px!important;letter-spacing:.8px!important;line-height:1.05!important}
.d4c-hmp-pass__meta{font-size:9px!important;font-weight:900!important;letter-spacing:.15px!important;line-height:1.25!important}
.d4c-hmp-pass__stamp{font-size:9.5px!important;transform:rotate(-3deg)!important}
/* Accepted corridor composition, moderately lifted so masonry reads without losing Prison World depth. */
.d4c-entry-moving-corridor video,.d4c-exit-corridor video{filter:brightness(.74) contrast(1.05) saturate(.76)!important}
.d4c-entry-moving-corridor__shade{background:linear-gradient(180deg,rgba(4,3,2,.06),rgba(4,3,2,.30)),radial-gradient(ellipse at 50% 45%,transparent 34%,rgba(0,0,0,.30) 94%)!important}


/* === v0.4.25.19 — STAGE ONE MOBILE COMPOSITION OWNER ===
   Responsive presentation only. Desktop > 767px and all Jail Core / custody /
   visitor-state / Better Messages runtime ownership remain unchanged.
   HQ001 mobile discipline is the reference: scene first, one vertical flow,
   full usable width, reduced nested framing and no desktop overlays crushing content. */
@media(max-width:767px){
  /* Gate first, admission controls below it in normal flow. */
  .d4c-hmp-gate{overflow-x:hidden!important;overflow-y:auto!important;background:#171714!important}
  .d4c-hmp-gate__scene{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;aspect-ratio:3/2!important;min-height:0!important;flex:none!important}
  .d4c-hmp-clearance,.d4c-hmp-clearance.d4c-hmp-admission{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;top:auto!important;width:calc(100% - 20px)!important;max-width:none!important;max-height:none!important;overflow:visible!important;margin:10px auto 18px!important;transform:none!important;padding:12px!important;border-width:3px!important}
  .d4c-hmp-clearance__head strong{font-size:28px!important}
  .d4c-hmp-gate.is-open .d4c-hmp-clearance{max-height:0!important;margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important;border-width:0!important;opacity:0!important;overflow:hidden!important;pointer-events:none!important;transition:max-height .35s ease,opacity .22s ease,margin .35s ease,padding .35s ease,border-width .35s ease}

  /* One coherent phone workspace. */
  .d4c-prison-shell{padding:8px!important;overflow-x:hidden!important}
  .d4c-prison-inner,.d4c-prison-status-row,.d4c-prisoner-control,.d4c-prison-cellblock,.d4c-prison-operations,.d4c-prison-facility,.d4c-prison-page-content,.d4c-prison-media-screen,.d4c-prison-life-bell{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
  .d4c-prison-status-row,.d4c-prisoner-control,.d4c-prison-operations{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
  .d4c-prison-cellblock{margin:0 0 14px!important;padding:10px!important;border-width:4px!important;border-radius:18px 18px 2px 2px/7% 7% 2px 2px!important;min-height:0!important}
  .d4c-prisoner-control{padding:8px!important;border-width:3px!important;margin:0 0 14px!important}
  .d4c-prisoner-control .d4c-prison-facility,.d4c-prison-comms,.d4c-prison-media{padding:8px!important;border-width:3px!important}
  .d4c-prison-operations{margin-top:12px!important;padding:8px!important;border-width:3px!important;gap:10px!important;background-position:center!important}
  .d4c-prison-comms .d4c-prison-page-content{padding:7px!important;border-width:2px!important;box-shadow:inset 0 0 18px #000!important;overflow:hidden!important}
  .d4c-prison-comms .bp-messages-wrap,.d4c-prison-comms .bpbm-main-wrap{width:100%!important;max-width:100%!important;min-width:0!important;border-width:1px!important;box-shadow:none!important}
  .d4c-prison-comms .bp-messages-wrap *,.d4c-prison-comms .bpbm-main-wrap *{min-width:0!important;max-width:100%}
  .d4c-prison-media-screen{padding:8px!important;border-width:2px!important;min-height:260px!important}
  .d4c-prison-life-bell{padding:8px!important;border-width:2px!important;margin-bottom:10px!important}
  .d4c-facility-sign{margin:0 0 8px!important;padding:9px!important;border-width:2px!important}

  /* Final Chamber: preserve a real scene before supporting information. */
  .d4c-final-chamber{padding:0 8px 36px!important;background-attachment:scroll!important;background-position:center top!important;overflow-x:hidden!important}
  .d4c-final-inner{width:100%!important;max-width:100%!important;min-width:0!important;min-height:0!important}
  .d4c-final-stage{min-height:66vh!important;height:auto!important;padding-top:0!important;overflow:visible!important}
  .d4c-final-mast{position:relative!important;left:auto!important;right:auto!important;top:auto!important;width:100%!important;max-width:100%!important;margin:66vh 0 8px!important;grid-template-columns:52px minmax(0,1fr)!important;background:rgba(31,20,13,.70)!important;box-shadow:0 6px 18px #0007!important}
  .d4c-final-notice{display:none!important}
  .d4c-final-identity{position:relative!important;left:auto!important;right:auto!important;top:auto!important;width:min(230px,72vw)!important;height:auto!important;margin:8px auto 12px!important;transform:none!important;padding:30px 24px 28px!important}
  .d4c-final-photo-wrap{width:92px!important;height:92px!important;min-height:92px!important;margin:0 auto 6px!important}
  .d4c-final-panel{position:relative!important;width:100%!important;max-width:100%!important;margin:10px 0 0!important;padding:12px!important;background:rgba(26,16,10,.78)!important}
}

/* === v0.4.25.20 — MOBILE ROOM-FIRST + COMMUNICATION WIDTH REPAIR ===
   Presentation only. No custody, visit, alarm, sentence, release or Better Messages runtime changes. */
.d4c-mobile-room-hero{display:none}
@media(max-width:767px){
  /* Every immersive Prison World phone view begins with a genuine environmental scene. */
  .d4c-mobile-room-hero{display:block!important;position:relative!important;z-index:3!important;width:calc(100% + 16px)!important;margin:0 -8px 10px!important;min-height:46vh!important;max-height:520px!important;background-repeat:no-repeat!important;background-size:cover!important;background-position:center!important;border-bottom:4px ridge #6b553a!important;box-shadow:0 12px 24px #0009!important}
  .d4c-mobile-room-hero--holding{background-image:linear-gradient(rgba(5,4,3,.06),rgba(5,4,3,.20)),url('assets/images/hmp-d4c-holding-wing-approved-reference.jpg')!important;background-position:center 44%!important}
  .d4c-mobile-room-hero--cellblock{background-image:linear-gradient(rgba(5,4,3,.08),rgba(5,4,3,.24)),url('assets/images/hmp-d4c-gate-approved.png')!important;background-position:center 38%!important}
  .d4c-yard-shell{padding-top:0!important}
  .d4c-yard-inner{width:100%!important;max-width:100%!important}

  /* HQ001-width principle: one Prison frame, then the live messaging surface. */
  .d4c-prisoner-control{padding-left:2px!important;padding-right:2px!important;border-left-width:2px!important;border-right-width:2px!important}
  .d4c-prison-comms{padding-left:2px!important;padding-right:2px!important;border-left-width:2px!important;border-right-width:2px!important}
  .d4c-prison-comms .d4c-prison-page-content{padding:2px!important;border-left-width:1px!important;border-right-width:1px!important;box-shadow:none!important}
  .d4c-prison-comms .widget,.d4c-prison-comms .widget-content,.d4c-prison-comms .textwidget{margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important;max-width:100%!important;width:100%!important}
  .d4c-prison-comms .bp-messages-wrap,.d4c-prison-comms .bpbm-main-wrap,.d4c-prison-comms .better-messages{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}

  /* Holding Pen private Governor Bell gets the same usable-width treatment. */
  .d4c-yard-case{padding:8px!important;border-width:3px!important;gap:10px!important}
  .d4c-yard-bell{padding:3px!important;border-width:2px!important;width:100%!important;max-width:100%!important;min-width:0!important}
  .d4c-yard-bell .bp-messages-wrap,.d4c-yard-bell .bpbm-main-wrap,.d4c-yard-bell .better-messages{width:100%!important;max-width:none!important;margin:0!important}

  /* Occupied cells retain prominence; vacant doors no longer consume a whole phone screen. */
  .d4c-cellblock-live .d4c-cell-door--empty{height:250px!important;min-height:250px!important;margin:24px auto!important}
  .d4c-cellblock-live .d4c-cell-door--empty:after{background-position:center!important}

  /* Dramatic transition retained, but the complete word must fit the phone. */
  .d4c-impounded-overlay{padding:20px!important;overflow:hidden!important}
  .d4c-impounded-overlay strong{font-size:clamp(42px,14vw,76px)!important;line-height:.95!important;letter-spacing:2px!important;max-width:100%!important;overflow-wrap:normal!important;white-space:nowrap!important}
  .d4c-impounded-overlay span{font-size:clamp(15px,4.4vw,22px)!important;line-height:1.2!important;letter-spacing:1px!important;padding:0 6px!important}
}

/* === v0.4.25.21 — FINAL MOBILE SCENE-FIRST / JAIL TALK WIDTH CALIBRATION ===
   Presentation-only follow-on to v0.4.25.20. No custody, sentence, appeal,
   visitor, release, alarm or Better Messages runtime ownership changes. */
@media(max-width:767px){
  /* Use the existing physical Prison World photography as the opening scene,
     not a gate/dashboard substitute. */
  .d4c-mobile-room-hero--cellblock{
    min-height:52vh!important;
    background-image:linear-gradient(rgba(5,4,3,.03),rgba(5,4,3,.18)),url('assets/images/hmp-d4c-corridor-photo.jpg')!important;
    background-position:center 48%!important;
  }
  .d4c-mobile-room-hero--deathrow{
    min-height:52vh!important;
    background-image:linear-gradient(rgba(35,0,0,.12),rgba(8,3,2,.30)),url('assets/images/hmp-d4c-corridor-photo.jpg')!important;
    background-position:center 44%!important;
    border-bottom-color:#74302b!important;
  }

  /* Final HQ001-style width calibration: retain one Prison World edge but
     stop decorative host layers consuming the phone workspace. */
  .d4c-prison-operations{padding-left:2px!important;padding-right:2px!important}
  .d4c-prison-comms{
    width:calc(100% + 4px)!important;
    max-width:calc(100% + 4px)!important;
    margin-left:-2px!important;
    margin-right:-2px!important;
    padding:2px!important;
  }
  .d4c-prison-comms .d4c-facility-sign{margin:0 0 6px!important}
  .d4c-prison-comms .d4c-prison-page-content,
  .d4c-prison-comms .widget,
  .d4c-prison-comms .widget-content,
  .d4c-prison-comms .textwidget{
    width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;border-left-width:0!important;border-right-width:0!important;
  }
  .d4c-prison-comms .bp-messages-wrap,
  .d4c-prison-comms .bpbm-main-wrap,
  .d4c-prison-comms .better-messages{
    width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding-left:0!important;padding-right:0!important;
  }
}


/* v0.4.25.23 — occupied-cell identity plate. Source text remains Jail Core-owned. */
.d4c-cellblock-live .d4c-cell-identity-plate{position:absolute;z-index:11;top:236px;left:50%;transform:translateX(-50%);width:min(82%,250px);padding:7px 9px;background:rgba(15,12,9,.92);border:2px solid #8a6b42;color:#ead8b7;text-align:center;box-shadow:0 4px 12px #000b;font-family:var(--d4c-cargo,Arial),Arial,sans-serif;text-transform:uppercase;letter-spacing:1px;line-height:1.2}
.d4c-cellblock-live .d4c-cell-identity-plate strong{display:block!important;font-size:14px!important;line-height:1.15!important;color:#f3e3c3!important;overflow-wrap:anywhere}
.d4c-cellblock-live .d4c-cell-identity-plate span{display:block;margin-top:3px;font-size:10px;font-weight:900;color:#d4b678}
@media(max-width:600px){.d4c-cellblock-live .d4c-cell-identity-plate{top:226px;width:min(86%,235px);padding:6px 8px}.d4c-cellblock-live .d4c-cell-identity-plate strong{font-size:13px!important}.d4c-cellblock-live .d4c-cell-identity-plate span{font-size:9px}}

/* v0.4.25.23 — Prison Gates account controls. Functional navigation only. */
.d4c-hmp-account-link{position:relative;display:block;box-sizing:border-box;width:100%;margin-top:9px;padding:11px 13px;text-align:center;text-decoration:none!important;background:linear-gradient(#6e281f,#3d120e);color:#f1e8d8!important;border:3px outset #8d6d51;font:900 12px Arial,sans-serif;letter-spacing:1.4px}
.d4c-hmp-account-link:hover,.d4c-hmp-account-link:focus{background:linear-gradient(#842a25,#531510);color:#fff!important}
.d4c-hmp-account-link--logout{background:linear-gradient(#49443a,#292720);font-size:10px}
@media (max-width:600px){.d4c-hmp-account-link{padding:10px!important;font-size:11px!important}}


/* === v0.4.25.24 — HQ001 MOBILE STACKING STANDARD ===
   Presentation only. On phones Prison World follows the accepted HQ001
   composition: environment first, one vertical document flow, then full-width
   functional surfaces. Desktop remains unchanged. No custody/lifecycle owner changes. */
@media(max-width:767px){
  html,body.d4c-prison-world-theme{width:100%!important;max-width:100%!important;overflow-x:hidden!important}

  /* One phone canvas: remove desktop workspace gutters/nested frame width loss. */
  body.d4c-prison-world-theme .d4c-prison-shell,
  body.d4c-prison-world-theme .d4c-yard-shell{width:100%!important;max-width:100%!important;margin:0!important;padding-left:0!important;padding-right:0!important;overflow-x:hidden!important}
  body.d4c-prison-world-theme .d4c-prison-inner,
  body.d4c-prison-world-theme .d4c-yard-inner{width:100%!important;max-width:100%!important;margin:0!important;padding:0 6px!important;box-sizing:border-box!important}

  /* Scene is a separate first row, never a column competing with controls. */
  body.d4c-prison-world-theme .d4c-mobile-room-hero{width:calc(100% + 12px)!important;max-width:none!important;margin-left:-6px!important;margin-right:-6px!important;margin-bottom:10px!important;min-height:52vh!important}

  /* Every desktop multi-column owner becomes one normal-flow column. */
  body.d4c-prison-world-theme .d4c-prison-mast,
  body.d4c-prison-world-theme .d4c-yard-mast,
  body.d4c-prison-world-theme .d4c-prison-status-row,
  body.d4c-prison-world-theme .d4c-prisoner-control,
  body.d4c-prison-world-theme .d4c-prison-operations,
  body.d4c-prison-world-theme .d4c-yard-case,
  body.d4c-prison-world-theme .d4c-release-compact{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;max-width:100%!important;min-width:0!important;
    margin-left:0!important;margin-right:0!important;transform:none!important;gap:8px!important;
  }

  /* Death Row desktop offsets/rotations must not survive onto phone. */
  body.d4c-prison-world-theme .d4c-death-row-review-wing .d4c-prison-facility,
  body.d4c-prison-world-theme .d4c-death-row-review-wing .d4c-death-row-appeal-facility,
  body.d4c-prison-world-theme .d4c-death-row-review-wing .d4c-prison-facility.d4c-death-row-conditions,
  body.d4c-prison-world-theme .d4c-death-row-review-wing .d4c-death-row-release,
  body.d4c-prison-world-theme .d4c-death-row-review-wing .d4c-prison-operations{
    width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;transform:none!important;
  }
  body.d4c-prison-world-theme .d4c-death-row-process{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;overflow-x:auto!important}

  /* HQ001-style application aperture: one thin host edge, live app gets the width. */
  body.d4c-prison-world-theme .d4c-prison-operations{padding:0!important;border-left-width:0!important;border-right-width:0!important;background:none!important;box-shadow:none!important}
  body.d4c-prison-world-theme .d4c-prison-comms,
  body.d4c-prison-world-theme .d4c-prison-media{width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:4px!important;border-left-width:1px!important;border-right-width:1px!important;box-sizing:border-box!important}
  body.d4c-prison-world-theme .d4c-prison-comms .d4c-prison-page-content{width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;overflow:hidden!important}
  body.d4c-prison-world-theme .d4c-prison-comms .d4c-prison-widget,
  body.d4c-prison-world-theme .d4c-prison-comms .widget,
  body.d4c-prison-world-theme .d4c-prison-comms .widget-content,
  body.d4c-prison-world-theme .d4c-prison-comms .textwidget{width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:0!important;border:0!important}
  body.d4c-prison-world-theme .d4c-prison-comms .bp-messages-wrap,
  body.d4c-prison-world-theme .d4c-prison-comms .bpbm-main-wrap,
  body.d4c-prison-world-theme .d4c-prison-comms .better-messages,
  body.d4c-prison-world-theme .d4c-prison-comms .bm-content{width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding-left:0!important;padding-right:0!important;box-sizing:border-box!important}

  /* Holding Wing / Calling Bell use the same full-width aperture. */
  body.d4c-prison-world-theme .d4c-yard-case,
  body.d4c-prison-world-theme .d4c-yard-bell{width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important}
  body.d4c-prison-world-theme .d4c-yard-bell{padding:2px!important;border-left-width:1px!important;border-right-width:1px!important}
  body.d4c-prison-world-theme .d4c-yard-bell .bp-messages-wrap,
  body.d4c-prison-world-theme .d4c-yard-bell .bpbm-main-wrap,
  body.d4c-prison-world-theme .d4c-yard-bell .better-messages{width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important}

  /* Functional headings wrap instead of creating a hidden second column. */
  body.d4c-prison-world-theme .d4c-facility-sign{display:block!important;width:100%!important;max-width:100%!important;margin:0 0 6px!important;padding:9px 10px!important}
  body.d4c-prison-world-theme .d4c-facility-sign span{display:block!important;margin-top:4px!important;white-space:normal!important}

  /* Keep ordinary Better Messages floating launcher out of controlled prison routes. */
  body.d4c-prison-world-theme .bp-messages-mobile-tap,
  body.d4c-prison-world-theme .bp-messages-mobile-widget,
  body.d4c-prison-world-theme .bp-messages-mobile-bottom,
  body.d4c-prison-world-theme .bp-messages-bottom-bar,
  body.d4c-prison-world-theme .bpbm-mobile-tab-bar,
  body.d4c-prison-world-theme #bp-better-messages-mini,
  body.d4c-prison-world-theme .bp-better-messages-mini{display:none!important}
}


/* === v0.4.25.25 — STAGE ONE SHARED MOBILE APPLICATION ARCHITECTURE ===
   Presentation only. Extends the accepted HQ001 mobile composition discipline
   to the newer Prison World-owned application pages. Desktop >= 768px remains
   untouched. No Jail Core, Death Row Core, Parole Board case/hearing, release,
   visit, permissions or Better Messages data/runtime ownership is changed.

   Mobile contract:
   1. immersive/environmental scene first;
   2. desktop absolute/overlaid workspaces return to normal document flow;
   3. all functional surfaces use one full-width column;
   4. live application surfaces receive the usable width;
   5. ordinary Better Messages floating launchers remain suppressed. */
@media(max-width:767px){
  /* ------------------------------------------------------------------
     Parole Board / Public Hearing — pre-hearing room.
     The plugin keeps authoritative hearing behaviour; Prison World owns
     the phone composition through these presentation-only overrides. */
  body.d4c-pb-hearing-room-page,
  body.d4c-pb-public-gallery-page{
    width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;
    overflow-x:hidden!important;background:#120d09!important;
  }
  body.d4c-pb-hearing-room-page .d4c-pb-photo-room{
    width:100%!important;max-width:100%!important;min-height:0!important;height:auto!important;
    overflow:visible!important;padding:52vh 8px 18px!important;
    display:flex!important;flex-direction:column!important;gap:8px!important;
    box-sizing:border-box!important;background:#120d09!important;
  }
  body.d4c-pb-hearing-room-page .d4c-pb-photo-room__scene{
    position:absolute!important;left:0!important;right:0!important;top:0!important;bottom:auto!important;
    width:100%!important;height:52vh!important;min-height:320px!important;max-height:560px!important;
    transform:none!important;background-position:center top!important;background-size:cover!important;
  }
  body.d4c-pb-hearing-room-page .d4c-pb-photo-room__veil{
    position:absolute!important;left:0!important;right:0!important;top:0!important;bottom:auto!important;
    width:100%!important;height:52vh!important;min-height:320px!important;max-height:560px!important;
    pointer-events:none!important;
  }
  body.d4c-pb-hearing-room-page .d4c-pb-photo-room__exit,
  body.d4c-pb-hearing-room-page .d4c-pb-sound-toggle,
  body.d4c-pb-hearing-room-page .d4c-pb-opening-test{
    position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
    width:100%!important;max-width:100%!important;margin:0!important;transform:none!important;box-sizing:border-box!important;
  }
  body.d4c-pb-hearing-room-page .d4c-pb-photo-room__exit{order:1!important;text-align:center!important}
  body.d4c-pb-hearing-room-page .d4c-pb-photo-room__identity,
  body.d4c-pb-hearing-room-page .d4c-pb-photo-room__bench,
  body.d4c-pb-hearing-room-page .d4c-pb-photo-room__monitor,
  body.d4c-pb-hearing-room-page .d4c-pb-photo-room__status,
  body.d4c-pb-hearing-room-page .d4c-pb-photo-room__controls{
    position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
    width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;
    margin:0!important;transform:none!important;box-sizing:border-box!important;
  }
  body.d4c-pb-hearing-room-page .d4c-pb-photo-room__identity{order:2!important;text-align:left!important;padding:12px 14px!important}
  body.d4c-pb-hearing-room-page .d4c-pb-photo-room__bench{
    order:3!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important;
    padding:0!important;align-items:stretch!important;
  }
  body.d4c-pb-hearing-room-page .d4c-pb-photo-seat{
    width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important;min-height:76px!important;
    margin:0!important;padding:10px 12px!important;display:flex!important;align-items:center!important;gap:10px!important;
    transform:none!important;box-sizing:border-box!important;
  }
  body.d4c-pb-hearing-room-page .d4c-pb-photo-seat img,
  body.d4c-pb-hearing-room-page .d4c-pb-board-avatar{width:56px!important;height:56px!important;flex:0 0 56px!important}
  body.d4c-pb-hearing-room-page .d4c-pb-seat-copy{min-width:0!important;flex:1 1 auto!important}
  body.d4c-pb-hearing-room-page .d4c-pb-chair-speech{width:min(280px,86vw)!important}
  body.d4c-pb-hearing-room-page .d4c-pb-governor-chair{
    position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
    width:100%!important;max-width:100%!important;margin:0!important;transform:none!important;box-sizing:border-box!important;
  }
  body.d4c-pb-hearing-room-page .d4c-pb-photo-room__monitor{
    order:4!important;padding:12px!important;border:1px solid rgba(211,169,101,.72)!important;
  }
  body.d4c-pb-hearing-room-page .d4c-pb-monitor-copy span{font-size:10px!important}
  body.d4c-pb-hearing-room-page .d4c-pb-monitor-copy b{font-size:16px!important;margin:5px 0!important}
  body.d4c-pb-hearing-room-page .d4c-pb-monitor-copy small,
  body.d4c-pb-hearing-room-page .d4c-pb-monitor-copy em{font-size:10px!important;line-height:1.3!important}
  body.d4c-pb-hearing-room-page .d4c-pb-photo-room__status{
    order:5!important;display:grid!important;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)!important;
  }
  body.d4c-pb-hearing-room-page .d4c-pb-photo-room__status span,
  body.d4c-pb-hearing-room-page .d4c-pb-photo-room__status b{
    min-width:0!important;padding:9px 10px!important;white-space:normal!important;overflow-wrap:anywhere!important;
  }
  body.d4c-pb-hearing-room-page .d4c-pb-photo-room__controls{
    order:6!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important;
  }
  body.d4c-pb-hearing-room-page .d4c-pb-photo-card{width:100%!important;max-width:100%!important;min-width:0!important;min-height:0!important;margin:0!important}

  /* ------------------------------------------------------------------
     Parole Board — active hearing. Keep the chamber photograph as the
     first mobile scene, then subject, transcript and hearing controls. */
  body.d4c-pb-hearing-room-page .d4c-pb-session{
    width:100%!important;max-width:100%!important;min-height:0!important;height:auto!important;
    overflow:visible!important;padding:50vh 8px 18px!important;display:flex!important;flex-direction:column!important;
    gap:8px!important;box-sizing:border-box!important;background:#120d09!important;
  }
  body.d4c-pb-hearing-room-page .d4c-pb-session__scene,
  body.d4c-pb-hearing-room-page .d4c-pb-session__veil{
    position:absolute!important;left:0!important;right:0!important;top:0!important;bottom:auto!important;
    width:100%!important;height:50vh!important;min-height:310px!important;max-height:540px!important;
  }
  body.d4c-pb-hearing-room-page .d4c-pb-session__scene{background-position:center top!important}
  body.d4c-pb-hearing-room-page .d4c-pb-session__bar,
  body.d4c-pb-hearing-room-page .d4c-pb-session__case,
  body.d4c-pb-hearing-room-page .d4c-pb-session__chat,
  body.d4c-pb-hearing-room-page .d4c-pb-session__tools,
  body.d4c-pb-hearing-room-page .d4c-pb-session__close{
    position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
    width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;
    margin:0!important;transform:none!important;box-sizing:border-box!important;
  }
  body.d4c-pb-hearing-room-page .d4c-pb-session__bar{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:5px!important;padding:11px 12px!important;text-align:center!important;
  }
  body.d4c-pb-hearing-room-page .d4c-pb-session__bar span,
  body.d4c-pb-hearing-room-page .d4c-pb-session__bar strong,
  body.d4c-pb-hearing-room-page .d4c-pb-session__bar b{text-align:center!important;white-space:normal!important;overflow-wrap:anywhere!important}
  body.d4c-pb-hearing-room-page .d4c-pb-session__case{display:block!important;padding:12px!important}
  body.d4c-pb-hearing-room-page .d4c-pb-session__chat{padding:5px!important;min-height:520px!important}
  body.d4c-pb-hearing-room-page .d4c-pb-session__chat-title{height:auto!important;min-height:46px!important}
  body.d4c-pb-hearing-room-page .d4c-pb-session__chat-mount{height:410px!important;min-height:410px!important;max-height:410px!important;overflow:hidden!important}
  body.d4c-pb-hearing-room-page .d4c-pb-session__composer{height:auto!important;min-height:58px!important;grid-template-columns:minmax(0,1fr) 76px!important}
  body.d4c-pb-hearing-room-page .d4c-pb-session__tools{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:6px!important}
  body.d4c-pb-hearing-room-page .d4c-pb-session__tools a{width:100%!important;max-width:100%!important;box-sizing:border-box!important}
  body.d4c-pb-hearing-room-page .d4c-pb-session__close button{width:100%!important;box-sizing:border-box!important}

  /* Shared phone safety for both hearing states. */
  body.d4c-pb-hearing-room-page .bp-better-messages-mini,
  body.d4c-pb-hearing-room-page .bp-better-messages-mini-mobile-open-icon,
  body.d4c-pb-hearing-room-page .bm-mini-widgets-button,
  body.d4c-pb-hearing-room-page [class*="better-messages-mini"],
  body.d4c-pb-hearing-room-page [class*="bm-mini"]{display:none!important}
}

/* === v0.4.25.26 — FINAL CHAMBER MOBILE HIERARCHY ===
   Presentation only. Applies the accepted Stage One mobile composition rule:
   chamber environment first, member identity integrated into the scene,
   operational/status controls in normal flow beneath. Desktop unchanged. */
@media(max-width:767px){
  .d4c-final-chamber:not(.d4c-final-walk-pending){
    background-position:center top!important;
    background-size:auto 72vh!important;
    background-repeat:no-repeat!important;
    background-color:#17100b!important;
  }
  .d4c-final-inner{display:flex!important;flex-direction:column!important;min-height:0!important}
  .d4c-final-stage{order:1!important;position:relative!important;display:block!important;width:100%!important;min-height:72vh!important;height:72vh!important;margin:0!important;padding:0!important;overflow:visible!important;background:transparent!important}
  .d4c-final-identity{position:absolute!important;z-index:8!important;left:auto!important;right:4vw!important;top:7vh!important;width:min(190px,48vw)!important;margin:0!important;padding:10px!important;transform:none!important;background:rgba(31,20,13,.84)!important;box-shadow:0 8px 22px #0009!important}
  .d4c-final-photo-wrap{width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:1/1.08!important;margin:0!important}
  .d4c-final-identity small{font-size:7px!important}
  .d4c-final-identity h2{font-size:16px!important;margin:4px 0 5px!important}
  .d4c-final-identity dl{padding:5px!important}
  .d4c-final-identity dt{font-size:6px!important}
  .d4c-final-identity dd{font-size:8px!important}
  .d4c-final-mast{order:2!important;position:relative!important;inset:auto!important;width:100%!important;max-width:100%!important;margin:0 0 10px!important;transform:none!important;animation:none!important;grid-template-columns:52px minmax(0,1fr)!important;background:rgba(31,20,13,.94)!important;box-sizing:border-box!important}
  .d4c-final-notice{display:none!important}
  .d4c-final-panel{order:3!important;position:relative!important;width:100%!important;max-width:100%!important;margin:0!important;padding:12px!important;box-sizing:border-box!important;background:rgba(26,16,10,.94)!important}
}

/* === v0.4.25.27 — FINAL CHAMBER MOBILE ROOM-FIRST STACK ===
   Presentation only. Phone composition now matches the accepted Hearing Room rule:
   one complete bounded Final Chamber room image first, then identity/status and controls
   in normal vertical flow. Desktop and Final Chamber lifecycle remain unchanged. */
@media(max-width:767px){
  .d4c-final-chamber:not(.d4c-final-walk-pending){
    background:#17100b!important;
    padding:0 10px 36px!important;
  }
  .d4c-final-inner{display:flex!important;flex-direction:column!important;gap:12px!important;min-height:0!important}
  .d4c-final-stage{
    order:1!important;
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    background:none!important;
  }
  .d4c-final-stage:before{
    content:""!important;
    display:block!important;
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    aspect-ratio:2320/1536!important;
    flex:0 0 auto!important;
    background:#17100b url('assets/images/hmp-d4c-final-chamber-approved.jpg') center center/contain no-repeat!important;
    pointer-events:none!important;
  }
  .d4c-final-identity{
    position:relative!important;
    z-index:2!important;
    left:auto!important;right:auto!important;top:auto!important;
    width:100%!important;max-width:100%!important;
    margin:0!important;padding:14px!important;
    transform:none!important;
    box-sizing:border-box!important;
    background:rgba(31,20,13,.96)!important;
    box-shadow:0 8px 22px #0009!important;
  }
  .d4c-final-photo-wrap{width:min(230px,62vw)!important;margin:0 auto 10px!important;aspect-ratio:1/1.08!important}
  .d4c-final-identity small{font-size:9px!important}
  .d4c-final-identity h2{font-size:23px!important;margin:5px 0 8px!important;text-align:center!important}
  .d4c-final-identity dl{padding:8px!important}
  .d4c-final-identity dt{font-size:8px!important}
  .d4c-final-identity dd{font-size:11px!important}
  .d4c-final-mast{
    order:2!important;position:relative!important;inset:auto!important;
    width:100%!important;max-width:100%!important;margin:0!important;
    transform:none!important;animation:none!important;box-sizing:border-box!important;
    grid-template-columns:52px minmax(0,1fr)!important;background:rgba(31,20,13,.96)!important;
  }
  .d4c-final-notice{display:none!important}
  .d4c-final-panel{order:3!important;position:relative!important;width:100%!important;max-width:100%!important;margin:0!important;padding:14px!important;box-sizing:border-box!important;background:rgba(26,16,10,.96)!important}
}


/* === v0.4.25.28 — FINAL CHAMBER SIMULATION BLADE DROP ===
   Presentation-only. The blade animation is triggered only by the existing
   PREVIEW FINAL NOTICE simulation control. It does not mutate an account,
   Death Row case, custody, membership or Prison Record state. */
.d4c-final-blade{
  position:absolute;
  z-index:6;
  left:41.8%;
  top:4%;
  width:78px;
  height:92px;
  transform:translate(-50%,0);
  opacity:.96;
  pointer-events:none;
  filter:drop-shadow(0 8px 7px rgba(0,0,0,.72));
  transition:none;
}
.d4c-final-blade:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(105deg,#5e5b55 0%,#e6e2d6 27%,#8d8a82 50%,#f4f0df 72%,#56534e 100%);
  border:2px solid #292723;
  clip-path:polygon(5% 0,95% 0,95% 62%,50% 100%,5% 72%);
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.16);
}
.d4c-final-blade.is-dropping{
  animation:d4cFinalBladeDrop .78s cubic-bezier(.72,.02,.94,.45) forwards;
}
.d4c-final-blade.is-dropped{
  transform:translate(-50%,365px);
}
.d4c-final-chamber.is-impact .d4c-final-stage{
  animation:d4cFinalImpact .18s linear 1;
}
@keyframes d4cFinalBladeDrop{
  0%{transform:translate(-50%,0)}
  72%{transform:translate(-50%,330px)}
  88%{transform:translate(-50%,372px)}
  100%{transform:translate(-50%,365px)}
}
@keyframes d4cFinalImpact{
  0%,100%{transform:translate(0,0)}
  30%{transform:translate(1px,2px)}
  60%{transform:translate(-1px,-1px)}
}
@media(max-width:767px){
  .d4c-final-blade{
    left:42.4%;
    top:1.8vw;
    width:clamp(28px,8.8vw,46px);
    height:clamp(42px,12vw,62px);
  }
  .d4c-final-blade.is-dropped{transform:translate(-50%,36vw)}
  @keyframes d4cFinalBladeDrop{
    0%{transform:translate(-50%,0)}
    72%{transform:translate(-50%,33vw)}
    88%{transform:translate(-50%,37vw)}
    100%{transform:translate(-50%,36vw)}
  }
}
@media(prefers-reduced-motion:reduce){
  .d4c-final-blade.is-dropping{animation-duration:.01ms}
  .d4c-final-chamber.is-impact .d4c-final-stage{animation:none}
}
\n\n/* === v0.4.25.30 — FINAL CHAMBER MOBILE CHOP CONTROL ===
   Simulation-only UX repair. Makes the test CHOP control immediately available
   after the Final Walk on phones; no account/case mutation is introduced. */
.d4c-final-chop-primary{
  display:inline-block!important;
  padding:10px 16px!important;
  background:#7d1717!important;
  color:#fff4e7!important;
  border:2px solid #d5a15f!important;
  border-radius:3px!important;
  font-weight:900!important;
  letter-spacing:1.1px!important;
  cursor:pointer!important;
  box-shadow:0 0 0 1px rgba(0,0,0,.45),0 3px 10px rgba(0,0,0,.35)!important;
}
@media(max-width:767px){
  .d4c-final-mast .d4c-final-actions{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;width:100%!important}
  .d4c-final-chop-primary{display:block!important;width:100%!important;padding:13px 10px!important;background:#7d1717!important;color:#fff4e7!important;border:2px solid #d5a15f!important;font-weight:900!important;letter-spacing:1.2px!important}
}

/* v0.4.25.31 — Final Chamber sequence control repair */
.d4c-final-sequence button{
  appearance:none;
  -webkit-appearance:none;
  font:inherit;
  color:inherit;
  background:inherit;
  border:inherit;
  padding:inherit;
  margin:inherit;
  cursor:pointer;
}
.d4c-final-sequence button:focus-visible{
  outline:2px solid currentColor;
  outline-offset:2px;
}


/* v0.4.25.33 — Final Chamber presentation polish */
.d4c-final-stage .d4c-final-blade{
  left:41.7%!important;
  top:2.6%!important;
  width:68px!important;
  height:82px!important;
  z-index:2!important;
  opacity:.92!important;
  filter:drop-shadow(0 7px 5px rgba(0,0,0,.72)) contrast(1.04)!important;
}
.d4c-final-stage .d4c-final-blade.is-dropped{
  transform:translate(-50%,390px)!important;
}
@keyframes d4cFinalBladeDropIntegrated{
  0%{transform:translate(-50%,0)}
  72%{transform:translate(-50%,390px)}
  86%{transform:translate(-50%,374px)}
  100%{transform:translate(-50%,390px)}
}
.d4c-final-stage .d4c-final-blade.is-dropping{
  animation:d4cFinalBladeDropIntegrated .72s cubic-bezier(.72,.02,.94,.45) forwards!important;
}
@media(max-width:767px){
  .d4c-final-stage .d4c-final-blade{
    left:42.2%!important;
    top:2.2%!important;
    width:clamp(28px,8vw,44px)!important;
    height:clamp(40px,11vw,58px)!important;
  }
  .d4c-final-stage .d4c-final-blade.is-dropped{
    transform:translate(-50%,36vw)!important;
  }
}



/* ==========================================================================
   v0.4.25.36 — FINAL CHAMBER CANONICAL CONTROL + TERMINATION OVERLAY REPAIR
   Root-cause repair after source audit:
   - use the existing real .d4c-final-profile-x overlay, not pseudo-elements
     on the <img> avatar (a replaced element);
   - one CHOP control per viewport: lower ceremony control on desktop,
     mast control on mobile;
   - keep the obsolete sequence strip removed.
   ========================================================================== */

.d4c-final-sequence{
  display:none!important;
}

/* One decision control only on desktop. */
.d4c-final-chop-primary{
  display:none!important;
}

/* Existing dedicated overlay is the authoritative X surface. */
.d4c-final-photo-wrap{
  position:relative!important;
  overflow:hidden!important;
}
.d4c-final-profile-x{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  opacity:0!important;
  z-index:60!important;
  pointer-events:none!important;
  transform:none!important;
  mix-blend-mode:normal!important;
  transition:opacity .16s ease!important;
}
.d4c-final-profile-x::before,
.d4c-final-profile-x::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:18px!important;
  height:138%!important;
  background:#e00000!important;
  border:2px solid #720000!important;
  border-radius:5px!important;
  transform-origin:center!important;
  box-shadow:0 3px 8px rgba(0,0,0,.72)!important;
}
.d4c-final-profile-x::before{
  transform:translate(-50%,-50%) rotate(45deg)!important;
}
.d4c-final-profile-x::after{
  transform:translate(-50%,-50%) rotate(-45deg)!important;
}
.d4c-final-identity.terminated .d4c-final-profile-x{
  opacity:1!important;
}

/* Mobile: retain immediate access to CHOP in the mast, but hide the duplicate
   lower CHOP button. All other ceremony controls remain available below. */
@media(max-width:767px){
  .d4c-final-chop-primary{
    display:block!important;
    width:100%!important;
    padding:13px 10px!important;
    background:#7d1717!important;
    color:#fff4e7!important;
    border:2px solid #d5a15f!important;
    font-weight:900!important;
    letter-spacing:1.2px!important;
  }
  #d4c-final-terminated{
    display:none!important;
  }
  .d4c-final-profile-x::before,
  .d4c-final-profile-x::after{
    width:14px!important;
    height:142%!important;
  }
}


/* v0.4.25.37 — FINAL CHAMBER FINAL VISUAL CALIBRATION
   Scope locked: termination X weight + blade horizontal registration only. */

/* Make the existing real termination overlay unmistakably bold. */
.d4c-final-profile-x::before,
.d4c-final-profile-x::after{
  width:28px!important;
  height:142%!important;
  background:#e00000!important;
  border:3px solid #650000!important;
  border-radius:6px!important;
  box-shadow:0 3px 9px rgba(0,0,0,.78)!important;
}

/* Shift the existing blade/drop assembly slightly right without changing
   dimensions, timing, drop distance or animation ownership. */
.d4c-final-blade{
  margin-left:18px!important;
}

@media(max-width:767px){
  .d4c-final-profile-x::before,
  .d4c-final-profile-x::after{
    width:20px!important;
    height:145%!important;
  }
  .d4c-final-blade{
    margin-left:10px!important;
  }
}


/* v0.4.25.38 — IMPOUNDMENT ALARM SILENCE / ONE-SHOT PRESENTATION REPAIR
   Presentation/audio runtime only. Jail Core remains authoritative for custody,
   visit expiry, alarm_pending, Calling Bell, Governor outcomes and release. */
.d4c-impounded-overlay .d4c-silence-alarm{justify-self:center;min-width:220px;margin-top:8px;padding:13px 22px;border:4px ridge #d7b16c;background:#17130f;color:#fff;font:900 16px/1.1 Arial,sans-serif;letter-spacing:2px;cursor:pointer;box-shadow:0 8px 22px #000a}
.d4c-impounded-overlay .d4c-silence-alarm:hover,.d4c-impounded-overlay .d4c-silence-alarm:focus{background:#332316;outline:2px solid #fff;outline-offset:3px}
.d4c-impounded-overlay .d4c-silence-alarm:disabled{cursor:default;background:#2f2d29;color:#cfc8ba;opacity:.92}
@media(max-width:600px){.d4c-impounded-overlay .d4c-silence-alarm{min-width:0;width:min(300px,86vw);font-size:14px;padding:12px 16px}}

/* v0.4.25.40 member-safe Final Chamber demo exit link. */
.d4c-final-demo-exit{display:inline-block;padding:9px 12px;border:1px solid #c8a56e;background:#211711;color:#f4d9ae!important;text-decoration:none!important;font-size:10px;font-weight:900;letter-spacing:.08em}
