.demo-page{background:#080503;color:var(--cream);min-height:100dvh}.demo-page [hidden]{display:none!important}
.demo-entry{max-width:560px;margin:auto;min-height:100dvh;padding:max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px;box-sizing:border-box}
.demo-entry h1{font:700 clamp(25px,5vw,36px)/1.5 'Noto Serif TC',serif;color:var(--gold-bright);margin:0}.demo-entry p{line-height:1.8;margin:0}.demo-entry a{color:var(--gold);min-height:44px;display:inline-flex;align-items:center}.demo-back{align-self:flex-start}.demo-entry-deity{position:relative;width:100%;height:100%;object-fit:cover;border:2px solid var(--gold);border-radius:18px}.demo-note,.demo-hint{font-size:14px;line-height:1.7;color:#ccbda4}.demo-eyebrow{color:var(--gold)}
.demo-page button:focus-visible,.demo-page a:focus-visible{outline:3px solid var(--gold-bright);outline-offset:4px}.demo-page .btn{min-height:44px}.demo-page .bless-sheet{z-index:90;backdrop-filter:none}.demo-page .bless-box{padding-top:calc(4rem + env(safe-area-inset-top))}
#demoScene:not(.is-camera) #wVideo,#demoScene:not(.is-camera) #wFx{display:none}
.demo-intention{position:absolute;left:max(20px,env(safe-area-inset-left));right:calc(30px + min(26vw,118px));top:max(24px,env(safe-area-inset-top));font:900 clamp(26px,6vw,40px)/1.3 'Noto Serif TC',serif;color:var(--gold-bright);z-index:4;pointer-events:none}
#demoScene .worship-status{top:calc(90px + env(safe-area-inset-top));left:max(20px,env(safe-area-inset-left));right:calc(30px + min(26vw,118px));line-height:1.7;font-size:17px}
.demo-controls{position:absolute;z-index:4;bottom:calc(65px + env(safe-area-inset-bottom));left:max(20px,env(safe-area-inset-left));right:max(20px,env(safe-area-inset-right));display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:600px;margin:auto;text-align:center}.demo-controls p{grid-column:1/-1;margin:0}.demo-controls #demoCamera,.demo-controls #demoDirect{grid-column:1/-1}.demo-controls #demoHold{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
#demoExit{bottom:max(12px,env(safe-area-inset-bottom));top:auto;right:max(20px,env(safe-area-inset-right));width:auto;height:44px;padding:0 16px;border-radius:24px;font-size:15px}
#demoScene .ring-wrap{bottom:calc(315px + env(safe-area-inset-bottom))}#demoScene .ring-wrap svg{width:100px;height:100px}
#demoScene.done .demo-controls,#demoScene.done .demo-intention,#demoScene.done #demoExit{display:none}.demo-done-actions{display:flex;flex-direction:column;gap:12px;width:100%;margin-top:24px}.demo-done-actions>a:last-child{color:var(--gold);padding:12px}.demo-page .worship-done{padding-inline:max(20px,env(safe-area-inset-left)) max(20px,env(safe-area-inset-right))}
@media(min-aspect-ratio:1/1) and (max-height:500px){#demoScene .worship-deity{left:max(24px,env(safe-area-inset-left));right:auto;top:24px;width:min(26vh,120px)}.demo-intention{left:25vw;right:25px;font-size:26px;top:20px;text-align:center}#demoScene .worship-status{left:25vw;right:max(25px,env(safe-area-inset-right));top:58px;text-align:center;font-size:14px;line-height:1.35;max-height:38px;overflow-y:auto}.demo-controls{left:34%;bottom:calc(60px + env(safe-area-inset-bottom));gap:6px}.demo-controls p{font-size:12px}#demoScene .ring-wrap{left:17%;bottom:calc(24px + env(safe-area-inset-bottom))}#demoScene .ring-wrap svg{width:78px;height:78px}.demo-page .ec-deity{width:80px}.demo-page .ec-ask{font-size:24px;margin-top:8px}.demo-page .ec-brand{margin-top:12px}.demo-entry{padding-top:16px}.demo-entry .done-deity-wrap{width:80px}}
@media(max-width:500px) and (max-height:700px){#demoScene .ring-wrap{bottom:calc(290px + env(safe-area-inset-bottom))}#demoScene .ring-wrap svg{width:76px;height:76px}.demo-controls{gap:6px}.demo-controls .btn{padding:8px;font-size:15px}}
