*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;height:100%;background:#0B0F10;color:#d8ffd0;font-family:ui-monospace,Menlo,Consolas,monospace;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none}
#c{position:fixed;inset:0;width:100%;height:100%;display:block}
.hidden{display:none!important}
.panel{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(92vw,380px);text-align:center;background:rgba(5,8,8,.82);border:1px solid rgba(164,255,63,.55);border-radius:14px;padding:max(20px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));box-shadow:0 0 40px rgba(164,255,63,.15);box-sizing:border-box;max-height:100vh;max-height:100dvh;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
/* rc6.5 RC63-1: panels never taller than the visible viewport (100dvh, 100vh fallback); they scroll so Home/Menu stay reachable down to 320x568 */
h1{font-size:40px;line-height:.95;margin:4px 0 8px;color:#A4FF3F;letter-spacing:4px;text-shadow:0 0 18px rgba(164,255,63,.6)}
h2{color:#A4FF3F;margin:4px 0 12px}
.sub{opacity:.8;margin:0 0 16px}
button{font:inherit;color:#d8ffd0;background:#10201a;border:1px solid rgba(164,255,63,.55);border-radius:10px;padding:10px 14px;margin:5px;cursor:pointer;min-height:44px}
button:active{transform:scale(.97)}
button.big{display:block;width:100%;margin:8px 0;font-size:20px;font-weight:bold;color:#0B0F10;background:#A4FF3F;border:none;padding:14px}
button.link{background:none;border:none;text-decoration:underline;opacity:.75;min-height:44px}
#bStory{min-height:44px;min-width:44px;padding:10px 16px}
.row{display:flex;flex-wrap:wrap;justify-content:center}
.tiny{font-size:12px;opacity:.7;margin:4px 0}
.foot{font-size:11px;opacity:.6;margin-top:14px}.foot a{display:inline-block;min-height:44px;line-height:44px;padding:0 4px}
a{color:#A4FF3F}
.score{font-size:56px;color:#A4FF3F;font-weight:bold;text-shadow:0 0 18px rgba(164,255,63,.5)}
.mindline{color:#9cffb0;font-style:italic;min-height:1.2em}
#hud{position:fixed;top:env(safe-area-inset-top,0);left:0;right:0;display:flex;align-items:center;gap:8px;padding:8px 10px;pointer-events:none}
#hud button{pointer-events:auto;margin:0;padding:6px 10px;min-height:44px;min-width:44px;background:rgba(16,32,26,.7)}
#hScore{font-size:26px;color:#A4FF3F;font-weight:bold;flex:0 0 auto}
#hMode{flex:1;font-size:12px;opacity:.7}
#mind{position:fixed;left:0;right:0;bottom:16%;text-align:center;color:#b6ffc4;font-size:18px;font-style:italic;text-shadow:0 0 10px #000,0 0 14px rgba(164,255,63,.5);pointer-events:none;padding:0 16px;transition:opacity .4s}
input{font:inherit;width:100%;padding:10px;border-radius:10px;border:1px solid rgba(164,255,63,.55);background:#07110d;color:#d8ffd0;margin-top:8px}
ol{text-align:left;max-height:50vh;overflow:auto;padding-left:28px;margin:0}
ol li{padding:3px 0}
button{font-size:17px}
@media (prefers-reduced-motion: reduce){ *{transition:none!important;animation:none!important} button:active{transform:none} }
.bicon{width:28px;height:28px;vertical-align:middle;margin:-4px 8px 0 0}
#menu h1 img{max-height:30vh;object-fit:contain}
#bAct{position:fixed;right:max(14px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));width:92px;height:92px;border-radius:50%;margin:0;padding:0;
  font-weight:bold;font-size:16px;color:#0B0F10;border:3px solid #D7AA55;touch-action:none;display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:conic-gradient(rgba(11,15,16,.75) calc(var(--cd,0)*360deg), #A4FF3F 0);box-shadow:0 0 18px rgba(164,255,63,.35);z-index:5}
#bAct small{font-size:10px;font-weight:normal;opacity:.8}
#bAct.pulling{background:#D7AA55;box-shadow:0 0 26px rgba(215,170,85,.7)}
#galleryList{display:grid;grid-template-columns:1fr;gap:6px;max-height:52vh;overflow:auto;text-align:left}
.gcard{display:flex;gap:10px;align-items:center;background:#0e1719;border:1px solid #234;border-radius:10px;padding:4px 8px}
.gcard canvas{width:56px;height:56px;flex:0 0 56px}
.gcard b{display:block;color:#D7AA55}.gcard span{font-size:12px;opacity:.85}
.gcard.locked b{color:#777}

/* APP-12: community link (title + game-over panels only) */
.packlink{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0 14px;margin:6px auto;color:#D7AA55;border:1px solid #D7AA55;border-radius:10px;text-decoration:none;font-size:15px}
.packdlg{position:fixed;inset:0;z-index:50;background:rgba(0,0,0,.72);display:flex;align-items:center;justify-content:center;padding:max(20px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));box-sizing:border-box}
.packbox{background:#182022;border:2px solid #D7AA55;border-radius:14px;padding:18px;max-width:320px;max-height:100%;overflow-y:auto;box-sizing:border-box;display:flex;flex-direction:column;gap:10px;text-align:center}
.packbox button{min-height:44px}
.homebtn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0 14px;margin:6px auto;color:#d8ffd0;background:#10201a;border:1px solid rgba(164,255,63,.55);border-radius:10px;font-size:15px}
