*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#000;color:#f2f2f2;font-family:Inter,"Helvetica Neue",Arial,sans-serif}body{cursor:none}button,a{cursor:none}#stage{position:relative;width:100vw;height:100vh;overflow:hidden;background:#000}canvas{position:absolute;inset:0;width:100%;height:100%;display:block}header{position:absolute;z-index:8;top:0;left:0;width:100%;padding:22px 28px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.1em;text-transform:uppercase;pointer-events:none;color:rgba(242,242,242,.42)}.brand{font-size:13px;letter-spacing:0;text-transform:none;color:#f2f2f2}.center{position:absolute;z-index:9;left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;mix-blend-mode:difference}#clock{font-size:clamp(54px,9vw,132px);font-weight:300;line-height:.9;letter-spacing:-.055em;font-variant-numeric:tabular-nums;white-space:nowrap}#phase{margin-top:20px;font-size:9px;letter-spacing:.22em;color:rgba(242,242,242,.52);text-transform:uppercase}.bottom{position:absolute;z-index:8;bottom:22px;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:rgba(242,242,242,.42);pointer-events:none}.left{left:28px}.right{right:28px;text-align:right}button{position:absolute;z-index:10;border:0;padding:0;background:transparent;color:rgba(242,242,242,.42);font:inherit;font-size:9px;letter-spacing:.14em;text-transform:uppercase}#sound{right:28px;top:52px}#restart{right:28px;top:70px;opacity:0;transition:opacity .3s,color .3s}#restart.visible{opacity:1}button:hover{color:#fff}
#cursor{position:fixed;z-index:20;left:0;top:0;width:0;height:0;pointer-events:none;mix-blend-mode:difference;opacity:0;transition:opacity .25s ease}#cursor.visible{opacity:1}.cursor-dot{position:absolute;left:-3px;top:-3px;width:6px;height:6px;border-radius:50%;background:#fff}.cursor-ring{position:absolute;left:-16px;top:-16px;width:32px;height:32px;border:1px solid rgba(255,255,255,.65);border-radius:50%;transition:.22s ease}.cursor-label{position:absolute;left:25px;top:-5px;font-size:7px;letter-spacing:.16em;color:#fff;white-space:nowrap;opacity:.55}.cursor.is-active .cursor-dot{transform:scale(1.8)}.cursor.is-active .cursor-ring{left:-23px;top:-23px;width:46px;height:46px}.cursor.is-active .cursor-label{opacity:1}@media(pointer:coarse){body,button,a{cursor:auto}#cursor{display:none}}
.camera-panel{position:absolute;z-index:6;left:50%;top:50%;transform:translate(-50%,-50%);width:min(88vw,1180px);display:none;text-align:center;pointer-events:none}.camera-panel.visible{display:block}.camera-panel.active{display:block;z-index:5}.camera-frame{position:relative;width:100%;height:min(28vh,300px);overflow:hidden;background:transparent}.camera-panel.active .camera-frame{height:min(28vh,300px)}#camera{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}#cameraCanvas{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:block;mix-blend-mode:screen;filter:contrast(1.5) brightness(1.22);opacity:1}.camera-scan{position:absolute;inset:22% 6%;border-top:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.07);opacity:.35}.camera-corners{position:absolute;inset:15%;border-left:1px solid rgba(255,255,255,.08);border-right:1px solid rgba(255,255,255,.08)}.camera-panel.active .camera-scan{opacity:.16}.camera-panel.active .camera-corners{opacity:.05}.camera-copy{margin-top:12px;pointer-events:auto;transition:opacity .45s,transform .45s}.camera-copy.hidden{opacity:0;transform:translateY(-8px);pointer-events:none}.camera-title{font-size:9px;letter-spacing:.18em}.camera-text{max-width:480px;margin:9px auto 12px;font-size:9px;line-height:1.55;letter-spacing:.02em;color:rgba(242,242,242,.48)}#cameraButton{position:static;color:#f2f2f2;font-size:9px;letter-spacing:.14em}#cameraStatus{margin-top:9px;font-size:8px;letter-spacing:.14em;color:rgba(242,242,242,.3)}.camera-notice{position:absolute;z-index:8;left:50%;top:calc(50% + min(20vh,190px));transform:translateX(-50%);font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:rgba(242,242,242,.28);pointer-events:none;opacity:0;transition:opacity .4s}.camera-notice.visible{opacity:1}@media(max-width:700px){header{padding:18px}.bottom{bottom:18px}.left{left:18px}.right{right:18px;max-width:160px}#sound{right:18px;top:48px}#restart{right:18px;top:66px}.camera-panel{width:92vw}.camera-frame{height:24vh}.camera-text{font-size:8px;max-width:90vw}.camera-notice{top:calc(50% + 150px)}}

header{pointer-events:auto}header>div:last-child{pointer-events:none}.home-link{color:#f2f2f2;text-decoration:none;pointer-events:auto}
