#pack{font-size:12px;background:#132522df;padding:10px;height:fit-content;color:#eedbb0}
#mission{top:80px;max-width:235px}
#interactHint{position:absolute;bottom:15px;left:50%;transform:translateX(-50%);background:#152d28eb;border:1px solid #b5c58d;padding:9px 14px;font-size:13px;max-width:85%;text-align:center;pointer-events:none}
#toast{position:absolute;top:16px;left:50%;transform:translateX(-50%);max-width:45%;padding:8px 12px;background:#172725ec;color:#f1d092;font-size:12px;text-align:center;pointer-events:none}
.ninja-menu button+button{margin-top:8px}
.ninja-menu small{position:absolute;right:5%;bottom:5%;margin:0;font-size:13px;color:#f3dca9;text-shadow:2px 2px #182b25}
#continueNinja:not([hidden])~#startNinja{background:#2e5046;color:#e3dfc1;font-size:13px;border-bottom-color:#1b3732;padding:9px 20px}
#campPanel{position:fixed;inset:0;z-index:20;background:#0a171cd9;display:grid;place-items:center;padding:24px;backdrop-filter:blur(3px)}
.camp-window{width:min(700px,100%);max-height:calc(100dvh - 48px);overflow:auto;background:#1c332e;border:1px solid #82947c;border-radius:6px;box-shadow:0 16px 70px #0009;color:#e7ecd6;scrollbar-color:#839779 #253f36}
.camp-window>header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 24px;background:#253f36;border-bottom:1px solid #5d7462;position:sticky;top:0;z-index:1}
.camp-window>header span{font-size:11px;color:#c8bc8c}
.camp-window h2{font-size:26px;margin:6px 0 0}
.camp-window button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #98a57f;background:#a7be8e;color:#182d27;padding:9px 12px;border-radius:4px;font-size:12px;font-weight:700;min-height:38px}
.camp-window button:hover:not(:disabled){background:#d6dbac}
.camp-window button:disabled{background:#2d463c;border-color:#53694e;color:#91a38c;cursor:default}
.camp-window button svg{width:17px;height:17px;flex-shrink:0}
#closeCamp{width:38px;padding:6px;background:transparent;color:#dfe7cd;border-color:#6e8570}
.camp-content{padding:0 24px}
.camp-content>section{padding:20px 0;border-bottom:1px solid #425e4c}
.camp-content>section:last-child{border:0}
.camp-section-heading{display:flex;align-items:center;gap:10px;margin-bottom:10px;color:#e2d29e}
.camp-section-heading svg{width:20px;height:20px;flex-shrink:0}
.camp-section-heading h3{font-size:15px;margin:0}
.camp-window p{font-size:14px;line-height:1.6;margin:8px 0 12px;color:#bdccba}
.camp-mission p{max-width:560px}
#departNinja{background:#e5c181;border-color:#f1d29e;color:#20302b}
.build-list>div{display:grid;grid-template-columns:25px 1fr auto;align-items:center;gap:12px;margin:16px 0}
.build-list>div>svg{color:#bdc397;width:24px;height:24px}
.build-list b{display:block;font-size:14px}
.build-list small{display:block;color:#b2c1ad;font-size:12px;margin-top:5px;line-height:1.4}
.build-list button{max-width:225px;text-align:center;line-height:1.4}
.camp-bags{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.camp-bags button{margin:0 3px 5px 0;font-size:12px}
.camp-window>footer{font-size:11px;color:#adbfaa;background:#192e29;border-top:1px solid #425e4c;padding:12px 24px}
#newStoryConfirm{z-index:5}
@media(max-width:700px){
  #mission{top:41px;max-width:164px}
  #pack{font-size:9px;padding:6px}
  #interactHint{bottom:8px;font-size:10px;padding:5px 8px}
  #toast{top:8px;font-size:9px;padding:5px 7px;max-width:40%}
  .ninja-menu{padding:4% 6%}
  .ninja-menu h1{font-size:34px;margin:7px 0}
  .ninja-menu small{display:block;font-size:8px;margin:7px 0 0;line-height:1.2}
  .ninja-menu p{font-size:8px;margin-bottom:7px}
  .ninja-menu button{min-width:155px;padding:7px 12px;font-size:12px}
  #continueNinja:not([hidden])~#startNinja{padding:5px 12px;font-size:10px}
  #campPanel{padding:10px}
  .camp-window{max-height:calc(100dvh - 20px)}
  .camp-window>header{padding:15px}
  .camp-window h2{font-size:22px}
  .camp-content{padding:0 15px}
  .camp-content>section{padding:17px 0}
  .build-list>div{grid-template-columns:22px 1fr;gap:9px;margin:18px 0}
  .build-list button{grid-column:2;justify-self:start;max-width:100%;font-size:12px}
  .camp-bags{grid-template-columns:1fr;gap:18px}
  .camp-window>footer{padding:12px 15px}
  .ninja-controls{gap:7px}
}
@media(max-width:380px){.ninja-menu h1{font-size:28px}.ninja-menu p{display:none}.ninja-menu small{font-size:8px}.ninja-menu button{padding:5px 10px}}
