/* National Seerah Competition 2027 — shared editorial / broadcast system.
   Loaded last deliberately; behaviour and legacy route styles remain intact. */
:root{--forest:#123e34;--forest-deep:#092820;--heritage:#b99a62;--ivory:#f7f5ef;--paper:#fffefa;--ink:#20332b;--muted:#65736b;--line:#dbe1da;--gold:#b99a62;--green:#123e34;--cream:#f7f5ef;--serif:Georgia,"Times New Roman",serif;--sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--space:8px;--radius:14px;--elevation:0 8px 30px #14392b09;--ease:cubic-bezier(.2,.7,.2,1);--motion:180ms}
[hidden]{display:none!important}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:24px}
body{font-family:var(--sans);-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{ -webkit-tap-highlight-color:transparent}
button,a,input,select,textarea{transition:background-color var(--motion),border-color var(--motion),box-shadow var(--motion)}
:focus-visible{outline:3px solid #aa7834!important;outline-offset:3px!important}
button:disabled{cursor:not-allowed;filter:saturate(.35);opacity:.52}
input,select,textarea{accent-color:var(--forest)}
/* A quiet editorial portal: the live pair leads, supporting roles follow. */
body.simple-home{background:var(--ivory);color:var(--ink);min-height:100vh}
.simple-launch{width:min(1120px,100%);max-width:1120px;margin:auto;padding:44px 32px 28px}
.simple-brand{display:flex;align-items:center;gap:30px;padding:0 0 30px;margin-bottom:28px;border-bottom:1px solid #bdc7bd}
.simple-brand img{width:220px;max-height:110px;object-fit:contain;background:#fff;border-radius:4px;padding:8px}
.simple-brand div>span{color:#66776c;font-size:.75rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
.simple-brand h1{font:normal clamp(2rem,4vw,3.2rem)/1.12 var(--serif);color:var(--forest);margin:8px 0 0;letter-spacing:-.035em}
.launch-primary{display:grid;grid-template-columns:1.2fr 1fr;gap:18px;margin-bottom:32px}
.simple-launch .launch-card{position:relative;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);padding:23px 25px;box-shadow:none;color:var(--ink);text-decoration:none;min-width:0;transition:border-color .18s,box-shadow .18s,transform .18s}
.simple-launch .launch-card:hover{transform:translateY(-2px);border-color:var(--heritage);box-shadow:0 8px 24px #173c2910}
.simple-launch .launch-card strong{font-size:1.12rem;letter-spacing:-.025em;font-weight:650}
.simple-launch .launch-card small{font-size:.875rem;line-height:1.5;color:var(--muted);max-width:34ch;margin-top:7px}
.simple-launch .launch-card em{font-style:normal;font-size:.65rem;font-weight:750;letter-spacing:.13em;border-radius:4px;background:#edf1eb;color:#43584a;padding:5px 7px}
.simple-launch .launch-icon{font-size:1.1rem;width:34px;height:34px;display:grid;place-items:center;border:1px solid #bbc8ba;border-radius:50%;background:transparent;color:var(--forest)}
.simple-launch .launch-card.main,.simple-launch .launch-card.screen{min-height:185px;background:var(--forest-deep);color:#fff9e9;border-color:var(--forest-deep);padding:26px 30px}
.simple-launch .launch-card.screen{background:#eaece2;border-color:#d1d8cc;color:var(--forest)}
.simple-launch .launch-primary strong{font:normal 1.9rem var(--serif)}
.simple-launch .launch-card.main small{color:#cad6ca}.simple-launch .launch-card.main .launch-icon{border-color:#758b6d;color:#e0c58f}
.simple-launch .launch-card.main em{color:#ead4ac;background:#294c3e}
.simple-launch h2{font-size:.72rem;text-transform:uppercase;letter-spacing:.16em;color:#68736a;margin:26px 0 12px}
.simple-launch .launch-grid{gap:14px}.simple-launch .launch-grid.compact{grid-template-columns:1fr}
.simple-launch section[aria-label="Contestant registration"]{grid-template-columns:repeat(2,minmax(0,1fr))}
.simple-launch .launch-grid.compact .launch-card{grid-template-columns:minmax(150px,auto) 1fr auto}
.simple-launch .simple-footer{margin-top:30px;border-top:1px solid var(--line);padding-top:20px;font-size:.8rem;line-height:1.5;color:var(--muted)}
/* Staff consoles: readable density, stable controls and quiet separation. */
body.console-workspace,body.registration-admin{background:var(--ivory);color:var(--ink)}
.console-workspace .shell,.registration-admin .shell{min-width:0;max-width:100%;grid-template-columns:minmax(0,1fr)}
.console-workspace .cols,.console-workspace .pane,.registration-admin .cols,.registration-admin .pane{min-width:0;max-width:100%}
.registration-admin .bar #nav{display:flex;flex-wrap:wrap;gap:6px;min-width:0}
.console-workspace .bar,.registration-admin .bar{background:var(--forest-deep);border-bottom:2px solid var(--heritage);padding:14px 22px;color:#f5f3e8;gap:12px}
.console-workspace .bar h1,.registration-admin .bar h1{font:normal 1.45rem var(--serif);letter-spacing:-.02em}
.console-workspace .pane,.registration-admin .pane{padding:24px;background:var(--ivory)}
.console-workspace .pane.side,.registration-admin .pane.side{background:#eef1ea;border-left:1px solid #d5ddd3}
.console-workspace .group,.registration-admin .group{border:1px solid var(--line);border-top:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--elevation);background:var(--paper);padding:20px;margin-bottom:18px}
.console-workspace .group>h3{font-size:.8rem;letter-spacing:.085em;color:var(--forest);margin-bottom:15px}
.console-workspace label,.console-workspace .kv,.registration-admin label{font-size:.875rem;line-height:1.5}
.console-workspace input,.console-workspace select,.console-workspace textarea,.registration-admin input,.registration-admin select,.registration-admin textarea{min-height:44px;background:#fffefa;border:1px solid #bfcbbd;border-radius:8px;padding:10px 12px;color:var(--ink);max-width:100%}
.console-workspace input[type=checkbox],.console-workspace input[type=radio]{min-height:20px;width:20px;height:20px}
.console-workspace button,.registration-admin button{min-height:42px;border-radius:8px;font-size:.875rem;padding:10px 15px;font-weight:650;box-shadow:none}
.console-workspace button.primary,.registration-admin button.primary{background:var(--forest);border-color:var(--forest);color:#fff}
.console-workspace button.gold{background:#ead9b4;border-color:#c4a66c;color:#3f321c}
.console-workspace button.danger{background:#fff1ee;border-color:#cb8b80;color:#902f25}
.console-workspace .blocked,.console-workspace .warn{border-radius:9px;line-height:1.5;padding:13px 16px}
.console-workspace .card{border-radius:10px;border:1px solid var(--line);box-shadow:none}
.console-workspace .total{font-variant-numeric:tabular-nums;font:normal 2.5rem var(--serif);color:var(--forest)}
.console-workspace .crit{padding:16px 0;border-bottom:1px solid var(--line)}
.console-workspace .seatpick{gap:10px}.console-workspace .seatpick button{min-height:52px}
.console-workspace .track{gap:6px}.console-workspace .track span{border-radius:6px;padding:8px}
.control-room .control-head{padding:17px 28px;background:var(--forest-deep);border-bottom:2px solid var(--heritage)}
.control-room .control-head-links a{border-radius:6px;padding:9px 13px;font-size:.8rem}
.control-room .category-switch{gap:12px;padding:20px 26px 12px}
.control-room .category-switch button{border:1px solid #c8d2c5;border-radius:12px;background:var(--paper);padding:18px;text-align:left;color:var(--forest);box-shadow:none}
.control-room .category-switch button.selected{background:var(--forest);color:#fff;border-color:var(--forest)}
.control-room .live-tools{margin:0 26px 18px;border-radius:12px;border:1px solid var(--line);background:var(--paper);box-shadow:var(--elevation)}
.control-room .tool-label{font-size:.72rem;letter-spacing:.09em;color:#536b5b}
.control-room .console-title{background:#edf0e7;border-top:1px solid #d4dbd0;border-bottom:1px solid #d4dbd0;padding:13px 27px}
.control-room .console-title h1{font:normal 1.45rem var(--serif)}
.gate{background:radial-gradient(ellipse at top,#31523a,#0a261d 75%);padding:24px}
.gate form{background:var(--paper);color:var(--ink);border:1px solid #ceb888;border-top:3px solid var(--heritage);border-radius:16px;padding:32px;box-shadow:0 24px 90px #0003;width:min(420px,100%)}
.gate h2{font:normal 1.9rem/1.2 var(--serif);color:var(--forest)}
.gate p{font-size:.9rem;line-height:1.6;color:#61705d}.gate .pin-label{display:block;text-align:left;font-size:.875rem;margin:18px 0 7px;color:#42533d}
.gate input{border:1px solid #aebb9f;border-radius:8px;padding:14px;min-height:50px}.gate button{width:100%;border-radius:8px;min-height:48px;margin-top:12px;background:var(--forest);color:#fff}
.pin-settings .pin-card{border:1px solid var(--line);border-radius:14px;box-shadow:var(--elevation);padding:28px;background:var(--paper)}
.registration-admin .pill{font-size:.75rem;padding:4px 8px}.registration-admin table.reg tr.sel td{background:#e5ecdd}
.registration-admin .record-link{border:0;background:transparent;color:var(--forest);padding:0;min-height:32px;text-align:left;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.public-display .plaque.correct span::after,.overlay .plaque.correct span::after{content:' ✓';font-weight:800}
.public-display .plaque.wrong span::after,.overlay .plaque.wrong span::after{content:' ×';font-weight:800}
.registration-admin .stats{gap:12px;margin-bottom:22px;grid-template-columns:repeat(4,minmax(0,1fr))}
.registration-admin .stat{background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:none;padding:18px}
.registration-admin .stat b{font:normal 2rem var(--serif);color:var(--forest)}
.registration-admin .stat span{font-size:.8rem;line-height:1.5}
.registration-admin .filters{padding:15px;background:#e9eee5;border:1px solid #d6dfd1;border-radius:12px;margin-bottom:16px;gap:12px}
.registration-admin .tablewrap{border-radius:12px;border:1px solid var(--line);background:var(--paper)}
.registration-admin table.reg{font-size:.875rem}.registration-admin table.reg th{background:#e7ede3;color:#415844;font-size:.72rem;letter-spacing:.07em;padding:15px 12px}
.registration-admin table.reg td{padding:17px 12px;border-bottom:1px solid #e7ebe3;line-height:1.45}
.registration-admin table.reg tr:hover td{background:#f2f4eb}.registration-admin table.reg tr.selected td{background:#e5ecdd}
.registration-admin .detail h4{font:normal 1.5rem var(--serif);color:var(--forest);margin:8px 0 20px}
.registration-admin .cols{grid-template-columns:minmax(0,1fr) 370px}
.registration-admin .pane.side{text-align:left}.registration-admin .detail dl{grid-template-columns:1fr;gap:4px}.registration-admin .detail dd{margin-bottom:12px}.registration-admin .pane.side .group>h3{text-align:left}
.registration-admin .detail dt{font-size:.75rem;letter-spacing:.025em;color:#61715f}.registration-admin .detail dd{font-size:.9rem;line-height:1.55;overflow-wrap:anywhere}
.registration-admin .empty{padding:34px 20px;border:1px dashed #b7c5b0;border-radius:12px;line-height:1.7;background:#f7f8f1;color:#5d715d}
/* Registration: generous paper sections, a clear category selection and finish. */
body.registration-form{background:var(--ivory);color:var(--ink);font-size:16px}
.registration-form header{background:var(--forest-deep);border-bottom:2px solid var(--heritage)}
.registration-form .head{max-width:1040px;padding:32px 24px;gap:22px}
.registration-form .head img{width:78px;height:92px;border-radius:3px;padding:7px}
.registration-form h1{font:normal clamp(1.55rem,3.5vw,2.6rem)/1.12 var(--serif);letter-spacing:-.025em;max-width:23ch}
.registration-form .eyebrow{margin-top:12px;font-size:.7rem;letter-spacing:.19em;color:#dbc18c}
.registration-form .secure{border:1px solid #5f755e;color:#cdd9c8;font-size:.75rem;border-radius:5px;padding:8px 10px}
.registration-form main{max-width:1040px;padding:0 24px;margin:28px auto 60px}
.registration-form .intro{background:transparent;box-shadow:none;border:0;border-bottom:1px solid #ced7c9;border-radius:0;padding:0 0 24px;margin-bottom:24px;gap:32px;grid-template-columns:minmax(0,1fr) 210px}
.registration-form .intro p{font-size:.95rem;line-height:1.75;color:#586857}
.registration-form .cap{font-size:.8rem;font-weight:650;white-space:normal;line-height:1.6;padding-left:22px;border-left:1px solid #b5c2aa}
.registration-form form{gap:22px}.registration-form .panel{padding:28px 30px;border-radius:14px;background:var(--paper);border:1px solid #dbe1d4;box-shadow:var(--elevation)}
.registration-form .panel h2{font:normal 1.6rem var(--serif);letter-spacing:-.02em;display:flex;align-items:center;gap:12px;margin-bottom:24px}
.registration-form .panel h2 span{display:inline-grid;place-items:center;flex-shrink:0;width:30px;height:30px;border:1px solid #d7c6a1;border-radius:50%;font-size:.7rem;color:#84672f;margin:0}
.registration-form .grid{gap:20px 24px}.registration-form .field{gap:7px}
.registration-form label,.registration-form .label{font-size:.875rem;color:#3c5140;font-weight:600}
.registration-form input,.registration-form select,.registration-form textarea{background:#fffefb;border:1px solid #bfcbb8;border-radius:8px;min-height:48px;padding:12px 14px}
.registration-form input:focus,.registration-form select:focus,.registration-form textarea:focus{border-color:#527947;box-shadow:0 0 0 3px #dce8d8}
.registration-form .hint{font-size:.8rem;line-height:1.6;color:#64715e}
.registration-form .categories{gap:12px}.registration-form .cat{padding:20px;gap:14px;border:1px solid #c9d2c1;background:#fafbf5;border-radius:10px}
.registration-form .cat strong{font-size:.95rem;margin-bottom:5px}.registration-form .cat small{font-size:.82rem;line-height:1.6;color:#5c6b55}
.registration-form .cat:has(input:checked){background:#e9f0e3;border-color:var(--forest);box-shadow:inset 4px 0 var(--forest)}
.registration-form .cat.disabled{opacity:.65;background:#f3f3ef}
.registration-form .cat input,.registration-form .choice input,.registration-form .check input{width:20px;height:20px;min-height:20px;padding:0;flex-shrink:0}
.registration-form .choice label,.registration-form .check{background:#f8faf2;border:1px solid #d3dcc9;line-height:1.65;padding:16px;border-radius:9px}
.registration-form .choice label:has(input:checked){border-color:#56764a;background:#ecf2e6}
.registration-form .actions{padding:4px 0;gap:20px}.registration-form .btn{padding:15px 25px;min-height:50px;border-radius:8px;font-weight:650}
.registration-form .primary{background:var(--forest);box-shadow:0 5px 15px #143c2620}.registration-form .privacy{font-size:.8rem;line-height:1.7}
.registration-form .errors{border-radius:10px;line-height:1.65}.registration-form .success{padding:48px 28px;background:#f2f7ec;border:1px solid #b5c6a6;border-top:3px solid var(--heritage)}
.registration-form .success h2{font:normal 2.5rem var(--serif)}.registration-form .ref{padding:14px 22px;letter-spacing:.06em}
/* Broadcast: depth, legibility and safe margins; OBS remains transparent. */
body.public-display{background:#09251d;color:#faf4e5}
.public-display .stage{background:radial-gradient(ellipse at 30% 10%,#254c38 0,transparent 60%),linear-gradient(145deg,#102e23,#051a15);color:#faf4e5;padding:3vh 3vw;gap:2vh}
.public-display .stage-head{background:transparent;border-bottom:1px solid #b99a625c;padding:0 0 2vh;box-shadow:none;color:#fff7e5}
.public-display .stage-head img{width:clamp(130px,14vw,250px);height:auto;max-height:12vh;object-fit:contain;background:#fff;border-radius:3px;padding:5px}
.public-display .stage-head h1{color:#fff7e5;font:normal clamp(22px,2.5vw,48px)/1.15 var(--serif);letter-spacing:-.02em}
.public-display .stage-head h1 small{color:#d1bb8b;font-family:var(--sans);font-size:.4em;letter-spacing:.14em;margin-top:8px}
.public-display .stage-head .day{color:#d1bb8b;border-color:#6b7555;background:transparent}
.public-display .stage-body{background:transparent}.public-display .stage-foot{background:transparent;border-top:1px solid #b99a624d;color:#ced9c8;padding-top:1vh}
.public-display .qband,.overlay .qband{background:linear-gradient(130deg,#214a37,#102e24);color:#fff9ed;border:1px solid #81906b;border-radius:14px;box-shadow:0 14px 35px #0003}
.public-display .qband .qmeta{color:#ddc18a}.public-display .qband p{color:#fff9ed;line-height:1.35}
.public-display .plaque,.overlay .plaque{background:#15352a;color:#fff9ed;border:1px solid #698263;border-radius:10px;box-shadow:none}
.public-display .plaque b,.overlay .plaque b{background:#294b35;color:#e4c993;border-right:1px solid #698263}
.public-display .plaque.sel,.overlay .plaque.sel{background:#dac18a;color:#192a20;border-color:#f8e4b7}.public-display .plaque.sel b,.overlay .plaque.sel b{background:#c4a464;color:#192a20}
.public-display .plaque.correct,.overlay .plaque.correct{background:#dceec7;color:#163c24;border:3px solid #a4d684}.public-display .plaque.correct b,.overlay .plaque.correct b{background:#a4ce89;color:#163c24}
.public-display .plaque.wrong,.overlay .plaque.wrong{background:#652a29;color:#fff0e7;border:3px solid #e3a29a}.public-display .plaque.wrong b,.overlay .plaque.wrong b{background:#863e39;color:#fff0e7}
.public-display .plaque.gone,.overlay .plaque.gone{opacity:.28}
.public-display .ladder{background:#0c261e99;border:1px solid #53684b;border-radius:12px;padding:10px}
.public-display .rung{border-radius:5px;color:#b9c6ae;background:transparent}.public-display .rung.mile{color:#ead4a2}.public-display .rung.won{color:#e0efd5;background:#284932}.public-display .rung.now{background:#ddc38c;color:#1b3024;box-shadow:none}
.public-display .ident{color:#fff4d9}.public-display .ident strong{color:#fff4d9;font-family:var(--serif);font-weight:normal;letter-spacing:-.015em}.public-display .ident em,.public-display .ident small{color:#ccdabf}
.public-display .rung b,.public-display .rung.mile b{color:inherit}.public-display .rung.now b{color:#1b3024}.public-display .rung{border-bottom-color:#6b805840}
.public-display .rung.mile:not(.now):not(.won){background:#2c4532;color:#edd39b}
.public-display .clock.small{color:#f0d69f}.public-display .life{background:#15352a;border-color:#647955;color:#b9c6ae}.public-display .life.on{color:#ead4a2;border-color:#a58c55;box-shadow:none}.public-display .audience span{color:#ead4a2}.public-display .audience i{background:#769b62}
.public-display .clock,.overlay .clock{color:#f0d69f;background:#0b251e;border:1px solid #9a966d;border-radius:10px;font-variant-numeric:tabular-nums;box-shadow:none}
.public-display .clock.low,.overlay .clock.low{color:#fff1df;border:3px solid #e4a099;background:#652a29;animation:none}
.public-display .notice{background:radial-gradient(ellipse at 50% 0,#284e38,#071d16 75%);color:#fff3d9}
.public-display .notice>div{background:#102e2399;padding:5vh 5vw;border:1px solid #ab98605c;border-radius:4px;max-width:86vw}
.public-display .notice img{max-height:20vh;object-fit:contain;background:#fff;border-radius:3px;padding:10px}.public-display .notice h2{color:#f0d6a1;font:normal clamp(2rem,5.5vw,7rem)/1.12 var(--serif);letter-spacing:-.025em}.public-display .notice p{color:#d2dfc8;max-width:45ch;margin:1em auto;line-height:1.5}
body.overlay{background:transparent!important}.overlay .ov{padding:4vh 4vw}.overlay .lower{background:#0d2a21ee;border:1px solid #81906b;border-left:5px solid var(--heritage);border-radius:9px;box-shadow:0 8px 25px #0003}
body.holding-display{background:#081e17;color:#f5e4c3}.holding-display .slate{background:radial-gradient(ellipse at 50% 0,#284c35,#081e17 75%);border:1px solid #a88f5c77;box-shadow:0 20px 80px #0004;padding:6vh 7vw;border-radius:4px;color:#f5e4c3}
.holding-display .slate h1{font:normal clamp(2rem,5.5vw,6rem)/1.12 var(--serif);color:#f5e4c3;letter-spacing:-.025em}.holding-display .slate .message{color:#d3dfc9;line-height:1.6}.holding-display .slate .event{color:#d5b980;letter-spacing:.16em}.holding-display .slate img{background:#fff;padding:8px;border-radius:3px;max-height:23vh;object-fit:contain}
@media(max-width:900px){.simple-launch{padding:26px 22px}.console-workspace .cols,.registration-admin .cols{grid-template-columns:minmax(0,1fr)}.console-workspace .shell,.registration-admin .shell{height:auto;min-height:100vh}.console-workspace .pane,.registration-admin .pane{overflow:visible}.console-workspace .pane.side,.registration-admin .pane.side{border-left:0;border-top:1px solid var(--line)}.registration-admin .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.control-room .category-switch{padding:14px}.control-room .live-tools{margin:0 14px 14px}.registration-admin .filters{flex-wrap:wrap}.registration-admin .filters>*{min-width:0;max-width:100%}}
@media(max-width:600px){.simple-brand{gap:18px;align-items:center}.simple-brand img{width:125px;max-height:80px}.simple-brand h1{font-size:1.8rem}.simple-brand div>span{font-size:.65rem}.launch-primary,.simple-launch .launch-grid{grid-template-columns:1fr}.simple-launch .launch-card.main,.simple-launch .launch-card.screen{min-height:150px}.simple-launch .launch-card{padding:20px}.simple-launch .simple-footer{flex-wrap:wrap;gap:12px}.registration-form .head{padding:24px 18px;gap:16px}.registration-form .head img{width:60px;height:74px}.registration-form main{padding:0 16px;margin-top:22px}.registration-form .intro{grid-template-columns:1fr;gap:14px;padding-bottom:20px}.registration-form .cap{padding:0;border:0}.registration-form .panel{padding:23px 20px}.registration-form .panel h2{font-size:1.4rem;margin-bottom:22px}.registration-form .grid,.registration-form .categories,.registration-form .choice{grid-template-columns:1fr}.registration-form .actions .primary{width:100%}.registration-form .cat{padding:17px}.console-workspace .pane,.registration-admin .pane{padding:16px}.console-workspace .bar,.registration-admin .bar{padding:12px 16px}.console-workspace .group{padding:16px}.console-workspace .grid4{grid-template-columns:repeat(2,minmax(0,1fr))}.control-room .category-switch button{padding:12px;font-size:.8rem}.control-room .control-head{padding:14px}.registration-admin table.reg{min-width:660px}.registration-admin .tablewrap{overflow-x:auto}}
@media(max-width:600px){.simple-launch section[aria-label="Contestant registration"]{grid-template-columns:1fr}.simple-launch .launch-card strong,.simple-launch .launch-card small{grid-column:2/4}.simple-launch .launch-card em{grid-column:2;grid-row:auto;justify-self:start;margin-top:8px}.simple-launch .launch-grid.compact .launch-card{grid-template-columns:1fr}.simple-launch .launch-grid.compact .launch-card>*{grid-column:1}.simple-brand{flex-direction:row}.registration-admin .stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.simple-launch .launch-card:hover{transform:none}}

/* The programme home stays mounted behind Masjid Screen presentation mode. */
body.masjid-screen-open{overflow:hidden}
.masjid-fullscreen-shell{position:fixed;inset:0;z-index:10000;background:#07130f;overflow:hidden}
.masjid-fullscreen-frame{display:block;width:100%;height:100%;border:0;background:#fff}
.masjid-fullscreen-shell:fullscreen{width:100vw;height:100vh}
@media print{body{background:#fff!important;color:#000!important}.simple-launch .launch-card{box-shadow:none}.registration-form header{background:#fff;color:#000}.registration-form .panel{box-shadow:none;break-inside:avoid}}

/* White canvas, expressive surfaces. Supersedes the all-white component pass. */
:root{--ivory:#fff;--cream:#fff;--paper:#fff;--cream-2:#f1f5f2;--white:#fff;--green-wash:#eaf3ed;--gold-wash:#f8f1e3;--ink:#20332b;--muted:#59675e}
body:not(.overlay),.gate{background:#fff!important;color:#20332b}
body.overlay{background:transparent!important}
body #modeBanner{background:#fff!important;color:#76531f!important;border-bottom:2px solid #b99a62}

/* Solid action colours only; surrounding surfaces always remain white.
   Blue = secondary/navigation, green = proceed/save, red = stop/reset.
   Amber is retained for the explicitly labelled reviewing judge signal. */
body button,body a.button-link{--action-fill:#235b8c;--action-hover:#19456d}
body button.primary,body button.gold,body button.sig-green,
body :is(#b-tstart,#b-score,#b-verify,#b-note,#b-topic,#b-compute,#b-moderate,#b-publish,#b-place,#b-dismiss,#clear-screen){--action-fill:#123e34;--action-hover:#1d5545}
body button.danger,body button.sig-red,body button[type="reset"],
body :is(#b-tpause,#b-treset,#b-clear,#b-msgclear,#b-end,#b-close,#b-hold,#holding,#break,#technical){--action-fill:#a3322b;--action-hover:#7f241f}
body button.sig-amber{--action-fill:#815907;--action-hover:#684705}
html body button:not(.record-link):not(.uncoloured),html body a.button-link:not(.uncoloured){
  background:var(--action-fill)!important;color:#fff!important;border-color:var(--action-fill)!important;
}
html body button:not(.record-link):not(.uncoloured) :is(span,b,strong,small),
html body a.button-link :is(span,b,strong,small){color:#fff!important}
html body button:not(.record-link):not(.uncoloured):hover:not(:disabled),
html body a.button-link:hover{background:var(--action-hover)!important;color:#fff!important;border-color:var(--action-hover)!important}
body button.selected,body button.active,body button[aria-pressed=true]{box-shadow:inset 0 -3px #b99a62!important}
body button:disabled{opacity:.5;cursor:not-allowed}

/* Category identities live in outlines and typography, not page fills. */
body.category-hadith,body[data-category="hadith"]{--category-metal:#b99a62;--category-ink:#80602b;--category-secondary:#123e34}
body.category-bayan,body[data-category="bayan"]{--category-metal:#aab3bd;--category-ink:#576574;--category-secondary:#123e34}
body.category-ladder,body[data-category="ladder"]{--category-metal:#b99a62;--category-ink:#235b8c;--category-secondary:#235b8c}
body:is(.category-hadith,.category-bayan,.category-ladder,[data-category]) :is(.group,.card,.qband,.plaque,.stage-head,.stage-foot,.bar,.lower){border-top-color:var(--category-metal);border-bottom-color:var(--category-metal)}
body:is(.category-hadith,.category-bayan,.category-ladder,[data-category]) .group{border-top:3px solid var(--category-metal)}
body:is(.category-hadith,.category-bayan,.category-ladder,[data-category]) :is(.group>h3,.qmeta,.stage-head h1 small){color:var(--category-ink)!important}
body:is(.category-hadith,.category-bayan,.category-ladder,[data-category]) :is(.card,.qband){border-left:3px solid var(--category-secondary)}
body:is(.category-hadith,.category-bayan,.category-ladder,[data-category]) :is(.stage-head,.stage-foot){border-color:var(--category-metal)!important}
body:is(.category-hadith,.category-bayan,.category-ladder,[data-category]) .plaque:not(.sel):not(.correct):not(.wrong){border-color:var(--category-metal)!important}
body.category-bayan :is(button.selected,button.active,button[aria-pressed=true]){box-shadow:inset 0 -3px #aab3bd!important}
body.category-ladder :is(.track .now,.track .done){border-color:#235b8c!important}
body .category-switch button[data-category="hadith"]{border-bottom:4px solid #b99a62!important;--action-fill:#123e34;--action-hover:#1d5545}
body .category-switch button[data-category="bayan"]{border-bottom:4px solid #aab3bd!important;--action-fill:#123e34;--action-hover:#1d5545}
body .category-switch button[data-category="ladder"]{border-bottom:4px solid #b99a62!important;--action-fill:#235b8c;--action-hover:#19456d}
body .category-switch button.selected{outline:2px solid #123e34;outline-offset:3px}
.registration-form .cat:has(input[value="A"]),.registration-form .cat:has(input[value="B"]),.registration-form .cat:has(input[value="C"]),.registration-form .cat:has(input[value="D"]){border-top:3px solid #b99a62}
.registration-form .cat:has(input[value="E"]),.registration-form .cat:has(input[value="F"]),.registration-form .cat:has(input[value="G"]){border-top:3px solid #aab3bd}
.registration-form .cat:has(input[value="J"]){border-top:3px solid #b99a62;border-right:3px solid #235b8c}

/* Refined product edition: one white canvas, three levels of visual emphasis. */
.simple-launch{max-width:1180px;width:100%;padding:42px 36px 30px}
.simple-brand{gap:36px;margin-bottom:30px;padding-bottom:28px;border-color:#e3e8e2}
.simple-brand img{width:228px;padding:0;border-radius:0;box-shadow:none}
.simple-brand h1{font-size:clamp(2rem,4.2vw,3.65rem);letter-spacing:-.05em}
.portal-intro{margin:10px 0 0;color:#69746b;font-size:.95rem;line-height:1.6}
.simple-launch h2{font:700 .8rem var(--sans);letter-spacing:.04em;text-transform:none;color:#233c2f;display:flex;justify-content:space-between;align-items:center;margin:28px 0 14px}
.simple-launch h2>span{font-weight:400;color:#788279;font-size:.8rem;letter-spacing:0}
.simple-launch .launch-card{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:24px;border:1px solid #e0e7df;background:#f7f9f6;border-radius:16px;box-shadow:none;min-height:165px}
.simple-launch .launch-card .launch-icon{margin-bottom:19px;border-radius:9px;width:36px;height:36px;font:700 .85rem var(--sans);background:#e4ede3;border:0;color:#31533c}
.simple-launch .launch-card strong{font-size:1.2rem;line-height:1.25;letter-spacing:-.025em}
.simple-launch .launch-card small{margin-top:9px;max-width:44ch;color:#617060;font-size:.86rem;line-height:1.55}
.simple-launch .launch-card em{position:absolute;right:20px;top:24px;font-size:.6rem;letter-spacing:.12em;color:#546552;background:#e8eee4;padding:6px 8px;line-height:1}
.simple-launch .launch-primary{grid-template-columns:1.3fr 1fr;gap:20px;margin-bottom:30px}
.simple-launch .launch-primary .launch-card{padding:30px 32px;min-height:265px;border:0;background:#123e34;color:#fff;box-shadow:0 14px 30px #15372916}
.simple-launch .launch-primary .launch-card strong{font:normal clamp(1.8rem,3vw,2.7rem)/1.1 var(--serif);letter-spacing:-.035em}
.simple-launch .launch-primary .launch-card small{color:#d0ded2;max-width:40ch;margin-top:13px}
.simple-launch .launch-primary .launch-card em{background:#ffffff16;color:#d8e6d5;top:31px;right:30px}
.simple-launch .launch-primary .launch-icon{background:#ffffff12;color:#e6c88d;border:1px solid #ffffff25;border-radius:50%}
.simple-launch .launch-primary .launch-card.screen{background:#edf2e8;color:#1f4030;box-shadow:none;border:1px solid #dfe7d7}
.simple-launch .launch-primary .screen small{color:#566e53}.simple-launch .launch-primary .screen em{background:#dce7d4;color:#4b6348}.simple-launch .launch-primary .screen .launch-icon{color:#42633e;border-color:#bbcdb0;background:#e0e9d7}
.simple-launch .card-action{display:flex;align-items:center;justify-content:space-between;align-self:stretch;font-size:.82rem;font-weight:650;margin-top:auto;padding-top:24px;color:inherit}
.simple-launch .card-action>span{font-size:1.35rem;font-weight:400}
.simple-launch a[href^="/judge"].launch-card{background:#eef3f9;border-color:#d5e0ed;border-top:3px solid #b99a62}
.simple-launch a[href^="/judge"] .launch-icon{background:#dce7f4;color:#235b8c}
.simple-launch a[href^="/hadith/judge"].launch-card{background:#f8f4e9;border-color:#e7ddc5;border-top:3px solid #b99a62}
.simple-launch a[href^="/hadith/judge"] .launch-icon{background:#efe4c9;color:#785d29}
.simple-launch a[href^="/bayan/judge"].launch-card{background:#f1f3f5;border-color:#dde2e6;border-top:3px solid #aab3bd}
.simple-launch a[href^="/bayan/judge"] .launch-icon{background:#e2e7eb;color:#536571}
.simple-launch .launch-grid.compact .launch-card{min-height:85px;display:grid;grid-template-columns:190px 1fr auto;align-items:center;padding:22px 25px;background:#fff;border:1px solid #dce3dc}
.simple-launch .launch-grid.compact .launch-card small{margin:0;max-width:none}.simple-launch .launch-grid.compact .launch-card em{position:static;justify-self:end}
.simple-launch .launch-card:hover{border-color:#a99160;box-shadow:0 12px 24px #233e3010}
/* White brand rails; coloured work surfaces begin below them. */
.console-workspace .bar,.registration-admin .bar,.control-room .control-head,.registration-form header{background:#fff;color:#20332b;border-bottom:1px solid #dde5da;box-shadow:0 5px 20px #263f3006}
.console-workspace .bar h1,.registration-admin .bar h1{color:#173f31}
.control-room .control-logo,.control-room .control-logo span{color:#173f31}
.control-room .category-switch button b{background:#ffffff20;border:1px solid #ffffff35;color:#fff}
.control-room .segmented{gap:4px}.control-room .segmented button{border-radius:7px;min-width:0}
.console-workspace .bar nav a,.registration-admin .bar nav a,.control-head-links a{color:#4d6958;border-color:#d3ddd2}
.console-workspace .bar nav a.here,.registration-admin .bar nav a.here{background:#e5eee3;color:#164533;border-radius:6px}
.console-workspace .bar .who,.registration-admin .bar .who{color:#4f705b}
.console-workspace .pane,.registration-admin .pane{background:#fff;padding:24px}
.console-workspace .pane.side,.registration-admin .pane.side{background:#f3f6f1}
.console-workspace .group,.registration-admin .group{padding:22px;border-radius:14px;background:#fff;border:1px solid #dce5d9;box-shadow:0 6px 22px #23402c07}
.console-workspace .group>h3{border:0;padding:0 0 13px;margin-bottom:15px;font-size:.74rem;letter-spacing:.1em;text-align:left}
.console-workspace .card{background:#f4f7f0;border-left:3px solid var(--category-metal,#b99a62);padding:20px}
.console-workspace .track{padding:10px;background:#f1f5ef;border:1px solid #e0e7db;border-radius:10px;margin-bottom:20px}
.console-workspace .track span.now{background:#123e34;color:#fff;border-color:#123e34;box-shadow:inset 0 -2px #b99a62}
.console-workspace .track span.done{background:#e1ebda;color:#345633}
.control-room .live-tools{background:transparent;border:0;box-shadow:none;gap:12px}
.control-room .tool-block{background:#f5f7f2;border:1px solid #dce5d5;border-top:2px solid #b99a62;border-radius:12px;padding:18px}
.control-room .category-switch{gap:16px}.control-room .category-switch button{min-height:80px;box-shadow:0 6px 16px #14392d0d!important}
.control-room .console-title{background:#edf2e7;border-color:#d6e1cc;padding:18px 26px}
.control-room .category-console{border-color:#d9e3d1;border-radius:16px;overflow:hidden}
.console-workspace input,.console-workspace select,.registration-admin input,.registration-admin select{background:#fff}
.registration-admin .stat{background:#f3f7ee;border:1px solid #dbe5d4;padding:19px 20px;box-shadow:none}
.registration-admin .stat b{font-size:2.4rem;letter-spacing:-.04em}.registration-admin .filters{background:#eff4ea;padding:16px;border:1px solid #dce5d2}
.registration-admin .tablewrap{box-shadow:0 8px 26px #203c2c08}.registration-admin table.reg th{background:#e4eddb;color:#395331}
.registration-admin table.reg tr.sel td{background:#e9f0e1}.registration-admin .empty{background:#f3f7ed}
/* Registration retains its white logo header and gets an editorial form rhythm. */
.registration-form .head{padding:30px 24px 25px}.registration-form h1{color:#173e2c}.registration-form .eyebrow{color:#80602b}.registration-form .secure{color:#42633a;background:#eef4e7;border:1px solid #d1dfc4}
.registration-form main{margin-top:22px}.registration-form .intro{background:#edf4e7;border:1px solid #dae5cf;border-radius:12px;padding:20px 24px;gap:24px}
.registration-form .cap{border-left-color:#bfcea9}.registration-form .panel{border:1px solid #dce4d5;box-shadow:0 8px 30px #253e2408;padding:30px 32px}
.registration-form .panel h2{padding-bottom:18px;border-bottom:1px solid #e5eadf}.registration-form .panel h2 span{background:#163f30;color:#eed3a0;border:0;width:34px;height:34px}
.registration-form .cat{background:#f7f9f2}.registration-form .cat:has(input:checked){background:#e4efdb;box-shadow:inset 4px 0 #194d31;border-color:#578143}
.registration-form .choice label,.registration-form .check{background:#f5f8f0}.registration-form .success{background:#edf5e5}
.gate{background:#fff}.gate form{box-shadow:0 20px 65px #1f3e2a12;border-color:#d4dfca}.gate img{border-radius:0}
/* Broadcast uses a white stage with a deep green question focal point. */
body.public-display .stage,body.public-display .notice{background:#fff;color:#20332b}
.public-display .stage-head,.public-display .stage-foot{background:#fff;color:#20332b;border-color:#d2dfc8;box-shadow:none}
.public-display .stage-head :is(h1,h1 small,.day),.public-display .ident :is(strong,em,small){color:#173f2e}
.public-display .qband{background:linear-gradient(115deg,#123e34,#214b37);border:1px solid #567b51;border-top:3px solid var(--category-metal,#b99a62);box-shadow:0 12px 28px #203d2814}
body.public-display .qband .qmeta{color:#e0ce9f!important}.public-display .qband p{color:#fff9ed;font-weight:400}
.public-display .plaque{background:#f0f5e9;color:#193b2c;border-color:#ccdac1;box-shadow:none}.public-display .plaque b{background:#dfead5;color:#2b5035;border:0}
.public-display .ladder{background:#f3f6ed;border-color:#d7e0c9;box-shadow:none}.public-display .rung{color:#49663d}.public-display .rung.mile:not(.now):not(.won){background:#e9e2c9;color:#735822}
.public-display .rung.now{background:#214c3a;color:#fff}.public-display .rung.now b{color:#ead299}.public-display .rung.won{background:#dce8d1;color:#335529}
.public-display .clock{background:#153e30;color:#f3dfa9;border-color:#bba46c;padding:8px 14px}.public-display .clock.low{background:#862f27;color:#fff}
.public-display .life{background:#f1f5ea;color:#68815b}.public-display .life.on{background:#e7eeda;color:#345a31;border-color:#b2c495}
.public-display .notice>div{background:#f2f6eb;border:1px solid #d6e1c8;border-top:4px solid #b99a62;box-shadow:0 15px 50px #213e2610;border-radius:18px}.public-display .notice h2{color:#173f2e}.public-display .notice p{color:#567248}
@media(max-width:700px){.simple-launch{padding:25px 20px}.simple-brand{gap:18px;align-items:center}.simple-brand img{width:125px}.simple-brand h1{font-size:2rem}.portal-intro{font-size:.82rem}.simple-launch .launch-primary{grid-template-columns:1fr}.simple-launch .launch-primary .launch-card{padding:26px;min-height:250px}.simple-launch .launch-grid.compact .launch-card{display:flex;gap:10px;align-items:flex-start}.simple-launch .launch-grid.compact .launch-card em{position:static}.simple-launch h2>span{display:none}.registration-form .panel{padding:24px 20px}.registration-form .intro{padding:20px}.control-room .tool-block{padding:16px}}

/* Control room production desk refinement. */
.control-room .control-head{height:auto;min-height:88px;padding:18px 30px;border-bottom:1px solid #e0e7dc;box-shadow:none}
.control-room .control-logo{gap:16px;text-decoration:none}.control-room .control-logo img{width:62px;height:54px;object-fit:contain;background:#fff;padding:0}
.control-room .control-logo>span{font:normal 1.65rem var(--serif);letter-spacing:-.025em}
.control-room .control-logo small{display:block;font:500 .7rem var(--sans);letter-spacing:.06em;color:#758273;margin-top:5px}
.control-room .live-summary{border:1px solid #cbdbc5;background:#eef5e9;padding:10px 16px;border-radius:8px;box-shadow:none;font-size:.85rem}
.control-room main{max-width:1520px;padding:24px 30px}
.control-room .category-switch{padding:0;margin:0 0 24px;gap:18px}
.control-room .category-switch button{position:relative;gap:17px;text-align:left;padding:20px 24px;min-height:92px;border-radius:12px}
.control-room .category-switch button b{font:600 .75rem var(--sans);width:36px;height:36px;flex-shrink:0;border-radius:8px}
.control-room .category-switch button span{font-size:1rem;font-weight:650;line-height:1.3}
.control-room .category-switch button small{display:block;font-size:.74rem;font-weight:400;opacity:.8;margin-top:6px}
.control-room .category-switch button.selected{outline-offset:4px;outline-width:2px}
.control-room #stream-options button.active{box-shadow:inset 0 -4px #e4c789!important;border-bottom-color:#e4c789!important}
body.control-room .category-switch button[data-category]{border-bottom-color:#b99a62!important}
body.control-room .category-switch button[data-category="bayan"]{border-bottom-color:#aab3bd!important}
.control-room .live-tools{margin:0 0 24px;display:grid;grid-template-columns:1.12fr 1fr 1fr;grid-template-rows:auto auto;gap:14px}
.control-room .tool-block{padding:20px 22px;border-radius:12px;border:1px solid #dfe6d9;background:#f7f9f4;box-shadow:none}
.control-room .tool-label{font-size:.69rem;letter-spacing:.12em;font-weight:750;margin-bottom:14px;color:#526749}
.control-room .screen-block{grid-column:1;grid-row:1/3;background:#edf4e7;border:1px solid #d2e0c6}
.control-room .screen-block .tool-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.control-room #take-live{grid-column:1/-1;min-height:50px;margin-bottom:3px;font-size:.9rem}
.control-room .message-block{grid-column:2/4;grid-row:1;background:#fff}
.control-room .message-block .tool-row{flex-wrap:nowrap;gap:10px}.control-room .message-block input{min-width:0;min-height:45px;font-size:.875rem}
.control-room .message-block button{flex-shrink:0}
.control-room .stream-block{grid-column:2;grid-row:2;background:#f0f4f9;border-color:#dce4ed}
.control-room .stream-block small{font-size:.72rem;line-height:1.45;margin-top:10px}
.control-room .utility-block{grid-column:3;grid-row:2;background:#fff}
.control-room .utility-block .tool-row{display:grid;grid-template-columns:1fr;gap:9px}
.control-room .tool-row button,.control-room .button-link{border-radius:7px;padding:10px 13px;font-size:.8rem;min-height:42px}
.control-room .control-error:empty{display:none}
.registration-form .intro{grid-template-columns:minmax(0,1fr)}
html body .bar nav a.home-link,html body .control-head-links a.home-link{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:11px 18px;background:#235b8c!important;color:#fff!important;border:1px solid #235b8c!important;border-radius:11px;text-decoration:none;font:650 .85rem var(--sans);line-height:1.2;box-shadow:0 4px 12px #235b8c20;white-space:nowrap}
html body a.home-link svg{flex-shrink:0;color:#fff}
html body .bar nav a.home-link:hover,html body .control-head-links a.home-link:hover{background:#19456d!important;border-color:#19456d!important;box-shadow:0 6px 16px #235b8c30}
.control-room .recovery-help{font-size:.8rem;line-height:1.6;color:#61715d;margin:14px 0 0}
.simple-launch section[aria-label="Category operator screens"] .launch-card{padding-top:50px;min-height:145px}
.control-room .console-title{padding:17px 25px;background:#edf3e7;border-bottom:1px solid #d4e0c9;gap:18px}
.control-room .console-title h1{font-size:1.65rem;letter-spacing:-.02em}.control-room #console-kicker{font-size:.65rem;letter-spacing:.14em;color:#7b6437}
.control-room .console-title>a{border-radius:7px;background:#fff;font-size:.76rem;padding:10px 14px}
.control-room .category-console{box-shadow:0 8px 30px #29402b08;border:1px solid #d9e3d0}
@media(max-width:1050px){.control-room .live-tools{grid-template-columns:1fr 1fr}.control-room .screen-block{grid-column:1;grid-row:1/3}.control-room .message-block{grid-column:2;grid-row:1}.control-room .stream-block{grid-column:2;grid-row:2}.control-room .utility-block{grid-column:1/3;grid-row:3}.control-room .utility-block .tool-row{grid-template-columns:1fr 1fr}.control-room .message-block .tool-row{flex-wrap:wrap}.control-room .message-block input{flex-basis:100%}.control-room .category-switch button{padding:18px 16px;gap:10px}}
@media(max-width:700px){.control-room .control-head{padding:17px 20px;gap:14px}.control-room .control-logo>span{font-size:1.45rem}.control-room main{padding:22px 18px}.control-room .category-switch{gap:12px}.control-room .category-switch button{min-height:78px;padding:16px 20px}.control-room .live-tools{display:flex;flex-direction:column;gap:12px}.control-room .tool-block{padding:20px}.control-room .utility-block .tool-row{grid-template-columns:1fr}.control-room .message-block .tool-row{flex-wrap:nowrap}.control-room .message-block input{flex-basis:auto}.control-room .console-title{padding:17px;align-items:center}.control-room .console-title h1{font-size:1.4rem}.control-room .console-title>a{max-width:115px;text-align:center}.control-room .control-head-links{margin-left:0}.control-room .live-summary{width:100%}}

/* One broadcast output now serves both the masjid projector and OBS. Ceremony
   direction lives beside the programme controls and changes that same output. */
.control-room .ceremony-block{grid-column:1/-1;grid-row:3;background:linear-gradient(135deg,#fffdf8,#f3eee1);border-color:#d8c8a7;border-top:3px solid #b99a62}
.ceremony-tool-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}
.ceremony-tool-head .tool-label{display:block;margin-bottom:7px}.ceremony-tool-head strong{display:block;font:normal 1.45rem var(--serif);color:#173f31}
.ceremony-scene-actions{display:flex;gap:8px;flex-wrap:wrap}.ceremony-scene-actions button.active{background:#173f31;color:#fff;border-color:#173f31;box-shadow:inset 0 -3px #c7a96d}
.ceremony-fields{display:grid;grid-template-columns:1fr 1.5fr 1fr 1fr auto;gap:11px;align-items:end;padding:17px;border:1px solid #ded3bc;border-radius:11px;background:#fff}
.ceremony-fields label{display:grid;gap:7px;font-size:.68rem;font-weight:750;letter-spacing:.06em;color:#596658;text-transform:uppercase}
.ceremony-fields input{width:100%;min-width:0;min-height:43px;text-transform:none;letter-spacing:0;font-weight:500}
.ceremony-fields #ceremony-update{min-height:43px;white-space:nowrap}
.awards-queue{margin-top:16px;padding:18px;border:1px solid #ded3bc;border-radius:11px;background:#fff}
.awards-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.awards-head .tool-label{display:block;margin-bottom:5px}.awards-head strong{font:normal 1.25rem var(--serif);color:#173f31}
.awards-count{padding:7px 10px;border-radius:999px;background:#eef3e8;color:#35583c;font-size:.7rem;font-weight:800;white-space:nowrap}
.awards-help{margin:10px 0 14px;max-width:850px;color:#68746a;font-size:.78rem;line-height:1.55}
.awards-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:310px;overflow:auto;padding:2px}
.awards-list>p{grid-column:1/-1;margin:0;padding:18px;border:1px dashed #d8ddd4;border-radius:9px;color:#778078;text-align:center;font-size:.8rem}
.award-row{display:grid!important;grid-template-columns:auto 1fr!important;grid-template-rows:auto auto!important;gap:3px 10px!important;min-width:0!important;padding:12px!important;text-align:left!important;background:#fafaf7!important;border:1px solid #e0e4dc!important;border-radius:9px!important;color:#243a2e!important}
.award-row .award-place{grid-row:1/3;align-self:center;min-width:78px;color:#8a6a2e;font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.award-row strong{font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.award-row small{display:block;color:#69746b;font-size:.66rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.award-row.selected{background:#edf4e7!important;border-color:#73916c!important;box-shadow:inset 3px 0 #173f31!important}
.awards-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:13px}.awards-actions button{min-height:42px}.awards-actions button:disabled{opacity:.42;cursor:not-allowed}
body.female-competition.control-room{background:radial-gradient(circle at 90% 0,#f8e5ee 0,transparent 34%),#f8f5f6}
body.female-competition.control-room .live-summary{background:#f9eaf1;border-color:#e4bfd1;color:#722447}
body.female-competition.control-room .category-switch button{background:linear-gradient(145deg,#8f2d5a,#651d40)!important;border-color:#a94c75!important;border-bottom-color:#d79ab6!important}
body.female-competition.control-room .category-switch button.selected{outline-color:#c85b89!important}
body.female-competition.control-room .screen-block{background:#f8e8ef;border-color:#e5bfd0}
body.female-competition.control-room .ceremony-block{background:linear-gradient(135deg,#fffafc,#f5e4ec);border-color:#dfb8ca;border-top-color:#a43b69}
body.female-competition.control-room .ceremony-tool-head strong{color:#702044}
body.female-competition.control-room .ceremony-scene-actions button.active{background:#7b254d;border-color:#7b254d;box-shadow:inset 0 -3px #deb0c2}
body.female-competition.control-room .ceremony-fields{border-color:#e5c8d5;background:#fffdfd}
body.female-competition.control-room .awards-queue{border-color:#e5c8d5;background:#fffdfd}
body.female-competition.control-room .awards-head strong{color:#702044}
body.female-competition.control-room .awards-count{background:#f5e3eb;color:#7a294d}
body.female-competition.control-room .award-row.selected{background:#f8e8ef!important;border-color:#c77799!important;box-shadow:inset 3px 0 #7b254d!important}

/* Female broadcast identity: cream remains behind the transparent logo while
   deep berry and plum carry the live-stage hierarchy. */
body.public-display.female-competition .stage{background:
  linear-gradient(90deg,rgba(255,250,246,.83),rgba(255,253,250,.95) 26%,rgba(255,253,250,.95) 74%,rgba(255,250,246,.83)),
  url('/female-broadcast-bg.png') center/cover no-repeat;color:#442031}
body.public-display.female-competition .stage-head{background:rgba(255,253,249,.96);border-bottom-color:#b45a80;box-shadow:0 12px 34px -27px #51142f}
body.public-display.female-competition .stage-head :is(h1,h1 small,.day){color:#672142}
body.public-display.female-competition .qband{background:linear-gradient(120deg,#6f2147,#9e3c68);border-color:#c67699;border-top-color:#d4b06e;box-shadow:0 18px 36px rgba(71,18,43,.18)}
body.public-display.female-competition .plaque{background:#fff8fb;color:#4f1d34;border-color:#e2becf}
body.public-display.female-competition .plaque b{background:#f2dbe5;color:#76264b}
body.public-display.female-competition .plaque.sel{background:#ead4a8;color:#3f2230;border-color:#c3a05e}
body.public-display.female-competition .ladder{background:rgba(255,248,251,.94);border-color:#dfbdcd}
body.public-display.female-competition .rung.now{background:#7d2a50;color:#fff}
body.public-display.female-competition .rung.won{background:#efdce5;color:#6f2848}
body.public-display.female-competition .stage-foot{background:rgba(105,30,65,.97);border-color:#c5966b;color:#fff}
body.public-display.female-competition .ident :is(strong,em,small){color:#fff}
body.public-display.female-competition .clock{background:#4f1733;color:#f4d99e;border-color:#d2ad68}
body.public-display.female-competition .life{background:#f3dce6;color:#71284a}.public-display.female-competition .life.on{background:#fff4f8;color:#6d2346;border-color:#dbaac0}

@media(max-width:1100px){.ceremony-fields{grid-template-columns:1fr 1fr}.ceremony-fields #ceremony-update{grid-column:1/-1}.ceremony-tool-head{align-items:flex-start;flex-direction:column}.awards-list{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.awards-head{align-items:flex-start;flex-direction:column}.awards-list{grid-template-columns:1fr}.awards-actions{display:grid;grid-template-columns:1fr 1fr}.awards-actions #award-show{grid-column:1/-1;grid-row:1}.award-row .award-place{min-width:70px}}

/* Active Forty Ahadith text on the shared masjid/OBS output. */
.public-display .hadith-live-card{display:flex!important;flex-direction:column;justify-content:center;min-height:0!important;padding:clamp(18px,3vh,42px) clamp(24px,4vw,70px)!important;overflow:hidden}
.public-display .hadith-live-arabic{font-family:var(--arabic);font-size:clamp(1.65rem,3.25vw,4.25rem);font-weight:500;line-height:1.75;text-align:center;color:#fffdf5;text-wrap:balance;max-width:24em;margin:0 auto}
.public-display .hadith-live-translation{font-family:var(--serif)!important;font-size:clamp(1rem,1.65vw,2rem)!important;font-weight:400!important;line-height:1.42!important;max-width:58em!important;margin:clamp(12px,2vh,26px) auto 0!important;padding-top:clamp(10px,1.6vh,22px);border-top:1px solid rgba(224,206,159,.45);color:#fff9ed!important;text-wrap:balance}
.public-display .hadith-live-narrator{margin-top:clamp(8px,1.2vh,16px);font-size:clamp(.68rem,.9vw,1rem);color:#e0ce9f;letter-spacing:.04em}
.public-display .hadith-live-missing{font:500 clamp(1.3rem,2.5vw,3rem) var(--serif);color:#fff9ed}
body.public-display.female-competition .hadith-live-arabic,body.public-display.female-competition .hadith-live-translation{color:#fff!important}

/* Brand asset — the supplied logos are now true transparent PNGs, so the white
   plate, padding and radius that previously stood in for a cut-out are dropped.
   Appended deliberately; no earlier rule is modified. */
:is(.stage-head,.notice,.slate,.simple-brand,.control-logo,.gate,.head) img,
.console-workspace .bar img,
.public-display :is(.stage-head,.notice) img,
.holding-display .slate img,
.control-room .control-logo img,
.overlay .lower img{
  background:transparent!important;
  padding:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

/* Boys / female programme split. The canvas stays white so the transparent
   event mark is seamless; colour identifies the selected programme. */
.programme-choice{margin:0;min-height:100vh;background:#fff;color:#193027;font-family:var(--sans);display:grid;place-items:center;padding:36px 22px}
.programme-choice>main{width:min(1060px,100%)}
.programme-choice-brand{display:flex;align-items:center;justify-content:center;gap:28px;margin:0 auto 35px;max-width:820px}
.programme-choice-brand img{width:190px;height:135px;object-fit:contain}
.programme-choice-brand>div{padding-left:27px;border-left:1px solid #dbcba9}
.programme-choice-brand span{font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#98743a}
.programme-choice-brand h1{font:normal clamp(2.2rem,5vw,3.8rem)/1 var(--serif);letter-spacing:-.04em;color:#173e2c;margin:8px 0 10px}
.programme-choice-brand p{margin:0;color:#66736c;line-height:1.6;max-width:570px}
.programme-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.programme-choice-card{position:relative;overflow:hidden;isolation:isolate;min-height:330px;padding:31px;border-radius:22px;color:#fff;text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 18px 46px #182f261c;transition:transform .2s,box-shadow .2s}
.programme-choice-card::after{content:"";position:absolute;z-index:-1;width:260px;height:260px;border-radius:50%;top:-110px;right:-80px;background:#ffffff12}
.programme-choice-card.boys{background:linear-gradient(145deg,#286da5,#16466f)}
.programme-choice-card.female{background:linear-gradient(145deg,#a83d70,#702044)}
.programme-choice-card:hover{transform:translateY(-4px);box-shadow:0 25px 55px #182f2630}
.programme-choice-card:focus-visible{outline:4px solid #d6b777;outline-offset:4px}
.programme-choice-kicker{font-size:.68rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;opacity:.82}
.programme-choice-mark{display:grid;place-items:center;width:46px;height:46px;margin:35px 0 18px;border-radius:12px;background:#ffffff17;border:1px solid #ffffff2e;font-weight:800}
.programme-choice-card h2{font:normal clamp(2rem,4vw,3rem)/1 var(--serif);letter-spacing:-.03em;margin:0 0 11px;color:#fff}
.programme-choice-card p{margin:0;color:#ffffffcf;line-height:1.55;max-width:390px}
.programme-choice-card>strong{display:flex;justify-content:space-between;align-items:center;margin-top:28px;padding-top:19px;border-top:1px solid #ffffff35;font-size:.9rem}
.programme-choice-note{text-align:center;margin:27px 0 0;color:#7a857f;font-size:.8rem}
.competition-portal{--competition-accent:#286da5;--competition-dark:#16466f;--competition-soft:#edf4fb;background:#fff!important}
.competition-portal.female-competition{--competition-accent:#9a3262;--competition-dark:#702044;--competition-soft:#fbf0f5}
.competition-back{display:inline-flex;margin-bottom:22px;padding:9px 14px;border:1px solid #dce3df;border-radius:999px;background:#fff;color:var(--competition-dark);font-size:.78rem;font-weight:750;text-decoration:none}
.competition-back:hover{background:var(--competition-accent);border-color:var(--competition-accent);color:#fff}
.competition-identity{display:flex;align-items:center;gap:12px;margin:3px 0 22px;padding:13px 16px;background:var(--competition-soft);border:1px solid color-mix(in srgb,var(--competition-accent) 24%,#fff);border-left:4px solid var(--competition-accent);border-radius:10px;color:var(--competition-dark)}
.competition-identity>span{display:grid;place-items:center;width:31px;height:31px;border-radius:8px;background:var(--competition-accent);color:#fff;font-weight:800}
.competition-identity strong{font-size:.9rem}.competition-identity small{margin-left:auto;color:var(--competition-dark);opacity:.72;text-transform:uppercase;letter-spacing:.11em;font-size:.62rem;font-weight:800}
.competition-portal .simple-brand h1{color:var(--competition-dark)}
.competition-portal .launch-primary .launch-card.main{background:var(--competition-dark)}
.competition-portal .launch-card:hover{border-color:var(--competition-accent)}
.competition-portal .launch-card .launch-icon{color:var(--competition-dark);background:var(--competition-soft)}
.boys-competition{--workspace-accent:#286da5;--workspace-soft:#edf4fb}.female-competition{--workspace-accent:#9a3262;--workspace-soft:#fbf0f5}
.active-competition-badge{display:inline-flex;align-items:center;min-height:34px;padding:7px 11px;margin-left:auto;border-radius:8px;background:var(--workspace-soft,#edf4fb);color:var(--workspace-accent,#286da5);border:1px solid color-mix(in srgb,var(--workspace-accent,#286da5) 25%,#fff);font-size:.7rem;font-weight:800;letter-spacing:.04em;white-space:nowrap}
#competitionMismatch{position:sticky;top:0;z-index:9998;padding:12px 20px;background:#fff2cf;color:#66490e;border-bottom:2px solid #c59532;text-align:center;font-size:.82rem;line-height:1.45}
body.female-competition :is(.bar nav a.home-link,.control-head-links a.home-link){background:#8d2856!important;border-color:#8d2856!important}
body.female-competition :is(.bar nav a.home-link,.control-head-links a.home-link):hover{background:#641c3f!important;border-color:#641c3f!important}
@media(max-width:720px){.programme-choice{padding:25px 17px}.programme-choice-brand{flex-direction:column;text-align:center;gap:14px}.programme-choice-brand img{width:160px;height:105px}.programme-choice-brand>div{padding:0;border:0}.programme-choice-grid{grid-template-columns:1fr;gap:15px}.programme-choice-card{min-height:270px;padding:25px}.competition-back{margin-bottom:16px}.competition-identity small{display:none}.active-competition-badge{width:100%;justify-content:center;order:4;margin:0}}
