/* FarmDew Presentation Phase 4B — cohesive game-world art skin.
   Loaded after feature CSS so this file intentionally owns the final visual skin
   while feature stylesheets continue to own semantics, state, sheets, and base geometry. */

:root{
  --farmdew-art-ink:#3b291b;
  --farmdew-art-cream:#f5e1b7;
  --farmdew-art-wood:#835b36;
  --farmdew-art-wood-dark:#4c321f;
  --farmdew-art-wood-light:#b98a55;
  --farmdew-art-soil:#5a351e;
  --farmdew-art-soil-light:#7b4c2b;
  --farmdew-art-grass:#4f7d3b;
  --farmdew-art-grass-dark:#315a30;
  --farmdew-art-leaf:#739f4d;
}

/* ---------- World texture and grounding ---------- */
.farmdew-stage{isolation:isolate}
.farmdew-stage>.farmdew-landscape{z-index:0}
.farmdew-stage::before{
  position:absolute;
  inset:34% 0 0;
  z-index:1;
  pointer-events:none;
  content:"";
  opacity:.34;
  background:
    radial-gradient(circle at 12% 18%,rgba(231,211,151,.2) 0 1px,transparent 1.5px) 0 0/30px 26px,
    radial-gradient(circle at 68% 38%,rgba(29,72,34,.22) 0 1px,transparent 1.6px) 13px 8px/36px 30px,
    radial-gradient(ellipse at 40% 70%,rgba(29,72,34,.13) 0 1px,transparent 1.8px) 0 0/48px 38px;
  mix-blend-mode:multiply;
  -webkit-mask-image:linear-gradient(to bottom,transparent,rgba(0,0,0,.8) 14%,#000 34%);
  mask-image:linear-gradient(to bottom,transparent,rgba(0,0,0,.8) 14%,#000 34%);
}
.farmdew-stage::after{
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  z-index:3;
  height:42%;
  pointer-events:none;
  content:"";
  opacity:.9;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 250'%3E%3Cg fill='none' stroke='%23345f32' stroke-width='3' stroke-linecap='round' opacity='.82'%3E%3Cpath d='M18 70q2-12 7-19M24 71q6-11 13-15M20 71q-4-9-8-13M72 208q2-12 8-21M78 209q7-10 15-14M73 209q-4-8-10-12M348 67q2-13 8-20M354 68q8-10 15-13M349 69q-5-8-11-12M372 188q2-10 7-17M377 189q6-9 12-12M372 189q-4-8-9-11'/%3E%3C/g%3E%3Cg fill='%23cbb988' stroke='%237c6a4b' stroke-width='1.5'%3E%3Cellipse cx='46' cy='176' rx='8' ry='5'/%3E%3Cellipse cx='335' cy='222' rx='10' ry='6'/%3E%3Cellipse cx='17' cy='224' rx='5' ry='3.5'/%3E%3C/g%3E%3Cg fill='%23f0d36f'%3E%3Ccircle cx='91' cy='185' r='3'/%3E%3Ccircle cx='365' cy='112' r='2.8'/%3E%3C/g%3E%3Cg fill='%23e79aa4'%3E%3Ccircle cx='98' cy='190' r='2.6'/%3E%3Ccircle cx='358' cy='118' r='2.4'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:center bottom;
  background-size:100% 100%;
}
.farmdew-field-bg{
  fill:#6a4429!important;
  stroke:#8a633d!important;
  stroke-width:2!important;
  opacity:.32!important;
  filter:drop-shadow(0 3px 3px rgba(47,31,18,.16));
}
.farmdew-field-bg+path{opacity:.12!important}
#farmdewHouse{filter:drop-shadow(0 5px 4px rgba(32,46,25,.28))}
#farmdewHouse>rect:first-of-type{fill:#e8cd91;stroke:#704b30}
#farmdewHouse>path:first-of-type{filter:drop-shadow(0 1px 0 rgba(255,231,184,.14))}
.farm-fence{filter:drop-shadow(0 2px 1px rgba(44,47,25,.12))}

/* ---------- Location control: small wooden map toggle ---------- */
.farmdew-game>.farmdew-area-switcher{
  left:auto;
  right:10px;
  width:min(calc(100% - 20px),236px);
  padding:2px;
  border:2px solid var(--farmdew-art-wood-dark);
  border-radius:12px;
  background:linear-gradient(180deg,#6f4b2e,#50331f);
  box-shadow:0 4px 10px rgba(24,28,16,.24),inset 0 1px 0 rgba(255,232,184,.18);
  backdrop-filter:none;
  gap:2px;
  grid-template-columns:1.06fr .94fr;
  transform:none;
}
.farmdew-game>.farmdew-area-switcher .farmdew-area-tab{
  min-height:44px;
  padding:3px 7px;
  border:1px solid transparent;
  border-radius:9px;
  background:transparent;
  color:#ecd7ad;
  column-gap:5px;
  box-shadow:none;
}
.farmdew-game>.farmdew-area-switcher .farmdew-area-tab>span{
  width:18px;
  height:18px;
  grid-row:1;
  font-size:0;
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  filter:drop-shadow(0 1px 1px rgba(35,24,13,.25));
}
.farmdew-game>.farmdew-area-switcher .farmdew-area-tab[data-area="home"]>span{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23e7c98a' stroke='%234c321f' stroke-width='1.6' stroke-linejoin='round' d='M3 11.2 12 4l9 7.2v9H3z'/%3E%3Cpath fill='%23835b36' d='M9.3 13h5.4v7.2H9.3z'/%3E%3Cpath fill='%23a8d8dc' stroke='%234c321f' stroke-width='1.2' d='M5.4 12.5h3v3h-3zm10.2 0h3v3h-3z'/%3E%3C/svg%3E");
}
.farmdew-game>.farmdew-area-switcher .farmdew-area-tab[data-area="back"]>span{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23dfc178' stroke-width='1.8' stroke-linecap='round' d='M5 20V7m5 13V4m5 16V8m4 12V6M3 12h18M3 17h18'/%3E%3Cpath fill='none' stroke='%237aa153' stroke-width='1.7' stroke-linecap='round' d='M9 7c-3-1-4-3-4-5m5 4c3-1 4-3 4-5m1 10c-3-1-4-3-4-5m5 4c3-1 4-3 4-5'/%3E%3C/svg%3E");
}
.farmdew-game>.farmdew-area-switcher .farmdew-area-tab strong{
  color:inherit;
  font-size:.66rem;
  font-weight:900;
  letter-spacing:.01em;
  white-space:nowrap;
}
.farmdew-game>.farmdew-area-switcher .farmdew-area-tab.is-active{
  border-color:#d7ba82;
  background:linear-gradient(180deg,#f0ddb3,#d6bb85);
  color:#3d291b;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 1px 2px rgba(35,24,13,.3);
}
.farmdew-game>.farmdew-area-switcher .farmdew-area-tab:disabled{
  color:#baa37b;
  opacity:.58;
}
.farmdew-game>.farmdew-area-switcher .farmdew-area-tab:focus-visible{outline:3px solid #ffe7a1;outline-offset:2px}

/* ---------- Crop field: terrain, not cards ---------- */
.farmdew-plots{
  left:38%;
  width:44%;
  gap:6px 8px;
}
.farmdew-plots::before{
  position:absolute;
  inset:-8px -7px;
  z-index:0;
  pointer-events:none;
  content:"";
  clip-path:polygon(3% 4%,97% 0,100% 9%,98% 96%,91% 100%,5% 97%,0 89%,1% 10%);
  background:
    radial-gradient(circle at 12% 16%,rgba(193,131,76,.16) 0 1px,transparent 1.6px) 0 0/24px 20px,
    linear-gradient(180deg,#724727,#59351f 54%,#4a2c1a);
  filter:drop-shadow(0 4px 4px rgba(40,25,14,.22));
  box-shadow:inset 0 0 0 2px rgba(137,93,52,.36);
}
.farmdew-plots::after{
  position:absolute;
  inset:-4px -3px;
  z-index:0;
  pointer-events:none;
  content:"";
  clip-path:polygon(3% 4%,97% 0,100% 9%,98% 96%,91% 100%,5% 97%,0 89%,1% 10%);
  background:repeating-linear-gradient(0deg,transparent 0 47px,rgba(201,147,89,.09) 48px 49px,transparent 50px 54px);
}
.farm-plot{
  z-index:1;
  min-height:44px;
  padding:2px;
  border:0;
  border-radius:0;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible;
  filter:none;
}
.farm-plot::before{
  inset:2px;
  z-index:0;
  border-radius:0;
  clip-path:polygon(4% 7%,96% 2%,100% 15%,96% 94%,86% 100%,5% 96%,0 83%,2% 13%);
  background:
    repeating-linear-gradient(90deg,transparent 0 21%,rgba(42,22,12,.26) 22% 24%,transparent 25% 48%,rgba(42,22,12,.22) 49% 51%,transparent 52% 74%,rgba(42,22,12,.2) 75% 77%,transparent 78% 100%),
    linear-gradient(180deg,var(--farmdew-art-soil-light),var(--farmdew-art-soil));
  box-shadow:inset 0 1px 0 rgba(222,165,104,.15),inset 0 -3px 5px rgba(37,18,9,.23);
  transform:rotate(-.45deg);
}
.farm-plot:nth-child(even)::before{transform:rotate(.45deg)}
.farm-plot:nth-child(3n)::before{clip-path:polygon(2% 4%,94% 1%,100% 10%,97% 96%,89% 100%,4% 95%,0 86%,3% 14%)}
.farm-plot>span,.farm-plot>small,.farm-plot>i{z-index:2}
.farm-plot.empty::before{
  background:
    repeating-linear-gradient(90deg,transparent 0 22%,rgba(41,22,12,.3) 23% 25%,transparent 26% 49%,rgba(41,22,12,.25) 50% 52%,transparent 53% 76%,rgba(41,22,12,.21) 77% 79%,transparent 80% 100%),
    linear-gradient(180deg,#684027,#4d2c19);
}
.farm-plot-empty{
  width:22px;
  height:22px;
  border:0;
  border-radius:0;
  color:#d0a66f;
  font-size:1rem;
  font-weight:700;
  text-shadow:0 1px 1px #2d170d;
  opacity:.56;
}
.farm-plot.locked{
  background:transparent!important;
  box-shadow:none!important;
}
.farm-plot.locked::before{
  background:
    radial-gradient(circle at 24% 70%,rgba(92,128,58,.5) 0 8%,transparent 9%),
    radial-gradient(circle at 72% 28%,rgba(103,139,67,.45) 0 7%,transparent 8%),
    linear-gradient(160deg,#416435,#2f4e29 70%,#253f22);
  box-shadow:inset 0 0 0 1px rgba(38,68,34,.5),inset 0 -3px 6px rgba(25,48,23,.3);
}
.farm-plot.locked::after{
  inset:6px;
  z-index:1;
  border-radius:0;
  content:"";
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 42'%3E%3Cg fill='none' stroke='%236f934d' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M12 34q2-12 8-20m-5 20q6-11 13-14m18 15q-1-11-7-19m3 20q-6-9-12-12'/%3E%3C/g%3E%3Cg fill='%239b8b68' stroke='%235d543f' stroke-width='1'%3E%3Cellipse cx='10' cy='31' rx='6' ry='4'/%3E%3Cellipse cx='50' cy='34' rx='7' ry='4.5'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:center;
  background-size:90% 80%;
}
.farm-plot-lock{
  width:20px;
  height:16px;
  font-size:0;
  opacity:.78;
  filter:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 22'%3E%3Cpath fill='none' stroke='%2396b56c' stroke-width='2' stroke-linecap='round' d='M16 20V7m0 4c-6 0-9-3-10-7 6 0 9 2 10 7Zm0 3c6 0 9-3 10-7-6 0-9 2-10 7Z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}
.farm-plot.locked small{
  padding:1px 4px;
  border:1px solid rgba(236,222,177,.35);
  border-radius:4px;
  background:rgba(32,55,28,.72);
  color:#f3e5bd;
  font-size:.48rem;
  letter-spacing:.02em;
  text-shadow:none;
  opacity:.9;
}
.farm-plot>i{right:9px;bottom:5px;left:9px;height:2px;background:linear-gradient(90deg,#b8d56d calc(var(--crop-progress,0)*100%),rgba(255,255,255,.12) 0)}
.farm-plot.ready::after{top:4px;right:8px;background:none;color:#ffe88c;font-size:.56rem}
.farm-plot:active::before{filter:brightness(.9);transform:scale(.97) rotate(-.45deg)}
.farm-plot:nth-child(even):active::before{transform:scale(.97) rotate(.45deg)}

/* Replace generic growing emoji with one cohesive FarmDew plant language. Mature crops keep their crop identity. */
.farm-crop-stage.stage-0,.farm-crop-stage.stage-1,.farm-crop-stage.stage-2,.farm-crop-stage.stage-3{
  width:30px;
  height:30px;
  font-size:0!important;
  background-repeat:no-repeat;
  background-position:center bottom;
  background-size:contain;
}
.farm-crop-stage.stage-0{width:12px;height:12px;border-radius:50%;background:#c5975a;box-shadow:0 1px 0 #4c2b18}
.farm-crop-stage.stage-1{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath fill='none' stroke='%233b6f39' stroke-width='2.2' stroke-linecap='round' d='M16 29V15'/%3E%3Cpath fill='%237baa53' stroke='%233b6f39' stroke-width='1.5' d='M16 18C9 18 6 14 6 9c7 0 10 3 10 9Zm0-2c7 0 10-4 10-9-7 0-10 4-10 9Z'/%3E%3C/svg%3E");
}
.farm-crop-stage.stage-2{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36'%3E%3Cpath fill='none' stroke='%23365f32' stroke-width='2.4' stroke-linecap='round' d='M18 34V13m0 8-8-6m8 10 9-7'/%3E%3Cpath fill='%236f9e4a' stroke='%23365f32' stroke-width='1.5' d='M10 17C5 16 3 12 4 8c5 0 8 3 6 9Zm16 3c5-1 8-5 7-9-5 0-8 3-7 9Zm-8-5c-5-2-7-6-5-10 5 1 7 5 5 10Z'/%3E%3C/svg%3E");
}
.farm-crop-stage.stage-3{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath fill='none' stroke='%23315b30' stroke-width='2.4' stroke-linecap='round' d='M20 38V12m0 8-9-7m9 13 10-8m-10 3-5-12m5 8 7-11'/%3E%3Cpath fill='%237ba64d' stroke='%23315b30' stroke-width='1.4' d='M11 16C5 16 3 12 4 7c6 0 9 4 7 9Zm18 5c6-1 9-6 8-11-6 0-9 4-8 11Zm-9-9c-5-2-7-7-4-11 5 2 7 6 4 11Zm5 4c5-2 7-6 5-10-5 1-7 5-5 10Z'/%3E%3C/svg%3E");
}

/* ---------- World props: physical objects instead of app cards ---------- */
.farmdew-board-button{
  left:3.5%;
  top:58.5%;
  width:62px;
  min-height:80px;
  padding:0 7px 14px;
  border:3px solid #654326;
  border-radius:5px;
  background:
    repeating-linear-gradient(0deg,rgba(255,231,181,.05) 0 2px,transparent 2px 13px),
    linear-gradient(90deg,#8e6238,#a87846 48%,#805733);
  box-shadow:2px 5px 8px rgba(35,31,20,.25),inset 0 0 0 2px rgba(214,168,96,.22);
  color:#f5e3bd;
  transform:rotate(-1.2deg);
}
.farmdew-board-button::before{
  position:absolute;
  top:6px;
  right:5px;
  left:5px;
  height:auto;
  color:#efd19a;
  background:none;
  content:"ORDERS";
  font:900 .42rem/1 ui-sans-serif,system-ui,sans-serif;
  letter-spacing:.08em;
  text-align:center;
  text-shadow:0 1px 1px #4c321f;
}
.farmdew-board-button::after{
  position:absolute;
  bottom:-17px;
  left:8px;
  width:7px;
  height:19px;
  border-radius:0 0 2px 2px;
  background:linear-gradient(90deg,#5a3b23,#765033,#4c321f);
  box-shadow:36px 1px 0 #5b3c24;
  content:"";
}
.farmdew-board-button>small{
  position:absolute;
  top:22px;
  left:50%;
  width:43px;
  max-width:43px;
  min-height:30px;
  padding:5px 3px 3px;
  border:1px solid #c5ad79;
  border-radius:1px;
  background:
    radial-gradient(circle at 8px 5px,#b95543 0 1.6px,transparent 1.8px),
    radial-gradient(circle at 34px 7px,#4d7f83 0 1.6px,transparent 1.8px),
    linear-gradient(180deg,#fff4cd,#ead9a8);
  color:#4a3522;
  box-shadow:1px 2px 2px rgba(45,31,19,.22);
  font-size:.42rem;
  line-height:1.05;
  text-shadow:none;
  transform:translateX(-50%) rotate(.6deg);
}
.farmdew-board-button:active{transform:rotate(-1.2deg) scale(.96)}
.farmdew-board-button.has-ready{animation:none;box-shadow:2px 5px 8px rgba(35,31,20,.25),0 0 14px rgba(255,221,96,.48),inset 0 0 0 2px rgba(214,168,96,.22)}

.farmdew-customize-button{
  left:4%;
  top:73.5%;
  width:58px;
  min-height:64px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
.farmdew-customize-button::before{
  position:absolute;
  top:10px;
  left:9px;
  width:34px;
  height:29px;
  border:2px solid #4f4438;
  border-radius:4px 4px 8px 8px;
  background:
    linear-gradient(150deg,transparent 0 58%,rgba(243,192,91,.8) 59% 68%,transparent 69%),
    linear-gradient(180deg,#899a85,#61755d 58%,#4d6148);
  box-shadow:1px 3px 5px rgba(30,42,26,.25),inset 0 1px 0 rgba(235,245,218,.22);
  content:"";
  transform:none;
}
.farmdew-customize-button::after{
  position:absolute;
  top:1px;
  left:36px;
  width:7px;
  height:35px;
  border:1px solid #5c422d;
  border-radius:5px 5px 2px 2px;
  background:linear-gradient(180deg,#e6d0a4 0 20%,#7e5a36 21% 100%);
  box-shadow:1px 2px 3px rgba(35,28,19,.18);
  content:"";
  transform:rotate(18deg);
  transform-origin:50% 85%;
}
.farmdew-customize-button>small{
  position:absolute;
  bottom:0;
  left:50%;
  max-width:56px;
  padding:2px 5px;
  border:1px solid #4d3422;
  border-radius:3px;
  background:linear-gradient(180deg,#805a37,#604025);
  color:#f5dfb5;
  box-shadow:0 2px 3px rgba(35,27,18,.2);
  font-size:.39rem;
  line-height:1.05;
  text-shadow:0 1px 1px #3c281a;
  transform:translateX(-50%);
}
.farmdew-customize-button:active{transform:scale(.95)}
.farmdew-customize-button.has-new-style{box-shadow:none;filter:drop-shadow(0 0 6px rgba(255,220,92,.55))}

/* Later unlocks use the illustrated SVG buildings as the visible controls. */
.farmdew-barn-button{
  right:7%;
  top:39.5%;
  width:25%;
  min-height:108px;
  padding:0;
  border:0;
  border-radius:12px;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
.farmdew-barn-button::before{
  top:43%;
  left:50%;
  width:38%;
  height:42%;
  border:2px solid rgba(255,221,139,.2);
  border-radius:5px;
  background:rgba(255,205,101,.05);
  content:"";
  opacity:.35;
  transform:translateX(-50%);
}
.farmdew-barn-button::after{display:none}
.farmdew-barn-button>small{
  position:absolute;
  right:10px;
  bottom:5px;
  left:auto;
  max-width:68px;
  padding:2px 5px;
  border:1px solid rgba(72,40,28,.65);
  border-radius:4px;
  background:rgba(77,42,30,.78);
  color:#ffe8bd;
  font-size:.39rem;
  text-shadow:none;
  transform:none;
}
.farmdew-barn-button:active{transform:scale(.985)}
.farmdew-barn-button.has-products{animation:none;box-shadow:none;filter:drop-shadow(0 0 7px rgba(255,218,99,.45))}
.farmdew-barn-button.has-products>small{background:#70502a;box-shadow:0 0 9px rgba(255,223,101,.48)}

.farmdew-coop-button{
  right:2%;
  top:69%;
  width:20%;
  min-height:78px;
  padding:0;
  border:0;
  border-radius:10px;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
.farmdew-coop-button::before{
  top:35%;
  left:50%;
  width:38%;
  height:35%;
  border:2px solid rgba(255,225,151,.18);
  border-radius:50% 50% 4px 4px;
  background:rgba(255,217,125,.05);
  content:"";
  opacity:.35;
  transform:translate(-50%,-40%);
}
.farmdew-coop-button::after{display:none}
.farmdew-coop-button>small{
  position:absolute;
  right:3px;
  bottom:1px;
  left:auto;
  max-width:62px;
  padding:2px 4px;
  border:1px solid rgba(76,54,32,.6);
  border-radius:4px;
  background:rgba(94,65,39,.78);
  color:#f6e8c5;
  font-size:.38rem;
  text-shadow:none;
  transform:none;
}
.farmdew-coop-button:active{transform:scale(.98)}
.farmdew-coop-button.has-eggs{animation:none;box-shadow:none;filter:drop-shadow(0 0 7px rgba(255,220,91,.48))}
.farmdew-coop-button.has-eggs>small{box-shadow:0 0 8px rgba(255,222,93,.48)}

/* Generic illustrated hens replace system emoji in the world. */
.farmdew-chicken{
  width:28px;
  height:27px;
  font-size:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 34'%3E%3Cellipse cx='17' cy='20' rx='11' ry='8' fill='%23f1dfb8' stroke='%235a402b' stroke-width='1.5'/%3E%3Ccircle cx='26' cy='14' r='5.5' fill='%23f4e7c8' stroke='%235a402b' stroke-width='1.5'/%3E%3Cpath fill='%23c75a45' d='M25 7l2-4 2 4 3-2-1 5z'/%3E%3Cpath fill='%23d59a3d' d='m31 14 5 2-5 2z'/%3E%3Ccircle cx='28' cy='13' r='1' fill='%2334241a'/%3E%3Cpath fill='none' stroke='%23845f39' stroke-width='1.5' stroke-linecap='round' d='M13 27v5m7-5v5m-10 0h6m1 0h6'/%3E%3Cpath fill='%23dfc798' d='M8 18 2 14l4 8z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}
.farmdew-chicken.has-eggs::after{font-size:.66rem}

/* ---------- Toolbelt: original illustrated tool slots ---------- */
.farmdew-toolbelt{
  gap:4px;
  padding:5px 6px calc(5px + env(safe-area-inset-bottom));
  border-top:3px solid #4b301e;
  background:
    repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 1px,transparent 1px 36px),
    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;
  padding:4px 2px 3px;
  border:1px solid rgba(173,126,73,.22);
  border-radius:7px;
  background:linear-gradient(180deg,rgba(107,70,38,.32),rgba(58,36,20,.18));
  color:#d9c39d;
  box-shadow:inset 0 1px 0 rgba(255,231,184,.06);
}
.farmdew-tool>span{
  display:block;
  width:25px;
  height:25px;
  font-size:0;
  filter:drop-shadow(0 2px 1px rgba(0,0,0,.28));
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}
#farmdewToolPlant>span{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath fill='none' stroke='%23b89d61' stroke-width='2.2' stroke-linecap='round' d='M15 28V13'/%3E%3Cpath fill='%237ea655' stroke='%233f6338' stroke-width='1.5' d='M15 17C7 17 4 12 5 6c7 0 10 4 10 11Zm0-3c7 0 10-4 10-10-7 0-10 4-10 10Z'/%3E%3C/svg%3E");
}
#farmdewToolOrders>span{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath fill='%23835b36' stroke='%234c321f' stroke-width='1.7' d='M5 7h20v17H5z'/%3E%3Cpath fill='%23f0ddb0' stroke='%23b99b68' stroke-width='1.2' d='M8 10h14v10H8z'/%3E%3Ccircle cx='10' cy='12' r='1.3' fill='%23b84f45'/%3E%3Cpath fill='none' stroke='%23745c3e' stroke-width='1.2' d='M12 13h7m-7 3h8'/%3E%3Cpath fill='none' stroke='%234c321f' stroke-width='2' stroke-linecap='round' d='M8 24v4m14-4v4'/%3E%3C/svg%3E");
}
#farmdewToolJournal>span{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath fill='%23e8d6aa' stroke='%235b4933' stroke-width='1.5' d='M4 5c4-1 7 0 11 3v18c-4-3-7-4-11-3zm22 0c-4-1-7 0-11 3v18c4-3 7-4 11-3z'/%3E%3Cpath fill='none' stroke='%23927a55' stroke-width='1.2' d='M8 11h4m-4 4h4m6-4h4m-4 4h4'/%3E%3C/svg%3E");
}
#farmdewToolBag>span{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath fill='%23764a34' stroke='%23442d22' stroke-width='1.7' d='M8 9h14l3 16H5z'/%3E%3Cpath fill='none' stroke='%23b47a4f' stroke-width='2' stroke-linecap='round' d='M10 10c0-5 10-5 10 0'/%3E%3Cpath fill='%23965b3e' d='M11 15h8v7h-8z'/%3E%3C/svg%3E");
}
.farmdew-tool>small{
  margin-top:0;
  color:#d6c099;
  font-size:.46rem;
  letter-spacing:.06em;
  opacity:.82;
}
.farmdew-tool.is-active{
  border-color:#b8884e;
  background:linear-gradient(180deg,rgba(150,103,52,.45),rgba(77,47,24,.28));
  box-shadow:inset 0 -3px 0 #d4a454,inset 0 1px 0 rgba(255,228,176,.12);
  color:#f6dfad;
}
.farmdew-tool:active{transform:translateY(1px) scale(.97)}

/* ---------- Farmer finishing touches ---------- */
.farmdew-farmer{filter:drop-shadow(0 4px 2px rgba(31,47,25,.25)) saturate(.96)}
.farmdew-farmer svg{overflow:visible}

/* ---------- Phone tuning ---------- */
@media(max-width:390px){
  .farmdew-game>.farmdew-area-switcher{right:8px;width:min(calc(100% - 16px),228px)}
  .farmdew-game>.farmdew-area-switcher .farmdew-area-tab{padding-inline:6px}
  .farmdew-plots{left:37%;width:45%;gap:5px 7px}
  .farmdew-board-button{left:3%;top:59%;width:58px;min-height:76px}
  .farmdew-board-button>small{width:40px;max-width:40px}
  .farmdew-customize-button{left:3.5%;top:73.5%;width:56px;min-height:62px}
  .farmdew-tool>span{width:23px;height:23px}
  .farmdew-tool>small{font-size:.44rem}
}
@media(max-width:320px){
  .farmdew-game>.farmdew-area-switcher{right:6px;width:218px}
  .farmdew-game>.farmdew-area-switcher .farmdew-area-tab strong{font-size:.62rem}
  .farmdew-plots{left:36%;width:46%;gap:4px 5px}
  .farmdew-plots::before{inset:-6px -5px}
  .farmdew-board-button{left:2%;width:54px;min-height:72px}
  .farmdew-customize-button{left:2%;width:52px;min-height:58px}
  .farmdew-tool>small{font-size:.42rem}
}
@media(orientation:landscape) and (max-height:520px){
  .farmdew-game>.farmdew-area-switcher{right:12px;width:220px}
  .farmdew-plots{left:38%;width:44%;gap:4px 6px}
}
@media(prefers-reduced-motion:reduce){
  .farmdew-board-button,.farmdew-customize-button,.farmdew-barn-button,.farmdew-coop-button,.farmdew-tool,.farm-plot::before{transition:none!important;animation:none!important}
}
