:root{color-scheme:dark;--gold:#e8c674;--lamp-x:49.640288%;--lamp-y:67.524116%;--px:50vw;--py:50vh;--radius:10px}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#080a09}body{font-family:Arial,Helvetica,sans-serif;color:#f1f0e9}button{font:inherit}#scene{position:relative;width:100%;height:100%;height:100dvh;overflow:hidden;isolation:isolate;touch-action:none}#painting{position:absolute;width:100%;height:100%;object-fit:cover;object-position:var(--lamp-x) var(--lamp-y);user-select:none}#darkness{position:absolute;inset:0;background:radial-gradient(circle at var(--px) var(--py),rgba(0,0,0,0) 0%,rgba(0,0,0,.05) calc(var(--radius)*.28),rgba(0,0,0,.45) calc(var(--radius)*.68),rgba(0,0,0,.93) var(--radius));-webkit-mask-image:radial-gradient(circle at var(--lamp-x) var(--lamp-y),rgba(0,0,0,.32),#000 25px);mask-image:radial-gradient(circle at var(--lamp-x) var(--lamp-y),rgba(0,0,0,.32),#000 25px);pointer-events:none}#source{position:absolute;left:var(--lamp-x);top:var(--lamp-y);width:6px;height:6px;border-radius:50%;transform:translate(-50%,-50%);background:#ffe4a9;box-shadow:0 0 10px 2px #e8c67466;opacity:.8;pointer-events:none}.topbar{position:absolute;top:max(28px,env(safe-area-inset-top));left:4vw;right:4vw;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.19em}.edition{opacity:.6;display:flex;align-items:center;gap:14px}.edition i{width:3px;height:3px;background:var(--gold);border-radius:50%}button{border:1px solid #ffffff30;border-radius:30px;color:#ddd8c9;background:#0b0d0b55;padding:10px 15px;font-size:10px;letter-spacing:.13em;cursor:pointer}button:hover{border-color:var(--gold);color:var(--gold)}button:focus-visible{outline:2px solid var(--gold);outline-offset:4px}button span{margin-left:12px}#logo{position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-50%);margin:0;display:flex;gap:.24em;white-space:nowrap;font-size:clamp(24px,12vw,180px);font-weight:500;line-height:1.16;letter-spacing:-.055em;pointer-events:none}.forum{color:transparent;-webkit-text-stroke:1px #fff}.luce{color:var(--gold)}#cursor{position:absolute;left:0;top:0;width:23px;height:29px;pointer-events:none;display:none;color:#fff;will-change:transform}#cursor svg{width:100%;height:100%;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}#cursor.moving{color:var(--gold);filter:drop-shadow(0 0 5px #e8c67488)}#scene.pointer-active{cursor:none}#scene.pointer-active button{cursor:pointer}.bottom{position:absolute;left:4vw;right:4vw;bottom:max(28px,env(safe-area-inset-bottom));display:flex;align-items:flex-end;justify-content:space-between;gap:30px;pointer-events:none}.eyebrow{font-size:10px;letter-spacing:.24em;color:var(--gold);margin:0 0 14px}.invitation>p:nth-child(2){font-size:14px;font-weight:400;margin:0;letter-spacing:.02em}.help{font-size:10px;line-height:1.6;color:#ffffff65;margin:10px 0 0}.energy{width:210px;flex-shrink:0}.energy-label{font-size:9px;letter-spacing:.13em;display:flex;justify-content:space-between;color:#d6c9a6;margin-bottom:12px}#meter{height:2px;background:#ffffff25}#fill{height:100%;width:0;display:block;background:var(--gold);box-shadow:0 0 8px #e8c67466}#image-error,.no-script{position:absolute;top:25%;left:8%;right:8%;color:var(--gold)}@media(max-width:600px){.topbar{top:max(20px,env(safe-area-inset-top));left:6vw;right:6vw}.edition{font-size:8px;letter-spacing:.12em;gap:7px}.bottom{left:6vw;right:6vw;bottom:max(24px,env(safe-area-inset-bottom));display:block}.energy{width:100%;margin-top:23px}.help{font-size:9px;max-width:290px}.invitation>p:nth-child(2){font-size:12px}button{padding:9px 11px;font-size:9px}}@media(max-height:450px){.bottom{bottom:14px}.help,.eyebrow{display:none}.topbar{top:14px}.energy{width:150px}}

/* The fixed logo shares the painting’s darkness and is revealed by the same beam. */
#painting{z-index:0}#darkness{z-index:2}#source{z-index:3}.topbar,.bottom{z-index:4}#cursor{z-index:5}#image-error,.no-script{z-index:6}

/* Keep a long press available for charging, without image callouts or selection. */
#scene{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
#painting{pointer-events:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}
