:root{--void:#0d0618;--carrot:#ff7a1a;--gold:#f5c76b;--leaf:#4caf50;--ink:#f4e9d8}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%;overflow:hidden;background:var(--void);color:var(--ink);font-family:'DM Mono',monospace}
#scene-container{position:fixed;inset:0}
.glass{background:rgba(25,12,40,.55);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(245,199,107,.35);border-radius:18px;box-shadow:0 0 40px rgba(255,122,26,.12)}
#hdr{position:fixed;top:14px;left:50%;transform:translateX(-50%);text-align:center;pointer-events:none;width:94%;animation:fade 2s ease}
#hdr h1{font-family:'Cormorant Garamond',serif;font-weight:300;font-size:clamp(22px,4.2vw,46px);letter-spacing:.02em;background:linear-gradient(90deg,var(--gold),var(--carrot),#fff3c4,var(--gold));background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmer 8s linear infinite}
#hdr h1 em{font-weight:700}
#hdr p{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:15px;opacity:.7;margin-top:2px}
@keyframes shimmer{to{background-position:300% 0}}
@keyframes fade{from{opacity:0;transform:translate(-50%,-10px)}}
#auth-status{position:fixed;top:14px;right:14px;font-size:11px;z-index:5}
#auth-status a,#auth-status button{color:var(--gold);background:none;border:none;cursor:pointer;font:inherit;text-decoration:underline}
button{font-family:'DM Mono',monospace;font-size:12px;color:var(--ink);background:rgba(255,255,255,.05);border:1px solid rgba(245,199,107,.4);border-radius:999px;padding:8px 14px;cursor:pointer;transition:.25s}
button:hover{background:rgba(245,199,107,.15);box-shadow:0 0 18px rgba(245,199,107,.35)}
button.primary{background:linear-gradient(135deg,var(--carrot),#c2410c);border-color:var(--gold);color:#1a0a00;font-weight:500}
button.on{background:var(--leaf);color:#041}
#controls{position:fixed;bottom:44px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:18px;padding:12px 20px;border-radius:999px;z-index:4;animation:fade 2.4s ease}
#controls label{display:flex;align-items:center;gap:8px;font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:var(--gold)}
#controls input[type=range]{accent-color:var(--carrot);width:110px}
#depthVal{width:10px}
.btns{display:flex;gap:8px;flex-wrap:wrap}
#archiveToggle{position:fixed;top:14px;left:14px;z-index:6}
.small{font-size:11px}
#archive{position:fixed;top:56px;left:14px;bottom:110px;width:300px;padding:14px;z-index:5;transform:translateX(-120%);transition:transform .5s cubic-bezier(.2,.8,.2,1);overflow:auto}
#archive.open{transform:none}
.tabs{display:flex;gap:6px;margin-bottom:12px}
.tabs button{font-size:10px;padding:6px 10px}
.tabs button.active{background:var(--gold);color:#1a0a00}
.entry{border-bottom:1px dashed rgba(245,199,107,.25);padding:10px 0;font-size:12px}
.entry b{font-family:'Cormorant Garamond',serif;font-size:20px;color:var(--carrot)}
.entry p{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:16px;line-height:1.25;margin:4px 0}
.entry small{opacity:.5;font-size:10px}
.entry .del{float:right;padding:2px 8px;font-size:10px}
#oracle{position:fixed;top:70px;right:14px;width:330px;max-height:calc(100% - 180px);overflow:auto;padding:20px;z-index:5;transform:translateX(130%);transition:transform .7s cubic-bezier(.2,.8,.2,1)}
#oracle.open{transform:none}
.x{position:absolute;top:10px;right:10px;padding:2px 10px;font-size:16px}
.kicker{font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--gold);margin-top:14px}
.ratio{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:54px;color:var(--carrot);line-height:1}
.ratioLabel{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:18px;opacity:.85}
.truth{font-family:'Cormorant Garamond',serif;font-size:21px;line-height:1.3;margin-top:4px}
#placeCanvas{width:100%;margin-top:6px;border-radius:10px;background:rgba(0,0,0,.25)}
#oracle .btns{margin-top:14px}
#toast{position:fixed;top:90px;left:50%;transform:translateX(-50%);font-size:12px;background:rgba(0,0,0,.6);padding:8px 14px;border-radius:999px;opacity:0;transition:.4s;pointer-events:none;z-index:9}
#toast.show{opacity:1}
#egg{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:0;transition:opacity 2s;z-index:8;text-align:center;font-family:'Cormorant Garamond',serif;font-size:clamp(24px,4vw,44px);color:var(--gold);text-shadow:0 0 30px var(--carrot)}
#egg.show{opacity:1}
footer{position:fixed;bottom:10px;width:100%;text-align:center;font-size:10px;opacity:.6;z-index:3}
footer a{color:var(--gold)}
@media (max-width:720px){
  #controls{flex-direction:column;border-radius:18px;bottom:34px;gap:10px;width:92%}
  #controls input[type=range]{width:150px}
  #oracle{top:auto;bottom:0;right:0;left:0;width:100%;max-height:70%;border-radius:18px 18px 0 0;transform:translateY(110%)}
  #oracle.open{transform:none}
  #archive{width:86%;bottom:220px}
  #hdr{top:50px}
}