/* FarmDew Presentation Phase 4B.2 — final screenshot-driven polish.
   Loaded after farmdew-art.css. This file only adjusts final mobile presentation;
   semantics, feature state, gameplay authority, and base world geometry stay with
   their existing owners. */

/* Keep the location switch useful without letting it dominate the farm. */
.farmdew-game>.farmdew-area-switcher{
  top:calc(env(safe-area-inset-top) + 54px);
  right:8px;
  left:auto;
  width:174px;
  padding:2px;
  gap:2px;
  border-radius:10px;
  box-shadow:0 3px 8px rgba(24,28,16,.22),inset 0 1px 0 rgba(255,232,184,.15);
}
.farmdew-game>.farmdew-area-switcher .farmdew-area-tab{
  position:relative;
  min-width:0;
  min-height:44px;
  padding:3px 5px;
  grid-template-columns:18px minmax(0,1fr);
  column-gap:4px;
  border-radius:7px;
}
.farmdew-game>.farmdew-area-switcher .farmdew-area-tab strong{font-size:0;line-height:1}
.farmdew-game>.farmdew-area-switcher .farmdew-area-tab[data-area="home"] strong::after{content:"Home"}
.farmdew-game>.farmdew-area-switcher .farmdew-area-tab[data-area="back"] strong::after{content:"Back"}
.farmdew-game>.farmdew-area-switcher .farmdew-area-tab strong::after{
  display:block;
  overflow:hidden;
  font-size:.61rem;
  font-weight:900;
  letter-spacing:.01em;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.farmdew-game>.farmdew-area-switcher .farmdew-area-tab[data-area="back"] small{display:none}
.farmdew-game>.farmdew-area-switcher .farmdew-area-tab[data-area="back"]:disabled small{
  position:absolute;
  top:-5px;
  right:-4px;
  display:block;
  min-width:25px;
  padding:1px 4px;
  border:1px solid #52341f;
  border-radius:7px;
  background:#7b5a34;
  color:#f2dcad;
  box-shadow:0 1px 2px rgba(35,24,13,.28);
  font-size:0;
  line-height:1;
  text-align:center;
}
.farmdew-game>.farmdew-area-switcher .farmdew-area-tab[data-area="back"]:disabled small::after{
  content:"L10";
  font-size:.38rem;
  font-weight:900;
  letter-spacing:.03em;
}

/* Objective and area selector share the top world row instead of overlapping. */
.farmdew-scene-message{
  top:8px;
  left:8px;
  width:auto;
  max-width:132px;
  padding:4px 8px;
  border-color:rgba(255,255,255,.12);
  border-radius:12px;
  background:rgba(18,42,24,.68);
  box-shadow:0 2px 8px rgba(15,43,24,.14);
  font-size:.54rem;
  line-height:1.18;
  text-align:left;
  transform:none;
}
.farmdew-scene-message.error{
  top:8px;
  right:8px;
  left:8px;
  width:auto;
  max-width:none;
  padding:6px 9px;
  text-align:center;
}

/* Let the grass separate the individual beds; remove the remaining big brown panel. */
.farmdew-field-bg{opacity:.08!important;stroke-width:0!important;filter:none!important}
.farmdew-field-bg+path{opacity:0!important}
.farmdew-plots{
  left:39%;
  top:59%;
  width:43%;
  height:35%;
  gap:8px 9px;
}
.farmdew-plots::before{
  inset:-4px -3px;
  clip-path:polygon(2% 4%,98% 1%,100% 12%,98% 95%,92% 99%,5% 97%,0 88%,1% 11%);
  background:
    radial-gradient(circle at 18% 24%,rgba(153,99,55,.13) 0 1px,transparent 1.6px) 0 0/28px 24px,
    linear-gradient(180deg,rgba(95,58,31,.18),rgba(66,41,24,.08));
  box-shadow:none;
  filter:none;
}
.farmdew-plots::after{
  inset:-2px;
  clip-path:polygon(2% 4%,98% 1%,100% 12%,98% 95%,92% 99%,5% 97%,0 88%,1% 11%);
  background:
    linear-gradient(90deg,transparent 0 48%,rgba(72,105,54,.38) 49% 51%,transparent 52%),
    repeating-linear-gradient(0deg,transparent 0 24%,rgba(72,105,54,.26) 25% 26%,transparent 27% 49%);
  opacity:.54;
}
.farm-plot::before{
  inset:4px 2px;
  clip-path:polygon(3% 9%,94% 3%,100% 17%,96% 91%,87% 98%,6% 95%,0 82%,2% 14%);
  background:
    radial-gradient(circle at 22% 36%,rgba(205,149,91,.11) 0 1px,transparent 1.5px) 0 0/18px 16px,
    repeating-linear-gradient(90deg,transparent 0 30%,rgba(44,24,13,.23) 31% 34%,transparent 35% 64%,rgba(44,24,13,.18) 65% 68%,transparent 69% 100%),
    linear-gradient(180deg,#75492a,#52301c);
  box-shadow:inset 0 1px 0 rgba(226,171,108,.12),inset 0 -2px 4px rgba(34,18,9,.18);
}
.farm-plot:nth-child(even)::before{transform:rotate(.3deg)}
.farm-plot:nth-child(odd)::before{transform:rotate(-.3deg)}
.farm-plot-empty{
  width:16px;
  height:16px;
  color:#cda36b;
  font-size:.86rem;
  opacity:.38;
}
.farm-plot:active::before{filter:brightness(.9);transform:scale(.965) rotate(-.3deg)}
.farm-plot:nth-child(even):active::before{transform:scale(.965) rotate(.3deg)}

/* Locked plots read as uncleared farm ground, not disabled green tiles. */
.farm-plot.locked::before{
  inset:1px 0;
  clip-path:polygon(2% 12%,92% 1%,100% 17%,97% 92%,87% 100%,8% 96%,0 80%,3% 18%);
  background:
    radial-gradient(ellipse at 18% 68%,rgba(137,127,88,.72) 0 7%,transparent 8%),
    radial-gradient(ellipse at 76% 36%,rgba(123,114,79,.62) 0 6%,transparent 7%),
    radial-gradient(circle at 30% 30%,rgba(94,132,65,.45) 0 8%,transparent 9%),
    linear-gradient(145deg,rgba(74,111,57,.72),rgba(56,88,47,.48));
  box-shadow:none;
}
.farm-plot.locked::after{
  inset:2px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 46'%3E%3Cg fill='none' stroke='%23769350' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M10 40q1-15 8-26m-2 26q7-11 14-15m37 16q-1-14-8-24m3 24q-7-11-15-14'/%3E%3C/g%3E%3Cg fill='none' stroke='%23745738' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M24 34h34M28 26v14m25-17v17'/%3E%3C/g%3E%3Cg fill='%23958a67' stroke='%235f573f' stroke-width='1'%3E%3Cellipse cx='15' cy='37' rx='7' ry='4'/%3E%3Cellipse cx='66' cy='39' rx='8' ry='4.5'/%3E%3C/g%3E%3C/svg%3E");
  background-position:center bottom;
  background-size:94% 88%;
}
.farm-plot-lock{display:none}
.farm-plot.locked small{
  position:absolute;
  right:5px;
  bottom:3px;
  padding:1px 5px;
  border:1px solid #4f341f;
  border-radius:3px;
  background:linear-gradient(180deg,#80603a,#654629);
  color:#f1ddb1;
  box-shadow:0 1px 2px rgba(37,25,14,.25);
  font-size:.42rem;
  line-height:1.1;
}

/* Give the left-side props more physical grounding and less UI chrome. */
.farmdew-board-button{
  filter:drop-shadow(0 5px 3px rgba(30,37,22,.22));
  box-shadow:inset 0 0 0 2px rgba(214,168,96,.18);
}
.farmdew-board-button>small{box-shadow:0 2px 2px rgba(45,31,19,.18)}
.farmdew-customize-button{
  left:5%;
  top:74%;
  width:52px;
  min-height:58px;
}
.farmdew-customize-button::before{
  top:11px;
  left:10px;
  width:29px;
  height:23px;
  border-radius:3px 3px 10px 10px;
  background:
    radial-gradient(ellipse at 50% 12%,#e4b854 0 22%,#c9903c 23% 29%,transparent 30%),
    linear-gradient(180deg,#83947f,#5a7055 62%,#485c43);
}
.farmdew-customize-button::after{top:2px;left:34px;height:31px;transform:rotate(20deg)}
.farmdew-customize-button>small{
  bottom:1px;
  max-width:48px;
  padding:1px 4px;
  border-radius:2px;
  font-size:.34rem;
}
.farmdew-farmer{
  left:var(--farmer-x,31.5%);
  top:var(--farmer-y,66%);
  filter:drop-shadow(0 5px 2px rgba(31,47,25,.28)) saturate(.98);
}

/* One continuous dock with carved separators instead of four boxed app tabs. */
.farmdew-toolbelt{
  gap:0;
  padding:5px 8px calc(5px + env(safe-area-inset-bottom));
  border-top:3px solid #4b301e;
  background:
    linear-gradient(180deg,rgba(105,67,35,.08),transparent 18%),
    linear-gradient(180deg,#382516,#24170f);
  box-shadow:0 -4px 12px rgba(15,10,7,.28),inset 0 1px 0 rgba(221,170,101,.12);
}
.farmdew-tool{
  min-height:50px;
  border:0;
  border-right:1px solid rgba(177,128,74,.16);
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.farmdew-tool:first-child{border-radius:8px 0 0 8px}
.farmdew-tool:last-child{border-right:0;border-radius:0 8px 8px 0}
.farmdew-tool::after{
  position:absolute;
  right:18%;
  bottom:2px;
  left:18%;
  height:2px;
  border-radius:2px;
  background:transparent;
  content:"";
}
#farmdewToolPlant,.farmdew-tool.is-active{
  background:radial-gradient(ellipse at 50% 95%,rgba(224,170,78,.16),transparent 68%);
  box-shadow:none;
  color:#f6dfad;
}
#farmdewToolPlant::after,.farmdew-tool.is-active::after{background:#d4a454;box-shadow:0 0 6px rgba(223,171,78,.42)}
#farmdewToolPlant>span,.farmdew-tool.is-active>span{transform:translateY(-1px) scale(1.08)}
.farmdew-tool:active{background:rgba(255,214,139,.06);transform:translateY(1px)}
.farmdew-tool:disabled{opacity:.28}
.farmdew-tool>span{transition:transform .12s ease}

@media(max-width:390px){
  .farmdew-game>.farmdew-area-switcher{right:7px;width:168px}
  .farmdew-scene-message{max-width:126px;font-size:.52rem}
  .farmdew-plots{left:39%;width:43%;gap:7px 8px}
  .farmdew-customize-button{left:4%;width:50px;min-height:56px}
}
@media(max-width:340px){
  .farmdew-game>.farmdew-area-switcher{right:6px;width:160px}
  .farmdew-game>.farmdew-area-switcher .farmdew-area-tab{grid-template-columns:16px minmax(0,1fr);padding-inline:4px}
  .farmdew-game>.farmdew-area-switcher .farmdew-area-tab>span{width:16px;height:16px}
  .farmdew-scene-message{max-width:112px;padding:4px 6px;font-size:.5rem}
  .farmdew-plots{left:38%;width:44%;gap:6px 7px}
}
@media(orientation:landscape) and (max-height:520px){
  .farmdew-game>.farmdew-area-switcher{right:10px;width:164px}
  .farmdew-scene-message{top:6px;left:8px;max-width:130px}
  .farmdew-plots{left:39%;width:43%;gap:6px 8px}
}
@media(prefers-reduced-motion:reduce){
  .farmdew-tool>span{transition:none}
}
