@font-face{font-family:'Press Start 2P';src:url('/assets/fonts/PressStart2P.ttf') format('truetype');font-display:block}
:root{--px:'Press Start 2P','Courier New',monospace;--bone:#d8cfae;--lamp:#c9b072;--ochre:#7d6a3f;--rust:#5a3d24;--ink:#0a0b09;--char:#151713;--grime:#23251d;--conc:#3a3b30;--dim:#a39f88;--alarm:#a8342a;--hot:#c9695a}
[data-owner="0"]{--owner:#7fa6b8}[data-owner="1"]{--owner:#b8734f}[data-owner="2"]{--owner:#9c8fb5}[data-owner="3"]{--owner:#7fa88a}[data-owner="4"]{--owner:#b88aa2}[data-owner="5"]{--owner:#c9b072}[data-owner="6"]{--owner:#7cadb0}[data-owner="7"]{--owner:#a3b36f}[data-owner="8"]{--owner:#b89a7a}[data-owner="9"]{--owner:#9a8ab8}
main.theatre{margin:0;padding:0;max-width:none}
.theatre{height:100dvh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#050504}
.tower-viewport{position:relative;width:min(100vw,calc(100dvh * 16 / 9));aspect-ratio:16/9;flex-shrink:0;overflow:hidden;background:var(--ink)}
.tower-scene{position:absolute;width:1920px;height:1080px;transform-origin:top left;overflow:hidden;color:var(--bone);font-family:var(--px);background:var(--ink) url('/assets/pix/wall.png') 0 0/345px 345px;image-rendering:pixelated}
.tower-scene img,.tower-scene .sprite,.tower-scene .room,.tower-scene .lamp{image-rendering:pixelated}
.tower-scene::before{content:'';position:absolute;inset:0;background:#0a0b09d9;z-index:0}

/* ---- icons: pixel bitmaps used as masks so they take any palette colour ---- */
.game-icon{display:inline-block;flex:0 0 auto;width:27px;height:24px;background-color:var(--ic,var(--bone));-webkit-mask:var(--m) no-repeat center/contain;mask:var(--m) no-repeat center/contain;vertical-align:middle}
.game-icon.heart{--m:url(/assets/pix/icons/heart.png);--ic:#b5473b}
.game-icon.brain{--m:url(/assets/pix/icons/brain.png);--ic:#8fa27a}
.game-icon.bowl{--m:url(/assets/pix/icons/bowl.png);--ic:var(--lamp)}
.game-icon.skull{--m:url(/assets/pix/icons/skull.png)}
.game-icon.message{--m:url(/assets/pix/icons/message.png);width:30px}
.game-icon.video-off{--m:url(/assets/pix/icons/video-off.png);width:33px;--ic:#4a4b3c}
.vitals{display:grid;gap:3px}.vital{display:grid;grid-template-columns:27px 1fr 40px;align-items:center;gap:6px}.vital>span{font:11px var(--px);color:var(--dim)}.vital>b{font:18px var(--px);text-align:right;font-weight:400}
.vital.critical>b{color:var(--hot);animation:crit 1.1s steps(1) infinite}
@keyframes crit{50%{opacity:.35}}

/* ---- shaft ---- */
.shaft{position:absolute;left:809px;width:302px;top:236px;height:778px;z-index:1;background:linear-gradient(#0a0b09aa,#0a0b09cc),url('/assets/pix/wall.png') 0 0/345px 345px;box-shadow:inset 0 0 0 2px #050504}
.shaft .rail{position:absolute;top:0;bottom:0;width:45px;background:url('/assets/pix/rail.png') 0 0/45px 275px repeat-y;filter:brightness(.55);opacity:.9}.shaft .rail.l{left:-4px}.shaft .rail.r{right:-4px}
.shaft .fog{position:absolute;inset:0;background:linear-gradient(to bottom,#0a0b0900 0,#0a0b0900 40%,#0a0b09d0 100%)}
.shaft-label{position:absolute;left:905px;width:110px;height:70px;z-index:3;pointer-events:none}.shaft-label img{width:110px;height:70px;display:block;opacity:.9}.shaft-label b{position:absolute;left:12px;right:12px;top:22px;height:34px;display:flex;align-items:center;justify-content:center;font:22px/1 var(--px);font-weight:400;color:#a9a58c;text-shadow:2px 2px 0 #000;padding-top:2px;box-sizing:border-box}.shaft-label.current b{color:var(--lamp)}

/* ---- header ---- */
.tower-brand{position:absolute;left:30px;top:44px;z-index:6}.tower-brand .wordmark{display:block;width:600px;height:104px}.tower-brand>span{display:block;margin:10px 0 0 12px;font:11px var(--px);letter-spacing:3px;color:var(--dim)}
.presenter{position:absolute;left:760px;top:6px;width:400px;height:225px;z-index:6}.presenter>.camera{height:100%;width:100%}.presenter-label{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);background:#0a0b09f0;border:2px solid var(--conc);padding:6px 14px;font:12px var(--px);letter-spacing:2px;color:var(--bone);z-index:5}
.tower-hud{position:absolute;left:1190px;top:18px;width:716px;height:176px;z-index:6;display:grid;grid-template-columns:1.25fr 1fr .95fr;align-items:center;padding:6px 26px;border:18px solid transparent;border-image:url('/assets/pix/hud-plate.png') 18 fill/18px stretch;image-rendering:pixelated;box-sizing:border-box}
.tower-hud small{display:block;font:11px var(--px);color:var(--dim);letter-spacing:1px}.day-hud b{display:block;font:44px var(--px);font-weight:400;color:var(--bone);margin:6px 0 4px}.day-hud em{display:block;font:11px/1.4 var(--px);font-style:normal;color:var(--lamp)}
.alive-hud{text-align:center;border-left:2px solid var(--conc);border-right:2px solid var(--conc);padding:2px 0}.alive-hud b{display:block;font:40px var(--px);font-weight:400;margin-top:10px;color:var(--bone)}.alive-hud b span{font-size:14px;color:var(--dim);margin-left:6px}
.food-hud{display:grid;grid-template-columns:auto auto;justify-content:center;align-items:center;gap:2px 10px}.food-hud .game-icon{grid-row:span 2;width:45px;height:40px}.food-hud b{font:40px var(--px);font-weight:400;color:var(--lamp)}.food-hud small{margin-top:2px;grid-column:2}
.public-order{position:absolute;left:1190px;top:200px;width:716px;z-index:6;background:#0a0b09f0;border:2px solid var(--conc);padding:6px 10px;font:10px/1.5 var(--px);color:var(--bone);white-space:nowrap;overflow:hidden;box-sizing:border-box;text-overflow:ellipsis}.public-order>span{color:var(--lamp);margin-right:10px}
.beam-timer{position:absolute;left:40px;top:202px;z-index:7;padding:2px 8px;background:#0a0b09;font:11px var(--px);color:var(--lamp)}

/* ---- floors ---- */
.tower-person,.closed-floor,.empty-room{position:absolute;height:150px}
.tower-person{width:795px;z-index:2}.tower-person.left{left:14px}.tower-person.right{left:1111px}
.closed-floor,.empty-room{z-index:4;display:flex;align-items:center;justify-content:center;background:#0a0b09e6;font:13px var(--px);letter-spacing:4px;color:#5d5c48}
.closed-floor{left:14px;width:1892px}.empty-room{left:1111px;width:795px}
.tower-person[data-floor="0"],.closed-floor[data-floor="0"],.empty-room[data-floor="0"]{top:244px}.shaft-label[data-floor="0"]{top:284px}
.tower-person[data-floor="1"],.closed-floor[data-floor="1"],.empty-room[data-floor="1"]{top:396px}.shaft-label[data-floor="1"]{top:436px}
.tower-person[data-floor="2"],.closed-floor[data-floor="2"],.empty-room[data-floor="2"]{top:548px}.shaft-label[data-floor="2"]{top:588px}
.tower-person[data-floor="3"],.closed-floor[data-floor="3"],.empty-room[data-floor="3"]{top:700px}.shaft-label[data-floor="3"]{top:740px}
.tower-person[data-floor="4"],.closed-floor[data-floor="4"],.empty-room[data-floor="4"]{top:852px}.shaft-label[data-floor="4"]{top:892px}
.room{position:absolute;top:0;width:520px;height:150px;background-size:520px 150px;background-repeat:no-repeat;overflow:hidden;box-shadow:0 0 0 2px #050504}
.left .room{left:275px}.right .room{left:0;transform:scaleX(-1)}
.v-a{background-image:url('/assets/pix/room-a.png')}.v-b{background-image:url('/assets/pix/room-b.png')}.v-c{background-image:url('/assets/pix/room-c.png')}.v-dead{background-image:url('/assets/pix/room-dead.png')}

.tower-person .camera{position:absolute;top:0;width:267px;height:150px;aspect-ratio:auto;background:#050504;overflow:hidden}.tower-person.left .camera{left:0}.tower-person.right .camera{left:528px}
.camera::after{content:'';position:absolute;inset:0;border:12px solid transparent;border-image:url('/assets/pix/cam-frame.png') 20/12px stretch;image-rendering:pixelated;pointer-events:none;z-index:4}
.presenter .camera::after{border-width:18px;border-image-width:18px}
.camera video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.presenter video{object-fit:contain;background:#000}
.camera-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#050504}.camera-empty small{font:8px var(--px);letter-spacing:1px;color:#4a4b3c}
.camera.live .camera-empty{opacity:0}.presenter .camera-empty small{font-size:10px}.presenter .camera-empty .game-icon{transform:scale(1.4)}
.cam-name{display:none}
.player-data{position:absolute;top:3px;height:30px;width:415px;z-index:3;display:flex;align-items:center;gap:10px;padding:0 10px;box-sizing:border-box;border:8px solid transparent;border-image:url('/assets/pix/strip.png') 14 fill/8px stretch;image-rendering:pixelated;background-clip:padding-box}
.tower-person.left .player-data{left:373px}.tower-person.right .player-data{left:5px}
.name-line{display:flex;align-items:center;gap:7px;min-width:0;flex:0 1 112px}.name-line strong{font:13px var(--px);font-weight:400;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:100px;color:var(--bone)}.name-line small{font:8px var(--px);color:var(--lamp)}
.owner-dot{display:block;width:9px;height:9px;background:var(--owner);flex-shrink:0;box-shadow:0 0 0 2px #000}

.taking-food .name-line strong{color:var(--lamp)}
.is-me .camera{outline:3px solid var(--lamp);outline-offset:-3px}
.tower-person.eliminated .camera{filter:grayscale(1) brightness(.55)}.tower-person.eliminated .owner-dot{background:#4a4b3c}.tower-person.eliminated .name-line strong{color:#6d6b58}
.stamp{position:absolute;top:34px;width:236px;height:auto;z-index:5;pointer-events:none}.tower-person.left .stamp{left:16px}.tower-person.right .stamp{left:544px}

/* ---- silhouettes ---- */
.survivors{position:absolute;inset:0;z-index:4;pointer-events:none}
.survivor{position:absolute;width:128px;height:112px;transition:none}
.survivor .sprite{position:absolute;inset:0;display:block;background-repeat:no-repeat;background-size:896px 336px;transform-origin:50% 8%;will-change:transform,opacity;image-rendering:pixelated}.survivor .sprite.b{opacity:0}

.survivor[data-floor="0"]{top:279px}.survivor[data-floor="1"]{top:431px}.survivor[data-floor="2"]{top:583px}.survivor[data-floor="3"]{top:735px}.survivor[data-floor="4"]{top:887px}

/* ---- food slab ---- */
.food-lift{position:absolute;left:826px;width:269px;height:311px;z-index:5;pointer-events:none}
.food-lift[data-floor="0"]{top:231px}.food-lift[data-floor="1"]{top:383px}.food-lift[data-floor="2"]{top:535px}.food-lift[data-floor="3"]{top:687px}.food-lift[data-floor="4"]{top:839px}.food-lift.parked,.food-lift[data-floor="-1"]{top:-170px}
.food-lift .slab{position:absolute;inset:0;width:269px;height:311px;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 120px);mask-image:linear-gradient(to bottom,transparent 0,#000 120px)}
.food-lift.parked .slab{opacity:.8}
.slab-glow{display:none;position:absolute;left:-245px;top:-11px;width:760px;height:440px;background:url('/assets/light/slab-glow.png') 0 0/760px 440px no-repeat;mix-blend-mode:screen;animation:slabpulse 5s ease-in-out infinite}
.food-lift.has-food .slab-glow{display:block}
@keyframes slabpulse{0%,100%{opacity:.95}50%{opacity:.75}}

/* ---- bottom ticker + notices ---- */
.public-fact{position:absolute;left:289px;top:1014px;width:1342px;height:54px;z-index:6;display:flex;align-items:center;justify-content:center;gap:16px;padding:0 24px;box-sizing:border-box;border:8px solid transparent;border-image:url('/assets/pix/strip.png') 14 fill/8px stretch;image-rendering:pixelated}
.public-fact p{margin:0;font:16px/1.35 var(--px);color:var(--bone);max-height:38px;overflow:hidden;text-align:center}.public-fact>.game-icon{width:30px;flex-shrink:0}
.obs-status{position:absolute;right:14px;bottom:8px;font:8px var(--px);color:#4a4b3c;z-index:7}
.scene-notice,.lobby-notice{position:absolute;left:690px;top:470px;width:540px;text-align:center;background:#0a0b09f5;border:4px solid var(--ochre);padding:28px;z-index:25;font:24px/1.4 var(--px);box-shadow:0 0 0 4px #000,0 14px 50px #000c}
.scene-notice>span,.lobby-notice>span{display:block;font:12px/1.6 var(--px);color:var(--dim);margin-top:14px}
.scene-finale{position:absolute;left:560px;top:380px;width:800px;text-align:center;background:#0a0b09f8;border:4px solid var(--lamp);padding:50px 30px;z-index:25;box-shadow:0 0 0 4px #000,0 0 120px #000}
.scene-finale>span{font:14px var(--px);letter-spacing:5px;color:var(--lamp)}.scene-finale h1{font:56px var(--px);font-weight:400;color:var(--bone);margin:28px 0}.scene-finale p{font:13px/1.6 var(--px);color:var(--dim)}

/* ---- screen finish ---- */
.fx{position:absolute;inset:0;pointer-events:none;z-index:1}
.fx.vignette{background:url('/assets/light/vignette.png') 0 0/1920px 1080px no-repeat}
.fx.scan{background:url('/assets/light/scan.png') 0 0/4px 8px;opacity:.55}
.fx.grain{background:url('/assets/light/grain.png') 0 0/256px 256px;opacity:.55;animation:grain 1s steps(5) infinite}
@keyframes grain{0%{background-position:0 0}20%{background-position:-64px 32px}40%{background-position:48px -96px}60%{background-position:-120px -40px}80%{background-position:90px 70px}100%{background-position:0 0}}
.is-paused .room,.is-paused .lamp,.is-paused .slab-glow,.is-paused .fx.grain{animation-play-state:paused}

/* GM roster and shared bits that used to live in the old facade rules */
.local-roster{display:flex;gap:8px;flex-wrap:wrap}.local-entrance{margin-top:0}
.roster-row .vitals{max-width:260px;padding:10px 0}.roster-row .vital{grid-template-columns:24px 1fr 40px}
.gm-layout .tower-viewport{width:100%;height:auto;aspect-ratio:16/9;margin-bottom:25px}.gm-layout .tower-scene .camera-empty small{display:none}
.screen-login{background:#0a0b09 url('/assets/pix/wall.png') 0 0/345px 345px fixed}

/* wrongness in the dark */
.shaft .hand,
.shaft .hand{--m:url(/assets/pix/icons/hand.png);left:62px;top:335px;width:27px;height:27px;opacity:.16;transform:rotate(-8deg)}
.shaft .watcher{--m:url(/assets/pix/icons/watcher.png);left:138px;top:716px;width:21px;height:45px;opacity:.22;animation:watch 9s steps(1) infinite}
@keyframes watch{0%,60%{opacity:.22}61%,64%{opacity:0}65%,100%{opacity:.22}}

.fx.grain{opacity:.32}.fx.scan{opacity:.4}

/* headings use the pixel face too */
:root{--display:var(--px)}
h1{font-size:24px;line-height:1.5}h2{font-size:16px;line-height:1.6}.login h1{font-size:22px}.brand{font-size:18px;letter-spacing:3px}.player-modal .my-card h1{font-size:20px}.player-modal .modal-top h2{font-size:15px}.food-big{font-size:40px}.player-modal .food-big{font-size:34px}.player-modal .food-number{font-size:16px}.modal-top h2{font-size:15px}

/* film finish lives on the art only; webcams, text and plates stay clean */
.room::before{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;background:url('/assets/light/scan.png') 0 0/4px 8px,url('/assets/light/grain.png') 0 0/256px 256px;opacity:.5;animation:grain 1s steps(5) infinite}

.fx.vignette{opacity:.8}

/* ---- stats in the tower: icon + number only, native-size colour bitmaps ---- */
.tower-scene .vitals{display:flex;gap:12px;margin-left:auto;align-items:center}
.tower-scene .vital{display:flex;align-items:center;gap:5px}
.tower-scene .vital>span{display:none}
.tower-scene .vital>b{font:17px var(--px);min-width:26px;text-align:left}
.tower-scene .vital .game-icon{-webkit-mask:none;mask:none;background:var(--img) no-repeat center/contain;image-rendering:pixelated;width:18px;height:16px}
.tower-scene .vital .game-icon.heart{--img:url(/assets/pix/icons/heart-c2.png)}
.tower-scene .vital .game-icon.brain{--img:url(/assets/pix/icons/brain-c2.png);width:24px;height:20px}
.tower-scene .vital .game-icon.bowl{--img:url(/assets/pix/icons/bowl-c2.png)}
.tower-scene .food-hud .game-icon.bowl{--img:url(/assets/pix/icons/bowl-c2.png);-webkit-mask:none;mask:none;background:var(--img) no-repeat center/contain;image-rendering:pixelated;width:36px;height:32px}

/* ---- lamps: real light. The room is dark except where the bulb reaches; contacts failing make it go black ---- */
@property --L{syntax:'<number>';inherits:true;initial-value:1}
@property --by{syntax:'<length>';inherits:true;initial-value:-750px}
.room{--L:1;--B:1;--cut:0;--by:-750px}
.room .dark{position:absolute;inset:0;background:url('/assets/light/room-dark.png') 0 var(--by)/520px 900px no-repeat;pointer-events:none}
.room .lamp{position:absolute;inset:0;background:url('/assets/light/lamp-cone.png') 0 0/520px 150px no-repeat;mix-blend-mode:screen;opacity:calc(var(--L) * var(--B));pointer-events:none}
.room .bulb{position:absolute;left:248px;top:18px;width:40px;height:40px;background:url('/assets/light/bulb.png') 0 0/40px 40px no-repeat;mix-blend-mode:screen;opacity:calc(var(--L) * var(--B));pointer-events:none}
.room .cut{position:absolute;inset:0;background:#050504;opacity:var(--cut);pointer-events:none}

.room.v-dead{--L:0;--by:0px;--cut:.2}
/* One short contact failure per lamp every three minutes. Slots stay >=12s apart. */
.room.ok,.room.bad,.room.low{animation-duration:180s;animation-iteration-count:infinite;animation-timing-function:step-end}
.room.ok,.room.bad,.room.low{animation-name:lamp-sparse;--steadyL:1;--steadyBy:-750px}.room.low{--steadyL:.6;--steadyBy:-450px}
.room.o0{animation-delay:-17s}.room.o1{animation-delay:-83s}.room.o2{animation-delay:-131s}.room.o3{animation-delay:-43s}.room.o4{animation-delay:-169s}.room.o5{animation-delay:-101s}.room.o6{animation-delay:-59s}.room.o7{animation-delay:-149s}.room.o8{animation-delay:-119s}.room.o9{animation-delay:-5s}
@keyframes lamp-sparse{0%,99.399%,100%{--L:var(--steadyL);--by:var(--steadyBy)}99.40000%{--L:0;--by:0px}99.42222%{--L:var(--steadyL);--by:var(--steadyBy)}99.46111%{--L:0;--by:0px}99.48056%{--L:var(--steadyL);--by:var(--steadyBy)}99.54722%{--L:0;--by:0px}99.58056%{--L:var(--steadyL);--by:var(--steadyBy)}99.60556%{--L:0;--by:0px}99.62222%{--L:var(--steadyL);--by:var(--steadyBy)}99.73333%{--L:0;--by:0px}99.77778%{--L:var(--steadyL);--by:var(--steadyBy)}99.81111%{--L:0;--by:0px}99.82500%{--L:var(--steadyL);--by:var(--steadyBy)}}
.phase-night .room{--B:.55;--cut:.4}
.is-paused .room{animation-play-state:paused}
.room::before{z-index:2}

/* ---- ten different people (one sheet each) and the grabbable "me" ---- */
.survivor[data-owner="0"] .sprite{background-image:url('/assets/pix/chars/c01.png')}.survivor[data-owner="1"] .sprite{background-image:url('/assets/pix/chars/c02.png')}.survivor[data-owner="2"] .sprite{background-image:url('/assets/pix/chars/c03.png')}.survivor[data-owner="3"] .sprite{background-image:url('/assets/pix/chars/c04.png')}.survivor[data-owner="4"] .sprite{background-image:url('/assets/pix/chars/c05.png')}.survivor[data-owner="5"] .sprite{background-image:url('/assets/pix/chars/c06.png')}.survivor[data-owner="6"] .sprite{background-image:url('/assets/pix/chars/c07.png')}.survivor[data-owner="7"] .sprite{background-image:url('/assets/pix/chars/c08.png')}.survivor[data-owner="8"] .sprite{background-image:url('/assets/pix/chars/c09.png')}.survivor[data-owner="9"] .sprite{background-image:url('/assets/pix/chars/c10.png')}
.survivor.mine .hit{position:absolute;left:38px;top:10px;width:56px;height:98px;pointer-events:auto;cursor:grab;touch-action:none;z-index:2}
.survivor.held .hit{cursor:grabbing}
.survivor.held{z-index:6}

/* A dense banquet depletes into empty serving dishes. */
.food-dishes{position:absolute;inset:0;pointer-events:none}
.food-dish{position:absolute;width:56px;height:64px;image-rendering:pixelated}
.food-dish img{position:absolute;bottom:0;left:0;width:100%;image-rendering:pixelated}
.food-dish .empty-dish{height:22px}.food-dish .meal{height:64px}
.food-dish[data-fill="0"] .meal{display:none}.food-dish[data-fill="1"] .meal{height:28px}
.food-dish[data-fill="2"] .meal{clip-path:inset(12px 0 0 0)}
.food-dish:nth-child(1){left:17px;top:108px}.food-dish:nth-child(2){left:62px;top:108px}.food-dish:nth-child(3){left:107px;top:108px}.food-dish:nth-child(4){left:152px;top:108px}.food-dish:nth-child(5){left:197px;top:108px}
.food-dish:nth-child(6){left:9px;top:130px}.food-dish:nth-child(7){left:55px;top:130px}.food-dish:nth-child(8){left:101px;top:130px}.food-dish:nth-child(9){left:147px;top:130px}.food-dish:nth-child(10){left:193px;top:130px}
.food-dish:nth-child(11){left:0;top:151px}.food-dish:nth-child(12){left:43px;top:151px}.food-dish:nth-child(13){left:86px;top:151px}.food-dish:nth-child(14){left:129px;top:151px}.food-dish:nth-child(15){left:172px;top:151px}.food-dish:nth-child(16){left:215px;top:151px}

.event-context{padding:12px;border-left:2px solid var(--ochre);background:#11140f;color:var(--dim);font-size:14px;line-height:1.6}
@media (prefers-reduced-motion:reduce){.room.ok,.room.bad,.room.low{animation:none}.room.low{--L:.6;--by:-450px}}

.names-grid [hidden]{display:none!important}.roster-size{max-width:320px;margin:18px 0}.setup-summary{color:var(--bone);line-height:1.7;padding:12px 0}.setup select{font-size:18px}

.inactive-player .tower-viewport{width:100%;min-width:0}

.food-player{padding:12px 0;border-top:1px solid var(--conc)}.food-number.selected{background:var(--lamp);color:#151713;border-color:var(--bone)}.food-warning{color:#e0ac77;font-size:14px;line-height:1.5}
.food-number:not(.selected):hover{background:#23251d;color:var(--bone);border-color:var(--lamp)}
