/* A quiet vertical home, with a single path into a room or practice. */
#lobby{padding:0;overflow-y:auto;align-items:flex-start;background:#0c1b17}
#lobby .lobbyPanel{display:flex;flex-direction:column;gap:0;width:min(440px,100%);max-width:440px;min-height:100%;margin:0 auto;padding:0 22px 28px;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
#lobby .lobbyIntro{position:relative;isolation:isolate;width:100%;height:310px;min-height:250px;padding:40px 0 0;text-align:center;flex:none;display:block}
.homeArcher{position:absolute;inset:0 -22px;width:calc(100% + 44px);height:100%;object-fit:cover;object-position:50% 40%;z-index:-2;image-rendering:pixelated}
.homeArcher{object-position:50% 12%}
#lobby .joinRow input{width:100%;min-width:0;box-sizing:border-box}
.customActions button{width:auto!important;flex:1}.customActions .primary{flex:2;white-space:nowrap}
#lobby .lobbyIntro:after{content:'';position:absolute;inset:0 -22px;z-index:-1;background:linear-gradient(#0c1b1744,transparent 38%,#0c1b17 100%)}
#lobby h1{font:46px Georgia;letter-spacing:.16em;margin:0;text-shadow:0 3px 12px #000}
#lobby .eyebrow{font:10px Arial;letter-spacing:.23em;color:#ded4b4;margin-top:9px}
#lobby .lobbyActions{display:flex;flex-direction:column;gap:10px;padding:0;background:none;border:0;margin-top:-12px;z-index:1}
#lobby button,#lobby input{min-height:48px;border-radius:8px}#lobby .primary{font:15px Georgia;letter-spacing:.06em;background:#b2a373;color:#14251e;border:1px solid #e0cea0;box-shadow:0 4px 18px #0003}
#lobby .primary span{font:11px Arial;letter-spacing:0;margin-top:5px;color:#344735}
#lobby .joinRow{display:grid;grid-template-columns:minmax(0,1fr) 95px;gap:8px;margin:0}
#lobby .labOption{margin:0;padding:2px 0;gap:9px;font-size:12px}#lobby .labOption input{min-height:20px}#lobby .labOption small{font-size:10px}
#lobby .trainingMenu{margin:0;padding:0;border:0;border-top:1px solid #b7af8c26;border-radius:0;background:none}#lobby .trainingMenu summary{padding:16px 0;min-height:48px;box-sizing:border-box;font:14px Georgia}
#lobby .trainingMenu[open]{display:block}#lobby .trainingMenu button{width:100%;margin:0 0 6px;text-align:left;font-size:11px}
#lobby .lobbyLinks{display:flex;justify-content:center;gap:18px;margin:12px 0 0;font-size:11px}#lobby .installLink{width:100%;margin:0;background:transparent;border:0;min-height:44px;font-size:10px}
#lobby .lobbyFoot,#offlineStatus{font-size:10px;text-align:center;margin:0;opacity:.65}#lobby .error:empty{display:none}#lobby .buildLabel{font-size:9px;letter-spacing:.14em;text-align:center;opacity:.5;margin-top:8px}
body:not([data-playing=true])>header .brand,body:not([data-playing=true]) #connection{visibility:hidden}
@media(orientation:landscape) and (max-height:550px){#lobby .lobbyIntro{height:230px;min-height:230px;padding-top:24px}#lobby .lobbyPanel{padding-top:0}}
/* No opaque workshop panel. Only a soft local shadow behind the recipes. */
#workshop{background:transparent;backdrop-filter:none;padding:16px max(12px,env(safe-area-inset-right))}
#workshop .workshopScene{width:min(740px,90vw);height:min(570px,85dvh);padding:8px 24px 26px;background:none}
#workshop .workshopScene:before{inset:-20px -12px;background:radial-gradient(ellipse,#0a1813ed 0%,#0a1813cc 45%,#0a181366 66%,transparent 77%)}
#workshop .workshopScene:after{content:'';position:absolute;inset:0 -45px -25px;z-index:-1;background:url('assets/workshop-v42.png') center bottom/100% auto no-repeat;opacity:.44;pointer-events:none}
#workshop .workshopColumns{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:20px}
#workshop .workAbilities{grid-template-columns:repeat(2,minmax(0,1fr))}#workshop .workshopHead h2{font-size:19px}
#workshop .workRecipe:disabled,#workshop .workAbility:disabled{opacity:.65}
/* Portrait stays narrow enough to leave strips of the live forest visible. */
@media(orientation:portrait){#workshop{padding:12px 4px}#workshop .workshopScene{width:100%;height:76dvh;padding:8px 6px 24px}#workshop .workshopColumns{grid-template-columns:minmax(0,1fr) 72px;gap:6px}#workshop .workAbilities{grid-template-columns:1fr}#workshop .workshopScene:after{inset:0 -5px -30px}}
@media(orientation:landscape) and (max-height:450px){#workshop .workshopScene{height:93dvh;padding:3px 16px 12px}#workshop .workshopHead{height:32px}#workshop .workHint{display:none}}
.customCard{width:min(410px,94vw);max-height:92dvh;overflow-y:auto;padding:22px;background:#152a23f5;border:1px solid #b7a87944;border-radius:12px;box-shadow:0 16px 60px #0008}.customCard h2{font:24px Georgia;margin:0}.customCard label{display:block;font:12px Arial;margin:12px 0 6px;color:#dcd3b4}.customCard input{width:100%;min-height:46px;box-sizing:border-box}.customCard #avatarPreview{display:block;width:240px;height:128px;max-width:100%;margin:0 auto;image-rendering:pixelated}.customColors{display:flex;gap:7px;justify-content:center;flex-wrap:wrap}.customColors button{flex:0 0 44px;height:44px;min-height:44px;border:2px solid transparent;border-radius:50%;background:var(--swatch);padding:0;box-shadow:inset 0 0 0 7px #10251f90}.customColors button[aria-pressed=true]{border-color:#eee1b1;box-shadow:inset 0 0 0 6px #10251f70,0 0 10px #d6bb7e55}.customActions{display:flex;gap:10px;margin-top:20px}.customActions button{min-height:48px}.customActions .primary{flex:1}
@media(orientation:landscape) and (max-height:500px){.customCard{width:570px;display:grid;grid-template-columns:190px 1fr;gap:0 22px;padding:14px 20px}.customCard h2{grid-column:1/-1;font-size:21px}.customCard #avatarPreview{grid-column:1;grid-row:2/6;align-self:center}.customCard .customFields{grid-column:2}.customActions{grid-column:1/-1;margin-top:12px}.customCard label{margin-top:7px}.customColors{gap:3px}.customColors button{flex-basis:44px}}
#hud #progressionRecipes{display:flex;position:absolute;right:calc(5px + env(safe-area-inset-right));left:auto;top:36%;bottom:auto;transform:none;width:auto;max-width:170px;flex-direction:column;gap:3px;pointer-events:auto}
#hud #progressionRecipes[hidden]{display:none}#hud .recipePreview{background:#10251e66;border:0;box-shadow:none;border-radius:6px;padding:2px 4px;min-height:44px;display:flex;gap:3px;align-items:center;width:auto;text-align:left}#hud .recipePreview[hidden]{display:none}#hud .recipePreview>div>b{display:none}#hud .recipePreview .nextBowIcon{width:40px;height:40px}#hud .nextBowNeeds{display:flex;gap:3px}#hud .bowNeed{display:flex;align-items:center;gap:1px}#hud .bowNeed canvas{width:16px;height:16px}#hud .bowNeed small{font-size:9px}#hud .recipePreview[data-ready=true]{box-shadow:inset 2px 0 #d6d797}
#hud .utilityCraft{display:none!important}#hud .weaponCraft{position:absolute;left:50%;transform:translateX(-50%);display:flex;align-items:flex-end;gap:7px}#hud .weaponCraft .craftSlot{width:48px;flex:0 0 48px}#hud .weaponCraft .bowCraft{width:70px;flex-basis:70px}
#hud .weaponCraft{position:fixed}
body[data-workshop=true] #hud .bottomHud,body[data-workshop=true] #hud #progressionRecipes,body[data-workshop=true] #hud #forestPanel,body[data-workshop=true] #hud #rangePanel,body[data-workshop=true] #hud #mapBtn{visibility:hidden}
#workshop .workshopScene:after{background-size:76% auto;opacity:.32}
#hud #meleeBtn{position:absolute;right:calc(var(--bow-right) + var(--bow-width) - 4px);bottom:calc(var(--bow-bottom) + 40px);width:44px;height:44px;min-height:44px;border-radius:50%;padding:3px;background:#1a302aaa;border:1px solid #c4ae764d;pointer-events:auto;touch-action:manipulation}#hud #meleeBtn canvas{width:34px;height:34px}#hud #meleeBtn:disabled{opacity:.3}#hud #meleeBtn:not(:disabled){border-color:#f1daa0;box-shadow:0 0 12px #dcc58580}
#hud #meleeBtn{right:calc(var(--bow-right) + var(--bow-width) + 4px)}
@media(orientation:landscape) and (max-height:440px){#hud #progressionRecipes{top:calc(65px + var(--safe-t));max-width:125px}#hud .recipePreview .nextBowIcon{width:30px;height:30px}#hud .recipePreview{min-height:44px}#hud .bowNeed canvas{width:13px;height:13px}#hud .nextBowNeeds{gap:2px}#hud .bowNeed small{font-size:8px}}
@media(orientation:portrait){#hud #progressionRecipes{top:32%}#hud #meleeBtn{right:calc(var(--bow-right) + var(--bow-width) - 10px)}#hud .weaponCraft{transform:translateX(-50%)}#hud .weaponCraft .bowCraft{width:64px;flex-basis:64px}}
#hud #progressionRecipes .recipePreview{height:44px;min-height:44px}
@media(orientation:landscape) and (max-height:440px){#hud #progressionRecipes{top:max(106px,calc(50% - 88px))}}
@media(orientation:portrait){#hud #meleeBtn{right:calc(var(--bow-right) + var(--bow-width) + 4px)}}
#tutorial{background:#0b211b80;backdrop-filter:none}.tutorialCard{width:min(350px,85vw);padding:22px;background:#152a23ef;border:1px solid #c3ac7740;border-radius:14px}.tutorialCard h2{font:23px Georgia}.tutorialCard p{font:14px/1.5 Arial;min-height:62px}.tutorialCard .tutorialVisual{height:72px}.tutorialCard .tutorialTop{font:10px Arial;letter-spacing:.12em}.tutorialCard small{font-size:10px}
@media(orientation:landscape) and (max-height:420px){.tutorialCard{padding:13px 22px}.tutorialCard .tutorialVisual{height:50px}.tutorialCard h2{margin:7px 0}.tutorialCard p{min-height:42px;margin:7px 0}}
