/* Robo Orchard — packing shed identity + device-fit polish */
:root{--ro-safe-l:max(12px,env(safe-area-inset-left,0px));--ro-safe-r:max(12px,env(safe-area-inset-right,0px));--ro-safe-t:max(10px,env(safe-area-inset-top,0px));--ro-safe-b:max(10px,env(safe-area-inset-bottom,0px))}
html,body,#game-root{min-height:100%;height:100dvh}
#screen-title{padding:0;background:linear-gradient(180deg,#b9d79f 0 30%,#6e9b61 30% 48%,#75533a 48% 100%);overflow:hidden}
#screen-title::before{content:'';position:absolute;left:8%;right:8%;bottom:6%;height:42%;background:repeating-linear-gradient(90deg,#9b744e 0 14%,#b88959 14% 28%);border:8px solid #5e422f;box-shadow:0 12px 0 #443024;clip-path:polygon(0 18%,14% 18%,14% 5%,35% 5%,35% 21%,59% 21%,59% 8%,81% 8%,81% 18%,100% 18%,100% 100%,0 100%);opacity:.9}
#screen-title::after{content:'ORCHARD SHIFT  •  HARVEST  •  PACK  •  DELIVER';position:absolute;left:max(6%,var(--ro-safe-l));top:calc(var(--ro-safe-t) + 2%);padding:.45rem .7rem;background:#f2e6bd;color:#36543b;border:3px solid #36543b;font:900 .68rem/1 ui-monospace,monospace;letter-spacing:.12em;transform:rotate(-1deg);box-shadow:4px 4px 0 #36543b;white-space:nowrap}
#screen-title .title-card{position:absolute;inset:0;width:100%;max-width:none;max-height:none;overflow:hidden;padding:0;background:transparent;border:0;box-shadow:none;text-align:left;display:block}
#screen-title .title-robot{position:absolute;left:calc(max(6%,var(--ro-safe-l)) + 4px);top:31%;transform:scale(.9);transform-origin:left top;filter:drop-shadow(4px 5px 0 rgba(54,84,59,.4))}
#screen-title h1,#screen-title .title,#screen-title .logo{position:absolute;left:max(6%,var(--ro-safe-l));top:16%;margin:0!important;color:#fff6cd!important;text-shadow:5px 5px 0 #36543b!important;font-size:clamp(3rem,9vw,6.5rem)!important;line-height:.78!important;max-width:56%;letter-spacing:-.05em!important}
#screen-title .subtitle{position:absolute;left:max(6%,var(--ro-safe-l));top:46%;width:min(41vw,500px);margin:0;padding:.65rem .75rem;background:#f4e8c7;color:#3e4c35;border:3px solid #547153;border-radius:2px;font-weight:800;line-height:1.4;box-shadow:6px 6px 0 rgba(55,69,47,.4)}
#screen-title .menu-buttons{position:absolute;right:max(6%,var(--ro-safe-r));top:18%;width:min(34vw,360px);display:grid;grid-template-columns:1fr 1fr;gap:8px}
#screen-title .btn-pixel{min-height:52px;border-radius:4px!important;border:3px solid #4f5f3c!important;background:#d8c18e!important;color:#304331!important;box-shadow:5px 5px 0 #4f5f3c!important;font-family:ui-monospace,monospace!important;text-align:left;padding:.55rem .65rem!important}
#screen-title .btn-primary{grid-column:1/-1;min-height:70px;background:#86b56c!important;color:#213824!important;border-color:#3e613d!important;font-size:.92rem!important;font-weight:900!important}
#screen-title .btn-text{grid-column:1/-1;background:#f1e4be!important;color:#314a35!important}
#screen-title .title-footer{position:absolute;left:var(--ro-safe-l);right:var(--ro-safe-r);bottom:var(--ro-safe-b);width:auto;display:flex;align-items:center;justify-content:space-between;color:#fff7dd;opacity:.95;text-shadow:0 1px 2px #3c2b20}
#screen-title .title-footer .btn-pixel{min-width:44px;min-height:44px;padding:.35rem .6rem!important;background:#f0e2bc!important;color:#314a35!important;border:2px solid #4d694f!important;box-shadow:3px 3px 0 #4d694f!important;text-align:center}
#screen-howto,#screen-levels,#screen-pause,#screen-result{padding:var(--ro-safe-t) var(--ro-safe-r) var(--ro-safe-b) var(--ro-safe-l)}
#screen-howto .panel-card,#screen-levels .panel-card,#screen-result .panel-card{max-height:calc(100dvh - var(--ro-safe-t) - var(--ro-safe-b) - 16px);background:#f2e7c8!important;color:#344835!important;border-radius:3px!important;border:3px solid #547052!important;box-shadow:7px 7px 0 #3c4f3b!important;text-align:left!important}
#screen-pause .panel-card{max-height:calc(100dvh - var(--ro-safe-t) - var(--ro-safe-b) - 16px);background:#6b5139!important;color:#fff1c6!important;border-radius:2px!important;border:4px solid #e6d098!important;box-shadow:7px 7px 0 #3e2f23!important;text-align:left!important}
#screen-howto h2,#screen-levels h2,#screen-result h2{color:#315238}
#screen-pause h2{color:#ffe7a8}
#screen-howto .btn-text,#screen-levels .btn-text,#screen-result .btn-text{color:#315238}
.icon-btn,.chapter-tab,.btn-pixel,.nn-nudge-signup,.nn-nudge-later{min-height:44px}
.icon-btn{min-width:44px;width:44px;height:44px}
.hud{padding-left:var(--ro-safe-l);padding-right:var(--ro-safe-r)}
.touch-controls{left:var(--ro-safe-l);bottom:calc(var(--ro-safe-b) + 4px)}
.interact-btn{right:var(--ro-safe-r);bottom:calc(var(--ro-safe-b) + 8px)}
.btn-pixel:focus-visible,.icon-btn:focus-visible,.dpad-btn:focus-visible,.interact-btn:focus-visible,.chapter-tab:focus-visible,.level-tile:focus-visible,.nn-nudge-signup:focus-visible,.nn-nudge-later:focus-visible{outline:3px solid #fff1a8;outline-offset:3px}
@media(max-width:680px){
  #screen-title .title-card{display:grid;grid-template-rows:auto auto 1fr auto;align-content:center;gap:8px;padding:calc(var(--ro-safe-t) + 54px) var(--ro-safe-r) calc(var(--ro-safe-b) + 48px) var(--ro-safe-l);overflow:auto}
  #screen-title h1,#screen-title .title,#screen-title .logo{position:static;grid-row:1;margin:1vh 0 0!important;max-width:100%;font-size:clamp(2.35rem,14vw,4.6rem)!important;line-height:.84!important}
  #screen-title .title-robot{display:none}
  #screen-title .subtitle{position:static;grid-row:2;width:min(92vw,520px);font-size:.72rem;padding:.45rem .55rem}
  #screen-title .menu-buttons{position:static;grid-row:3;width:min(92vw,520px);margin:auto 0 0;display:grid;grid-template-columns:1fr 1fr;gap:7px}
  #screen-title .btn-pixel{min-height:44px;font-size:.61rem!important;padding:.48rem .55rem!important}
  #screen-title .btn-primary,#screen-title .btn-text{grid-column:1/-1;min-height:50px}
  #screen-title .title-footer{position:static;grid-row:4;width:100%;align-self:end}
  #screen-title::after{font-size:.52rem;letter-spacing:.07em;max-width:calc(100vw - var(--ro-safe-l) - var(--ro-safe-r));overflow:hidden;text-overflow:ellipsis}
  .battery-track{width:min(24vw,96px)}
  .hud-title{font-size:.72rem;padding:5px 9px}
  .order-chip{font-size:.7rem;padding:4px 7px}
  .medal-row{gap:5px}
  .medal-badge{min-width:0;flex:1;padding:7px 5px;font-size:.62rem}
}
@media(max-height:520px) and (orientation:landscape){
  #screen-title .title-card{display:grid;grid-template-columns:minmax(190px,.9fr) minmax(330px,1.25fr);grid-template-rows:auto 1fr auto;gap:8px 20px;padding:calc(var(--ro-safe-t) + 34px) var(--ro-safe-r) var(--ro-safe-b) var(--ro-safe-l);overflow:auto}
  #screen-title h1,#screen-title .title,#screen-title .logo{position:static;grid-column:1;grid-row:1/3;max-width:100%;font-size:clamp(2rem,8vh,3rem)!important;line-height:.88!important;align-self:center}
  #screen-title .title-robot{display:none}
  #screen-title .subtitle{position:static;grid-column:2;grid-row:1;width:100%;font-size:.64rem;padding:.4rem .5rem}
  #screen-title .menu-buttons{position:static;grid-column:2;grid-row:2;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;align-self:center}
  #screen-title .btn-pixel,#screen-title .btn-primary,#screen-title .btn-text{grid-column:auto;min-height:44px;font-size:.56rem!important;padding:.45rem!important}
  #screen-title .btn-primary{grid-column:1/-1}
  #screen-title .title-footer{position:static;grid-column:2;grid-row:3;width:100%;align-self:end}
  #screen-title::after{top:var(--ro-safe-t);font-size:.5rem}
  #screen-howto .panel-card,#screen-levels .panel-card,#screen-pause .panel-card,#screen-result .panel-card{width:min(94vw,780px);padding:13px 17px;gap:7px}
  #screen-pause .menu-buttons,#screen-result .menu-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  #screen-pause .btn-text,#screen-result .btn-text{grid-column:1/-1}
  .howto-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 14px;font-size:.7rem}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
